@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/IBMPlexSans-Regular-Latin1.00kwdvv69ux70.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/IBMPlexMono-Regular-Latin1.0khn3spfgzv0q.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4ee;--surface:#fff;--surface-2:#edebe6;--border:#cac8c4;--divider:#e8e6e1;--text:#1a1a1a;--muted:#6b6760;--faint:#6b6760;--placeholder:#a19d95;--ink:#1a1a1a;--on-ink:#f6f4ee;--accent:#f0fb29;--on-accent:#161616;--accent-edge:#cac8c4;--danger:#b91c1c;--qr-ink:#1a1a1a;--edge:1.5px;--r-card:16px;--r-field:16px;--r-pill:999px;--sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--t:.16s;--ease:cubic-bezier(.22, 1, .36, 1)}:is(:root:has(main.store),:root:has(main.store-done)){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4ee;--surface:#fff;--surface-2:#edebe6;--border:#cac8c4;--divider:#e8e6e1;--text:#1a1a1a;--muted:#6b6760;--faint:#6b6760;--placeholder:#a19d95;--ink:#1a1a1a;--on-ink:#f6f4ee;--accent-edge:#cac8c4;--danger:#b91c1c}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}a{color:inherit}h1,h2,h3{letter-spacing:-.01em;margin:0 0 8px;font-weight:400;line-height:1.2}h1{font-size:28px}h2{font-size:20px}h3{color:var(--muted);font-size:16px}p{margin:0 0 12px}.muted{color:var(--muted)}.faint{color:var(--faint);font-size:14px}.mono{font-family:var(--mono);letter-spacing:.06em}.nix-mark{color:var(--on-accent);z-index:0;padding:0 .3em;display:inline-block;position:relative}.nix-mark:before{content:"";z-index:-1;background:var(--accent);border-radius:3px 10px 4px 12px/8px 5px 9px 6px;position:absolute;inset:.08em -.08em -.02em -.12em;transform:rotate(-1.2deg)skew(-6deg)}.header{border-bottom:var(--edge) solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex}.wordmark{font-size:15px;text-decoration:none}.wordmark .nix{color:var(--on-ink);background:var(--ink);border-radius:5px;margin-right:.3em;padding:.06em .36em}.header nav{align-items:center;gap:16px;font-size:14px;display:flex}.header{gap:12px}.header .nav-places{margin-left:20px;margin-right:auto}.header .nav-places a{color:var(--text)}.header .nav-places a.nav-admin{color:var(--faint)}@media (max-width:560px){.header:has(.nav-places){flex-wrap:wrap;row-gap:4px;height:auto;min-height:56px;padding:8px 12px 10px}.header .nav-places{flex-basis:100%;order:3;gap:14px;margin:0}:root:has(.header .nav-places){--hdr:94px}}@media (max-width:420px){.header .nav-buy{display:none}}.header nav a:not(.btn){text-decoration:none}.header nav a:not(.btn):hover{text-underline-offset:3px;text-decoration:underline}.header nav form{margin:0}.page{max-width:880px;margin:0 auto;padding:24px 16px 64px}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.card{background:var(--surface);border:var(--edge) solid var(--border);border-radius:var(--r-card);margin-bottom:16px;padding:18px 20px}.card+.card{margin-top:0}a.card{transition:border-color var(--t) var(--ease)}a.card:hover{border-color:var(--text)}.row{justify-content:space-between;align-items:center;gap:16px;display:flex}.stack{gap:12px;display:grid}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:640px){.grid-2{grid-template-columns:1fr}.page-head{flex-direction:column;align-items:flex-start}}label{color:var(--muted);gap:4px;font-size:14px;display:grid}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],select,textarea{font:inherit;color:var(--text);background:var(--surface);border:var(--edge) solid var(--border);border-radius:var(--r-field);width:100%;transition:border-color var(--t) var(--ease);padding:9px 14px}::placeholder{color:var(--placeholder);opacity:1}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:36px}textarea{resize:vertical;min-height:72px}input:hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus,select:focus,textarea:focus{outline:2px solid var(--text);outline-offset:2px;border-color:var(--text)}input[type=checkbox],input[type=radio]{accent-color:var(--ink);width:16px;height:16px;margin:0}.checks{color:var(--text);flex-wrap:wrap;gap:8px 14px;display:flex}.checks label{color:var(--text);align-items:center;gap:6px;display:inline-flex}.help{color:var(--faint);font-size:13px}.btn{font:inherit;border-radius:var(--r-pill);border:var(--edge) solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;transition:border-color var(--t) var(--ease), background var(--t) var(--ease), opacity var(--t) var(--ease);justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:15px;line-height:1.3;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--text)}.btn:focus-visible,.link-button:focus-visible,.quiet-link:focus-visible{outline:2px solid var(--text);outline-offset:2px}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.btn-primary:hover{opacity:.88;border-color:var(--ink)}.btn-accent{background:var(--accent);color:var(--on-accent);border-color:var(--accent-edge)}.btn-accent:hover{border-color:var(--on-accent)}.btn-ghost{background:0 0}.btn-small{padding:7px 15px;font-size:14px}.actions{flex-wrap:wrap;gap:8px;display:flex}.error{color:var(--danger);border:var(--edge) solid var(--danger);border-radius:var(--r-card);margin-bottom:12px;padding:10px 14px;font-size:14px}.notice{background:var(--surface-2);border-radius:var(--r-card);padding:10px 14px;font-size:14px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--divider);vertical-align:top;padding:10px 8px}tbody tr:last-child td{border-bottom:0}th{color:var(--muted);border-bottom-width:var(--edge);font-weight:400}.num{text-align:right;font-variant-numeric:tabular-nums}.pill{border-radius:var(--r-pill);border:var(--edge) solid var(--border);color:var(--muted);padding:2px 9px;font-size:12px;display:inline-block}.pill-live{color:var(--text);border-color:var(--text)}.class-live{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-top:8px;display:flex}.class-live-count{color:var(--muted);font-family:var(--mono);font-size:13px}.class-live-count .mono{color:var(--text);letter-spacing:0}.class-card{background:var(--surface);color:var(--text);border:var(--edge) solid var(--border);border-radius:var(--r-card);grid-template-columns:1fr auto;align-items:center;gap:24px;max-width:640px;padding:28px;display:grid}.class-card h2{color:var(--text);font-size:24px}.class-card .code{font-family:var(--mono);letter-spacing:.16em;border:var(--edge) solid var(--text);border-radius:var(--r-pill);margin:10px 0 12px;padding:8px 14px 8px 20px;font-size:28px;line-height:1.2;display:inline-block}.class-card .how{color:var(--muted);font-size:14px}.class-card .qr{border:var(--edge) solid var(--border);background:#fff;border-radius:12px;padding:12px;line-height:0}.class-card .qr img{width:180px;height:180px;display:block}.class-card .qr-col{flex-direction:column;align-items:center;gap:10px;display:flex}.class-card .qr-type{text-align:center}.class-card .mark{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}@media print{.header,.no-print,.site-footer{display:none!important}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:#1a1a1a;background:#fff}.page{max-width:none;padding:0}.class-card{page-break-inside:avoid;color:#1a1a1a;background:#fff;border:1.5px solid #cac8c4;border-radius:16px;max-width:none;min-height:60vh}.class-card h2,.class-card .code{color:#1a1a1a;border-color:#1a1a1a}.class-card .how,.class-card .mark{color:#6b6760}.class-card .qr-type{font-size:16px}.class-card .qr{border-color:#cac8c4}.class-card .qr img{width:320px;height:320px}}.live-card{grid-template-columns:1fr auto;max-width:none}.live-card .code{letter-spacing:.22em;font-size:64px}.live-card .qr img{width:320px;height:320px}@media (max-width:760px){.live-card{grid-template-columns:1fr}.live-card .code{font-size:40px}}body:has(main.projector)>.header{display:none}.projector{min-height:100vh;padding:12px 16px 48px}.projector-top{align-items:baseline;gap:16px;font-size:14px;display:flex}.projector-top a{text-decoration:none}.projector-top a:hover{text-underline-offset:3px;text-decoration:underline}.projector-name{color:var(--muted)}.projector-stage{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:calc(100vh - 20px);display:flex}.projector-qr{aspect-ratio:1;border-radius:var(--r-card);border:var(--edge) solid var(--border);background:#fff;width:min(78vh,92vw);padding:2%}.projector-qr svg{width:100%;height:100%;display:block}.projector-under{text-align:center;width:min(78vh,92vw)}.projector-how{margin-bottom:4px;font-size:22px}.projector-code{font-family:var(--mono);letter-spacing:.16em;margin-bottom:12px;padding-left:.16em;font-size:clamp(32px,min(9vh,12vw),120px);line-height:1.1}@media (min-aspect-ratio:5/4) and (min-width:900px){.projector-stage{flex-direction:row;gap:4vw}.projector-under{text-align:left;width:auto;max-width:36vw}.projector-code{padding-left:0;font-size:clamp(48px,min(12vh,6vw),160px)}}.projector-under .faint{font-family:var(--mono);font-size:13px}.projector-roster{max-width:960px;margin:0 auto}.eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 16px;font-size:12px}:root:has(main.home){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4ee;--surface:#fff;--surface-2:#edebe6;--border:#cac8c4;--divider:#e8e6e1;--text:#1a1a1a;--muted:#6b6760;--faint:#6b6760;--placeholder:#a19d95;--ink:#1a1a1a;--on-ink:#f6f4ee;--accent-edge:#cac8c4;--danger:#b91c1c;--dark:#181818;--d-text:#f5f5f5;--d-muted:#a0a0a0;--d-border:#515151;--d-surface:#282828;background-color:var(--bg)}body:has(>main.home){background:0 0}.home{--hdr:56px;--gut:clamp(16px, 4vw, 48px);--zx:50%;--zy:72%;text-rendering:optimizelegibility}body:has(>main.home)>.header{z-index:50;color:var(--text);border-bottom-color:#0000;position:fixed;top:0;left:0;right:0}body:has(>main.home.motion:not([data-solid]))>.header{background:0 0}body:has(>main.home[data-tone=ink])>.header{--bg:var(--dark);--text:var(--d-text);--ink:var(--d-text);--on-ink:var(--dark)}body:has(>main.home[data-tone=yellow])>.header{--bg:var(--accent);--text:var(--on-accent);--ink:var(--on-accent);--on-ink:var(--d-text)}.home .wrap{width:min(1200px, 100% - 2 * var(--gut));margin:0 auto}.home .eyebrow{letter-spacing:.14em;margin:0 0 20px;line-height:1.4}.home .lede{color:var(--muted);max-width:30ch;margin:0;font-size:22px;line-height:1.4}.home .actions{gap:12px;margin-top:28px}.home .a1{background:var(--bg);min-height:100vh;padding:calc(var(--hdr) + 40px) 0 56px;align-items:center;display:flex}.home .a1-col{text-align:center;flex-direction:column;align-items:center;gap:40px;display:flex}.home h1{letter-spacing:-.028em;text-wrap:balance;max-width:24ch;margin:0 auto;font-size:64px;line-height:1.02}.home .a1 .actions{justify-content:center;gap:8px;margin-top:28px}.home .zoom{z-index:2;text-align:left;width:100%;max-width:640px;position:relative}.home .zoom-fill{background:var(--dark);border-radius:var(--r-card);transform-origin:var(--zx) var(--zy);position:absolute;inset:0}.home .zoom-card{transform-origin:var(--zx) var(--zy);position:relative}.home .zoom .class-card{--text:var(--d-text);--muted:var(--d-muted);max-width:none;color:var(--text);background:0 0;border-color:#0000}.home .zoom .class-card h2{margin-bottom:8px}.home .zoom .class-card .qr{border-color:#fff}.home .cover{display:none}.home .a2{background:var(--dark);color:var(--d-text);min-height:100vh;padding:calc(var(--hdr) + 32px) 0 56px;align-items:center;display:flex;position:relative;overflow:hidden}.home .rules{pointer-events:none;background-image:repeating-linear-gradient(to bottom, transparent 0 55px, var(--d-surface) 55px 56px);position:absolute;inset:0}.home .a2-inner{position:relative}.home .a2 .eyebrow{color:var(--d-muted)}.home .during h2{letter-spacing:-.025em;text-wrap:balance;max-width:22ch;margin:0;font-size:clamp(28px,4.3vw,62px);line-height:1.08}.home .a2 .lede{color:var(--d-muted);text-wrap:pretty;max-width:40ch;margin-top:22px}.home .period{margin-top:clamp(48px,9vh,96px)}.home .period-head{font:12px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--d-muted);margin-bottom:14px}.home .track{border:var(--edge) solid var(--d-border);border-radius:var(--r-pill);height:64px;position:relative;overflow:hidden}.home .track i{background:var(--d-border);width:1.5px;height:12px;position:absolute;bottom:0}.home .fill{background:var(--d-text);position:absolute;inset:0}.home .fill-label{font:13px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--on-accent);white-space:nowrap;position:absolute;top:50%;right:24px;transform:translateY(-50%)}.home .times{font:14px/1.4 var(--mono);letter-spacing:.06em;color:var(--d-muted);justify-content:space-between;margin-top:14px;display:flex}.home .times .end{color:var(--d-text)}.home .stage-b{background:var(--accent);color:var(--on-accent);min-height:100vh;padding:calc(var(--hdr) + 32px) 0 56px;align-items:center;display:flex}.home .stage-b .eyebrow{color:var(--on-accent)}.home .b-grid{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.home .stage-b h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(34px,4.6vw,66px);line-height:1.06}.home .stage-b .lede{color:var(--on-accent);text-wrap:pretty;max-width:34ch;margin-top:22px}.home .row-card{border:var(--edge) solid var(--on-accent);border-radius:var(--r-card);justify-self:end;width:100%;max-width:520px;padding:22px 28px 28px}.home .rc-head{border-bottom:var(--edge) solid var(--on-accent);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:14px;display:flex}.home .rc-head h3{color:inherit;margin:0;font-size:16px}.home .rc-count{font:13px var(--mono)}.home .rc-name{letter-spacing:-.015em;margin-top:28px;font-size:clamp(30px,3.2vw,44px);line-height:1.1}.home .rc-state{margin-top:10px;font-size:clamp(19px,1.8vw,24px);line-height:1.35}.home .rc-state .faint{color:inherit;font-size:inherit}.home .rc-state .presence{border-color:var(--on-accent);color:inherit;vertical-align:3px;margin-left:10px;padding:1px 9px;font-size:12px}.home .rc-time{font:15px var(--mono);letter-spacing:.06em;margin-top:22px}.home .rc-time .lbl{letter-spacing:.14em;text-transform:uppercase;margin-right:12px;font-size:11px}.home .flip{vertical-align:top;display:inline-grid}.home .flip>span{white-space:nowrap;grid-area:1/1}.home .flip .was{display:none}.home .act-c{background:var(--bg);padding-top:clamp(96px,14vh,140px)}.home .attend h2{letter-spacing:-.02em;text-wrap:balance;max-width:24ch;margin:0;font-size:clamp(28px,3.3vw,44px);line-height:1.12}.home .attend .lede{text-wrap:pretty;max-width:44ch;margin-top:16px;font-size:20px}.home .csv{background:var(--surface);border:var(--edge) solid var(--border);border-radius:var(--r-card);font:12px/1.7 var(--mono);color:var(--muted);margin:32px 0 0;padding:20px 22px;overflow-x:auto}.home .csv-line{white-space:pre;display:block}.home .csv-line:first-child{color:var(--text)}.home .badge-row{flex-wrap:nowrap;align-items:center;gap:14px 16px;margin-top:24px;display:flex}.home .store-badge{border-radius:8px;line-height:0;display:inline-block}.home .store-badge img{width:auto;height:48px;display:block}.home .store-badge:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.home .closer{padding:clamp(112px,16vh,168px) 0 clamp(96px,13vh,132px)}.home .closer h2{letter-spacing:-.03em;margin:0;font-size:clamp(44px,6.6vw,96px);line-height:1}.home .closer .lede{max-width:34ch;margin-top:18px;font-size:20px}.home .site-footer{background:0 0}.home .site-footer .page{max-width:none;width:min(1200px, 100% - 2 * var(--gut));padding-left:0;padding-right:0}@media (max-width:760px){.home .a1{padding:calc(var(--hdr) + 20px) 0 24px}.home .a1-col{gap:28px}.home h1{font-size:40px;line-height:1.05}.home .a1 .actions{margin-top:22px}.home .eyebrow{margin-bottom:14px}.home .lede{font-size:18px}.home .actions{gap:10px;margin-top:20px}.home .zoom .class-card{grid-template-columns:1fr auto;gap:14px;padding:18px}.home .zoom .class-card h2{margin-bottom:0;font-size:17px}.home .zoom .class-card .code{margin:10px 0;padding:6px 10px 6px 14px;font-size:20px}.home .zoom .class-card .how{font-size:13px;line-height:1.4}.home .zoom .class-card .how+.how{display:none}.home .zoom .class-card .qr{border-radius:10px;justify-self:auto;padding:8px}.home .zoom .class-card .qr-col{justify-self:auto}.home .zoom .class-card .qr-type{display:none}.home .zoom .class-card .qr img{width:104px;height:104px}.home .track{height:52px}.home .fill-label{font-size:11px;right:18px}.home .times{font-size:12px}.home .b-grid{grid-template-columns:1fr;gap:36px}.home .row-card{justify-self:stretch;max-width:none;padding:18px 20px 22px}.home .rc-name{margin-top:22px}.home .csv{padding:16px;font-size:12px;overflow-x:visible}.home .csv-line{white-space:pre-wrap;word-break:break-all}.home .closer .lede{font-size:18px}.home .store-badge img{height:42px}.home .a2 .lede,.home .stage-b .lede,.home .attend .lede{margin-top:14px;font-size:17px}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.home .act-a{z-index:3;height:300vh;position:relative}.home .act-b{z-index:2;height:360vh;margin-top:-100vh;position:relative}.home .act-c{z-index:4;margin-top:-100vh;position:relative}.home .stage{height:100vh;min-height:0;position:sticky;top:0;overflow:hidden}.home .stage-a{background:var(--bg)}.home .a1,.home .a2{background:0 0;min-height:0;position:absolute;inset:0}.home .a1{z-index:1}.home .cover{z-index:2;background:var(--dark);pointer-events:none;display:block;position:absolute;inset:0}.home .a2{z-index:3;pointer-events:none}.home .zoom-fill,.home .zoom-card{will-change:transform}.home .flip .was{display:block}.home .act-a{view-timeline-name:--a}.home .act-b{view-timeline-name:--b}.home .ta{animation-timeline:--a}.home .tb{animation-timeline:--b}.home .ta,.home .tb{animation-timing-function:linear;animation-fill-mode:both;animation-range:contain}.home .rise{animation:linear both rise;animation-timeline:view();animation-range:entry entry 60%}.home .csv{view-timeline-name:--csv}.home .csv-line{animation:steps(48,end) both typed;animation-timeline:--csv}.home .csv-line:first-child{animation-range:entry 100% cover 42%}.home .csv-line:nth-child(2){animation-range:cover 38% cover 52%}.home .csv-line:nth-child(3){animation-range:cover 48% cover 62%}.home .csv-line:nth-child(4){animation-range:cover 58% cover 72%}@media (max-width:760px){.home .csv-line{animation-name:line-in;animation-timing-function:linear}}}.home.raf .act-a{z-index:3;height:300vh;position:relative}.home.raf .act-b{z-index:2;height:360vh;margin-top:-100vh;position:relative}.home.raf .act-c{z-index:4;margin-top:-100vh;position:relative}.home.raf .stage{height:100vh;min-height:0;position:sticky;top:0;overflow:hidden}.home.raf .stage-a{background:var(--bg)}.home.raf .a1,.home.raf .a2{background:0 0;min-height:0;position:absolute;inset:0}.home.raf .a1{z-index:1}.home.raf .cover{z-index:2;background:var(--dark);pointer-events:none;display:block;position:absolute;inset:0}.home.raf .a2{z-index:3;pointer-events:none}.home.raf .zoom-fill,.home.raf .zoom-card{will-change:transform}.home.raf .flip .was{display:block}.home.raf .ta,.home.raf .tb{animation-duration:1s;animation-timing-function:linear;animation-play-state:paused;animation-fill-mode:both}.home.raf .ta{animation-delay:calc(var(--pa,0) * -1s)}.home.raf .tb{animation-delay:calc(var(--pb,0) * -1s)}.home.raf .rise{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.home.raf .rise.in{opacity:1;transform:none}.home.raf .csv .csv-line{opacity:0;transition:opacity .5s}.home.raf .csv.in .csv-line{opacity:1}.home.raf .csv.in .csv-line:nth-child(2){transition-delay:.25s}.home.raf .csv.in .csv-line:nth-child(3){transition-delay:.5s}.home.raf .csv.in .csv-line:nth-child(4){transition-delay:.75s}.home .hero-text{animation-name:hero-up}.home .zoom-fill{animation-name:zfill}.home .zoom-card{animation-name:zcard}.home .cover{animation-name:cover}.home .rules{animation-name:rules-in}.home .during{animation-name:during-in}.home .period{animation-name:period-in}.home .fill-label{animation-name:label-in}.home .fill{animation-name:fill}.home .times .end{animation-name:end-in}.home .b-grid{animation-name:b-move}.home .flip .was{animation-name:flip-out}.home .flip .becomes{animation-name:flip-in}@keyframes hero-up{0%,2%{opacity:1;visibility:visible;transform:none}16%,to{opacity:0;visibility:hidden;transform:translateY(-36px)}}@keyframes zfill{0%{transform:scale(1)}8%{transform:scale(1.12)}18%{transform:scale(1.9)}24%{transform:scale(3)}28%{transform:scale(5)}32%,to{transform:scale(8)}}@keyframes zcard{0%{opacity:1;transform:scale(1)}8%{transform:scale(1.12)}12%{opacity:1}18%{transform:scale(1.9)}22%{opacity:0}24%,to{opacity:0;transform:scale(3)}}@keyframes cover{0%,24%{opacity:0}29%,to{opacity:1}}@keyframes rules-in{0%,26%{opacity:0}36%,to{opacity:1}}@keyframes during-in{0%,27%{opacity:0;transform:translateY(40px)}37%,to{opacity:1;transform:none}}@keyframes period-in{0%,32%{opacity:0;transform:translateY(40px)}42%,to{opacity:1;transform:none}}@keyframes fill{0%,47%{transform:translate(-100%)}84%,to{transform:none}}@keyframes label-in{0%,53%{opacity:0}58%,to{opacity:1}}@keyframes end-in{0%,80%{opacity:.35}86%,to{opacity:1}}@keyframes b-move{0%{transform:translateY(88px)}38%,62%{transform:none}to{transform:translateY(-64px)}}@keyframes flip-out{0%,42%{opacity:1;transform:none}46%,to{opacity:0;transform:translateY(-12px)}}@keyframes flip-in{0%,45%{opacity:0;transform:translateY(12px)}49%,to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes typed{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes line-in{0%{opacity:0}to{opacity:1}}}.site-footer{border-top:var(--edge) solid var(--border);background:var(--surface)}.site-footer .page{padding-top:32px;padding-bottom:40px}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.footer-links{font-family:var(--mono);flex-wrap:wrap;gap:18px;font-size:12px;display:flex}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover{color:var(--text)}.footer-more{color:var(--muted);margin:24px 0 0;font-size:12px;line-height:1.6}.footer-more a{color:inherit}.footer-legal{border-top:1px solid var(--divider);color:var(--faint);margin:24px 0 0;padding-top:18px;font-size:12px;line-height:1.6}.legal{max-width:720px;margin:0 auto;padding:48px 16px 80px}.legal header{margin-bottom:32px}.legal h1{letter-spacing:-.02em;margin:0 0 8px;font-size:34px}.legal h2{margin:36px 0 10px;font-size:20px}.legal p,.legal li{font-size:15px;line-height:1.7}.legal ul{padding-left:20px}.legal li{margin-bottom:6px}.legal .effective{font-family:var(--mono);color:var(--muted);font-size:12px}.legal .callout{background:var(--surface);border:var(--edge) solid var(--border);border-radius:var(--r-card);margin:24px 0;padding:18px 20px}.legal .callout p{margin:0}.demo-bar{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.demo-title{margin-bottom:6px;font-size:24px}.demo-intro{max-width:620px;margin-bottom:0}.demo-nav{flex-shrink:0}.demo-steps{font-family:var(--mono);letter-spacing:.04em;border-bottom:var(--edge) solid var(--border);flex-wrap:wrap;gap:6px 18px;margin:0 0 24px;padding:0 0 12px;font-size:12px;list-style:none;display:flex}.demo-steps a{color:var(--faint);padding:5px 0;text-decoration:none;display:inline-block}.demo-steps a:hover{color:var(--text)}.demo-steps li[aria-current] a{color:var(--text);border-bottom:2px solid var(--text);padding-bottom:2px}.demo-foot{margin-top:16px}@media (max-width:640px){.demo-bar{flex-direction:column}.demo .page-head .actions{width:100%}}.table-scroll{overflow-x:auto}.table-scroll table{min-width:560px}.demo-rows-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:12px;display:flex}.demo-rows-head h3{white-space:nowrap;margin:0}@media (max-width:640px){.demo-rows table{min-width:0}.demo-rows .demo-wide{display:none}}.roster{padding:0;overflow:hidden}.roster-head{border-bottom:var(--edge) solid var(--divider);justify-content:space-between;align-items:baseline;gap:16px;padding:14px 20px 12px;display:flex}.roster-head h3{color:var(--text);margin:0}.roster>h3,.roster>p{margin:0;padding:14px 20px 0}.roster>p:last-child{padding-bottom:16px}.roster table th,.roster table td{padding:11px 12px}.roster table th:first-child,.roster table td:first-child{padding-left:20px}.roster table th:last-child,.roster table td:last-child{padding-right:20px}.roster table th{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;border-bottom-width:1px;font-size:12px}.roster-count{color:var(--muted);font-family:var(--mono);font-size:13px}.roster-count .mono{color:var(--text);letter-spacing:0}.roster-head-live{flex-wrap:wrap;align-items:flex-end;gap:6px 24px;padding-bottom:14px}.roster-title h3{margin:0 0 4px}.roster-head-live .roster-title{margin-right:auto}.roster-head-live>.end-class{margin-top:0}.roster-head-live>.end-class-ask{flex-basis:100%;margin-top:8px}.roster-count-big{font-family:var(--sans);color:var(--text);margin:0;font-size:20px;line-height:1.25}.roster-count-big .mono{font-size:20px}.roster-when{text-align:right;gap:2px;margin:0;display:grid}.roster-when-label{color:var(--muted);font-size:14px}.roster-when-line{font-size:15px}.roster-not_here td:first-child{color:var(--muted)}.roster td:nth-child(3){font-family:var(--mono);font-size:13px}.roster td:nth-child(3) .link-button{font-family:var(--sans)}.presence{white-space:nowrap;font-family:var(--mono);border-radius:var(--r-pill);border:var(--edge) solid var(--border);color:var(--muted);margin-left:8px;padding:1px 8px;font-size:13px;line-height:1.5;display:inline-block}.presence-lost_contact{border-style:dashed}.roster td:first-child,.roster td:nth-child(3){white-space:nowrap}.roster-note{border-top:1px solid var(--divider);margin:0;padding:12px 20px 16px;font-size:13px}@media (max-width:640px){.roster td:nth-child(3){white-space:normal}.roster td:nth-child(3) .late-note{display:block}.roster td:nth-child(3) .late-sep{display:none}}.end-class{margin-top:12px}.end-class-ask{border:var(--edge) solid var(--border);border-radius:var(--r-card);background:var(--surface);margin-top:14px;padding:14px 16px}.end-class-ask p{margin:0 0 12px}.end-class-ask .error{margin-bottom:12px}.roster-foot{padding:0 20px 16px}.meanings{gap:10px;margin:0;display:grid}.meanings div{grid-template-columns:120px 1fr;gap:12px;display:grid}.meanings dt{margin:0}.meanings dd{color:var(--muted);margin:0}.roster .last-heard{white-space:nowrap;font-size:13px;line-height:1.4;display:block}.roster-meanings{margin:10px 0 16px}.roster-meanings>summary{cursor:pointer;width:fit-content;color:var(--muted);padding:4px 0;font-size:13px}.roster-meanings>summary:hover{color:var(--text)}.roster-meanings>summary:focus-visible{outline:2px solid var(--text);outline-offset:2px}.roster-meanings .meanings{border:var(--edge) solid var(--border);border-radius:var(--r-card);background:var(--surface);margin-top:8px;padding:14px 20px;font-size:14px}.roster-meanings-small>summary{font-size:12px}.roster-meanings-small .meanings{gap:6px;padding:10px 14px;font-size:12px}@media (max-width:640px){.meanings div{grid-template-columns:1fr;gap:2px}.roster-head{padding:12px 14px 10px}.roster>h3,.roster>p{padding-left:14px;padding-right:14px}.roster table th,.roster table td{padding:10px 8px}.roster table th:first-child,.roster table td:first-child{padding-left:14px}.roster table th:last-child,.roster table td:last-child{padding-right:14px}.roster-note{padding:10px 14px 14px}.roster-foot{padding:0 14px 14px}.roster td:nth-child(3){font-size:12px}.presence{margin-left:6px;padding:0 6px}.roster table td:first-child,.roster table td:nth-child(3){white-space:normal}.roster .since-time,.roster .mark-present{white-space:nowrap}.roster td .presence{width:fit-content;margin:2px 0 0;display:block}.roster .last-heard{white-space:normal}.roster-when{text-align:left}.roster td .mark-present{align-items:center;min-height:44px;margin:-10px 0;display:inline-flex}.end-class .btn{min-height:44px}}.class-card>div{overflow-wrap:anywhere;min-width:0}.class-card .qr{max-width:100%}.class-card .qr img{max-width:100%;height:auto}.roster td:last-child{white-space:nowrap}@media (max-width:640px){.class-card{grid-template-columns:1fr;padding:22px}.class-card .qr-col{justify-self:start}.class-card .code{font-size:24px}.live-card .qr img{width:100%}}.header nav{white-space:nowrap}@media (max-width:560px){.header .nav-name{display:none}}@media (max-width:480px){.header{padding:0 12px}.header nav{gap:10px;font-size:13px}.header nav .btn-small{padding-left:12px;padding-right:12px}.wordmark{margin-right:8px}}@media (max-width:370px){.header .nav-signin{display:none}}.link-button,.quiet-link{color:var(--faint);text-underline-offset:3px;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.link-button:hover,.quiet-link:hover{color:var(--text)}.link-button:disabled{opacity:.5;cursor:default}.quiet-link{margin-left:8px}.export-link{align-self:center;margin-left:0}.export-row{align-items:center;margin-bottom:16px}.export-row .export-help{text-align:left;contain:none}.export-help{contain:inline-size;text-align:right;flex-basis:100%;margin:0;font-size:13px}.export-actions{justify-content:flex-end;max-width:360px}.export-actions .export-help{contain:none}.export-back{align-self:center;margin-left:0;padding:12px 6px}@media (max-width:640px){.export-help{text-align:left}.export-actions{justify-content:flex-start}}.session-list{margin:0;padding:0;list-style:none}.session-list li{border-top:1px solid var(--divider);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;font-size:14px;display:flex}.session-list li:first-child{border-top:0}.session-when{font-family:var(--mono);font-size:13px}.session-state{white-space:nowrap;align-items:baseline;gap:12px;display:flex}.session-cancelled .session-when{color:var(--faint);text-decoration:line-through}.session-list li:has(.session-ask){flex-wrap:wrap}.session-state:has(.session-ask){white-space:normal;flex-basis:100%}.session-ask{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;width:100%;display:flex}.sessions-past{margin:0 0 6px}.sessions-past summary{cursor:pointer;padding:4px 0 8px;font-size:13px}.sessions-past .session-list li{color:var(--muted)}.students-list{margin:0;padding:0;list-style:none}.students-list li{border-top:1px solid var(--divider);align-items:baseline;gap:16px;padding:10px 0;font-size:14px;display:flex}.students-list li:first-child{border-top:0}.students-name{flex:1;min-width:0}.students-name a{text-decoration:none}.students-name a:hover{text-underline-offset:3px;text-decoration:underline}.students-joined{font-family:var(--mono);color:var(--faint);white-space:nowrap;font-size:13px}.students-list .link-button{font-family:var(--sans)}.students-ask{flex-wrap:wrap;justify-content:space-between}.students-buttons{white-space:nowrap;gap:8px;display:inline-flex}.students-refused{flex-wrap:wrap}.students-refusal{color:var(--danger);flex-basis:100%;font-size:13px}.ledger{padding:0;position:relative;overflow:hidden}.ledger-head{border-bottom:var(--edge) solid var(--divider);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding:14px 20px 12px;display:flex}.ledger-head h3{color:var(--text);margin:0}.ledger-count{color:var(--muted);font-family:var(--mono);font-size:13px}.ledger-empty{margin:0;padding:14px 20px 16px}.ledger table th,.ledger table td{padding:11px 12px}.ledger table th:first-child,.ledger table td:first-child{white-space:nowrap;padding-left:20px}.ledger table th:last-child,.ledger table td:last-child{padding-right:20px}.ledger table th{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;border-bottom-width:1px;font-size:11px}.ledger table th.num,.ledger table td.num{text-align:right;white-space:nowrap;width:1%;padding-left:28px}.ledger .t{font-family:var(--mono);white-space:nowrap;font-size:13px}.ledger tbody tr{transition:background var(--t) var(--ease);position:relative}.ledger tbody tr:hover{background:var(--surface-2)}.ledger-link{text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;text-decoration-thickness:1px}.ledger-link:after{content:"";position:absolute;inset:0}.ledger tbody tr:hover .ledger-link{text-decoration-color:currentColor}.ledger-link:focus-visible{outline:none}.ledger-link:focus-visible:after{outline:2px solid var(--text);outline-offset:-3px;border-radius:6px}.ledger-quiet td:first-child{color:var(--muted)}.ledger-note{border-top:1px solid var(--divider);margin:0;padding:12px 20px 16px;font-size:13px}.late-note{white-space:nowrap;font-size:13px;display:block}.roster .late-note{display:inline}.checkin-inline,.at-inline{display:none}@media (max-width:640px){.ledger .col-checkin,.ledger .col-at{display:none}.ledger .at-inline{font-family:var(--mono);white-space:nowrap;margin-top:2px;font-size:12px;display:block}.ledger .checkin-inline{white-space:normal;margin-top:2px;font-size:12px;display:block}.ledger .checkin-inline .late-note{font-size:12px}.ledger-head{padding:12px 14px 10px}.ledger-empty{padding:12px 14px 14px}.ledger table th,.ledger table td{padding:10px 8px}.ledger table th:first-child,.ledger table td:first-child{padding-left:14px}.ledger table th:last-child,.ledger table td:last-child{padding-right:14px}.ledger table th{letter-spacing:.1em}.ledger table th.num,.ledger table td.num{padding-left:14px}.ledger .t{font-size:12px}.ledger-note{padding:10px 14px 14px}}.recap-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.recap-head h3{margin:0}.recap-day{color:var(--muted);font-family:var(--mono);font-size:13px}.recap-line{margin:10px 0 0;font-size:17px}.recap-bar{gap:3px;height:20px;margin-top:12px;display:flex}.recap-part{flex:1 1 0;min-width:6px}.recap-part:first-child{border-radius:6px 0 0 6px}.recap-part:last-child{border-radius:0 6px 6px 0}.recap-part:only-child{border-radius:6px}.recap-full{background:var(--ink)}.recap-partial{background:var(--muted)}.recap-not-here{background:var(--bg);border:var(--edge) solid var(--border)}.recap-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0;display:grid}.recap-legend div{min-width:0}.recap-legend dt{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:14px;display:flex}.recap-legend dd{font-family:var(--mono);color:var(--text);margin:4px 0 0;font-size:28px;line-height:1.15}.recap-swatch{border-radius:3px;flex:none;width:10px;height:10px}.recap-small{margin:14px 0 0}.recap-small+.recap-small{margin-top:4px}.recap-link{margin:14px 0 0;font-size:14px}.recap-open{text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;text-decoration-thickness:1px}.recap-open:hover{text-decoration-color:currentColor}@media (max-width:640px){.recap-legend{gap:8px}.recap-legend dd{font-size:24px}}.session-month h4{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:14px 0 2px;font-size:11px;font-weight:400}.session-month:first-of-type h4{margin-top:4px}.sessions-past .session-month h4{margin-top:8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cal-layout{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.cal{margin-bottom:0;padding:16px 14px 12px}.cal-head{justify-content:space-between;align-items:center;gap:12px;padding:0 6px 10px;display:flex}.cal-head h2{margin:0}.cal-nav{gap:8px;display:flex}.cal-step{width:36px;height:36px;padding:0;font-size:18px;line-height:1}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-dow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center;padding:4px 0 8px;font-size:11px}.cal-day{isolation:isolate;height:56px;color:var(--text);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;text-decoration:none;display:flex;position:relative}.cal-day:hover .cal-num{border-color:var(--border)}.cal-day:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.cal-num{border-radius:var(--r-pill);border:var(--edge) solid transparent;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:inline-flex}.cal-out .cal-num{color:var(--placeholder)}.cal-today .cal-num{border-color:var(--text)}.cal-sel .cal-num,.cal-sel:hover .cal-num{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.cal-band{--ring:4px;--pill:calc(32px + 2 * var(--ring))}.cal-band:before{content:"";z-index:-1;top:calc(50% - 20.5px - var(--ring));height:var(--pill);background:var(--surface-2);position:absolute;left:0;right:0}.cal-band-start:before{left:calc(50% - var(--pill) / 2);border-top-left-radius:var(--r-pill);border-bottom-left-radius:var(--r-pill)}.cal-band-end:before{right:calc(50% - var(--pill) / 2);border-top-right-radius:var(--r-pill);border-bottom-right-radius:var(--r-pill)}.cal-dots{gap:3px;height:5px;display:flex}.cal-dot{border-radius:var(--r-pill);background:var(--text);width:5px;height:5px;display:block}.cal-dot-cancelled{border:1px solid var(--muted);background:0 0}.cal-side{gap:12px;display:grid}.cal-side .card{margin-bottom:0}.cal-dayhead{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;font-size:11px}.cal-daycard .faint{margin:6px 0 0}.cal-class{gap:2px;min-width:0;display:grid}.cal-classname{font-size:15px;text-decoration:none}.cal-classname:hover{text-underline-offset:3px;text-decoration:underline}.session-cancelled .cal-classname{color:var(--faint);text-decoration:line-through}.cal-class .session-when{color:var(--muted)}.cal-confirm p{margin-bottom:8px}.cal-question{font-size:18px;line-height:1.35}.cal-confirm .actions,.cal-confirm>.btn{margin-top:12px}.cal-done{margin:0;font-size:14px}.cal-actions .btn{flex:auto}.cal-restore{text-align:center;margin:0}.cal-restore .quiet-link{margin-left:0}@media (max-width:760px){.cal-layout{grid-template-columns:1fr}.cal{padding:12px 8px 8px}.cal-day{height:50px}}.admin-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.tile{background:var(--surface);border:var(--edge) solid var(--border);border-radius:var(--r-card);padding:14px 16px 12px}.tile-number{font-family:var(--mono);color:var(--text);font-size:28px;line-height:1.1}.tile-label{color:var(--muted);margin-top:4px;font-size:14px}.tile-note{color:var(--faint);margin-top:2px;font-size:13px}.admin-search{align-items:flex-end;gap:8px;padding:14px 20px 4px;display:flex}.admin-search label{flex:1}.admin-search .help{padding:0 20px 12px}.ledger td.wrap{white-space:normal;word-break:break-word}@media (max-width:560px){.admin-search{flex-direction:column;align-items:stretch}}.chart-legend{font-family:var(--mono);color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}.chart-key{align-items:center;gap:6px;display:inline-flex}.swatch{flex:none;display:inline-block}.swatch-last{background:var(--text);width:16px;height:10px}.swatch-before{background:var(--border);width:16px;height:6px}.swatch-full,.swatch-partial,.swatch-absent{width:10px;height:10px}.swatch-full{background:var(--text)}.swatch-partial{background:var(--muted)}.swatch-absent{background:var(--border)}.swatch-floor{box-sizing:border-box;border:1.5px solid var(--muted);width:10px;height:10px}.chart-intro,.lw-intro{margin:0;padding:12px 20px 0}.lw-rows{margin-top:12px}.lw-row{border-top:1px solid var(--divider);grid-template-columns:140px minmax(0,1fr) 72px 88px;align-items:center;gap:4px 16px;padding:10px 20px;display:grid}.lw-label{color:var(--text);font-size:14px}.lw-bars{flex-direction:column;gap:3px;display:flex}.lw-last{background:var(--text);height:10px}.lw-before{background:var(--border);height:6px}.lw-some{min-width:2px}.lw-floored{color:var(--muted);font-size:13px}.lw-nums{font-family:var(--mono);color:var(--text);font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;font-size:13px;line-height:1.35;display:flex}.lw-n-before{color:var(--muted)}.lw-change{color:var(--muted);text-align:right;font-size:13px}.lw-share{color:var(--muted);grid-column:2/-1;margin:0;font-size:13px}@media (max-width:560px){.lw-row{grid-template-columns:minmax(0,1fr) auto}.lw-label{grid-area:1/1}.lw-change{grid-area:1/2}.lw-bars,.lw-floored{grid-area:2/1}.lw-nums{flex-direction:row;grid-area:2/2;gap:8px}.lw-share{grid-area:3/1/auto/-1}}.wk{grid-template-columns:minmax(56px, max-content) repeat(var(--n), minmax(0, 1fr));column-gap:0;padding:12px 20px 8px;display:grid}.wk-gutter{position:relative}.wk-max{font-family:var(--mono);color:var(--muted);font-size:11px;position:absolute;top:2px;right:8px}.wk-svg{grid-column:2/-1;display:block;overflow:visible}.chart-rule{stroke:var(--divider);stroke-width:1px}.chart-hit{fill:#0000}.chart-full{fill:var(--text)}.chart-partial{fill:var(--muted)}.chart-absent{fill:var(--border)}.chart-floor{fill:none;stroke:var(--muted);stroke-width:1.5px}.chart-sofar{fill:none;stroke:var(--text);stroke-width:1px;stroke-dasharray:3 3}.wk-label{font-family:var(--mono);color:var(--muted);white-space:nowrap;justify-content:center;padding-top:6px;font-size:11px;display:flex}.wk-rowhead{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding-right:8px;font-size:11px}.wk>.wk-rowhead{padding-top:6px}.wk-cell{font-family:var(--mono);text-align:center;color:var(--text);font-variant-numeric:tabular-nums;padding-top:6px;font-size:12px}.wk-zero{color:var(--muted)}.chart-table>summary{color:var(--muted);cursor:pointer;padding:0 20px 12px;font-size:13px}.chart-table>summary:hover{color:var(--text)}.chart-table>summary:focus-visible{outline:2px solid var(--text);outline-offset:2px}.chart-table table{border-top:1px solid var(--divider)}.chart-table-scroll{overflow-x:auto}@media (max-width:560px){.wk{grid-template-columns:40px repeat(var(--n), minmax(0, 1fr))}.wk>.wk-rowhead{grid-column:1/-1;padding-top:10px}.wk-first{grid-column-start:2}.wk-label{font-size:10px}.wk-cell{padding-top:2px;font-size:11px}}.cs-legend{padding:8px 20px 12px}.cs-row{grid-template-columns:minmax(120px, 1.2fr) repeat(var(--k), minmax(0, 1fr)) 136px;border-top:1px solid var(--divider);align-items:center;gap:0 8px;padding:10px 20px;display:grid;position:relative}.cs-head{padding-top:8px;padding-bottom:8px}.cs-week{font-family:var(--mono);color:var(--muted);white-space:nowrap;font-size:11px}.cs-class{transition:background var(--t) var(--ease)}.cs-class:hover{background:var(--surface-2)}.cs-class:hover .ledger-link{text-decoration-color:currentColor}.cs-name{overflow-wrap:anywhere;min-width:0;font-size:14px}.cs-marks{flex-wrap:wrap;gap:3px;display:flex}.cs-end{font-family:var(--mono);color:var(--muted);text-align:right;font-size:13px}.cs-row .mark,.chart-legend .mark{box-sizing:border-box;flex:none;width:10px;height:10px;display:block}.cs-row .mark-check_ins,.chart-legend .mark-check_ins{background:var(--text)}.cs-row .mark-no_check_ins,.chart-legend .mark-no_check_ins{border:1.5px solid var(--text)}.cs-row .mark-too_few,.chart-legend .mark-too_few{background:var(--border)}.cs-row .mark-cancelled,.chart-legend .mark-cancelled{background:var(--muted);height:2px;margin:4px 0}.cs-row .mark-to_come,.chart-legend .mark-to_come{border:1.5px dotted var(--muted)}@media (max-width:560px){.cs-row{grid-template-columns:repeat(var(--k), minmax(0, 1fr));gap:6px 4px}.cs-name,.cs-end{grid-column:1/-1}.cs-end{text-align:left}.cs-classhead,.cs-endhead{display:none}.cs-week{justify-content:center;display:flex}.cs-week-now{justify-content:flex-end}.cs-row .mark,.chart-legend .mark{width:8px;height:8px}.cs-row .mark-cancelled,.chart-legend .mark-cancelled{height:2px;margin:3px 0}}.gs-intro{padding-bottom:6px}.gs-row{grid-template-columns:220px minmax(0,1fr) 80px;align-items:center;gap:16px;padding:9px 20px;display:grid}.gs-label{color:var(--text);font-size:14px}.gs-rail{background:var(--surface-2);height:8px}.gs-fill{background:var(--text);height:100%}.gs-some{min-width:2px}.gs-n{font-family:var(--mono);text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.gs-line{margin:0;padding:4px 20px;font-size:14px}.gs-line:last-of-type{padding-bottom:14px}@media (max-width:560px){.gs-row{grid-template-columns:minmax(0,1fr) 72px;gap:6px 12px}.gs-label{grid-column:1/-1}}.log-count{margin:0;padding:4px 20px 12px}@media (max-width:760px){.wk-label-alt,.cs-week-alt{visibility:hidden}}@media (max-width:640px){.chart-intro,.lw-intro,.lw-row,.wk,.cs-legend,.cs-row,.gs-row,.gs-line,.log-count,.chart-table>summary{padding-left:14px;padding-right:14px}}.guide-head{margin-bottom:16px}.guide-walk{margin:0}.guide-walk video{aspect-ratio:1440/900;border:var(--edge) solid var(--border);background:var(--surface-2);border-radius:12px;width:100%;height:auto;scroll-margin-top:16px;display:block}.guide-walk figcaption{margin-top:8px;font-size:14px}.guide-toc{margin-top:28px}.guide-toc h2.eyebrow{margin-bottom:8px;font-size:12px}.guide-toc ol{border-top:var(--edge) solid var(--divider);margin:0;padding:0;list-style:none}.guide-toc li{border-bottom:var(--edge) solid var(--divider)}.guide-toc a{grid-template-columns:52px 200px 1fr;align-items:baseline;gap:4px 16px;padding:11px 4px;text-decoration:none;display:grid}.guide-toc a:hover .guide-toc-title,.guide-toc a:focus-visible .guide-toc-title{text-underline-offset:3px;text-decoration:underline}.guide-toc-time{font-family:var(--mono);color:var(--muted);font-size:13px}.guide-toc-line{color:var(--muted)}.guide-moodle{border-top:var(--edge) solid var(--border);margin-top:40px;padding-top:32px;scroll-margin-top:16px}.guide-moodle h2{margin-bottom:12px;font-size:24px}.guide-steps{gap:8px;max-width:680px;margin:0 0 12px;padding-left:22px;display:grid}.guide-steps li{padding-left:4px}.guide-moodle>p{max-width:680px}.guide-figure{margin:16px 0 0}.guide-figure img{border:var(--edge) solid var(--border);background:var(--surface);border-radius:12px;width:100%;height:auto;display:block}.guide-foot{margin-top:40px}@media (max-width:640px){.guide-toc a{grid-template-columns:44px 1fr;gap:2px 12px}.guide-toc-line{grid-column:2;font-size:15px}.guide-moodle{padding-top:28px}}.store-badge-soon{flex-direction:column;align-items:flex-start;gap:6px;display:inline-flex}.store-badge-soon button{cursor:pointer;background:0 0;border:0;padding:0;line-height:0}.store-badge-soon .store-soon{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6b6b66);min-height:1em;font-size:12px}.announcement-editor{gap:16px;display:grid}.announcement-editor select{width:100%}.announcement-preview-subject{margin:8px 0;font-weight:600}.announcement-preview{border:var(--edge) solid var(--border);background:#f6f4ee;border-radius:12px;width:100%;min-height:760px}@media (min-width:900px){.announcement-editor{grid-template-columns:1fr 1fr;align-items:start}}.store .page-head{align-items:flex-start}.store-intro{max-width:46ch}.store-notice{margin:-8px 0 16px}.store-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (min-width:760px){.store-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}.store-grid>.store-card{flex-direction:column;display:flex}.store-grid>.store-card .store-element{margin-bottom:auto}}.store-grid>.card{min-width:0;margin-bottom:0}.store-element iframe{max-width:100%}.store-grid h3{margin-bottom:10px}.stepper{align-items:center;gap:10px;margin:6px 0 8px;display:flex}.stepper .btn{flex:none;width:44px;height:44px;padding:0;font-size:20px}.stepper input[type=text]{font:inherit;color:var(--text);background:var(--surface);border:var(--edge) solid var(--border);border-radius:var(--r-field);text-align:center;width:128px;min-width:0;font-family:var(--mono);letter-spacing:.06em;font-variant-numeric:tabular-nums;transition:border-color var(--t) var(--ease);padding:4px 10px;font-size:28px;line-height:1.2}.store-refusal{color:var(--danger)}.qty-picks{flex-wrap:wrap;gap:8px;margin:10px 0 14px;display:flex}.qty-picks .btn{min-width:56px;font-family:var(--mono);letter-spacing:.04em;font-size:14px}.qty-picks .btn[aria-pressed=true]{border-color:var(--text);color:var(--text)}.store-balance{margin:0 0 4px}.store-balance .link-button{font-size:14px}.store-lines{border-top:var(--edge) solid var(--divider);margin:14px 0 8px;padding:0;list-style:none}.store-lines li{border-bottom:1px solid var(--divider);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;display:flex}.store-lines li .mono{font-size:15px}.store-lines[aria-busy=true] .store-total{opacity:.6}.store-total-row{border-bottom:0!important;padding-top:12px!important}.store-total{font-family:var(--mono);letter-spacing:.04em;transition:opacity var(--t) var(--ease);font-size:28px;line-height:1.1}.store-rules{color:var(--muted);gap:4px;margin:12px 0 0;padding-left:18px;font-size:14px;display:grid}.store-card .faint{margin-bottom:14px}.store-express{margin:0 0 6px}.store-express[data-express=loading]{opacity:0;min-height:48px}.store-express[data-express=none]{display:none}.store-express[aria-busy=true]{opacity:.6;pointer-events:none}.store-or{color:var(--faint);align-items:center;gap:12px;margin:14px 0 4px;font-size:13px;display:flex}.store-or:before,.store-or:after{content:"";border-top:1px solid var(--divider);flex:1}.store-element{min-height:220px;position:relative}.store-element-frame[data-ready=false]{opacity:0;pointer-events:none;position:absolute;inset:0}.store-element-frame[data-ready=true]{transition:opacity var(--t) var(--ease)}.store-card .error{margin:14px 0 12px}.store-pay{width:100%;margin-top:18px;padding:13px 20px;font-size:16px}.store-processor{text-align:center;margin-top:10px;font-size:13px;margin-bottom:0!important}.store-help{text-align:center;margin-top:20px}.store-skeleton-wrap{gap:4px;display:grid}.store-skeleton-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.store-skeleton-label{background:var(--surface-2);border-radius:6px;width:34%;height:12px;margin:8px 0 6px}.store-skeleton{border-radius:var(--r-field);background:var(--surface-2);border:var(--edge) solid var(--divider);height:46px}@media (prefers-reduced-motion:no-preference){.store-skeleton,.store-skeleton-label{animation:1.4s ease-in-out infinite store-breathe}@keyframes store-breathe{0%,to{opacity:1}50%{opacity:.55}}}@media (max-width:640px){.store .page-head .actions{width:100%}.stepper input[type=text]{flex:1;width:auto}.store-total{font-size:24px}}.store-done{max-width:560px}.store-done h1{margin-bottom:16px}.store-done-card .actions{margin-top:18px}.store-added{align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.seat-count{font-family:var(--mono);letter-spacing:.04em;font-size:40px;line-height:1.1}.receipt-line{font-family:var(--mono);color:var(--muted);letter-spacing:.04em;margin-top:16px;font-size:13px}.seat-line{color:var(--muted);margin:8px 0 0;font-size:14px}.seat-line .btn-small{vertical-align:baseline;margin-left:10px}.seat-banner{color:var(--text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;max-width:640px;margin:10px 0 0;display:flex}.seat-banner .btn-small{flex:none}.seat-banners{gap:8px;margin:0 0 16px;display:grid}.seat-banners .seat-banner{max-width:none;margin:0}.invite-row{margin:0 0 16px}.invite-row-class{margin:4px 0 16px}.invite-row-line{color:var(--text);margin:0;font-size:15px}.invite-row .invite-link{margin:8px 0 0}.invite-row .invite-url{padding:9px 12px;font-size:13px}.invite-row .invite-send{max-width:520px}.invite-score{font-size:13px}.invite-row .invite-score{margin:8px 0 0}.attendance-wait-line{color:var(--text);max-width:640px;margin:0;font-size:15px}.attendance-wait-actions{margin-top:12px}.attendance-wait-invite{border-top:1px solid var(--divider);margin:16px 0 0;padding-top:14px}.account-seats{align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.account-seats-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.account .ledger{margin-top:0}.account .ledger table td.wrap{white-space:normal;overflow-wrap:anywhere}.account h2{margin:28px 0 12px}.invite-link{margin:12px 0}.invite-url{box-sizing:border-box;text-align:left;width:100%;font:inherit;font-family:var(--mono);letter-spacing:.02em;color:var(--text);border:var(--edge) solid var(--border);border-radius:var(--r-field);background:var(--surface);cursor:pointer;transition:border-color var(--t) var(--ease);align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:flex}.invite-url:hover{border-color:var(--text)}.invite-url:focus-visible{outline:2px solid var(--text);outline-offset:2px}.invite-url-text{overflow-wrap:anywhere;flex:1;min-width:0}.invite-url-icon{color:var(--muted);flex:none;display:inline-flex}.invite-url[data-copied=true]{border-color:var(--text)}.invite-url[data-copied=true] .invite-url-icon{color:var(--text)}.invite-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.invite-actions:empty{display:none}.invite-send{align-items:flex-end;gap:8px;margin-top:8px;display:flex}.invite-send label{flex:1}.invite-done{margin:8px 0 0}@media (max-width:560px){.invite-send{flex-direction:column;align-items:stretch}}.account-email{gap:4px;margin-bottom:12px;display:grid}.account-label{color:var(--muted);font-size:14px}.account-email-row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.account-static{border:var(--edge) solid var(--divider);border-radius:var(--r-field);background:var(--surface-2);overflow-wrap:anywhere;min-width:0;padding:9px 14px;font-size:14px}.account-resend{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;display:inline-flex}.account-resend .link-button{font-size:14px}.account-tag{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border:var(--edge) solid var(--border);border-radius:var(--r-pill);white-space:nowrap;padding:3px 9px;font-size:11px}.account-tag-warn{color:var(--text);border-color:var(--text)}.account-form .grid-2{align-items:start;gap:12px 16px}.account-foot{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:16px;display:flex}.account-answer{margin:0}.account-foot .error{flex:220px}.account-release{justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.account-release h3{margin-bottom:4px}.account-release p{margin:0}.account-switch-form{flex:none;margin:0}.switch{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:4px 0;font-size:14px;display:inline-flex}.switch:disabled{cursor:default}.switch:focus-visible{outline:2px solid var(--text);outline-offset:3px;border-radius:var(--r-pill)}.switch-track{border-radius:var(--r-pill);background:var(--surface-2);border:var(--edge) solid var(--border);width:44px;height:26px;transition:background var(--t) var(--ease), border-color var(--t) var(--ease);position:relative}.switch-thumb{background:var(--surface);border:var(--edge) solid var(--border);width:19px;height:19px;transition:transform var(--t) var(--ease);border-radius:50%;position:absolute;top:2px;left:2px}.switch[aria-checked=true] .switch-track{background:var(--ink);border-color:var(--ink)}.switch[aria-checked=true] .switch-thumb{border-color:var(--ink);transform:translate(18px)}.switch-label{text-align:left;min-width:2.2em}.account-danger{border-color:var(--danger)}.account-danger h3{color:var(--danger)}.account-danger>p{margin-bottom:14px}.account-delete{flex-wrap:wrap;align-items:flex-end;gap:10px 12px;display:flex}.account-delete label{flex:260px}.account-delete .error{flex-basis:100%}.btn-danger{color:var(--danger);border-color:var(--danger);background:0 0}.btn-danger:hover:not(:disabled){background:var(--danger);color:var(--bg);border-color:var(--danger)}@media (max-width:560px){.account-delete{flex-direction:column;align-items:stretch}.account-delete label{flex:none}}.class-delete{margin-top:40px}.class-delete-ask{border-top:var(--edge) solid var(--divider);gap:12px;padding-top:14px;display:grid}.class-delete-ask p{margin:0}.class-delete-question{color:var(--text);font-size:16px}.class-delete-ask .class-delete-error{margin:0}@media (max-width:560px){.class-delete .btn{min-height:44px}.class-delete-ask .actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.switch-track,.switch-thumb{transition:none}}.billing-admin .card form.stack{max-width:520px}.billing-admin .row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.billing-admin .refund-input{width:84px;padding:5px 10px;font-size:14px}.billing-admin .ledger-intro{margin:0;padding:12px 20px 0}.grant-form{border-bottom:1px solid var(--divider);grid-template-columns:2fr 1fr;align-items:end;gap:12px;padding:14px 20px 16px;display:grid}.grant-form .grant-note{grid-column:1/-1}.grant-form .grant-foot{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px;display:flex}@media (max-width:560px){.grant-form{grid-template-columns:1fr}}@media (max-width:400px){.header nav:has(.nav-account){gap:7px}.header nav:has(.nav-account) .btn-small{padding-left:9px;padding-right:9px}}.home .closer .lede.lede-free{color:var(--text)}.founding-line{color:var(--muted);margin-top:18px;font-size:15px}.founding-count{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text);margin-top:6px;font-size:13px;display:inline-block}.founding-signup{margin:0 0 16px;font-size:14px}.first-run h2{margin-bottom:14px}.first-run-steps{counter-reset:first-run;gap:14px;margin:0;padding:0;list-style:none;display:grid}.first-run-step{counter-increment:first-run;min-height:26px;padding-left:38px;position:relative}.first-run-step:before{content:counter(first-run);border:var(--edge) solid var(--border);border-radius:var(--r-pill);width:26px;height:26px;font-family:var(--mono);color:var(--muted);background:var(--surface);place-items:center;font-size:12px;display:grid;position:absolute;top:0;left:0}.first-run-done:before{content:"";background:var(--ink);border-color:var(--ink)}.first-run-done:after{content:"";border:solid var(--on-ink);border-width:0 2px 2px 0;width:6px;height:11px;position:absolute;top:6px;left:10px;transform:rotate(45deg)}.first-run-text{color:var(--muted);padding-top:2px;line-height:1.45;display:block}.first-run-lead{color:var(--text)}.first-run-links{flex-wrap:wrap;gap:4px 16px;margin-top:4px;display:flex}.first-run-links .quiet-link{margin-left:0;font-size:14px}.first-run-foot{margin:16px 0 0;font-size:13px}.join-open{margin-bottom:10px}.dept-totals-help{margin:0;padding:12px 20px 0;font-size:14px}.dept-totals-through{margin:0;padding:2px 20px 0;font-size:13px}.dept-totals-counts{font-family:var(--mono);color:var(--text);margin:0;padding:12px 20px 0;font-size:13px}.dept-totals-shares{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 20px 4px;display:grid}.dept-totals-block{border-top:1px solid var(--divider);margin-top:16px}.dept-totals-block h4{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0;padding:14px 20px 8px;font-size:11px;font-weight:400}.dept-totals .table-scroll table.dept-totals-weeks{min-width:300px}.dept-totals .dept-totals-prof th{letter-spacing:0;text-transform:none;color:var(--text);padding-top:14px;font-family:inherit;font-size:14px}.dept-totals tbody tr.dept-totals-prof:hover{background:0 0}.dept-totals .dept-totals-state{white-space:normal;overflow-wrap:break-word}@media (max-width:640px){.dept-totals-help,.dept-totals-through,.dept-totals-counts{padding-left:14px;padding-right:14px}.dept-totals .table-scroll table.dept-totals-classes{min-width:0}.ledger.dept-totals table.dept-totals-classes th{white-space:normal}.ledger.dept-totals table.dept-totals-classes td.dept-totals-class-name{white-space:normal;overflow-wrap:break-word;min-width:6em}.ledger.dept-totals .dept-totals-prof th{white-space:normal}.dept-totals .dept-totals-state-line{max-width:8.5em;display:block}.dept-totals .table-scroll table.dept-totals-weeks{min-width:0}.ledger.dept-totals table thead th{white-space:normal;word-break:normal;overflow-wrap:normal;letter-spacing:.04em;font-size:10px}.ledger.dept-totals table th.num,.ledger.dept-totals table td.num{padding-left:8px}.dept-totals table.dept-totals-classes,.dept-totals table.dept-totals-classes>thead,.dept-totals table.dept-totals-classes>tbody{display:block}.dept-totals table.dept-totals-classes tr{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;display:grid}.dept-totals table.dept-totals-classes>thead>tr>th:first-child{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.dept-totals table.dept-totals-classes tr>*{width:auto}.dept-totals table.dept-totals-classes tr.dept-totals-prof>th,.ledger.dept-totals table.dept-totals-classes td.dept-totals-class-name,.dept-totals table.dept-totals-classes td[colspan="5"]{grid-column:1/-1}.dept-totals table.dept-totals-classes td[colspan="4"]{grid-column:2/-1}.ledger.dept-totals table.dept-totals-classes td.dept-totals-class-name{border-bottom:0;min-width:0;padding-bottom:2px}.ledger.dept-totals table.dept-totals-classes td.dept-totals-class-name~td{padding-top:2px}.ledger.dept-totals table.dept-totals-classes td.dept-totals-class-name~td:not(.num){padding-left:14px}.dept-totals .dept-totals-state-line{max-width:none}.dept-totals-shares{gap:8px;padding:10px 14px 4px}.dept-totals-shares .tile{padding:10px 10px 8px}.dept-totals-shares .tile-number{font-size:22px}.dept-totals-block h4{padding:12px 14px 6px}}.store-reference{margin:0 0 14px}.department .page-head{align-items:flex-start}.department-eyebrow{margin:0 0 8px}.department-hat{max-width:62ch;margin:6px 0 0}.department-card>p{margin:0 0 8px}.department-card>p:last-of-type{margin-bottom:12px}.department-card-head{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:8px;display:flex}.department-card-head h3,.department-summary{margin:0}.department-waiting{max-width:none;margin-top:14px}.department-form-title{color:var(--text);margin:14px 0 10px;font-size:16px;font-weight:400}.department-start{border-top:1px solid var(--divider);margin-top:12px;padding-top:4px}.department-start-help{max-width:62ch;margin:10px 0 0}.department-confirm{white-space:normal;gap:8px;max-width:420px;display:grid}.department-confirm p{margin:0}.department-confirm-question{color:var(--text)}.department-leave{justify-items:start;gap:8px;display:grid}.department-refusal{margin:0}.ledger table.department-members-table td.department-professor{white-space:normal;width:100%;min-width:14em}.department-name{display:block}.department-professor .department-row-actions,.department-professor .department-confirm{margin-top:10px}.ledger td.department-role-cell{white-space:normal;word-break:normal;min-width:96px}.department-members thead th.num{white-space:normal}.department-email{overflow-wrap:anywhere;margin-top:2px;font-size:13px;display:block}.department-you{vertical-align:1px;margin-left:8px}.department-member+.department-member>tr:first-child>td{border-top:1px solid var(--divider)}.department-row-actions{flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;gap:8px;display:flex}.department-row-actions .department-refusal,.department-row-actions .department-confirm{white-space:normal;flex-basis:100%;max-width:420px}.ledger tr.department-classes>td{padding-top:0;padding-bottom:12px}.ledger tbody tr.department-classes:hover{background:0 0}.table-scroll table.department-class-table{width:auto;min-width:0;margin-left:16px}.ledger .department-class-table th.num,.ledger .department-class-table td.num{width:auto}.ledger .department-class-table th,.ledger .department-class-table td{padding-top:6px;padding-bottom:6px}.ledger .department-class-table th:first-child,.ledger .department-class-table td:first-child{min-width:200px;padding-left:0}.ledger .department-class-table th.num,.ledger table.department-class-table td.wrap{white-space:normal}.department-class-table tbody tr:last-child td{border-bottom:0}.department-pause{margin-top:2px;font-size:13px;display:block}.department-invite-form{gap:12px;max-width:560px;display:grid}.department-invite-form textarea{min-height:96px}.department-invite-form .help{margin-top:6px;display:block}.department-results{gap:8px;margin:14px 0 0;padding:0;font-size:14px;list-style:none;display:grid}.department-results .department-link{margin:6px 0 0}.department-pending{border-top:1px solid var(--divider);margin-top:18px;padding-top:14px}.department-pending-title{margin:0 0 8px}.department-pending ul{margin:0;padding:0;list-style:none}.department-pending li{border-bottom:1px solid var(--divider);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 0;display:flex}.department-pending li:last-child{border-bottom:0}.department-pending-email{overflow-wrap:anywhere;min-width:0}.department-pending-date{font-family:var(--mono);font-size:12px}.department-pending-actions{justify-items:end;gap:8px;margin-left:auto;display:grid}.department-pending-actions .department-link{width:100%;margin:0}.department-totals{margin-top:16px}.department-join{max-width:560px}.department-join h1{margin-bottom:16px}.department-join-card>p{margin:0 0 10px}.department-join-form{gap:10px;margin-top:14px;display:grid}.department-join-refusal{margin:0 0 14px}.store-department+.store-notice{margin-top:0}@media (max-width:560px){.department-pending-actions{justify-items:start;width:100%;margin-left:0}}@media (max-width:640px){.department-members .table-scroll.department-members-scroll{overflow-x:visible}.table-scroll table.department-members-table{min-width:0;display:block}.department-members-table>thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.department-members-table>tbody{display:block}.department-members-table>tbody+tbody{border-top:1px solid var(--divider)}.ledger table.department-members-table>tbody>tr.department-member-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;padding:14px 14px 10px;display:grid}.ledger table.department-members-table>tbody>tr.department-member-row>td{text-align:left;white-space:normal;border:0;width:auto;padding:0;display:block}.ledger table.department-members-table>tbody>tr>td.department-professor,.ledger table.department-members-table>tbody>tr>td.department-role-cell{grid-column:1/-1;min-width:0}.ledger table.department-members-table>tbody>tr>td[data-label]:before{content:attr(data-label);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:normal;margin-bottom:2px;font-size:10px;display:block}.ledger table.department-members-table>tbody>tr>td[data-label]:empty{display:none}.ledger table.department-members-table>tbody>tr.department-member-row{row-gap:4px}.ledger table.department-members-table>tbody>tr>td.department-professor{display:contents}.department-member-row>td.department-professor>*{grid-column:1/-1}.department-member-row>td.department-professor>.department-name{order:1}.department-member-row>td.department-professor>.department-email{order:2;margin-top:0}.department-member-row>td.department-role-cell{order:3;margin-top:4px}.department-member-row>td.department-professor>.department-row-actions,.department-member-row>td.department-professor>.department-confirm{order:4;margin:6px 0 4px}.department-member-row>td.num{order:5}.ledger .department-class-table td.wrap{word-break:normal;overflow-wrap:break-word}.ledger .department-class-table th{letter-spacing:.04em}.department-member+.department-member>tr:first-child>td{border-top:0}.ledger table.department-members-table>tbody>tr.department-classes{display:block}.ledger table.department-members-table>tbody>tr.department-classes>td{border:0;padding:0 14px 12px;display:block}.table-scroll table.department-class-table{width:100%;margin-left:0}.ledger .department-class-table th:first-child,.ledger .department-class-table td:first-child{white-space:normal;overflow-wrap:break-word;min-width:0}.ledger table.department-class-table th,.ledger table.department-class-table td,.ledger table.department-class-table th.num,.ledger table.department-class-table td.num{padding-left:6px}.ledger table.department-class-table th:last-child,.ledger table.department-class-table td:last-child{padding-right:0}.ledger table.department-class-table th:first-child,.ledger table.department-class-table td:first-child{padding-left:0}.ledger table.department-members-table>tbody>tr.department-classes>td{overflow-x:auto}}.ledger table.billing-departments th.num{white-space:normal}.ledger table.billing-departments th.num,.ledger table.billing-departments td.num{padding-left:10px}.ledger table.billing-departments td.billing-department-name,.ledger table.billing-departments td.billing-department-school{white-space:normal;word-break:normal;overflow-wrap:break-word}.ledger table.billing-departments td.billing-department-admins{word-break:normal;min-width:11em}.billing-department-close{margin-top:6px;font-size:13px;display:block}.billing-department-admin{display:block}.billing-department-admin+.billing-department-admin{margin-top:6px}.billing-department-email,.billing-buyer{overflow-wrap:anywhere;margin-top:2px;font-size:13px;display:block}.account-invite-department{margin:10px 0 0}.buy-presses{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.seat-line .buy-presses{margin-left:8px}.buy-presses .quiet-link{margin-left:0}.seat-banner .buy-presses{flex:0 auto;min-width:0;max-width:100%}.buy-presses .btn{flex:none}.store-role{margin:0 0 10px}.seat-line .department-role,.seat-banner .department-role{vertical-align:1px;margin-right:4px}.account-department-cover{max-width:46ch;margin:4px 0 0}@media (max-width:400px){.header nav:has(.nav-department){gap:6px}:is(.header nav .nav-department,.header nav:has(.nav-department) .nav-account){font-size:13px}}
