/* PRIME AI — Studio interface v4.0. No remote fonts or dependencies. */
:root{font-family:Inter,"Segoe UI Variable",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color-scheme:dark}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}html{scroll-behavior:smooth}body{--bg:#090e18;--panel:#101725;--panel2:#172133;--panel3:#1b283d;--sidebar:#0b111d;--line:#263247;--line-soft:#1c2738;--fg:#eff4fd;--muted:#8796ad;--soft:#b5c3d8;--accent:#728cff;--accent2:#9b71f6;--accent-strong:#6179ef;--accent-text:#acc0ff;--bubble:#1c2940;--success:#4bd4a6;--danger:#ff8e9c;--shadow:0 24px 90px #0005;background:var(--bg);color:var(--fg)}body[data-theme=light]{color-scheme:light;--bg:#f4f7fc;--panel:#fff;--panel2:#eef2fa;--panel3:#e9eef8;--sidebar:#fff;--line:#dce3ef;--line-soft:#e8edf5;--fg:#18243a;--muted:#6c7b90;--soft:#485971;--accent:#5d67df;--accent2:#8156cc;--accent-strong:#515bd0;--accent-text:#5264c8;--bubble:#e7ecff;--shadow:0 24px 80px #1e2b4b16;--success:#16855e;--danger:#cb3e57}
button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.56;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:var(--accent-text)}input,textarea,select{display:block;width:100%;min-width:0;border:1px solid var(--line);background:var(--panel2);color:var(--fg);border-radius:13px;padding:13px 15px;outline:none;transition:border-color .2s,background .2s,box-shadow .2s}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #788bff18}textarea{resize:vertical;min-height:110px}label{display:block;margin:18px 0 9px;font-size:13px;font-weight:600;color:var(--soft)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4.2vw,46px);letter-spacing:-1.8px;line-height:1.15}h2{font-size:clamp(22px,2.8vw,28px);letter-spacing:-.7px}h3{font-size:17px;letter-spacing:-.3px}p{line-height:1.65}.muted{color:var(--muted)}.small{font-size:12px}.help{font-size:13px;color:var(--muted);line-height:1.6}.full{width:100%}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.brand-mark .icon{fill:currentColor;stroke:none;width:20px;height:20px}.brand{display:inline-flex;align-items:center;gap:11px;font-weight:840;font-size:21px;letter-spacing:-.9px;white-space:nowrap}.brand>span:last-child{display:inline-flex;gap:6px}.brand-accent{color:var(--accent-text)}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:white;background:linear-gradient(145deg,#8094ff,#7651cb);box-shadow:0 5px 24px #6f75ea4a}.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid #a0aaff28;background:linear-gradient(130deg,#718af9,#856cf0);color:white;border-radius:13px;padding:13px 20px;min-height:45px;font-weight:700;box-shadow:0 8px 25px #6058d522;transition:filter .2s,transform .2s,box-shadow .2s}.primary:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px);box-shadow:0 10px 30px #6058d533}.primary .icon{width:17px;height:17px}.subtle,.icon-btn,.nav{background:transparent;border:0;color:var(--fg)}.subtle{padding:11px 16px;border:1px solid var(--line);border-radius:11px;font-size:13px;font-weight:600}.subtle:hover,.icon-btn:hover{background:var(--panel2)}.icon-btn{width:39px;height:39px;display:inline-grid;place-items:center;border-radius:11px}.icon-btn .icon{width:18px;height:18px}[hidden]{display:none!important}
/* Login — two-panel editorial layout */
.auth-stage{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(440px,.94fr);background:var(--bg)}.auth-showcase{position:relative;isolation:isolate;overflow:hidden;min-height:690px;background:linear-gradient(142deg,#111b33 0%,#10172a 48%,#160f35 100%);border-right:1px solid #ffffff0e}.auth-showcase:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 70% 51%,#6368e63d,transparent 44%),radial-gradient(ellipse at 6% 98%,#3c76ff21,transparent 48%)}.showcase-content{position:relative;z-index:5;display:flex;flex-direction:column;min-height:100%;height:100vh;height:100dvh;max-height:1100px;padding:49px clamp(35px,6vw,104px) 38px}.brand-lg{font-size:25px}.brand-lg .brand-mark{width:43px;height:43px}.showcase-hero{margin:auto 0;max-width:660px;position:relative;z-index:2}.eyebrow,.auth-kicker{font-size:11px;font-weight:770;letter-spacing:2px;color:#aebaff}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:29px}.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#75e4cd;box-shadow:0 0 0 5px #75e4cd18}.showcase-hero h1{font-size:clamp(48px,5.2vw,84px);line-height:1.07;letter-spacing:-4.5px;margin-bottom:30px;font-weight:780}.gradient-text{background:linear-gradient(110deg,#91afff 15%,#bda8ff 68%,#e9abfd);background-clip:text;-webkit-background-clip:text;color:transparent}.showcase-hero>p{font-size:clamp(15px,1.4vw,19px);color:#aab8d2;max-width:460px;line-height:1.8}.showcase-points{display:flex;flex-wrap:wrap;gap:25px;margin-top:42px;padding-top:25px;border-top:1px solid #ffffff24;font-size:12px;color:#bdc9dd;font-weight:620}.showcase-bottom{display:flex;align-items:center;gap:9px;color:#8795b7;font-size:12px}.showcase-bottom>span:last-child{margin-left:auto}.mini-mark{color:#a3a2ff;font-size:21px}.showcase-glow{position:absolute;right:-220px;top:25%;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,#605dc63e,transparent 66%);filter:blur(20px);z-index:-1}.showcase-orbit{position:absolute;pointer-events:none;border:1px solid #b5c6ff17;border-radius:50%;aspect-ratio:1;transform:translate(45%,-45%);right:0;top:50%;z-index:-1}.orbit-1{width:560px}.orbit-2{width:780px}.orbit-3{width:1010px}.auth-panel{display:grid;place-items:center;padding:40px clamp(24px,6vw,86px);background:radial-gradient(ellipse at 100% 0%,#6b6de40b,transparent 56%),var(--bg)}.auth-panel-inner{width:min(100%,445px);margin:auto}.auth-mobile-brand{display:none}.auth-kicker{color:var(--accent-text);margin-bottom:15px}.auth-panel h2{font-size:clamp(30px,3vw,40px);letter-spacing:-1.45px;margin-bottom:12px}.auth-panel p{font-size:14px;line-height:1.8;margin-bottom:28px}.tabs{display:grid;grid-template-columns:1fr 1fr;padding:5px;gap:4px;border:1px solid var(--line);background:var(--panel);border-radius:14px}.tabs button{padding:12px 6px;border:0;border-radius:9px;background:none;color:var(--muted);font-weight:650;font-size:13px}.tabs button.active{color:var(--fg);background:var(--panel2);box-shadow:0 2px 7px #0002}.auth-tabs{margin:32px 0 29px}.auth-panel input{background:var(--panel);padding:15px 16px;min-height:52px}.password-wrap{position:relative}.password-wrap input{padding-right:102px}.password-toggle{position:absolute;right:10px;top:9px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:650;padding:10px}.password-toggle:hover{color:var(--fg)}.auth-submit{margin-top:28px;min-height:52px}.auth-submit .icon{margin-left:auto}.auth-note{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:12px;line-height:1.7;margin-top:25px;padding:15px;background:var(--panel);border:1px solid var(--line-soft);border-radius:12px}.note-icon{color:var(--accent-text)}.auth-footer{color:var(--muted);font-size:11px;margin-top:70px}.auth-footer span{margin:0 7px}.notice{margin-top:16px;padding:14px 15px;border:1px solid var(--line);background:var(--panel2);border-radius:12px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
/* Workspace shell */
#workspace{display:flex;height:100vh;height:100dvh;overflow:hidden}.sidebar{width:286px;flex-shrink:0;background:var(--sidebar);border-right:1px solid var(--line-soft);display:flex;flex-direction:column;padding:27px 14px 13px}.sidebar-head{display:flex;justify-content:space-between;align-items:center;padding:0 11px;margin:0 0 30px}.sidebar-head .brand{font-size:20px}.sidebar-head .brand-mark{width:35px;height:35px;border-radius:11px}.new-chat-btn{margin:0 2px;text-align:left;justify-content:flex-start;padding:12px 13px;font-size:13px}.new-chat-btn .trailing-icon{margin-left:auto;width:15px;height:15px;opacity:.72}.side-label{margin:26px 12px 11px;font-size:10px;letter-spacing:1.4px;font-weight:780;color:var(--muted)}.side-nav{display:grid;gap:3px}.nav{display:flex;align-items:center;gap:13px;width:100%;min-height:42px;text-align:left;padding:10px 13px;border-radius:10px;color:var(--muted);font-size:13px;font-weight:570;transition:background .18s,color .18s;position:relative}.nav .icon{width:18px;height:18px;stroke-width:1.7}.nav:hover{background:var(--panel2);color:var(--fg)}.nav.active{background:linear-gradient(100deg,#758cff22,#758cff0d);color:var(--fg);font-weight:720}.nav.active:before{content:"";height:21px;width:3px;position:absolute;left:0;top:50%;transform:translateY(-50%);border-radius:4px;background:var(--accent)}.nav.active .icon{color:var(--accent-text)}.soon-dot{margin-left:auto;font-size:20px;color:var(--muted)}.history-head{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.history-head .side-label{margin-top:22px}.history-dash{font-size:12px;color:var(--muted);margin-right:13px}.chat-list{overflow-y:auto;min-height:48px;flex:1;padding:0 2px 10px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.chat-entry{display:flex;align-items:center;gap:3px;margin:3px 0}.chat-entry button:first-child{min-width:0;flex:1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:left;background:transparent;border:0;color:var(--muted);padding:10px 11px;border-radius:9px;font-size:12px}.chat-entry button:first-child:hover,.chat-entry button:first-child.active{color:var(--fg);background:var(--panel2)}.chat-entry button.delete{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;padding:0;border:0;background:none;color:var(--muted);border-radius:7px;opacity:.35}.chat-entry:hover button.delete,.chat-entry button.delete:focus-visible{opacity:1}.chat-entry button.delete:hover{background:#ff597018;color:var(--danger)}.side-bottom{margin-top:auto;padding:16px 2px 0;border-top:1px solid var(--line-soft)}.theme-button{display:flex;gap:12px;align-items:center;width:100%;border:0;background:transparent;color:var(--muted);border-radius:10px;padding:12px 13px;font-size:12px;text-align:left}.theme-button:hover{background:var(--panel2);color:var(--fg)}.theme-button .icon{width:17px;height:17px}.theme-arrow{margin-left:auto;font-size:15px}.profile{display:flex;align-items:center;gap:11px;margin-top:12px;padding:15px 6px 2px;border-top:1px solid var(--line-soft)}.avatar{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:12px;background:linear-gradient(145deg,#7f8dff,#6554ae);color:white;font-weight:750}.profile-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;font-size:12px}.profile-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-info .muted{font-size:11px}.profile .icon-btn{width:34px;height:34px;color:var(--muted)}.main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 72% -24%,#415caa0a,transparent 52%),var(--bg)}.topbar{height:78px;flex-shrink:0;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;padding:0 clamp(20px,3vw,48px);gap:17px;background:var(--bg)}.topbar-name{display:flex;flex-direction:column;gap:3px;flex:1}.topbar-overline{font-size:9px;font-weight:750;letter-spacing:1.6px;color:var(--muted)}.overline-divider{margin:0 4px;color:var(--accent)}.top-title{font-size:15px;font-weight:750;letter-spacing:-.25px}.right-tools{display:flex;align-items:center;gap:18px}.status{display:inline-flex;align-items:center;gap:9px;font-size:11px;color:var(--muted);border:1px solid var(--line-soft);padding:9px 13px;border-radius:99px;white-space:nowrap}.pulse{width:7px;height:7px;background:var(--success);border-radius:50%;box-shadow:0 0 0 4px #4bd4a616}.settings-btn{color:var(--muted);background:var(--panel);border:1px solid var(--line)}.page-content{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.view-wrap{max-width:1060px;margin:auto;padding:47px 38px 72px}.view-wrap>h1{font-size:clamp(30px,3.5vw,40px);margin-bottom:12px}.view-wrap>p.muted{font-size:14px;max-width:675px;margin-bottom:28px}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:8px}.section-icon{width:42px;height:42px;border-radius:13px;background:linear-gradient(130deg,#6f84ff29,#9470f320);color:var(--accent-text);display:grid;place-items:center;border:1px solid #8f98ff22}.section-icon .icon{width:22px;height:22px}.section-kicker{margin:0 0 14px;font-size:11px;text-transform:uppercase;letter-spacing:1.7px;font-weight:750;color:var(--accent-text)}
/* Chat */
.chat-view{display:flex;flex-direction:column;height:100%;max-width:1020px;margin:0 auto;padding:0 40px;min-width:0}.message-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:27px 0 30px}.welcome{max-width:760px;margin:clamp(42px,10vh,115px) auto 32px}.welcome-mark{width:58px;height:58px;margin:0 auto 23px;display:grid;place-items:center;background:linear-gradient(140deg,#7b96ff24,#966beb1c);border:1px solid #9398ff2c;border-radius:18px;color:var(--accent-text);box-shadow:0 12px 55px #8080ff1c}.welcome-mark .icon{width:28px;height:28px;fill:currentColor;stroke:none}.welcome{text-align:center}.welcome-overline{color:var(--accent-text);font-size:10px;letter-spacing:2.4px;font-weight:800;margin-bottom:17px}.welcome h1{font-size:clamp(31px,4vw,47px);letter-spacing:-1.8px;margin-bottom:13px}.welcome>p{font-size:14px;color:var(--muted);line-height:1.8;margin:0 auto;max-width:480px}.suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:42px auto 0;max-width:650px}.suggestion{display:flex;flex-direction:column;gap:8px;text-align:left;min-height:91px;padding:16px 18px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(150deg,var(--panel),var(--bg));color:var(--fg);transition:background .2s,border-color .2s,transform .2s}.suggestion:hover{border-color:#8394f57d;background:var(--panel2);transform:translateY(-2px)}.suggestion .suggestion-title{font-size:13px;font-weight:750}.suggestion .suggestion-description{font-size:12px;color:var(--muted);line-height:1.5}.suggestion .suggestion-top{display:flex;justify-content:space-between;align-items:center}.suggestion .suggestion-top .icon{width:15px;height:15px;color:var(--accent-text)}.message{line-height:1.8;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap;margin:0 0 24px;min-width:0}.message.user{margin-left:auto;max-width:84%;width:fit-content;padding:15px 19px;background:var(--bubble);border:1px solid #8895ec18;border-radius:18px 18px 4px 18px;line-height:1.7}.message.assistant{max-width:100%;padding:8px 0 12px;border-bottom:1px solid var(--line-soft)}.message.assistant .by{display:flex;align-items:center;gap:10px;color:var(--accent-text);font-size:12px;font-weight:780;margin-bottom:12px;letter-spacing:.15px}.assistant-avatar{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:linear-gradient(125deg,#8190ff,#8b65e0);color:#fff;font-size:16px}.message.assistant>div:last-child{padding-left:36px}.composer-area{padding:12px 0 24px;background:var(--bg)}.composer{border:1px solid #4a5a77;background:var(--panel);border-radius:19px;padding:13px 14px 12px;box-shadow:0 14px 48px #0002;transition:border-color .2s}.composer:focus-within{border-color:#7d8ef8}.composer textarea{border:0;box-shadow:none!important;background:transparent;outline:none!important;min-height:58px;max-height:210px;resize:none;padding:8px 6px;color:var(--fg);font-size:14px;line-height:1.6}.composer-foot{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line-soft);padding-top:11px}.doc-picker{display:flex;align-items:center;gap:11px;margin:0;min-width:0;max-width:70%;flex:1;color:var(--muted);font-size:12px;font-weight:540}.doc-picker .icon{width:16px;height:16px}.doc-picker select{padding:6px 26px 6px 7px;max-width:240px;width:auto;border:none;border-radius:8px;background:transparent;color:var(--soft);font-size:12px;cursor:pointer;box-shadow:none;overflow:hidden;text-overflow:ellipsis}.composer-foot .primary{padding:9px 14px;min-height:38px;font-size:12px;border-radius:10px}.composer-foot .primary .icon{width:17px;height:17px}.composer-hint{font-size:11px;text-align:center;color:var(--muted);margin:11px 0 0}.composer-hint kbd{font-family:inherit;border:1px solid var(--line);padding:1px 4px;border-radius:4px}
/* Tools, generation and result cards */
.card{border:1px solid var(--line);border-radius:19px;background:var(--panel);padding:27px;margin:22px 0;box-shadow:0 6px 20px #0000000a}.card label:first-child{margin-top:0}.card textarea{min-height:180px;background:var(--bg);line-height:1.65}.card .primary{margin-top:11px}.flex{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:15px;margin:24px 0}.result{border:1px solid var(--line);border-radius:16px;padding:20px;background:var(--panel);min-width:0;transition:border-color .2s,transform .2s}.result:hover{border-color:#7b8bfa69;transform:translateY(-1px)}.result h3{margin:16px 0 11px;font-size:15px;line-height:1.5;overflow-wrap:anywhere}.result .help{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;min-height:22px}.result .button-link{margin-top:7px}.pill{display:inline-flex;align-items:center;background:var(--panel2);border:1px solid var(--line-soft);border-radius:99px;padding:5px 10px;font-size:11px;font-weight:650;color:var(--muted)}.pill.is-done{color:var(--success);background:#39b9860e}.pill.is-error{color:var(--danger);background:#ff72840a}.button-link{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:10px 13px;text-decoration:none;color:var(--fg);font-weight:650;font-size:12px;background:var(--panel2)}.button-link:hover{border-color:var(--accent)}.button-link .icon{width:15px;height:15px}.error{color:var(--danger)}.good{color:var(--success)}.empty-state{padding:52px 20px;text-align:center;border:1px dashed var(--line);border-radius:17px;color:var(--muted);font-size:14px;grid-column:1 / -1}.empty-state .empty-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--panel2);margin:0 auto 17px;color:var(--accent-text)}.empty-state .empty-icon .icon{width:23px;height:23px}.empty-state strong{display:block;color:var(--fg);font-size:15px;margin-bottom:8px}.doc-upload{border:1px dashed #687da38a;border-radius:14px;padding:18px;background:var(--bg)}.doc-upload input{border:none;background:transparent;padding:8px;font-size:13px}.doc-upload input::file-selector-button{border:1px solid var(--line);background:var(--panel2);color:var(--fg);padding:10px 12px;border-radius:9px;margin-right:10px;cursor:pointer}.result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:15px}.result-actions .subtle{padding:10px 13px}.result .result-actions .button-link{margin:0}.admin-row{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.admin-row .admin-user{flex:1;min-width:140px}.admin-row .primary{margin:0}.coming-panel{text-align:center;max-width:650px;margin:55px auto 0;border:1px solid var(--line);border-radius:22px;background:var(--panel);padding:55px 28px}.coming-panel .section-icon{margin:0 auto 22px;width:61px;height:61px;border-radius:20px}.coming-panel h2{margin-bottom:12px}.coming-panel p{color:var(--muted);max-width:480px;margin:0 auto}.coming-tag{display:inline-block;margin-top:24px;padding:8px 13px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);font-size:11px;color:var(--soft);font-weight:700}
/* Modal and notifications */
dialog{width:min(490px,calc(100% - 26px));border:1px solid var(--line);border-radius:23px;background:var(--panel);color:var(--fg);padding:28px 30px;box-shadow:var(--shadow)}dialog::backdrop{background:#040810b8;backdrop-filter:blur(8px)}dialog .modal-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:9px}dialog .modal-title h2{margin-bottom:8px}dialog p.muted{font-size:13px}dialog .primary{margin-top:18px}.toast{position:fixed;right:24px;bottom:22px;z-index:300;background:var(--panel2);border:1px solid var(--accent);padding:14px 18px;border-radius:13px;max-width:min(380px,calc(100% - 40px));font-size:13px;box-shadow:var(--shadow)}#scrim{display:none}.mobile-menu,.close-side{display:none}
@media(max-width:1120px){.auth-stage{grid-template-columns:1fr 1fr}.showcase-content{padding-left:50px;padding-right:40px}.showcase-hero h1{font-size:60px;letter-spacing:-3px}.chat-view{padding:0 26px}.view-wrap{padding:39px 28px}}
@media(max-width:820px){.auth-stage{display:block}.auth-showcase{display:none}.auth-panel{min-height:100dvh;padding:38px 24px}.auth-panel-inner{max-width:440px}.auth-mobile-brand{display:inline-flex;margin-bottom:68px}.auth-footer{margin-top:55px}.sidebar{position:fixed;z-index:110;top:0;left:0;height:100%;height:100dvh;transform:translateX(-104%);transition:transform .23s ease;box-shadow:0 14px 65px #0008}.sidebar.open{transform:translateX(0)}#scrim.open{display:block;position:fixed;inset:0;background:#02050ba9;z-index:100}.mobile-menu,.close-side{display:inline-grid}.topbar{height:68px;padding:0 18px}.topbar-overline{display:none}.status{display:none}}
@media(max-width:560px){.sidebar{width:min(286px,87vw)}.topbar{height:62px;gap:10px}.top-title{font-size:14px}.settings-btn{width:36px;height:36px}.view-wrap{padding:31px 17px 56px}.view-wrap>h1{font-size:30px}.chat-view{padding:0 15px}.message-scroll{padding-top:20px}.welcome{margin-top:clamp(30px,6vh,60px)}.welcome-mark{width:51px;height:51px;margin-bottom:17px}.welcome h1{font-size:31px;letter-spacing:-1px}.welcome>p{font-size:13px}.suggestions{gap:9px;margin-top:27px}.suggestion{min-height:101px;padding:12px}.suggestion .suggestion-title{font-size:12px}.suggestion .suggestion-description{font-size:11px}.message.user{max-width:95%;font-size:13px}.message.assistant{font-size:13px}.composer-area{padding:8px 0 9px}.composer{padding:9px 10px 10px;border-radius:16px}.composer textarea{min-height:52px;font-size:13px}.doc-picker{gap:5px;max-width:65%}.doc-picker select{max-width:145px;font-size:11px}.composer-foot .primary{padding:9px;min-width:38px;font-size:0;gap:0}.composer-foot .primary .icon{width:18px;height:18px}.composer-hint{margin-top:7px;font-size:10px}.card{padding:18px;margin:19px 0}.grid{grid-template-columns:1fr}.auth-panel{padding:28px 23px}.auth-mobile-brand{margin-bottom:55px}.auth-panel h2{font-size:34px}.auth-footer{margin-top:44px;font-size:10px}dialog{padding:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.history-empty{padding:12px;color:var(--muted);font-size:11px;line-height:1.6}.result-actions .subtle .icon{width:15px;height:15px;vertical-align:middle;margin-right:5px}.section-heading h1{margin:0}

/* PRIME AI Studio 4.1 — attachments composer, camera and previews */
.composer{position:relative;padding:10px 12px 9px;border-color:var(--line)}
.composer-row{display:flex;align-items:flex-end;gap:9px;min-height:57px}
.composer-row textarea{flex:1;min-width:0;min-height:44px;height:47px;max-height:190px;padding:11px 4px 8px;line-height:1.55;align-self:center}
.attach-anchor{position:relative;flex-shrink:0;align-self:flex-end;padding-bottom:2px}
.attach-toggle{display:grid;place-items:center;width:42px;height:42px;background:var(--panel2);border:1px solid var(--line);border-radius:13px;color:var(--fg);font-size:19px;font-weight:800;letter-spacing:1px;line-height:0;transition:background .2s,border-color .2s}
.attach-toggle:hover,.attach-toggle[aria-expanded=true]{background:var(--panel3);border-color:var(--accent)}
.attach-toggle span{transform:translateY(-5px)}
.attach-menu{position:absolute;left:-4px;bottom:calc(100% + 14px);z-index:80;width:min(320px,calc(100vw - 35px));background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:7px;box-shadow:0 16px 64px #0008;animation:attach-pop .13s ease-out}
.attach-menu button{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:13px 11px;border:0;border-radius:12px;color:var(--fg);background:transparent}
.attach-menu button:hover,.attach-menu button:focus-visible{background:var(--panel2)}
.attach-menu button .icon{color:var(--accent-text);width:20px;height:20px}
.attach-menu button span{font-weight:700;font-size:13px;flex:1}
.attach-menu button small{color:var(--muted);font-size:11px}
.attach-menu-divider{border-top:1px solid var(--line-soft);margin:5px 6px}
.composer-send{width:43px;min-width:43px;height:43px;min-height:43px;padding:0;border-radius:13px;flex-shrink:0;align-self:flex-end;margin-bottom:2px}
.composer-send .icon{width:19px;height:19px}
.composer-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 4px 1px;margin-top:6px;border-top:1px solid var(--line-soft);color:var(--muted);font-size:11px}
.composer-kbd{white-space:nowrap;color:var(--soft);opacity:.85}
.native-picker{display:none!important}
.pending-attachments{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:4px 2px 14px}
.upload-chip{display:flex;align-items:center;min-width:0;max-width:290px;height:51px;gap:9px;padding:5px 7px;background:var(--panel2);border:1px solid var(--line);border-radius:12px}
.upload-chip>img{width:41px;height:41px;object-fit:cover;border-radius:8px}
.upload-chip-icon{display:grid;place-items:center;width:39px;height:39px;background:var(--panel3);border-radius:8px;color:var(--accent-text)}
.upload-chip-icon .icon{width:19px;height:19px}
.upload-chip>span:not(.upload-chip-icon){font-size:12px;font-weight:550;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;min-width:20px;max-width:160px}
.upload-chip>button{width:25px;height:25px;background:transparent;color:var(--muted);border:0;border-radius:50%;font-size:21px;line-height:1;flex-shrink:0}
.upload-chip>button:hover{background:var(--panel3);color:var(--fg)}
.message-files{display:flex;flex-wrap:wrap;gap:9px;margin-top:11px}
.message-attachment{display:inline-flex;align-items:center;gap:8px;border-radius:12px;border:1px solid var(--line);padding:9px 11px;background:var(--panel);text-decoration:none;color:var(--fg);font-size:12px;max-width:min(300px,100%);overflow:hidden}
.message-attachment>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.message-attachment .icon{width:17px;height:17px;color:var(--accent-text)}
.message-attachment:has(img){padding:4px;border:0;background:transparent}
.message-attachment img{width:190px;max-width:100%;max-height:220px;object-fit:cover;border-radius:12px;display:block}
.message.user .message-files{margin-top:12px}
.message-scroll:empty{display:block}
.drop-active .composer{border-color:var(--accent);box-shadow:0 0 0 3px #758cff18}
.library-dialog,.camera-dialog{max-width:520px;max-height:min(80vh,700px);overflow:auto}
.library-items{display:grid;gap:6px;margin-top:18px}
.library-item{display:flex;align-items:center;gap:10px;max-width:100%;width:100%;background:var(--panel2);border:1px solid var(--line);border-radius:11px;color:var(--fg);padding:12px;text-align:left;font-size:13px}
.library-item:hover{border-color:var(--accent)}.library-item>span{overflow-wrap:anywhere}
.library-item .icon{color:var(--accent-text)}
.camera-dialog video{display:block;width:100%;max-height:48vh;object-fit:contain;min-height:200px;background:#07080d;border-radius:12px;margin:15px 0 10px}
.camera-actions{display:flex;justify-content:flex-end;gap:9px}
.camera-actions .primary{margin:0}
@keyframes attach-pop{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:560px){.composer{padding:8px 9px}.composer-row{gap:6px}.attach-toggle{width:38px;height:38px;border-radius:11px}.composer-send{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:11px}.composer-row textarea{font-size:14px;padding-left:2px}.composer-meta{font-size:10px}.composer-hint{font-size:10px}.attach-menu{left:-3px;bottom:calc(100% + 10px)}.attach-menu button small{font-size:10px}.message-attachment img{width:150px;max-height:190px}.upload-chip{max-width:calc(100vw - 65px)}}
