:root{--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--editor-font-size:14.5px;--radius:8px;--radius-sm:6px;--brand-ring:transparent;--bg:#f4f5f7;--bg-panel:#fff;--bg-editor:#fff;--bg-hover:#eef0f3;--bg-active:#e6e8ec;--border:#e1e4e8;--border-strong:#cfd4da;--text:#1f2328;--text-muted:#57606a;--text-faint:#8c959f;--accent:#4f46e5;--accent-hover:#4338ca;--accent-soft:#4f46e524;--accent-contrast:#fff;--ok:#1a7f37;--ok-soft:#1a7f371f;--warn:#9a6700;--warn-soft:#d4a72c2e;--danger:#cf222e;--danger-soft:#cf222e1f;--shadow:0 10px 30px #10182824, 0 2px 6px #10182814;--cm-heading:#1f2328;--cm-link:#0969da;--cm-code:#953800;--cm-muted:#8c959f;--cm-quote:#57606a;--cm-keyword:#cf222e;--cm-string:#0a3069;--cm-number:#0550ae;--cm-function:#8250df;--cm-type:#953800;--cm-attr:#116329;--cm-active-line:#4f46e50d;--cm-selection:#4f46e533;--cm-match:#d4a72c40;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--brand-ring:#ffffff38;--bg:#0d1117;--bg-panel:#151a21;--bg-editor:#10151b;--bg-hover:#1f2630;--bg-active:#262e3a;--border:#252c36;--border-strong:#353e4a;--text:#e6edf3;--text-muted:#9ba6b2;--text-faint:#6e7781;--accent:#8b8cf8;--accent-hover:#a5a6fb;--accent-soft:#8b8cf82e;--accent-contrast:#11131a;--ok:#3fb950;--ok-soft:#3fb95024;--warn:#d29922;--warn-soft:#d299222e;--danger:#f85149;--danger-soft:#f8514926;--shadow:0 12px 34px #00000080, 0 2px 8px #00000059;--cm-heading:#e6edf3;--cm-link:#58a6ff;--cm-code:#ffa657;--cm-muted:#6e7781;--cm-quote:#9ba6b2;--cm-keyword:#ff7b72;--cm-string:#a5d6ff;--cm-number:#79c0ff;--cm-function:#d2a8ff;--cm-type:#ffa657;--cm-attr:#7ee787;--cm-active-line:#8b8cf80f;--cm-selection:#8b8cf847;--cm-match:#d2992247;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font:14px/1.45 var(--font-ui);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow:hidden}button{font:inherit;color:inherit}[hidden]{display:none!important}.icon{flex:none;display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.app{grid-template-rows:auto 1fr auto;height:100dvh;display:grid}.topbar{background:var(--bg-panel);border-bottom:1px solid var(--border);align-items:center;gap:10px;min-width:0;padding:8px 12px;display:flex}.brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;padding-right:6px;font-weight:650;display:flex}.brand-mark{box-shadow:inset 0 0 0 1px var(--brand-ring);color:#fff;background:#111;border-radius:8px;place-items:center;width:30px;height:30px;font-size:13px;font-weight:800;display:grid}.topbar-group{align-items:center;gap:2px;min-width:0;display:flex}.spacer{flex:1}.btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-panel);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;height:32px;padding:0 12px;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--bg-hover)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000;padding:0 9px}.btn-ghost:hover{color:var(--text)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.08);background:var(--danger)}.btn-block{width:100%}.icon-btn{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;display:grid}.icon-btn:hover,.icon-btn[aria-expanded=true]{background:var(--bg-hover);color:var(--text)}.segmented{background:var(--bg-hover);border-radius:9px;gap:2px;padding:3px;display:flex}.segmented button{height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.segmented button[aria-checked=true]{background:var(--bg-panel);color:var(--text);box-shadow:0 1px 2px #0000001f}.protection-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;height:34px;padding:0 12px;font-weight:600;display:inline-flex}.protection-btn.is-full{background:var(--ok-soft);color:var(--ok)}.protection-btn.is-relaxed{background:var(--warn-soft);color:var(--warn)}.protection-btn:hover{border-color:currentColor}.workspace{--split:50%;grid-template-columns:minmax(0, var(--split)) 6px minmax(0, 1fr);min-height:0;display:grid}.workspace[data-view=editor]{grid-template-columns:minmax(0,1fr) 0 0}.workspace[data-view=preview]{grid-template-columns:0 0 minmax(0,1fr)}.workspace[data-view=editor] .preview-pane,.workspace[data-view=preview] .editor-pane,.workspace:not([data-view=both]) .resizer{visibility:hidden;overflow:hidden}.workspace.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.workspace.resizing .preview-frame{pointer-events:none}.pane{background:var(--bg-panel);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.resizer{background:var(--bg);border-left:1px solid var(--border);border-right:1px solid var(--border);cursor:col-resize;touch-action:none;position:relative}.resizer:after{content:"";background:var(--border-strong);border-radius:2px;height:32px;position:absolute;top:50%;bottom:auto;left:1px;right:1px;transform:translateY(-50%)}.resizer:hover:after{background:var(--accent)}.resizer:focus-visible:after{background:var(--accent)}.tabs-row{background:var(--bg);border-bottom:1px solid var(--border);flex:none;align-items:stretch;display:flex}.tabs-row .tabs{border-bottom:0;flex:1;min-width:0}.tabs{background:var(--bg);border-bottom:1px solid var(--border);scrollbar-width:thin;flex:none;align-items:flex-end;gap:2px;padding:6px 8px 0;display:flex;overflow-x:auto}.tab{max-width:220px;height:32px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-bottom:0;border-radius:7px 7px 0 0;flex:none;align-items:center;gap:6px;padding:0 6px 0 12px;display:flex}.tab:hover{background:var(--bg-hover);color:var(--text)}.tab.active{background:var(--bg-panel);border-color:var(--border);color:var(--text);height:33px;margin-bottom:-1px}.tab-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tab-dot{background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px;display:none}.tab.dirty .tab-dot{display:block}.tab-close,.tab-new{width:22px;height:22px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;display:grid}.tab-close:hover,.tab-new:hover{background:var(--bg-active);color:var(--text)}.tab-new{width:28px;height:28px;margin:0 0 2px 4px}.editor-pane{container-type:inline-size}@container (width<=800px){.tool-advanced-toggle .tool-text{display:none}}.toolbar{border-bottom:1px solid var(--border);background:var(--bg-panel);flex-wrap:wrap;flex:none;align-items:center;gap:1px;padding:5px 8px;display:flex}.toolbar-advanced{background:var(--bg)}.tool{border-radius:var(--radius-sm);min-width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:2px;padding:0 6px;display:inline-flex}.tool:hover{background:var(--bg-hover);color:var(--text)}.tool[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.tool-menu{padding:0 4px 0 6px}.tool-sep{background:var(--border);width:1px;height:18px;margin:0 5px}.tool-spacer{flex:1}.tool-advanced-toggle{gap:6px;padding:0 10px;font-size:13px}.tool-advanced-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.tool-advanced-toggle[aria-expanded=true] .icon:last-child{transform:rotate(180deg)}.editor-host{flex:1;min-height:0;overflow:hidden}.editor-host .cm-editor{height:100%}.drop-overlay{z-index:20;background:color-mix(in srgb, var(--accent) 12%, transparent);border:3px dashed var(--accent);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);pointer-events:none;border-radius:4px;place-items:center;padding:24px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.drop-card{background:var(--bg-panel);max-width:340px;box-shadow:var(--shadow);text-align:center;border-radius:16px;justify-items:center;gap:8px;padding:28px 30px;display:grid}.drop-icon{color:var(--accent)}.drop-title{font-size:18px;font-weight:700}.drop-hint{color:var(--text-muted);font-size:13px}.preview-host{flex:1;min-height:0}.preview-frame{background:var(--bg-panel);border:0;width:100%;height:100%;display:block}.statusbar{border-top:1px solid var(--border);background:var(--bg-panel);height:28px;color:var(--text-muted);white-space:nowrap;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:12px;display:flex;overflow:hidden}.status-left{text-overflow:ellipsis;overflow:hidden}.status-right{align-items:center;gap:14px;display:flex}.status-private{color:var(--ok);cursor:help;align-items:center;gap:5px;display:inline-flex}.status-issues{background:var(--bg-hover);height:22px;color:var(--text-muted);cursor:pointer;border:0;border-radius:5px;align-items:center;gap:5px;padding:0 8px;font-size:12px;display:inline-flex}.status-issues.has-warn{background:var(--warn-soft);color:var(--warn)}.status-issues.has-danger{background:var(--danger-soft);color:var(--danger)}.popover{z-index:50;border:1px solid var(--border);background:var(--bg-panel);width:min(380px,100vw - 16px);box-shadow:var(--shadow);border-radius:12px;padding:14px;position:fixed}.menu{width:auto;min-width:200px;padding:5px}.menu-item{border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:7px 10px;display:flex}.menu-item:hover{background:var(--bg-hover)}.check{border-radius:var(--radius);cursor:pointer;grid-template-columns:22px 1fr;gap:10px;padding:9px 8px;display:grid}.check:hover{background:var(--bg-hover)}.check input{opacity:0;pointer-events:none;position:absolute}.check-box{border:2px solid var(--border-strong);border-radius:5px;place-items:center;width:20px;height:20px;margin-top:1px;transition:background .12s,border-color .12s;display:grid}.check input:checked+.check-box{background:var(--accent);border-color:var(--accent)}.check input:checked+.check-box:after{content:"";border:solid var(--accent-contrast);border-width:0 2px 2px 0;width:5px;height:10px;margin-top:-2px;transform:rotate(45deg)}.check input:focus-visible+.check-box{outline:2px solid var(--accent);outline-offset:2px}.check-main input:checked+.check-box{background:var(--ok);border-color:var(--ok)}.check-text{gap:2px;display:grid}.check-title{font-weight:600}.check-desc{color:var(--text-muted);font-size:12.5px}.perm-title{color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;margin:10px 8px 2px;font-size:11.5px;font-weight:700}.prot-note{border-radius:var(--radius);background:var(--accent-soft);margin:10px 4px 0;padding:10px 12px;font-size:12.5px}.prot-note-muted{background:var(--bg-hover);color:var(--text-muted)}.switch{cursor:pointer;align-items:center;gap:10px;padding:7px 4px;display:flex}.switch input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border-strong);cursor:pointer;border-radius:999px;flex:none;width:34px;height:20px;margin:0;transition:background .15s;position:relative}.switch input:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.switch input:checked{background:var(--accent)}.switch input:checked:after{transform:translate(14px)}.settings-note{color:var(--text-muted);margin:4px 4px 8px;font-size:12.5px}.settings-panel hr{border:0;border-top:1px solid var(--border);margin:10px 0}.dialog{border:1px solid var(--border);background:var(--bg-panel);width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--text);box-shadow:var(--shadow);border-radius:14px;padding:22px 24px 18px}.dialog::backdrop{background:#0a0c1073}.dialog-title{margin:0 0 10px;font-size:18px}.dialog-body{color:var(--text-muted);overflow-wrap:anywhere}.dialog-body p{margin:8px 0}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.muted{color:var(--text-faint)}.issues h3{color:var(--text);margin:14px 0 6px;font-size:14px}.issues .issues-danger{color:var(--danger)}.issues .issues-warn{color:var(--warn)}.issues ul{margin:0;padding-left:18px}.issues>ul>li{margin:4px 0}.issue-what{color:var(--text)}.issue-target{font-family:var(--font-mono);word-break:break-all;font-size:12px}.issue-reasons{font-size:12.5px}.issues-note{color:var(--text-faint);margin-top:14px;font-size:12px}.toasts{z-index:100;pointer-events:none;justify-items:end;gap:8px;display:grid;position:fixed;bottom:40px;right:16px}.toast{border-left:4px solid var(--accent);background:var(--bg-panel);max-width:min(440px,100vw - 32px);box-shadow:var(--shadow);opacity:0;border-radius:10px;padding:10px 14px;transition:opacity .2s,transform .2s;transform:translateY(8px)}.toast.show{opacity:1;transform:none}.toast-ok{border-left-color:var(--ok)}.toast-warn{border-left-color:var(--warn)}.toast-error{border-left-color:var(--danger)}@media (max-width:1180px){.btn-label,.seg-label,.tool-advanced-toggle .tool-text{display:none}}@media (max-width:900px){.brand-name,.protection-label{display:none}.protection-btn{padding:0 9px}}@media (max-width:760px){.protection-btn,#theme-btn,#settings-btn{display:none}.topbar .menu-btn{display:grid}.btn-open{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);padding:0 12px}.btn-open:hover{background:var(--accent-hover);color:var(--accent-contrast)}.btn-open .btn-label{font-weight:600;display:inline}.tabs-row .toolbar-toggle{display:inline-flex}.editor-pane:not(.toolbar-open) .toolbar{display:none}.topbar{gap:4px;padding:6px 8px}.hide-sm{display:none}.workspace{grid-template-columns:1fr;grid-template-rows:minmax(0, var(--split)) 8px minmax(0, 1fr)}.workspace[data-view=editor]{grid-template-rows:minmax(0,1fr) 0 0;grid-template-columns:1fr}.workspace[data-view=preview]{grid-template-rows:0 0 minmax(0,1fr);grid-template-columns:1fr}.resizer{cursor:row-resize;border:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.resizer:after{width:32px;height:4px;top:1px;bottom:auto;left:50%;right:auto;transform:translate(-50%)}.workspace.resizing{cursor:row-resize}.status-left,.status-encoding,.status-private-text{display:none}.statusbar{justify-content:flex-end}}.outdated{cursor:pointer;z-index:200;background:var(--danger);color:#fff;text-align:center;padding:12px 16px;font-weight:600;position:fixed;top:auto;bottom:28px;left:0;right:0}.select-row{justify-content:space-between;align-items:center;gap:12px;padding:4px 4px 2px;display:flex}.select-row select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-panel);min-width:0;max-width:60%;height:32px;color:var(--text);font:inherit;cursor:pointer;padding:0 8px}.menu-btn,.toolbar-toggle{display:none}.toolbar-toggle{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px 7px 0 0;flex:none;align-items:center;gap:6px;margin:4px 6px 0;padding:0 10px;font-size:13px}.toolbar-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.toolbar-toggle[aria-expanded=true] .icon:last-child{transform:rotate(180deg)}.menu-sep{background:var(--border);height:1px;margin:5px 4px}.menu-item.is-full{color:var(--ok)}.menu-item.is-relaxed{color:var(--warn)}
