:root,:root[data-theme=dark]{color-scheme:dark;--bg: #060606;--surface-sunken: #0c0c0c;--surface: #111111;--surface-raised: #181818;--surface-hover: #1c1c1c;--border: #222222;--border-strong: #333333;--hairline: #555555;--accent: #d4001d;--accent-hi: #ff0025;--accent-text: #ff0025;--accent-on: #ffffff;--accent-dim: rgba(212, 0, 29, .18);--accent-glow: rgba(212, 0, 29, .22);--accent-wash: rgba(212, 0, 29, .07);--text-primary: #f2f2f2;--text-secondary: #999999;--text-muted: #808080;--focus: #ff2d4a;--shadow-card: 0 1px 2px rgba(0, 0, 0, .5);--shadow-raised: 0 10px 30px rgba(0, 0, 0, .55);--tone-neutral-fg: #a9a9b2;--tone-neutral-bg: rgba(255, 255, 255, .06);--tone-neutral-bd: rgba(255, 255, 255, .14);--tone-blue-fg: #64a8ff;--tone-blue-bg: rgba(100, 168, 255, .13);--tone-blue-bd: rgba(100, 168, 255, .32);--tone-green-fg: #3fcb77;--tone-green-bg: rgba(63, 203, 119, .13);--tone-green-bd: rgba(63, 203, 119, .32);--tone-amber-fg: #f2b230;--tone-amber-bg: rgba(242, 178, 48, .13);--tone-amber-bd: rgba(242, 178, 48, .32);--tone-orange-fg: #ff7a45;--tone-orange-bg: rgba(255, 122, 69, .13);--tone-orange-bd: rgba(255, 122, 69, .34);--claim-mine-wash: rgba(212, 0, 29, .05);--claim-mine-rail: var(--accent);--claim-taken-surface: var(--surface-sunken);--claim-taken-rail: var(--hairline);--claim-taken-dim: .62;--claim-taken-saturation: .25;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-stencil: "Courier New", monospace;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--radius: 6px;--radius-lg: 10px;--transition: .18s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=light]{color-scheme:light;--bg: #f2f2f4;--surface-sunken: #e9e9ec;--surface: #ffffff;--surface-raised: #fafafa;--surface-hover: #f4f4f6;--border: #e3e3e7;--border-strong: #cfcfd6;--hairline: #b8b8c0;--accent: #d4001d;--accent-hi: #a80017;--accent-text: #b8001a;--accent-on: #ffffff;--accent-dim: rgba(212, 0, 29, .16);--accent-glow: rgba(212, 0, 29, .18);--accent-wash: rgba(212, 0, 29, .028);--text-primary: #101014;--text-secondary: #55555e;--text-muted: #6e6e78;--focus: #d4001d;--shadow-card: 0 1px 2px rgba(16, 16, 20, .06);--shadow-raised: 0 10px 30px rgba(16, 16, 20, .12);--tone-neutral-fg: #55555e;--tone-neutral-bg: #f1f1f3;--tone-neutral-bd: #dedee3;--tone-blue-fg: #1d4ed8;--tone-blue-bg: #eaf1ff;--tone-blue-bd: #c5d8ff;--tone-green-fg: #10682f;--tone-green-bg: #e7f7ec;--tone-green-bd: #bfe6cb;--tone-amber-fg: #8a5a00;--tone-amber-bg: #fdf2dc;--tone-amber-bd: #f0dca8;--tone-orange-fg: #a83a12;--tone-orange-bg: #fdeee7;--tone-orange-bd: #f6cdb9;--claim-mine-wash: rgba(212, 0, 29, .03);--claim-mine-rail: var(--accent);--claim-taken-surface: var(--surface-sunken);--claim-taken-rail: var(--hairline);--claim-taken-dim: .66;--claim-taken-saturation: .25}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{color:var(--text-primary);font-weight:700;letter-spacing:-.02em;line-height:1.2}h1{font-size:24px;letter-spacing:-.03em}h2{font-size:16px}h3{font-size:14px}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--accent-dim);color:var(--text-primary)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:0 20px;min-height:56px;background:var(--surface-sunken);border-bottom:1px solid var(--border);box-shadow:inset 0 -2px 0 -1px var(--accent-dim)}.app-header .brand{font-size:15px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary)}.app-header .brand .tagline{margin-left:10px;padding-left:10px;border-left:1px solid var(--border-strong);font-size:12px;font-weight:500;letter-spacing:0;color:var(--text-secondary)}.app-header .user{display:flex;align-items:center;gap:6px;font-size:13px;flex-wrap:wrap}.app-header .user>a{padding:6px 10px;border-radius:var(--radius);color:var(--text-secondary);font-weight:500;transition:color var(--transition),background var(--transition)}.app-header .user>a:hover{color:var(--text-primary);background:var(--surface-raised);text-decoration:none}.app-header .company{font-family:var(--font-mono);font-size:11px;font-style:normal;color:var(--text-muted);padding-right:10px;margin-right:4px;border-right:1px solid var(--border-strong)}.app-header .whoami{color:var(--text-secondary);padding:0 4px}.theme-toggle{width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1;color:var(--text-secondary)}.theme-toggle:hover{color:var(--accent-text);border-color:var(--accent)}.container{max-width:1100px;margin:0 auto;padding:24px 20px 64px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-card)}.row{display:flex;gap:12px;align-items:center}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}.muted{color:var(--text-secondary)}.error{color:var(--accent-text);font-size:13px}.stack>*+*{margin-top:12px}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.center-card{max-width:380px;margin:10vh auto;background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--accent);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-raised)}button{font:inherit;font-weight:500;cursor:pointer;border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text-primary);border-radius:var(--radius);padding:6px 12px;transition:background var(--transition),border-color var(--transition),color var(--transition)}button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--hairline)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on);font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;padding:7px 16px}button.primary:hover:not(:disabled){background:var(--accent-hi);border-color:var(--accent-hi);box-shadow:0 4px 18px var(--accent-glow)}button.danger{background:transparent;border-color:var(--accent);color:var(--accent-text);font-weight:600}button.danger:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-on)}button.danger:disabled{background:transparent;border-color:var(--border-strong);color:var(--text-muted)}input,select,textarea{font:inherit;padding:7px 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-sunken);color:var(--text-primary);width:100%;transition:border-color var(--transition),box-shadow var(--transition)}input:hover,select:hover,textarea:hover{border-color:var(--hairline)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input[type=checkbox]{accent-color:var(--accent);cursor:pointer}label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:5px}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;white-space:nowrap;border:1px solid transparent}.badge.not_started{background:var(--tone-neutral-bg);border-color:var(--tone-neutral-bd);color:var(--tone-neutral-fg)}.badge.in_progress{background:var(--tone-blue-bg);border-color:var(--tone-blue-bd);color:var(--tone-blue-fg)}.badge.completed{background:var(--tone-green-bg);border-color:var(--tone-green-bd);color:var(--tone-green-fg)}.badge.blocked{background:var(--tone-orange-bg);border-color:var(--tone-orange-bd);color:var(--tone-orange-fg)}.badge.not_applicable{background:transparent;border-color:var(--border-strong);color:var(--text-muted)}.badge.eng_active{background:var(--tone-blue-bg);border-color:var(--tone-blue-bd);color:var(--tone-blue-fg)}.badge.info{background:var(--tone-neutral-bg);border-color:var(--tone-neutral-bd);color:var(--tone-neutral-fg)}.badge.low,.badge.medium,.badge.high,.badge.critical{background:transparent;text-transform:capitalize}.badge.low:before,.badge.medium:before,.badge.high:before,.badge.critical:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:0 0 auto}.badge.low{border-color:var(--tone-green-bd);color:var(--tone-green-fg)}.badge.medium{border-color:var(--tone-amber-bd);color:var(--tone-amber-fg)}.badge.high{border-color:var(--tone-orange-bd);color:var(--tone-orange-fg)}.badge.critical{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.badge.critical:before{background:var(--accent-on)}.progress{height:6px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--accent);transition:width var(--transition)}.cov-category{margin-top:24px}.cov-category>h3{margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);font-family:var(--font-stencil);font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--text-secondary)}.cov-item{border:1px solid var(--border);border-left:2px solid transparent;border-radius:var(--radius-lg);padding:14px 16px;background:var(--surface-raised);transition:border-color var(--transition),background var(--transition)}.cov-item:hover{border-color:var(--border-strong)}.cov-item .code{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--text-muted)}.cov-item .title{font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary);margin-top:1px}.board-row+.board-row{margin-top:10px}.cov-item.claim-mine{border-left-color:var(--claim-mine-rail);background:linear-gradient(var(--claim-mine-wash),var(--claim-mine-wash)),var(--surface-raised)}.cov-item.claim-taken{border-left-color:var(--claim-taken-rail);background:var(--claim-taken-surface);opacity:var(--claim-taken-dim);filter:saturate(var(--claim-taken-saturation))}.cov-item.claim-taken:hover{opacity:1;filter:none}.cov-detail{margin-top:14px;border-top:1px solid var(--border);padding-top:14px}.reference-link{font-size:13px;font-weight:500}.unlocked{margin-top:14px;border-top:1px solid var(--border);border-left:2px solid var(--accent);margin-left:-16px;padding:12px 0 0 14px}.unlocked-head{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-family:var(--font-stencil);font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-text)}.unlocked-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.unlocked-entry{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:var(--radius);padding:9px 11px;background:var(--surface);transition:border-color var(--transition),background var(--transition)}.unlocked-entry:hover{border-color:var(--accent-dim);background:var(--surface-hover)}.unlocked-body{flex:1;min-width:0}.unlocked-entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.unlocked-num{flex:0 0 auto;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--accent);color:var(--accent-on);font-family:var(--font-mono);font-size:10px;font-weight:700;line-height:18px;text-align:center}.unlocked-main{flex:1;min-width:0}.unlocked-name{font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.unlocked-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end}.unlocked-goto{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px}.unlocked-goto:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text)}.chain-why{display:flex;align-items:baseline;gap:10px;margin:10px 0 1px}.chain-why .chain-why-label{flex:0 0 auto;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.chain-why .chain-why-text{flex:1;min-width:0;font-size:13px;line-height:1.6;color:var(--text-secondary);text-wrap:pretty}.jump-flash{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-lg)}.notes-input{resize:vertical;min-height:72px;font-family:var(--font-sans);line-height:1.5}.notes-reminder{margin:0 0 8px;padding:8px 10px;font-size:12px;line-height:1.45;color:var(--tone-amber-fg);background:var(--tone-amber-bg);border:1px solid var(--tone-amber-bd);border-radius:var(--radius)}.notes-ack{border:1px solid var(--tone-amber-bd);background:var(--tone-amber-bg);border-radius:var(--radius);padding:12px}.notes-ack .policy-text{white-space:pre-wrap;font-size:13px;line-height:1.5}.notes-policy-view{margin:0 0 8px}.notes-policy-view .policy-text{white-space:pre-wrap;font-size:13px;line-height:1.5;margin-top:8px;border:1px solid var(--border);background:var(--surface-sunken);border-radius:var(--radius);padding:12px;color:var(--text-secondary)}.link-button{border:none;background:none;padding:0;cursor:pointer;color:var(--accent-text);font-size:12px;font-weight:500;text-decoration:underline;width:auto}.link-button:hover{color:var(--accent-hi);background:none}.live-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--text-muted)}.live-dot.on{background:var(--tone-green-fg);box-shadow:0 0 0 3px var(--tone-green-bg)}.banner{background:var(--accent-wash);border:1px solid var(--accent-dim);border-left:2px solid var(--accent);color:var(--text-secondary);padding:10px 12px;border-radius:var(--radius);font-size:13px}.banner strong{color:var(--text-primary)}.danger-zone{border-left:2px solid var(--accent)}.member-row,.user-row{padding:10px 0;border-bottom:1px solid var(--border);align-items:flex-start}.member-row:last-child,.user-row:last-child{border-bottom:none}.search-results{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface-sunken)}.search-result{width:100%;text-align:left;border:none;border-radius:0;border-bottom:1px solid var(--border);background:transparent;padding:9px 11px;cursor:pointer}.search-result:last-child{border-bottom:none}.search-result:hover:not(:disabled){background:var(--surface-hover)}.chip-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-sunken);border:1px solid var(--border-strong);border-radius:999px;padding:4px 6px 4px 12px;font-family:var(--font-mono);font-size:12px;color:var(--text-secondary)}.chip-remove{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:15px;line-height:1;padding:0 4px;width:auto}.chip-remove:hover:not(:disabled){color:var(--accent-text);background:none}.chip-remove:disabled{opacity:.4;cursor:not-allowed}.audit-table{width:100%;border-collapse:collapse;font-size:13px}.audit-table thead th{text-align:left;font-family:var(--font-stencil);font-weight:700;color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.18em;padding:0 12px 10px;border-bottom:1px solid var(--border-strong);white-space:nowrap}.audit-table tbody td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:top;color:var(--text-secondary)}.audit-table tbody tr:last-child td{border-bottom:none}.audit-table tbody tr:hover td{background:var(--surface-raised)}.audit-time{white-space:nowrap;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--text-muted)}.detail-pills{display:flex;flex-wrap:wrap;gap:6px}.detail-pill{display:inline-flex;align-items:baseline;gap:6px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius);padding:2px 8px;font-size:12px}.detail-key{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.detail-val{font-weight:600;color:var(--text-primary);word-break:break-word;font-family:var(--font-mono);font-size:11px}
