@charset "UTF-8";:root{--bg: #0f1115;--surface: #171a21;--surface-high: #1f232c;--surface-hover: #272c37;--outline: #2c313c;--outline-strong: #3a404d;--primary: #e5f282;--on-primary: #0f1115;--text: #f3f4f6;--text-secondary: #a3a9b5;--text-faint: #7d8492;--error: #ff7a7a;--warning: #f2c94c;--success: #6fcf97;--info: #8ab4f8;--fs-small: .8125rem;--fs-body: .9375rem;--fs-title: 1.5rem;--fs-figure: 1.875rem;--radius: 12px;--radius-sm: 8px;--gap: 1rem;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:var(--fs-body);line-height:1.5;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;caret-color:var(--primary)}::selection{background:color-mix(in srgb,var(--primary) 35%,transparent);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--outline-strong) transparent}h1,h2,h3{margin:0;line-height:1.25;text-wrap:balance}p{margin:0}a{color:inherit;text-decoration-color:var(--outline-strong);text-underline-offset:3px}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em;background:var(--surface-high);padding:.1em .35em;border-radius:4px}.muted{color:var(--text-secondary)}.small{font-size:var(--fs-small)}.num,.tabular{font-variant-numeric:tabular-nums}.pre{white-space:pre-line}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.page-head{display:flex;align-items:flex-start;gap:.75rem 1.5rem;flex-wrap:wrap;margin-bottom:1.75rem}.page-head h1{font-size:var(--fs-title);font-weight:700;letter-spacing:-.02em}.page-head p{margin-top:.3rem;color:var(--text-secondary);max-width:70ch}.page-actions{display:flex;align-items:center;gap:.75rem;padding-top:.15rem}.stamp{font-size:var(--fs-small);color:var(--text-faint)}.btn,.btn-primary,.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:36px;border:1px solid var(--outline-strong);background:var(--surface-high);color:var(--text);border-radius:var(--radius-sm);padding:.45rem .95rem;font:inherit;font-size:var(--fs-small);font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .12s ease,border-color .12s ease}.btn:hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn-outline:hover:not(:disabled){background:var(--surface-hover);border-color:var(--text-faint)}.btn:disabled,.btn-primary:disabled,.btn-outline:disabled{opacity:.45;cursor:default}.btn.primary,.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.btn.primary:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 88%,white);border-color:transparent}.btn.danger{background:transparent;border-color:color-mix(in srgb,var(--error) 45%,transparent);color:var(--error)}.btn.danger:hover:not(:disabled){background:color-mix(in srgb,var(--error) 12%,transparent);border-color:var(--error)}.btn.ghost,.btn-outline{background:transparent}.btn.small{min-height:30px;padding:.3rem .7rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:0;background:transparent;color:var(--text-secondary);cursor:pointer}.icon-btn svg{width:20px;height:20px;fill:currentColor}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.input,.select,.field textarea{background:var(--surface-high);color:var(--text);border:1px solid var(--outline);border-radius:var(--radius-sm);padding:.55rem .8rem;font:inherit;min-width:0}.input::placeholder,.select::placeholder,.field textarea::placeholder{color:var(--text-faint)}.input:focus,.select:focus,.field textarea:focus{outline:none;border-color:var(--text-secondary)}.field{display:flex;flex-direction:column;gap:.4rem;margin-top:1rem}.field>span{font-size:var(--fs-small);color:var(--text-secondary);font-weight:500}.field textarea{resize:vertical}.toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.toolbar .input{flex:0 1 420px}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--outline);margin-bottom:1.25rem;overflow-x:auto}.tabs button{background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-secondary);padding:.6rem .9rem;font:inherit;font-weight:600;cursor:pointer;white-space:nowrap}.tabs button:hover{color:var(--text)}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--text)}.chips{display:flex;gap:.4rem;flex-wrap:wrap}.filters{margin-bottom:1rem}.chip{background:transparent;color:var(--text-secondary);border:1px solid var(--outline);border-radius:var(--radius-sm);padding:.3rem .7rem;font:inherit;font-size:var(--fs-small);font-weight:500;cursor:pointer}.chip:hover{color:var(--text);border-color:var(--outline-strong)}.chip.active,.chip[aria-pressed=true]{background:var(--surface-hover);border-color:var(--outline-strong);color:var(--text)}.badge{display:inline-flex;align-items:center;gap:.4rem;border-radius:6px;padding:.1rem .5rem;font-size:var(--fs-small);font-weight:500;background:var(--surface-high);color:var(--text-secondary);white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--text-faint)}.badge.ok:before{background:var(--success)}.badge.warn:before{background:var(--warning)}.badge.bad:before{background:var(--error)}.badge.info:before{background:var(--info)}.badge.plain:before{display:none}.badge.ok,.badge.warn,.badge.bad,.badge.info{color:var(--text)}.card{background:var(--surface);border-radius:var(--radius);padding:1.25rem 1.35rem;min-width:0}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}.card-head h2{font-size:var(--fs-body);font-weight:600}.section-title{font-size:var(--fs-small);font-weight:600;color:var(--text-secondary);margin:0 0 .6rem}.stack{display:flex;flex-direction:column;gap:var(--gap);min-width:0;list-style:none;margin:0;padding:0}.cols-2{display:grid;gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:stretch}.kpis{display:grid;gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.stat{position:relative;display:flex;flex-direction:column;gap:.15rem;background:var(--surface);border-radius:var(--radius);padding:1.05rem 1.25rem 1.1rem;color:var(--text);text-decoration:none;min-width:0}.stat[href]:hover{background:var(--surface-high)}.stat[href]:hover .stat-go{color:var(--text)}.stat-label{font-size:var(--fs-small);color:var(--text-secondary);font-weight:500}.stat-value{font-size:var(--fs-figure);font-weight:700;letter-spacing:-.02em;line-height:1.15;font-variant-numeric:tabular-nums}.stat-hint{font-size:var(--fs-small);color:var(--text-secondary)}.stat-go{position:absolute;top:1rem;right:1rem;width:18px;height:18px;fill:var(--text-faint)}.delta-up{color:var(--success)}.delta-down{color:var(--warning)}.task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.task{display:grid;grid-template-columns:10px 3.5rem 1fr 18px;align-items:center;gap:.75rem;padding:.8rem .75rem;border-radius:var(--radius-sm);color:var(--text);text-decoration:none}.task:hover{background:var(--surface-high)}.task:hover .chevron{fill:var(--text)}.task .dot{width:8px;height:8px;border-radius:50%;background:var(--text-faint)}.task .dot.bad{background:var(--error)}.task .dot.warn{background:var(--warning)}.task .dot.info{background:var(--info)}.task .count{font-size:1.375rem;font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.task .what{min-width:0}.task .label{font-weight:600}.task .detail{font-size:var(--fs-small);color:var(--text-secondary)}.task .chevron{width:18px;height:18px;fill:var(--text-faint)}.all-clear{display:flex;align-items:center;gap:.6rem;padding:.75rem;color:var(--text-secondary);font-size:var(--fs-small)}.all-clear svg{width:18px;height:18px;fill:var(--success);flex:none}.chart-box{width:100%;min-width:0}.chart-box svg{display:block;overflow:visible}.chart-box .grid-line{stroke:var(--outline);stroke-width:1}.chart-box .baseline{stroke:var(--outline-strong);stroke-width:1}.chart-box .tick{fill:var(--text-faint);font-size:12px;font-variant-numeric:tabular-nums}.chart-box .tick.today{fill:var(--text);font-weight:600}.chart-box .bar{fill:var(--primary)}.chart-box .bar-value{fill:var(--text);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.table-wrap{background:var(--surface);border-radius:var(--radius);overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--outline);vertical-align:middle}.table th{font-size:var(--fs-small);font-weight:600;color:var(--text-secondary);white-space:nowrap}.table tbody tr:last-child td{border-bottom:0}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover,.table tbody tr.clickable:focus-visible{background:var(--surface-high)}.table tbody tr.clickable:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.table tbody tr.clickable.selected{background:var(--surface-high)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table .nowrap{white-space:nowrap}.table .cell-wide{max-width:440px}.table .cell-actions{text-align:right;white-space:nowrap}.status-table th{width:34%;font-weight:500;color:var(--text-secondary);font-size:var(--fs-body)}.status-table th,.status-table td{padding:.75rem 0}.person{display:flex;align-items:center;gap:.7rem;min-width:0}.person .who{min-width:0}.person .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person .sub{font-size:var(--fs-small);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none;background:var(--surface-high)}.avatar.big{width:56px;height:56px;font-size:1.15rem}.avatar.initials{display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--fs-small);color:var(--text-secondary)}.pager{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;padding:.7rem 1rem;border-top:1px solid var(--outline);font-size:var(--fs-small)}.empty{padding:2.5rem 1rem;text-align:center;color:var(--text-secondary)}.skeleton{display:block;background:var(--surface-high);border-radius:6px;animation:pulse 1.4s ease-in-out infinite}.skeleton-line{height:.9rem;margin:.35rem 0}.skeleton-block{height:100%;min-height:96px;border-radius:var(--radius);background:var(--surface)}@keyframes pulse{50%{opacity:.55}}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(580px,100vw);z-index:40;background:var(--bg);overflow-y:auto;box-shadow:-24px 0 48px #0006;animation:slide-in .2s cubic-bezier(.16,1,.3,1)}.drawer-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:1rem;padding:1.1rem 1.25rem;background:var(--surface)}.drawer-head .titles{flex:1;min-width:0}.drawer-head h2{font-size:1.15rem;font-weight:700}.drawer-head .chips{margin-top:.4rem}.drawer-body{padding:1.25rem;display:flex;flex-direction:column;gap:1.5rem}.kv{display:grid;grid-template-columns:minmax(8rem,max-content) 1fr;gap:.5rem 1.25rem;margin:0}.kv dt{color:var(--text-secondary)}.kv dd{margin:0;overflow-wrap:anywhere}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.mini-stats div{background:var(--surface);border-radius:var(--radius-sm);padding:.65rem .8rem}.mini-stats strong{display:block;font-size:1.2rem;font-variant-numeric:tabular-nums}.mini-stats span{font-size:var(--fs-small);color:var(--text-secondary)}.actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.actions .push{margin-left:auto}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.list li{background:var(--surface);border-radius:var(--radius-sm);padding:.65rem .85rem}.row-between{display:flex;align-items:center;gap:.75rem}.row-between>:first-child{flex:1;min-width:0}.notice{display:flex;gap:.6rem;align-items:flex-start;border-radius:var(--radius-sm);padding:.75rem .9rem;background:color-mix(in srgb,var(--warning) 9%,var(--surface));color:var(--text)}.notice:before{content:"";flex:none;width:8px;height:8px;margin-top:.45rem;border-radius:50%;background:var(--warning)}.notice.info{background:var(--surface-high)}.notice.info:before{background:var(--info)}.danger-zone .section-title{color:var(--error)}.note{margin-top:.75rem}.meter{display:inline-block;vertical-align:middle;width:min(160px,40%);height:8px;margin-right:.6rem;border-radius:4px;background:var(--surface-high);overflow:hidden}.meter span{display:block;height:100%;background:var(--primary);border-radius:4px}.form-grid{display:grid;gap:.25rem 1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.check{display:flex;align-items:center;gap:.5rem;margin-top:1rem;color:var(--text)}.check input{width:18px;height:18px;accent-color:var(--primary)}.message-text{white-space:pre-line;overflow-wrap:anywhere}.check.no-gap{margin-top:0;align-items:flex-start}.check.no-gap input{margin-top:2px}.block{display:block}.funnel{display:flex;flex-direction:column;gap:.75rem}.funnel .funnel-row{display:grid;grid-template-columns:minmax(130px,200px) 1fr auto;gap:.75rem;align-items:center}.funnel .funnel-bar{height:28px;border-radius:var(--radius-sm);background:var(--surface-high);overflow:hidden}.funnel .funnel-bar span{display:block;height:100%;background:var(--primary);border-radius:var(--radius-sm);min-width:2px}@media(max-width:640px){.funnel .funnel-row{grid-template-columns:1fr auto}.funnel .funnel-row .funnel-bar{grid-column:1/-1;grid-row:2}}.error-cell{max-width:520px}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}details summary{cursor:pointer;color:var(--text-secondary);margin-top:.4rem}.stack-trace{margin:.5rem 0 0;padding:.75rem;max-height:320px;overflow:auto;background:var(--surface-high);border-radius:var(--radius-sm);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;white-space:pre}.card-intro{color:var(--text-secondary);margin:-.4rem 0 1rem}.text-warn{color:var(--warning)}.section-gap{margin-top:1.75rem}.skeleton-tall{min-height:320px}.skeleton-chart{min-height:280px}.backdrop{position:fixed;inset:0;z-index:35;background:#0000008c}app-feedback-host .backdrop{z-index:55}.dialog{position:fixed;z-index:60;top:50%;left:50%;transform:translate(-50%,-50%);width:min(520px,100vw - 2rem);max-height:calc(100vh - 2rem);overflow-y:auto;background:var(--surface);border-radius:var(--radius);padding:1.5rem;box-shadow:0 24px 64px #00000080}.dialog h2{font-size:1.125rem;margin-bottom:.6rem}.dialog .chips{margin-top:.6rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.5rem}.toasts{position:fixed;right:1.25rem;bottom:1.25rem;z-index:70;display:flex;flex-direction:column;gap:.5rem;max-width:min(420px,100vw - 2.5rem)}.toast{display:flex;align-items:center;gap:.7rem;background:var(--surface-high);border-radius:var(--radius-sm);padding:.65rem .5rem .65rem .9rem;box-shadow:0 12px 32px #0006;animation:fade-up .2s cubic-bezier(.16,1,.3,1)}.toast:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--success)}.toast.error:before{background:var(--error)}.toast span{flex:1}.toast .icon-btn{width:28px;height:28px}@keyframes slide-in{0%{transform:translate(32px);opacity:0}}@keyframes fade-up{0%{transform:translateY(8px);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
