:root{--font-base: "IBM Plex Sans", "Segoe UI", sans-serif;--radius-xl: 28px;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px}:root[data-theme=dark]{color-scheme:dark;--bg: #0d1118;--bg-2: #121b28;--panel: rgba(24, 34, 49, .7);--ink: #f0f4ff;--muted: #9fb0c8;--line: rgba(168, 191, 230, .22);--accent: #8ec6ff;--accent-soft: rgba(98, 168, 255, .2);--shadow: 0 20px 60px rgba(0, 0, 0, .45)}:root[data-theme=light]{color-scheme:light;--bg: #f5f1e8;--bg-2: #ebe4d6;--panel: rgba(255, 255, 255, .72);--ink: #17130f;--muted: #64584d;--line: rgba(23, 19, 15, .12);--accent: #1f5ef5;--accent-soft: rgba(31, 94, 245, .12);--shadow: 0 20px 60px rgba(57, 46, 31, .12)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{color:var(--ink);font-family:var(--font-base);background:radial-gradient(circle at top left,rgba(67,155,255,.16),transparent 35%),radial-gradient(circle at top right,rgba(255,183,98,.15),transparent 28%),linear-gradient(180deg,var(--bg) 0%,var(--bg-2) 100%)}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{width:min(1440px,calc(100vw - 32px));margin:0 auto;padding:24px 0 48px;position:relative}.topbar,.admin-banner,.locked-panel,.document-panel,.document-card,.block-card,.empty-state{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:end;padding:22px 24px;border-radius:var(--radius-xl)}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:var(--muted)}h1,h2,h3,h4,p{margin-top:0}h1{margin-bottom:8px;font-size:clamp(2rem,3vw,3.6rem);line-height:.95}.surface-description{margin-bottom:0;max-width:64ch;color:var(--muted)}.surface-nav,.session-panel,.tag-row,.link-grid,.editor-toolbar,.flux-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.session-panel{justify-content:flex-end}.session-state,.save-state,.theme-toggle{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:#ffffff14;color:var(--muted)}.session-state.authorized{color:#7ce4a5;background:#2dc0672e}.theme-toggle{width:44px;height:44px;font-size:1.2rem;color:var(--ink)}.surface-pill,.primary-action,.document-card,.link-pill,.inline-link,.block-toolbar button,.editor-toolbar button,.doc-order-actions button{border:1px solid var(--line);background:#ffffff14;color:var(--ink)}.surface-pill,.primary-action,.link-pill,.inline-link,.editor-toolbar button,.block-toolbar button,.doc-order-actions button{border-radius:999px;padding:9px 14px}.surface-pill.active,.primary-action{background:var(--ink);color:var(--bg)}.surface-pill.subtle{background:#ffffff14}.admin-banner,.locked-panel{margin-top:16px;border-radius:var(--radius-lg);padding:16px 20px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-banner{justify-content:space-between}.save-state.saving{color:#e4b55a}.save-state.saved{color:#7ce4a5}.save-state.error{color:#ff8b94}.content-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;margin-top:18px}.surface-list{display:grid;gap:12px;align-content:start}.document-item-row{display:grid;gap:8px}.doc-order-actions{display:flex;gap:6px}.document-card{text-align:left;border-radius:var(--radius-lg);padding:16px;display:grid;gap:8px}.document-card.active{border-color:#73c2ff80;box-shadow:0 16px 48px #1f6acd47}.document-kind,.tag-pill{display:inline-flex;width:fit-content;padding:5px 10px;border-radius:999px;background:#ffffff1a;color:var(--muted);font-size:.78rem}.document-stage{min-width:0}.document-panel,.empty-state{border-radius:var(--radius-xl);padding:24px}.document-header{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:18px}.title-input,.block-input,.small-input,.flux-input{width:100%;border-radius:var(--radius-md);border:1px solid var(--line);background:#ffffff0f;color:var(--ink);padding:12px 14px}.title-input{font-size:clamp(1.7rem,2vw,2.6rem);line-height:1.05;font-weight:700}.summary-copy{max-width:76ch;color:var(--muted);font-size:1.03rem}.summary-copy p,.summary-copy ul{margin-bottom:12px}.summary-copy ul{padding-left:18px}.block-stack{display:grid;gap:12px}.block-card{border-radius:var(--radius-lg);padding:16px}.block-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px}.drag-handle{padding:4px 8px;border-radius:999px;background:#ffffff1f}.block-input{min-height:120px;resize:vertical}.code-input{min-height:200px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.math-block{padding:12px 0;font-family:"Cambria Math",Times New Roman,serif;font-size:1.2rem}.link-editor-grid,.image-grid,.metadata-grid{display:grid;gap:8px}.metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metadata-panel{border:1px dashed var(--line);border-radius:var(--radius-md);padding:14px;margin-bottom:14px}.inline-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--accent);border-color:transparent;background:var(--accent-soft)}.flux-title{min-height:180px;margin-top:8px}.document-footer{margin-top:20px}.upload-row{display:inline-flex;align-items:center;gap:10px;color:var(--muted)}.uploading-state{margin:0;font-size:.86rem;color:var(--muted)}figure{margin:0}img{max-width:100%;display:block;border-radius:var(--radius-md)}figcaption{margin-top:8px;color:var(--muted)}pre{overflow-x:auto;padding:14px;border-radius:var(--radius-md);background:#00000052}.landing-grid{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.landing-card{display:grid;gap:12px}.auth-nudge{position:fixed;right:16px;bottom:16px;width:24px;height:24px;border-radius:999px;border:1px solid var(--line);background:#ffffff05;color:#ffffff47}@media(max-width:1080px){.topbar,.content-grid,.landing-grid,.metadata-grid{grid-template-columns:1fr}.session-panel{justify-content:flex-start}}@media(max-width:720px){.app-shell{width:min(100vw - 18px,100vw);padding-top:10px}.topbar,.document-panel,.empty-state,.admin-banner,.locked-panel{border-radius:18px}.document-header{flex-direction:column}}
