/* Public and Studio Roxy V0.4 entrypoint: compact, nonblocking UI. */
#roxy-widget{position:fixed;right:clamp(12px,2vw,24px);bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:110;display:grid;justify-items:end;gap:10px;font:14px/1.48 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#eefef4;pointer-events:none}
#roxy-widget *{box-sizing:border-box}
#roxy-widget button,#roxy-widget a,#roxy-widget [tabindex]{pointer-events:auto}
#roxy-widget .roxy-widget__launch{display:flex;align-items:center;gap:10px;border:1px solid #68e5a6;background:linear-gradient(135deg,#123c2d,#0b251e);color:#e9fff2;padding:10px 16px 10px 10px;border-radius:60px;box-shadow:0 14px 35px #03191080;font:750 14px system-ui;cursor:pointer}
#roxy-widget .roxy-widget__mark{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 30% 20%,#a5ffd3,#3ecb88 65%,#166a45);color:#073924;border:1px solid #c5ffe5;font-size:20px;font-weight:900}
#roxy-widget .roxy-widget__mark{overflow:hidden}
#roxy-widget .roxy-widget__mark img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%;border-radius:inherit}
#roxy-widget .roxy-widget__portrait{flex:none;width:76px;height:96px;object-fit:cover;object-position:50% 35%;border:1px solid #66e6aa;border-radius:14px;box-shadow:0 0 18px #49f9a638}
#roxy-widget .roxy-widget__header>div{flex:1;min-width:0}
#roxy-widget .roxy-widget__panel{width:min(355px,calc(100vw - 24px));max-height:min(580px,calc(100dvh - 92px));overflow:auto;border-radius:20px;border:1px solid #68b68d;background:linear-gradient(155deg,#122f25,#0b1a17 80%);box-shadow:0 26px 65px #020f0ed9;pointer-events:auto}
#roxy-widget .roxy-widget__panel[hidden],#roxy-widget[hidden]{display:none!important}
#roxy-widget .roxy-widget__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:19px 19px 8px}
#roxy-widget .roxy-widget__eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#83ebb2;font-weight:800}
#roxy-widget h2{font:850 24px/1.25 system-ui;margin:3px 0;color:#fff}
#roxy-widget .roxy-widget__close{background:#ffffff12;color:#f2fff9;border:1px solid #ffffff3d;border-radius:9px;cursor:pointer;padding:3px 10px;font-size:23px;line-height:1.35}
#roxy-widget .roxy-widget__intro{margin:0;padding:0 19px 12px;color:#c4e5d2;font-size:13px}
#roxy-widget .roxy-widget__options{display:grid;gap:9px;padding:0 17px 16px}
#roxy-widget .roxy-widget__option{display:grid;grid-template-columns:31px 1fr 15px;align-items:center;gap:8px;text-align:left;text-decoration:none;border:1px solid #406b52;background:#173c2b;border-radius:13px;padding:13px 11px;color:#fff;font:inherit;cursor:pointer}
#roxy-widget .roxy-widget__option strong{display:block;font-size:14px}
#roxy-widget .roxy-widget__option small{display:block;margin-top:2px;font-size:11px;color:#b5d9c2}
#roxy-widget .roxy-widget__option:hover{border-color:#83ebb2;background:#20533a}
#roxy-widget .roxy-widget__foot{border-top:1px solid #32563f;padding:12px 19px 16px;color:#a7c5b4;font-size:11px}
#roxy-widget :focus-visible{outline:3px solid #adfdd1;outline-offset:3px}
@media(max-width:580px){#roxy-widget{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}#roxy-widget .roxy-widget__panel{width:100%;max-height:min(78dvh,650px)}#roxy-widget .roxy-widget__launch{padding:8px 12px 8px 8px}}
@media(prefers-reduced-motion:reduce){#roxy-widget *{scroll-behavior:auto!important}}

@media(max-width:380px){#roxy-widget .roxy-widget__portrait{width:58px;height:76px}#roxy-widget h2{font-size:20px}}

/* Roxy conversation lives inside the existing launcher; no additional overlay. */
#roxy-widget .roxy-chat{padding:2px 17px 14px;border-top:1px solid #305742}
#roxy-widget .roxy-chat__heading{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:10px 0}
#roxy-widget .roxy-chat__heading strong{font-size:13px;color:#ecfff3}
#roxy-widget .roxy-chat__heading span{font-size:10px;color:#9de8b9}
#roxy-widget .roxy-chat__log{display:grid;align-content:start;gap:8px;overflow:auto;max-height:175px;min-height:58px;padding:5px 2px 8px}
#roxy-widget .roxy-chat__bubble{margin:0;padding:10px 11px;border:1px solid #456b52;border-radius:14px;background:#193c2c;color:#f3fff5;font-size:12px;overflow-wrap:anywhere;white-space:pre-wrap}
#roxy-widget .roxy-chat__bubble--visitor{background:#31644c;border-color:#68aa82;margin-left:25px}
#roxy-widget .roxy-chat__bubble--roxy{margin-right:20px}
#roxy-widget .roxy-chat__chips{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0}
#roxy-widget .roxy-chat__chips button{font:600 11px system-ui;background:transparent;border:1px solid #4e815e;color:#bff1ce;padding:6px 8px;border-radius:15px;cursor:pointer}
#roxy-widget .roxy-chat__form{display:flex;gap:7px}
#roxy-widget .roxy-chat__form input{flex:1;min-width:0;background:#071b13;color:#fff;border:1px solid #568d6a;border-radius:11px;padding:10px;font:13px system-ui}
#roxy-widget .roxy-chat__form button{flex:none;width:39px;border:1px solid #a1f8bc;background:#75f3a3;color:#082a19;border-radius:11px;cursor:pointer}
#roxy-widget .roxy-chat__form button:disabled{opacity:.5}
#roxy-widget .roxy-chat__ai{display:flex;gap:7px;align-items:flex-start;margin-top:10px;font-size:11px;color:#c0decd}
#roxy-widget .roxy-chat__ai input{flex:none;accent-color:#65df9b}
#roxy-widget .roxy-chat__status{margin:7px 0 0;font-size:11px;color:#c8eacd;min-height:15px}
#roxy-widget .roxy-chat__next{display:block;margin:8px 0 0;border:1px solid #83e5aa;background:#174d31;color:#f5fff7;text-align:center;padding:9px;border-radius:10px;text-decoration:none;font-size:12px;font-weight:800}
#roxy-widget .roxy-chat__next[hidden]{display:none!important}
#roxy-widget .roxy-chat__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#roxy-widget .roxy-widget__panel{max-height:min(710px,calc(100dvh - 92px))}
@media(max-width:580px){#roxy-widget .roxy-chat__log{max-height:130px}#roxy-widget .roxy-widget__panel{max-height:min(82dvh,690px)}}
