:root{--brand-sky: #cfe2f5;--brand-cream: #f1e5cb;--brand-clay: #c8b58b;--brand-orange: #e9642a;--brand-orange-hi: color-mix(in srgb, #e9642a 82%, #fff);--brand-orange-lo: #d2521c;--brand-ink: #2c3a55;--brand-ink-soft: #6b7793;--brand-navy: #24486b;--brand-navy-2: #5e7994;--brand-orange-2: var(--brand-orange-hi);--brand-yellow: #f3e4b0;--brand-cloud: #ebedf5;--brand-horizon: #e1e4ee;--blue: #3e7ebe;--blue-light: #83b4dc;--navy: #24486b;--slate: #5e7994;--cream: #f1e5cb;--sand: #c8b58b;--butter: #f3e4b0;--chart-fill: #cfe2f5;--chart-grid: #a9cbea;--title-ghost: #c3c9dc;--base: #e7eaf3;--panel: var(--base);--card-grad: none;--text: #2c3a55;--text-dim: #6b7793;--text-faint: #9aa3b8;--sky-top: #cfe2f5;--sky-bottom: #f1e5cb;--shadow-hi: #ffffff;--shadow-lo: #c3c6ce;--accent: #e9642a;--accent-hi: var(--brand-orange-hi);--accent-lo: #d2521c;--accent-contrast: #ffffff;--focus-ring: color-mix(in srgb, #e9642a 50%, transparent);--role-positive: #2e9e6b;--role-warning: #e0a11c;--role-critical: #d64545;--role-info: var(--blue);--role-neutral: var(--slate);--shadow-ambient: 0 24px 60px color-mix(in srgb, var(--brand-ink) 24%, transparent);--raise: 7px 7px 16px var(--shadow-lo), -7px -7px 16px var(--shadow-hi);--raise-sm: 4px 4px 9px var(--shadow-lo), -4px -4px 9px var(--shadow-hi);--inset: inset 5px 5px 10px var(--shadow-lo), inset -5px -5px 10px var(--shadow-hi);--press: inset 4px 4px 8px var(--shadow-lo), inset -4px -4px 8px var(--shadow-hi);--clay: var(--raise);--clay-inset: inset 4px 4px 9px var(--shadow-lo), inset -3px -3px 8px var(--shadow-hi);--card-shadow: var(--raise);--badge-shadow: 0 16px 40px color-mix(in srgb, var(--brand-ink) 22%, transparent), 8px 8px 20px color-mix(in srgb, var(--shadow-lo) 75%, transparent), -6px -6px 16px color-mix(in srgb, var(--shadow-hi) 80%, transparent);--halo: radial-gradient( closest-side, rgba(255, 255, 255, .55) 0%, rgba(255, 255, 255, .3) 55%, rgba(255, 255, 255, 0) 100% );--surface-hi: #ebedf5;--radius-sm: 16px;--radius-md: 22px;--radius-lg: 28px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: var(--font-sans);--font-mono: "SF Mono", "Cascadia Code", Consolas, monospace;--fs-xs: 12px;--fs-sm: 14px;--fs-md: 16px;--fs-lg: 20px;--fs-xl: 28px;--fs-title: 23px}@media(min-width:768px){:root{--fs-title: var(--fs-xl)}}[data-theme=dark]{--base: #27384f;--panel: #2c405a;--shadow-hi: #334963;--shadow-lo: #1a2637;--text: #dce6f2;--text-dim: #93a8c0}@media(prefers-contrast:more){:root{--raise: none;--raise-sm: none;--inset: none;--press: none;--clay: none;--clay-inset: none;--card-shadow: none}.soft-card,.pill-btn,.soft-field input,.soft-field select,.soft-field textarea,.stat-tile,.list-rows,.perm-group,.notice,.pwa-toast,.page-header-plate,.perm-check input,.pick-item,.pick-item>input,.app-topbar-tabs,.app-topbar-back{border:1px solid var(--text-faint)}.app-topbar-indicator{border:1px solid var(--brand-ink)}.is-stale{opacity:.8}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.soft-card{min-width:0;max-width:100%;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--raise)}.soft-card--float{box-shadow:var(--clay)}.soft-card--quiet{box-shadow:var(--raise-sm)}.soft-card--inset{background:var(--base);box-shadow:var(--clay-inset)}.pill-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.85rem 1.7rem;border:0;border-radius:var(--radius-pill);font-family:var(--font-display);font-size:var(--fs-md);font-weight:600;letter-spacing:.04em;color:var(--text);background:var(--panel);box-shadow:var(--raise-sm),inset 0 1px 0 var(--shadow-hi);cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,filter .2s ease;-webkit-tap-highlight-color:transparent}.pill-btn:hover{filter:brightness(1.03)}.pill-btn:active{transform:translateY(1px);box-shadow:var(--press)}.pill-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.pill-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.pill-btn-label{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.pill-btn--sm>.pill-btn-label{gap:var(--space-1)}.pill-btn--loading{position:relative;cursor:wait}.pill-btn--loading>.pill-btn-label{visibility:hidden}.pill-btn-spinner{position:absolute;top:50%;left:50%;width:1em;height:1em;margin-top:-.5em;margin-left:-.5em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:pill-btn-spin .75s linear infinite;pointer-events:none;box-sizing:border-box}@keyframes pill-btn-spin{to{transform:rotate(360deg)}}@keyframes pill-btn-pulse{0%,to{opacity:1}50%{opacity:.3}}.pill-btn--primary{width:auto;min-width:200px;color:var(--accent-contrast);background:linear-gradient(180deg,var(--accent-hi),var(--accent));box-shadow:6px 6px 14px color-mix(in srgb,var(--accent) 35%,transparent),inset 0 1px #ffffff38}.pill-btn--primary:active{background:var(--accent-lo);box-shadow:inset 4px 4px 9px color-mix(in srgb,var(--accent-lo) 60%,#000),inset -3px -3px 8px color-mix(in srgb,var(--accent-hi) 60%,#fff)}.pill-btn--danger{color:var(--accent-contrast);background:linear-gradient(180deg,color-mix(in srgb,var(--role-critical) 82%,#fff),var(--role-critical));box-shadow:6px 6px 14px color-mix(in srgb,var(--role-critical) 35%,transparent),inset 0 1px #ffffff38}.pill-btn--danger:active{background:color-mix(in srgb,var(--role-critical) 85%,#000);box-shadow:inset 4px 4px 9px color-mix(in srgb,var(--role-critical) 60%,#000)}.pill-btn--ghost{background:transparent;box-shadow:none;color:var(--text-dim)}.pill-btn--ghost:hover{color:var(--text)}.pill-btn--ghost:active{transform:none;box-shadow:var(--press)}.pill-btn--sm{position:relative;padding:.4rem 1rem;font-size:var(--fs-sm);gap:var(--space-1)}.pill-btn--sm:after{content:"";position:absolute;top:-5px;right:0;bottom:-5px;left:0}.btn-row .pill-btn,.row-confirm-actions .pill-btn,.list-row-actions .pill-btn{min-width:0;max-width:100%}.pill-btn--block{width:100%}.form-actions{display:flex;justify-content:flex-end}.status-pill{--role: var(--role-neutral);display:inline-flex;align-items:center;gap:6px;padding:4px 12px 4px 9px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;white-space:nowrap;color:color-mix(in srgb,var(--role) 55%,var(--text));background:color-mix(in srgb,var(--role) 14%,var(--panel));box-shadow:inset 1px 1px 3px color-mix(in srgb,var(--shadow-lo) 50%,transparent),inset -1px -1px 2px color-mix(in srgb,var(--shadow-hi) 70%,transparent)}.status-pill>svg{width:12px;height:12px;flex:none;color:var(--role)}.status-pill[data-role=positive]{--role: var(--role-positive)}.status-pill[data-role=info]{--role: var(--role-info)}.status-pill[data-role=warning]{--role: var(--role-warning)}.status-pill[data-role=critical]{--role: var(--role-critical)}.status-pill[data-role=neutral]{--role: var(--role-neutral)}.soft-field{display:grid;gap:var(--space-1)}.soft-field-label{padding-left:var(--space-4);font-size:var(--fs-sm);font-weight:700;color:var(--text-dim)}.soft-field-box{position:relative;display:flex;align-items:center;border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--inset);transition:box-shadow .2s ease}.soft-field-box:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.soft-field-box>input,.soft-field-box>select,.soft-field-box>textarea{flex:1;min-width:0;border:0;outline:none;background:none;padding:.8rem 1.2rem;font:inherit;color:var(--text)}.soft-field-box>input::placeholder,.soft-field-box>textarea::placeholder{color:var(--text-faint)}.soft-field-box>.field-icon{position:absolute;left:0;width:44px;display:grid;place-items:center;color:var(--text-dim);pointer-events:none}.soft-field-box>.field-icon~input,.soft-field-box>.field-icon~.soft-select>.soft-select-trigger{padding-left:44px}.soft-field-box--area{border-radius:var(--radius-md)}.soft-field-box>textarea{resize:vertical;min-height:96px}.soft-select{position:relative;flex:1;min-width:0}.soft-select>.soft-select-native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;border:0;opacity:0;overflow:hidden;clip-path:inset(50%);pointer-events:none}.soft-select-trigger{display:flex;align-items:center;width:100%;border:0;outline:none;background:none;padding:.8rem 2.4rem .8rem 1.2rem;font:inherit;text-align:left;color:var(--text);cursor:pointer}.soft-select-trigger:disabled{cursor:not-allowed;opacity:.55}.soft-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soft-select-value.is-placeholder{color:var(--text-faint)}.soft-select-trigger>.field-chevron{position:absolute;right:1rem;color:var(--text-dim);pointer-events:none;display:grid;place-items:center;transition:transform .18s ease}.soft-select-trigger[aria-expanded=true]>.field-chevron{transform:rotate(180deg)}.soft-select-list{position:absolute;z-index:40;top:calc(100% + var(--space-2));left:0;right:0;margin:0;padding:var(--space-2);list-style:none;border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--raise),var(--shadow-ambient);max-height:min(60vh,320px);overflow-y:auto;overscroll-behavior:contain;animation:soft-select-in .14s ease}.soft-select-list--up{top:auto;bottom:calc(100% + var(--space-2))}@keyframes soft-select-in{0%{opacity:0;transform:translateY(-4px)}}.soft-select-option{display:flex;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;transition:background .14s ease}.soft-select-option.is-active{background:color-mix(in srgb,var(--accent) 10%,transparent)}.soft-select-option[aria-selected=true]{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-lo);font-weight:700}.soft-select-option.is-disabled{color:var(--text-faint);cursor:not-allowed}.soft-select-option-label{flex:1;min-width:0}.soft-select-check{flex:none;color:var(--accent)}.soft-select-group{padding:var(--space-3) var(--space-3) var(--space-1);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}.soft-field-box>.field-chevron{position:absolute;right:1rem;color:var(--text-dim);pointer-events:none;display:grid;place-items:center}.soft-field--error .soft-field-box{box-shadow:var(--inset),0 0 0 2px color-mix(in srgb,var(--role-critical) 55%,transparent)}.soft-field-error{padding-left:var(--space-4);font-size:var(--fs-xs);font-weight:600;color:var(--role-critical)}.soft-field-hint{padding-left:var(--space-4);font-size:var(--fs-xs);color:var(--text-faint)}.soft-toggle{display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer;-webkit-tap-highlight-color:transparent}.soft-toggle>input{position:absolute;opacity:0;width:0;height:0}.soft-toggle-track{position:relative;width:52px;height:30px;flex:none;border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--inset);transition:background .2s ease}.soft-toggle-knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:var(--panel);box-shadow:var(--raise-sm),inset 0 1px #ffffff59;transition:transform .2s ease,background .2s ease}.soft-toggle>input:checked+.soft-toggle-track{background:color-mix(in srgb,var(--accent) 32%,var(--base))}.soft-toggle>input:checked+.soft-toggle-track>.soft-toggle-knob{transform:translate(22px);background:linear-gradient(180deg,var(--accent-hi),var(--accent))}.soft-toggle>input:focus-visible+.soft-toggle-track{outline:3px solid var(--focus-ring);outline-offset:2px}.soft-toggle>input:disabled+.soft-toggle-track{opacity:.5}.soft-toggle-label{font-size:var(--fs-sm);font-weight:600;color:var(--text)}.segmented{display:inline-flex;gap:2px;padding:4px;border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--inset);max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;box-sizing:border-box}.segmented::-webkit-scrollbar{display:none}.segmented--block{display:flex;width:100%}.segmented--block>.segmented-btn{flex:1}.segmented-btn{position:relative;border:0;padding:.45rem 1.05rem;border-radius:var(--radius-pill);background:transparent;font:inherit;font-size:var(--fs-sm);font-weight:700;color:var(--text-dim);cursor:pointer;white-space:nowrap;transition:color .15s ease,box-shadow .2s ease,background .2s ease;-webkit-tap-highlight-color:transparent}.segmented-btn:after{content:"";position:absolute;top:-7px;right:0;bottom:-7px;left:0}.segmented-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.segmented-btn[aria-pressed=true]{background:var(--panel);color:var(--text);box-shadow:var(--raise-sm),inset 0 1px #ffffff59}@media(max-width:480px){.segmented-btn{padding:.4rem .55rem;font-size:var(--fs-xs)}}.soft-slider{--fill: 0%;-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:14px;border-radius:var(--radius-pill);background:linear-gradient(to right,color-mix(in srgb,var(--accent) 55%,var(--base)) var(--fill),var(--base) var(--fill));box-shadow:var(--inset);outline-offset:4px;cursor:pointer}.soft-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:26px;height:26px;border:0;border-radius:50%;background:linear-gradient(180deg,var(--accent-hi),var(--accent));box-shadow:var(--raise-sm),inset 0 1px #ffffff59}.soft-slider::-moz-range-thumb{width:26px;height:26px;border:0;border-radius:50%;background:linear-gradient(180deg,var(--accent-hi),var(--accent));box-shadow:var(--raise-sm),inset 0 1px #ffffff59}.soft-slider:focus-visible{outline:3px solid var(--focus-ring)}.upload-drop{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--base);box-shadow:var(--clay-inset);cursor:pointer;transition:box-shadow .2s ease}.upload-drop:hover{box-shadow:var(--clay-inset),0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}.upload-drop:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.upload-drop[data-disabled=true]{opacity:.55;cursor:not-allowed}.upload-drop-icon{width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:50%;color:var(--accent);background:var(--panel);box-shadow:var(--raise-sm)}.upload-drop-text{display:grid;gap:2px;min-width:0}.upload-drop-title{font-weight:700;font-size:var(--fs-sm);color:var(--text)}.upload-drop-hint{font-size:var(--fs-xs);color:var(--text-faint)}.upload-preview{display:flex;align-items:center;gap:var(--space-3)}.upload-thumb{width:56px;height:56px;flex:none;border-radius:var(--radius-sm);object-fit:cover;background:var(--base);box-shadow:var(--raise-sm)}.upload-file-chip{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;padding:.45rem 1rem;border-radius:var(--radius-pill);background:var(--panel);box-shadow:var(--raise-sm);font-size:var(--fs-sm);font-weight:600;color:var(--text)}.upload-file-chip>svg{flex:none;color:var(--text-dim)}.upload-file-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);padding:var(--space-6) var(--space-5);max-width:1080px;width:100%;min-width:0;margin:0 auto;align-content:start}.list-shell>*{min-width:0;max-width:100%}@media(max-width:767px){.list-shell{padding:var(--space-4)}}.page-header{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;width:100%;min-width:0}.page-header-plate{flex:1 1 280px;min-width:0;display:grid;gap:3px;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--base);box-shadow:var(--inset)}.page-header-eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);line-height:1.3;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint)}.page-title{margin:0;min-width:0;font-family:var(--font-display);font-size:var(--fs-title);font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--text);text-wrap:balance;overflow-wrap:anywhere;text-shadow:0 1px 0 var(--shadow-hi),0 -1px 1px color-mix(in srgb,var(--brand-ink) 18%,transparent)}.page-header-sub{font-size:var(--fs-sm);line-height:1.4;color:var(--text-dim)}.page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex:none;margin-left:auto}.stat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));gap:var(--space-3);width:100%;max-width:100%;box-sizing:border-box}.stat-tile{--role: var(--text);display:grid;gap:2px;padding:var(--space-4);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--inset)}.stat-tile-value{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--role);line-height:1.1}.stat-tile-label{font-size:var(--fs-xs);font-weight:700;color:var(--text-dim);letter-spacing:.03em}.stat-tile[data-role=positive]{--role: var(--role-positive)}.stat-tile[data-role=info]{--role: var(--role-info)}.stat-tile[data-role=warning]{--role: var(--role-warning)}.stat-tile[data-role=critical]{--role: var(--role-critical)}.stat-tile[data-role=neutral]{--role: var(--role-neutral)}.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);width:100%;max-width:100%;box-sizing:border-box}.filter-bar>.soft-field{min-width:140px;flex:1 1 160px;max-width:100%;box-sizing:border-box}.list-rows{display:grid;gap:var(--space-3)}.list-row{display:flex;align-items:center;flex-wrap:wrap;row-gap:var(--space-2);column-gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--raise-sm);text-align:left}button.list-row{width:100%;border:0;font:inherit;color:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}button.list-row:hover{box-shadow:var(--raise)}button.list-row:active{transform:translateY(1px);box-shadow:var(--press)}button.list-row:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.list-row-leading{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--base);box-shadow:var(--clay-inset);color:var(--text-dim);font-size:var(--fs-lg);overflow:hidden}.list-row-main{flex:1 1 160px;min-width:120px;display:grid;gap:2px}.list-row-title{font-weight:700;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row-sub{font-size:var(--fs-sm);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row-actions{flex:none;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;margin-left:auto;min-width:0;max-width:100%}.btn-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-1);min-width:0;max-width:100%}.btn-row--loose{gap:var(--space-2)}.list-row--split{padding:0}.list-row--split:hover{box-shadow:var(--raise)}.list-row-hit{flex:1 1 180px;min-width:140px;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:0;border-radius:var(--radius-md);background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:transform .15s ease}.list-row-hit:active{transform:translateY(1px)}.list-row-hit:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}.list-row--split .list-row-actions{padding-right:var(--space-5)}@media(max-width:767px){.list-row--split .list-row-actions{padding:0 var(--space-5) var(--space-3)}}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-4)}.pagination-info{font-size:var(--fs-sm);font-weight:700;color:var(--text-dim);font-variant-numeric:tabular-nums}.state-box{display:grid;justify-items:center;gap:var(--space-2);text-align:center;padding:var(--space-8) var(--space-5);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--raise-sm)}.state-box-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:var(--space-2);border-radius:50%;font-size:28px;background:var(--base);box-shadow:var(--clay-inset)}.state-box-title{margin:0;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;color:var(--text)}.state-box-hint{margin:0;max-width:40ch;font-size:var(--fs-sm);color:var(--text-dim)}.state-box-action{margin-top:var(--space-3)}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(100deg,var(--base) 40%,var(--surface-hi) 50%,var(--base) 60%);background-size:200% 100%;animation:skeleton-shimmer 1.4s linear infinite}.skeleton--pill{border-radius:var(--radius-pill)}.skeleton--circle{border-radius:50%}@keyframes skeleton-shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}.pill-btn-spinner{animation:pill-btn-pulse 1s ease-in-out infinite}.pill-btn,.segmented-btn,.soft-toggle-track,.soft-toggle-knob,button.list-row,.list-row-hit{transition:none}}.is-stale{opacity:.6;transition:opacity .12s ease-out}.md{font-size:var(--fs-sm);line-height:1.6;color:var(--text);word-break:break-word}.md{min-width:0;max-width:100%;word-break:break-word;overflow-wrap:break-word}.md>*:first-child{margin-top:0}.md>*:last-child{margin-bottom:0}.md h1,.md h2,.md h3,.md h4,.md h5,.md h6{margin:var(--space-4) 0 var(--space-2);font-family:var(--font-display);font-weight:600;color:var(--text);line-height:1.3}.md h1{font-size:var(--fs-xl)}.md h2{font-size:var(--fs-lg)}.md h3{font-size:var(--fs-md)}.md h4{font-size:var(--fs-sm);font-weight:700}.md h5,.md h6{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.md p{margin:0 0 var(--space-3)}.md ul,.md ol{margin:0 0 var(--space-3);padding-inline-start:var(--space-5)}.md li{margin-bottom:var(--space-1)}.md strong{font-weight:600;color:var(--text)}.md em{font-style:italic}.md-table-wrapper{width:100%;max-width:100%;min-width:0;overflow-x:auto;margin:var(--space-3) 0;border-radius:var(--radius-sm);box-shadow:var(--clay-inset);background:var(--base);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.md-table{width:100%;min-width:480px;border-collapse:collapse;font-size:var(--fs-xs);text-align:left}.md-table th,.md-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid color-mix(in srgb,var(--shadow-lo) 35%,transparent);min-width:110px;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.md-table th{font-weight:600;color:var(--text);background:color-mix(in srgb,var(--base) 80%,var(--shadow-lo));white-space:nowrap}.md-table tr:last-child td{border-bottom:0}.md-table td{color:var(--text)}.agreement-scroll-box{width:100%;max-width:100%;min-width:0;box-sizing:border-box;max-height:220px;overflow-y:auto;overflow-x:hidden;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset);font-size:var(--fs-sm);line-height:1.5;overscroll-behavior:contain}.agreement-scroll-box:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.consent-checkbox-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);cursor:pointer;min-height:44px}.consent-checkbox-row[data-disabled=true]{cursor:not-allowed;opacity:.6}.consent-checkbox-row input[type=checkbox]{margin-top:3px}.consent-card-wrapper{margin-top:var(--space-3);margin-bottom:var(--space-3)}.register-agreement-box{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--inset);display:flex;flex-direction:column;gap:var(--space-2)}.register-agreement-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:44px}.register-link-btn{background:none;border:none;padding:var(--space-2) var(--space-1);min-height:44px;display:inline-flex;align-items:center;font:inherit;color:var(--accent);font-size:var(--fs-xs);font-weight:600;cursor:pointer;text-decoration:underline;box-sizing:border-box;flex-shrink:0;white-space:nowrap}.register-link-btn:hover{color:var(--accent-lo)}.disclosure-row{position:relative}.disclosure-row-panel{flex-basis:100%;width:100%;padding:var(--space-3) var(--space-5) var(--space-4);border-top:1px solid color-mix(in srgb,var(--shadow-lo) 30%,transparent)}@media(prefers-contrast:more){.disclosure-row-panel{border-top:1px solid var(--text-faint)}}.row-action-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);min-width:0;max-width:100%}.row-action-strip .pill-btn{min-width:0;max-width:100%}body{--sticky-bar-h: 76px}.sticky-action-bar{position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--base);box-shadow:var(--raise);border-top:1px solid color-mix(in srgb,var(--shadow-lo) 35%,transparent);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px))}.sticky-action-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);max-width:600px;margin:0 auto;min-width:0}.sticky-action-bar-content{flex:1 1 auto;min-width:0;font-size:var(--fs-sm);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sticky-action-bar-content>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sticky-action-bar-action{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-2)}.sticky-action-bar-action .pill-btn{white-space:nowrap;flex-shrink:0}body:has(.sticky-action-bar) .app-main,body.has-sticky-action-bar .app-main,body:has(.sticky-action-bar) .list-shell,body.has-sticky-action-bar .list-shell{padding-bottom:calc(var(--sticky-bar-h) + env(safe-area-inset-bottom,0px))}@media(prefers-contrast:more){.sticky-action-bar{border-top:1px solid var(--text-faint)}}.sticky-action-bar-confirm{position:fixed;bottom:calc(var(--sticky-bar-h) + env(safe-area-inset-bottom,0px));left:0;right:0;z-index:24;background:var(--panel);border-top:1px solid color-mix(in srgb,var(--shadow-lo) 35%,transparent);border-radius:var(--radius-md) var(--radius-md) 0 0;box-shadow:var(--raise);padding:var(--space-3) var(--space-4);max-width:600px;margin:0 auto}.sticky-action-bar-confirm .card-note{margin:0 0 var(--space-3)}@media(prefers-contrast:more){.sticky-action-bar-confirm{border-top:1px solid var(--text-faint)}}.checklist-prepare-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0 var(--space-4);flex-wrap:wrap}.checklist-prepare-topbar-right{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.checklist-prepare-back-btn{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-sm);font-weight:600;color:var(--text-dim);text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:color .15s ease,background .15s ease}.checklist-prepare-back-btn:hover{color:var(--text);background:var(--panel)}.checklist-prepare-ttl-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-xs);font-weight:600;padding:.2rem .6rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 12%,var(--base));color:var(--accent);box-shadow:var(--inset)}.prepare-packages-list{display:flex;flex-direction:column;gap:var(--space-2)}.package-add-circle-btn{position:relative;width:38px;height:38px;flex:none;display:grid;place-items:center;border:0;border-radius:50%;background:var(--base);box-shadow:var(--raise-sm);color:var(--accent);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.package-add-circle-btn:hover:not(:disabled){box-shadow:var(--raise);transform:translateY(-1px)}.package-add-circle-btn:active:not(:disabled){box-shadow:var(--press);transform:translateY(1px)}.package-add-circle-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.package-add-circle-btn:disabled{opacity:.45;cursor:default;box-shadow:var(--raise-sm);color:var(--text-dim)}.package-add-circle-btn.is-remove{color:#c93b2b}.package-add-circle-btn.is-remove:hover:not(:disabled){color:#a8281a}.package-disclosure-row,.package-disclosure-row.list-row--split{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;position:relative!important;row-gap:0!important;column-gap:0!important;padding:0!important;border-radius:var(--radius-md)!important;background:var(--panel)!important;box-shadow:var(--raise-sm)!important;width:100%!important;box-sizing:border-box!important}.package-disclosure-row .list-row-hit{flex:1 1 auto!important;min-width:0!important;max-width:calc(100% - 46px)!important;display:flex!important;align-items:center!important;gap:var(--space-3)!important;padding:var(--space-3) var(--space-2) calc(var(--space-3) + 4px) var(--space-3)!important;position:relative!important;overflow:hidden!important;box-sizing:border-box!important}.package-disclosure-row .list-row-hit:after{content:"";position:absolute;bottom:4px;left:calc(50% + 23px);transform:translate(-50%);width:34px;height:3px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--text-dim) 35%,transparent);pointer-events:none;transition:width .2s ease,background .2s ease,opacity .2s ease}.package-disclosure-row:hover .list-row-hit:after{background:color-mix(in srgb,var(--accent) 70%,var(--text-dim));width:44px}.package-disclosure-row.is-open .list-row-hit:after{background:var(--accent);opacity:.55}.package-disclosure-row .list-row-leading,.prepared-pkg-disclosure-row .list-row-leading,.single-eq-row .list-row-leading,.list-row:has(.package-lead-box) .list-row-leading{overflow:visible!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;width:auto!important;height:auto!important}.package-lead-box{position:relative;width:38px;height:38px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 12%,var(--base));color:var(--accent);display:grid;place-items:center;flex-shrink:0;box-shadow:var(--raise-sm);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.package-lead-inner{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;overflow:hidden;display:grid;place-items:center;background:var(--base)}.package-lead-inner img,.package-lead-inner .file-image,.package-lead-inner .brand-logo-fill{width:100%;height:100%;object-fit:contain;background:#fff}.lead-size-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-pill);font-size:10px;font-weight:800;letter-spacing:-.02em;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--raise-sm);box-sizing:border-box;line-height:1;z-index:2}.lead-size-badge.is-size{background:var(--accent);color:#fff;border:1.5px solid var(--base)}.lead-size-badge.is-empty{background:var(--base);color:var(--text-faint);border:1.5px solid color-mix(in srgb,var(--text-dim) 35%,transparent);box-shadow:var(--inset)}.lead-brand-badge{position:absolute;bottom:-4px;right:-4px;width:17px;height:17px;border-radius:50%;background:#fff;border:1.5px solid var(--base);box-shadow:0 1px 3px #00000038;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:2;box-sizing:border-box}.lead-brand-badge img,.lead-brand-badge .file-image,.lead-brand-badge .brand-logo-fill{width:100%;height:100%;object-fit:contain;background:#fff}.package-disclosure-row .list-row-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.package-disclosure-row .list-row-title{min-width:0;overflow:hidden}.package-disclosure-row .disclosure-row-actions{flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;flex-shrink:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0 var(--space-2) 0 0!important;margin:0!important;box-sizing:border-box!important}.package-disclosure-row .disclosure-row-panel{flex:0 0 100%!important;width:100%!important;min-width:100%!important;max-width:100%!important;box-sizing:border-box!important;display:block!important;padding:var(--space-3) var(--space-3) var(--space-4)!important;border-top:1px solid color-mix(in srgb,var(--shadow-lo) 30%,transparent)!important;order:99!important}@media(max-width:767px){.package-disclosure-row,.package-disclosure-row.list-row--split{display:flex!important;flex-wrap:wrap!important;padding:0!important}.package-disclosure-row .list-row-hit{padding:var(--space-3) var(--space-2) calc(var(--space-3) + 4px) var(--space-3)!important;max-width:calc(100% - 46px)!important}.package-disclosure-row .disclosure-row-actions{padding:0 var(--space-2) 0 0!important;margin:0!important;flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important}.package-disclosure-row .disclosure-row-panel{flex:0 0 100%!important;width:100%!important;min-width:100%!important;max-width:100%!important;display:block!important;order:99!important}}.prepared-pkg-disclosure-row.list-row--split{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;position:relative!important;border-radius:var(--radius-md)!important;background:var(--panel)!important;box-shadow:var(--raise-sm)!important;width:100%!important;padding:0!important}.prepared-pkg-disclosure-row .list-row-hit{flex:1 1 auto!important;min-width:0!important;max-width:calc(100% - 76px)!important;display:flex!important;align-items:center!important;gap:var(--space-3)!important;padding:var(--space-3) var(--space-2) calc(var(--space-3) + 4px) var(--space-3)!important;overflow:hidden!important;box-sizing:border-box!important}.prepared-pkg-disclosure-row .disclosure-row-actions{flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;padding:0 var(--space-3) 0 0!important;margin-left:auto!important}.prepared-pkg-disclosure-row .disclosure-row-panel{flex:0 0 100%!important;width:100%!important;min-width:100%!important;max-width:100%!important;display:block!important;box-sizing:border-box!important;padding:var(--space-2) var(--space-3) var(--space-3)!important;border-top:1px solid color-mix(in srgb,var(--shadow-lo) 30%,transparent)!important;order:99!important}.depo-package-row,.depo-package-row.list-row--split{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;position:relative!important;row-gap:0!important;column-gap:0!important;padding:0!important;border-radius:var(--radius-md)!important;background:var(--panel)!important;box-shadow:var(--raise-sm)!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden}.depo-package-row .list-row-hit{flex:1 1 auto!important;min-width:0!important;max-width:none!important;display:flex!important;align-items:center!important;gap:var(--space-3)!important;padding:var(--space-3) var(--space-2) calc(var(--space-3) + 4px) var(--space-3)!important;position:relative!important;overflow:hidden!important;box-sizing:border-box!important}.depo-package-row .list-row-hit:after{content:"";position:absolute;bottom:4px;left:calc(50% + 23px);transform:translate(-50%);width:34px;height:3px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--text-dim) 35%,transparent);pointer-events:none;transition:width .2s ease,background .2s ease,opacity .2s ease}.depo-package-row:hover .list-row-hit:after{background:color-mix(in srgb,var(--accent) 70%,var(--text-dim));width:44px}.depo-package-row.is-open .list-row-hit:after{background:var(--accent);opacity:.55}.depo-package-row .list-row-leading{overflow:visible!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;width:auto!important;height:auto!important;flex-shrink:0!important}.depo-package-row .list-row-main{flex:1 1 auto!important;min-width:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;overflow:hidden!important}.depo-package-row .list-row-title,.depo-package-row .list-row-sub{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.depo-package-row .disclosure-row-actions{flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;flex-shrink:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:var(--space-2)!important;padding:0 var(--space-3) 0 var(--space-2)!important;margin:0 0 0 auto!important;box-sizing:border-box!important}.depo-package-row .disclosure-row-panel{flex:0 0 100%!important;width:100%!important;min-width:100%!important;max-width:100%!important;box-sizing:border-box!important;display:block!important;padding:var(--space-3) var(--space-3) var(--space-4)!important;border-top:1px solid color-mix(in srgb,var(--shadow-lo) 30%,transparent)!important;order:99!important}@media(max-width:640px){.depo-package-row .list-row-hit{padding:var(--space-2) var(--space-1) calc(var(--space-2) + 4px) var(--space-2)!important;gap:var(--space-2)!important}.depo-package-row .disclosure-row-actions{padding:0 var(--space-2) 0 0!important;gap:4px!important}.depo-package-row .disclosure-row-actions .pill-btn{padding:.2rem .5rem!important;font-size:var(--fs-xs)!important}}.list-row:not(.disclosure-row):has(.package-add-circle-btn){display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;padding:var(--space-3) var(--space-3)!important;column-gap:var(--space-2)!important}.list-row:not(.disclosure-row):has(.package-add-circle-btn) .list-row-main{flex:1 1 auto!important;min-width:0!important;overflow:hidden!important}.list-row:not(.disclosure-row):has(.package-add-circle-btn) .list-row-actions{flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;flex-shrink:0!important;flex-wrap:nowrap!important;margin-left:auto!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}@media(max-width:767px){.list-row:not(.disclosure-row):has(.package-add-circle-btn) .list-row-actions{padding:0!important;margin:0!important}}.package-disclosure-row.disclosure-row{flex-wrap:wrap!important;padding:0!important}.package-row-title-wrap{display:flex;align-items:center;gap:var(--space-2);min-width:0;overflow:hidden}.package-row-title-wrap>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto}.package-badge-added{display:inline-block;padding:.1rem .45rem;font-size:var(--fs-xs);font-weight:700;border-radius:var(--radius-pill);background:var(--base);color:var(--text-dim);box-shadow:var(--inset);line-height:1.2}.package-badge-warn{display:inline-block;padding:.1rem .45rem;font-size:var(--fs-xs);font-weight:700;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--role-warning) 14%,var(--base));color:var(--role-warning);box-shadow:var(--inset);line-height:1.2;white-space:nowrap}.package-badge-reserve{display:inline-block;padding:.1rem .45rem;font-size:var(--fs-xs);font-weight:600;border-radius:var(--radius-pill);background:var(--base);color:var(--text-dim);box-shadow:var(--inset);line-height:1.2;white-space:nowrap}.prepare-usage-filter{margin-bottom:var(--space-4)}.package-panel-content{display:flex;flex-direction:column;width:100%;min-width:0;box-sizing:border-box}.package-panel-items{display:flex;flex-direction:row;overflow-x:auto;gap:var(--space-2);padding:var(--space-2) 2px var(--space-3);-webkit-overflow-scrolling:touch;scrollbar-width:thin;width:100%;max-width:100%;box-sizing:border-box}.package-item-entry{display:flex;flex-direction:column}.package-item-square-card{flex:0 0 108px;width:108px;display:flex;flex-direction:column;align-items:stretch}.package-item-square-card.is-locked{opacity:.55}.package-item-square-box{position:relative;width:108px;height:108px;border-radius:var(--radius-md);background:var(--base);box-shadow:var(--raise-sm);border:1px solid color-mix(in srgb,var(--shadow-lo) 30%,transparent);transition:all .15s ease;overflow:hidden;box-sizing:border-box}.package-item-square-box.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),var(--raise)}.package-item-box-top{position:absolute;top:var(--space-2);left:var(--space-2);right:var(--space-2);display:flex;align-items:center;justify-content:space-between;z-index:3;pointer-events:none}.package-item-box-top>*{pointer-events:auto}.package-item-check-btn{all:unset;position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;width:32px;height:32px;margin:-4px -4px -4px 0;flex-shrink:0;z-index:5;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.package-item-check-btn:disabled{cursor:not-allowed;opacity:.5}.harness-reserve-chip{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;box-shadow:var(--raise-sm);transition:all .15s ease;z-index:5}.harness-reserve-chip.has-reserve{background:color-mix(in srgb,#16a34a 20%,var(--base));color:#16a34a;border:1px solid color-mix(in srgb,#16a34a 40%,transparent)}.harness-reserve-chip.no-reserve{background:color-mix(in srgb,#dc2626 15%,var(--base));color:#dc2626;border:1px solid color-mix(in srgb,#dc2626 35%,transparent)}.harness-reserve-badge{display:inline-flex;align-items:center;gap:3px;padding:.12rem .45rem;font-size:var(--fs-xs);font-weight:700;border-radius:var(--radius-pill);box-shadow:var(--inset);line-height:1.2;white-space:nowrap}.harness-reserve-badge.has-reserve{background:color-mix(in srgb,#16a34a 18%,var(--base));color:#16a34a}.harness-reserve-badge.no-reserve{background:color-mix(in srgb,#dc2626 15%,var(--base));color:#dc2626}.package-item-checkbox-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;width:32px;height:32px;margin:-4px -4px -4px 0;flex-shrink:0;z-index:5;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.package-item-checkbox{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0;z-index:2}.package-item-checkbox:disabled{cursor:not-allowed}.package-item-check-indicator{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:2px solid var(--border-strong);background:var(--base);color:transparent;transition:all .15s ease;box-sizing:border-box;pointer-events:none}.package-item-check-indicator.is-checked{background:var(--accent);border-color:var(--accent);color:#fff}.package-item-check-indicator.is-locked{background:var(--surface-muted);border-color:var(--border);opacity:.5;cursor:not-allowed}.package-item-hit{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:grid;place-items:center;background:transparent;border:none;cursor:pointer;color:var(--text-dim);padding:0;z-index:1}.package-item-icon-wrap{position:relative;display:grid;place-items:center;width:32px;height:32px}.package-item-icon-wrap .lead-brand-badge{width:15px;height:15px;bottom:-2px;right:-2px}.package-item-square-box.is-selected .package-item-hit{color:var(--accent)}.package-item-card-info{margin-top:var(--space-1);display:flex;flex-direction:column;gap:2px;text-align:center}.package-item-type-label{font-size:var(--fs-xs);font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em}.package-item-name-btn{all:unset;cursor:pointer;display:block}.package-item-name-btn .package-item-title{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.package-item-swapped{color:var(--accent)}.package-item-sub{font-size:var(--fs-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.package-item-actions-panel{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3);background:var(--panel);border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);box-shadow:var(--raise-sm)}.package-item-actions-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.package-item-actions-title{font-size:var(--fs-sm);font-weight:700;color:var(--text)}.package-item-actions-close{all:unset;cursor:pointer;color:var(--text-dim);padding:var(--space-1);display:grid;place-items:center;border-radius:var(--radius-sm)}.package-item-actions-close:hover{color:var(--text)}.package-panel-error{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0}@media(prefers-contrast:more){.package-badge-added{border:1px solid var(--text);color:var(--text)}.package-badge-warn{border:1px solid var(--role-warning);color:var(--role-warning)}.package-badge-reserve{border:1px solid var(--text-dim);color:var(--text)}}.helper-panel-items{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) 0 var(--space-3);width:100%;box-sizing:border-box}.helper-panel-items .package-item-square-box{cursor:pointer}.helper-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap}.helper-picker-stats{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--text-dim);font-weight:600}.helper-picker-actions{display:flex;align-items:center;gap:var(--space-2)}.package-item-box-tag{display:inline-flex;align-items:center;padding:1px 5px;font-size:10px;font-weight:700;border-radius:var(--radius-pill);background:color-mix(in srgb,#16a34a 18%,var(--base));color:#16a34a;line-height:1.2;text-transform:uppercase}.prepared-list-panel{position:fixed;bottom:calc(var(--sticky-bar-h, 60px) + env(safe-area-inset-bottom,0px));left:0;right:0;z-index:24;background:var(--base);border-top:1px solid color-mix(in srgb,var(--shadow-lo) 35%,transparent);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--raise);max-width:600px;max-height:calc(75vh - var(--sticky-bar-h, 60px));margin:0 auto;display:flex;flex-direction:column;overflow:hidden}.prepared-list-panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid color-mix(in srgb,var(--shadow-lo) 25%,transparent);background:var(--base);flex-shrink:0}.prepared-list-panel-head h2{font-size:var(--fs-md);font-weight:700;color:var(--text);margin:0}.prepared-list-panel-body{padding:var(--space-3) var(--space-4);overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:var(--space-3)}.sticky-action-bar-content:has(.prepared-list-panel-trigger){overflow:visible}.sticky-action-bar-content>.prepared-list-panel-trigger{overflow:visible;text-overflow:clip}.prepared-list-panel-trigger{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:42px;padding:0 var(--space-4);border-radius:var(--radius-pill);border:1.5px solid color-mix(in srgb,var(--accent) 35%,transparent);background:var(--base);color:var(--accent);font-weight:700;font-size:var(--fs-sm);cursor:pointer;box-shadow:var(--raise-sm);transition:all .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap;flex-shrink:0}.prepared-list-panel-trigger:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,var(--base));box-shadow:var(--raise);transform:translateY(-1px)}.prepared-list-panel-trigger:active:not(:disabled){transform:translateY(1px);box-shadow:var(--press)}.prepared-list-panel-trigger.is-open{background:var(--accent);color:#fff;border-color:var(--accent)}.prepared-list-panel-trigger:disabled{opacity:.65;cursor:not-allowed;border-color:color-mix(in srgb,var(--shadow-lo) 30%,transparent);background:var(--base);color:var(--text-dim);box-shadow:var(--raise-sm)}.prepared-list-panel-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.prepared-package-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}@media(prefers-contrast:more){.prepared-list-panel{border:2px solid var(--text)}.prepared-list-panel-head{border-bottom:1px solid var(--text)}}.return-item-row{display:grid;gap:var(--space-2)}.return-collection-section{display:flex;flex-direction:column;gap:var(--space-4)}.return-collection-pkg{display:flex;flex-direction:column;gap:var(--space-2)}.return-collection-pkg-title{font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:var(--space-2) 0 var(--space-1)}.activity-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}@media(max-width:480px){.activity-facts-grid{grid-template-columns:1fr 1fr;gap:var(--space-3) var(--space-3)}}.activity-fact-item{display:flex;flex-direction:column;gap:3px;min-width:0}.activity-fact-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}.activity-fact-val{font-size:var(--fs-sm);font-weight:600;color:var(--text);line-height:1.35;white-space:normal;word-break:break-word}.activity-attendance-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:600;margin-bottom:var(--space-3);background:var(--surface-sunken);color:var(--text);border:1px solid color-mix(in srgb,var(--shadow-lo) 20%,transparent)}.activity-attendance-banner.is-arrived{background:var(--surface-success-subtle, rgba(34, 197, 94, .1));color:var(--color-success, #16a34a);border-color:#22c55e40}.admin-section-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);margin-bottom:var(--space-2)}.admin-ops-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-3)}@media(max-width:360px){.admin-ops-grid{grid-template-columns:1fr}}.admin-ops-grid .pill-btn{width:100%;min-width:0;max-width:100%;min-height:48px;padding:var(--space-2) var(--space-3);font-size:var(--fs-sm);font-weight:600;line-height:1.25;text-align:center;display:flex;align-items:center;justify-content:center;white-space:normal;word-break:normal;box-sizing:border-box}.admin-ops-grid .pill-btn--primary{min-width:0;width:100%}.admin-subcard{margin-top:var(--space-4);padding:var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--shadow-lo) 20%,transparent)}.admin-subcard-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.admin-subcard-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:600;min-width:0;line-height:1.3}.admin-subcard-body{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--shadow-lo) 20%,transparent)}.version-line{margin:0;text-align:center;line-height:1.5;-webkit-user-select:none;user-select:none}.version-line--muted{font-size:var(--fs-xs);color:var(--text-dim)}.version-line--prominent{font-size:var(--fs-sm);color:var(--text);margin-top:var(--space-4)}.attendance-carryover-line{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--shadow-lo) 25%,transparent);display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-dim);white-space:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.attendance-carryover-line::-webkit-scrollbar{display:none}.attendance-carryover-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--role-info) 14%,transparent);color:var(--role-info);font-weight:700;font-size:11px;letter-spacing:.03em;flex-shrink:0;-webkit-user-select:none;user-select:none}.attendance-carryover-items{display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0;min-width:0}.attendance-carryover-item{display:inline-flex;align-items:center;gap:4px}.attendance-carryover-item strong{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.attendance-carryover-sep{color:var(--text-faint);-webkit-user-select:none;user-select:none}.dev-api-badge{position:fixed;bottom:calc(var(--space-2, 8px) + env(safe-area-inset-bottom,0px));left:calc(var(--space-2, 8px) + env(safe-area-inset-left,0px));z-index:99999;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace);font-size:var(--fs-xs, 12px);font-weight:600;line-height:1.2;padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-sm, 6px);color:var(--accent-contrast, #ffffff);box-shadow:0 2px 8px #00000040;letter-spacing:.02em}.dev-api-badge--local{background-color:var(--role-neutral)}.dev-api-badge--live{background-color:var(--role-critical)}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.card-head>h2{margin:0;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;color:var(--text)}.card-head-link{position:relative;display:inline-flex;align-items:center;color:var(--accent);font-size:var(--fs-sm);font-weight:700;text-decoration:none;white-space:nowrap}.card-head-link:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:44px;min-height:44px;width:100%;height:100%}.card-head-link:hover{text-decoration:underline}.collapse-head{width:100%;align-items:center;background:none;border:none;padding:0;cursor:pointer;text-align:left;color:inherit;font:inherit}.collapse-head[aria-expanded=false]{margin-bottom:0}.collapse-caret{flex:none;color:var(--text-dim);transition:transform .18s ease}.collapse-caret--open{transform:rotate(180deg)}.card-note{margin:var(--space-3) 0 0;font-size:var(--fs-sm);color:var(--text-dim);line-height:1.5}.muted{color:var(--text-dim);font-size:var(--fs-sm)}.form-ok{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--fs-sm);font-weight:700;color:var(--role-positive)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4)}.fact{display:grid;gap:2px;min-width:0}.fact-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.03em;color:var(--text-dim)}.fact-value{font-size:var(--fs-md);color:var(--text)}.fact-value>a{position:relative;display:inline-flex;align-items:center}@media(max-width:1023px){.fact-value>a:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:44px;min-height:44px;width:100%;height:100%}}.fact-pills{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.detail-head{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.detail-desc{margin:var(--space-5) 0 0;color:var(--text);line-height:var(--lh-body, 1.6);white-space:pre-wrap}.detail-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}@media(max-width:767px){.detail-actions{flex-direction:column;align-items:stretch}.detail-actions>.pill-btn{width:100%;min-width:0}}.dash{display:grid;gap:var(--space-5);padding:var(--space-6) var(--space-5);max-width:1080px;margin:0 auto;align-content:start}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5);align-items:start}.dash-unread{display:grid;gap:var(--space-4)}.new-alert-slot:empty{display:none}.new-alert{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-contrast);font-size:var(--fs-sm);font-weight:700}.new-alert-icon{display:inline-flex;flex:none}.card--alert{box-shadow:var(--raise),0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}@media(prefers-reduced-motion:no-preference){.new-alert{animation:new-alert-in .35s ease-out}.new-alert-icon{animation:new-alert-ring 1.6s ease-in-out 3;transform-origin:50% 15%}}@keyframes new-alert-in{0%{opacity:0;transform:translateY(-6px)}}@keyframes new-alert-ring{0%,60%,to{transform:rotate(0)}10%,30%,50%{transform:rotate(12deg)}20%,40%{transform:rotate(-12deg)}}.dash-live{display:grid;grid-template-columns:1fr auto;grid-template-areas:"main pill" "action action";align-items:start;gap:var(--space-3);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--accent) 5%,var(--panel));border:1.5px solid color-mix(in srgb,var(--accent) 35%,transparent)}.dash-live-main{grid-area:main;display:flex;flex-direction:column;justify-content:center;min-height:44px;text-decoration:none;color:inherit;min-width:0}.dash-live-main:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.dash-live-title{font-size:var(--fs-md);font-weight:700;color:var(--text);line-height:1.3}.dash-live-sub{font-size:var(--fs-sm);color:var(--text-dim);margin-top:2px}.dash-live-pill{grid-area:pill;display:inline-flex;align-items:center;justify-content:flex-end;padding-top:var(--space-1)}.dash-live-action{grid-area:action;width:100%;min-height:44px;text-decoration:none;justify-content:center}.dash-live-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-links{display:grid;gap:var(--space-3)}.dash-link{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius-sm);color:var(--text);text-decoration:none;min-height:44px}.dash-link:hover{box-shadow:var(--raise-sm)}.dash-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-link-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--accent);flex:none}.dash-link-text{display:grid;gap:2px;flex:1;min-width:0}.dash-link-text>span{font-size:var(--fs-sm);color:var(--text-dim)}.nav-icon-wrap{position:relative;display:inline-grid;place-items:center}.nav-badge{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--brand-orange-2),var(--brand-orange));color:var(--accent-contrast);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;border:2px solid var(--base);box-shadow:0 2px 8px color-mix(in srgb,var(--brand-orange) 50%,transparent);animation:badge-pop .28s cubic-bezier(.175,.885,.32,1.275);pointer-events:none}@keyframes badge-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.nav-sep{border:none;border-top:1px solid color-mix(in srgb,currentColor 20%,transparent);margin:var(--space-3) 0;opacity:.5}.nav-section-label{display:block;padding:0 var(--space-3);margin-bottom:var(--space-1);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.55}.nav-group{display:flex;flex-direction:column}.nav-group-toggle{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:none;background:transparent;border-radius:var(--radius-pill);color:#ffffffd1;font-size:var(--fs-md);font-weight:600;text-align:left;cursor:pointer;transition:color .18s ease,box-shadow .18s ease,transform .18s ease}.nav-group-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-group-label{flex:1;min-width:0}.nav-group-chevron{flex:none;opacity:.7;transition:transform .2s ease}.nav-group.open .nav-group-chevron{transform:rotate(180deg)}.nav-group-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.nav-group.open .nav-group-body{grid-template-rows:1fr}.nav-group-body-inner{overflow:hidden;min-height:0;display:flex;flex-direction:column;gap:var(--space-1)}.nav-group.open .nav-group-body-inner{padding-top:var(--space-1)}@media(prefers-reduced-motion:reduce){.nav-group-body,.nav-group-chevron{transition:none}}.scan-page{display:grid;gap:var(--space-4);padding:var(--space-5);max-width:560px;margin:0 auto;align-content:start}.scan-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.scan-head>h1{margin:0;font-family:var(--font-display);font-size:var(--fs-title);font-weight:600}.scan-close{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);background:var(--panel);box-shadow:var(--raise-sm);color:var(--text);text-decoration:none;font-size:var(--fs-md)}.scan-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.scan-viewport{position:relative;aspect-ratio:1 / 1;border-radius:var(--radius-lg);overflow:hidden;background:var(--base);box-shadow:var(--clay-inset)}.scan-video{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .2s ease}.scan-viewport[data-active] .scan-video{opacity:1}.scan-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:var(--space-4);padding:var(--space-5);text-align:center;color:var(--text)}.scan-overlay>p{margin:0;color:var(--text-dim)}.scan-frame{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:3px solid var(--accent);border-radius:var(--radius-md);pointer-events:none}.scan-help-title{margin:0;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;color:var(--text)}.scan-result{display:grid;justify-items:center;gap:var(--space-3);text-align:center}.scan-result-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--accent);line-height:0}.scan-result>h1{margin:0;font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600}.scan-result-msg{margin:0;color:var(--text)}.scan-result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-3)}.avatar-block{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap}.avatar-frame{width:96px;height:96px;flex:none;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--base);box-shadow:var(--raise-sm)}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-empty{display:inline-flex;align-items:center;justify-content:center;color:var(--text-faint)}.avatar-actions{display:grid;gap:var(--space-2);justify-items:start}.profile-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.profile-form .soft-field{grid-template-columns:minmax(0,1fr)}.profile-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.profile-hero-top{display:flex;align-items:center;gap:var(--space-4)}.profile-hero-id{flex:1 1 auto;min-width:0;display:grid;gap:var(--space-2);justify-items:start}.profile-hero-name{margin:0;font-size:var(--fs-lg);font-weight:700;color:var(--text);overflow-wrap:anywhere}.profile-level-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--raise-sm);font-size:var(--fs-xs);font-weight:700;color:var(--text-dim);white-space:nowrap}.profile-hero-roles{gap:var(--space-2)}.profile-edit-btn{position:relative;flex:none;align-self:flex-start;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--base);box-shadow:var(--raise-sm);color:var(--text-dim);cursor:pointer}.profile-edit-btn:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}.profile-edit-btn:hover{color:var(--accent)}.profile-edit-btn:active{box-shadow:var(--press)}.profile-edit-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.profile-hero-facts{margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset)}.profile-hero-fact{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-sm)}.profile-hero-fact dt{color:var(--text-dim);white-space:nowrap}.profile-hero-fact dd{margin:0;font-weight:600;color:var(--text);text-align:right;overflow-wrap:anywhere}.profile-dialog{border:0;padding:var(--space-4);background:transparent;width:min(440px,92vw);max-width:92vw;max-height:92vh;margin:auto;overflow:visible}.profile-dialog::backdrop{background:#0f172a80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.profile-dialog-body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--clay);max-height:84vh;overflow-y:auto}.profile-dialog-actions{gap:var(--space-3);flex-wrap:wrap}.profile-dialog-actions .pill-btn{flex:1 1 auto;min-width:0}.weight-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.weight-label{display:grid;gap:2px}.weight-label-title{font-size:var(--fs-md);font-weight:700;color:var(--text)}.weight-label .card-note{margin:0}.weight-display{display:flex;align-items:center;gap:var(--space-3)}.weight-display .profile-edit-btn{align-self:center}.weight-control{display:flex;align-items:center;gap:var(--space-2)}.weight-step,.weight-act{position:relative;width:40px;height:40px;flex:none;display:grid;place-items:center;border:0;border-radius:50%;background:var(--base);box-shadow:var(--raise-sm);color:var(--text);cursor:pointer}.weight-step:after,.weight-act:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}.weight-step:hover{color:var(--accent)}.weight-step:active,.weight-act:active{box-shadow:var(--press)}.weight-step:focus-visible,.weight-act:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.weight-step:disabled,.weight-act:disabled{opacity:.45;cursor:default;box-shadow:var(--raise-sm)}.weight-input-wrap{position:relative;display:flex;align-items:center;height:40px;width:88px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--inset);transition:box-shadow .2s ease}.weight-input-wrap:focus-within{outline:2px solid var(--focus-ring);outline-offset:2px}.weight-input{width:100%;min-width:0;border:0;outline:none;background:none;padding:0;font-family:inherit;font-size:var(--fs-md);font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;text-align:center}.weight-input::placeholder{color:var(--text-faint)}.weight-input-unit{font-size:var(--fs-xs);font-weight:600;color:var(--text-dim);-webkit-user-select:none;user-select:none;pointer-events:none}.weight-value{min-width:60px;text-align:right;font-size:var(--fs-lg);font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.weight-value small{margin-left:3px;font-size:var(--fs-xs);font-weight:600;color:var(--text-dim)}.weight-confirm{display:flex;align-items:center;gap:var(--space-2);margin-left:var(--space-2)}.weight-act--ok{color:var(--role-positive)}.weight-act--ok:hover{color:color-mix(in srgb,var(--role-positive) 80%,black)}.weight-act--cancel{color:var(--role-critical)}.weight-act--cancel:hover{color:color-mix(in srgb,var(--role-critical) 80%,black)}.weight-hint{margin:var(--space-3) 0 0}.weight-error{color:var(--role-critical);font-weight:600}.file-input{width:100%;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset);color:var(--text);font:inherit;font-size:var(--fs-sm)}.file-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notif-dot{display:grid;place-items:center;width:12px;color:var(--accent);font-size:10px}.list-row-title:has(.notif-title){white-space:normal}.notif-title{display:block;min-width:0;max-width:100%;overflow-wrap:break-word;word-break:break-word;white-space:normal}.notif-title[data-unread]{font-weight:700}.notif-body{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-2);white-space:normal;min-width:0}.notif-time{font-size:var(--fs-xs);color:var(--text-faint);white-space:nowrap;margin-left:auto}.list-row-sub:has(.notif-body),.list-row-sub .notif-body{white-space:normal}.invite-code-row .list-row-sub{white-space:normal;overflow:visible;text-overflow:clip}.list-row-sub:has(.role-badges){overflow:visible}.excuse-row{display:grid;gap:var(--space-2)}.row-confirm{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset);font-size:var(--fs-sm);color:var(--text);min-width:0;max-width:100%}.row-confirm-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);min-width:0;max-width:100%}.row-confirm>.soft-field{flex:1 1 180px;min-width:0}.role-toggle{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) 0;background:none;border:none;font:inherit;color:inherit;cursor:pointer;text-align:left}.role-chevron{display:inline-flex;color:var(--text-faint);transition:transform .15s ease}.role-chevron.is-open{transform:rotate(180deg)}.role-perms{display:grid;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset)}.role-perms-empty{font-size:var(--fs-sm);color:var(--text-faint)}.role-perm-group{display:grid;gap:var(--space-2)}.role-perm-group-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.role-perm-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.role-perm-chip{padding:4px 10px;border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--raise-sm);font-size:var(--fs-xs);color:var(--text-dim);cursor:default}.role-assign-row{display:grid;gap:var(--space-2)}.role-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.role-row-meta .role-badges{row-gap:var(--space-4);margin-block:var(--space-2) var(--space-3)}.role-badges{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.role-badge{display:inline-flex;align-items:center;gap:4px;padding:2px var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.role-badge-remove{position:relative;display:inline-flex;align-items:center;padding:0;border:0;background:none;color:inherit;opacity:.65;cursor:pointer;border-radius:var(--radius-pill)}@media(max-width:1023px){.role-badge-remove:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:44px;min-height:44px;width:100%;height:100%}}.role-badge-remove:hover:not(:disabled){opacity:1}.role-badge-remove:disabled{opacity:.3;cursor:default}.role-row-assign{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.role-row-assign>.soft-field{margin:0;min-width:150px}.role-badge--instructor{color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--base))}.role-badge--admin{color:var(--role-critical);background:color-mix(in srgb,var(--role-critical) 16%,var(--base))}.role-badge--member{color:var(--role-info);background:color-mix(in srgb,var(--role-info) 16%,var(--base))}.role-badge--other{color:var(--text-dim);background:var(--base);box-shadow:var(--raise-sm)}.req-list{display:grid;gap:var(--space-4)}.req-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.req-purpose{margin:0;font-size:var(--fs-md);font-weight:700;color:var(--text)}.req-dates{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-dim);font-variant-numeric:tabular-nums}.req-items{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;gap:var(--space-2)}.req-items>li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset);font-size:var(--fs-sm)}.req-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.chip-filters{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-2);margin-bottom:var(--space-4)}.pick-list{list-style:none;margin:0;padding:2px;display:grid;gap:var(--space-2);max-height:320px;overflow-y:auto}.pick-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);min-height:44px;cursor:pointer;background:var(--base);box-shadow:var(--clay-inset);transition:background .16s ease,box-shadow .16s ease}.pick-item:hover{background:color-mix(in srgb,var(--accent) 8%,var(--base))}.pick-item[data-selected]{background:color-mix(in srgb,var(--accent) 13%,var(--base));box-shadow:var(--raise-sm)}.pick-text{flex:1;min-width:0;display:grid;gap:1px}.pick-name{min-width:0;font-size:var(--fs-sm);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-meta{min-width:0;font-size:var(--fs-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:var(--space-4);margin-top:var(--space-4)}.date-row>*{min-width:0}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-3)}.photo-cell{margin:0;display:grid;gap:var(--space-2);justify-items:center}.photo-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:var(--radius-sm);box-shadow:var(--raise-sm);background:var(--base)}.photo-fallback{display:grid;place-items:center;width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-sm);background:var(--base);box-shadow:var(--clay-inset);font-size:var(--fs-xs);color:var(--text-faint);text-align:center;padding:var(--space-2)}.photo-thumb-btn{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;border-radius:var(--radius-sm)}.photo-thumb-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.photo-lightbox{border:0;border-radius:var(--radius-lg);padding:var(--space-4);background:transparent;max-width:90vw;max-height:90vh;margin:auto;overflow:visible}.photo-lightbox::backdrop{background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.photo-lightbox-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);max-width:90vw;max-height:90vh}.photo-lightbox-img-wrap{display:flex;align-items:center;justify-content:center;max-width:90vw;max-height:calc(90vh - 60px);touch-action:pinch-zoom;overflow:hidden;border-radius:var(--radius-md);background:var(--base)}.photo-lightbox-img{max-width:100%;max-height:calc(90vh - 60px);width:auto;height:auto;object-fit:contain;border-radius:var(--radius-md)}.photo-lightbox-actions{display:flex;justify-content:center}.photo-lightbox-actions .pill-btn{min-height:44px;min-width:90px}.scan-page form,.list-shell form{display:grid;gap:var(--space-4)}@media(prefers-reduced-motion:reduce){.scan-video{transition:none}}.qr-display{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center}.qr-image{width:320px;max-width:100%;aspect-ratio:1;image-rendering:pixelated;background:#fff;padding:var(--space-3);border-radius:var(--radius-md);box-shadow:var(--raise, 0 6px 14px rgba(0, 0, 0, .12))}.qr-plate{width:320px;max-width:100%;aspect-ratio:1;background:#fff;padding:var(--space-3);border-radius:var(--radius-md);box-shadow:var(--raise, 0 6px 14px rgba(0, 0, 0, .12))}.qr-plate svg{display:block;width:100%;height:100%}.qr-label-body{display:grid;justify-items:center;gap:var(--space-4);margin-top:var(--space-3)}.qr-plate--label{width:220px}.qr-plate--label img{display:block;width:100%;height:100%;image-rendering:pixelated}.qr-label-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}.scan-viewport--compact{aspect-ratio:4 / 3;max-width:360px;margin:var(--space-3) auto 0}.scan-log{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:var(--space-2)}.scan-log-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-sm);background:var(--panel);box-shadow:var(--raise-sm)}.scan-log-item--ok{color:var(--success, #1c7d4d)}.scan-log-item--dup{color:var(--text-dim)}.scan-log-item--err{color:var(--danger, #b3261e)}.code-show{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.code-show-label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted, #6b7280)}.code-show-value{font-size:clamp(2.5rem,12vw,4rem);font-variant-numeric:tabular-nums;letter-spacing:.12em;line-height:1.1}.expiry-ring{position:relative;width:64px;height:64px}.expiry-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.expiry-ring circle{fill:none;stroke-width:5;stroke-linecap:round}.expiry-ring-track{stroke:var(--surface-sunken, rgba(0, 0, 0, .08))}.expiry-ring-value{stroke:var(--accent, #2563eb);transition:stroke-dashoffset .25s linear}.expiry-ring-num{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-variant-numeric:tabular-nums;font-weight:600}.qr-close{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid color-mix(in srgb,currentColor 15%,transparent)}.code-input{font-size:1.6rem;letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums}.inline-checkin{margin-top:var(--space-4)}.checkin-feedback{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.checkin-feedback--ok{color:var(--success-text, #15803d)}.checkin-feedback--ok .scan-result-msg,.checkin-feedback--ok .muted{color:var(--text-muted, #6b7280)}@media(prefers-reduced-motion:reduce){.expiry-ring-value{transition:none}}.perm-picker-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.seg-toggle{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-2);margin:var(--space-3) 0 var(--space-4)}.delegate-role-pending{display:flex;flex-direction:column;gap:var(--space-3)}.perm-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:var(--space-4)}.perm-group{border:0;margin:0;padding:var(--space-4) var(--space-3) var(--space-3);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--raise-sm);display:flex;flex-direction:column;gap:2px}.perm-group-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;margin-bottom:var(--space-3);padding:0 var(--space-2) var(--space-3);border-bottom:1px solid color-mix(in srgb,var(--text-faint) 30%,transparent);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:700;color:var(--text)}.perm-group-all{position:relative;border:0;background:color-mix(in srgb,var(--accent) 12%,transparent);cursor:pointer;font-size:var(--fs-xs);font-weight:700;color:var(--accent-lo);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);transition:background .18s ease}@media(max-width:1023px){.perm-group-all:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:44px;min-height:44px;width:100%;height:100%}}.perm-group-all:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.perm-group-all:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.perm-check{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;min-height:44px;transition:background .16s ease}.perm-check:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.perm-check:has(input:checked){background:color-mix(in srgb,var(--accent) 13%,transparent)}.perm-check:has(input:checked) .perm-check-action{color:var(--accent-lo)}.perm-check input,.pick-item>input{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:22px;height:22px;flex:none;margin:0;border:0;border-radius:7px;background:var(--base);box-shadow:var(--clay-inset);cursor:pointer;display:grid;place-items:center;transition:background .16s ease,box-shadow .16s ease}.perm-check input:after,.pick-item>input:after{content:"";width:11px;height:6px;border-left:2.5px solid var(--accent-contrast);border-bottom:2.5px solid var(--accent-contrast);border-radius:1px;transform:rotate(-45deg) translate(1px,-1px) scale(.6);opacity:0;transition:opacity .16s ease,transform .16s ease}.perm-check input:checked,.pick-item>input:checked{background:linear-gradient(145deg,var(--accent-hi),var(--accent-lo));box-shadow:var(--raise-sm)}.perm-check input:checked:after,.pick-item>input:checked:after{opacity:1;transform:rotate(-45deg) translate(1px,-1px) scale(1)}.perm-check input:focus-visible,.pick-item>input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.perm-check-body{display:grid;gap:1px;min-width:0}.perm-check-action{font-size:var(--fs-sm);font-weight:700;color:var(--text)}.perm-check-code{font-size:var(--fs-xs);color:var(--text-dim);word-break:break-word;overflow-wrap:anywhere;white-space:normal}.role-assign-bar{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.role-assign-bar>.soft-field{flex:1 1 220px;margin:0}.perm-title{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-weight:700;color:var(--text)}.perm-group-chip{padding:1px var(--space-2);border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--clay-inset);font-size:var(--fs-xs);font-weight:700;color:var(--text-dim)}.perm-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.perm-log-tag{display:inline-flex;align-items:center;gap:4px;padding:2px var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:700}.perm-log-tag--grant{color:var(--role-positive);background:color-mix(in srgb,var(--role-positive) 16%,var(--base))}.perm-log-tag--revoke{color:var(--role-critical);background:color-mix(in srgb,var(--role-critical) 16%,var(--base))}.perm-log-tag--scope{color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--base))}.perm-row--expired{opacity:.72}.perm-row--expired .list-row-leading{color:var(--text-dim)}.perm-revoke:hover:not(:disabled){color:var(--role-critical)}.perm-bulk-actions{display:flex;justify-content:flex-end;margin-bottom:var(--space-3)}.brand-logo-fill{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;display:block}.equipment-logo-fallback{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.equipment-thumb{display:block;width:100%;max-width:320px;max-height:220px;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--clay-inset);margin:var(--space-3) 0}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:var(--space-5) var(--space-6);align-items:end}.form-grid>*{min-width:0}.form-grid .soft-field{grid-template-columns:minmax(0,1fr)}.note-list{list-style:none;margin:0 0 var(--space-3);padding:0;display:grid;gap:var(--space-2)}.note-item{display:grid;gap:2px;padding:var(--space-2) 0;border-top:1px solid var(--shadow-hi);box-shadow:0 -1px 0 var(--shadow-lo)}.note-item:first-child{border-top:none;box-shadow:none}.note-add{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-3)}.note-add>.soft-field{flex:1 1 220px;margin:0}.picker-divider{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4);font-size:var(--fs-sm);color:var(--text-dim)}.picker-divider:before,.picker-divider:after{content:"";flex:1;height:1px;background:var(--line, color-mix(in srgb, var(--text-dim) 25%, transparent))}.staged-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);padding:0;list-style:none}.staged-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:.3rem .4rem .3rem .9rem;border-radius:var(--radius-pill);background:var(--panel);box-shadow:var(--raise-sm);font-size:var(--fs-sm);font-weight:600;color:var(--text)}.staged-chip>button{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;border:none;border-radius:50%;background:transparent;color:var(--text-dim);font-size:1.05rem;line-height:1;cursor:pointer}.staged-chip>button:hover:not(:disabled){background:var(--base);color:var(--text)}.staged-chip>button:disabled{opacity:.5;cursor:default}.card-head-count{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:400;color:var(--text-dim)}.queue-rank{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:var(--font-display);font-size:var(--fs-md);font-weight:700;color:var(--accent)}.notice{margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border-left:4px solid var(--role-neutral);background:color-mix(in srgb,var(--role-neutral) 10%,var(--base));font-size:var(--fs-sm);color:var(--text);line-height:1.5}.notice svg,.card-note svg{vertical-align:-2px}.notice>p{margin:var(--space-1) 0 0;color:var(--text-dim)}.notice--warn{border-left-color:var(--role-warning);background:color-mix(in srgb,var(--role-warning) 12%,var(--base))}.notice--ok{border-left-color:var(--role-positive);background:color-mix(in srgb,var(--role-positive) 12%,var(--base));margin:var(--space-4) 0 0;font-weight:700}.notice-list{font-weight:700;color:var(--text)!important}.reason-list{margin:var(--space-2) 0 0;padding-inline-start:18px;color:var(--text-dim)}.reason-list li{margin-top:var(--space-1)}.reason-list strong{color:var(--text)}.queue-missing{color:var(--role-warning);font-weight:700}.chart{display:flex;flex-direction:column;gap:var(--space-4)}.chart--donut{flex-direction:row;align-items:center;flex-wrap:wrap}.donut-svg{flex:none}.donut-center-value{font-family:var(--font-display);font-size:26px;font-weight:700;fill:var(--text)}.donut-center-label{font-size:var(--fs-xs);fill:var(--text-dim)}.chart-legend{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2);flex:1 1 160px;min-width:140px}.chart-legend>li{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--text)}.chart-legend-dot{flex:none;width:12px;height:12px;border-radius:3px}.chart-legend-label{flex:1;min-width:0}.chart-legend-value{flex:none;font-weight:700}.chart-legend-pct{color:var(--text-dim);font-weight:400}.chart-axis{list-style:none;margin:0;padding:0 var(--space-1);display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--text-dim)}.area-svg{display:block}@media(prefers-reduced-motion:no-preference){.donut-svg circle[stroke-dasharray]{transition:stroke-dashoffset .4s ease}}.pwa-toast{position:fixed;left:50%;bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:100;max-width:min(420px,calc(100vw - var(--space-5)));display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--base);box-shadow:var(--raise),var(--shadow-ambient);border-left:4px solid var(--accent);font-size:var(--fs-sm);color:var(--text)}.pwa-toast-text{flex:1;min-width:0}.pwa-toast-actions{display:flex;gap:var(--space-2);flex:none}@media(max-width:899px){.pwa-toast{bottom:calc(64px + var(--space-3) + env(safe-area-inset-bottom,0px))}}.equipment-picker-dialog{border:0;padding:var(--space-3);background:transparent;width:min(560px,94vw);max-width:94vw;max-height:94vh;margin:auto;overflow:visible}.equipment-picker-dialog::backdrop{background:#0f172a80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.equipment-picker-body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--clay);max-height:86vh;overflow:hidden}.equipment-picker-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.equipment-picker-head h2{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin:0}.equipment-picker-search{display:flex;flex-direction:column;gap:var(--space-2)}.equipment-picker-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:2px}.equipment-picker-chips .pill-btn{min-width:0;padding:.35rem .85rem;font-size:var(--fs-sm)}.equipment-picker-chips .pill-btn[aria-pressed=true]{background:linear-gradient(180deg,var(--accent-hi),var(--accent));color:var(--accent-contrast);box-shadow:2px 2px 8px color-mix(in srgb,var(--accent) 35%,transparent),inset 0 1px #ffffff38}.equipment-picker-list{display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;padding-right:4px;max-height:48vh;min-height:180px}.equipment-picker-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:var(--base);box-shadow:var(--raise-sm);cursor:pointer;text-align:left;width:100%;color:var(--text);transition:transform .1s ease,border-color .15s ease,background .15s ease}.equipment-picker-row:hover{background:var(--surface);border-color:var(--border-soft);transform:translateY(-1px)}.equipment-picker-row:active{transform:translateY(1px)}.equipment-picker-row.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--base))}.equipment-picker-item-main{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1 1 auto}.equipment-picker-item-logo{flex-shrink:0;width:38px;height:38px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--panel)}.equipment-picker-item-details{display:flex;flex-direction:column;min-width:0}.equipment-picker-item-name{font-weight:600;color:var(--text);font-size:var(--fs-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.equipment-picker-item-sub{font-size:var(--fs-xs);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.equipment-picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center}.equipment-selected-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--base);box-shadow:var(--clay-inset);margin-top:var(--space-2)}.equipment-selected-info{display:flex;align-items:center;gap:var(--space-3);min-width:0}.equipment-selected-logo{flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--panel)}.equipment-selected-text{display:flex;flex-direction:column;min-width:0}.equipment-selected-name{font-weight:700;font-size:var(--fs-md);color:var(--text)}.equipment-selected-sub{font-size:var(--fs-xs);color:var(--text-dim)}.equipment-unselected-box{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0}.package-slots-wrapper{margin:var(--space-md) 0;display:flex;flex-direction:column;gap:var(--space-md);min-width:0;max-width:100%;width:100%;box-sizing:border-box}.package-slots-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-md);min-width:0;max-width:100%;width:100%;box-sizing:border-box}@media(max-width:860px){.package-slots-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}}@media(max-width:480px){.package-slots-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-3)}}.package-slot-col{position:relative;display:flex;flex-direction:column;min-width:0;width:100%}.package-slot-box{all:unset;display:flex;flex-direction:column;justify-content:space-between;min-height:124px;padding:var(--space-3.5);border-radius:var(--radius-md);background:var(--base);box-shadow:var(--raise-sm);border:1.5px solid color-mix(in srgb,var(--shadow-lo) 32%,transparent);cursor:pointer;box-sizing:border-box;transition:all .18s cubic-bezier(.16,1,.3,1);position:relative;-webkit-user-select:none;user-select:none;min-width:0;overflow:hidden}.package-slot-box:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--shadow-lo));box-shadow:var(--raise);transform:translateY(-1px)}.package-slot-box:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.package-slot-box.is-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),var(--raise);background:color-mix(in srgb,var(--accent) 5%,var(--base))}.package-slot-box.is-filled{border-color:color-mix(in srgb,var(--role-positive) 45%,var(--shadow-lo));background:var(--base);box-shadow:var(--raise-sm)}.package-slot-box.is-filled.is-active{border-color:var(--accent)}.package-slot-box--add{border-style:dashed;border-color:color-mix(in srgb,var(--accent) 45%,var(--shadow-lo));background:color-mix(in srgb,var(--accent) 3%,var(--base))}.package-slot-box--add:hover{border-style:solid;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--base))}.package-slot-box--add.is-active{border-style:solid;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--base))}.package-slot-box-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.package-slot-box-title{display:flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--fs-md);color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.package-slot-box-badge{font-size:var(--fs-xs);padding:2px 8px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--shadow-lo) 25%,transparent);color:var(--text-dim);font-weight:600;white-space:nowrap}.package-slot-box.is-active .package-slot-box-badge{background:var(--accent);color:var(--accent-contrast)}.package-slot-box.is-filled .package-slot-box-badge{background:color-mix(in srgb,var(--role-positive) 20%,transparent);color:var(--role-positive)}.package-slot-box.is-filled.is-active .package-slot-box-badge{background:var(--accent);color:var(--accent-contrast)}.package-slot-box-body{margin:var(--space-2) 0;padding:var(--space-2);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--panel) 65%,var(--base));border:1px solid color-mix(in srgb,var(--shadow-lo) 18%,transparent);min-height:48px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}.package-slot-box-item{display:flex;align-items:center;gap:var(--space-2);min-width:0;width:100%}.package-slot-box-item-logo{flex-shrink:0;width:40px;height:40px;min-width:40px;max-width:40px;min-height:40px;max-height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--panel);box-shadow:var(--clay-inset)}.package-slot-box-item-logo img,.package-slot-box-item-logo .brand-logo-fill{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;display:block}.package-slot-box-item-logo svg{width:22px;height:22px;color:var(--text-dim);flex-shrink:0}.package-slot-box-item-details{display:flex;flex-direction:column;min-width:0;flex:1}.package-slot-box-item-name{font-size:var(--fs-sm);font-weight:700;color:var(--brand-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.package-slot-box-item-sub{font-size:var(--fs-xs);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.package-slot-box-empty{font-size:var(--fs-xs);color:var(--text-dim);display:flex;align-items:center;justify-content:center;gap:6px;font-weight:500;padding:4px 0}.package-slot-box-extras-container{display:flex;flex-direction:column;gap:6px;max-height:150px;overflow-y:auto;overflow-x:hidden;width:100%;padding-right:2px;box-sizing:border-box}.package-slot-box-extras-head{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.package-slot-box-extra-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:4px 6px;border-radius:var(--radius-sm);background:var(--base);border:1px solid color-mix(in srgb,var(--shadow-lo) 20%,transparent);min-width:0;width:100%;box-sizing:border-box}.package-slot-box-extra-row-main{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1}.package-slot-box-extra-row .package-slot-box-item-logo{width:32px;height:32px;min-width:32px;max-width:32px;min-height:32px;max-height:32px}.package-slot-box-extra-row .package-slot-box-item-name{font-size:var(--fs-xs);font-weight:600;max-width:120px}.package-slot-box-extra-row .package-slot-box-item-sub{font-size:10px}.package-slot-box-footer{display:flex;align-items:center;justify-content:space-between;font-size:var(--fs-xs);color:var(--text-dim);padding-top:var(--space-2);border-top:1px dashed color-mix(in srgb,var(--shadow-lo) 30%,transparent);gap:var(--space-2);min-width:0}.package-slot-box-action-hint{display:flex;align-items:center;gap:4px;color:var(--accent);font-weight:600;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.package-slot-box-remove-btn{all:unset;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--role-negative) 12%,transparent);border:1px solid color-mix(in srgb,var(--role-negative) 40%,transparent);color:var(--role-negative);font-size:var(--fs-xs);font-weight:700;cursor:pointer;transition:all .15s ease;line-height:1.2;flex-shrink:0;box-sizing:border-box}.package-slot-box-remove-btn:hover:not(:disabled){background:var(--role-negative);color:#fff;border-color:var(--role-negative);transform:translateY(-1px)}.package-slot-box-remove-btn:disabled{opacity:.5;cursor:not-allowed}.package-slot-picker-current-extras{margin-bottom:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--base) 80%,transparent);border:1px solid color-mix(in srgb,var(--shadow-lo) 20%,transparent)}.package-slot-picker-current-extras-head{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-xs);font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.package-slot-picker-current-extras-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:200px;overflow-y:auto;padding:2px 4px;box-sizing:border-box}.package-slot-picker-current-extra-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2);border-radius:var(--radius-sm);background:var(--panel);border:1px solid color-mix(in srgb,var(--shadow-lo) 25%,transparent);gap:var(--space-3);min-width:0}.package-slot-picker-panel{width:440px;max-width:min(92vw,460px);min-width:0;box-sizing:border-box;margin-top:0;padding:var(--space-4);border-radius:var(--radius-md);background:var(--panel);border:1.5px solid color-mix(in srgb,var(--accent) 35%,transparent);box-shadow:0 16px 36px -4px #0006,0 0 0 1.5px color-mix(in srgb,var(--accent) 35%,transparent);animation:slideDown .18s cubic-bezier(.16,1,.3,1);position:absolute;top:calc(100% + 10px);z-index:85}.package-slot-col[data-slot=wing] .package-slot-picker-panel,.package-slot-col[data-slot=harness] .package-slot-picker-panel{left:0;right:auto}.package-slot-col[data-slot=outer_bag] .package-slot-picker-panel,.package-slot-col[data-slot=extra] .package-slot-picker-panel{right:0;left:auto}.package-slot-picker-panel:before{content:"";position:absolute;top:-6px;width:12px;height:12px;background:var(--panel);border-left:1.5px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top:1.5px solid color-mix(in srgb,var(--accent) 35%,transparent);transform:rotate(45deg);z-index:1}.package-slot-col[data-slot=wing] .package-slot-picker-panel:before,.package-slot-col[data-slot=harness] .package-slot-picker-panel:before{left:32px}.package-slot-col[data-slot=outer_bag] .package-slot-picker-panel:before,.package-slot-col[data-slot=extra] .package-slot-picker-panel:before{right:32px}@media(max-width:860px){.package-slot-picker-panel{position:static;width:100%;max-width:100%;margin-top:var(--space-2);box-shadow:var(--raise)}.package-slot-picker-panel:before{display:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.package-slot-picker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);flex-wrap:wrap;gap:var(--space-2)}.package-slot-picker-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-md);font-weight:700;color:var(--text)}.package-slot-picker-title .count-badge{font-size:var(--fs-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.package-slot-picker-search{margin-bottom:var(--space-2);min-width:0;max-width:100%}.package-slot-picker-search .soft-field{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}.package-slot-picker-search .soft-field-box{min-width:0;max-width:100%}.package-slot-picker-chips{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-3)}.package-slot-picker-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:380px;overflow-y:auto;overflow-x:hidden;padding:4px 6px 14px 4px;min-width:0;max-width:100%;width:100%;box-sizing:border-box}.package-slot-picker-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--base);border:1px solid color-mix(in srgb,var(--shadow-lo) 25%,transparent);transition:all .15s ease;gap:var(--space-3);min-width:0;max-width:100%;box-sizing:border-box}@media(max-width:600px){.package-slot-picker-row{flex-wrap:wrap;gap:var(--space-2)}.package-slot-picker-row-actions{width:100%;justify-content:flex-end}}.package-slot-picker-row:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 4%,var(--base))}.package-slot-picker-item-main{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1}.package-slot-picker-item-logo{flex-shrink:0;width:38px;height:38px;min-width:38px;max-width:38px;min-height:38px;max-height:38px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--base);box-shadow:var(--clay-inset)}.package-slot-picker-item-logo img,.package-slot-picker-item-logo .brand-logo-fill{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;display:block}.package-slot-picker-item-logo svg{width:20px;height:20px;color:var(--text-dim);flex-shrink:0}.package-slot-picker-item-details{display:flex;flex-direction:column;min-width:0;flex:1}.package-slot-picker-item-name{font-size:var(--fs-sm);font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.package-slot-picker-item-sub{font-size:var(--fs-xs);color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.package-slot-picker-row-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;max-width:100%}.package-slot-picker-empty{padding:var(--space-6) var(--space-3);text-align:center;color:var(--text-dim);font-size:var(--fs-sm)}.package-slot-other-btn{margin-top:var(--space-2);display:flex;align-items:center;justify-content:center}.attendance-modal-dialog{border:0;padding:var(--space-3);background:transparent;width:min(640px,94vw);max-width:94vw;max-height:94vh;margin:auto;overflow:visible}.attendance-modal-dialog::backdrop{background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.attendance-modal-body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--clay);max-height:86vh;overflow-y:auto}.attendance-modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.attendance-modal-head-title{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.attendance-modal-title{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin:0}.attendance-modal-history-scroll{max-height:340px;overflow-y:auto}.attendance-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.attendance-overview-activity-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.attendance-rate-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 8px;font-size:var(--fs-xs);font-weight:600;border-radius:var(--radius-pill);background:var(--color-primary-subtle, rgba(59, 130, 246, .12));color:var(--color-primary, #3b82f6)}.attendance-stats-strip{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap;margin-top:4px}.attendance-stat-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;font-size:var(--fs-xs);font-weight:500;border-radius:var(--radius-pill);background:var(--bg-subtle, rgba(255, 255, 255, .05));color:var(--text-dim);border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));line-height:1.3}.attendance-stat-chip strong{font-weight:700;color:var(--text)}.attendance-stat-chip--rate{background:var(--color-primary-subtle, rgba(59, 130, 246, .12));color:var(--color-primary, #3b82f6);border-color:#3b82f640;font-weight:600}.attendance-stat-chip--positive{background:var(--color-success-subtle, rgba(16, 185, 129, .12));color:var(--color-success, #10b981);border-color:#10b98140}.attendance-stat-chip--positive strong{color:var(--color-success, #10b981)}.attendance-stat-chip--warning{background:var(--color-warning-subtle, rgba(245, 158, 11, .12));color:var(--color-warning, #f59e0b);border-color:#f59e0b40}.attendance-stat-chip--warning strong{color:var(--color-warning, #f59e0b)}.attendance-stat-chip--info{background:var(--color-info-subtle, rgba(14, 165, 233, .12));color:var(--color-info, #0ea5e9);border-color:#0ea5e940}.attendance-stat-chip--info strong{color:var(--color-info, #0ea5e9)}.attendance-stat-chip--muted{font-style:italic;opacity:.75}.attendance-stat-chip--loading{opacity:.6}.attendance-member-row .list-row-sub{white-space:normal;overflow:visible}.attendance-ongoing-summary-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--raise-sm);margin-bottom:var(--space-3);flex-wrap:wrap;gap:var(--space-2)}.equipment-color-field{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-1);margin-bottom:var(--space-2)}.equipment-color-field-label{font-size:var(--fs-sm);font-weight:600;color:var(--text);display:flex;align-items:center;justify-content:space-between}.equipment-color-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.equipment-color-chip{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:var(--radius-pill);border:2px solid transparent;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:transform .15s ease,box-shadow .15s ease;touch-action:manipulation}.equipment-color-chip:hover:not(:disabled){transform:scale(1.08)}.equipment-color-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.equipment-color-chip.is-selected{box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--accent)}.equipment-color-chip:disabled{opacity:.35;cursor:not-allowed}.equipment-color-chip-badge{width:22px;height:22px;border-radius:50%;background:#0f172ad9;color:#fff;font-size:var(--fs-xs);font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0006}.equipment-color-summary{font-size:var(--fs-xs);color:var(--text-dim)}.equipment-color-hint{font-size:var(--fs-xs);color:var(--text-dim);padding:0 var(--space-1);max-width:220px;line-height:1.35}.equipment-identity-row{display:grid;grid-template-columns:minmax(180px,1fr) 150px auto;gap:var(--space-4);align-items:start;margin-bottom:var(--space-3)}.equipment-identity-row>*{min-width:0}.equipment-identity-row .soft-field{grid-template-columns:minmax(0,1fr);min-width:0}.equipment-identity-row .soft-field-box{min-width:0}.equipment-identity-row .soft-field-box>input{min-width:0;width:100%}.equipment-identity-colors{min-width:0}@media(max-width:768px){.equipment-identity-row{grid-template-columns:1fr 140px}.equipment-identity-colors{grid-column:1 / -1}}@media(max-width:480px){.equipment-identity-row{grid-template-columns:1fr}}.equipment-color-field{display:grid;gap:var(--space-1)}.equipment-color-field-label{padding-left:var(--space-2);font-size:var(--fs-sm);font-weight:700;color:var(--text-dim);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:20px}.equipment-color-slots{display:flex;align-items:center;gap:var(--space-2);position:relative;min-height:44px}.equipment-color-slot{position:relative;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation}.equipment-color-box--empty{width:44px;height:44px;border-radius:var(--radius-sm);background:var(--base);border:2px dashed color-mix(in srgb,var(--brand-ink) 28%,transparent);color:var(--brand-ink-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--inset);transition:all .18s ease;padding:0}.equipment-color-box--empty:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--base));transform:translateY(-1px)}.equipment-color-box--empty:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.equipment-color-box--empty:disabled{opacity:.4;cursor:not-allowed}.equipment-color-box--filled{width:44px;height:44px;border-radius:var(--radius-sm);border:2px solid transparent;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;box-shadow:0 2px 6px #00000038,inset 0 1px 1px #ffffff40;transition:transform .15s ease,box-shadow .15s ease}.equipment-color-box--filled:hover:not(:disabled){transform:scale(1.06)}.equipment-color-box--filled:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.equipment-color-box--filled.is-active-slot,.equipment-color-box--empty.is-active-slot{box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--accent)}.equipment-color-slot-badge{width:22px;height:22px;border-radius:50%;background:#0f172ad9;color:#fff;font-size:var(--fs-xs);font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0006;pointer-events:none}.equipment-color-slot-remove{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--role-critical);color:#fff;border:2px solid var(--panel);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:0 1px 4px #00000059;transition:transform .15s ease,background-color .15s ease;z-index:3}.equipment-color-slot-remove:hover{transform:scale(1.15);background:#b91c1c}.equipment-color-slot-remove:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.equipment-color-popover{position:absolute;top:calc(100% + var(--space-2));right:0;z-index:50;min-width:230px;padding:var(--space-3);background:var(--panel);border-radius:var(--radius-md);box-shadow:var(--raise),var(--shadow-ambient);border:1px solid color-mix(in srgb,var(--brand-ink) 10%,transparent);animation:soft-select-in .15s ease}.equipment-color-popover-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2);padding-bottom:var(--space-1);border-bottom:1px solid color-mix(in srgb,var(--brand-ink) 10%,transparent)}.equipment-color-popover-title{font-size:var(--fs-xs);font-weight:700;color:var(--text);letter-spacing:.02em}.equipment-color-popover-clear{background:none;border:none;color:var(--role-critical);font-size:var(--fs-xs);font-weight:600;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm);transition:background-color .15s ease}.equipment-color-popover-clear:hover{background:color-mix(in srgb,var(--role-critical) 12%,transparent)}.equipment-color-popover-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2);justify-items:center;margin-bottom:var(--space-2)}.equipment-color-popover-grid .equipment-color-chip{width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%}.equipment-color-chip-check{font-size:13px;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.equipment-color-popover-footer{font-size:var(--fs-xs);color:var(--text-dim);text-align:center;padding-top:var(--space-1);min-height:1.4em;font-weight:600}.equipment-conflict-dialog{border:0;padding:var(--space-3);background:transparent;width:min(480px,94vw);max-width:94vw;max-height:94vh;margin:auto;overflow:visible}.equipment-conflict-dialog::backdrop{background:#0f172a80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.equipment-conflict-body{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--clay);max-height:86vh;overflow-y:auto}.equipment-conflict-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.equipment-conflict-head h2{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin:0}.equipment-conflict-desc{font-size:var(--fs-base);color:var(--text);line-height:1.5;margin:0}.equipment-conflict-meta{font-size:var(--fs-sm);color:var(--text-dim);background:#0000000a;padding:var(--space-3);border-radius:var(--radius-sm)}.equipment-conflict-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-2)}.equipment-conflict-actions .pill-btn{flex:1 1 auto}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--base);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-md);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.panel-open{overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono)}button{font:inherit;cursor:pointer}h1,h2,h3{margin:0 0 var(--space-3);font-family:var(--font-sans);font-weight:600;line-height:1.25;color:var(--text)}h1{font-size:var(--fs-xl)}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-md)}input,select,textarea{font:inherit}.login-page{position:relative;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:calc(2rem + env(safe-area-inset-top)) calc(1rem + env(safe-area-inset-right)) calc(2rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left));overflow-x:hidden;font-family:var(--font-sans);color:var(--text);background:url(/bg.webp) center / cover no-repeat,linear-gradient(180deg,var(--sky-top),var(--sky-bottom))}@media(max-aspect-ratio:3 / 4){.login-page{background:url(/bg-mobile.webp) center / cover no-repeat,linear-gradient(180deg,var(--sky-top),var(--sky-bottom))}}.auth-stage{position:relative;z-index:1;width:min(400px,100%);max-width:100%;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.auth-stage:before{content:"";position:absolute;top:-14%;right:-26%;bottom:-14%;left:-26%;z-index:-1;border-radius:50%;background:var(--halo);filter:blur(24px);pointer-events:none}.auth-badge{display:grid;place-items:center;gap:.35rem;padding:1rem 2.25rem 1.1rem;border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--badge-shadow)}.auth-badge-logo{width:108px;max-width:100%;height:auto;display:block}.login-form{width:100%;max-width:100%;min-width:0;display:flex;flex-direction:column;gap:1rem;padding:2rem 1.75rem 1.75rem;border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--card-shadow)}.login-form h1{margin:0;text-align:center;font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;letter-spacing:.01em;color:var(--text)}@media(max-width:420px){.login-form{padding:1.5rem 1.25rem}.auth-badge{padding:.85rem 1.75rem .9rem}.auth-badge-logo{width:88px}.login-aux{flex-direction:column;justify-content:center;gap:.6rem;margin-top:.25rem}.login-link,button.login-link{font-size:.8125rem;text-align:center}}.login-field{position:relative;display:flex;align-items:center;border-radius:var(--radius-pill);background:var(--base);box-shadow:var(--inset);transition:box-shadow .25s ease}.login-field:focus-within{box-shadow:inset 3px 3px 7px var(--shadow-lo),inset -3px -3px 7px var(--shadow-hi),0 0 0 2px var(--focus-ring)}.login-field input:focus-visible{outline:none}.login-field input{flex:1;min-width:0;border:0;outline:none;background:none;padding:1rem 1.25rem 1rem 46px;font:inherit;font-size:1rem;color:var(--text)}.login-field input::placeholder{color:var(--text-dim)}.login-field .field-icon{position:absolute;left:0;width:46px;display:grid;place-items:center;color:var(--text-dim);pointer-events:none}.login-field .field-icon svg{width:19px;height:19px}.login-field .field-toggle{position:absolute;right:0;width:46px;height:100%;display:grid;place-items:center;border:0;background:none;padding:0;cursor:pointer;color:var(--text-dim);border-radius:var(--radius-pill)}.login-field .field-toggle:hover{color:var(--text)}.login-field .field-toggle svg{width:19px;height:19px}.login-field input:has(~.field-toggle){padding-right:46px}.login-field input::-ms-reveal{display:none}.login-textarea{width:100%;box-sizing:border-box;background:var(--base);box-shadow:var(--inset);border-radius:var(--radius-lg);border:0;outline:none;padding:1rem 1.25rem;font:inherit;font-size:1rem;color:var(--text);resize:vertical;min-height:7.5rem;transition:box-shadow .25s ease}.login-textarea::placeholder{color:var(--text-dim)}.login-textarea:focus,.login-textarea:focus-visible{outline:none;box-shadow:inset 3px 3px 7px var(--shadow-lo),inset -3px -3px 7px var(--shadow-hi),0 0 0 2px var(--focus-ring)}.login-submit{margin-top:.5rem;padding:1.05rem;border:0;border-radius:var(--radius-pill);cursor:pointer;font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.1em;color:var(--accent-contrast);background:linear-gradient(180deg,var(--accent),var(--accent-lo));box-shadow:6px 6px 14px color-mix(in srgb,var(--accent) 35%,transparent),inset 0 1px #ffffff38;transition:transform .15s ease,box-shadow .2s ease,filter .2s ease}.login-submit:hover{filter:brightness(1.04)}.login-submit:active{transform:translateY(1px);background:var(--accent-lo);box-shadow:inset 4px 4px 9px color-mix(in srgb,var(--accent-lo) 60%,#000),inset -3px -3px 8px color-mix(in srgb,var(--accent-hi) 60%,#fff)}.login-submit:disabled{opacity:.6;box-shadow:none}.login-aux{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;margin:-.25rem .25rem 0}button.login-link{background:none;border:0;cursor:pointer;font:inherit}.login-link,button.login-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;color:var(--text);text-decoration:none;box-sizing:border-box}.login-link:hover,button.login-link:hover{color:var(--accent-lo)}.login-page :focus-visible{outline:3px solid var(--accent-lo);outline-offset:3px}@media(prefers-reduced-motion:reduce){.login-page *{transition:none!important}}.app-shell{min-height:100vh;display:grid;grid-template-columns:1fr;position:relative}.app-shell:before,.app-shell:after{content:"";position:fixed;z-index:-1;pointer-events:none}.app-shell:before{top:-24px;right:-24px;bottom:-24px;left:-24px;background:url(/app-bg.webp) center / cover no-repeat;filter:blur(2px)}.app-shell:after{top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,color-mix(in srgb,var(--base) 12%,transparent),color-mix(in srgb,var(--base) 28%,transparent))}@media(max-width:1023px){.app-shell:before{background:url(/bg-mobile.webp) center / cover no-repeat}}.app-sidebar{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5) var(--space-4);color:var(--accent-contrast);background:linear-gradient(180deg,#32496e,#263952);border-radius:var(--radius-lg);box-shadow:0 20px 40px -16px color-mix(in srgb,var(--brand-ink) 55%,transparent),0 6px 16px -8px color-mix(in srgb,var(--brand-ink) 40%,transparent),inset 0 2px 3px #ffffff24,inset 0 -5px 12px #00000047}.app-sidebar-nav{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}.app-sidebar-nav::-webkit-scrollbar{width:6px}.app-sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:var(--radius-pill)}@media(max-width:1023px){.app-sidebar,.app-scrim,.app-bottomnav{display:none!important}}.app-main{min-width:0;padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.app-topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-3);min-height:52px;padding:calc(var(--space-2) + env(safe-area-inset-top)) var(--space-4) var(--space-2);background:var(--base)}.app-topbar-tabs{grid-column:2;justify-self:center}.app-topbar-back{grid-column:1;justify-self:start}.app-topbar-bell{grid-column:3;justify-self:end}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.app-topbar{background:color-mix(in srgb,var(--base) 85%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}.app-topbar-tabs{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-items:center;box-shadow:var(--inset);border-radius:var(--radius-pill);background:var(--base);--nav-pad: 3px;--nav-gap: var(--space-2);padding:var(--nav-pad);column-gap:var(--nav-gap);--nav-swipe: 0}.app-topbar-indicator{position:absolute;top:var(--nav-pad);bottom:var(--nav-pad);left:var(--nav-pad);width:calc((100% - 2 * var(--nav-pad) - (var(--nav-count, 3) - 1) * var(--nav-gap)) / var(--nav-count, 3));border-radius:var(--radius-pill);background:linear-gradient(140deg,var(--brand-orange-2),var(--brand-orange));box-shadow:var(--raise-sm);transform:translate(calc((var(--nav-index) + var(--nav-swipe)) * (100% + var(--nav-gap))));transition:transform .25s cubic-bezier(.2,.9,.3,1);pointer-events:none;z-index:1}.app-topbar-tabs.is-swiping .app-topbar-indicator{transition:none}.app-topbar-tab{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0;color:var(--text-dim);text-decoration:none;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-pill);transition:color .15s ease;-webkit-tap-highlight-color:transparent}.app-topbar-tab:hover{color:var(--text)}.app-topbar-tab.active{color:var(--accent-contrast)}@media(max-width:359px){.app-topbar{padding-left:var(--space-3);padding-right:var(--space-3);gap:var(--space-2)}.app-topbar-tabs{--nav-pad: 2px;--nav-gap: 0px}}.app-topbar-back{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;min-width:44px;padding:0;color:var(--text);text-decoration:none;border:none;background:var(--base);box-shadow:var(--raise-sm);cursor:pointer;border-radius:var(--radius-pill);transition:color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.app-topbar-back:hover{color:var(--accent)}.app-topbar-back:active{box-shadow:var(--press)}.app-topbar-bell,.desktop-topbar-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;color:var(--text);background:var(--base);box-shadow:var(--raise-sm);border:1px solid color-mix(in srgb,var(--shadow-hi) 75%,transparent);border-radius:var(--radius-pill);text-decoration:none;cursor:pointer;transition:color .18s ease,transform .15s ease,box-shadow .18s ease,background .18s ease;-webkit-tap-highlight-color:transparent}.app-topbar-bell svg,.desktop-topbar-bell svg{stroke-width:2px;transition:transform .2s ease,stroke .18s ease}.app-topbar-bell:hover,.desktop-topbar-bell:hover{color:var(--accent);box-shadow:var(--raise);transform:translateY(-1px)}.app-topbar-bell:active,.desktop-topbar-bell:active{transform:translateY(0);box-shadow:var(--press)}.app-topbar-bell.active,.desktop-topbar-bell.active{color:var(--accent);box-shadow:var(--press);background:color-mix(in srgb,var(--accent) 10%,var(--base))}.app-topbar-bell.has-unread,.desktop-topbar-bell.has-unread{color:var(--brand-ink);box-shadow:var(--raise-sm),0 0 0 1.5px color-mix(in srgb,var(--brand-orange) 35%,transparent)}.app-topbar-bell.has-unread:hover,.desktop-topbar-bell.has-unread:hover{color:var(--brand-orange);box-shadow:var(--raise),0 0 12px color-mix(in srgb,var(--brand-orange) 22%,transparent)}.app-topbar-bell.has-unread:hover svg,.desktop-topbar-bell.has-unread:hover svg{animation:bell-wiggle .5s ease-in-out}@keyframes bell-wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(12deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(6deg)}80%{transform:rotate(-3deg)}}.desktop-topbar{display:none}.pending-tasks-toggle{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:40;display:inline-flex;align-items:center;justify-content:center;width:28px;height:56px;padding:0;border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:var(--base);color:var(--text);border:1px solid rgba(0,0,0,.08);border-left:none;box-shadow:3px 3px 8px var(--shadow-lo);cursor:pointer;touch-action:manipulation;transition:color .15s ease,width .15s ease}.pending-tasks-toggle:after{content:"";position:absolute;left:0;top:0;width:44px;height:100%}.pending-tasks-toggle:hover{color:var(--accent);width:32px}.pending-tasks-toggle:active{box-shadow:inset 2px 2px 5px var(--shadow-lo),inset -2px -2px 5px var(--shadow-hi)}.pending-tasks-toggle .badge-dot{position:absolute;top:6px;right:4px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--base)}.pending-tasks-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;animation:fadeIn .2s ease-out}.pending-tasks-drawer{position:fixed;top:0;left:0;bottom:0;width:min(300px,82vw);background:var(--base);box-shadow:4px 0 24px #0000002e;z-index:60;display:flex;flex-direction:column;overflow-y:auto;animation:slideInLeft .25s cubic-bezier(.16,1,.3,1)}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.pending-tasks-header{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-3);border-bottom:1px solid rgba(0,0,0,.06)}.pending-tasks-title{font-size:var(--fs-md);font-weight:700;color:var(--text);margin:0}.pending-tasks-close{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--text-dim);cursor:pointer}.pending-tasks-close:hover{color:var(--text)}.pending-tasks-list{display:flex;flex-direction:column;padding:var(--space-3);gap:var(--space-2);flex:1}.pending-tasks-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);color:var(--text);text-decoration:none;min-height:48px;background:var(--panel);box-shadow:2px 2px 6px var(--shadow-lo),-2px -2px 6px var(--shadow-hi);transition:transform .12s ease}.pending-tasks-item:active{box-shadow:inset 1px 1px 3px var(--shadow-lo),inset -1px -1px 3px var(--shadow-hi)}.pending-tasks-item-main{display:flex;align-items:center;gap:var(--space-3);font-weight:500;font-size:var(--fs-sm)}.pending-tasks-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-size:var(--fs-xs);font-weight:700;color:#fff;background:var(--accent);border-radius:var(--radius-pill)}.pending-tasks-all{margin-top:auto;padding-top:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.pending-tasks-all a{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);color:var(--accent);font-weight:600;font-size:var(--fs-sm);text-decoration:none;border-radius:var(--radius-sm);background:transparent}.pending-tasks-all a:hover{text-decoration:underline}.app-bottomnav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:space-around;gap:var(--space-2);padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom)) var(--space-3);background:var(--base);box-shadow:var(--raise);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.app-navlink{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text-dim);text-decoration:none;font-size:var(--fs-xs);transition:color .15s ease}.app-navlink.active{color:var(--accent);box-shadow:var(--press)}.app-navlink .icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}.icon-btn{background:var(--base);border:none;border-radius:var(--radius-pill);box-shadow:var(--raise-sm);padding:var(--space-2) var(--space-3);color:var(--text)}.icon-btn:active{box-shadow:var(--press)}.app-sidebar .app-navlink{flex-direction:row;justify-content:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-md);color:#ffffffd1;background:transparent;transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.app-sidebar .nav-icon-wrap{width:24px;height:24px;flex:none}.app-sidebar .app-navlink:not(.active):hover{color:var(--accent-contrast);background:color-mix(in srgb,var(--panel) 60%,transparent)}.app-sidebar .nav-group-toggle:hover{color:var(--accent-contrast);background:color-mix(in srgb,var(--panel) 60%,transparent)}.app-sidebar .app-navlink.active{color:var(--accent-contrast);background:linear-gradient(180deg,var(--brand-orange-2),var(--brand-orange));border-radius:var(--radius-pill);box-shadow:0 10px 20px -8px color-mix(in srgb,var(--brand-orange) 70%,transparent),inset 0 2px 3px #ffffff59}.app-sidebar .icon-btn{background:color-mix(in srgb,var(--panel) 45%,transparent);color:var(--accent-contrast);box-shadow:none;border:1px solid rgba(255,255,255,.14)}.app-sidebar .icon-btn:hover{background:color-mix(in srgb,var(--panel) 65%,transparent)}.app-sidebar .icon-btn:active{background:color-mix(in srgb,var(--panel) 80%,transparent)}.app-sidebar .sidebar-close{display:inline-flex;padding:var(--space-2);line-height:0}.app-sidebar-meta{color:#fff9}@media(min-width:1024px){.app-shell{grid-template-columns:268px 1fr}.app-sidebar{position:sticky;top:var(--space-3);margin:var(--space-3);height:calc(100vh - var(--space-3) * 2)}.app-sidebar .sidebar-close,.app-scrim{display:none}.app-main{padding-bottom:0}.app-bottomnav,.app-topbar{display:none}.desktop-topbar{display:flex;justify-content:flex-end;align-items:center;padding:var(--space-3) var(--space-6) 0}.pending-tasks-toggle,.pending-tasks-drawer,.pending-tasks-backdrop{display:none!important}}.dash-hero{position:relative;overflow:hidden;padding:var(--space-6) var(--space-5);color:var(--accent-contrast);border-radius:var(--radius-lg);background:linear-gradient(140deg,var(--brand-orange-2),var(--brand-orange));box-shadow:var(--shadow-ambient),inset 0 2px 4px #ffffff4d,inset 0 -6px 14px #0000001f}.dash-hero h1{position:relative;font-size:var(--fs-xl);margin:0 0 var(--space-2)}.dash-hero p{position:relative;margin:0;opacity:.9}.dash-hero-wave{position:absolute;left:0;right:0;bottom:-2px;width:100%;height:46%;pointer-events:none}.dash-card{padding:var(--space-5);background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--raise)}.offline-banner{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:color-mix(in srgb,var(--role-warning) 14%,var(--base));color:color-mix(in srgb,var(--role-warning) 70%,var(--text));border-bottom:1px solid color-mix(in srgb,var(--role-warning) 35%,transparent);font-size:var(--fs-sm);line-height:1.35;text-align:center}.offline-banner svg{flex-shrink:0}
