/* AI studio pages (social.html, write.html). Layout: the brief on the left,
   the work on the right; engine output always sits on light "paper". */
:root{--bg:#0b0d1a;--panel:#131629;--panel2:#191d36;--line:#ffffff1a;--fg:#f3f2fb;--muted:#9a9fc0;--violet:#8b5cf6;--violet-deep:#6d28d9;--gold:#f5c96a;
--display:"Bricolage Grotesque","Noto Sans","Noto Sans Devanagari","Noto Sans Gujarati","Noto Sans Bengali","Noto Sans Tamil","Noto Sans Telugu","Noto Sans Kannada",system-ui,sans-serif;--body:"Noto Sans","Noto Sans Devanagari","Noto Sans Gujarati","Noto Sans Bengali","Noto Sans Tamil","Noto Sans Telugu","Noto Sans Kannada",system-ui,-apple-system,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh;color:var(--fg);font:15px/1.55 var(--body);background:var(--bg);background-image:radial-gradient(900px 500px at 85% -10%,#6d28d933,transparent 70%),radial-gradient(700px 420px at -10% 10%,#f5c96a14,transparent 70%);background-attachment:fixed}
button,input,textarea,select{font:inherit;color:inherit}
a{color:#c4b5fd}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.header{border-bottom:1px solid var(--line);padding:.8rem 1.2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;backdrop-filter:blur(8px)}
.brand{font:700 1.15rem var(--display);color:var(--fg);text-decoration:none}.brand span{color:var(--violet)}
.nav{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}
.nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:.88rem;padding:.35rem .7rem;border-radius:999px}
.nav a:hover{color:var(--fg);background:#ffffff10}.nav a[aria-current]{color:#14110a;background:var(--gold)}
.wrap{width:min(1240px,calc(100% - 32px));margin:2.2rem auto 5rem;display:flex;flex-direction:column;gap:1.8rem}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;margin:0}
h1{font:700 clamp(2rem,4.6vw,3.2rem)/1.05 var(--display);letter-spacing:-.01em;margin:.4rem 0 .7rem;text-wrap:balance}
h2{font:700 1.2rem var(--display);margin:0}
.lead{color:var(--muted);max-width:62ch;margin:0;font-size:1.05rem}
.layout{display:grid;grid-template-columns:minmax(0,370px) minmax(0,1fr);gap:1.6rem;align-items:start}
@media(max-width:920px){.layout{grid-template-columns:minmax(0,1fr)}}
.panel{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:1.3rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 30px 80px #0006}
@media(min-width:921px){.brief{position:sticky;top:1rem}}
.work{display:flex;flex-direction:column;gap:1.2rem;min-width:0}
.field{display:grid;gap:.35rem;min-width:0}
.field>label,.field>.label{font-size:.78rem;font-weight:700;color:#c9cbe6;letter-spacing:.02em}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
input[type=text],select,textarea{width:100%;background:#0b0e1f;border:1px solid #ffffff22;border-radius:10px;padding:.6rem .7rem}
input[type=text]:hover,select:hover,textarea:hover{border-color:#ffffff40}
textarea{resize:vertical;min-height:130px}
textarea.code{font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;min-height:180px;white-space:pre}
.hint,.meta{font-size:.82rem;color:var(--muted)}
.btn{border:1px solid #ffffff2e;background:#ffffff08;border-radius:999px;padding:.5rem 1rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--fg)}
.btn:hover{border-color:var(--violet);background:#8b5cf622}
.primary{background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-color:transparent;color:#fff;box-shadow:0 10px 30px #6d28d966}
.primary:hover{background:linear-gradient(135deg,#a78bfa,#7c3aed)}
.btn.big{padding:.75rem 1.2rem;font-size:1rem;width:100%}
.btn:disabled{opacity:.45;cursor:not-allowed}.btn.small{padding:.3rem .75rem;font-size:.82rem}
.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.chips{display:flex;flex-wrap:wrap;gap:.4rem}
.chips button{border:1px dashed #ffffff33;background:none;border-radius:999px;padding:.2rem .7rem;font-size:.8rem;color:var(--muted);cursor:pointer}
.chips button:hover{color:var(--fg);border-color:var(--gold)}
.status{padding:.8rem 1rem;border-radius:12px;background:#0b0e1f;color:var(--muted);border:1px solid var(--line)}
.status[data-kind=ok]{color:#86efac;border-color:#22c55e55}.status[data-kind=error]{color:#fca5a5;border-color:#f8717155}
.status[data-kind=busy]::before{content:"";display:inline-block;width:.7em;height:.7em;margin-right:.6em;border-radius:50%;border:2px solid var(--gold);border-top-color:transparent;animation:spin .8s linear infinite;vertical-align:-1px}
@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.status[data-kind=busy]::before{animation:none}}
.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
dialog{background:var(--panel);color:var(--fg);border:1px solid #ffffff28;border-radius:16px;padding:1.4rem;width:min(420px,calc(100vw - 32px));margin:auto}
dialog::backdrop{background:#000a}
.login{display:grid;gap:.8rem}.login label{display:grid;gap:.3rem;color:var(--muted);font-size:.8rem}
.login input{background:#0b0e1f;border:1px solid #ffffff22;border-radius:8px;padding:.55rem}
.error{color:#fca5a5;font-size:.85rem;margin:0}
details summary{cursor:pointer;color:#c4b5fd;font-weight:700;font-size:.85rem}

/* Engine output on paper. */
.paper{background:#fff;color:#111827;font:17px/1.5 var(--body)}
.paper h1{font:700 1.75em/1.12 var(--display);margin:0 0 .5em}
.paper h2{font:700 1.3em/1.15 var(--display);margin:1em 0 .4em;color:#111827}
.paper h3{font-size:1.05em;margin:.9em 0 .3em;color:#5b21b6;text-transform:uppercase;letter-spacing:.06em;font-size:.82em}
.paper>:first-child,.paper .body>:first-child{margin-top:0}
.paper .body>:last-child{margin-bottom:0}
.paper p{margin:.45em 0}
.paper ul,.paper ol{margin:.4em 0;padding-left:1.3em}
.paper .apc-math{margin:.6em 0;overflow-x:auto;overflow-y:hidden}
.paper .apc-script-block,.paper .asc-graph{margin:.5em 0}
.paper canvas{display:block;margin:0 auto;max-width:100%;height:auto}
.paper .asc-picture-tools{display:none}
.paper .apc-callout{border-left:4px solid #7c3aed;background:#f4f1fe;padding:.55em .9em;margin:.7em 0;border-radius:0 10px 10px 0}
.paper .apc-callout-label{font-weight:700;color:#5b21b6;font-size:.72em;text-transform:uppercase;letter-spacing:.08em}
.paper .apc-callout p:last-child{margin-bottom:0}
.paper .apc-table{border-collapse:collapse;margin:.6em 0}.paper .apc-table th,.paper .apc-table td{border:1px solid #d1d5db;padding:.3em .6em}
.paper .apc-question{border:1px solid #e5e7eb;border-radius:12px;padding:.9em 1.1em;margin:.9em 0;background:#fafafa}
.paper .apc-question-title{font-weight:700;color:#5b21b6}
.paper .apc-question-options{display:grid;gap:.3em;margin:.5em 0}
.paper .apc-question-answer-input{border:1px solid #d1d5db;border-radius:6px;padding:.35em .5em;background:#fff;color:#111827}
.paper .apc-question-check{margin:.4em 0 0;padding:.35em .9em;border:0;border-radius:999px;background:#111827;color:#fff;cursor:pointer}
.paper details summary{color:#5b21b6}
.paper .apc-error,.paper .asc-error{color:#b91c1c;font:13px ui-monospace,monospace;white-space:pre-wrap}

/* What the agents are doing, step by step. */
.activity{list-style:none;margin:0;padding:.9rem 1.1rem;display:flex;flex-direction:column;gap:.45rem;background:#0b0e1f;border:1px solid var(--line);border-radius:12px;font-size:.92rem}
.activity li{display:flex;align-items:center;gap:.6rem;color:var(--muted)}
.activity li::before{content:"";flex:none;width:.8em;height:.8em;border-radius:50%;border:2px solid var(--gold);border-top-color:transparent;animation:spin .8s linear infinite}
.activity li[data-state=done]{color:var(--fg)}
.activity li[data-state=done]::before{animation:none;border-color:#22c55e;background:#22c55e}
.activity li[data-state=failed]{color:#fca5a5}
.activity li[data-state=failed]::before{animation:none;border-color:#f87171;background:#f87171}
@media(prefers-reduced-motion:reduce){.activity li::before{animation:none}}

/* Saved work and the empty state. */
.empty{border:1px dashed #ffffff30;border-radius:16px;padding:2.2rem 1.4rem;text-align:center;color:var(--muted)}
.empty b{display:block;color:var(--fg);font:700 1.15rem var(--display);margin-bottom:.3rem}
.mine{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:.7rem}
.mine li{display:flex;gap:.4rem;align-items:stretch}
.mine .open{flex:1;min-width:0;overflow:hidden;text-align:left;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;cursor:pointer;display:flex;flex-direction:column;gap:.15rem}
.mine .open:hover{border-color:var(--violet)}
.mine .open[aria-current=true]{border-color:var(--gold)}
.mine .open b{font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mine .open span{font-size:.8rem;color:var(--muted)}
.mine .drop{background:none;border:1px solid transparent;border-radius:10px;color:var(--muted);cursor:pointer;padding:0 .5rem;font-size:1.1rem}
.mine .drop:hover{color:#fca5a5;border-color:#f8717155}
