@import "https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;700;800;900&display=swap";
:root{--tv-ink:#171717;--tv-ink-soft:#2c2c2c;--tv-paper:#fffdf9;--tv-cream:#f8f3ea;--tv-shell:#f8f5ef;--tv-white:#fff;--tv-veil:#ffffff2e;--tv-veil-strong:#ffffff8c;--tv-veil-border:#ffffff6b;--tv-rose:#a9686845;--tv-ground:radial-gradient(circle at 8% 4%, var(--tv-rose), transparent 27%), linear-gradient(145deg, #fbf9f5, #f0ece1);--tv-gold:#c79a2d;--tv-gold-deep:#80611e;--tv-gold-text:var(--tv-gold-deep);--tv-gold-dash:#b48a35;--tv-gold-soft:#ead8ad;--tv-gold-hover:#4e3516;--tv-gold-gradient:linear-gradient(90deg, #4e3516, #7a5523, #a9823a, #d3b46a, #8a6328, #4e3516);--tv-progress-fill:linear-gradient(90deg, #997025, #d0ac58);--tv-border:#ded2bd;--tv-border-soft:#eadfcb;--tv-border-table:#e2d9ca;--tv-field-border:var(--tv-border);--tv-rule:var(--tv-border);--tv-ink-muted:#6b655d;--tv-placeholder:#8a847a;--tv-track:#e4ded3;--tv-danger-text:#8c2e2e;--tv-locked:#f2eee7;--tv-locked-bar:#a79e90;--tv-font-body:Heebo, Arial, sans-serif;--tv-font-display:var(--tv-font-body);--tv-font-brand:var(--tv-font-body);--tv-font-field:var(--tv-font-body);--tv-size-heading:22px;--tv-size-body:18px;--tv-size-small:14px;--tv-line-heading:1.42;--tv-line-body:1.7;--tv-radius-pill:999px;--tv-radius-button:var(--tv-radius-pill);--tv-radius-cta:12px;--tv-radius-field:14px;--tv-radius-bar:16px;--tv-radius-glass:19px;--tv-radius-card-sm:20px;--tv-radius-card:24px;--tv-radius-panel:22px;--tv-radius-hero:28px;--tv-radius-shell:26px;--tv-shadow-card:0 12px 38px #3e311c12;--tv-shadow-card-hover:0 20px 48px #2c2c2c1a;--tv-shadow-header:0 14px 40px #2c2c2c1a;--tv-shadow-hero:0 24px 70px #4a39181a;--tv-shadow-bar:0 12px 35px #0003;--tv-shadow-folder:0 12px 34px #3e311c13;--tv-focus:var(--tv-gold);--tv-focus-ring:0 0 0 4px var(--tv-rose);--tv-focus-ring-gold:0 0 0 4px #c79a2d24;--tv-overlay:#17171773;--tv-shell-border:#e7dcc7;--tv-hero-bg:#f0ece19e;--tv-hero-border:#c79a2d47;--tv-gold-border:#8b6a2e57;--tv-veil-pill:#f0ece166;--tv-bar-bg:#171717f5;--tv-bar-border:#ffffff26;--tv-bar-hint:#c9c3ba;--tv-bar-error:#ffb3a9;--tv-touch-min:44px;--tv-duration-fast:.15s;--tv-duration-default:.2s;--tv-duration-slow:.3s;--tv-easing:ease;--tv-duration-underline:.25s;--tv-easing-enter:cubic-bezier(.2, .8, .2, 1);--tv-duration-enter:.7s;--tv-duration-reveal:.62s;--tv-motion-duration-fast:var(--tv-duration-fast);--tv-motion-duration-base:var(--tv-duration-default);--tv-motion-duration-slow:var(--tv-duration-slow);--tv-motion-ease:var(--tv-easing);--tv-stagger-step:70ms;--tv-duration-grow:1.1s;--tv-duration-drawer:.45s;--tv-duration-bump:.4s;--tv-rise-distance:14px;--tv-drawer-distance:40px;--tv-tint-rose-bg:#f7e7e4;--tv-tint-rose-ink:#7a3a3a;--tv-tint-rose-mid:#b96b6b;--tv-tint-gold-bg:#f7edd3;--tv-tint-gold-ink:#6b4c10;--tv-tint-gold-mid:var(--tv-gold);--tv-tint-sage-bg:#e5eee0;--tv-tint-sage-ink:#35532f;--tv-tint-sage-mid:#6f9464;--tv-tint-sky-bg:#e3ebf3;--tv-tint-sky-ink:#2b4a68;--tv-tint-sky-mid:#5f86ad;--tv-tint-clay-bg:#f7e4d7;--tv-tint-clay-ink:#86421d;--tv-tint-clay-mid:#c7784a;--tv-tint-plum-bg:#eee5f1;--tv-tint-plum-ink:#55366a;--tv-tint-plum-mid:#8d69a6}body:has(.tv-page){background:var(--tv-ground);color:var(--tv-ink);font-family:var(--tv-font-body);font-size:var(--tv-size-body);line-height:var(--tv-line-body);background-attachment:fixed}::selection{background:var(--tv-rose);color:var(--tv-ink)}.tv-page{background:var(--tv-ground);min-height:100dvh;color:var(--tv-ink);font-family:var(--tv-font-body);background-attachment:fixed}.tv-page:has(.tv-appbar){padding-block-start:126px}.tv-h1,.tv-h2{font-family:var(--tv-font-body);font-weight:500;font-size:var(--tv-size-heading);line-height:var(--tv-line-heading);color:var(--tv-gold-text);text-align:center;overflow-wrap:anywhere;margin:0}.tv-h1--start,.tv-h2--start{text-align:start}.tv-h1--card{font-size:var(--tv-size-heading)}.tv-h1--display{letter-spacing:-.025em;color:var(--tv-gold-deep);font-size:clamp(1.75rem,4vw,2.625rem);line-height:1.2}.tv-h3{font-family:var(--tv-font-body);font-weight:700;font-size:var(--tv-size-body);color:var(--tv-ink);text-align:start;margin:0;line-height:1.5}.tv-h3,.tv-prose,.tv-meta,.tv-dd,.tv-empty__title,.tv-empty__body{overflow-wrap:anywhere}.tv-eyebrow{font-size:var(--tv-size-body);letter-spacing:.08em;color:var(--tv-gold-text);margin:0;font-weight:700;line-height:1.5}.tv-prose{font-family:var(--tv-font-body);font-size:var(--tv-size-body);line-height:var(--tv-line-body);color:var(--tv-ink);text-align:start;margin:0}.tv-prose--sm{font-size:1rem;line-height:1.85}.tv-prose--muted{color:var(--tv-ink-muted)}.tv-meta{font-family:var(--tv-font-body);font-size:var(--tv-size-small);color:var(--tv-ink-muted);text-align:start;line-height:1.6}.tv-link{color:var(--tv-ink);background-image:var(--tv-gold-gradient);transition:background-size var(--tv-duration-default) var(--tv-easing);background-position:0 100%;background-repeat:no-repeat;background-size:100% 2px;padding-block-end:2px;text-decoration:none}.tv-link:hover{background-size:100% 3px}.tv-link--quiet{color:var(--tv-ink-muted);transition:background-size var(--tv-duration-slow) var(--tv-easing);background-size:0 2px}.tv-link--quiet:hover{color:var(--tv-ink);background-size:100% 2px}.tv-container{width:100%;max-width:64rem;margin-inline:auto;padding-inline:1rem}.tv-container--wide{max-width:72rem}.tv-container--narrow{max-width:28rem}.tv-container--admin{max-width:92.5rem}.tv-rule{border:0;border-block-start:1px solid var(--tv-rule);margin:0}.tv-appbar{z-index:40;border:1px solid var(--tv-veil-border);border-radius:var(--tv-radius-glass);background:var(--tv-veil);min-block-size:96px;box-shadow:var(--tv-shadow-header);-webkit-backdrop-filter:blur(22px)saturate(1.22);backdrop-filter:blur(22px)saturate(1.22);padding:10px 18px;position:fixed;inset-block-start:15px;inset-inline:15px}.tv-appbar__inner{grid-template-columns:minmax(150px,240px) 1fr auto;align-items:center;gap:20px;min-block-size:76px;inline-size:100%;max-inline-size:1440px;margin-inline:auto;display:grid}.tv-appbar__logo{border-radius:var(--tv-radius-field);justify-content:flex-start;align-items:center;min-inline-size:0;display:flex}.tv-appbar__logo img{object-fit:contain;object-position:right center;block-size:74px;inline-size:220px;max-inline-size:100%;display:block}.tv-appbar__links{justify-content:center;align-items:center;gap:clamp(12px,2.5vw,38px);min-inline-size:0;margin:0;padding:0;list-style:none;display:flex}.tv-appbar__links a,.tv-navlink{min-block-size:var(--tv-touch-min);color:var(--tv-ink);white-space:nowrap;align-items:center;padding:12px 2px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.tv-appbar__links a:after,.tv-navlink:after{content:"";background:var(--tv-gold-gradient);block-size:2px;inline-size:0;transition:inline-size var(--tv-duration-underline) var(--tv-easing);position:absolute;inset-block-end:6px;inset-inline-start:0}.tv-appbar__links a:hover:after,.tv-navlink:hover:after,.tv-appbar__links a[aria-current=page]:after,.tv-navlink[aria-current=page]:after{inline-size:100%}.tv-appbar__links a[aria-current=page],.tv-navlink[aria-current=page]{color:var(--tv-gold-deep)}.tv-appbar__links a.tv-appbar__back{color:var(--tv-ink-muted);font-weight:500}.tv-appbar__links a.tv-appbar__back:hover{color:var(--tv-ink)}.tv-appbar__links a.tv-appbar__back:after{content:none}.tv-appbar__actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.tv-appbar-action{min-block-size:var(--tv-touch-min);border:1px solid var(--tv-gold-border);border-radius:var(--tv-radius-pill);background:var(--tv-veil-strong);color:var(--tv-ink);font-size:var(--tv-size-small);white-space:nowrap;cursor:pointer;transition:transform var(--tv-duration-default) var(--tv-easing), background var(--tv-duration-default) var(--tv-easing), color var(--tv-duration-default) var(--tv-easing);justify-content:center;align-items:center;padding:9px 15px;font-weight:700;text-decoration:none;display:inline-flex}.tv-appbar-action:hover{background:var(--tv-white);transform:translateY(-2px)}.tv-appbar-action--logout{border-color:var(--tv-ink-soft);background:var(--tv-ink-soft);color:var(--tv-white)}.tv-appbar-action--logout:hover,.tv-appbar-action--logout:focus-visible{background:var(--tv-gold-hover);border-color:var(--tv-gold-hover);color:var(--tv-white)}@media (max-width:980px){.tv-appbar{padding:9px 12px}.tv-appbar__inner{grid-template-columns:1fr auto;gap:8px}.tv-appbar__logo img{block-size:55px;inline-size:170px}.tv-appbar__links{grid-area:2/1/auto/-1;justify-content:flex-start;gap:10px;padding-inline:2px;overflow-x:auto}.tv-appbar__links a{border-radius:var(--tv-radius-pill);background:var(--tv-veil-pill);font-size:var(--tv-size-small);padding:7px 10px}.tv-page:has(.tv-appbar){padding-block-start:172px}}@media (max-width:600px){.tv-appbar{border-radius:var(--tv-radius-bar);min-block-size:0;padding:7px 9px;inset-block-start:8px;inset-inline:8px}.tv-appbar__inner{grid-template-rows:auto auto;gap:6px;min-block-size:50px}.tv-appbar__logo img{block-size:46px;inline-size:88px}.tv-appbar__links{scrollbar-width:none;gap:6px;padding:0}.tv-appbar__links a{text-align:center;flex:none;padding:7px 10px}.tv-appbar__actions{gap:5px}.tv-appbar-action{min-block-size:var(--tv-touch-min);font-size:var(--tv-size-small);padding:5px 10px}.tv-page:has(.tv-appbar){padding-block-start:128px}.tv-appbar--admin .tv-appbar__inner{grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:6px}.tv-appbar--admin .tv-appbar__links{grid-area:2/1/auto/-1;justify-content:flex-start;gap:6px;padding-inline:2px;overflow-x:auto}.tv-appbar--admin .tv-appbar__links a{border-radius:var(--tv-radius-pill);background:var(--tv-veil-pill);font-size:var(--tv-size-small);text-align:center;flex:none;padding:7px 12px}.tv-appbar--admin .tv-appbar__actions{grid-area:1/2}.tv-page:has(.tv-appbar--admin){padding-block-start:134px}.tv-link--quiet,footer>.tv-link:only-child{position:relative}.tv-link--quiet:after,footer>.tv-link:only-child:after{content:"";block-size:var(--tv-touch-min);position:absolute;inset-block-start:50%;inset-inline:0;transform:translateY(-50%)}}.tv-wordmark{color:var(--tv-ink);flex-direction:column;gap:.125rem;text-decoration:none;display:inline-flex}.tv-wordmark__name{font-family:var(--tv-font-body);font-weight:700;font-size:var(--tv-size-body);color:var(--tv-ink);line-height:1.2}.tv-wordmark__tagline{letter-spacing:.08em;color:var(--tv-gold-text);font-size:.75rem;font-weight:700}.tv-logo{border-radius:var(--tv-radius-field);inline-size:clamp(144px,22vw,220px);display:inline-block}.tv-logo img{block-size:auto;inline-size:100%;display:block}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,.tv-btn:focus-visible,.tv-btn-cta:focus-visible,.tv-appbar-action:focus-visible,.tv-navlink:focus-visible,.tv-tab:focus-visible{outline:2px solid var(--tv-focus);outline-offset:2px;border-radius:var(--tv-radius-pill)}.tv-field:focus-visible,.tv-field:focus{border-color:var(--tv-gold);box-shadow:var(--tv-focus-ring);outline:0}.tv-btn{min-block-size:var(--tv-touch-min);border-radius:var(--tv-radius-button);background:var(--tv-gold);color:var(--tv-ink);font-family:var(--tv-font-body);font-size:var(--tv-size-body);text-align:center;cursor:pointer;transition:background var(--tv-duration-default) var(--tv-easing), color var(--tv-duration-default) var(--tv-easing), transform var(--tv-duration-default) var(--tv-easing), box-shadow var(--tv-duration-default) var(--tv-easing);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:12px 22px;font-weight:800;line-height:1.2;text-decoration:none;display:inline-flex}.tv-btn:hover:not(:disabled){background:var(--tv-gold-gradient);color:var(--tv-white);transform:translateY(-1px)}.tv-btn:disabled,.tv-btn-cta:disabled{opacity:.55;cursor:not-allowed;transform:none}.tv-btn--secondary{background:var(--tv-cream);color:var(--tv-ink)}.tv-btn--secondary:hover:not(:disabled){background:var(--tv-gold-soft);color:var(--tv-ink)}.tv-btn--ghost{color:var(--tv-ink);background:0 0;background-image:var(--tv-gold-gradient);transition:background-size var(--tv-duration-underline) var(--tv-easing);background-position:0 100%;background-repeat:no-repeat;background-size:0 2px;border-color:#0000;padding:8px 12px;font-weight:700}.tv-btn--ghost:hover:not(:disabled){color:var(--tv-ink);background-size:100% 2px;transform:none}.tv-btn--danger{background:var(--tv-ink);color:var(--tv-white)}.tv-btn--danger:hover:not(:disabled){background:var(--tv-gold-hover);color:var(--tv-white)}.tv-btn-cta{min-block-size:var(--tv-touch-min);border-radius:var(--tv-radius-cta);background:var(--tv-gold-gradient);color:var(--tv-white);font-family:var(--tv-font-body);font-size:var(--tv-size-body);text-align:center;cursor:pointer;transition:transform var(--tv-duration-default) var(--tv-easing), box-shadow var(--tv-duration-default) var(--tv-easing);border:0;justify-content:center;align-items:center;gap:.5rem;padding:12px 26px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.tv-btn-cta:hover:not(:disabled){box-shadow:var(--tv-shadow-card);transform:translateY(-1px)}.tv-btn--sm,.tv-btn-cta--sm{font-size:var(--tv-size-small);padding:9px 16px}.tv-btn--lg,.tv-btn-cta--lg{padding:14px 28px}.tv-btn--block{inline-size:100%;display:flex}.tv-field{border:1px solid var(--tv-border);border-radius:var(--tv-radius-field);background:var(--tv-white);min-block-size:52px;inline-size:100%;color:var(--tv-ink);font-family:var(--tv-font-body);font-size:var(--tv-size-body);transition:border-color var(--tv-duration-default) var(--tv-easing), box-shadow var(--tv-duration-default) var(--tv-easing);padding:14px 16px;line-height:1.5}.tv-field::placeholder{color:var(--tv-placeholder)}.tv-field[aria-invalid=true]{border-color:var(--tv-danger-text)}.tv-field--textarea{min-block-size:135px;line-height:var(--tv-line-body);resize:vertical}.tv-field--select{cursor:pointer;border-radius:11px}.tv-field--auto{inline-size:auto}.tv-label{font-family:var(--tv-font-body);font-size:var(--tv-size-body);color:var(--tv-ink);text-align:start;font-weight:700;line-height:1.5;display:block}.tv-hint{font-size:var(--tv-size-small);color:var(--tv-ink-muted);text-align:start;margin:0;line-height:1.6}.tv-error{border-inline-start:3px solid var(--tv-danger-text);font-size:var(--tv-size-small);color:var(--tv-danger-text);text-align:start;padding-inline-start:.5rem;line-height:1.6;display:block}.tv-error--inline{border-inline-start:0;padding-inline-start:0}.tv-checkbox{block-size:1.25rem;inline-size:1.25rem;accent-color:var(--tv-gold-deep);cursor:pointer;flex-shrink:0}.tv-checkbox:disabled{cursor:not-allowed;opacity:.55}.tv-checkbox-row{min-block-size:var(--tv-touch-min);text-align:start;cursor:pointer;align-items:center;gap:.5rem;display:flex}.tv-checkbox-row--top{align-items:flex-start}.tv-tabs{border-block-end:1px solid var(--tv-rule)}.tv-tabs__list{flex-wrap:wrap;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.tv-tab{min-block-size:var(--tv-touch-min);color:var(--tv-ink);font-family:var(--tv-font-body);transition:background var(--tv-duration-default) var(--tv-easing), color var(--tv-duration-default) var(--tv-easing);border:1px solid #0000;border-block-end:0;border-start-start-radius:var(--tv-radius-field);border-start-end-radius:var(--tv-radius-field);align-items:center;padding:.5rem 1rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.tv-tab:hover{background:var(--tv-cream)}.tv-tab[aria-current=page]{background:var(--tv-paper);border-color:var(--tv-border);color:var(--tv-gold-deep);box-shadow:inset 0 3px 0 0 var(--tv-gold)}@media (max-width:767px){.tv-tabs--scroll{overscroll-behavior-x:contain;scrollbar-width:thin;overflow-x:auto}.tv-tabs--scroll .tv-tabs__list{flex-wrap:nowrap}.tv-tabs--scroll .tv-tab{white-space:nowrap;flex:none}}[data-student-drawer] .tv-tabs--scroll{overscroll-behavior-x:contain;scrollbar-width:thin;overflow-x:auto}[data-student-drawer] .tv-tabs--scroll .tv-tabs__list{flex-wrap:nowrap}[data-student-drawer] .tv-tabs--scroll .tv-tab{white-space:nowrap;flex:none}.tv-card{background:var(--tv-paper);border:1px solid var(--tv-border);border-radius:var(--tv-radius-card);box-shadow:var(--tv-shadow-card);transition:transform var(--tv-duration-slow) var(--tv-easing), box-shadow var(--tv-duration-slow) var(--tv-easing), border-color var(--tv-duration-slow) var(--tv-easing);padding:clamp(1.25rem,3vw,2rem);position:relative}.tv-card:before{content:"";background:var(--tv-gold);block-size:54px;inline-size:4px;position:absolute;inset-block-start:32px;inset-inline-start:0}.tv-card:hover{box-shadow:var(--tv-shadow-card-hover);transform:translateY(-3px)}.tv-card--sectioned{padding:0}.tv-card__header{border-block-end:1px solid var(--tv-rule);padding:clamp(1rem,2.5vw,1.5rem)}.tv-card__body{padding:clamp(1rem,2.5vw,1.5rem)}.tv-card__footer{border-block-start:1px solid var(--tv-rule);padding:clamp(1rem,2.5vw,1.5rem)}.tv-hero{background:var(--tv-hero-bg);border:1px solid var(--tv-hero-border);border-radius:var(--tv-radius-hero);box-shadow:var(--tv-shadow-hero);text-align:center;padding:clamp(1.5rem,5vw,3rem)}.tv-shell{background:var(--tv-shell);border:1px solid var(--tv-shell-border);border-radius:var(--tv-radius-shell);inline-size:min(1080px,100%);margin-inline:auto;padding:clamp(1.125rem,4vw,2.625rem)}.tv-note{background:var(--tv-cream);border:1px dashed var(--tv-gold);border-radius:var(--tv-radius-bar);font-size:var(--tv-size-body);color:var(--tv-ink);text-align:start;padding:1.25rem;line-height:1.65}.tv-alert{border-radius:var(--tv-radius-field);font-family:var(--tv-font-body);text-align:start;padding:1rem 1.25rem;font-size:1rem;line-height:1.7}.tv-alert--error{background:var(--tv-ink);color:var(--tv-white)}.tv-alert--success{background:var(--tv-paper);border:1px solid var(--tv-border);border-inline-start:4px solid var(--tv-gold);color:var(--tv-ink)}.tv-alert--info{background:var(--tv-cream);border:1px solid var(--tv-gold);color:var(--tv-ink)}.tv-alert__label{font-size:var(--tv-size-small);letter-spacing:.04em;margin-block-end:.25rem;font-weight:700;display:block}.tv-alert--error .tv-alert__label{color:var(--tv-gold)}.tv-alert--success .tv-alert__label,.tv-alert--info .tv-alert__label{color:var(--tv-gold-deep)}.tv-alert__title{font-weight:700;font-size:var(--tv-size-body);margin-block-end:.25rem;line-height:1.4;display:block}.tv-badge{border:1px solid var(--tv-gold);border-radius:var(--tv-radius-pill);color:var(--tv-ink);font-size:var(--tv-size-small);white-space:nowrap;background:0 0;align-items:center;gap:.25rem;padding:.25rem .75rem;font-weight:700;line-height:1.5;display:inline-flex}.tv-badge--strong{background:var(--tv-gold);color:var(--tv-ink)}.tv-badge--quiet{border-color:var(--tv-border);color:var(--tv-ink-muted)}.tv-badge--status-ink{background:var(--tv-ink);border-color:var(--tv-ink);color:var(--tv-cream)}.tv-badge--status-gold{background:var(--tv-gold);border-color:var(--tv-gold);color:var(--tv-ink)}.tv-badge--status-gold-soft{background:var(--tv-cream);border-color:var(--tv-gold);color:var(--tv-ink)}.tv-badge--status-cream{background:var(--tv-cream);border-color:var(--tv-border);color:var(--tv-ink-muted)}.tv-badge--status-ink-muted{border-color:var(--tv-ink-muted);color:var(--tv-ink-muted);background:0 0}.tv-table{border-collapse:collapse;inline-size:100%;font-family:var(--tv-font-body);color:var(--tv-ink);text-align:start;font-size:1rem;line-height:1.6}.tv-table caption{text-align:start;padding-block-end:.5rem}.tv-table th{text-align:start;border-block-end:2px solid var(--tv-gold);color:var(--tv-ink);padding:.75rem .5rem;font-weight:700}.tv-table td{border-block-end:1px solid var(--tv-border-table);vertical-align:top;padding:.75rem .5rem}.tv-table tbody tr:last-child td{border-block-end:0}.tv-table .tv-num,.tv-num{font-variant-numeric:tabular-nums;text-align:start;direction:ltr;unicode-bidi:isolate}.tv-table-scroll{-webkit-overflow-scrolling:touch;inline-size:100%;overflow-x:auto}@media (max-width:767px){.tv-table--cards,.tv-table--cards tbody,.tv-table--cards tr,.tv-table--cards td{inline-size:100%;display:block}.tv-table--cards thead{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.tv-table--cards tr{background:var(--tv-paper);border:1px solid var(--tv-border);border-radius:var(--tv-radius-card-sm);box-shadow:var(--tv-shadow-card);margin-block-end:.75rem;padding:1rem}.tv-table--cards td{border-block-end:0;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.375rem 0;display:flex}.tv-table--cards td:before{content:attr(data-label);font-size:var(--tv-size-small);color:var(--tv-ink-muted);font-weight:700}.tv-table--cards td[data-primary]:before{content:none}.tv-table--cards td[data-primary]{border-block-end:1px solid var(--tv-border-table);font-size:var(--tv-size-body);padding-block-end:.5rem;font-weight:700}}.tv-dl{margin:0}.tv-dt{color:var(--tv-ink-muted);font-weight:700;font-size:var(--tv-size-small)}.tv-dd{color:var(--tv-ink);margin:0}.tv-skeleton{background:var(--tv-cream);border-radius:var(--tv-radius-field);block-size:1rem;inline-size:100%;animation:tv-pulse var(--tv-duration-slow) var(--tv-easing) infinite alternate;border:0;display:block}@keyframes tv-pulse{0%{opacity:1}to{opacity:.55}}.tv-skeleton-card{background:var(--tv-paper);border:1px solid var(--tv-border);border-radius:var(--tv-radius-card);box-shadow:var(--tv-shadow-card);flex-direction:column;gap:.75rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.tv-progress{background:var(--tv-track);border-radius:var(--tv-radius-pill);block-size:.5rem;inline-size:100%;display:block;overflow:hidden}.tv-progress__fill{background:var(--tv-progress-fill);border-radius:inherit;block-size:100%;transition:inline-size var(--tv-duration-slow) var(--tv-easing);display:block}.tv-empty{background:var(--tv-paper);border:1px solid var(--tv-border);border-radius:var(--tv-radius-card);box-shadow:var(--tv-shadow-card);text-align:start;flex-direction:column;align-items:flex-start;gap:.75rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.tv-empty__title{font-family:var(--tv-font-body);font-weight:500;font-size:var(--tv-size-heading);line-height:var(--tv-line-heading);color:var(--tv-gold-text);margin:0}.tv-empty__body{color:var(--tv-ink);margin:0;font-size:1rem;line-height:1.85}.tv-toast-region{z-index:45;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;padding-inline:1rem;display:flex;position:fixed;inset-block-end:1.5rem;inset-inline:0}.tv-toast{background:var(--tv-bar-bg);color:var(--tv-white);border:1px solid var(--tv-bar-border);border-radius:var(--tv-radius-bar);box-shadow:var(--tv-shadow-bar);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-family:var(--tv-font-body);text-align:start;pointer-events:auto;max-inline-size:28rem;animation:tv-fade-in var(--tv-duration-default) var(--tv-easing);padding:.75rem 1.25rem;font-size:1rem;line-height:1.6}@keyframes tv-fade-in{0%{opacity:0}to{opacity:1}}.tv-savebar{z-index:20;border:1px solid var(--tv-bar-border);border-radius:var(--tv-radius-bar);background:var(--tv-bar-bg);color:var(--tv-white);box-shadow:var(--tv-shadow-bar);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:10px 14px;display:flex;position:sticky;inset-block-end:12px}.tv-savebar--busy{opacity:.6}.tv-savebar__status{font-size:.8125rem;font-weight:700;line-height:1.5;display:block}.tv-savebar__hint{color:var(--tv-bar-hint);font-size:.6875rem;line-height:1.5;display:block}.tv-savebar__error{color:var(--tv-bar-error)}.tv-scrim{z-index:50;background:var(--tv-overlay);animation:tv-fade-in var(--tv-duration-default) var(--tv-easing);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.tv-modal{background:var(--tv-paper);color:var(--tv-ink);border:1px solid var(--tv-border);border-radius:var(--tv-radius-panel);box-shadow:var(--tv-shadow-hero);text-align:start;max-block-size:calc(100dvh - 2rem);inline-size:100%;max-inline-size:28rem;padding:1.5rem;overflow-y:auto}.tv-modal__title{font-family:var(--tv-font-body);font-weight:500;font-size:var(--tv-size-heading);line-height:var(--tv-line-heading);color:var(--tv-gold-text);margin:0 0 .75rem}.tv-modal__actions{flex-wrap:wrap;gap:.75rem;margin-block-start:1.5rem;display:flex}@media (max-width:767px){.tv-savebar__status,.tv-savebar__hint{font-size:var(--tv-size-small)}.tv-scrim{align-items:flex-end;padding:0}.tv-modal{border-block-end:0;border-inline:0;border-start-start-radius:var(--tv-radius-panel);border-start-end-radius:var(--tv-radius-panel);border-end-end-radius:0;border-end-start-radius:0;max-inline-size:none}}.tv-live-status--waiting{animation:tv-pulse var(--tv-duration-slow) var(--tv-easing) infinite alternate}.tv-timeline{margin:0;padding:0;list-style:none}.tv-timeline__entry{border-block-end:1px solid var(--tv-border-table);flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.75rem 0;display:flex}.tv-timeline__entry:last-child{border-block-end:0}.tv-timeline__time{font-family:var(--tv-font-body);font-size:var(--tv-size-small);color:var(--tv-ink-muted);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;line-height:1.5}.tv-timeline__text{color:var(--tv-ink);font-size:1rem;line-height:1.6}.tv-timeline__actor{font-size:var(--tv-size-small);color:var(--tv-ink-muted)}.tv-cal-block{inline-size:100%;min-block-size:var(--tv-touch-min);border:1px solid var(--tv-border);border-radius:var(--tv-radius-field);background:var(--tv-paper);color:var(--tv-ink);font-family:var(--tv-font-body);text-align:start;cursor:pointer;padding:.5rem .75rem;font-size:.875rem;line-height:1.5;display:block}.tv-cal-block--busy{background:var(--tv-cream);color:var(--tv-ink-muted);cursor:default}.tv-cal-block--dragging{opacity:.6}.tv-cal-block--target{border:2px solid var(--tv-gold)}.tv-cal-block--rejected{border:2px solid var(--tv-ink)}.tv-cal-block__time{font-variant-numeric:tabular-nums;color:var(--tv-ink-muted);direction:ltr;unicode-bidi:isolate;display:block}.tv-product-card__state{flex-wrap:wrap;align-items:center;gap:.75rem;margin-block-start:1rem;display:flex}.tv-price{font-family:var(--tv-font-body);font-weight:700;font-size:var(--tv-size-heading);color:var(--tv-gold-deep);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;line-height:1.25}.tv-filters{margin-block-end:1rem}.tv-filters>summary{cursor:pointer;align-items:center;list-style:none;display:inline-flex}.tv-filters>summary::-webkit-details-marker{display:none}summary.tv-btn,summary.tv-btn-cta{cursor:pointer;list-style:none}summary.tv-btn::-webkit-details-marker{display:none}summary.tv-btn-cta::-webkit-details-marker{display:none}.tv-filters__body{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-block-start:.75rem}.tv-filters[open]>.tv-filters__body{display:flex}.tv-filters__body--column{flex-flow:column;align-items:stretch}@media (min-width:1024px){@supports selector(::details-content){.tv-filters>summary{display:none}}.tv-filters::details-content{content-visibility:visible}.tv-filters>.tv-filters__body{margin-block-start:0;display:flex}}[data-tv-reveal=pending]{opacity:0}.tv-tint{background:var(--tv-tint-bg);color:var(--tv-tint-ink)}.tv-tint--rose{--tv-tint-bg:var(--tv-tint-rose-bg);--tv-tint-ink:var(--tv-tint-rose-ink);--tv-tint-mid:var(--tv-tint-rose-mid)}.tv-tint--gold{--tv-tint-bg:var(--tv-tint-gold-bg);--tv-tint-ink:var(--tv-tint-gold-ink);--tv-tint-mid:var(--tv-tint-gold-mid)}.tv-tint--sage{--tv-tint-bg:var(--tv-tint-sage-bg);--tv-tint-ink:var(--tv-tint-sage-ink);--tv-tint-mid:var(--tv-tint-sage-mid)}.tv-tint--sky{--tv-tint-bg:var(--tv-tint-sky-bg);--tv-tint-ink:var(--tv-tint-sky-ink);--tv-tint-mid:var(--tv-tint-sky-mid)}.tv-tint--clay{--tv-tint-bg:var(--tv-tint-clay-bg);--tv-tint-ink:var(--tv-tint-clay-ink);--tv-tint-mid:var(--tv-tint-clay-mid)}.tv-tint--plum{--tv-tint-bg:var(--tv-tint-plum-bg);--tv-tint-ink:var(--tv-tint-plum-ink);--tv-tint-mid:var(--tv-tint-plum-mid)}@media (min-width:768px){.tv-table--nowrap th,.tv-table--nowrap td{white-space:nowrap}.tv-table--sticky-head thead th{z-index:1;background:var(--tv-cream);position:sticky;inset-block-start:0}.tv-table-scroll--capped{max-block-size:75dvh;overflow:auto}}.tv-table-rows--open tbody tr{cursor:pointer}@media (hover:hover){.tv-table-rows--open tbody tr:hover>td{background:var(--tv-cream)}}.tv-countup{font-variant-numeric:tabular-nums;white-space:nowrap;direction:ltr;unicode-bidi:isolate;inline-size:max-content;display:inline-block;position:relative}.tv-countup__stack{display:inline-grid}.tv-countup__stack>*{text-align:end;grid-area:1/1}.tv-countup__sizer{visibility:hidden}@media (prefers-reduced-motion:no-preference){.tv-rise{animation:tv-rise var(--tv-duration-reveal) var(--tv-easing-enter) both;animation-delay:calc(var(--tv-i,0) * var(--tv-stagger-step))}.tv-grow-x{transform-origin:100%;animation:tv-grow-x var(--tv-duration-grow) var(--tv-easing-enter) both;animation-delay:calc(var(--tv-duration-fast) + var(--tv-i,0) * var(--tv-stagger-step))}.tv-grow-x:not(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){transform-origin:0}.tv-drawer-in{--tv-drawer-from:calc(-1 * var(--tv-drawer-distance));animation:tv-drawer-in var(--tv-duration-drawer) var(--tv-easing-enter) both}.tv-drawer-in:not(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){--tv-drawer-from:var(--tv-drawer-distance)}.tv-fade-in{animation:tv-fade-in var(--tv-duration-slow) var(--tv-easing) both}.tv-bump,.tv-bump-host:hover .tv-bump-target,.tv-bump-host:focus-visible .tv-bump-target{animation:tv-bump var(--tv-duration-bump) var(--tv-easing)}.tv-lift{transition:transform var(--tv-duration-fast) var(--tv-easing)}.tv-lift:hover,.tv-lift:focus-visible{transform:translateY(-2px)}@keyframes tv-rise{0%{opacity:0;transform:translateY(var(--tv-rise-distance))}to{opacity:1;transform:none}}@keyframes tv-grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes tv-drawer-in{0%{opacity:0;transform:translateX(var(--tv-drawer-from))}to{opacity:1;transform:none}}@keyframes tv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tv-bump{50%{transform:scale(1.08)}}}@media (prefers-reduced-motion:reduce){body:has(.tv-page) *{transition-property:opacity!important;transition-duration:var(--tv-duration-fast)!important;transition-timing-function:var(--tv-easing)!important;animation:none!important}body:has(.tv-page) :before{transition-property:opacity!important;transition-duration:var(--tv-duration-fast)!important;transition-timing-function:var(--tv-easing)!important;animation:none!important}body:has(.tv-page) :after{transition-property:opacity!important;transition-duration:var(--tv-duration-fast)!important;transition-timing-function:var(--tv-easing)!important;animation:none!important}}
