.command-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:1.5rem;z-index:var(--z-overlay, 1200)}.command-dismiss{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;border:none}.command-surface{position:relative;width:min(720px,100%);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:.85rem;box-shadow:var(--shadow-strong);display:flex;flex-direction:column;gap:.75rem;padding:1rem;z-index:1}.command-field{display:flex;align-items:center;gap:.5rem;border:1px solid var(--border-subtle);border-radius:.65rem;padding:.65rem .85rem;background:var(--surface-2);font-family:var(--font-mono)}.command-field span{color:var(--accent)}.command-field input{flex:1;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-mono);font-size:1rem;outline:none}.command-results{max-height:360px;overflow:auto;display:flex;flex-direction:column;gap:.5rem}.command-group{border:1px solid var(--border-subtle);border-radius:.65rem;background:var(--surface-2)}.command-group-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--text-muted);padding:.6rem .9rem .25rem}.command-group ul{list-style:none;margin:0;padding:.25rem;display:flex;flex-direction:column;gap:.35rem}.command-item{width:100%;border:1px solid transparent;background:transparent;color:var(--text-primary);border-radius:.55rem;padding:.65rem .75rem;display:flex;justify-content:space-between;gap:.65rem;align-items:center;cursor:pointer;font-family:var(--font-mono);transition:border-color .14s ease,background .14s ease,transform .14s ease}.command-item:hover:not(:disabled),.command-item.active:not(:disabled){border-color:var(--border-strong);background:linear-gradient(135deg,var(--surface-2),var(--accent-soft));transform:translateY(-1px)}.command-item:disabled{opacity:.5;cursor:not-allowed}.command-label{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}.command-id{font-size:.85rem;color:var(--text-muted)}.command-text{font-size:1rem;font-weight:600}.command-meta{display:flex;align-items:center;gap:.35rem}.command-desc{color:var(--text-muted);font-size:.85rem}.command-key{border:1px solid var(--border-subtle);border-radius:.3rem;padding:.2rem .4rem;font-family:var(--font-mono);background:var(--surface-1)}.command-empty{text-align:center;padding:1rem;color:var(--text-muted);font-family:var(--font-mono)}@media (prefers-reduced-motion: reduce){.command-overlay,.command-item{transition:none}}.frame{display:grid;grid-template-rows:1fr auto;min-height:100svh;height:100svh;background:var(--background);color:var(--text-primary);overflow:hidden}.frame-shell{display:flex;flex-direction:column;gap:.75rem;min-height:0;height:100%}.frame-content{display:grid;grid-template-columns:280px 1fr;min-height:0;height:100%;border:1px solid var(--border-subtle);border-radius:1rem;overflow:hidden;box-shadow:var(--shadow-soft)}.frame-pane{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-1) 70%,transparent),var(--surface-0));border-right:1px solid var(--border-subtle);position:relative}.frame-workspace{background:var(--surface-0);position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden}.frame-footer{padding:.5rem .75rem;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);display:flex;justify-content:flex-end}.frame-content.is-stacked{grid-template-columns:1fr;grid-template-rows:auto 1fr}.frame-content.is-stacked .frame-pane{border-right:none;border-bottom:1px solid var(--border-subtle)}.frame-compact .frame-shell{gap:.5rem}.chip{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:.35rem;border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-primary);font-size:.75rem;letter-spacing:.03em;text-transform:none;font-weight:700;font-family:var(--font-mono)}.chip-accent{border-color:var(--accent);color:var(--text-secondary);background:var(--accent-soft)}.chip-muted{color:var(--text-muted);border-color:var(--border-subtle)}.chip-danger{border-color:var(--danger);color:var(--danger)}.popover-surface{position:fixed;background:var(--surface-0);border:1px solid var(--border-subtle);border-radius:.65rem;box-shadow:var(--shadow-strong);padding:.6rem;z-index:var(--z-overlay, 1200);min-width:220px}.global-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.85rem 1.1rem;border-bottom:1px solid var(--border-subtle);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-1) 75%,transparent),transparent);position:sticky;top:0;z-index:2}.header-cluster{display:flex;align-items:center;gap:.45rem;font-family:var(--font-mono);letter-spacing:.04em}.brand-mark{display:flex;flex-direction:column;gap:.15rem}.brand-name{font-weight:800;font-size:1.2rem;position:relative}.brand-name:after{content:"";display:inline-block;width:.6ch;margin-left:.15ch;opacity:0}.header-center{display:flex;align-items:center;gap:.75rem;min-width:0}.page-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0}.page-title{font-family:var(--font-sans);font-weight:800;letter-spacing:.02em;font-size:1.25rem}.page-token{font-family:var(--font-mono);font-size:.95rem;color:var(--text-muted);padding:.25rem .6rem;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-1)}.header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem;position:relative}.indicator-row{display:flex;gap:.35rem;flex-wrap:wrap}.action-row{display:flex;gap:.4rem;align-items:center}.ghost-button,.command-button{border:1px solid var(--border-subtle);background:linear-gradient(180deg,var(--surface-1),var(--surface-2));color:var(--text-primary);padding:.5rem .9rem;border-radius:.55rem;font-family:var(--font-mono);letter-spacing:.05em;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.ghost-button:hover,.ghost-button:focus-visible,.command-button:hover,.command-button:focus-visible{border-color:var(--border-strong);outline:none;transform:translateY(-1px)}.command-button{background:linear-gradient(135deg,var(--accent-soft),var(--surface-2));border-color:var(--accent)}[data-theme=dark] .ghost-button,[data-theme=dark] .command-button{background:linear-gradient(170deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--surface-3) 70%,transparent));border-color:var(--border-strong);color:var(--text-primary)}[data-theme=dark] .ghost-button:hover,[data-theme=dark] .ghost-button:focus-visible,[data-theme=dark] .command-button:hover,[data-theme=dark] .command-button:focus-visible{border-color:color-mix(in srgb,var(--accent) 40%,var(--border-strong) 60%);background:linear-gradient(150deg,color-mix(in srgb,var(--surface-2) 85%,transparent),color-mix(in srgb,var(--surface-3) 80%,transparent));box-shadow:var(--shadow-soft)}.compact-actions{position:relative}.compact-menu{display:grid;gap:.4rem}.global-header.is-compact{grid-template-columns:1fr;gap:.75rem;padding:.65rem .9rem}.global-header.is-compact .header-actions{width:100%;align-items:flex-start}.global-header.is-compact .action-row{gap:.5rem;flex-wrap:wrap}@media (max-width: 960px){.global-header{grid-template-columns:1fr;align-items:flex-start}.header-actions{align-items:flex-start}}@media (prefers-reduced-motion: reduce){.ghost-button,.command-button{transition:none}.brand-name:after{opacity:0}}.global-header:hover .brand-name:after,.global-header:focus-within .brand-name:after{opacity:1;content:"█";animation:blink 1s steps(2,start) infinite}@media (prefers-reduced-motion: no-preference){@keyframes blink{0%,50%{opacity:1}50.01%,to{opacity:0}}}@media (prefers-reduced-motion: reduce){.global-header:hover .brand-name:after,.global-header:focus-within .brand-name:after{opacity:1;animation:none}}.module-list{padding:1.25rem 1rem 1.5rem;display:flex;flex-direction:column;gap:1rem;min-height:100%;background:var(--surface-0);border-right:1px solid var(--border-subtle);overflow:auto}.module-header{display:flex;justify-content:space-between;align-items:center;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-sans)}.module-title{font-weight:800;font-size:1.3rem}.module-subtitle{font-size:.85rem;color:var(--text-muted)}.module-list ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.module-button{width:100%;border:1px solid var(--border-subtle);background:linear-gradient(180deg,#ffffff05,#00000005);color:var(--text-primary);border-radius:.7rem;padding:.8rem .9rem;display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease;position:relative}.module-button:hover{border-color:var(--border-strong);transform:translateY(-1px);background:var(--surface-1);color:var(--text-secondary);box-shadow:var(--shadow-soft)}.module-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.module-button.active{border-color:var(--accent);background:linear-gradient(150deg,var(--surface-1),var(--surface-2));color:var(--text-primary);box-shadow:var(--shadow-soft)}.module-key{font-family:var(--font-mono);font-size:.9rem;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:flex-start;min-width:8ch;padding:.25rem .65rem;border-radius:.5rem;border:1px solid var(--border-subtle);background:var(--surface-1)}.module-copy{display:flex;flex-direction:column;gap:.1rem;align-items:flex-start;text-align:left;min-width:0}.module-name{font-weight:700;font-family:var(--font-sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-sub{font-size:.85rem;color:var(--text-muted);line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis}.module-indicator{color:var(--accent);font-size:1rem;opacity:0;display:inline-flex;justify-content:center;min-width:1.25rem}.module-button.active .module-indicator{opacity:1}.workspace-scroll{padding:1.25rem 1.5rem 1.5rem;overflow:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:1rem}.app-surface.is-compact .workspace-scroll{padding:.85rem 1rem 1rem;gap:.8rem}.guide-link{display:flex;justify-content:flex-end;width:100%}.guide-link-button{border:1px dashed var(--border-subtle);background:var(--surface-1);color:var(--text-muted);padding:.35rem .6rem;border-radius:.5rem;font-family:var(--font-mono);cursor:pointer;transition:border-color .14s ease,color .14s ease,background .14s ease}.guide-link-button:hover,.guide-link-button:focus-visible{border-color:var(--border-strong);color:var(--text-primary);outline:none}.panel{border:1px solid var(--border-subtle);border-radius:.75rem;background:linear-gradient(180deg,var(--surface-0),color-mix(in srgb,var(--surface-1) 85%,transparent));box-shadow:var(--shadow-soft);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.panel-heading{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-sans);font-weight:700;letter-spacing:.02em}.panel-subtext{color:var(--text-muted);font-size:.9rem}.grid-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.input,.textarea,.select,.dropzone,.output{width:100%;border:1px solid var(--border-subtle);border-radius:.65rem;padding:.75rem;background:var(--surface-1);color:var(--text-primary);font-family:var(--font-mono);min-width:0}.output{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;overflow:auto;background:var(--surface-2)}.textarea{min-height:140px;resize:vertical}.dropzone{border-style:dashed;text-align:center;padding:1.25rem;cursor:pointer;background:var(--surface-2)}.table{width:100%;border-collapse:collapse;font-family:var(--font-mono)}.table th,.table td{border-bottom:1px solid var(--border-subtle);padding:.55rem;text-align:left}.table th{font-size:.85rem;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.status-line{display:flex;justify-content:space-between;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:.95rem;color:var(--text-muted)}.tag{padding:.25rem .5rem;border-radius:.4rem;font-family:var(--font-mono);font-size:.85rem;border:1px solid var(--border-subtle)}.tag-accent{border-color:var(--accent);color:var(--text-secondary);background:var(--accent-soft)}.tag-danger{border-color:var(--danger);color:var(--danger)}.muted{color:var(--text-muted)}.controls-row{display:flex;gap:.5rem;flex-wrap:wrap;min-width:0}.button{border:1px solid var(--border-subtle);background:linear-gradient(180deg,var(--surface-1),var(--surface-2));padding:.6rem .9rem;border-radius:.55rem;font-family:var(--font-mono);cursor:pointer;color:var(--text-primary);transition:border-color .16s ease,background .16s ease,transform .12s ease,box-shadow .16s ease}.button:hover,.button:focus-visible{border-color:var(--border-strong);outline:none;background:linear-gradient(160deg,var(--surface-1),color-mix(in srgb,var(--surface-3) 40%,transparent));transform:translateY(-1px);box-shadow:var(--shadow-soft)}.pill-buttons{display:inline-flex;border:1px solid var(--border-subtle);border-radius:.6rem;overflow:hidden}.pill-buttons button{border:none;padding:.5rem .9rem;background:transparent;font-family:var(--font-mono);cursor:pointer;transition:background .16s ease,color .16s ease}.pill-buttons button:not(:last-child){border-right:1px solid var(--border-subtle)}.pill-buttons button.active{background:var(--accent-soft);color:var(--text-secondary)}.pill-buttons button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.log-preview{background:#0e1118;color:#f5f5f5;border-radius:.65rem;padding:.85rem;font-family:var(--font-mono);line-height:1.35;border:1px solid var(--border-strong);overflow:auto;word-break:break-word;white-space:pre-wrap}.log-line{display:flex;gap:.35rem;min-width:0;overflow-wrap:anywhere}.log-marker{color:var(--accent)}.diff-add{color:var(--accent);word-break:break-word}.diff-remove{color:#ff7f7f;word-break:break-word}.rule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.rule-tile{border:1px dashed var(--border-subtle);border-radius:.6rem;padding:.6rem;background:var(--surface-1);display:flex;align-items:center;gap:.5rem}.note-box{border:1px dashed var(--border-subtle);padding:.75rem;border-radius:.6rem;background:var(--surface-1)}.note-list{list-style:none;padding:.5rem 0 0;margin:0;display:flex;flex-direction:column;gap:.35rem}.note-list li{border:1px solid var(--border-subtle);border-radius:.5rem;padding:.5rem .65rem;background:var(--surface-2)}.note-title{font-family:var(--font-sans);font-weight:700}.note-body{font-family:var(--font-mono);color:var(--text-muted);word-break:break-word}.section-title{font-family:var(--font-sans);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:.9rem}.microcopy{font-size:.75rem;color:var(--text-muted);font-family:var(--font-mono);word-break:break-word}.redact-preview{border:1px dashed var(--border);border-radius:.6rem;padding:.75rem;min-height:80px;font-family:var(--font-mono);background:var(--surface-1)}.highlight-view{white-space:pre-wrap;word-break:break-word}.highlight{background:var(--accent-soft);padding:0 2px;border-radius:2px}.highlight.high{background:color-mix(in srgb,var(--danger) 25%,transparent)}.highlight.medium{background:var(--accent-soft)}.highlight.low{background:color-mix(in srgb,#8cbefb 25%,transparent)}.image-preview{max-width:100%;max-height:240px;object-fit:contain;border-radius:.5rem;border:1px solid var(--border-subtle);background:var(--surface-2);display:block}.toast-host{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:20}.toast{background:var(--surface-2);border:1px solid var(--border-subtle);color:var(--text-primary);padding:10px 12px;border-radius:8px;box-shadow:var(--shadow-soft);font-size:.92rem;min-width:220px}.toast-accent{border-color:var(--accent);color:var(--text-secondary)}.toast-danger{border-color:var(--danger);color:var(--danger)}.guide-surface{gap:1.1rem}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.9rem}.guide-card{display:flex;flex-direction:column;gap:.75rem}.guide-card-header{display:grid;grid-template-columns:1fr;gap:.6rem;align-items:center}.guide-card-title{display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:baseline;min-width:0}.guide-key{font-family:var(--font-mono);font-size:.9rem;padding:.25rem .55rem;border-radius:.55rem;border:1px solid var(--border-subtle);background:var(--surface-1);white-space:nowrap}.guide-title-wrap{display:grid;gap:.2rem;min-width:0}.guide-name{font-family:var(--font-sans);font-weight:800;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-summary{color:var(--text-muted);font-size:.9rem;min-width:0;overflow-wrap:anywhere}.guide-card-body{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start}.guide-section{display:flex;flex-direction:column;gap:.35rem;min-width:0}.guide-list{list-style:disc;padding-inline-start:1.1rem;margin:0;overflow-wrap:anywhere;word-break:break-word}ol.guide-list{list-style:decimal;padding-inline-start:1.2rem}.guide-clipboard-row{flex-wrap:wrap}@media (max-width: 720px){.guide-card-body{grid-template-columns:1fr}.guide-name{white-space:normal}}.app-surface{padding:1rem;min-height:100svh;height:100svh;background:radial-gradient(circle at 15% 18%,rgba(214,239,82,.07),transparent 32%),radial-gradient(circle at 85% 12%,rgba(14,17,22,.28),transparent 30%),var(--background);overflow:hidden}.app-surface.is-compact{padding:.75rem}.workspace{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}:root{--background: #f6f7f4;--surface-0: #fdfdfb;--surface-1: #f4f5f0;--surface-2: #eceee7;--surface-3: #e3e5dc;--border-subtle: #d7d9d0;--border-strong: #c3c7bb;--text-primary: #121418;--text-secondary: #2c3036;--text-muted: #515864;--accent: #7c9126;--accent-soft: rgba(124, 145, 38, .18);--danger: #e35f5f;--success: #53c58a;--focus-ring: #7c9126;--z-overlay: 1200;--shadow-soft: 0 10px 35px rgba(0, 0, 0, .12);--shadow-strong: 0 16px 55px rgba(0, 0, 0, .18);--font-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "SFMono-Regular", "Menlo", "Consolas", "Roboto Mono", ui-monospace, monospace}[data-theme=dark]{--background: #0e1116;--surface-0: #10151c;--surface-1: #161b23;--surface-2: #1c222d;--surface-3: #222a36;--border-subtle: #242c38;--border-strong: #2f3948;--text-primary: #e8ecf4;--text-secondary: #d1d6e0;--text-muted: #9fa9bb;--accent: #d6ef52;--accent-soft: rgba(214, 239, 82, .18);--danger: #ff7b7b;--success: #6fdca2;--focus-ring: #c6df45;--z-overlay: 1200;--shadow-soft: 0 12px 45px rgba(0, 0, 0, .35);--shadow-strong: 0 20px 55px rgba(0, 0, 0, .4)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);color:var(--text-primary);background:var(--background);min-height:100vh;overflow:hidden;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(circle at 10% 20%,rgba(0,0,0,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.015) 1px,transparent 1px),linear-gradient(0deg,rgba(0,0,0,.015) 1px,transparent 1px);background-size:180px 180px,4px 4px,6px 6px;opacity:.3;z-index:0}#root{position:relative;z-index:1}button,input,textarea{font-family:inherit}button:disabled,input:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}::selection{background:#d6ef5240}[data-theme=dark] .button{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-1) 70%,transparent),color-mix(in srgb,var(--surface-2) 70%,transparent));border-color:var(--border-strong);color:var(--text-primary)}[data-theme=dark] .button:hover,[data-theme=dark] .button:focus-visible{background:linear-gradient(160deg,color-mix(in srgb,var(--surface-2) 80%,transparent),color-mix(in srgb,var(--surface-3) 70%,transparent));border-color:color-mix(in srgb,var(--border-strong) 70%,var(--accent) 30%)}[data-theme=dark] .pill-buttons{border-color:var(--border-strong);background:color-mix(in srgb,var(--surface-2) 70%,transparent)}[data-theme=dark] .pill-buttons button{background:color-mix(in srgb,var(--surface-1) 60%,transparent);color:var(--text-primary)}[data-theme=dark] .pill-buttons button.active{background:color-mix(in srgb,var(--accent-soft) 90%,var(--surface-2) 30%);color:var(--text-primary)}
