@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/archivo-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/archivo-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-display:swap;src:url(/admin/fonts/archivo-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-display:swap;src:url(/admin/fonts/archivo-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-display:swap;src:url(/admin/fonts/archivo-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-display:swap;src:url(/admin/fonts/archivo-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-display:swap;src:url(/admin/fonts/archivo-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-display:swap;src:url(/admin/fonts/archivo-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-display:swap;src:url(/admin/fonts/archivo-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:800;font-display:swap;src:url(/admin/fonts/archivo-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/bebas-neue-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/bebas-neue-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/jetbrains-mono-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/admin/fonts/jetbrains-mono-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/admin/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/admin/fonts/jetbrains-mono-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/admin/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0D0D0D;--bg-tint: #111318;--surface: #141414;--surface-raised: #1A1A1A;--surface-hover: #222222;--border: #252525;--border-strong: #333333;--hairline: rgba(255,255,255,.04);--text-primary: #E8E8E8;--text-secondary: #888888;--text-muted: #7A7A7A;--text-placeholder: #565656;--green: #2ECC71;--green-hover: #3DDC82;--green-muted: rgba(46,204,113,.12);--green-border: rgba(46,204,113,.28);--green-glow: rgba(46,204,113,.4);--amber: #F39C12;--amber-muted: rgba(243,156,18,.12);--amber-border: rgba(243,156,18,.28);--amber-glow: rgba(243,156,18,.35);--red: #E74C3C;--red-muted: rgba(231,76,60,.12);--red-border: rgba(231,76,60,.28);--red-glow: rgba(231,76,60,.4);--blue: #3498DB;--blue-muted: rgba(52,152,219,.12);--blue-border: rgba(52,152,219,.28);--overlay: rgba(0,0,0,.74);--selection: rgba(255,255,255,.22);--font-display: "Bebas Neue", sans-serif;--font-body: "Archivo", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);font-size:14px;line-height:1.45;background-color:var(--bg);background-image:var(--chrome-bg);background-attachment:fixed;color:var(--text-primary);-webkit-font-smoothing:antialiased}#root{height:100%;display:flex;flex-direction:column;min-height:0}a{color:var(--blue)}:focus-visible{outline:2px solid var(--green-border);outline-offset:2px;border-radius:6px}::selection{background:var(--selection)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:root{--topbar-h: 48px;--sidebar-w: 240px;--content-max: 1200px;--chrome-bg: radial-gradient(900px 480px at 0% 0%, var(--green-muted), transparent 70%), linear-gradient(180deg, var(--bg-tint) 0%, var(--bg) 55%)}.workspace{flex:1;display:flex;min-height:0}.content{flex:1;min-width:0;overflow-y:auto;margin-right:8px;background:var(--surface);border:1px solid var(--border);border-bottom:none;border-radius:12px 12px 0 0;padding:20px 32px 48px}.page{width:100%;max-width:var(--content-max);margin:0 auto;display:flex;flex-direction:column;gap:16px}.page>*,.drawer-body>*{flex-shrink:0}.content::-webkit-scrollbar{width:10px}.content::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px;border:3px solid var(--surface)}.centered{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;overflow-y:auto}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.topbar{height:var(--topbar-h);flex-shrink:0;display:flex;align-items:center;gap:16px;padding:0 16px;background:transparent}.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;color:var(--text-primary);text-decoration:none}.brand-mark{width:28px;height:28px;border-radius:8px;background:var(--green-muted);color:var(--green);display:inline-flex;align-items:center;justify-content:center}.brand-name{font-family:var(--font-display);font-size:18px;letter-spacing:2.5px}.topbar-right{margin-left:auto;display:inline-flex;align-items:center;gap:10px}.who{display:inline-flex;align-items:center;gap:8px;padding:2px 8px 2px 2px;border-radius:8px;color:inherit;text-decoration:none}.who:hover{background:var(--surface-raised)}.who:hover .who-name{color:var(--text-primary)}.avatar{width:28px;height:28px;border-radius:50%;background:var(--surface-raised);border:1px solid var(--border-strong);color:var(--text-primary);font-size:11px;font-weight:600;letter-spacing:.5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.who-name{font-size:13px;color:var(--text-secondary)}.sidebar{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;gap:6px;padding:6px 12px 16px;background:transparent;overflow-y:auto}.sidebar-context{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 6px;border-radius:8px;color:var(--text-primary);text-decoration:none;min-width:0}.sidebar-context:hover{background:var(--surface-raised)}.context-mark{width:32px;height:32px;border-radius:8px;background:var(--surface-raised);border:1px solid var(--border-strong);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.context-body{display:flex;flex-direction:column;min-width:0;flex:1}.context-kind{font-size:11px;color:var(--text-muted);line-height:1.3}.context-name{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.context-switch{color:var(--text-muted);flex-shrink:0}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding-top:4px}.nav-item{display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:6px;color:var(--text-secondary);text-decoration:none;font-size:14px}.nav-item svg{flex-shrink:0;color:var(--text-muted)}.nav-item:hover{background:var(--surface-raised);color:var(--text-primary)}.nav-item.active{background:var(--text-primary);color:var(--bg);font-weight:600}.nav-item.active svg{color:var(--bg)}.nav-group{padding:14px 10px 4px;color:var(--text-muted);font-size:12px;font-weight:500}.nav-group:first-child{padding-top:2px}.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--text-secondary)}.crumbs a{color:var(--text-secondary);text-decoration:none}.crumbs a:hover{color:var(--text-primary);text-decoration:underline}.crumbs .sep{color:var(--text-muted)}.crumbs .current{color:var(--text-primary);font-weight:600}.crumbs+.page-head{margin-top:-6px}.nav-count{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--amber-muted);color:var(--amber);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.3px;display:inline-flex;align-items:center;justify-content:center}.nav-item.active .nav-count{background:var(--bg);color:var(--text-primary)}.bell-btn{position:relative;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;text-decoration:none}.bell-btn:hover,.bell-btn[aria-expanded=true]{background:var(--surface-raised);color:var(--text-primary)}.bell-count{position:absolute;top:1px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--green);color:var(--bg);border:2px solid var(--bg);font-family:var(--font-mono);font-size:9px;font-weight:700;line-height:12px;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:5px 12px;border-radius:6px;font-family:var(--font-body);font-size:13.5px;font-weight:500;line-height:1.3;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text-primary);cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{background:var(--surface-hover)}.btn.primary{background:var(--green);border-color:var(--green);color:var(--bg);font-weight:600}.btn.primary:hover{background:var(--green-hover);border-color:var(--green-hover)}.btn.danger{color:var(--red);border-color:var(--red-border);background:transparent}.btn.danger:hover{background:var(--red-muted)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn.ghost:hover{background:var(--surface-raised);color:var(--text-primary)}.btn.ok{color:var(--green);border-color:var(--green-border);background:transparent}.btn.ok:hover{background:var(--green-muted)}.btn:disabled,.btn.disabled{opacity:.45;cursor:not-allowed}.btn.sm{min-height:28px;padding:3px 10px;font-size:12.5px;border-radius:5px}.btn.block{width:100%;min-height:40px}.field{display:flex;flex-direction:column;gap:6px}.label{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4}.label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.label-action{font-size:12.5px;font-weight:500;color:var(--blue);text-decoration:none;white-space:nowrap}.label-action:hover{text-decoration:underline}.input{min-height:34px;border-radius:6px;background:var(--surface-raised);border:1px solid var(--border-strong);padding:6px 10px;color:var(--text-primary);font-family:var(--font-body);font-size:14px;outline:none;width:100%}.input:focus{border-color:var(--green-border);box-shadow:0 0 0 3px var(--green-muted)}.input.mono{font-family:var(--font-mono);letter-spacing:.3px}.input::placeholder{color:var(--text-placeholder)}.input.invalid{border-color:var(--red-border);box-shadow:0 0 0 3px var(--red-muted)}.input:disabled{background:var(--surface);border-color:var(--border);color:var(--text-primary);cursor:default}.input.area{resize:vertical;line-height:1.5;min-height:92px}.hint{font-size:12.5px;color:var(--text-secondary);line-height:1.5}.hint b{color:var(--amber);font-weight:600}.hint.danger{color:var(--red)}.field-row{display:flex;gap:8px;align-items:stretch}.field-row .input{flex:1}.opt-list{display:flex;flex-direction:column;gap:6px}.opt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px}.opt{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;padding:9px 12px;cursor:pointer;min-height:46px;text-decoration:none;color:inherit;font:inherit;text-align:left;width:100%}.opt:disabled{opacity:.45;cursor:not-allowed}.opt:hover{background:var(--surface-raised)}.opt.selected{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.opt-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.opt-name{font-size:14px;font-weight:600}.opt.dim .opt-name{color:var(--text-muted)}.opt-desc{font-size:12.5px;color:var(--text-secondary);line-height:1.45;overflow-wrap:anywhere}.opt-check{color:var(--green);opacity:0;flex-shrink:0}.opt.selected .opt-check{opacity:1}.opt-go{color:var(--text-muted);flex-shrink:0;display:flex}.access-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding:9px 0;border-bottom:1px solid var(--hairline)}.access-row:last-child{border-bottom:none}.mono{font-family:var(--font-mono);letter-spacing:.3px}.drag-handle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:none;color:var(--text-muted);cursor:grab}.drag-handle:hover{background:var(--surface-raised);color:var(--text-secondary)}.drag-handle:active{cursor:grabbing}tr.dragging>td{background:var(--surface-raised);opacity:.75}.go{display:inline-flex;align-items:center;gap:5px;padding:2px 6px;margin:-2px -6px;border-radius:6px;color:inherit;text-decoration:none}.go:hover,.go:focus-visible{background:var(--surface-hover)}.go svg{width:12px;height:12px;color:var(--text-muted)}.go:hover svg,.go:focus-visible svg{color:var(--text-secondary)}button.go{background:none;border:0;font:inherit;cursor:pointer;text-align:inherit}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px}.card-title{font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--border)}.card-title .spacer{margin-left:auto}.card.danger{border-color:var(--red-border);background:var(--red-muted)}.card.warn{border-color:var(--amber-border);background:var(--amber-muted)}.card.danger>.card-title{color:var(--red);border-bottom-color:var(--red-border)}.card.warn>.card-title{color:var(--amber);border-bottom-color:var(--amber-border)}.card-note{margin:0;font-family:var(--font-body);font-size:13px;line-height:1.5;color:var(--text-secondary)}.card-note.danger{color:var(--red)}.pill{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-family:var(--font-body);font-size:12px;font-weight:500;line-height:1.5;white-space:nowrap}.pill.green{color:var(--green);background:var(--green-muted)}.pill.amber{color:var(--amber);background:var(--amber-muted)}.pill.red{color:var(--red);background:var(--red-muted)}.pill.blue{color:var(--blue);background:var(--blue-muted)}.pill.dim{color:var(--text-secondary);background:var(--surface-raised)}.pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.pill .dot.live{animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--green-muted);opacity:1}50%{box-shadow:0 0 0 8px transparent;opacity:.6}}.banner{display:flex;align-items:flex-start;gap:10px;border-radius:8px;padding:11px 14px;font-size:13.5px;line-height:1.5;border:1px solid}.banner svg{flex-shrink:0;margin-top:2px}.banner b{font-weight:600}.banner.status{background:var(--blue-muted);border-color:var(--blue-border);color:var(--text-secondary)}.banner.status svg,.banner.status b{color:var(--blue)}.banner.warn{background:var(--amber-muted);border-color:var(--amber-border);color:var(--text-secondary)}.banner.warn svg,.banner.warn b{color:var(--amber)}.banner.danger{background:var(--red-muted);border-color:var(--red-border);color:var(--text-secondary)}.banner.danger svg,.banner.danger b{color:var(--red)}.banner.ok{background:var(--green-muted);border-color:var(--green-border);color:var(--text-secondary)}.banner.ok svg,.banner.ok b{color:var(--green)}.empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 20px;text-align:center}.empty-icon{width:44px;height:44px;border-radius:10px;background:var(--surface-raised);display:flex;align-items:center;justify-content:center;color:var(--text-muted);margin-bottom:4px}.empty-title{font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--text-primary)}.empty-note{font-size:13px;color:var(--text-secondary);max-width:420px;line-height:1.55}.kv{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid var(--hairline)}.kv:last-child{border-bottom:none}.kv-k{font-size:13px;color:var(--text-secondary);flex-shrink:0}.kv-v{font-family:var(--font-mono);font-size:13px;font-weight:500;text-align:right;letter-spacing:.3px}.kv-v.green{color:var(--green)}.kv-v.amber{color:var(--amber)}.kv-v.red{color:var(--red)}.kv-v.blue{color:var(--blue)}.kv-v small{font-size:11px;font-weight:400;color:var(--text-secondary)}.kv-v .was{color:var(--text-muted);font-weight:400}.det{display:flex;flex-direction:column;gap:3px}.det-row{display:grid;grid-template-columns:132px 1fr;gap:10px;align-items:baseline}.det-k{font-size:12px;color:var(--text-muted)}.det-v{font-family:var(--font-mono);font-size:12px;line-height:1.55;color:var(--text-secondary);overflow-wrap:anywhere}.det-v.raw{color:var(--text-muted)}.det-empty{font-size:12px;color:var(--text-muted)}.no-access{display:flex;flex-direction:column;align-items:center;gap:10px;padding:56px 20px;text-align:center}.code-ref{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);background:var(--surface-raised);border:1px solid var(--border);border-radius:5px;padding:2px 7px;letter-spacing:.3px}.confirm{margin-top:10px;padding:12px;border-radius:8px;background:var(--red-muted);border:1px solid var(--red-border)}.confirm-q{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.menu{position:absolute;top:calc(100% + 4px);right:0;z-index:5;min-width:200px;display:flex;flex-direction:column;padding:4px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface);box-shadow:0 8px 24px #00000073}.menu-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:0;border-radius:6px;background:none;color:var(--text-primary);font-family:var(--font-body);font-size:13px;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-raised)}.menu-item svg{flex-shrink:0;color:var(--text-muted)}.menu-item.danger,.menu-item.danger svg{color:var(--red)}.club-code{font-family:var(--font-mono);font-size:24px;font-weight:700;letter-spacing:5px;color:var(--text-primary);line-height:1}.club-code-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface-raised)}.club-code.off{color:var(--text-muted)}.pill-row{display:flex;flex-wrap:wrap;gap:6px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:720px}.card-grid .span-2{grid-column:1 / -1}.sent-note{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.3px;line-height:1.5;color:var(--text-secondary)}.sent-note svg{color:var(--green);flex-shrink:0}.access-row>.sent-note{flex-basis:100%}.session-list{display:flex;flex-direction:column}.session-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--hairline)}.session-row:last-child{border-bottom:none}.session-icon{width:30px;height:30px;border-radius:8px;background:var(--surface-raised);border:1px solid var(--border-strong);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.session-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.session-device{font-size:13.5px;font-weight:500;color:var(--text-primary);line-height:1.4}.session-meta{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.3px;color:var(--text-secondary);line-height:1.5}.session-row.current .session-icon{color:var(--green);background:var(--green-muted);border-color:var(--green-border)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.page-title{font-family:var(--font-body);font-size:22px;font-weight:600;letter-spacing:-.2px;line-height:1.25}.page-sub{font-size:13.5px;color:var(--text-secondary);margin-top:4px;line-height:1.5;max-width:720px}.page-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.tile{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit}.tile:hover{border-color:var(--border-strong)}.tile-key{font-size:12px;color:var(--text-secondary)}.tile-val{font-family:var(--font-mono);font-size:26px;font-weight:700;line-height:1;letter-spacing:-.5px}.tile-val small{font-size:12px;font-weight:400;color:var(--text-secondary);letter-spacing:0}.tile-val.green{color:var(--green)}.tile-val.amber{color:var(--amber)}.tile-val.red{color:var(--red)}.tile-val.blue{color:var(--blue)}.tile-note{font-size:12px;color:var(--text-secondary);line-height:1.45}.tile-val.sm{font-size:20px}.filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search{flex:1;min-width:240px;max-width:360px;height:34px;border-radius:6px;background:var(--surface-raised);border:1px solid var(--border-strong);display:flex;align-items:center;gap:8px;padding:0 10px}.search:focus-within{border-color:var(--green-border);box-shadow:0 0 0 3px var(--green-muted)}.search svg{color:var(--text-muted);flex-shrink:0}.search input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-family:var(--font-body);font-size:13.5px;min-width:0}.search input::placeholder{color:var(--text-placeholder)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:3px 12px;border-radius:999px;background:transparent;border:1px solid var(--border-strong);font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer}.chip:hover{background:var(--surface-raised);color:var(--text-primary)}.chip.on{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg);font-weight:600}.seg{display:inline-flex;height:34px;border:1px solid var(--border-strong);border-radius:6px;overflow:hidden;flex-shrink:0}.seg-btn{display:inline-flex;align-items:center;gap:6px;padding:0 14px;border:0;background:transparent;font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;text-decoration:none}.seg-btn+.seg-btn{border-left:1px solid var(--border-strong)}.seg-btn:hover{background:var(--surface-raised);color:var(--text-primary)}.seg-btn.on{background:var(--text-primary);color:var(--bg);font-weight:600}.seg-btn svg{flex-shrink:0}.table-wrap{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.table-wrap.plain{border:none;border-radius:0;background:none}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-family:var(--font-body);font-size:12.5px;font-weight:600;color:var(--text-primary);padding:10px 12px;border-bottom:1px solid var(--border-strong);white-space:nowrap}thead th.sortable{padding:0}thead th.sortable>button{width:100%;padding:10px 12px;background:none;border:none;cursor:pointer;font:inherit;color:inherit;text-align:inherit;white-space:nowrap}thead th.sortable>button:hover{color:var(--text-secondary)}thead th.num.sortable>button{text-align:right}thead th .arrow{color:var(--text-secondary);margin-left:4px}tbody td{padding:10px 12px;border-bottom:1px solid var(--border);font-size:13.5px;color:var(--text-primary);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-raised)}tbody tr.clickable{cursor:pointer}tbody tr.opened{background:var(--surface-raised);box-shadow:inset 3px 0 0 var(--green)}td.num,td.mono{font-family:var(--font-mono);letter-spacing:.3px}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.dim{color:var(--text-secondary)}.cell-strong{font-weight:600}.cell-sub{display:block;font-family:var(--font-body);font-size:12px;line-height:1.4;letter-spacing:0;color:var(--text-secondary);margin-top:2px}.cell-sub.mono{font-family:var(--font-mono);letter-spacing:.3px}td.cell-sub{display:table-cell;margin-top:0}.cell-sub.fresh{color:var(--green)}.cell-sub.stale{color:var(--amber)}.cell-sub.none{color:var(--text-muted)}.cell-age.old{color:var(--red);font-weight:700}.reg{font-family:var(--font-mono);font-weight:600;letter-spacing:.6px}.cell-link{color:var(--blue);text-decoration:none}.cell-link:hover,.cell-link:focus-visible{text-decoration:underline}.row-actions{display:flex;gap:6px;justify-content:flex-end}.clock-val.amber{color:var(--amber);font-weight:700}.clock-val.red{color:var(--red)}.clock-val.dim{color:var(--text-secondary)}.clock-val.struck,tbody tr.voided td.num,tbody tr.voided td.mono{text-decoration:line-through;color:var(--text-muted)}tbody tr.row-expand:hover{background:none}tbody tr.row-expand>td{padding:0 12px 16px;background:var(--surface-raised)}tbody tr.flagged,tbody tr.flagged:hover{background:var(--amber-muted)}tbody tr.muted td{color:var(--text-muted)}tbody tr.muted .reg,tbody tr.muted .cell-strong{color:var(--text-secondary)}.cell-sub.warn{color:var(--amber)}.cell-sub.ok{color:var(--green)}.cell-sub .dim,.cell-sub.dim{color:var(--text-placeholder)}tfoot td{padding:10px 12px;font-size:13.5px;font-weight:600;color:var(--text-primary);border-top:1px solid var(--border-strong);background:var(--surface)}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:60;border:none;padding:0;cursor:pointer}.drawer{position:fixed;top:0;right:0;bottom:0;width:520px;background:var(--surface);border-left:1px solid var(--border);z-index:61;display:flex;flex-direction:column;box-shadow:-8px 0 32px #00000073}.drawer.wide{width:660px}.drawer-head{flex-shrink:0;padding:14px 20px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.drawer-title{font-family:var(--font-body);font-size:18px;font-weight:600;line-height:1.3}.drawer-sub{font-size:12.5px;color:var(--text-secondary);margin-top:2px;line-height:1.5}.drawer-body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.drawer-foot{flex-shrink:0;padding:12px 20px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end}.drawer-note{margin-right:auto;align-self:center;font-size:12px;color:var(--text-muted)}.drawer-head-actions{display:flex;gap:4px;flex-shrink:0}.x-btn{width:30px;height:30px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.x-btn:hover{background:var(--surface-raised);color:var(--text-primary)}.steps{flex-shrink:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;padding:12px 20px 0}.step{display:flex;flex-direction:column;gap:5px;font-size:11.5px;color:var(--text-muted)}.step:before{content:"";height:3px;border-radius:2px;background:var(--border-strong)}.step.done:before,.step.on:before{background:var(--green)}.step.done{color:var(--text-secondary)}.step.on{color:var(--text-primary);font-weight:600}.skeleton{background:var(--surface-raised);border-radius:4px;animation:skeleton-pulse 1.25s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:.55}50%{opacity:.95}}.skeleton.cell{height:12px}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}.login{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px 72px;overflow-y:auto;background-image:radial-gradient(55% 42% at 32% 112%,var(--green-muted),transparent 72%),radial-gradient(40% 30% at 30% 106%,var(--green-muted),transparent 70%),radial-gradient(50% 40% at 72% 110%,var(--blue-muted),transparent 72%),radial-gradient(35% 28% at 70% 104%,var(--blue-muted),transparent 70%)}.login-column{width:100%;max-width:400px;display:flex;flex-direction:column;gap:24px}.login-head{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.login-badge{width:52px;height:52px;border-radius:14px;background:var(--green-muted);color:var(--green);display:inline-flex;align-items:center;justify-content:center}.login-heading{margin:0;font-family:var(--font-body);font-size:22px;font-weight:600;line-height:1.3;color:var(--text-primary)}.login-lead{margin:-8px 0 0;font-size:14px;line-height:1.5;color:var(--text-secondary)}.login-form{display:flex;flex-direction:column;gap:18px}.login-form .label{font-size:14px}.login-form .field{gap:8px}.login-form .input{min-height:40px;border-radius:8px;padding:9px 12px;font-size:14px}.login-column .btn{min-height:40px;border-radius:8px;font-size:14.5px}.login-form .btn{margin-top:6px}.login-divider{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--text-secondary)}.login-divider:before,.login-divider:after{content:"";flex:1;border-top:1px solid var(--border)}.login-google{display:flex;justify-content:center;min-height:40px}.login-google.pending{min-height:0}.login-google-skeleton{height:40px;border-radius:8px;background:var(--surface-raised);border:1px solid var(--border)}.login-status{margin:-8px 0 0;text-align:center;font-size:13px;color:var(--text-muted)}.login-foot{margin:0;text-align:center;font-size:14px;line-height:1.5;color:var(--text-secondary)}.login-foot a{color:var(--blue);text-decoration:none}.login-foot a:hover{text-decoration:underline}.input-pass{position:relative;display:flex}.input-pass .input{padding-right:42px}.eye-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.eye-btn:hover{background:var(--surface-raised);color:var(--text-primary)}.eye-btn[aria-pressed=true]{color:var(--text-primary)}.cell-pair{font-family:var(--font-mono);font-size:13px;color:var(--text-primary);white-space:nowrap}.cell-arrow{color:var(--text-muted);padding:0 5px}.cell-go{color:var(--text-muted);font-size:16px}tbody tr.voided td{color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--red-border)}.list-foot{font-size:13px;color:var(--text-secondary);padding:4px 2px}.daterange{display:inline-flex;align-items:center;height:34px;border-radius:6px;background:var(--surface-raised);border:1px solid var(--border-strong);padding:0 8px}.daterange:focus-within{border-color:var(--green-border);box-shadow:0 0 0 3px var(--green-muted)}.daterange input{color-scheme:dark;background:none;border:none;outline:none;color:var(--text-primary);font-family:var(--font-mono);font-size:13px}.daterange-sep{color:var(--text-muted);font-family:var(--font-mono)}tr.day-row th{text-align:left;padding:9px 12px 7px;background:var(--surface-raised);font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border)}tbody.day+tbody.day tr.day-row th{border-top:1px solid var(--border-strong)}tr.day-row:hover{background:none}.day-row-in{display:flex;align-items:baseline;gap:14px}.day-dow{font-weight:400;color:var(--text-secondary)}.day-sums{margin-left:auto;display:flex;gap:16px;font-family:var(--font-mono);font-size:12px;font-weight:400;color:var(--text-secondary);letter-spacing:.3px}.day-sums b{color:var(--text-primary);font-weight:600}tbody tr.as-dual .pill{vertical-align:1px}tr.fold-row>td{padding:0;border-top:1px solid var(--border-strong)}tr.fold-row:hover{background:none}.fold-btn{width:100%;display:flex;align-items:center;gap:8px;padding:9px 12px;border:0;background:none;color:var(--text-secondary);font-family:var(--font-body);font-size:12.5px;text-align:left;cursor:pointer}.fold-btn:hover{color:var(--text-primary);background:var(--surface-raised)}.fold-btn svg{flex:none;transition:transform .12s ease}.fold-btn[aria-expanded=true] svg{transform:rotate(180deg)}tbody.day .cell-strong,tbody.day .reg{white-space:nowrap}td.pen{width:36px;padding-right:8px;text-align:right}.pen-btn{width:28px;height:28px;border:0;border-radius:6px;background:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.pen-btn:hover,.pen-btn:focus-visible{background:var(--surface-raised);color:var(--text-primary)}tbody tr.editable{cursor:pointer}tbody tr.editable:hover .pen-btn{color:var(--text-secondary)}.tag-corrected{display:inline-block;margin-left:6px;padding:0 5px;border-radius:4px;background:var(--blue-muted);color:var(--blue);font-family:var(--font-mono);font-size:10px;letter-spacing:.3px;line-height:16px;vertical-align:2px;text-decoration:none}a.tag-corrected:hover{text-decoration:underline}tr.axis-add>td{padding:0;border-top:1px dashed var(--border-strong)}tr.axis-add:hover{background:none}.axis-add-btn{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;border:0;background:none;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;text-align:left;text-decoration:none}.axis-add-btn:hover{background:var(--surface-raised);color:var(--text-primary)}.type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.type-opt{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 10px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer}.type-opt svg{color:var(--text-muted)}.type-opt:hover{background:var(--surface-raised);color:var(--text-primary)}.type-opt.selected{border-color:var(--green);box-shadow:0 0 0 1px var(--green);color:var(--text-primary)}.type-opt.selected svg{color:var(--green)}.hist{display:flex;flex-direction:column}.hist-item{display:grid;grid-template-columns:18px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--hairline)}.hist-item:last-child{border-bottom:none}.hist-rail{position:relative;display:flex;justify-content:center}.hist-rail:before{content:"";position:absolute;top:14px;bottom:-9px;width:1px;background:var(--border)}.hist-item:last-child .hist-rail:before{display:none}.hist-dot{position:relative;z-index:1;width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--blue);flex-shrink:0}.hist-dot.origin{background:var(--surface);border:1.5px solid var(--text-muted)}.hist-dot.void{background:var(--red)}.hist-body{display:flex;flex-direction:column;gap:2px;min-width:0}.hist-when{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.3px;color:var(--text-secondary)}.hist-change{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:13.5px;color:var(--text-primary)}.hist-from{color:var(--text-muted);text-decoration:line-through}.hist-arrow{color:var(--text-muted)}.hist-field{font-family:var(--font-body);font-size:12px;color:var(--text-secondary)}.hist-verdict{font-size:13px;color:var(--text-primary)}.hist-verdict.void{color:var(--red)}.hist-who{font-size:12.5px;color:var(--text-secondary)}.hist-reason{font-size:13px;font-style:italic;color:var(--text-primary)}.hist-reason.none{font-style:normal;color:var(--text-muted)}.cal{display:flex;flex-direction:column;gap:2px}.cal-head{display:grid;grid-template-columns:var(--cal-reg-col) 1fr;gap:10px;position:sticky;top:0;z-index:2;background:var(--surface);padding-bottom:6px}.cal-days{display:grid;grid-template-columns:repeat(var(--cal-days),1fr);gap:2px}.cal-day{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 2px;border-radius:6px}.cal-day-dow{font-size:10px;color:var(--text-muted)}.cal-day-num{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--text-secondary)}.cal-day.today{background:var(--text-primary)}.cal-day.today .cal-day-dow,.cal-day.today .cal-day-num{color:var(--bg)}.cal-day.weekend .cal-day-dow{color:var(--text-secondary)}.cal-row{display:grid;grid-template-columns:var(--cal-reg-col) 1fr;gap:10px;align-items:center;min-height:42px}.cal-reg{display:flex;flex-direction:column;gap:1px;min-width:0}.cal-reg-mark{font-family:var(--font-mono);font-size:12px;color:var(--text-primary)}.cal-reg-type{font-size:10px;color:var(--text-muted)}.cal-cells{display:grid;grid-template-columns:repeat(var(--cal-days),1fr);gap:2px}.cal-cell{position:relative;min-height:34px;border-radius:6px;background:var(--surface-raised);display:flex;flex-direction:column;gap:2px;padding:3px;overflow:hidden}.cal-cell.off{background:transparent;border:1px dashed var(--border)}.cal-item{min-height:13px;border-radius:4px;padding:0 4px;display:flex;align-items:center;font-family:var(--font-mono);font-size:9px;line-height:1;color:var(--text-secondary);background:var(--surface-hover);border:1px solid var(--border-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none;cursor:pointer}.cal-item:hover{border-color:var(--text-primary);color:var(--text-primary)}.cal-item.block{background:repeating-linear-gradient(135deg,var(--amber-muted) 0 5px,transparent 5px 10px);border-color:var(--amber-border);color:var(--amber)}.cal-item.pending{border-style:dashed;border-color:var(--text-muted)}.cal-legend{display:flex;gap:14px;flex-wrap:wrap;padding-top:8px;margin-top:4px;border-top:1px solid var(--border);font-size:11px;color:var(--text-muted)}.cal-legend-item{display:inline-flex;align-items:center;gap:6px}.cal-swatch{width:14px;height:9px;border-radius:3px;background:var(--surface-hover);border:1px solid var(--border-strong)}.cal-swatch.pending{border-style:dashed;border-color:var(--text-muted)}.cal-swatch.block{background:repeating-linear-gradient(135deg,var(--amber-muted) 0 4px,transparent 4px 8px);border-color:var(--amber-border)}.cal-add{flex:1;min-height:12px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;color:transparent;text-decoration:none}button.cal-add{border:0;padding:0;background:transparent;font-family:inherit;cursor:pointer}.cal-add:hover,.cal-add:focus-visible{background:var(--surface-hover);color:var(--text-secondary)}.cal-cell.off:has(.cal-add:hover),.cal-cell.off:has(.cal-add:focus-visible){border-color:var(--border-strong)}.cal-item.mine{background:var(--green-muted);border-color:var(--green-border);color:var(--text-primary)}.cal-swatch.mine{background:var(--green-muted);border-color:var(--green-border)}.cal-item.order{background:var(--blue-muted);border-style:dashed;border-color:var(--blue);color:var(--blue)}.cal-item.order:hover{color:var(--text-primary)}.cal-swatch.order{background:var(--blue-muted);border-style:dashed;border-color:var(--blue)}.menu.cell-menu{left:0;right:auto;min-width:180px}.cal-cell:has(>.cell-menu){overflow:visible;z-index:6}.slots{display:flex;flex-wrap:wrap;gap:6px}.slot{display:flex;flex-direction:column;gap:2px;min-width:132px;padding:7px 10px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface);color:inherit;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.slot:hover{background:var(--surface-raised)}.slot.on{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.slot-h{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--text-primary)}.slot-why{font-size:11.5px;line-height:1.35;color:var(--text-secondary)}.daytrack{display:flex;flex-direction:column;gap:4px}.daytrack-bar{position:relative;height:14px;border-radius:4px;background:var(--surface-raised);overflow:hidden}.daytrack-busy{position:absolute;top:0;bottom:0;border-radius:3px;background:var(--surface-hover);border:1px solid var(--border-strong)}.daytrack-busy.pending{border-style:dashed;border-color:var(--text-muted)}.daytrack-busy.block{background:repeating-linear-gradient(135deg,var(--amber-muted) 0 5px,transparent 5px 10px);border-color:var(--amber-border)}.daytrack-busy.mine{background:var(--green-muted);border-color:var(--green)}.daytrack-busy.order{background:var(--blue-muted);border-style:dashed;border-color:var(--blue)}.daytrack-scale{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.daytrack-free{font-size:12px;color:var(--text-secondary)}.map-canvas{position:relative;background:var(--bg);border-radius:8px;overflow:hidden;border:1px solid var(--border)}.map-canvas svg{display:block;width:100%;height:100%}.map-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.map-grid line{stroke:var(--border);stroke-width:1}.map-runway,.map-airfield-dot{fill:var(--border-strong)}.map-scale{position:absolute;left:12px;bottom:9px;display:flex;flex-direction:column;gap:3px}.map-scale-bar{height:5px;border:1px solid var(--text-secondary);border-top:none}.map-scale-label{font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);letter-spacing:.5px}.map-attrib{position:absolute;right:8px;bottom:7px;font-family:var(--font-mono);font-size:10px;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);padding:2px 7px;border-radius:5px;letter-spacing:.3px}.map-legend{position:absolute;left:12px;top:12px;display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.legend-row{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text-secondary)}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-dot.line{width:14px;height:2.5px;border-radius:2px}.legend-dash{width:14px;height:0;border-top:2px dashed var(--text-muted);flex-shrink:0}.profile-chart{position:relative;padding:14px 16px 6px}.profile-chart svg{display:block;width:100%;height:auto;overflow:visible}.axis-label{font-family:var(--font-mono);font-size:9px;fill:var(--text-muted);letter-spacing:.5px}.grid-line{stroke:var(--border);stroke-width:1}.grid-line.dashed{stroke-dasharray:2 4}.track-facts{display:flex;flex-wrap:wrap;gap:28px;padding:12px 2px 2px}.track-fact{display:flex;flex-direction:column;gap:3px}.track-fact-k{font-size:12px;color:var(--text-secondary)}.track-fact-v{font-family:var(--font-mono);font-size:15px;color:var(--text-primary)}.track-fact-v small{font-size:11px;font-weight:400;color:var(--text-secondary)}.profile-foot{padding:6px 16px 12px;font-size:12.5px;color:var(--text-muted)}.bug-text{font-size:14px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;overflow-wrap:break-word}.bug-context .kv-v{overflow-wrap:anywhere;text-align:right}.todo-list{display:flex;flex-direction:column}.todo-row{display:flex;align-items:center;gap:12px;padding:9px 8px;margin:0 -8px;border-radius:6px;color:inherit;text-decoration:none}.todo-row+.todo-row{border-top:1px solid var(--hairline)}a.todo-row:hover,a.todo-row:focus-visible{background:var(--surface-raised)}.todo-icon{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--amber-muted);color:var(--amber)}.todo-icon.red{background:var(--red-muted);color:var(--red)}.todo-icon.blue{background:var(--blue-muted);color:var(--blue)}.todo-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.todo-title{font-size:13.5px;font-weight:500;color:var(--text-primary)}.todo-meta{font-size:12px;color:var(--text-secondary)}.todo-age{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.3px;color:var(--text-secondary);white-space:nowrap}.todo-age.old{color:var(--red);font-weight:600}.todo-go{color:var(--text-muted);flex-shrink:0;font-size:16px}.card-count{font-family:var(--font-mono);font-size:12.5px;font-weight:500;color:var(--text-secondary);letter-spacing:.3px}.card-foot{display:flex;justify-content:flex-end;padding-top:2px}.bars{display:flex;align-items:flex-end;gap:3px;height:120px;padding-top:8px}.bar{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:4px}.bar i{display:block;width:100%;border-radius:3px 3px 0 0;background:var(--green);opacity:.85}.bar.zero i{height:2px;background:var(--border-strong);opacity:1}.bar-label{font-family:var(--font-mono);font-size:9.5px;color:var(--text-muted);text-align:center;height:12px;white-space:nowrap;overflow:hidden}.bars-axis{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--text-muted)}.band{position:relative;height:8px;margin:8px 0 4px;border-radius:999px;background:var(--surface-raised)}.band-fill{position:absolute;top:0;bottom:0;border-radius:999px;background:var(--green-border)}.band-mark{position:absolute;top:-3px;width:2px;height:14px;border-radius:1px;background:var(--amber)}.band-scale{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--text-muted)}.inbox{display:flex;flex-direction:column;gap:8px}.inbox-row,.toast{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:12px 14px 12px 12px;color:inherit;text-decoration:none}.inbox-row{position:relative;overflow:hidden;border-radius:8px;border:1px solid var(--border);background:var(--surface)}.inbox-row:hover{border-color:var(--border-strong);background:var(--surface-raised)}.inbox-row.new{border-color:var(--border-strong)}.inbox-row.new:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--green)}.inbox-icon{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text-muted);flex-shrink:0}.inbox-icon.ok{color:var(--green);border-color:var(--green-border);background:var(--green-muted)}.inbox-icon.warn{color:var(--amber);border-color:var(--amber-border);background:var(--amber-muted)}.inbox-icon.no{color:var(--red);border-color:var(--red-border);background:var(--red-muted)}.inbox-icon.ask{color:var(--blue);border-color:var(--blue-border);background:var(--blue-muted)}.inbox-body{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.inbox-title{font-size:13.5px;font-weight:600;color:var(--text-primary);line-height:1.35}.inbox-row:not(.new) .inbox-title{font-weight:500;color:var(--text-secondary)}.inbox-sub{font-size:12px;color:var(--text-muted)}.inbox-text{font-size:12.5px;color:var(--text-secondary);line-height:1.5}.inbox-text b{color:var(--text-primary);font-weight:600}.inbox-text s{color:var(--text-muted)}.inbox-when{font-size:12px;color:var(--text-muted);white-space:nowrap;padding-top:1px}.toast{position:fixed;left:calc(var(--sidebar-w) + 16px);bottom:16px;z-index:70;width:380px;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface-raised);box-shadow:0 16px 40px #0000008c,0 3px 10px #00000059}.toast:hover{border-color:var(--text-muted)}.order-seats{display:grid;grid-template-columns:auto 1fr;column-gap:8px;row-gap:2px;align-items:baseline;font-size:13px;line-height:1.4}.order-seat-k{font-size:12px;color:var(--text-secondary)}.msg-ind{position:relative;display:inline-flex;vertical-align:middle;margin-right:8px;color:var(--text-muted)}.msg-ind:after{content:"";position:absolute;top:-2px;right:-3px;width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--surface)}.rcp-list{display:flex;flex-direction:column}.rcp{display:flex;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--hairline)}.rcp:last-child{border-bottom:none}.rcp-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rcp-name{font-size:13.5px;font-weight:500;color:var(--text-primary);line-height:1.4}.rcp-code{margin-left:6px;font-family:var(--font-mono);font-size:11px;font-weight:400;letter-spacing:.3px;color:var(--text-muted)}.rcp-status{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.3px;line-height:1.5;color:var(--text-secondary)}.rcp-status.ok{color:var(--green)}.rcp-status.no{color:var(--text-muted)}.rcp-status.unread{color:var(--text-placeholder)}.rcp-status.warn{color:var(--amber)}.rcp-status.blue{color:var(--blue)}.rcp-reason{font-size:12.5px;font-style:italic;line-height:1.45;color:var(--text-secondary)}.rcp-actions{position:relative;display:flex;align-items:center;gap:4px;flex-shrink:0}.rcp-icon{position:relative;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none}.rcp-icon:hover,.rcp-icon:focus-visible,.rcp-icon[aria-expanded=true]{background:var(--surface-raised);color:var(--text-primary)}.rcp-icon .dot{position:absolute;top:4px;right:4px;width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--surface)}.rcp.muted .rcp-name{color:var(--text-secondary)}.rcp.muted .rcp-status{color:var(--text-muted)}.rcp-seat{width:96px;flex-shrink:0;font-size:13px;color:var(--text-secondary)}.kv.you,.rcp.open{margin:0 -16px;padding-left:16px;padding-right:16px;background:linear-gradient(90deg,var(--blue-muted),transparent 70%);box-shadow:inset 3px 0 0 var(--blue)}.order-strip{flex-shrink:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;margin:12px 20px 0;padding:9px 12px;border-radius:8px;border:1px solid var(--blue-border);background:linear-gradient(90deg,var(--blue-muted),transparent 70%);color:inherit;text-decoration:none}.order-strip:hover,.order-strip:focus-visible{border-color:var(--blue)}.order-strip-main{display:flex;flex-direction:column;gap:2px;min-width:0}.order-strip-top{font-family:var(--font-mono);font-size:12.5px;font-weight:600;letter-spacing:.3px;color:var(--text-primary)}.order-strip-sub{font-size:12px;color:var(--text-secondary)}.order-strip-go{font-size:16px;color:var(--text-muted)}.msgs{display:flex;flex-direction:column;gap:6px}.day-sep{display:flex;align-items:center;gap:10px;margin:8px 0 4px;font-size:11.5px;color:var(--text-muted)}.day-sep:before,.day-sep:after{content:"";flex:1;height:1px;background:var(--border)}.msg{display:flex;flex-direction:column;gap:3px;max-width:80%}.msg.in{align-self:flex-start}.msg.out{align-self:flex-end;align-items:flex-end}.msg-who{padding:0 4px;font-size:11.5px;color:var(--text-secondary)}.bubble{padding:8px 12px;font-size:13.5px;line-height:1.5;color:var(--text-primary)}.msg.in .bubble{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px 12px 12px 4px}.msg.out .bubble{background:var(--surface-hover);border:1px solid var(--border-strong);border-radius:12px 12px 4px}.msg-time{padding:0 4px;font-family:var(--font-mono);font-size:11px;letter-spacing:.3px;color:var(--text-muted)}.msg-read{padding:0 4px;font-family:var(--font-mono);font-size:11px;letter-spacing:.3px;color:var(--blue)}.composer{flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding:10px 20px 14px;border-top:1px solid var(--border)}.composer-note{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.composer-note svg{flex-shrink:0}.composer-row{display:flex;align-items:flex-end;gap:8px}.composer-row .input.area{flex:1;min-height:40px;resize:none}.seat-states{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.hint.info b{color:var(--blue)}
