:root{--sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--primary:#003499;--primary-dk:#00246b;--primary-lt:#eaf0ff;--accent:#1b56d3;--accent-lt:#eef3ff;--on-primary:#fff;--topbar-sub:#a9bdef;--topbar-link:#cfdcff;--ink:#131a2b;--text:#3a4353;--text-muted:#667085;--muted-2:#8b94a3;--bg:#f4f6fb;--white:#fff;--surface:#fff;--surface-2:#fafbfe;--light-grey:#eef0f5;--border:#e6e9f0;--border-2:#d7dce5;--line-soft:#eef0f5;--zebra:#f4f6fa;--red:#d22d3f;--red-bg:#fdeef0;--red-tx:#a12433;--amber:#b7791f;--amber-bg:#fbf1de;--amber-tx:#8a5a12;--green:#1f8a54;--green-bg:#e7f4ec;--green-tx:#166b42;--sage:#4a5a7a;--soon-bg:#eef0f4;--soon-border:#e4e7ee;--score-good:var(--green);--score-ok:var(--amber);--score-poor:var(--red);--r-sm:7px;--r-md:10px;--r-lg:14px;--shadow:0 1px 2px #141a2a0a, 0 1px 1px #141a2a08;--shadow-lg:0 1px 2px #141a2a0d, 0 6px 18px -12px #141a2a38;--ring:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);--ease:cubic-bezier(.22,.61,.36,1);--header-h:60px;--sidebar-w:232px;--sidebar-w-collapsed:64px}
*{box-sizing:border-box}html,body{font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;min-height:100vh;margin:0;font-size:14px;line-height:1.5;display:flex}:focus-visible{box-shadow:var(--ring);border-radius:var(--r-sm);outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
header.topbar{background:var(--primary);color:#fff;flex-shrink:0;align-items:center;gap:14px;height:60px;padding:0 clamp(16px,3vw,44px);display:flex;box-shadow:0 1px #0000000f}.topbar-logo{object-fit:contain;width:auto;height:32px}.brand-mark{width:34px;height:34px;color:var(--primary);letter-spacing:.3px;background:#fff;border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.topbar-brand{flex-direction:column;gap:0;line-height:1.2;display:flex}.brand-name{letter-spacing:.2px;font-size:15px;font-weight:700}.brand-tagline{color:var(--topbar-sub);font-size:11.5px}.topbar-nav{align-items:center;gap:4px;margin-left:auto;display:flex}.topbar-admin-link{color:var(--topbar-link);border-radius:var(--r-md);transition:background .15s var(--ease), color .15s var(--ease);padding:6px 12px;font-size:13px;text-decoration:none}.topbar-admin-link:hover{color:#fff;background:#ffffff1f}main{flex:1;width:100%;max-width:none;padding:clamp(18px,2vw,30px) clamp(14px,2vw,40px) 48px}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.page-h1{color:var(--ink);letter-spacing:-.02em;margin:6px 0;font-size:28px;font-weight:700}.lead{color:var(--text-muted);margin:0 0 22px;font-size:14px}.back-link{color:var(--text-muted);transition:color .15s var(--ease);align-items:center;gap:6px;margin-bottom:14px;font-size:13px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.hub-intro{margin-bottom:26px}.hub-intro h1{color:var(--ink);letter-spacing:-.01em;margin:0 0 5px;font-size:24px;font-weight:700}.hub-intro p{color:var(--text-muted);margin:0;font-size:14px}.section-heading{color:var(--ink);letter-spacing:-.005em;margin:0 0 12px;font-size:15px;font-weight:700}.card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.panel-head{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);padding:14px 16px 8px;font-size:11px;font-weight:600}.badge{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-block}.badge--soon{background:var(--soon-bg);color:var(--text-muted);border:1px solid var(--border)}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:600;line-height:1.5;display:inline-flex}.pill--red{background:var(--red-bg);color:var(--red-tx)}.pill--amber{background:var(--amber-bg);color:var(--amber-tx)}.pill--green{background:var(--green-bg);color:var(--green-tx)}.pill--navy{background:var(--primary-lt);color:var(--primary)}.pill--gray,.pill--grey{background:var(--light-grey);color:var(--text-muted)}.pilldot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.chip{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:5px;padding:2px 8px;font-size:12px}.tag{color:var(--text-muted);white-space:nowrap;font-size:12px}.btn{border-radius:var(--r-md);cursor:pointer;width:100%;transition:background .15s var(--ease), border-color .15s var(--ease), box-shadow .12s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(.5px)}.btn:focus-visible{box-shadow:var(--ring)}.btn--inline{width:auto}.btn-open,.btn-solid{background:var(--primary);color:#fff}.btn-open:hover,.btn-solid:hover{background:var(--primary-dk)}.btn-ghost{background:var(--surface);color:var(--text);border-color:var(--border-2)}.btn-ghost:hover{background:var(--surface-2);border-color:var(--muted-2)}.btn-text{color:var(--text-muted);background:0 0;border-color:#0000}.btn-text:hover{color:var(--ink);background:var(--surface-2)}.btn-sm{padding:6px 12px;font-size:12.5px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:0 0 26px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow);transition:border-color .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease);padding:18px 20px}.stat-clickable{cursor:pointer}.stat-clickable:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.stat-clickable.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.stat-bar{display:none}.stat-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.stat-dot{border-radius:50%;flex:none;width:9px;height:9px}.stat-num{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:34px;font-weight:700;line-height:1}.stat-foot{color:var(--muted-2);margin-top:7px;font-size:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;display:flex}.search{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:220px;max-width:480px;transition:border-color .15s var(--ease), box-shadow .12s var(--ease);flex:300px;align-items:center;gap:8px;padding:0 12px;display:flex}.toolbar .fchip:first-of-type{margin-left:auto}.search:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.search input{font:inherit;color:var(--text);background:0 0;border:none;outline:none;width:100%;padding:9px 0;font-size:13.5px}.search svg{color:var(--muted-2);flex:none}.fchip{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background .12s var(--ease), color .12s var(--ease), border-color .12s var(--ease);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.fchip:hover{border-color:var(--border-2);color:var(--text)}.fchip.on{background:var(--primary);color:#fff;border-color:var(--primary)}.filters{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.filter-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);margin-right:2px;font-size:11px;font-weight:700}a.fchip{align-items:center;gap:6px;text-decoration:none;display:inline-flex}.fchip-dot{border-radius:50%;flex:none;width:7px;height:7px}.fchip-dot--red{background:var(--red)}.fchip-dot--amber{background:var(--amber)}.fchip-dot--green{background:var(--green)}.fchip-dot--navy{background:var(--primary)}.fchip.on .fchip-dot{box-shadow:0 0 0 2px #ffffffb3}.fchip-count{font-variant-numeric:tabular-nums;opacity:.75;font-size:11px}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2);text-align:left;border-bottom:1px solid var(--border);background:var(--surface-2);padding:11px 12px;font-size:11px;font-weight:600}.data-table td{border-bottom:1px solid var(--line-soft);color:var(--text);vertical-align:middle;padding:12px;font-size:13.5px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .1s var(--ease)}.record-link{white-space:nowrap;color:var(--accent);font-variant-numeric:tabular-nums;letter-spacing:.01em;font-weight:600;text-decoration:none}.record-link:hover{text-decoration:underline}.meter-wrap{align-items:center;gap:9px;min-width:96px;display:flex}.meter{background:var(--light-grey);border-radius:999px;flex:1;height:5px;overflow:hidden}.meter>span{border-radius:999px;height:100%;display:block}.meter-num{color:var(--text);font-variant-numeric:tabular-nums;text-align:right;min-width:22px;font-size:12.5px;font-weight:600}footer.site-footer{background:var(--surface);border-top:1px solid var(--border);color:var(--muted-2);flex-shrink:0;align-items:center;gap:9px;padding:12px clamp(14px,2vw,40px);font-size:12px;display:flex}.footer-sep{opacity:.45}.flash{background:var(--green-bg);color:var(--green-tx);border-radius:var(--r-md);border:1px solid #bfe3cc;margin:0 0 18px;padding:11px 15px;font-size:13px}.flash--error{background:var(--red-bg);color:var(--red-tx);border-color:#f3c6cc}.callout{background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--r-md);color:var(--text);align-items:flex-start;gap:11px;margin-bottom:24px;padding:12px 15px;font-size:12.5px;line-height:1.5;display:flex}.callout svg{color:var(--text-muted);flex:none;margin-top:1px}.callout strong{color:var(--ink)}.callout .lookup-action{margin-top:8px}.callout--dashed{border-style:dashed;border-color:var(--border);background:0 0}.empty{text-align:center;color:var(--text-muted);padding:44px 20px;font-size:13.5px}.empty-icon{color:var(--muted-2);margin-bottom:10px}.empty-title{color:var(--ink);margin:0 0 4px;font-size:15px;font-weight:700}.field{margin-bottom:14px}.field-label{color:var(--ink);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.field-hint{color:var(--muted-2);margin-top:4px;font-size:11.5px;display:block}.field>.input,.field>.select,.field>.textarea,.field>.input-group{width:100%}.input,.select,.textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--border-2);border-radius:var(--r-md);transition:border-color .15s var(--ease), box-shadow .12s var(--ease);padding:8px 11px;font-size:13.5px}.textarea{resize:vertical;line-height:1.55}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.btn-danger{background:var(--surface);color:var(--red-tx);border-color:#f3c6cc}.btn-danger:hover{background:var(--red-bg);border-color:var(--red)}.mono{font-family:var(--mono);font-weight:600}.meta-strip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow);flex-wrap:wrap;margin-bottom:26px;padding:2px 0;display:flex}.meta-item{border-right:1px solid var(--line-soft);min-width:118px;padding:11px 20px}.meta-item:last-child{border-right:none}.meta-label{color:var(--muted-2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:10px;font-weight:700}.meta-val{color:var(--ink);word-break:break-word;font-size:14px;font-weight:600}.workbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px;padding:9px 14px;display:flex}.workbar-left{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.workbar-left .meta{color:var(--muted-2);font-size:12px}.workbar-prog{flex:none;align-items:center;gap:10px;display:flex}.workbar-prog-num{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px;font-weight:700}.tracker-bar{background:var(--line-soft);border-radius:999px;height:8px;overflow:hidden}.tracker-fill{background:var(--green);border-radius:999px;height:100%}.panel-note{background:var(--primary-lt);color:var(--primary-dk);padding:10px 16px;font-size:12px;font-weight:600}.panel-foot{padding:13px 16px}.panel--clip{overflow:hidden}.t-display{color:var(--ink);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1.2}.t-h2{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:19px;font-weight:700;line-height:1.3}.t-h3{color:var(--ink);margin:0;font-size:15px;font-weight:700;line-height:1.35}.t-body{color:var(--text);font-size:14px}.t-small{color:var(--text);font-size:12.5px}.t-muted{color:var(--text-muted)}.t-caption{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);font-size:11px;font-weight:700}.t-num{font-variant-numeric:tabular-nums}a.link,.link{color:var(--accent);font-weight:600;text-decoration:none}a.link:hover,.link:hover{text-decoration:underline}.kbd{font-family:var(--mono);background:var(--surface);border:1px solid var(--border-2);color:var(--ink);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:11px}.cluster{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.page-intro{margin:0 0 20px}.page-heading{color:var(--ink);letter-spacing:-.015em;margin:4px 0;font-size:22px;font-weight:700}.page-intro .lead{margin-bottom:0}.tabs{box-shadow:inset 0 -1px 0 var(--border);gap:2px;margin:0 0 18px;display:flex;overflow:auto hidden}.tab{font:inherit;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:10px 14px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-flex}.tab:hover{color:var(--ink)}.tab.is-active,.tab[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}.tab-count{background:var(--light-grey);color:var(--text-muted);border-radius:999px;padding:0 7px;font-size:11px}.segmented{background:var(--light-grey);border-radius:var(--r-md);gap:2px;padding:3px;display:inline-flex}.segmented button,.segmented a{font:inherit;color:var(--text-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;padding:5px 12px;font-size:12.5px;font-weight:600;text-decoration:none}.segmented .is-active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover,.data-table th[aria-sort]{color:var(--ink)}.data-table th[aria-sort=ascending]:after{content:" ↑"}.data-table th[aria-sort=descending]:after{content:" ↓"}.data-table .row-actions{text-align:right;white-space:nowrap}.data-table tr.is-selected{background:var(--accent-lt)}.data-table--compact th{padding:9px 14px}.data-table--compact td{padding:9px 12px;font-size:13px}.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden}.table-foot{border-top:1px solid var(--line-soft);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;font-size:12.5px;display:flex}.pager{align-items:center;gap:4px;display:inline-flex}.pager a,.pager span{border-radius:var(--r-sm);min-width:32px;height:32px;color:var(--text);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 9px;font-size:13px;text-decoration:none;display:inline-flex}.pager a:hover{background:var(--light-grey)}.pager [aria-current=page]{background:var(--primary);color:#fff;font-weight:600}.pager .is-disabled{color:var(--muted-2);pointer-events:none}.select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:32px}.menu{display:inline-block;position:relative}.menu>summary{list-style:none}.menu>summary::-webkit-details-marker{display:none}.menu-list{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:200px;box-shadow:var(--shadow-lg), 0 12px 28px -14px #141a2a47;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.menu-list--left{left:0;right:auto}.menu-item{width:100%;font:inherit;color:var(--text);border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:9px;padding:8px 10px;font-size:13px;text-decoration:none;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2);color:var(--ink)}.menu-item--danger{color:var(--red-tx)}.menu-item--danger:hover{background:var(--red-bg)}.menu-sep{background:var(--line-soft);height:1px;margin:5px 0}.menu-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);padding:7px 10px 4px;font-size:10.5px;font-weight:700}.check{color:var(--text);cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex:none;margin:0}.toggle{cursor:pointer;align-items:center;gap:9px;font-size:13.5px;display:inline-flex}.toggle input{appearance:none;background:var(--border-2);cursor:pointer;width:34px;height:20px;transition:background .15s var(--ease);border-radius:999px;flex:none;margin:0;position:relative}.toggle input:after{content:"";width:16px;height:16px;transition:transform .15s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.toggle input:checked{background:var(--primary)}.toggle input:checked:after{transform:translate(14px)}.toggle input:focus-visible{box-shadow:var(--ring)}.field-label .req{color:var(--red);margin-left:2px}.field.has-error .input,.field.has-error .select,.field.has-error .textarea{border-color:var(--red)}.field-error{color:var(--red-tx);margin-top:4px;font-size:11.5px;font-weight:600;display:block}.input:disabled,.select:disabled,.textarea:disabled{background:var(--light-grey);color:var(--muted-2);cursor:not-allowed}.input-group{align-items:stretch;display:flex}.input-group .input{border-radius:0;flex:1;min-width:0}.input-group .input:first-child{border-radius:var(--r-md) 0 0 var(--r-md)}.input-group .input:last-child{border-radius:0 var(--r-md) var(--r-md) 0}.input-addon{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border-2);align-items:center;padding:0 11px;font-size:13px;display:flex}.input-addon:first-child{border-radius:var(--r-md) 0 0 var(--r-md);border-right:none}.input-addon:last-child{border-radius:0 var(--r-md) var(--r-md) 0;border-left:none}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px;display:grid}.pw-rules{color:var(--text-muted);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:3px 14px;margin:6px 0 0;padding:0;font-size:11.5px;list-style:none;display:grid}.pw-rules li{align-items:center;gap:6px;display:flex}.pw-rules li[data-rule]:before{content:"";border:1.5px solid var(--border-2);border-radius:50%;flex:none;width:7px;height:7px}.pw-rules li.is-met{color:var(--green-tx)}.pw-rules li.is-met:before{background:var(--green);border-color:var(--green)}.pw-rules .pw-rule-note{color:var(--muted-2);grid-column:1/-1}.form-footer{justify-content:flex-end;gap:8px;padding-top:6px;display:flex}input[type=date].input,input[type=time].input{font-variant-numeric:tabular-nums}.cal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden}.cal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.cal-title{color:var(--ink);font-size:15px;font-weight:700}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-dow{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);text-align:center;background:var(--surface-2);border-bottom:1px solid var(--border);padding:8px 0;font-size:10.5px;font-weight:700}.cal-day{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);flex-direction:column;gap:3px;min-width:0;min-height:84px;padding:6px 7px;font-size:12px;display:flex}.cal-day:nth-child(7n){border-right:none}.cal-day.is-out{background:var(--surface-2)}.cal-date{color:var(--text);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:600;display:inline-flex}.cal-day.is-out .cal-date{color:var(--muted-2)}.cal-day.is-today .cal-date{background:var(--primary);color:#fff}.cal-event{background:var(--primary-lt);color:var(--primary);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600;overflow:hidden}.cal-event--amber{background:var(--amber-bg);color:var(--amber-tx)}.cal-event--green{background:var(--green-bg);color:var(--green-tx)}.cal-event--red{background:var(--red-bg);color:var(--red-tx)}.cal-nav{flex-wrap:wrap;align-items:center;gap:6px;display:flex}a.cal-event{text-decoration:none}a.cal-event:hover{filter:brightness(.96)}.cal-toolbar{border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;padding:10px 16px;display:flex}.cal-legend{color:var(--text-muted);flex-wrap:wrap;gap:14px;font-size:11.5px;display:flex}.cal-legend span{align-items:center;gap:6px;display:inline-flex}.cal-key{background:var(--primary-lt);border:1px solid var(--primary);border-radius:3px;width:10px;height:10px}.cal-key--red{background:var(--red-bg);border-color:var(--red)}.cal-key--amber{background:var(--amber-bg);border-color:var(--amber)}.cal-key--green{background:var(--green-bg);border-color:var(--green)}.cal-more{color:var(--text-muted);padding-left:2px;font-size:11px}@media (max-width:700px){.cal-day{min-height:54px}.cal-event{height:5px;padding:0;font-size:0}}dialog.dialog{border-radius:var(--r-lg);width:min(460px,100vw - 32px);color:var(--text);border:none;padding:0;box-shadow:0 24px 60px -20px #141a2a73}dialog.dialog::backdrop{background:#131a2b73}.dialog-body{padding:22px 24px 8px}.dialog-title{color:var(--ink);margin:0 0 6px;font-size:16px;font-weight:700}.dialog-text{color:var(--text-muted);margin:0;font-size:13.5px}.dialog-actions{justify-content:flex-end;gap:8px;padding:16px 24px 20px;display:flex}.toast-stack{z-index:50;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--ink);color:#fff;border-radius:var(--r-md);min-width:260px;max-width:380px;box-shadow:var(--shadow-lg);align-items:center;gap:10px;padding:11px 14px;font-size:13px;display:flex}.toast .dot{background:var(--green);border-radius:50%;flex:none;width:8px;height:8px}.toast--error .dot{background:var(--red)}.toast--warning .dot{background:var(--amber)}[data-tip]{position:relative}[data-tip]:hover:after,[data-tip]:focus-visible:after{content:attr(data-tip);background:var(--ink);color:#fff;white-space:nowrap;z-index:30;pointer-events:none;border-radius:6px;padding:5px 8px;font-size:11.5px;font-weight:500;line-height:1.4;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.spinner{border:2px solid var(--border-2);border-top-color:var(--primary);vertical-align:middle;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--light-grey) 25%, var(--surface-2) 50%, var(--light-grey) 75%);border-radius:var(--r-sm);background-size:200% 100%;height:12px;animation:1.3s ease-in-out infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.spinner,.skeleton{animation:none}}.kv{grid-template-columns:max-content 1fr;gap:8px 22px;margin:0;font-size:13.5px;display:grid}.kv dt{color:var(--text-muted)}.kv dd{color:var(--ink);margin:0;font-weight:600}.code-block{font-family:var(--mono);color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;margin:0;padding:12px 14px;font-size:12.5px;line-height:1.55;overflow-y:auto}.timeline{margin:0;padding:0;list-style:none}.timeline li{padding:0 0 16px 22px;font-size:13px;position:relative}.timeline li:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;left:4px}.timeline li:after{content:"";background:var(--border);width:1px;position:absolute;top:17px;bottom:0;left:7.5px}.timeline li:last-child:after{display:none}.timeline-meta{color:var(--muted-2);font-size:11.5px}.accordion{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.accordion details+details{border-top:1px solid var(--line-soft)}.accordion summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:10px;padding:13px 18px;font-size:13.5px;font-weight:600;list-style:none;display:flex}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:"";border-right:2px solid var(--muted-2);border-bottom:2px solid var(--muted-2);width:7px;height:7px;transition:transform .15s var(--ease);margin-top:-4px;transform:rotate(45deg)}.accordion details[open] summary:after{margin-top:3px;transform:rotate(-135deg)}.accordion-body{color:var(--text);padding:0 18px 15px;font-size:13px}.stepper{counter-reset:step;margin:0 0 20px;padding:0;list-style:none;display:flex}.stepper li{color:var(--muted-2);counter-increment:step;flex:1;align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.stepper li:before{content:counter(step);background:var(--light-grey);width:24px;height:24px;color:var(--text-muted);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11.5px;display:inline-flex}.stepper li:not(:last-child):after{content:"";background:var(--border-2);flex:1;height:1px;margin:0 8px}.stepper .is-done{color:var(--text)}.stepper .is-done:before{content:"✓";background:var(--green-bg);color:var(--green-tx)}.stepper .is-current{color:var(--ink)}.stepper .is-current:before{background:var(--primary);color:#fff}.avatar{background:var(--primary-lt);width:28px;height:28px;color:var(--primary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.error-page{text-align:center;max-width:440px;margin:8vh auto}.error-code{font-family:var(--mono);color:var(--accent);font-size:13px;font-weight:600}.icon{vertical-align:-3px;flex:none}.icon--lg{width:20px;height:20px}:root{--header-h:60px;--sidebar-w:232px;--sidebar-w-collapsed:64px}.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);grid-template-rows:var(--header-h) 1fr;flex:1;min-height:100vh;display:grid}.app-header{z-index:40;grid-column:1/-1;position:sticky;top:0}.app-main{flex-direction:column;min-width:0;display:flex}.app-main>main{flex:1}html.sb-collapsed .app{grid-template-columns:var(--sidebar-w-collapsed) minmax(0, 1fr)}@media (max-width:1180px){.hdr-brand{width:auto}.hdr-brand .topbar-brand{display:none}}.app-header.topbar{gap:12px;padding:0 16px 0 12px}.hdr-icon-btn{border-radius:var(--r-md);width:36px;height:36px;color:var(--topbar-link);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:inline-flex}.hdr-icon-btn:hover{color:#fff;background:#ffffff1f}.hdr-brand{color:#fff;width:calc(var(--sidebar-w) - 44px);flex:none;align-items:center;gap:11px;min-width:0;text-decoration:none;display:flex}.hdr-brand .topbar-brand{min-width:0;overflow:hidden}.hdr-brand .brand-name{letter-spacing:.1px;font-size:14px}.hdr-brand .brand-name,.hdr-brand .brand-tagline{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hdr-title{border-left:1px solid #ffffff29;flex:auto;align-items:center;gap:6px;min-width:0;padding-left:14px;display:flex}.hdr-crumb{color:var(--topbar-link);white-space:nowrap;font-size:15px;font-weight:500;text-decoration:none}.hdr-crumb:hover{color:#fff;text-decoration:underline}.hdr-sep{color:var(--topbar-sub);flex:none;display:inline-flex}.hdr-h1{color:#fff;letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:16px;font-weight:700;overflow:hidden}.hdr-actions{flex:none;gap:6px;display:flex}.hdr-action{color:#fff;background:#ffffff1a;border-color:#ffffff38}.hdr-action:hover{background:#ffffff2e}.hdr-action--primary{color:var(--primary);background:#fff;border-color:#fff}.hdr-action--primary:hover{background:var(--primary-lt)}@media (max-width:1100px){.hdr-action-label{display:none}}.hdr-search{border-radius:var(--r-md);min-width:180px;color:var(--topbar-link);transition:background .15s var(--ease), border-color .15s var(--ease);background:#ffffff1f;border:1px solid #0000;flex:0 320px;align-items:center;gap:8px;padding:0 11px;display:flex}.hdr-search:focus-within{color:var(--text-muted);box-shadow:var(--ring);background:#fff;border-color:#fff}.hdr-search input{font:inherit;color:#fff;background:0 0;border:none;outline:none;width:100%;min-width:0;padding:8px 0;font-size:13.5px}.hdr-search:focus-within input{color:var(--ink)}.hdr-search input::placeholder{color:var(--topbar-link);opacity:.85}.hdr-search:focus-within input::placeholder{color:var(--muted-2)}.hdr-right{flex:none;align-items:center;gap:6px;display:flex}.ctx-switch>summary{border-radius:var(--r-md);color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff2e;align-items:center;gap:7px;height:36px;padding:0 11px;font-size:13px;font-weight:600;display:inline-flex}.ctx-switch>summary:hover{background:#ffffff2e}.ctx-switch .store-switch-cap{letter-spacing:.06em;text-transform:uppercase;color:var(--topbar-sub);font-size:10.5px;font-weight:700}.ctx-switch form{margin:0}.menu-item.is-current{color:var(--primary);font-weight:600}.menu-item.is-current:after{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px;margin-left:auto}.avatar-menu>summary{cursor:pointer;color:var(--topbar-link);border-radius:999px;align-items:center;gap:6px;padding:3px;display:inline-flex}.avatar-menu>summary:hover{background:#ffffff1f}.avatar-menu .avatar{width:32px;height:32px;color:var(--primary);background:#fff;font-size:12px}.menu-head{border-bottom:1px solid var(--line-soft);margin-bottom:5px;padding:9px 10px 8px}.menu-head-name{color:var(--ink);font-size:13.5px;font-weight:700}.menu-head-meta{color:var(--text-muted);font-size:12px}.sidebar{background:var(--surface);border-right:1px solid var(--border);top:var(--fixed-top);height:calc(100vh - var(--fixed-top) - var(--fixed-bottom));flex-direction:column;padding:14px 10px 10px;display:flex;position:sticky;overflow-y:auto}.side-nav{flex-direction:column;gap:2px;display:flex}.side-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap;padding:14px 10px 6px;font-size:10.5px;font-weight:700;overflow:hidden}.side-link{border-radius:var(--r-md);color:var(--text);white-space:nowrap;transition:background .12s var(--ease), color .12s var(--ease);align-items:center;gap:11px;padding:9px 10px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex;overflow:hidden}.side-link .icon{width:18px;height:18px;color:var(--muted-2)}.side-link:hover{background:var(--surface-2);color:var(--ink)}.side-link:hover .icon{color:var(--text)}.side-link.is-active{background:var(--primary-lt);color:var(--primary);font-weight:600}.side-link.is-active .icon{color:var(--primary)}.side-sub{border-left:1px solid var(--border);flex-direction:column;gap:1px;margin:2px 0 6px 14px;padding-left:10px;display:flex}.side-link--sub{padding:7px 10px;font-size:13px}.side-link--sub .icon{width:16px;height:16px}.side-link.is-open{color:var(--ink);font-weight:600}.side-link.is-open .icon{color:var(--primary)}html.sb-collapsed .side-sub{border-left:none;margin-left:0;padding-left:0}.side-badge{background:var(--red-bg);color:var(--red-tx);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;padding:0 7px;font-size:11px;font-weight:700}.side-foot{border-top:1px solid var(--line-soft);margin-top:auto;padding-top:10px}button.side-link{width:100%;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;font-size:13.5px}.side-collapse .icon{transition:transform .15s var(--ease)}html.sb-collapsed .side-label,html.sb-collapsed .side-text,html.sb-collapsed .side-badge{display:none}html.sb-collapsed .side-link{justify-content:center;padding:10px 0}html.sb-collapsed .side-collapse .icon{transform:rotate(180deg)}.side-only-mobile{display:none}.side-search{min-width:0;max-width:none;margin-bottom:8px}.app-main>footer.site-footer{margin-top:auto}.footer-version{font-family:var(--mono);margin-left:auto;font-size:11px}.sb-scrim{display:none}@media (max-width:900px){.app,html.sb-collapsed .app{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:45;left:0;top:var(--header-h);width:min(280px,86vw);height:auto;transition:transform .2s var(--ease);box-shadow:var(--shadow-lg);position:fixed;bottom:0;transform:translate(-100%)}html.sb-open .sidebar{transform:none}html.sb-open .sb-scrim{inset:var(--header-h) 0 0 0;z-index:44;background:#131a2b59;display:block;position:fixed}html.sb-collapsed .side-label,html.sb-collapsed .side-text,html.sb-collapsed .side-badge{display:initial}html.sb-collapsed .side-link{justify-content:flex-start;padding:9px 10px}.side-collapse{display:none}.side-only-mobile{display:block}.side-search.side-only-mobile{display:flex}.hdr-search,.ctx-switch .store-switch-cap{display:none}.hdr-title{border-left:none;padding-left:4px}.hdr-title .hdr-crumb,.hdr-title .hdr-sep,.hdr-brand{display:none}}@media (min-width:901px){.hdr-menu-btn{display:none}}@media (max-width:480px){.ctx-switch>summary .store-switch-name{text-overflow:ellipsis;max-width:110px;overflow:hidden}}.qa-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-bottom:30px;display:grid}.qa-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);flex-direction:column;gap:12px;padding:18px 20px;display:flex}.qa-head{align-items:center;gap:11px;display:flex}.qa-stats{flex-wrap:wrap;gap:22px;display:flex}.qa-stat b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;line-height:1.1;display:block}.qa-stat span{color:var(--text-muted);font-size:12px}.qa-card .btn{align-self:flex-start;margin-top:auto}.link-list{flex-wrap:wrap;gap:8px;display:flex}:root{--fixed-top:var(--header-h);--fixed-bottom:0px;--sticky-top:calc(var(--fixed-top) + 16px)}html{scroll-padding-top:var(--sticky-top);scroll-padding-bottom:var(--fixed-bottom)}.data-table tbody tr:nth-child(2n){background:var(--zebra)}.data-table tbody tr:hover{background:var(--accent-lt)}.dt{margin-bottom:24px}.dt-toolbar{flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 12px;display:flex}.dt-search{flex:0 360px}.dt-chips{flex-wrap:wrap;gap:6px;display:flex}.dt-chip{color:var(--primary);background:var(--primary-lt);border-radius:999px;align-items:center;gap:5px;padding:4px 9px 4px 11px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.dt-chip:hover{background:var(--accent-lt)}.dt-chip-k{color:var(--text-muted);font-weight:500}.dt-tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dt-tools .col-filter-pop{left:auto;right:0}.dt--long .table-wrap{max-height:calc(100vh - var(--fixed-top) - var(--fixed-bottom) - 150px);min-height:320px;overflow:auto}.dt--long .data-table thead th{z-index:2;box-shadow:inset 0 -1px 0 var(--border);position:sticky;top:0}.dt--long .table-foot{bottom:var(--fixed-bottom);background:var(--surface);z-index:3;position:sticky}.dt-count{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12.5px}.th-inner{align-items:center;gap:4px;display:flex}.num .th-inner{justify-content:flex-end}.th-sort{color:inherit;white-space:nowrap;align-items:center;gap:3px;text-decoration:none;display:inline-flex}.th-sort:hover{color:var(--ink)}.sort-ind{opacity:0;transition:opacity .12s var(--ease);display:inline-flex}.th-sort:hover .sort-ind,th[aria-sort] .sort-ind{opacity:1}th[aria-sort]{color:var(--ink)}.data-table th[aria-sort=ascending]:after,.data-table th[aria-sort=descending]:after{content:none}.col-filter>summary{list-style:none}.col-filter>summary::-webkit-details-marker{display:none}.col-filter-btn{color:var(--muted-2);cursor:pointer;opacity:.55;border-radius:5px;align-items:center;gap:3px;padding:3px 4px;display:inline-flex}.th-inner:hover .col-filter-btn,.col-filter[open] .col-filter-btn,.col-filter-btn.is-on{opacity:1}.col-filter-btn:hover{background:var(--light-grey);color:var(--ink)}.col-filter-btn.is-on{color:var(--primary);background:var(--primary-lt)}.col-filter-n{font-size:10px;font-weight:700}.col-filter-pop{text-transform:none;letter-spacing:0;width:260px;color:var(--text);padding:8px;font-weight:400;left:0;right:auto}.num .col-filter-pop{left:auto;right:0}.col-filter-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;gap:6px;margin-top:6px;padding-top:8px;display:flex}.cbx-native{opacity:0;pointer-events:none;width:1px!important;height:1px!important;position:absolute!important}.cbx{position:relative}.cbx-trigger{text-align:left;white-space:nowrap;text-overflow:ellipsis;width:100%;overflow:hidden}.cbx-pop{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:100%;max-width:360px;box-shadow:var(--shadow-lg), 0 12px 28px -14px #141a2a47;padding:6px;display:none;position:absolute;top:calc(100% + 4px);left:0}.cbx.is-open .cbx-pop,.cbx--inline .cbx-pop{display:block}.cbx--inline .cbx-pop{box-shadow:none;border:none;max-width:none;padding:0;position:static}.cbx-search,.menu-list .cbx-search{width:100%;font:inherit;border:1px solid var(--border-2);border-radius:var(--r-sm);color:var(--ink);background:var(--surface);margin-bottom:6px;padding:7px 9px;font-size:13px}.cbx-search:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.cbx-list{max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.cbx-opt{border-radius:var(--r-sm);color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.cbx-opt:hover,.cbx-opt.is-active{background:var(--surface-2);color:var(--ink)}.cbx-opt[aria-selected=true]{color:var(--primary);font-weight:600}.cbx:not(.cbx--multi) .cbx-opt[aria-selected=true]:after{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px;margin-left:auto}.cbx-box{border:1.5px solid var(--border-2);background:var(--surface);border-radius:4px;flex:none;width:15px;height:15px}.cbx-opt[aria-selected=true] .cbx-box{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 2px var(--surface)}.cbx-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cbx-count{color:var(--muted-2);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11.5px;font-weight:400}.cbx-none{color:var(--muted-2);padding:8px 9px;font-size:12.5px}.cbx-none[hidden],.cbx-opt[hidden],.menu-item[hidden]{display:none}.table-card .data-table th:first-child,.table-card .data-table td:first-child{padding-left:18px}.table-card .data-table th:last-child,.table-card .data-table td:last-child{padding-right:18px}
.ctx-switch-btn{border-radius:var(--r-md);color:#fff;height:36px;font:inherit;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff2e;align-items:center;gap:7px;padding:0 11px;font-size:13px;font-weight:600;display:inline-flex}.ctx-switch-btn:hover{background:#ffffff2e}.avatar-trigger{cursor:pointer;color:var(--topbar-link);background:0 0;border:none;border-radius:999px;align-items:center;padding:3px;display:inline-flex}.avatar-trigger:hover{background:#ffffff1f}.avatar-trigger .avatar{width:32px;height:32px;color:var(--primary);background:#fff;font-size:12px}a.hdr-icon-btn{text-decoration:none}.hdr-icon-btn.is-active{color:#fff;background:#ffffff2e}button.hdr-search{text-align:left;width:auto}.pager button{border-radius:var(--r-sm);min-width:32px;height:32px;font:inherit;color:var(--text);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:none;justify-content:center;align-items:center;padding:0 9px;font-size:13px;display:inline-flex}.pager button:hover:not(:disabled){background:var(--light-grey)}.pager button[aria-current=page]{background:var(--primary);color:#fff;font-weight:600}.pager button:disabled{color:var(--muted-2);cursor:default}.col-filter-btn{font:inherit;background:0 0;border:none}.col-filter.is-open .col-filter-btn{opacity:1}.dt-chip{cursor:pointer;border:none;font-family:inherit}.th-sort{font-family:inherit}.data-table th .th-sort{color:inherit}dialog.dialog:not([open]){display:none}
.asst{flex-direction:column;height:100%;min-height:0;display:flex}.asst-log{flex-direction:column;flex:auto;gap:14px;min-height:0;padding:16px;display:flex;overflow-y:auto}.asst-empty[hidden]{display:none}.asst-empty{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;margin:auto 0;padding:10px;display:flex}.asst-empty p{color:var(--ink);margin:0;font-size:13.5px}.asst-empty svg{color:var(--primary)}.asst-suggest{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:6px;display:flex}.asst-suggest .chip{cursor:pointer;white-space:normal;text-align:left;font:inherit;font-size:12px}.asst-suggest .chip:hover{border-color:var(--primary);color:var(--primary)}.asst-msg{flex-direction:column;gap:6px;max-width:92%;display:flex}.asst-msg--user{align-self:flex-end;align-items:flex-end}.asst-msg--assistant{align-self:flex-start}.asst-bubble{color:var(--ink);border-radius:var(--r-lg);overflow-wrap:anywhere;padding:10px 13px;font-size:13.5px;line-height:1.55}.asst-msg--user .asst-bubble{background:var(--primary);color:#fff;white-space:pre-wrap;border-bottom-right-radius:4px}.asst-msg--assistant .asst-bubble{background:var(--surface-2);border:1px solid var(--border);border-bottom-left-radius:4px}.asst-msg--error .asst-bubble{background:var(--red-bg);border-color:var(--red-bg);color:var(--red-tx)}.asst-bubble p{margin:0 0 8px}.asst-bubble p:last-child{margin-bottom:0}.asst-bubble ul,.asst-bubble ol{margin:0 0 8px;padding-left:20px}.asst-bubble li+li{margin-top:3px}.asst-cite{background:var(--primary-lt);min-width:16px;height:16px;color:var(--primary);vertical-align:1px;border-radius:8px;justify-content:center;align-items:center;margin:0 1px;padding:0 4px;font-size:10.5px;font-weight:700;text-decoration:none;display:inline-flex}a.asst-cite:hover{background:var(--primary);color:#fff}.asst-status{color:var(--text-muted);align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.asst-caret{background:var(--text-muted);vertical-align:-2px;width:7px;height:14px;margin-left:2px;animation:1s steps(2,end) infinite asst-blink;display:inline-block}@keyframes asst-blink{50%{opacity:0}}.asst-sources{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.asst-sources-h{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);font-size:11px;font-weight:700}.asst-src{max-width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:5px;padding:2px 10px 2px 3px;font-size:12px;text-decoration:none;display:inline-flex}.asst-src>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}a.asst-src:hover{border-color:var(--primary);color:var(--primary)}.asst-src-n{background:var(--primary-lt);min-width:18px;height:18px;color:var(--primary);border-radius:9px;justify-content:center;align-items:center;font-size:10.5px;font-weight:700;display:inline-flex}.asst-fb{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.asst-fb-btn{border-radius:var(--r-sm);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.asst-fb-btn:hover{background:var(--surface-2);color:var(--ink)}.asst-fb-btn[aria-pressed=true]{background:var(--primary-lt);color:var(--primary);border-color:var(--primary-lt)}.asst-fb-btn:focus-visible{box-shadow:var(--ring);outline:none}.asst-fb-note{flex:100%;gap:6px;margin-top:4px;display:flex}.asst-fb-note .input{flex:auto;min-width:0;padding:5px 9px;font-size:12.5px}.asst-compose{border-top:1px solid var(--border);background:var(--surface);align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.asst-input{resize:none;flex:auto;min-width:0;max-height:160px}.asst-send{flex:none;justify-content:center;width:42px;height:38px;padding:0}.asst-panel{z-index:38;top:var(--fixed-top);right:0;bottom:var(--fixed-bottom);background:var(--surface);border-left:1px solid var(--border);width:min(420px,100vw);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed}.asst-panel[hidden]{display:none}.asst-panel-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 8px 8px 16px;display:flex}.asst-panel-tools{align-items:center;gap:2px;display:flex}.asst-panel .asst-close{color:var(--text-muted)}.asst-panel .asst-close:hover{background:var(--surface-2);color:var(--ink)}@media (max-width:640px){.asst-panel{border-left:0;width:100vw}}.asst-page-main{height:calc(100vh - var(--sticky-top) - var(--fixed-bottom) - 40px);min-height:460px;padding:0;display:flex;overflow:hidden}.asst-page-main .asst{flex:auto}.asst-history{padding-bottom:8px}.asst-history-list{margin:0;padding:0 6px;list-style:none}.asst-history-list li{border-radius:var(--r-md);align-items:center;display:flex}.asst-history-list li:hover,.asst-history-list li.is-current{background:var(--surface-2)}.asst-history-list a{min-width:0;color:var(--ink);flex-direction:column;flex:auto;gap:2px;padding:8px 10px;text-decoration:none;display:flex}.asst-history-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.asst-history-del{width:28px;height:28px;color:var(--muted-2);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin-right:4px;display:inline-flex}.asst-history-del:hover{color:var(--red-tx);background:var(--red-bg)}.asst-history-empty{margin:0;padding:4px 16px 8px}.panel-note{background:var(--primary-lt);color:var(--primary-dk);padding:10px 16px;font-size:12px;font-weight:600}.panel-foot{padding:13px 16px}.panel--clip{overflow:hidden}.choice-row{border-bottom:1px solid var(--line-soft);cursor:pointer;align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.choice-row:hover{background:var(--surface-2)}.choice-row>input{width:16px;height:16px;accent-color:var(--primary);flex:0 0 16px;margin-top:3px}.choice-row--placeholder{opacity:.7;cursor:default}.choice-row--placeholder:hover{background:0 0}.choice-box-placeholder{border:2px dashed var(--muted-2);border-radius:3px;flex:0 0 16px;width:16px;height:16px;margin-top:3px}.choice-body{flex:1;min-width:0}.choice-title{color:var(--ink);align-items:center;gap:9px;margin-bottom:3px;font-size:13px;font-weight:600;display:flex}.choice-detail{font-size:12.5px}.choice-note{color:var(--text-muted);margin-top:2px;font-size:11.5px}.diff-before{color:var(--red-tx);text-decoration:line-through}.diff-arrow{color:var(--text-muted)}.diff-after{color:var(--green-tx);font-weight:600}
header.topbar.app-header{background-image:var(--header-pattern,none);box-shadow:var(--header-shadow,0 1px 0 #0000000f)}.hdr-h1,.page-h1,.t-display,.t-h2,.dialog-title{font-family:var(--title-font,inherit)}.brand-mark{clip-path:var(--brand-mark-shape,none)}.side-link.is-active{box-shadow:var(--nav-active-shadow,none)}.flair-stamp{animation:var(--flair-stamp,none)}
.sg{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:36px;display:grid}.sg-nav{top:var(--sticky-top);max-height:calc(100vh - var(--sticky-top) - var(--fixed-bottom) - 16px);flex-direction:column;gap:2px;font-size:13px;display:flex;position:sticky;overflow-y:auto}.sg-nav a{color:var(--text-muted);border-radius:var(--r-sm);padding:5px 10px;text-decoration:none}.sg-nav a:hover{background:var(--light-grey);color:var(--ink)}.sg-nav .t-caption{padding:14px 10px 4px}.sg-section{margin:0 0 44px}.sg-section>.t-h2{border-bottom:1px solid var(--border);margin-bottom:18px;padding-bottom:10px}.sg-demo{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);margin:0 0 12px;padding:20px}.sg-demo--bg{background:var(--bg)}.sg-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sg-stack>*+*{margin-top:12px}.sg-note{color:var(--text-muted);margin:0 0 12px;font-size:12.5px}.sg-note code,.sg-code{font-family:var(--mono);background:var(--light-grey);color:var(--ink);border-radius:4px;padding:1px 5px;font-size:12px}.sg-swatches{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.sg-swatch{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.sg-swatch i{background:var(--sw);height:46px;display:block}.sg-swatch span{font-family:var(--mono);color:var(--text);padding:7px 10px;font-size:11px;display:block}.sg-icons{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;display:grid}.sg-icons div{border:1px solid var(--line-soft);border-radius:var(--r-md);color:var(--ink);flex-direction:column;align-items:center;gap:6px;padding:12px 6px;font-size:11px;display:flex}.sg-grid2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.sg-tip{margin-top:30px}.sg>div{min-width:0}@media (max-width:860px){.sg{grid-template-columns:minmax(0,1fr)}.sg-nav{flex-flow:wrap;position:static}.sg-nav .t-caption{display:none}}

@theme inline{--font-sans: var(--sans); --font-mono: var(--mono); --color-ink: var(--ink); --color-text: var(--text); --color-muted-2: var(--muted-2); --color-surface: var(--surface); --color-surface-2: var(--surface-2); --color-line: var(--line-soft); --color-zebra: var(--zebra); --color-link: var(--accent); --color-link-lt: var(--accent-lt); --color-primary-dk: var(--primary-dk); --color-primary-lt: var(--primary-lt); --color-danger: var(--red); --color-danger-bg: var(--red-bg); --color-danger-tx: var(--red-tx); --color-warning: var(--amber); --color-warning-bg: var(--amber-bg); --color-warning-tx: var(--amber-tx); --color-success: var(--green); --color-success-bg: var(--green-bg); --color-success-tx: var(--green-tx);  --color-background: var(--bg); --color-foreground: var(--ink); --color-card: var(--surface); --color-card-foreground: var(--ink); --color-popover: var(--surface); --color-popover-foreground: var(--ink); --color-primary: var(--primary); --color-primary-foreground: var(--on-primary); --color-secondary: var(--light-grey); --color-secondary-foreground: var(--ink); --color-muted: var(--light-grey); --color-muted-foreground: var(--text-muted); --color-accent: var(--surface-2); --color-accent-foreground: var(--ink); --color-destructive: var(--red); --color-border: var(--border); --color-input: var(--border-2); --color-ring: var(--accent); --radius-sm: var(--r-sm); --radius-md: var(--r-md); --radius-lg: var(--r-lg); --shadow-sm: var(--shadow); --shadow-md: var(--shadow-lg);}
:root{--primary:#b2272b;--primary-dk:#861c20;--primary-lt:#fbeceb;--accent:#b2272b;--accent-lt:#fbeceb;--topbar-sub:#f5cfcd;--topbar-link:#ffe6e4}

