:root{--teal: #00b4e4;--teal-deep: #0090b8;--teal-soft: #d8f4fc;--accent: #e6007e;--accent-deep: #c4006a;--accent-soft: #ffe3f1;--paper: #f7fbfe;--paper-2: #eaf6fb;--ink: #1a1f24;--ink-muted: #5a6570;--line: #cfe3ec;--danger: #8f2d2d;--success: #1f5b3a;--shadow: 0 10px 30px rgba(0, 144, 184, .1);--radius: 14px;--font-display: "Syne", "Segoe UI", sans-serif;--font-body: "Outfit", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", Consolas, monospace;--reading: 820px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-body);color:var(--ink);background:radial-gradient(circle at top left,rgba(0,180,228,.14),transparent 32%),radial-gradient(circle at top right,rgba(230,0,126,.08),transparent 28%),linear-gradient(180deg,#ffffff 0%,var(--paper) 45%,#eef7fb 100%)}a{color:var(--teal);text-decoration-thickness:1px;text-underline-offset:.18em}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.fade-in{animation:fadeIn .28s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.boot-screen,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(440px,100%);background:#fffffff5;border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);padding:36px 32px}.login-brand{display:block;width:min(220px,70%);height:auto;margin:0 auto 20px}.eyebrow{margin:0 0 8px;color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:600}h1,h2,h3,h4{font-family:var(--font-body);font-weight:700;line-height:1.55;color:var(--ink);overflow:visible}.login-panel h1,.welcome h1,.doc-header h1,.admin-header h1{margin:0 0 12px;font-size:clamp(2rem,4vw,2.6rem);line-height:1.55;overflow:visible}.lede{margin:0 0 24px;color:var(--ink-muted);font-size:1.05rem;line-height:1.55}.login-form,.admin-form{display:grid;gap:14px}label{display:grid;gap:6px;font-weight:600;font-size:.92rem}input,select,textarea{width:100%;border:1px solid var(--line);background:#fffdf9;border-radius:10px;padding:10px 12px;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(0,180,228,.28);border-color:var(--teal)}.btn{border:1px solid transparent;border-radius:999px;padding:10px 16px;cursor:pointer;background:transparent;color:var(--ink)}.btn.primary{background:linear-gradient(135deg,var(--teal) 0%,var(--teal-deep) 55%,var(--accent) 160%);color:#fff}.btn.primary:hover{background:linear-gradient(135deg,var(--teal-deep) 0%,var(--accent) 100%)}.btn.ghost{border-color:var(--line);background:#fffdf9b3}.btn.danger{color:var(--danger);border-color:#8f2d2d40}.btn:disabled{opacity:.55;cursor:not-allowed}.form-error{color:var(--danger);margin:0}.form-success{color:var(--success);margin:0}.login-hint,.muted{color:var(--ink-muted);font-size:.92rem}.login-hint{margin-top:20px}.login-hint p{margin:0 0 8px}.login-hint ul{margin:0;padding-left:1.2rem;display:grid;gap:6px}.login-hint code{font-size:.88em;background:var(--paper-2);padding:.1em .35em;border-radius:6px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr minmax(180px,320px) 1fr;gap:16px;align-items:center;padding:12px 20px;background:#f7f4efe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar-left,.topbar-user{display:flex;align-items:center;gap:12px}.topbar-user{justify-content:flex-end;flex-wrap:wrap}.topbar-title{font-family:var(--font-display);color:var(--ink);text-decoration:none;font-weight:650}.search-field input{border-radius:999px;background:#fffdf9}.user-chip{font-size:.9rem;color:var(--ink-muted)}.app-body{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 65px)}.sidebar{border-right:1px solid var(--line);background:#fffcf7b8;padding:20px 14px;position:sticky;top:65px;height:calc(100vh - 65px);overflow:auto}.sidebar-brand{display:flex;flex-direction:column;gap:12px;align-items:flex-start;padding:8px 10px 18px}.brand-mark{width:100%;max-width:168px;border-radius:14px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:10px 12px;overflow:hidden}.brand-mark img{display:block;width:100%;height:auto;object-fit:contain}.sidebar-brand strong{display:block;font-family:var(--font-display)}.sidebar-brand small,.nav-item small{display:block;color:var(--ink-muted);font-size:.78rem;font-weight:500}.sidebar-nav{display:grid;gap:4px}.nav-home,.nav-item{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;color:var(--ink);text-decoration:none}.nav-home:hover,.nav-item:hover,.nav-home.active,.nav-item.active{background:var(--teal-soft)}.nav-item.nav-match{box-shadow:inset 3px 0 0 var(--accent)}.nav-item.nav-dim{opacity:.42}.search-results h1{margin:0 0 8px;font-family:var(--font-display)}.search-result-list{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:10px}.search-result-card{width:100%;text-align:left;border:1px solid var(--line);border-radius:14px;background:#fffcf7eb;padding:14px 16px;cursor:pointer;display:grid;gap:6px;box-shadow:var(--shadow)}.search-result-card:hover{border-color:var(--teal);background:#fff}.search-result-card strong{font-family:var(--font-display);font-size:1.05rem}.search-audience{color:var(--teal);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.search-snippet{color:var(--ink-muted);font-size:.95rem;line-height:1.45}.nav-order{min-width:1.4rem;color:var(--teal);font-variant-numeric:tabular-nums;font-weight:700;font-size:.85rem;padding-top:2px}.main-column,.admin-wrap{padding:28px 24px 64px}.main-column{max-width:calc(var(--reading) + 80px)}.welcome,.doc-article{max-width:var(--reading)}.section-heading{margin:32px 0 14px;font-size:1.35rem;line-height:1.55;overflow:visible}.card-grid{display:grid;gap:14px}@media (min-width: 720px){.card-grid{grid-template-columns:repeat(3,1fr)}}.start-card{display:grid;gap:8px;padding:18px;border-radius:var(--radius);border:1px solid var(--line);background:#fffcf7e6;color:inherit;text-decoration:none;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}.start-card:hover{transform:translateY(-2px);border-color:#00b4e473}.card-order{font-family:var(--font-display);color:var(--teal);font-weight:700}.section-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.section-list a{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#fffcf7bf;text-decoration:none;color:var(--ink)}.section-list span{color:var(--ink-muted);font-size:.85rem}.doc-header{margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--line)}.markdown-body{font-size:1.05rem;line-height:1.7}.markdown-body>*:first-child{margin-top:0}.markdown-body h1{display:none}.markdown-body h2,.markdown-body h3,.markdown-body h4{scroll-margin-top:88px;margin:1.8em 0 .45em;line-height:1.55;overflow:visible}.markdown-body h2{font-size:1.45rem}.markdown-body h3{font-size:1.2rem}.markdown-body h4{font-size:1.05rem}.markdown-body .anchor{display:inline-block;margin-left:.4em;color:var(--line);text-decoration:none;opacity:0;font-size:.75em;font-weight:600;line-height:1;vertical-align:.1em}.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor{opacity:1;color:var(--teal)}.markdown-body p{margin:0 0 1em}.markdown-body ul,.markdown-body ol{margin:0 0 1em;padding-left:1.5em;list-style-position:outside}.markdown-body ul:not(.contains-task-list):not(:has(>li>input[type=checkbox])){list-style-type:disc}.markdown-body ol{list-style-type:decimal}.markdown-body li{margin:.45em 0;padding-left:.25em;line-height:1.65}.markdown-body li::marker{color:var(--accent)}.markdown-body li>p{margin:0}.markdown-body li>ul,.markdown-body li>ol{margin:.35em 0 .5em}.markdown-body ul.contains-task-list,.markdown-body ul:has(>li>input[type=checkbox]){list-style:none;padding-left:.15em}.markdown-body li.task-list-item,.markdown-body li:has(>input[type=checkbox]){display:flex;align-items:flex-start;gap:.55em;list-style:none;margin-left:0;padding-left:0}.markdown-body li.task-list-item::marker,.markdown-body li:has(>input[type=checkbox])::marker{content:none}.markdown-body li.task-list-item>input[type=checkbox],.markdown-body li:has(>input[type=checkbox])>input[type=checkbox]{margin:.38em 0 0;width:1em;height:1em;flex:0 0 auto}.markdown-body li.task-list-item>p,.markdown-body li:has(>input[type=checkbox])>p{margin:0;flex:1 1 auto;min-width:0}.markdown-body .table-scroll{margin:0 0 1.2em;overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fffcf7bf}.markdown-body table{width:100%;border-collapse:collapse;font-size:.95rem;margin:0;display:table}.markdown-body th,.markdown-body td{border:1px solid var(--line);padding:9px 12px;text-align:left;background:transparent;vertical-align:top}.markdown-body th{background:var(--paper-2);font-weight:600;white-space:nowrap}.markdown-body tr:nth-child(2n) td{background:#00b4e414}.markdown-body code{font-family:var(--font-mono);font-size:.88em;background:var(--paper-2);padding:.1em .35em;border-radius:6px;white-space:nowrap}.doc-figure{margin:0 0 1.4em;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fffdf9;box-shadow:var(--shadow)}.doc-figure img{display:block;width:100%;height:auto;border-radius:8px;background:#fff}.doc-figure figcaption{margin-top:10px;color:var(--ink-muted);font-size:.9rem;line-height:1.45;text-align:center}.mermaid-wrap{margin:0 0 1.4em;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fffcf7e6;overflow-x:auto}.mermaid-wrap svg{display:block;margin:0 auto;max-width:100%;height:auto}.mermaid-error{color:var(--danger);white-space:pre-wrap;font-family:var(--font-mono);font-size:.85rem}.code-block{position:relative;margin:0 0 1.2em}.code-block pre{margin:0;overflow:auto;padding:16px 18px;border-radius:12px;background:#12313a;color:#e8f7fb;border:1px solid #0c242b}.code-block code{background:transparent;color:inherit;padding:0;white-space:inherit}.copy-btn{position:absolute;top:10px;right:10px;border:1px solid rgba(247,244,239,.25);background:#07282bb3;color:#f7f4ef;border-radius:999px;padding:4px 10px;font-size:.8rem;cursor:pointer}.callout{margin:0 0 1.2em;padding:14px 16px;border-left:4px solid var(--accent);background:linear-gradient(90deg,var(--accent-soft),var(--teal-soft));border-radius:0 12px 12px 0;color:var(--ink)}.callout p{margin:0}.admin-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:24px}.admin-links{display:flex;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid .full{grid-column:1 / -1}.form-actions{display:flex;gap:10px}.keys-hint{margin:0}.table-wrap{margin-top:28px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fffcf7cc}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table th{background:var(--paper-2);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.row-actions{white-space:nowrap}.you-tag{margin-left:8px;font-size:.75rem;color:var(--teal);border:1px solid var(--teal-soft);border-radius:999px;padding:2px 8px}.editor-layout{display:grid;gap:14px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.editor-toolbar label{min-width:220px}.editor-panes{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-height:60vh}.editor-textarea,.editor-preview{border:1px solid var(--line);border-radius:var(--radius);background:#fffcf7e6}.editor-textarea{padding:16px;resize:vertical;min-height:60vh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92rem;line-height:1.5}.editor-preview{padding:18px;overflow:auto}.menu-btn,.sidebar-backdrop{display:none}@media (max-width: 900px){.topbar{grid-template-columns:1fr auto}.search-field{grid-column:1 / -1;order:3}.app-body{grid-template-columns:1fr}.menu-btn{display:inline-flex}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(320px,86vw);height:100vh;z-index:40;transform:translate(-105%);transition:transform .2s ease;box-shadow:var(--shadow)}.sidebar.open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#1c1f1e59;z-index:30}.editor-panes,.form-grid{grid-template-columns:1fr}.markdown-body .anchor{display:none}}
