@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-sans-latin-ext-400-normal.3q8pug6-wto40.woff2)format("woff2"),url(../media/instrument-sans-latin-ext-400-normal.2zbm4kyn5pwgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-sans-latin-400-normal.3xgfxban9f743.woff2)format("woff2"),url(../media/instrument-sans-latin-400-normal.1hjbn09c7gmn3.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/instrument-sans-latin-ext-500-normal.19t6v29w3e9pk.woff2)format("woff2"),url(../media/instrument-sans-latin-ext-500-normal.0ym2267snhx9x.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/instrument-sans-latin-500-normal.1eggatm68an7u.woff2)format("woff2"),url(../media/instrument-sans-latin-500-normal.013-pomwme-m2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/instrument-sans-latin-ext-600-normal.0vm4co01-fmw6.woff2)format("woff2"),url(../media/instrument-sans-latin-ext-600-normal.1jzotrrwg-zxc.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/instrument-sans-latin-600-normal.3fqsgcs0cl_0g.woff2)format("woff2"),url(../media/instrument-sans-latin-600-normal.2jey8h63iho71.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--accent:#ff5900;--accent-hover:#e65000;--accent-light:#ffeee6;--accent-light-hover:#ffe6d9;--accent-border:#ffccb0;--focus-border:#ff9157;--focus-ring:#ff59001f;--tint-hover:#fff7f2;--tint-selected:#fff5f0;--tint-open:#fff4ed;--tint-rest:#fffaf1;--bg:#f7f7f7;--surface:#fff;--surface-quiet:#fbfbfd;--text:#000;--text-button:#121212;--text-value:#3a3f50;--text-2:#000c;--text-3:#00000080;--muted:#7f8690;--caption:#667085;--border:#0000001a;--border-table:#0003;--border-field:#e4e6ec;--divider:#eceef1;--wait-bg:#fff4e0;--wait-fg:#a15c07;--info-bg:#eef4ff;--info-fg:#3b6fd8;--ok-bg:#ecf8ed;--ok-fg:#4db764;--ok-text:#067647;--danger-bg:#fff1f0;--danger:#e5484d;--danger-hover:#cf3a3f;--danger-text:#d92d20;--danger-border:#f5c2c0;--ended-bg:#f2f2f2;--ended-fg:#7f8690;--shadow-pop:0 12px 28px -6px #10182824, 0 4px 8px -4px #10182814;--shadow-1b:0 1px 1.5px #0000001a, 0 1px 1px #0000000f;--shadow-bar:0 -4px 16px #10182814, 0 1px 3px #0000001a;--font:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent)}h1,h2,h3{margin:0}.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}:focus-visible{outline:2px solid var(--focus-border);outline-offset:2px}.shell{flex-direction:column;min-height:100vh;display:flex}.shell-header{z-index:30;color:#fff;background:linear-gradient(89deg,#ff471f,#ff5f23);align-items:center;gap:12px;height:64px;padding:0 20px;display:flex;position:sticky;top:0}.brand{color:#fff;border-radius:6px;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.brand:focus-visible{outline-color:#fff}.brand-mark{width:32px;height:32px;color:var(--accent);background:#fff;border-radius:8px;flex-shrink:0;place-items:center;font-size:18px;font-weight:600;line-height:1;display:grid}.brand-text{white-space:nowrap;align-items:center;gap:10px;min-width:0;display:flex}.brand-name{font-size:18px;font-weight:600}.brand-module{opacity:.95;border-left:1px solid #ffffff73;padding-left:10px;font-size:14px;font-weight:500}.shell-header .grow{flex:1}.shell-header :focus-visible{outline-color:#fff}.header-icon{color:#fff;width:36px;height:36px}.header-icon:hover{color:#fff;background:#ffffff2e}.icon-btn.menu-toggle{margin-left:-6px;display:none}.shell-user{align-items:center;gap:10px;min-width:0;display:flex}.shell-user .avatar{color:#fff;background:#fff3}.shell-user .who{flex-direction:column;min-width:0;line-height:1.25;display:flex}.shell-user .name{white-space:nowrap;text-overflow:ellipsis;max-width:240px;font-size:14px;font-weight:600;overflow:hidden}.shell-user .role{opacity:.92;white-space:nowrap;text-overflow:ellipsis;max-width:260px;font-size:12px;overflow:hidden}.btn-header{color:#fff;background:#ffffff29;border-color:#ffffff80;margin-left:6px}.btn-header:hover{background:#ffffff42}.avatar{background:var(--accent-light);color:var(--accent);letter-spacing:.2px;border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:inline-grid}.login-shell{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.login-main{flex:1;place-items:center;padding:32px 16px;display:grid}.login-card{flex-direction:column;gap:20px;width:100%;max-width:420px;padding:28px 24px 24px;display:flex}.login-head{flex-direction:column;gap:6px;display:flex}.login-head .page-subtitle{margin:0;line-height:1.45}.login-mark{background:var(--accent-light);width:44px;height:44px;color:var(--accent);border-radius:8px;place-items:center;margin-bottom:6px;display:grid}.login-fields{border:0;flex-direction:column;gap:16px;min-width:0;margin:0;padding:0;display:flex}.login-submit{width:100%;font-weight:600}.login-foot{border-top:1px solid var(--divider);color:var(--caption);flex-direction:column;gap:6px;padding-top:16px;font-size:12px;line-height:1.5;display:flex}.login-foot p{margin:0}.login-foot strong{color:var(--text-2);font-weight:600}.shell-body{flex:1;min-height:0;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:0 0 232px;gap:4px;width:232px;height:calc(100vh - 64px);padding:16px 12px;display:flex;position:sticky;top:64px;overflow-y:auto}.sidebar-head{justify-content:space-between;align-items:center;padding:0 4px 8px 12px;display:none}.sidebar-head .brand-name{color:var(--text);font-size:16px}.nav-item{height:42px;color:var(--text-2);border-radius:6px;align-items:center;gap:10px;padding:0 12px;font-weight:500;text-decoration:none;transition:background-color .12s,color .12s;display:flex;position:relative}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-item.active{background:var(--tint-selected);color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.nav-item:focus-visible{outline-offset:-2px}.nav-item svg{flex-shrink:0}.nav-caption{letter-spacing:.4px;text-transform:uppercase;color:var(--text-3);padding:4px 12px 6px;font-size:10px;font-weight:500}.sidebar-foot{border:1px solid var(--border);background:var(--surface-quiet);border-radius:8px;flex-direction:column;gap:4px;margin-top:auto;padding:12px;display:flex}.sidebar-access{font-size:14px;font-weight:500}.sidebar-scope{color:var(--caption);font-size:12px;line-height:1.4}.nav-backdrop{display:none}.page{flex:1;min-width:0;padding:20px 16px 24px;container-type:inline-size}.page-inner{flex-direction:column;gap:16px;display:flex}@media (min-width:860px) and (max-width:1199.98px){.sidebar{flex-basis:64px;align-items:stretch;width:64px;padding:16px 10px}.sidebar .nav-caption,.sidebar-foot{display:none}.nav-item{justify-content:center;padding:0}.nav-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (max-width:859.98px){.icon-btn.menu-toggle{display:grid}.sidebar{z-index:1450;width:min(280px,86vw);height:auto;box-shadow:var(--shadow-pop);visibility:hidden;transition:transform .22s cubic-bezier(.22,1,.36,1),visibility 0s linear .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{visibility:visible;transition-delay:0s;transform:none}.sidebar-head{display:flex}.nav-backdrop{z-index:1440;background:#0006;animation:.15s fade-in;display:block;position:fixed;inset:0}.brand-module{display:none}}@media (max-width:600px){.shell-header{gap:8px;padding:0 12px}.page{padding:16px 12px 24px}.shell-user .who,.btn-header .label{display:none}.btn-header{padding:8px 10px}}.page-header{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.page-header .titles{flex:1;min-width:220px}.page-title{font-size:20px;font-weight:500}.page-subtitle{color:var(--text-3);margin-top:4px;font-size:14px}.page-actions{flex-wrap:wrap;gap:8px;display:flex}.breadcrumbs{letter-spacing:-.14px;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.breadcrumbs a{color:var(--text-3);text-decoration:none}.breadcrumbs a:hover{color:var(--text)}.breadcrumbs .sep{font-weight:600}.breadcrumbs [aria-current]{color:var(--text)}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 16px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.btn svg{flex-shrink:0}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{color:var(--text-button);background:#fff;border-color:#e6e6e6}.btn-secondary:hover{background:var(--bg)}.btn-outline{border-color:var(--accent);color:var(--accent);background:#fff}.btn-outline:hover{background:var(--accent-light)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover)}.btn-danger-outline{border-color:var(--danger-border);color:var(--danger);background:#fff}.btn-danger-outline:hover{background:var(--danger-bg)}.btn-ghost{border-color:var(--border);color:var(--text);background:#fff;font-size:12px}.btn-ghost:hover{background:var(--bg)}.btn-sm{height:auto;padding:8px 16px;font-size:12px}.btn-row-soft{border-color:var(--accent-border);color:var(--accent);background:#fff}.btn-row-soft:hover{background:#fff1eb}.btn-bar{width:200px;font-weight:600}.btn-link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:600}.btn-link:hover{text-decoration:underline}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn:disabled:hover,.btn[aria-disabled=true]:hover{filter:none}.btn-primary[aria-disabled=true]:hover{background:var(--accent)}.icon-btn{cursor:pointer;width:28px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.icon-btn:hover{color:var(--text);background:#f2f2f2}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.card-header{flex-wrap:wrap;align-items:center;gap:8px;min-height:32px;display:flex}.card-title{font-size:16px;font-weight:500}.card-header .grow{flex:1}.card-section{flex-direction:column;gap:16px;display:flex}.divider{background:var(--border-table);border:0;height:1px;margin:0}.count-badge{text-align:center;background:var(--accent);color:#fff;border-radius:8px;min-width:24px;padding:4px;font-size:12px;font-weight:500}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;min-width:0;padding:16px;display:flex}.stat-top>div,.stat-caption{min-width:0}@container (max-width:859.98px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@container (max-width:419.98px){.stat-card{padding:12px}.stat-well{width:40px;height:40px}.stat-top{gap:10px}}@container (max-width:319.98px){.stats{grid-template-columns:minmax(0,1fr)}}.stat-top{align-items:center;gap:12px;display:flex}.stat-well{border-radius:8px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.stat-well.blue{color:#2563eb;background:#dbeafe}.stat-well.green{color:#15803d;background:#dcfce7}.stat-well.amber{color:#b45309;background:#fef3c7}.stat-well.red{color:#b91c1c;background:#fee2e2}.stat-well.purple{color:#6d28d9;background:#ede9fe}.stat-well.grey{color:#5b616e;background:#f2f2f2}.stat-label{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.stat-value{white-space:nowrap;font-size:24px;font-weight:500}.stat-caption{color:var(--caption);align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field-label{color:var(--text-2);font-size:14px;font-weight:500}.req{color:var(--accent);margin-left:2px}.input{border:1px solid var(--border-field);width:100%;height:40px;color:var(--text-value);background:#fff;border-radius:8px;padding:8px;font-size:12px;transition:border-color .12s,box-shadow .12s}.input::placeholder{color:var(--text-3)}.input:hover{border-color:#0003}.input:focus{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.input[aria-invalid=true]{border-color:var(--danger)}.input[readonly]{background:var(--bg);color:#0009;box-shadow:none}.field-help{color:var(--text-3);font-size:11px}.field-error{color:var(--danger);font-size:11px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 8px;display:grid}.form-grid .span-2{grid-column:span 2}@container (max-width:560px){.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .span-2{grid-column:auto}}.input-wrap{position:relative}.input-wrap .input{padding-right:36px}.input-wrap .suffix-btn{position:absolute;top:6px;right:4px}.callout{border-radius:8px;gap:10px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.callout svg{flex-shrink:0;margin-top:1px}.callout-warn{color:#7a4e00;background:#fffaeb;border:1px solid #f5d48a;box-shadow:inset 3px 0 #e8a317}.callout-info{color:var(--text-2);background:#f9fafb;border:1px solid #eef0f3}.callout-error{background:var(--danger-bg);color:var(--danger-text);border:1px solid var(--danger-border)}.callout-ok{color:var(--ok-text);background:#ecfdf3;border:1px solid #abefc6}.callout strong{font-weight:600}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.search{border:1px solid var(--border-field);width:259px;height:35px;color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:flex}.search:focus-within{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.search input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:12px}.toggle-chip{border:1px solid var(--border-field);height:35px;color:var(--text-value);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:500;display:inline-flex}.toggle-chip:hover{border-color:var(--accent-border);background:var(--tint-hover)}.toggle-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.select{position:relative}.select-trigger{border:1px solid var(--border-field);cursor:pointer;width:150px;height:35px;color:var(--text);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:12px;display:flex}.select-trigger.form{width:100%;height:40px;font-weight:500}.select-trigger .placeholder{color:var(--text-3)}.select-trigger .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-trigger:hover{border-color:#0003}.select-trigger[aria-expanded=true],.select-trigger:focus-visible{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.select-trigger svg{color:var(--muted);flex-shrink:0;transition:transform .15s}.select-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.select-menu{z-index:20;min-width:100%;max-height:280px;box-shadow:var(--shadow-pop);background:#fff;border-radius:10px;margin:0;padding:4px;list-style:none;animation:.14s ease-out pop;position:absolute;top:calc(100% + 4px);left:0;overflow:auto}.select-option{cursor:pointer;white-space:nowrap;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;font-size:12px;display:flex}.select-option+.select-option{margin-top:2px}.select-option.active{background:var(--bg)}.select-option[aria-selected=true]{background:var(--tint-selected);color:var(--accent)}.date-trigger{border:1px solid var(--border-field);cursor:pointer;text-align:left;background:#fff;border-radius:8px;align-items:center;gap:8px;width:100%;height:40px;padding:8px 30px 8px 10px;font-size:12px;display:flex;position:relative}.date-trigger .placeholder{color:var(--text-3)}.date-trigger svg{color:var(--muted);flex-shrink:0}.date-trigger[aria-expanded=true]{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.date-trigger[aria-expanded=true] svg{color:var(--accent)}.date-trigger[aria-invalid=true]{border-color:var(--danger)}.date-clear{position:absolute;top:50%;right:6px;transform:translateY(-50%)}.calendar{z-index:1600;width:252px;box-shadow:var(--shadow-pop);background:#fff;border-radius:10px;padding:12px;animation:.14s ease-out pop;position:fixed}.cal-head{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.cal-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-dow{color:var(--muted);text-align:center;padding:4px 0;font-size:11px;font-weight:500}.cal-day{cursor:pointer;background:0 0;border:0;border-radius:6px;height:30px;font-size:12px;position:relative}.cal-day:hover{background:var(--tint-hover)}.cal-day.outside{color:#0000004d}.cal-day.today{color:var(--accent);font-weight:700}.cal-day.today:after{content:"";background:var(--accent);border-radius:50%;width:3px;height:3px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.cal-day.in-range{background:var(--tint-selected)}.cal-day.range-end{background:#ffe3d4}.cal-day.selected{background:var(--accent);color:#fff;font-weight:700}.cal-day.selected:after{background:#fff}.cal-day.focused{outline:2px solid var(--focus-border);outline-offset:-2px}.cal-foot{border-top:1px solid var(--divider);justify-content:space-between;margin-top:8px;padding-top:8px;display:flex}.cal-foot .btn-link{font-size:12px}.table-wrap{border:1px solid var(--border-table);background:#fff;border-radius:8px;min-height:160px;position:relative;overflow-x:auto}.table-scroll{min-width:0;position:relative}.table-scroll>.table-wrap{scrollbar-width:thin}.table-scroll>.table-wrap:focus-visible{outline-offset:2px}.table-scroll>.loading-veil{border-radius:8px}.table-scroll:before{content:"";z-index:3;pointer-events:none;opacity:0;background:linear-gradient(90deg,#1018281a,#0000);border-radius:8px 0 0 8px;width:24px;transition:opacity .15s;position:absolute;top:1px;bottom:1px;left:1px}.table-scroll[data-more-left]:before{opacity:1}.table .sticky-end{z-index:1;position:sticky;right:0}.table th.sticky-end{background:var(--accent-light)}.table td.sticky-end{background:#fff}.table tbody tr:hover td.sticky-end{background:var(--tint-hover)}.table .sticky-end:before{content:"";pointer-events:none;opacity:0;background:linear-gradient(270deg,#1018281a,#0000);width:16px;transition:opacity .15s;position:absolute;top:0;bottom:0;left:-16px}.table-scroll[data-more-right] .sticky-end:before{opacity:1}.table{border-collapse:collapse;width:100%}.table th{background:var(--accent-light);text-align:center;white-space:nowrap;height:47px;padding:8px;font-size:12px;font-weight:500}.table td{border-top:1px solid var(--border-table);text-align:center;white-space:nowrap;height:62px;padding:8px;font-size:14px;font-weight:500}.table th:first-child,.table td:first-child{padding-left:16px}.table th:last-child,.table td:last-child{padding-right:16px}.table td.left,.table th.left{text-align:left}.table tbody tr.clickable{cursor:pointer}.table tbody tr:hover{background:var(--tint-hover)}.table tr.is-disabled td:not(.keep){color:var(--text-3)}.cell-truncate{text-overflow:ellipsis;vertical-align:middle;max-width:220px;display:inline-block;overflow:hidden}.cell-truncate.sm{max-width:140px}.cell-truncate[tabindex]:focus-visible{outline-offset:1px;border-radius:4px}.stack{flex-direction:column;align-items:center;gap:2px;display:flex}.stack.left{align-items:flex-start}.stack .sub{color:var(--muted);font-size:11px;font-weight:400}.muted{color:var(--muted)}.actions-cell{justify-content:center;align-items:center;gap:8px;display:flex}.table-sub th{letter-spacing:.04em;text-transform:uppercase;color:#5b616e;text-align:left;background:#f8f9fb;height:38px;font-size:11px;font-weight:600}.table-sub td{text-align:left;border-top-color:var(--divider);white-space:normal;height:48px;font-size:13px;font-weight:400}tr.detail-row>td{background:var(--tint-open);text-align:left;white-space:normal;height:auto;padding:12px 16px 16px}tr.open-row{background:var(--tint-open)}.chevron{color:var(--muted);transition:transform .2s}.chevron.open{color:var(--accent);transform:rotate(180deg)}.pill{white-space:nowrap;border-radius:8px;align-items:center;gap:4px;padding:6px 8px;font-size:12px;font-weight:500;display:inline-flex}.pill-ok{background:var(--ok-bg);color:var(--ok-text)}.pill-wait{background:var(--wait-bg);color:var(--wait-fg)}.pill-info{background:var(--info-bg);color:var(--info-fg)}.pill-danger{background:var(--danger-bg);color:var(--danger-text)}.pill-ended{background:var(--ended-bg);color:var(--ended-fg)}.pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pagination .summary{color:var(--text-2);padding:8px;font-size:12px}.pages{align-items:center;gap:4px;display:flex}.page-btn{cursor:pointer;background:0 0;border:0;border-radius:8px;min-width:28px;height:28px;padding:0 6px;font-size:12px}.page-btn:hover{background:#fff}.page-btn[aria-current=page]{box-shadow:var(--shadow-1b);background:#fff;font-weight:600}.page-btn:disabled{opacity:.4;cursor:not-allowed}.empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 16px;display:flex}.empty-icon{background:var(--accent-light);width:56px;height:56px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.empty-title{font-size:16px;font-weight:500}.empty-text{color:#0009;max-width:440px;font-size:13px;line-height:1.5}.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.error-inline{color:var(--danger-text);flex-wrap:wrap;align-items:center;gap:8px;padding:16px;font-size:14px;display:flex}.loading-veil{z-index:2;background:#ffffffb8;place-items:center;animation:.15s .15s both fade-in;display:grid;position:absolute;inset:0}.spinner{border:2px solid var(--accent-light);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}.bone{background:#eceef1;border-radius:4px;display:inline-block;position:relative;overflow:hidden}.bone:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb3,#0000);animation:1.5s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton-region{animation:.2s .1s both fade-in}.menu{z-index:1400;min-width:190px;box-shadow:0 0 2px #00000040, var(--shadow-pop);background:#fff;border-radius:8px;flex-direction:column;gap:2px;padding:8px;animation:.12s ease-out pop;display:flex;position:fixed}.menu-item{cursor:pointer;text-align:left;white-space:nowrap;color:var(--text);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px;font-size:14px;font-weight:500;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--bg);outline:none}.menu-item.danger{color:#ef4444}.menu-item svg{color:var(--muted);flex-shrink:0}.menu-item.danger svg{color:#ef4444}.tooltip{z-index:2000;color:#e9eaec;letter-spacing:.15px;pointer-events:none;background:#33373e;border:1px solid #ffffff0f;border-radius:8px;max-width:300px;padding:8px 12px;font-size:12px;line-height:1.55;animation:.12s fade-in;position:fixed}.backdrop{z-index:1500;background:#00000080;place-items:center;padding:24px 16px;animation:.15s fade-in;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:8px;flex-direction:column;gap:24px;width:min(480px,100vw - 32px);max-height:calc(100vh - 48px);padding:26px 27px 23px;animation:.18s ease-out rise;display:flex;overflow:auto}.modal.sm{width:min(420px,100vw - 32px)}.modal.lg{width:min(880px,100vw - 32px);container-type:inline-size}.modal-title{color:var(--text-button);font-size:18px;font-weight:600}.modal-text{color:#475467;margin:6px 0 0;font-size:14px;line-height:20px}.modal-body{flex-direction:column;gap:16px;display:flex}.modal-footer{gap:12px;display:flex}.modal-footer .btn{flex:1 0 0}.record{align-items:flex-start;gap:8px;display:flex}.record-main{flex-direction:column;flex:719 480px;gap:16px;min-width:0;display:flex}.record-side{flex-direction:column;flex:431 340px;gap:16px;min-width:0;display:flex}@container (max-width:859.98px){.record{flex-direction:column;align-items:stretch}}.action-bar{z-index:20;min-height:72px;box-shadow:var(--shadow-bar);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;padding:16px;display:flex;position:sticky;bottom:5px}.action-bar .info{color:#0009;flex:1;align-items:center;gap:8px;min-width:200px;font-size:14px;display:flex}.action-bar .buttons{flex-wrap:wrap;gap:8px;display:flex}.action-bar .info.ok{color:var(--ok-text)}@container (max-width:559.98px){.action-bar .buttons{width:100%}.action-bar .buttons .btn{flex:1 0 0;width:auto}}.kv{grid-template-columns:140px minmax(0,1fr);gap:10px 12px;font-size:14px;display:grid}.kv dt{color:var(--text-3)}.kv dd{color:var(--text-value);overflow-wrap:anywhere;margin:0}fieldset.record-main{border:0;margin:0;padding:0}.micro{letter-spacing:.4px;text-transform:uppercase;color:#000000b3;font-size:10px;font-weight:500}.card-text{color:#475467;margin:0;font-size:14px;line-height:20px}.card-hint{color:var(--caption);margin-left:auto;font-size:12px}.side-note{color:var(--caption);margin:0;padding:0 4px;font-size:12px;line-height:1.5}.checklist{color:#475467;flex-direction:column;gap:8px;margin:0;padding-left:18px;font-size:14px;line-height:20px;display:flex}.facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.fact{background:var(--surface-quiet);border:1px solid var(--divider);border-radius:8px;flex-direction:column;gap:6px;min-width:0;padding:10px 12px;display:flex}.fact.wide{grid-column:1/-1}.fact dt{color:var(--caption);font-size:12px;font-weight:500}.fact dd{color:var(--text);overflow-wrap:anywhere;flex-direction:column;gap:2px;margin:0;font-size:14px;font-weight:500;display:flex}.fact-sub{color:var(--muted);font-size:12px;font-weight:400}.fact-link{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--accent-border);text-decoration-color:var(--accent-border);text-underline-offset:3px}.fact-link:hover{color:var(--accent);text-decoration-color:currentColor}@container (max-width:559.98px){.facts{grid-template-columns:minmax(0,1fr)}}.summary{flex-wrap:wrap;align-items:center;gap:16px 32px;display:flex}.summary-id{flex:280px;align-items:center;gap:12px;min-width:0;display:flex}.summary-names{flex-direction:column;gap:4px;min-width:0;display:flex}.summary-names .page-title{overflow-wrap:anywhere}.summary-sub{color:var(--caption);overflow-wrap:anywhere;font-size:13px}.summary-items{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.summary-item{flex-direction:column;gap:6px;min-width:72px;display:flex}.summary-item dd{align-items:center;min-height:28px;margin:0;font-size:14px;font-weight:500;display:flex}@container (max-width:859.98px){.summary-items{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}}@container (max-width:559.98px){.summary-items{grid-template-columns:repeat(2,minmax(0,1fr))}}.subject{border:1px solid var(--border);background:var(--surface-quiet);border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.subject-text{min-width:0}.subject-name{overflow-wrap:anywhere;font-size:14px;font-weight:600}.subject-sub{color:var(--caption);overflow-wrap:anywhere;margin-top:2px;font-size:12px}.has-tip{cursor:help;border-bottom:1px dotted #00000059}.cell-name{font-weight:600}.spinner-btn{border-width:2px;border-color:#fff #ffffff73 #ffffff73;width:14px;height:14px}@container (max-width:559.98px){.filter-bar .search{width:100%}.filter-bar>.select{flex:140px}.filter-bar .select-trigger,.page-actions,.page-actions .btn{width:100%}}@media (max-width:520px){.modal-footer{flex-direction:column-reverse}.modal-footer .btn{flex:none;width:100%}.modal{gap:20px;padding:20px 16px 16px}}.range-form{flex-wrap:wrap;align-items:flex-end;gap:12px 8px;display:flex}.range-form .field{width:180px}.range-form .range-hint{color:var(--caption);flex-basis:100%;font-size:12px}@container (max-width:559.98px){.range-form .field{flex:140px;width:auto}.range-form .btn{width:100%}}.segmented{border:1px solid var(--border-field);background:#fff;border-radius:8px;gap:2px;height:35px;padding:3px;display:inline-flex}.segmented button{color:#0009;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:0 12px;font-size:13px;font-weight:500}.segmented button:hover{color:var(--text)}.segmented button[aria-checked=true]{background:var(--tint-selected);color:var(--accent)}.pill-other{color:var(--text-value);box-shadow:inset 0 0 0 1px var(--border-field);background:#fff}.state-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.state-list .count{margin-left:2px;font-weight:600}.num{font-variant-numeric:tabular-nums}.table .sticky-start{z-index:1;text-align:left;background:#fff;position:sticky;left:0}.table th.sticky-start{background:var(--accent-light)}.table tbody tr:hover td.sticky-start{background:var(--tint-hover)}.table .sticky-start:after{content:"";background:var(--border-table);width:1px;position:absolute;top:0;bottom:0;right:-1px}.register tbody th.sticky-start{text-align:left;border-top:1px solid var(--border-table);background:#fff;max-width:220px;height:56px;padding:6px 12px 6px 16px;font-size:14px;font-weight:500}.register-name{color:var(--text);text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:14px;font-weight:600;display:block;overflow:hidden}.register-name:hover{color:var(--accent)}.register td.day{height:56px}.register th.day{min-width:48px;padding:6px 4px;line-height:1.25}.register th.day .dow{color:var(--caption);font-size:10px;font-weight:500;display:block}.register th.day.weekend .dow{color:var(--accent)}.register td.day{min-width:48px;padding:4px}.day-chip{cursor:default;border-radius:6px;place-items:center;min-width:34px;height:26px;padding:0 4px;font-size:11px;font-weight:600;display:inline-grid}.day-chip.present{background:var(--ok-bg);color:var(--ok-text)}.day-chip.absent{background:var(--danger-bg);color:var(--danger-text)}.day-chip.off_day{background:var(--ended-bg);color:var(--ended-fg)}.day-chip.half_day{background:var(--wait-bg);color:var(--wait-fg)}.day-chip.leave{background:var(--info-bg);color:var(--info-fg)}.day-chip.other{color:var(--text-value);box-shadow:inset 0 0 0 1px var(--border-field);background:#fff}.facts.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@container (max-width:559.98px){.facts.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal-scroll{border:1px solid var(--border-table);border-radius:8px;max-height:min(52vh,420px);overflow:auto}.modal-scroll .table th{z-index:1;position:sticky;top:0}.health-strip{flex-wrap:wrap;gap:8px;display:flex}.health{border:1px solid var(--border);box-shadow:inset 4px 0 0 var(--edge,var(--border));background:#fff;border-radius:8px;flex-direction:column;flex:240px;gap:6px;min-width:0;padding:14px 16px 14px 18px;display:flex}.health .micro{letter-spacing:.4px;text-transform:uppercase;color:#000000b3;font-size:10px;font-weight:500}.health .value{flex-wrap:wrap;align-items:center;gap:8px;font-size:16px;font-weight:500;display:flex}.health .sub{color:var(--text-3);font-size:12px}.health.ok{--edge:var(--ok-fg)}.health.warn{--edge:#fa8c16}.health.bad{--edge:var(--danger)}.health.info{--edge:var(--info-fg)}.counts{color:var(--text-2);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}.counts b{color:var(--text);font-weight:600}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{color:var(--accent);background:#fff1eb;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500}.chip.grey{background:var(--ended-bg);color:var(--ended-fg)}.problems{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.two-col{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.two-col>*{flex:340px;min-width:0}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
