:root{--ground: #f7f8f7;--surface: #ffffff;--ink: #14201f;--ink-muted: #5a6b6a;--line: #d9e0df;--primary: #0f4c4a;--primary-ink: #ffffff;--danger: #8c2f26;--danger-bg: #fdf1ef;--ok: #1c5b3a;--ok-bg: #eef6f1;--radius: 8px;--gap: 1rem;--gap-lg: 1.75rem;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.55;color:var(--ink);background:var(--ground)}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink)}h1{font-size:1.5rem;font-weight:600;letter-spacing:-.01em;margin:0 0 .25rem}h2{font-size:1.1rem;font-weight:600;margin:0}a{color:var(--primary)}.muted{color:var(--ink-muted)}.small{font-size:.875rem}.mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.9em}.nowrap{white-space:nowrap}.right{text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.centered{min-height:100vh;display:grid;place-items:center;padding:var(--gap-lg)}.page{max-width:1100px;margin:0 auto;padding:var(--gap-lg)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--gap);margin-bottom:var(--gap-lg);flex-wrap:wrap}.row{display:flex;align-items:center;gap:.5rem}.space-between{justify-content:space-between;width:100%}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--gap)}.shell{min-height:100vh}.topbar{display:flex;align-items:center;gap:var(--gap-lg);padding:.85rem var(--gap-lg);background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap}.brand{font-weight:650;letter-spacing:-.02em;color:var(--primary);text-decoration:none;font-size:1.05rem}.topnav{display:flex;gap:1.25rem;flex:1}.topnav a{color:var(--ink-muted);text-decoration:none;padding-bottom:2px;border-bottom:2px solid transparent}.topnav a.active{color:var(--ink);border-bottom-color:var(--primary)}.identity{display:flex;align-items:center;gap:.85rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--gap-lg);margin-bottom:var(--gap)}.auth-card{width:min(420px,100%);display:flex;flex-direction:column;gap:.4rem;margin:0}.auth-card h1{margin-bottom:0}.auth-card .muted:first-of-type{margin-top:0;margin-bottom:var(--gap)}.panel{display:flex;flex-direction:column;gap:var(--gap)}.filters{display:flex;gap:var(--gap);align-items:center;flex-wrap:wrap;padding:var(--gap)}.filters input[type=search]{flex:1;min-width:200px}.checkbox{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--ink-muted)}.secret pre{background:var(--ground);border:1px solid var(--line);border-radius:var(--radius);padding:var(--gap);overflow-x:auto;white-space:pre-wrap;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}label{font-size:.875rem;font-weight:550;color:var(--ink);display:block;margin-bottom:.25rem}input,select,textarea{width:100%;padding:.6rem .7rem;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}input[aria-invalid=true]{border-color:var(--danger)}textarea{resize:vertical}button{font:inherit;padding:.55rem .9rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}button:hover:not(:disabled){border-color:var(--ink-muted)}button:disabled{opacity:.55;cursor:not-allowed}button.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);font-weight:550}button.primary:hover:not(:disabled){filter:brightness(1.12)}.auth-card button.primary{margin-top:var(--gap);padding:.7rem}.alert{background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger);border-radius:var(--radius);padding:.6rem .75rem;margin:.5rem 0;font-size:.9rem}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.78rem;font-weight:550}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.off{background:var(--danger-bg);color:var(--danger)}.tag{display:inline-block;margin-left:.5rem;padding:.1rem .4rem;border:1px solid var(--line);border-radius:4px;font-size:.72rem;color:var(--ink-muted);vertical-align:middle}.table-wrap{padding:0;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.925rem}th,td{text-align:left;padding:.7rem var(--gap);border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);background:var(--ground)}tbody tr:last-child td{border-bottom:none}tr.inactive td{color:var(--ink-muted)}td button{padding:.3rem .6rem;font-size:.85rem;margin-left:.35rem}.pager{justify-content:center;gap:var(--gap)}.results ul{margin:.5rem 0 0;padding-left:1.1rem}.button-link{display:inline-block;padding:.55rem .9rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);text-decoration:none;font-size:.925rem}.button-link.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);font-weight:550}td .button-link{padding:.3rem .6rem;font-size:.85rem;margin-left:.35rem}.topic-tree,.topic-children{list-style:none;margin:0;padding:0}.topic-row{display:flex;align-items:center;gap:var(--gap);padding:.5rem 0;border-bottom:1px solid var(--line)}.topic-name{flex:1;font-weight:500}.topic-actions{display:flex;gap:.35rem}.topic-actions button{padding:.25rem .55rem;font-size:.82rem}.topic-add{display:flex;gap:.5rem;align-items:center;padding:.6rem 0}.topic-add input{max-width:320px}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap);align-items:start}@media (max-width: 900px){.editor-grid{grid-template-columns:1fr}}.editor .card{display:flex;flex-direction:column;gap:.5rem}.editor .grid{margin-bottom:var(--gap)}.preview-pane{position:sticky;top:var(--gap)}fieldset.options{border:1px solid var(--line);border-radius:var(--radius);padding:var(--gap);margin:0}fieldset.options legend{font-size:.875rem;font-weight:550;padding:0 .4rem}.option-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.option-row .option-label{width:1.5rem;text-align:center;font-weight:600;color:var(--ink-muted)}.option-row .checkbox{white-space:nowrap}.media{border-top:1px solid var(--line);padding-top:var(--gap)}.media h3{font-size:.95rem;margin:0 0 .5rem}.problems{margin-top:var(--gap);border-top:1px solid var(--line);padding-top:var(--gap)}.problems h3{font-size:.9rem;margin:0 0 .4rem;color:var(--ink-muted)}.problems ul{margin:0;padding-left:1.1rem;color:var(--danger);font-size:.9rem}.preview{border:1px solid var(--line);border-radius:var(--radius);background:var(--ground);padding:var(--gap)}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);margin-bottom:.75rem}.badge.neutral{background:var(--surface);border:1px solid var(--line);color:var(--ink-muted)}.preview-text{margin:0 0 var(--gap);font-size:1.02rem;line-height:1.6;white-space:pre-wrap}.preview-image{max-width:100%;border-radius:var(--radius);border:1px solid var(--line);margin-bottom:var(--gap)}.preview-options{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.preview-option{display:flex;align-items:baseline;gap:.6rem;padding:.6rem .75rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);font-weight:400;cursor:default}.preview-option .option-label{font-weight:600;color:var(--ink-muted)}.preview-answer textarea{background:var(--surface)}.dropzone{text-align:center;border:2px dashed var(--line);background:var(--surface);padding:var(--gap-lg)}.dropzone.dragging{border-color:var(--primary);background:var(--ok-bg)}.dropzone-headline{font-size:1.05rem;font-weight:550;margin:0 0 .35rem}.dropzone input[type=file]{max-width:380px;margin:.5rem auto}.import-progress .counts{display:flex;gap:var(--gap-lg);flex-wrap:wrap;margin-top:var(--gap)}.count{display:flex;flex-direction:column;gap:.1rem}.count-value{font-size:1.5rem;font-weight:600;line-height:1.1}.count-value.ok{color:var(--ok)}.count-value.bad{color:var(--danger)}.badge.warn{background:#fdf6ec;color:#8a5a1a}
