:root{--font-display:'League Spartan',Arial,sans-serif;--font-ui:'Noto Sans',system-ui,sans-serif;--color-brand-navy:rgb(0,68,185);--color-brand-navy-deep:rgb(0,41,112);--color-brand-magenta:rgb(135,13,114);--color-white:rgb(248,248,248);--color-black:rgb(12,9,10);--color-brand-deep:rgb(2,21,55);--color-brand-deep-alt:rgb(1,28,72);--color-brand-pink:rgb(231,188,224);--color-brand-mist:#dce7f5;--color-brand-mist-fade:#b8d4e8;--color-canvas:#f5f5f7;--color-surface:#ffffff;--color-surface-secondary:#f2f2f7;--color-surface-tertiary:#e9e9ee;--color-line:rgba(60,60,67,0.12);--color-line-strong:rgba(60,60,67,0.24);--color-text:#1d1d1f;--color-text-secondary:#6e6e73;--color-text-tertiary:#98989d;--color-text-on-dark:rgba(255,255,255,0.92);--color-accent:#0a66ff;--color-accent-hover:#075be6;--color-accent-ink:#ffffff;--color-accent-soft:rgba(10,102,255,0.10);--color-accent-ring:rgba(10,102,255,0.25);--color-danger:#d92d20;--color-danger-soft:rgba(217,45,32,0.10);--color-warning:#ff9500;--color-warning-ink:#9a5b00;--color-warning-soft:rgba(255,149,0,0.12);--color-success:#248645;--color-success-soft:rgba(52,199,89,0.12);--shadow-1:0 1px 2px rgba(0,0,0,0.04),0 8px 24px rgba(0,0,0,0.06);--shadow-2:0 2px 6px rgba(0,0,0,0.06),0 16px 40px rgba(0,0,0,0.10);--shadow-accent:0 4px 12px rgba(10,102,255,0.28);--shadow-navigation:0 1px 0 rgba(248,248,248,0.08),0 0.75rem 2rem rgba(2,21,55,0.28);--radius-small:10px;--radius-medium:14px;--radius-large:18px;--radius-xlarge:22px;--radius-pill:999px;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--ease-standard:cubic-bezier(0.2,0.8,0.2,1);--transition-fast:140ms var(--ease-standard);--transition-slow:280ms var(--ease-standard);--sidebar-duration:460ms;--sidebar-ease:cubic-bezier(0.22,0.75,0.18,1);--sidebar-scrim:rgba(12,9,10,0.35);--navigation-bar-height:5.5rem;--sidebar-width:min(92vw,34rem);--content-gutter:clamp(1rem,4vw,2.5rem);--control-height:2.75rem;--control-height-small:2.35rem;--focus-ring:0 0 0 3px var(--color-accent-ring)}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes rise-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pop-in{from{opacity:0;transform:scale(0.85)}to{opacity:1;transform:scale(1)}}@keyframes drop-in{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}@keyframes slide-down{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes auto-fade-out{0%,90%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{0%,80%,100%{opacity:0.3}40%{opacity:1}}@keyframes badge-pop{0%{transform:scale(1)}50%{transform:scale(1.4)}100%{transform:scale(1)}}@keyframes ring{0%,100%{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-6deg)}}@keyframes pulse-danger{0%,100%{box-shadow:0 0 0 0 rgba(217,45,32,0.45)}50%{box-shadow:0 0 0 10px rgba(217,45,32,0)}}*,*::before,*::after{box-sizing:border-box}html{font-size:1rem;-webkit-text-size-adjust:100%}html,body{height:100%;margin:0}body{display:flex;flex-direction:column;min-height:100dvh;background:var(--color-canvas);color:var(--color-text);font-family:var(--font-ui);font-size:1rem;line-height:1.45;-webkit-font-smoothing:antialiased}.hidden,[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}svg{display:block;flex-shrink:0}svg[stroke="currentColor"]{fill:none}a{color:var(--color-accent);text-decoration:none}:where(a):hover{text-decoration:underline;text-underline-offset:2px}h1,h2,h3,h4{margin:0;font-family:var(--font-display);color:var(--color-text);letter-spacing:-0.02em;line-height:1.15;text-wrap:balance}h1{font-size:1.85rem;font-weight:800;line-height:1.1;letter-spacing:-0.03em}h2{font-size:1.25rem;font-weight:700}h3{font-size:1.05rem;font-weight:700}p{margin:0}button{font:inherit;color:inherit}.page-wrapper{display:flex;flex-direction:column;flex:1;min-width:0}.main-wrapper{flex:1;min-width:0;padding:0 var(--content-gutter)}.main-container{width:100%;margin:0 auto;min-width:0}.main-container>*{min-width:0;max-width:100%}.navbar-wrapper{--navigation-background:radial-gradient(circle at 84% -60%,color-mix(in srgb,var(--color-brand-navy) 60%,transparent),transparent 26rem),radial-gradient(circle at 6% 180%,color-mix(in srgb,var(--color-brand-magenta) 26%,transparent),transparent 18rem),linear-gradient(126deg,var(--color-brand-deep) 0%,var(--color-brand-navy-deep) 54%,var(--color-brand-deep-alt) 100%);--navigation-frost:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 11%,transparent),color-mix(in srgb,var(--color-white) 4%,transparent));--navigation-line:color-mix(in srgb,var(--color-white) 16%,transparent);--navigation-inset:inset 0 1px color-mix(in srgb,var(--color-white) 8%,transparent);position:sticky;top:0;z-index:50;isolation:isolate;width:100%;padding-top:env(safe-area-inset-top);background:var(--navigation-background);box-shadow:var(--shadow-navigation);color:#ffffff;font-family:var(--font-display)}.navbar{position:relative;display:grid;grid-template-columns:minmax(max-content,1fr) minmax(0,40rem) minmax(max-content,1fr);align-items:center;column-gap:clamp(1rem,3vw,3rem);width:90%;height:var(--navigation-bar-height);margin:0 auto}.nav-brand{grid-column:1;justify-self:start;display:grid;min-width:0;border-radius:var(--radius-small);color:#ffffff;line-height:1;text-decoration:none}.nav-brand:hover{text-decoration:none}.nav-brand:focus-visible{outline:2px solid #ffffff;outline-offset:4px}.nav-brand-kicker{display:flex;align-items:center;gap:0.5rem;margin-bottom:0.3rem;color:var(--color-brand-pink);font-size:0.66rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;white-space:nowrap}.nav-brand-kicker::before{content:"";flex:none;inline-size:1.1rem;block-size:0.1rem;background:currentColor}.nav-brand-name{padding-bottom:0.06em;font-size:clamp(1.8rem,1.45rem + 1vw,2.5rem);font-weight:700;letter-spacing:-0.03em;white-space:nowrap;background:linear-gradient(to bottom,#ffffff 0%,var(--color-brand-mist-fade) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.nav-search{position:relative;grid-column:2;min-width:0;font-family:var(--font-ui)}.nav-search-field{display:flex;align-items:center;gap:0.6rem;height:2.9rem;padding:0 0.45rem 0 0.9rem;border:1px solid var(--navigation-line);border-radius:0.55rem;background:var(--navigation-frost);box-shadow:var(--navigation-inset);color:#ffffff;cursor:text;transition:border-color 180ms ease,box-shadow 180ms ease}.nav-search-field:hover{border-color:color-mix(in srgb,var(--color-white) 32%,transparent)}.nav-search-field:focus-within{border-color:var(--color-brand-pink);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-brand-pink) 30%,transparent),var(--navigation-inset)}.nav-search-field>svg{width:1.15rem;height:1.15rem}.nav-search-field .nav-search-input,.nav-search-field .nav-search-input:hover,.nav-search-field .nav-search-input:focus,.nav-search-field .nav-search-input:focus-visible{color:#ffffff;caret-color:var(--color-brand-pink);font:inherit;font-size:1rem}.nav-search-input::placeholder{color:color-mix(in srgb,var(--color-brand-mist) 72%,transparent);opacity:1}.nav-search-input::-webkit-search-cancel-button,.nav-search-input::-webkit-search-decoration{-webkit-appearance:none;display:none}.nav-search kbd{display:inline-grid;place-items:center;min-width:1.45rem;height:1.45rem;padding:0 0.35rem;border:1px solid color-mix(in srgb,var(--color-white) 24%,transparent);border-bottom-width:2px;border-radius:0.3rem;color:var(--color-brand-mist);font-family:var(--font-ui);font-size:0.72rem;font-weight:600;line-height:1}.nav-search-shortcut{flex:none;margin-right:0.2rem;transition:opacity var(--transition-fast)}.nav-search-field:focus-within .nav-search-shortcut{opacity:0}.nav-search-close{display:none;flex:none;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:0;border-radius:50%;background:transparent;color:#ffffff;cursor:pointer}.nav-search-close:hover{background:color-mix(in srgb,var(--color-white) 10%,transparent)}.nav-search-close:focus-visible{outline:2px solid #ffffff;outline-offset:-2px}.nav-search-close svg{width:1.1rem;height:1.1rem}.nav-search-panel{position:absolute;top:calc(100% + 0.65rem);left:0;right:0;z-index:5;max-height:min(32rem,calc(100dvh - var(--navigation-bar-height) - env(safe-area-inset-top) - 2rem));overflow-y:auto;overscroll-behavior:contain;padding:0.85rem 0.5rem 0.5rem;border:1px solid var(--navigation-line);border-radius:0.85rem;background:linear-gradient(160deg,color-mix(in srgb,var(--color-brand-deep-alt) 97%,transparent),color-mix(in srgb,var(--color-brand-deep) 98%,transparent));box-shadow:0 1.75rem 5rem rgba(2,21,55,0.45),var(--navigation-inset);backdrop-filter:blur(1rem);-webkit-backdrop-filter:blur(1rem);animation:rise-in var(--transition-slow)}.nav-search-panel::before{content:"";position:absolute;top:0;left:1.25rem;width:4.5rem;height:0.2rem;background:var(--color-brand-magenta)}.nav-search-results{display:grid;gap:0.15rem;margin:0;padding:0;list-style:none}.nav-search-result{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0.85rem;padding:0.6rem 0.75rem;border-radius:0.5rem;color:#ffffff;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color 120ms ease,box-shadow 120ms ease}.nav-search-result:hover{text-decoration:none}.nav-search-option[aria-selected="true"]>.nav-search-result{background:color-mix(in srgb,var(--color-white) 9%,transparent);box-shadow:inset 3px 0 0 var(--color-brand-pink)}.nav-search-body{display:grid;gap:0.12rem;min-width:0}.nav-search-type{color:var(--color-brand-pink);font-family:var(--font-display);font-size:0.66rem;font-weight:700;letter-spacing:0.14em;line-height:1.2;text-transform:uppercase}.nav-search-title,.nav-search-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-search-title{font-size:0.98rem;font-weight:600;line-height:1.3}.nav-search-title mark,.nav-search-detail mark{border-radius:2px;background:color-mix(in srgb,var(--color-brand-pink) 22%,transparent);color:var(--color-brand-pink)}.nav-search-detail{color:var(--color-brand-mist);font-size:0.82rem;opacity:0.85}.nav-search-result svg{width:1rem;height:1rem;color:var(--color-brand-pink);opacity:0;transform:translateX(-0.35rem);transition:opacity var(--transition-fast),transform 180ms ease}.nav-search-option[aria-selected="true"] svg{opacity:1;transform:none}.nav-search-status{padding:0.6rem 0.75rem 0.4rem;color:var(--color-brand-mist);font-size:0.9rem}.nav-search-status:empty{display:none}.nav-search-keys{display:flex;flex-wrap:wrap;gap:0.35rem 1.1rem;margin-top:0.45rem;padding:0.6rem 0.75rem 0.25rem;border-top:1px solid color-mix(in srgb,var(--color-white) 10%,transparent);color:color-mix(in srgb,var(--color-brand-mist) 80%,transparent);font-size:0.75rem}.nav-search-keys span{display:inline-flex;align-items:center;gap:0.3rem}.nav-search-results:empty ~ .nav-search-keys{display:none}.nav-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:clamp(0.35rem,1.1vw,1.1rem)}.nav-action{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0.45rem;min-width:5rem;height:4.25rem;margin:0;padding:0 0.55rem;border:0;border-radius:0.6rem;background:transparent;color:#ffffff;font:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color 180ms ease}.nav-action svg{width:1.75rem;height:1.75rem;transition:transform 180ms ease}.nav-action-label{color:var(--color-brand-mist);font-family:var(--font-display);font-size:0.68rem;font-weight:700;letter-spacing:0.12em;line-height:1;text-transform:uppercase;white-space:nowrap;transition:color 180ms ease}.nav-action::after{content:"";position:absolute;left:50%;bottom:0.15rem;width:1.6rem;height:0.16rem;border-radius:var(--radius-pill);background:var(--color-brand-pink);transform:translateX(-50%) scaleX(0);transition:transform 220ms var(--ease-standard)}.nav-action:hover{background:color-mix(in srgb,var(--color-white) 8%,transparent);text-decoration:none}.nav-action:hover svg{transform:translateY(-2px)}.nav-action:active svg{transform:scale(0.92)}.nav-action:is(:hover,[aria-current="page"],[aria-expanded="true"]) .nav-action-label{color:#ffffff}.nav-action:is(:hover,[aria-current="page"],[aria-expanded="true"])::after{transform:translateX(-50%) scaleX(1)}.nav-action:focus-visible{outline:2px solid #ffffff;outline-offset:-2px}.nav-search-toggle{display:none}.nav-badge{position:absolute;top:0.3rem;left:calc(50% + 0.35rem);display:flex;align-items:center;justify-content:center;min-width:1.3rem;height:1.3rem;padding:0 0.35rem;border:2px solid var(--color-brand-navy-deep);border-radius:var(--radius-pill);background:var(--color-brand-magenta);color:#ffffff;font-family:var(--font-ui);font-size:0.66rem;font-weight:800;line-height:1;pointer-events:none}.nav-badge.is-pop{animation:badge-pop 0.5s cubic-bezier(0.175,0.885,0.32,1.275)}.footer-wrapper{width:100%;margin-top:var(--footer-gap,var(--space-6));padding:var(--space-4) var(--content-gutter);background:var(--color-brand-navy-deep);color:var(--color-white);border-top:var(--footer-rule,1px solid rgba(255,255,255,0.05))}.footer-content{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);width:90%;margin:0 auto}.footer-copy{margin:0;font-size:0.82rem;letter-spacing:0.01em;color:rgba(255,255,255,0.6)}.footer-legal{display:inline-flex;flex-wrap:wrap;gap:0.5rem;margin-inline-start:0.75rem}.footer-legal a{color:inherit;text-decoration:underline;text-underline-offset:0.2em}.footer-legal a:hover,.footer-legal a:focus-visible{color:var(--color-white)}.footer-icons{display:flex;align-items:center;gap:var(--space-3)}.footer-icons a{display:flex;padding:0.5rem;border-radius:50%;color:var(--color-white);opacity:0.7;transition:opacity var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.footer-icons a:hover{opacity:1;background:rgba(255,255,255,0.08);transform:translateY(-2px);text-decoration:none}.footer-icons a:active{background:rgba(255,255,255,0.12);transform:translateY(0) scale(0.96)}.footer-icon{width:1.25rem;height:1.25rem;fill:currentColor}.dialog{width:100%;max-width:420px;margin:auto;padding:0;border:0;background:transparent;overflow:visible}.dialog::backdrop{background:rgba(245,245,247,0.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:fade-in 0.3s ease}.dialog-card{display:flex;flex-direction:column;align-items:center;padding:2.25rem 2.5rem;border:1px solid var(--color-line);border-radius:var(--radius-xlarge);background:var(--color-surface);box-shadow:var(--shadow-2);text-align:center;animation:rise-in var(--transition-slow)}.dialog-card svg{width:3.5rem;height:3.5rem;margin-bottom:var(--space-4);color:var(--color-text-tertiary)}.dialog-card h3{margin-bottom:var(--space-2);font-size:1.3rem}.dialog-card p{margin-bottom:var(--space-5);color:var(--color-text-secondary);font-size:0.95rem;line-height:1.5}.error-banner{position:fixed;top:calc(var(--navigation-bar-height) + env(safe-area-inset-top) + 0.75rem);left:50%;z-index:60;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:min(92vw,40rem);padding:0.85rem 1rem 0.85rem 1.25rem;border-radius:var(--radius-medium);background:var(--color-danger);color:#ffffff;font-size:0.95rem;line-height:1.4;box-shadow:var(--shadow-2);transform:translateX(-50%);animation:drop-in var(--transition-slow),auto-fade-out 8s ease forwards}.error-banner-text{overflow-wrap:anywhere}.retainer-notice{margin:0 auto var(--space-3);max-width:72rem;padding:0.75rem 1rem;border-left:4px solid var(--color-warning);border-radius:var(--radius-medium);background:color-mix(in srgb,var(--color-warning) 14%,#ffffff);color:var(--color-warning-ink);font-size:0.95rem;line-height:1.45}.error-banner-close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,0.15);color:#ffffff;font-size:1.25rem;line-height:1;cursor:pointer}.error-banner-close:hover{background:rgba(255,255,255,0.28)}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin:var(--space-5) 0 var(--space-4)}.page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex:none}.page-header-identity{display:flex;align-items:center;gap:var(--space-4);min-width:0}.page-header-identity h1{font-size:1.5rem}.page-title{font-size:1.85rem}.page-subtitle{margin-top:var(--space-1);max-width:60ch;color:var(--color-text-secondary);font-size:0.92rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:0.4rem;min-height:var(--control-height);padding:0 1.1rem;border:0;border-radius:var(--radius-pill);background:var(--color-surface-secondary);color:var(--color-text);font-family:var(--font-ui);font-size:0.95rem;font-weight:600;line-height:1.3;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.button:hover{background:var(--color-surface-tertiary);text-decoration:none}.button:active{transform:scale(0.97)}.button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.button svg{width:1.1rem;height:1.1rem}.button[disabled],.button.htmx-request{opacity:0.4;pointer-events:none}.button-primary{background:var(--color-accent);color:var(--color-accent-ink);box-shadow:var(--shadow-accent)}.button-primary:hover{background:var(--color-accent-hover)}.button-quiet{background:transparent;color:var(--color-accent)}.button-quiet:hover{background:var(--color-accent-soft)}.button-danger{background:var(--color-danger-soft);color:var(--color-danger)}.button-danger:hover{background:rgba(217,45,32,0.18)}.button-small{min-height:var(--control-height-small);padding:0 0.9rem;font-size:0.88rem}.button-block{width:100%}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.icon-button svg{width:1.25rem;height:1.25rem;pointer-events:none}.icon-button:hover{background:var(--color-surface-secondary);color:var(--color-text)}.icon-button:active{transform:scale(0.92)}.icon-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.icon-button[disabled],.icon-button.htmx-request{opacity:0.45;pointer-events:none}.icon-button-filled{background:var(--color-surface-secondary);color:var(--color-text)}.icon-button-filled:hover{background:var(--color-surface-tertiary)}.icon-button-small{width:2.1rem;height:2.1rem}.icon-button-small svg{width:1rem;height:1rem}.chip{display:inline-flex;align-items:center;gap:0.3rem;padding:0.3rem 0.75rem;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--color-surface-secondary);color:var(--color-text-secondary);font-family:var(--font-ui);font-size:0.8rem;font-weight:600;cursor:pointer;user-select:none;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.chip:hover{background:var(--color-accent-soft);color:var(--color-accent)}.chip.is-active,.chip:has(input:checked){background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.chip:focus-visible,.chip:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.chip input{position:absolute;opacity:0;width:0;height:0;min-height:0;margin:0;padding:0}.chip-group{display:flex;flex-wrap:wrap;gap:0.35rem}.card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-xlarge);box-shadow:var(--shadow-1);padding:1.1rem 1.15rem}.card + .card{margin-top:0.9rem}.card-flush{padding:0;overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.card-header h2{font-size:1.08rem}.card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0.9rem}.card-grid>.card{margin-top:0}@media (min-width:960px){.card-grid-three-two{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start}}.notice{display:flex;align-items:center;gap:0.6rem;margin:0 0 0.9rem;padding:0.6rem 0.85rem;border-radius:var(--radius-medium);background:var(--color-accent-soft);color:var(--color-accent);font-size:0.85rem;line-height:1.4}.notice svg{width:1.1rem;height:1.1rem}.notice-warning{background:var(--color-warning-soft);color:var(--color-warning-ink)}.notice-danger{background:var(--color-danger-soft);color:var(--color-danger)}.notice-success{background:var(--color-success-soft);color:var(--color-success)}.empty-state{display:grid;justify-items:center;gap:var(--space-3);padding:2.5rem 1rem;color:var(--color-text-secondary);text-align:center}.status-pill{display:inline-flex;align-items:center;gap:0.35rem;min-height:1.5rem;padding:0.1rem 0.55rem;border-radius:var(--radius-pill);background:var(--color-surface-secondary);color:var(--color-text-secondary);font-size:0.72rem;font-weight:700;letter-spacing:0.01em;line-height:1.2;white-space:nowrap}.status-pill::before{content:"";width:0.375rem;height:0.375rem;border-radius:50%;background:currentColor;flex:none}.tag{display:inline-flex;padding:0.05rem 0.45rem;border-radius:6px;background:var(--color-surface-secondary);color:var(--color-text-secondary);font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase}.tag-danger{background:var(--color-danger-soft);color:var(--color-danger)}.tag-warning{background:var(--color-warning-soft);color:var(--color-warning-ink)}.tag-success{background:var(--color-success-soft);color:var(--color-success)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;padding:0.05rem 0.45rem;border-radius:var(--radius-pill);background:var(--color-surface-secondary);color:var(--color-text-secondary);font-size:0.7rem;font-weight:700;text-align:center}.count-badge-accent{background:var(--color-accent);color:var(--color-accent-ink)}.avatar{--hue:210;display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.75rem;height:2.75rem;border-radius:50%;background:linear-gradient(160deg,hsl(var(--hue) 70% 78%),hsl(var(--hue) 60% 58%));color:#ffffff;font-size:1rem;font-weight:700;letter-spacing:0.01em;text-shadow:0 1px 1px rgba(0,0,0,0.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.35)}.avatar-large{width:3.5rem;height:3.5rem;font-size:1.25rem}.hue-0{--hue:210}.hue-1{--hue:260}.hue-2{--hue:330}.hue-3{--hue:20}.hue-4{--hue:45}.hue-5{--hue:150}.hue-6{--hue:180}.hue-7{--hue:290}.vendor-logo,#toolbox .property-mark,#staffing .staff-item-mark{display:inline-grid;flex:none;place-items:center;width:2rem;height:2rem;border-radius:0.5rem;background:var(--color-text-tertiary);color:#ffffff;font-family:var(--font-display);font-weight:800}.vendor-logo-google_workspace{background:#4285f4}.vendor-logo-microsoft_365{background:#d83b01}.vendor-logo-adobe{background:#fa0f00}.vendor-logo-slack{background:#4a154b;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.25)}.vendor-logo-zoom{background:#0b5cff}.vendor-logo-google_drive{background:#1fa463}.vendor-logo-onedrive{background:#0078d4}.vendor-logo-dropbox{background:#0061ff}.vendor-logo-box{background:#0061d5}.vendor-logo-icloud{background:#3693f3}.vendor-logo-github{background:#6e5494}.vendor-logo-companycam{background:#1f8a46}.vendor-logo-other{background:var(--color-brand-magenta)}.success-badge{display:inline-flex;align-items:center;justify-content:center;width:5.5rem;height:5.5rem;border-radius:50%;background:var(--color-success);color:#ffffff;box-shadow:0 12px 32px rgba(52,199,89,0.38);animation:pop-in 520ms cubic-bezier(0.2,1.4,0.4,1) both}.success-badge svg{width:2.75rem;height:2.75rem}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.toolbar-spacer{flex:1 1 auto}.search-field{display:flex;align-items:center;gap:0.5rem;height:var(--control-height-small);margin:0;padding:0 0.85rem;border:1px solid var(--color-line);border-radius:13px;background:var(--color-surface);color:var(--color-text-tertiary);transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.search-field:focus-within{border-color:var(--color-line-strong);box-shadow:var(--focus-ring)}.search-field svg{width:1rem;height:1rem}.search-field-filled{border-color:transparent;background:var(--color-surface-secondary)}.search-field-filled:focus-within{background:var(--color-surface)}.search-field input,.search-field input:hover,.search-field input:focus,.search-field input:active,.nav-search-field .nav-search-input,.nav-search-field .nav-search-input:hover,.nav-search-field .nav-search-input:focus,.nav-search-field .nav-search-input:focus-visible{flex:1 1 auto;width:auto;min-width:0;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0;outline:none;box-shadow:none;background:transparent}.search-field input,.search-field input:hover,.search-field input:focus,.search-field input:active{color:var(--color-text);font:inherit;font-size:0.93rem}.search-field input::placeholder{color:var(--color-text-tertiary);opacity:1}.search-field input::-webkit-search-cancel-button,.search-field input::-webkit-search-decoration{-webkit-appearance:none;display:none}.segmented-control{display:flex;gap:0.25rem;padding:0.2rem;border-radius:12px;background:var(--color-surface-secondary);overflow-x:auto;scrollbar-width:none}.segmented-control::-webkit-scrollbar{display:none}.segmented-option{flex:1 0 auto;padding:0.4rem 0.8rem;border:0;border-radius:9px;background:transparent;color:var(--color-text-secondary);font-family:var(--font-ui);font-size:0.85rem;font-weight:600;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.segmented-option:hover{color:var(--color-text);text-decoration:none}.segmented-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.segmented-option.is-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-1)}.segmented-option small{margin-left:0.3rem;font-size:inherit;font-weight:600;color:var(--color-text-tertiary)}.segmented-option.is-active small{color:var(--color-accent)}.segmented-option-warning small{color:var(--color-warning)}.action-bar{position:sticky;bottom:0;z-index:5;display:flex;justify-content:flex-end;gap:0.6rem;margin-top:var(--space-2);padding:0.75rem 0.75rem calc(0.75rem + env(safe-area-inset-bottom));border:1px solid var(--color-line);border-radius:var(--radius-large);background:rgba(255,255,255,0.94);box-shadow:var(--shadow-1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.toast{position:fixed;left:50%;bottom:1.5rem;z-index:60;max-width:min(90vw,28rem);padding:0.7rem 1rem;border-radius:var(--radius-medium);background:rgba(29,29,31,0.94);color:#ffffff;font-size:0.88rem;line-height:1.4;box-shadow:var(--shadow-2);transform:translateX(-50%);animation:rise-in var(--transition-slow)}.toast.is-danger{background:var(--color-danger)}.list-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-xlarge);box-shadow:var(--shadow-1);overflow:hidden}.list-card.htmx-request{opacity:0.6}.list-row{position:relative;display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;align-items:center;column-gap:0.85rem;padding:0.8rem 0.9rem;color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast)}.list-row + .list-row::before{content:"";position:absolute;top:0;left:4.5rem;right:0.9rem;height:1px;background:var(--color-line)}.list-row:hover{background:var(--color-surface-secondary);text-decoration:none}.list-row:active{background:var(--color-surface-tertiary)}.list-row:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.list-row-main{min-width:0;display:grid;gap:0.15rem}.list-row-title{display:flex;align-items:center;gap:0.4rem;min-width:0;font-size:0.97rem;font-weight:600}.list-row-title>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-row-subtitle{font-size:0.82rem;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:0.3rem 0.6rem;margin-top:0.1rem;font-size:0.78rem;color:var(--color-text-secondary)}.list-row-side{display:grid;justify-items:end;gap:0.35rem;align-self:start;padding-top:0.15rem}.list-row-side time{font-size:0.74rem;color:var(--color-text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums}.list-row-actions{display:flex;gap:0.3rem}.pagination{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1rem;border-top:1px solid var(--color-line);font-size:0.85rem;color:var(--color-text-tertiary)}.disclosure{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-large);box-shadow:var(--shadow-1);overflow:hidden}.disclosure>summary{list-style:none;display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto 1.25rem;align-items:center;column-gap:0.75rem;min-height:3.5rem;padding:0.6rem 0.9rem 0.6rem 0.75rem;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background var(--transition-fast)}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:hover{background:var(--color-surface-secondary)}.disclosure>summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.disclosure-icon{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-small);background:var(--color-accent-soft);color:var(--color-accent)}.disclosure-icon svg{width:1.2rem;height:1.2rem}.disclosure-title{font-weight:600;font-size:0.97rem}.disclosure-subtitle{font-size:0.8rem;color:var(--color-text-tertiary)}.disclosure-hint{font-size:0.8rem;color:var(--color-text-tertiary);white-space:nowrap}.disclosure-hint:empty{display:none}.disclosure-chevron{grid-column:4;width:1.25rem;height:1.25rem;color:var(--color-text-tertiary);transition:transform var(--transition-slow)}.disclosure[open]>summary .disclosure-chevron{}.disclosure-body{display:grid;gap:0.85rem 1rem;padding:0.35rem 1rem 1.1rem;border-top:1px solid var(--color-line);animation:rise-in var(--transition-slow)}.disclosure-body-two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:600px){.disclosure-body-two-columns{grid-template-columns:1fr}}.disclosure-quiet>summary{list-style:none;cursor:pointer;font-size:0.85rem;color:var(--color-text-tertiary)}.disclosure-quiet>summary::-webkit-details-marker{display:none}.disclosure-quiet-danger>summary{color:var(--color-danger)}form{margin:0;min-width:0;--columns:minmax(0,1fr)}.form-grid{display:grid;grid-template-columns:var(--columns);gap:0.85rem 1rem;align-items:start;min-width:0}.form-span,.full-span{grid-column:1 / -1}.form-section{display:grid;gap:0.6rem;min-width:0}.form-section + .form-section{margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--color-line)}.form-section-title{margin:0;font-size:0.74rem;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;color:var(--color-text-tertiary)}.form-row-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.85rem 0.75rem}.form-row-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.85rem 0.75rem}.form-stack{display:flex;flex-direction:column;gap:0.9rem}.cols-2-tablet,.cols-3-tablet,.cols-2-desktop,.cols-3-desktop{--columns:minmax(0,1fr)}@media (min-width:769px){.cols-2-tablet{--columns:repeat(2,minmax(0,1fr))}.cols-3-tablet{--columns:repeat(3,minmax(0,1fr))}}@media (min-width:1200px){.cols-2-desktop{--columns:repeat(2,minmax(0,1fr))}.cols-3-desktop{--columns:repeat(3,minmax(0,1fr))}}.field-container{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;text-align:left}.field-container>*{width:100%;max-width:none;margin:0;min-width:0}.field-control{position:relative}.field-control.has-date-picker>input.format-date{padding-right:2.9rem}.date-picker-button{position:absolute;top:0;right:0;display:grid;place-items:center;width:2.75rem;height:100%;max-height:3.25rem;padding:0;border:0;border-radius:0 var(--radius-medium) var(--radius-medium) 0;background:none;color:var(--color-brand-magenta,currentColor);cursor:pointer;transition:background-color 160ms ease}.date-picker-button:hover{background:color-mix(in srgb,currentColor 12%,transparent)}.date-picker-button:focus-visible{outline:2px solid currentColor;outline-offset:-3px}.date-picker-button svg{width:1.2rem;height:1.2rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.date-picker-native{position:fixed;width:1px;height:1px;margin:0;padding:0;border:0;opacity:0;pointer-events:none}.field-messages{width:100%}label{display:block;margin:0 0 0.3rem 0.15rem;font-family:var(--font-ui);font-size:0.78rem;font-weight:600;letter-spacing:0.01em;color:var(--color-text-secondary)}input,textarea,select{display:block;width:100%;min-height:var(--control-height);margin:0;padding:0.65rem 0.9rem;border:1px solid var(--color-line-strong);border-radius:var(--radius-small);background:var(--color-surface);color:var(--color-text);font-family:var(--font-ui);font-size:1rem;line-height:1.4;box-shadow:0 1px 2px rgba(0,0,0,0.04);appearance:none;-webkit-appearance:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}input:hover,textarea:hover,select:hover{border-color:rgba(60,60,67,0.36)}input:focus,textarea:focus,select:focus{outline:none}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--color-accent);box-shadow:var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary);opacity:1}input[disabled],textarea[disabled],select[disabled]{background:var(--color-surface-secondary);color:var(--color-text-tertiary);cursor:not-allowed}textarea{min-height:6rem;resize:vertical}select{padding-right:2.75rem;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236e6e73' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.85rem center;background-size:1.1rem}select,select option{color:var(--color-text)}input[type='number']::-webkit-inner-spin-button,input[type='number']::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type='number']{appearance:textfield;-moz-appearance:textfield}input[type='radio']{display:inline-block;width:auto;min-height:0;margin:0;padding:0;box-shadow:none;appearance:auto;-webkit-appearance:auto}.select-small{min-height:var(--control-height-small);padding-top:0.3rem;padding-bottom:0.3rem;font-size:0.9rem}.valid-value,.valid-value:focus,.valid-value:focus-visible{outline:2px solid var(--color-success);outline-offset:0;box-shadow:0 0 0 4px var(--color-success-soft)}.invalid-value,.invalid-value:focus,.invalid-value:focus-visible{outline:2px solid var(--color-danger);outline-offset:0;box-shadow:0 0 0 4px var(--color-danger-soft)}.help-text,.error-text{width:100%;max-height:0;margin-top:0;padding:0;overflow:hidden;opacity:0;visibility:hidden;border:0 solid transparent;border-radius:8px;font-family:var(--font-ui);font-size:0.82rem;font-weight:500;line-height:1.45;text-align:left;transition:opacity 0.2s ease,max-height 0.28s ease,padding 0.28s ease,margin-top 0.28s ease,visibility 0s linear 0.28s}.help-text:not(:empty),.error-text:not(:empty){max-height:240px;margin-top:0.4rem;padding:0.45rem 0.7rem;opacity:1;visibility:visible;border-left-width:3px;transition:opacity 0.2s ease,max-height 0.28s ease,padding 0.28s ease,margin-top 0.28s ease,visibility 0s linear 0s}.help-text{background:var(--color-surface-secondary);border-color:var(--color-line-strong);color:var(--color-text-secondary)}.error-text{background:var(--color-danger-soft);border-color:var(--color-danger);color:#b3261e}.help-text ul,.error-text ul{margin:0.35rem 0 0 1.1rem;padding:0}.error-text .error-action{appearance:none;margin:0 0 0 0.5rem;padding:0;border:0;background:none;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}.error-text .error-action:hover,.error-text .error-action:focus-visible{text-decoration-thickness:2px}.field-note{font-size:0.82rem;color:var(--color-text-tertiary)}.field-saving{position:absolute;right:0.75rem;top:50%;transform:translateY(-50%);font-size:0.75rem;color:var(--color-text-tertiary)}.field-container:has(>.field-control>input[type="checkbox"]){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label control" "messages messages";align-items:center;column-gap:1rem;padding:0.5rem 0.15rem}.field-container:has(>.field-control>input[type="checkbox"])>label{grid-area:label;margin:0;font-size:0.95rem;font-weight:500;color:var(--color-text)}.field-container:has(>.field-control>input[type="checkbox"])>.field-control{grid-area:control;width:auto}.field-container:has(>.field-control>input[type="checkbox"])>.field-messages{grid-area:messages}input[type="checkbox"],input[type="checkbox"]:hover,input[type="checkbox"]:focus{position:relative;width:51px;height:31px;min-height:0;padding:0;border:0;border-radius:16px;background:var(--color-surface-tertiary);box-shadow:none;cursor:pointer;transition:background var(--transition-slow)}input[type="checkbox"]::after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#ffffff;box-shadow:0 3px 8px rgba(0,0,0,0.15),0 1px 1px rgba(0,0,0,0.06);transition:transform var(--transition-slow)}input[type="checkbox"]:checked{background:var(--color-success)}input[type="checkbox"]:checked::after{transform:translateX(20px)}input[type="checkbox"]:focus-visible{box-shadow:var(--focus-ring)}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:0.6rem;margin-top:0.9rem}.form-actions-note{margin-right:auto;font-size:0.82rem;color:var(--color-text-tertiary)}@media (max-width:600px){.form-actions{flex-direction:column-reverse;align-items:stretch}.form-actions .button{width:100%}}.confetti-layer{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:2147483647}@media (max-width:1100px){.nav-action{min-width:0;width:3.1rem;height:3.1rem;padding:0}.nav-action-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nav-action::after{bottom:0.1rem;width:1.25rem}.nav-badge{top:0.05rem;left:calc(50% + 0.2rem)}}@media (max-width:768px){:root{--navigation-bar-height:3.75rem}.navbar{grid-template-columns:minmax(0,1fr) auto;column-gap:0.5rem}.nav-actions{grid-column:2;gap:0.15rem}.nav-brand-kicker{display:none}.nav-brand-name{font-size:1.7rem}.nav-action{width:2.8rem;height:2.8rem}.nav-action svg{width:1.55rem;height:1.55rem}.nav-search-toggle{display:inline-flex}.nav-search{display:none}.navbar-wrapper.is-searching .nav-search{position:absolute;inset:0;grid-column:1 / -1;grid-row:1;z-index:2;display:flex;align-items:center;max-width:none;margin:0}.navbar-wrapper.is-searching :is(.nav-brand,.nav-actions){visibility:hidden}.navbar-wrapper.is-searching .nav-search-field{flex:1 1 auto}.nav-search-shortcut{display:none}.nav-search-close{display:inline-flex}.nav-search-panel{top:calc(100% + 0.5rem)}.footer-content{flex-direction:column-reverse;justify-content:center;text-align:center}.page-header{flex-direction:column;align-items:flex-start;margin-top:var(--space-4)}.page-header-actions{width:100%}.page-header-actions .button-primary{flex:1 1 auto}h1,.page-title{font-size:1.55rem}.card{padding:0.95rem 0.9rem;border-radius:var(--radius-large)}}@media (max-width:560px){.nav-action-secondary{display:none}}@media (max-width:380px){.nav-brand-name{font-size:1.5rem}}@media (hover:none){.nav-search-shortcut,.nav-search-keys{display:none}}@media (forced-colors:active){.nav-brand-name{background:none;color:CanvasText}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}}