:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--shell:220 24% 97%;--panel:0 0% 100%;--panel-2:220 22% 98%;--hairline:220 16% 88%;--hairline-strong:220 14% 80%;--ink:222 34% 14%;--ink-2:218 14% 38%;--ink-3:216 12% 52%;--brand:226 68% 44%;--brand-ink:226 72% 36%;--brand-soft:226 88% 96%;--brand-contrast:0 0% 100%;--good:168 76% 28%;--good-soft:168 60% 95%;--warn:33 92% 34%;--warn-soft:38 92% 94%;--bad:358 68% 44%;--bad-soft:358 84% 96%;--rail-text:218 14% 40%;--rail-text-active:226 72% 36%;--rail-icon:216 12% 55%;--rail-label:216 10% 50%;--rail-hover:220 20% 94%;--rail-active:226 88% 95%;--radius:10px;--shadow-sm:0 1px 2px #181f300f;--shadow:0 1px 2px #181f300d, 0 10px 24px -12px #181f302e;--skeleton-base:220 16% 91%;--skeleton-shine:220 20% 96%;--texture-blend:multiply;--texture-veil:93%}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--shell:224 32% 8%;--panel:223 28% 11%;--panel-2:223 26% 14%;--hairline:222 20% 20%;--hairline-strong:222 18% 28%;--ink:214 32% 92%;--ink-2:216 16% 76%;--ink-3:216 16% 72%;--brand:219 92% 72%;--brand-ink:219 92% 78%;--brand-soft:224 46% 18%;--brand-contrast:224 40% 10%;--good:164 62% 58%;--good-soft:168 40% 14%;--warn:40 88% 62%;--warn-soft:36 44% 14%;--bad:356 82% 70%;--bad-soft:356 40% 16%;--rail-text:216 16% 74%;--rail-text-active:219 92% 78%;--rail-icon:216 16% 70%;--rail-label:216 14% 62%;--rail-hover:223 26% 16%;--rail-active:224 46% 20%;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #0006, 0 10px 24px -12px #0009;--skeleton-base:223 24% 17%;--skeleton-shine:223 22% 23%;--texture-blend:soft-light;--texture-veil:55%}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background-color:hsl(var(--shell));background-image:linear-gradient(hsl(var(--shell) / var(--texture-veil)), hsl(var(--shell) / var(--texture-veil))), url(/texture/paper-grain.png);background-blend-mode:normal, var(--texture-blend);color:hsl(var(--ink));-webkit-font-smoothing:antialiased;background-repeat:repeat;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.55}a{color:hsl(var(--brand-ink))}:where(a,button,select,input,summary):focus-visible{outline:2px solid hsl(var(--brand));outline-offset:2px;border-radius:6px}.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}.app{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.app>div{min-width:0}@media (max-width:900px){.app{grid-template-columns:1fr}}.rail{background:hsl(var(--panel));border-right:1px solid hsl(var(--hairline));flex-direction:column;grid-row:1/-1;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.rail-brand{color:hsl(var(--ink));border-radius:8px;flex-direction:column;align-items:flex-start;gap:.3rem;margin:.7rem .45rem .55rem;padding:.5rem .25rem;text-decoration:none;display:flex}.rail-institution{color:hsl(var(--ink-2));font-size:.82rem;font-weight:550;line-height:1.25}.rail-brand:hover{background:hsl(var(--rail-hover))}.rail-brand img{flex:none;width:auto;height:34px}.rail-brand .name{letter-spacing:-.005em;font-size:.94rem;font-weight:650;line-height:1.15}.rail-brand .market{color:hsl(var(--ink-3));font-size:.68rem;font-weight:500;display:block}.rail-tools{gap:.4rem;padding:0 .7rem .75rem;display:flex}.rail-tools button{background:hsl(var(--panel));border:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:.45rem;min-width:0;padding:.38rem .5rem;font-size:.82rem;display:flex}.rail-tools button:hover{background:hsl(var(--rail-hover));color:hsl(var(--ink))}.rail-tools .quick{flex:1}.rail-tools .quick span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}kbd{font:inherit;color:hsl(var(--ink-3));background:hsl(var(--shell));border:1px solid hsl(var(--hairline));border-radius:5px;flex:none;margin-left:auto;padding:.02rem .3rem;font-size:.7rem}.rail nav{flex:1;padding:0 .7rem 1.25rem}.rail-group+.rail-group{margin-top:.9rem}.rail-group>button{width:100%;font:inherit;cursor:pointer;color:hsl(var(--rail-label));background:0 0;border:0;align-items:center;gap:.25rem;padding:.3rem .45rem .35rem;font-size:.78rem;font-weight:500;display:flex}.rail-group>button .chev{color:hsl(var(--rail-icon));opacity:.75;font-size:.85rem;transition:transform .18s}.rail-group[data-open=false]>button .chev{transform:rotate(-90deg)}.rail-item{color:hsl(var(--rail-text));border-radius:7px;align-items:center;gap:.65rem;padding:.42rem .5rem;font-size:.885rem;line-height:1.3;text-decoration:none;display:flex}.rail-item svg{color:hsl(var(--rail-icon));flex:none;font-size:1.05rem}.rail-item:hover{background:hsl(var(--rail-hover));color:hsl(var(--ink))}.rail-item[aria-current=page]{background:hsl(var(--rail-active));color:hsl(var(--ink));font-weight:550}.rail-item[aria-current=page] svg{color:hsl(var(--ink-2))}.rail-children{border-left:1px solid hsl(var(--hairline));flex-direction:column;gap:.05rem;margin:.1rem 0 .3rem 1.15rem;padding-left:.6rem;display:flex}.rail-children .rail-item{padding:.34rem .5rem;font-size:.845rem}.rail-foot{border-top:1px solid hsl(var(--hairline));align-items:center;gap:.5rem;padding:.7rem .9rem .9rem;display:flex}.rail-foot .help{border:1px solid hsl(var(--hairline));width:26px;height:26px;color:hsl(var(--ink-3));background:0 0;border-radius:999px;flex:none;place-items:center;font-size:.95rem;display:inline-grid}.topbar{z-index:20;background:hsl(var(--panel) / 92%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid hsl(var(--hairline));align-items:center;gap:.6rem;height:48px;padding:0 1.4rem;display:flex;position:sticky;top:0}.topbar .menu-toggle{border:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));cursor:pointer;background:0 0;border-radius:7px;align-items:center;padding:.3rem .4rem;display:none}@media (max-width:900px){.topbar .menu-toggle{display:inline-flex}.rail{display:none}.app[data-nav=open] .rail{z-index:30;width:268px;box-shadow:var(--shadow);display:flex;position:fixed;inset:48px auto 0 0}}.env{background:hsl(var(--warn-soft));color:hsl(var(--warn));border:1px solid hsl(var(--warn) / 35%);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.16rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.crumbs ol{align-items:center;gap:.4rem;min-width:0;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.crumbs li{align-items:center;gap:.4rem;min-width:0;display:flex}.crumbs .sep{color:hsl(var(--ink-3))}.crumbs a{color:hsl(var(--ink-2));text-decoration:none}.crumbs a:hover{color:hsl(var(--ink));text-decoration:underline}.crumbs [aria-current=page]{color:hsl(var(--ink));white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;font-weight:600;display:inline-flex;overflow:hidden}.crumbs [aria-current=page] svg{color:hsl(var(--ink-3));flex:none}.body{max-width:1180px;padding:1.4rem 1.25rem 4rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.1rem;display:flex}.page-head h1{letter-spacing:-.01em;margin:0;font-size:1.35rem;line-height:1.25}.page-head .count,.card>h2>.count{font-variant-numeric:tabular-nums;background:hsl(var(--shell));border:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));vertical-align:3px;border-radius:6px;margin-left:.5rem;padding:.1rem .4rem;font-size:.78rem;font-weight:600}.page-head p{color:hsl(var(--ink-2));max-width:62ch;margin:.25rem 0 0;font-size:.9rem}.stack>*+*{margin-top:1rem}.card{background:hsl(var(--panel));border:1px solid hsl(var(--hairline));border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.1rem 1.15rem}.card>h2{align-items:center;gap:.5rem;margin:0 0 .2rem;font-size:.98rem;display:flex}.card>h2 svg{color:hsl(var(--ink-3))}.card .hint{color:hsl(var(--ink-2));margin:0 0 .9rem;font-size:.86rem}.card ol.steps{gap:.3rem;padding-left:1.15rem;display:grid}.card ol.steps li{padding-left:.15rem}.grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.85rem;display:grid}.enrol-step{flex-direction:column;gap:.55rem;height:100%;display:flex}.enrol-step>.btn[data-state]{align-self:start;margin-top:0}.field .control:has(input[readonly]){background:hsl(var(--shell));border-color:hsl(var(--hairline))}.field .control:has(input[readonly]) input{cursor:default}.enrol-change{align-self:start;align-items:center;gap:.35rem;min-height:2.35rem;display:inline-flex}.resend{margin-top:.3rem;font-size:.8rem;display:block}.resend .linkish{align-items:center;gap:.3rem;font-size:.8rem;display:inline-flex}.enrol-hint{color:hsl(var(--ink-2));font-size:.8rem;line-height:1.35}.enrol-commit>.btn[data-state]{margin-top:0}.enrol-commit{border-top:1px solid hsl(var(--hairline));margin-top:1.1rem;padding-top:1rem}.card ol.steps li[data-done]{color:hsl(var(--ink-3))}.card ol.steps li[data-done]::marker{content:"✓ ";color:hsl(var(--good));font-weight:700}.stat{border:1px solid hsl(var(--hairline));border-radius:var(--radius);background:hsl(var(--panel));padding:.8rem .95rem}.stat .label{color:hsl(var(--ink-2));align-items:center;gap:.35rem;font-size:.76rem;font-weight:500;display:flex}.stat .label svg{color:hsl(var(--ink-3))}.stat .value{font-variant-numeric:tabular-nums;letter-spacing:-.015em;margin-top:.2rem;font-size:1.45rem;font-weight:700}.stat .note{color:hsl(var(--ink-3));font-size:.76rem}.table-wrap{border-block:1px solid hsl(var(--hairline));background:hsl(var(--panel));margin-inline:-1.15rem;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:max-content;font-size:.85rem}thead{background:hsl(var(--panel-2))}th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--ink-2));white-space:nowrap;border-bottom:1px solid hsl(var(--hairline));padding:.5rem .75rem;font-size:.7rem;font-weight:600}th .th-inner{align-items:center;gap:.4rem;display:flex}th svg{color:hsl(var(--ink-3));flex:none;font-size:.9rem}td{border-bottom:1px solid hsl(var(--hairline));vertical-align:middle;padding:.55rem .75rem}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:hsl(var(--shell) / 70%)}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}th.num .th-inner{justify-content:flex-end}tfoot td{background:hsl(var(--panel-2));border-top:2px solid hsl(var(--hairline-strong));border-bottom:0;font-weight:700}.field{display:block}.field>span{margin-bottom:.3rem;font-size:.82rem;font-weight:600;display:block}.control{border:1px solid hsl(var(--hairline-strong));background:hsl(var(--panel));border-radius:8px;align-items:center;gap:.5rem;padding:0 .65rem;display:flex}.static-value{color:hsl(var(--ink));align-items:center;gap:.5rem;margin:0;padding:.55rem 0;font-weight:600;display:flex}.static-value svg{color:hsl(var(--ink-3));flex:none}.control:focus-within{border-color:hsl(var(--brand));box-shadow:0 0 0 3px hsl(var(--brand) / 18%)}.control svg{color:hsl(var(--ink-3));flex:none;font-size:1.02rem}.control-area{align-items:stretch;padding:0 .65rem}.control textarea{color:hsl(var(--ink));font:inherit;resize:vertical;background:0 0;border:0;outline:0;width:100%;padding:.55rem 0;font-size:.9rem}.control input,.control select{color:hsl(var(--ink));font:inherit;background:0 0;border:0;outline:0;width:100%;padding:.55rem 0;font-size:.9rem}.field small{color:hsl(var(--ink-3));margin-top:.3rem;font-size:.78rem;display:block}.btn{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));min-width:11.5rem;color:hsl(var(--ink));font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn.primary{background:hsl(var(--brand));border-color:hsl(var(--brand));color:hsl(var(--brand-contrast))}.btn.secondary{background:hsl(var(--panel));color:hsl(var(--ink));border-color:hsl(var(--hairline-strong))}.btn:hover{text-decoration:none}.btn:hover:not([disabled]){background:hsl(var(--shell));border-color:hsl(var(--hairline-strong))}.btn.primary:hover:not([disabled]){background:hsl(var(--brand-ink));border-color:hsl(var(--brand-ink))}.btn[disabled]{background:hsl(var(--shell));color:hsl(var(--ink) / 70%);border-color:hsl(var(--hairline-strong));cursor:not-allowed}.btn[disabled][aria-busy=true]{cursor:progress}.btn.primary[disabled]{background:hsl(var(--shell));color:hsl(var(--ink) / 70%);border-color:hsl(var(--hairline-strong));cursor:not-allowed}.btn[data-state]{margin-top:1.1rem}.dialog-actions .btn[data-state]{margin-top:0}*+.callout{margin-top:1rem}.callout+.callout{margin-top:.6rem}.callout{border-radius:var(--radius);color:hsl(var(--ink));border:1px solid;align-items:flex-start;gap:.6rem;padding:.75rem .95rem;font-size:.88rem;display:flex}.callout svg{flex:none;margin-top:.12rem;font-size:1.05rem}.callout.good{background:hsl(var(--good-soft));border-color:hsl(var(--good) / 40%)}.callout.good svg{color:hsl(var(--good))}.callout.warn{background:hsl(var(--warn-soft));border-color:hsl(var(--warn) / 40%)}.callout.warn svg{color:hsl(var(--warn))}.callout.bad{background:hsl(var(--bad-soft));border-color:hsl(var(--bad) / 40%)}.callout.bad svg{color:hsl(var(--bad))}.pill{background:hsl(var(--shell));border:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.12rem .5rem;font-size:.72rem;font-weight:600;display:inline-flex}.pill.good{background:hsl(var(--good-soft));border-color:hsl(var(--good) / 35%);color:hsl(var(--good))}.pill.warn{background:hsl(var(--warn-soft));border-color:hsl(var(--warn) / 35%);color:hsl(var(--warn))}.bar{border:1px solid hsl(var(--hairline));border-radius:8px;height:2.1rem;display:flex;overflow:hidden}.bar span{color:#fff;place-items:center;min-width:0;font-size:.7rem;font-weight:700;display:grid;overflow:hidden}.legend{color:hsl(var(--ink-2));flex-wrap:wrap;gap:.6rem 1.15rem;margin-top:.55rem;font-size:.8rem;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:.7rem;height:.7rem;margin-right:.35rem;display:inline-block}.status{white-space:nowrap;align-items:center;gap:.38rem;font-size:.78rem;font-weight:500;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:999px;flex:none;width:.42rem;height:.42rem}.status.good{color:hsl(var(--good))}.status.warn{color:hsl(var(--warn))}.status.bad{color:hsl(var(--bad))}.notfound{max-width:40rem;padding:2.5rem 0 1rem}.notfound .code{letter-spacing:.06em;color:hsl(var(--ink-3));text-transform:uppercase;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;display:inline-flex}.notfound h1{letter-spacing:-.02em;margin:.5rem 0;font-size:1.7rem;line-height:1.2}.notfound p{color:hsl(var(--ink-2));margin:0}.notfound .path{background:hsl(var(--shell));border:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));overflow-wrap:anywhere;border-radius:7px;max-width:100%;margin-top:.9rem;padding:.25rem .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;display:inline-block}.notfound .actions{flex-wrap:wrap;gap:.6rem;margin-top:1.4rem;display:flex}.notfound .btn{min-width:auto}.suggestions{border-top:1px solid hsl(var(--hairline));margin-top:2rem;padding-top:1.2rem}.suggestions h2{color:hsl(var(--ink-2));margin:0 0 .75rem;font-size:.8rem;font-weight:600}.suggestions ul{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.suggestions a{border:1px solid hsl(var(--hairline));color:hsl(var(--ink));background:hsl(var(--panel));border-radius:8px;align-items:center;gap:.6rem;padding:.6rem .7rem;font-size:.88rem;text-decoration:none;display:flex}.suggestions a:hover{border-color:hsl(var(--brand) / 45%);background:hsl(var(--rail-hover))}.suggestions a svg{color:hsl(var(--ink-3));flex:none}.suggestions a .go{color:hsl(var(--ink-3));margin-left:auto}.palette-backdrop{z-index:60;background:#0d121b73;place-items:start center;padding-top:12vh;display:grid;position:fixed;inset:0}.palette{background:hsl(var(--panel));border:1px solid hsl(var(--hairline-strong));width:min(34rem,100vw - 2rem);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.palette-input{border-bottom:1px solid hsl(var(--hairline));align-items:center;gap:.55rem;padding:.75rem .9rem;display:flex}.palette-input svg{color:hsl(var(--ink-3));flex:none}.palette-input input{color:hsl(var(--ink));font:inherit;background:0 0;border:0;outline:0;width:100%;font-size:.95rem}.palette ul{max-height:22rem;margin:0;padding:.35rem;list-style:none;overflow-y:auto}.palette li a,.palette li .empty{color:hsl(var(--ink));border-radius:7px;align-items:center;gap:.6rem;padding:.5rem .6rem;font-size:.9rem;text-decoration:none;display:flex}.palette li a svg{color:hsl(var(--ink-3));flex:none}.palette li a:hover,.palette li a[data-active=true]{background:hsl(var(--rail-hover))}.palette li a .where{color:hsl(var(--ink-3));margin-left:auto;font-size:.76rem}.palette .empty{color:hsl(var(--ink-3))}.auth-shell{background:hsl(var(--shell));grid-template-rows:1fr auto;min-height:100vh;padding:1.5rem 1rem;display:grid}.auth-shell>main{place-items:center;width:100%;display:grid}.auth-shell>footer{color:hsl(var(--ink-3));justify-content:center;align-items:center;gap:1rem;padding-top:1.5rem;font-size:.8rem;display:flex}.auth-card{background:hsl(var(--panel));border:1px solid hsl(var(--hairline));width:min(27rem,100%);box-shadow:var(--shadow);border-radius:14px;padding:1.6rem 1.5rem}.auth-head{align-items:flex-start;gap:.85rem;margin-bottom:1.2rem;display:flex}.auth-head img{border-radius:11px;flex:none}.auth-head h1{letter-spacing:-.015em;margin:0;font-size:1.3rem;line-height:1.2}.auth-head p{color:hsl(var(--ink-2));margin:.3rem 0 0;font-size:.88rem}.auth-card .callout{margin-bottom:1rem}.auth-card form>.field+.field{margin-top:.9rem}.auth-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.2rem;display:flex}.auth-actions a,.linkish{color:hsl(var(--brand-ink));cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:.85rem;text-decoration:none}.auth-actions a:hover,.linkish:hover{text-decoration:underline}.auth-alt{border-top:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));text-align:center;margin:1.3rem 0 0;padding-top:1rem;font-size:.85rem}.control .reveal{color:hsl(var(--ink-3));cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;margin-right:-.25rem;padding:.25rem;display:inline-flex}.control .reveal:hover{color:hsl(var(--ink))}.control[data-invalid=true]{border-color:hsl(var(--bad))}.field-error{color:hsl(var(--bad));font-weight:500}.choice.inline{margin:.9rem 0 0}.choice.inline>div,.choice.inline{display:block}.choice.inline .options{flex-wrap:wrap;gap:.5rem;display:flex}.choice.inline label{flex:9rem;margin:0;padding:.5rem .65rem;font-size:.87rem}.choice{border:0;margin:0 0 1rem;padding:0}.choice legend{margin-bottom:.45rem;padding:0;font-size:.82rem;font-weight:600}.choice label{border:1px solid hsl(var(--hairline-strong));cursor:pointer;border-radius:9px;align-items:center;gap:.6rem;padding:.6rem .7rem;font-size:.9rem;display:flex}.choice label+label{margin-top:.45rem}.choice label:has(input:checked){border-color:hsl(var(--brand));background:hsl(var(--brand-soft))}.choice label:has(input:focus-visible){outline:2px solid hsl(var(--brand));outline-offset:2px}.choice input{accent-color:hsl(var(--brand));flex:none}.choice svg{color:hsl(var(--ink-3));flex:none}.choice span small{color:hsl(var(--ink-3));font-size:.76rem;display:block}.usermenu{margin-left:auto;position:relative}.avatar-skeleton{background:hsl(var(--skeleton-base));border-radius:999px;width:30px;height:30px;margin-left:auto}.signin-link{margin-left:auto;font-size:.85rem;font-weight:600;text-decoration:none}.avatar-trigger{cursor:pointer;font:inherit;color:hsl(var(--ink));background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.2rem .45rem .2rem .2rem;display:flex}.avatar-trigger:hover{background:hsl(var(--rail-hover));border-color:hsl(var(--hairline))}.avatar{background:hsl(var(--brand));width:30px;height:30px;color:hsl(var(--brand-contrast));letter-spacing:.02em;border-radius:999px;flex:none;place-items:center;font-size:.72rem;font-weight:700;display:inline-grid}.avatar.lg{width:38px;height:38px;font-size:.85rem}.avatar-trigger .who{flex-direction:column;align-items:flex-start;line-height:1.15;display:none}@media (min-width:620px){.avatar-trigger .who{display:flex}}.avatar-trigger .who .name{text-overflow:ellipsis;white-space:nowrap;max-width:12rem;font-size:.83rem;font-weight:600;overflow:hidden}.avatar-trigger .who .role{color:hsl(var(--ink-3));font-size:.7rem}.avatar-trigger .chev{color:hsl(var(--ink-3));font-size:.9rem}.menu{background:hsl(var(--panel));border:1px solid hsl(var(--hairline-strong));min-width:15rem;box-shadow:var(--shadow);z-index:40;border-radius:11px;padding:.3rem;position:absolute;top:calc(100% + .45rem);right:0}.menu-head{border-bottom:1px solid hsl(var(--hairline));align-items:center;gap:.6rem;margin-bottom:.3rem;padding:.6rem .55rem .7rem;display:flex}.menu-head strong{font-size:.87rem;display:block}.menu-head span{color:hsl(var(--ink-3));text-overflow:ellipsis;max-width:11rem;font-size:.76rem;display:block;overflow:hidden}.menu a,.menu button{width:100%;font:inherit;color:hsl(var(--ink));cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:.6rem;padding:.5rem .55rem;font-size:.88rem;text-decoration:none;display:flex}.menu a svg,.menu button svg{color:hsl(var(--ink-3));flex:none}.menu a:hover,.menu button:hover{background:hsl(var(--rail-hover))}.menu .menu-sep{background:hsl(var(--hairline));height:1px;margin:.3rem 0}.menu button.danger,.menu button.danger svg{color:hsl(var(--bad))}.menu button.theme-toggle .theme-state{letter-spacing:.02em;color:hsl(var(--ink-3));border:1px solid hsl(var(--hairline));border-radius:999px;margin-left:auto;padding:.1rem .5rem;font-size:.74rem;font-weight:600}.detail{grid-template-columns:minmax(8rem,auto) 1fr;gap:.55rem 1rem;margin:0;font-size:.9rem;display:grid}.detail dt{color:hsl(var(--ink-2));align-items:center;gap:.35rem;display:flex}.detail dt svg{color:hsl(var(--ink-3))}.detail dd{margin:0;font-weight:500}.wordmark{width:auto;height:26px;display:block}.wordmark.dark,:root[data-theme=dark] .wordmark.light{display:none}:root[data-theme=dark] .wordmark.dark{display:block}.rail-brand .wordmark{height:34px}.auth-head .wordmark{height:30px;margin-bottom:.15rem}.auth-head{display:block}.ssel{position:relative}.ssel-trigger{border:1px solid hsl(var(--hairline-strong));background:hsl(var(--panel));width:100%;font:inherit;color:hsl(var(--ink));cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:.5rem;padding:.55rem .65rem;font-size:.9rem;display:flex}.ssel-trigger:hover{border-color:hsl(var(--ink-3))}.ssel-trigger[disabled]{opacity:.6;cursor:not-allowed}.ssel-trigger .chev{color:hsl(var(--ink-3));flex:none;margin-left:auto}.ssel-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.flag{flex:none;font-size:1.05rem;line-height:1}.ssel-pop{z-index:50;background:hsl(var(--panel));border:1px solid hsl(var(--hairline-strong));box-shadow:var(--shadow);border-radius:10px;position:absolute;top:calc(100% + .3rem);left:0;right:0;overflow:hidden}.ssel-search{border-bottom:1px solid hsl(var(--hairline));align-items:center;gap:.45rem;padding:.5rem .6rem;display:flex}.ssel-search svg{color:hsl(var(--ink-3));flex:none}.ssel-search input{color:hsl(var(--ink));font:inherit;background:0 0;border:0;outline:0;width:100%;font-size:.88rem}.ssel-pop ul{max-height:15rem;margin:0;padding:.25rem;list-style:none;overflow-y:auto}.ssel-pop li button{width:100%;font:inherit;color:hsl(var(--ink));cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:.5rem;padding:.42rem .5rem;font-size:.88rem;display:flex}.ssel-pop li button[data-active=true],.ssel-pop li button:hover{background:hsl(var(--rail-hover))}.ssel-pop li button .tick{color:hsl(var(--brand));flex:none;margin-left:auto}.ssel-empty{color:hsl(var(--ink-3));padding:.6rem .55rem;font-size:.86rem}.dial{color:hsl(var(--ink-2));font-variant-numeric:tabular-nums;border-right:1px solid hsl(var(--hairline));flex:none;align-items:center;gap:.3rem;margin-right:.1rem;padding-right:.5rem;display:inline-flex}.auth-head{text-align:center;display:block}.auth-head .wordmark{height:46px;margin:0 auto .2rem}.auth-head>div{margin-top:1.1rem}.auth-card form,.auth-card .callout{text-align:left}.auth-card.wide{width:min(38rem,100%)}.setup-pair{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:start;gap:.9rem 1rem;margin-top:.9rem;display:grid}.setup-pair .field{margin:0}.control,.ssel-trigger{min-height:2.6rem}.setup-pair .field>small{min-height:2.4em}.auth-card .callout{margin:1rem 0 0}.card.empty{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 2rem;display:flex}.card.empty>svg{width:2rem;height:2rem;color:hsl(var(--ink-3));margin-bottom:.25rem}.card.empty h2{margin:0}.card.empty p{max-width:46ch;color:hsl(var(--ink-2));margin:0}.card.empty-bad>svg{color:hsl(var(--bad))}.pill.bad{background:hsl(var(--bad-soft));border-color:hsl(var(--bad) / 35%);color:hsl(var(--bad))}.lede{color:hsl(var(--ink-2));max-width:78ch;margin:0 0 1rem}.muted{color:hsl(var(--ink-3))}.neg{color:hsl(var(--bad));font-variant-numeric:tabular-nums}.two-col{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1.5rem;display:grid}.two-col h3{margin:0 0 .5rem;font-size:.95rem}.ticks,.crosses{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.ticks li,.crosses li{color:hsl(var(--ink-2));padding-left:1.5rem;position:relative}.ticks li:before{content:"✓";color:hsl(var(--good));font-weight:700;position:absolute;left:0}.crosses li:before{content:"✕";color:hsl(var(--bad));font-weight:700;position:absolute;left:0}.reasons{gap:.3rem;max-width:44ch;margin:0;padding:0;list-style:none;display:grid}.reasons li{color:hsl(var(--ink-2));font-size:.86rem}td code{color:hsl(var(--ink-2));font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:.9rem;display:flex}.toolbar-search{flex:18rem;align-items:center;min-width:0;display:flex;position:relative}.toolbar-search svg{width:1em;height:1em;color:hsl(var(--ink-3));pointer-events:none;position:absolute;left:.7rem}.toolbar-search input{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));width:100%;color:hsl(var(--ink));font:inherit;border-radius:8px;padding:.5rem .75rem .5rem 2.1rem}.toolbar-filter,.pagination-size{color:hsl(var(--ink-2));gap:.25rem;font-size:.78rem;display:grid}.toolbar-filter select,.pagination-size select{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));color:hsl(var(--ink));font:inherit;border-radius:8px;padding:.45rem .6rem}.toolbar-actions{gap:.5rem;margin-left:auto;display:flex}.sort-link{font:inherit;color:inherit;cursor:pointer;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;display:inline-flex}.sort-link.num{flex-direction:row-reverse}.sort-link:hover{color:hsl(var(--ink))}.sort-link.active{color:hsl(var(--brand))}.sort-arrow{text-align:center;opacity:.55;width:.8em;display:inline-block}.sort-link.active .sort-arrow{opacity:1}.pagination{border-top:1px solid hsl(var(--hairline));color:hsl(var(--ink-2));flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.5rem;padding-top:1rem;font-size:.82rem;display:flex}.pagination-range{font-variant-numeric:tabular-nums}.pagination-buttons{align-items:center;gap:.5rem;margin-left:auto;display:flex}.pagination-buttons button{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));color:hsl(var(--ink));font:inherit;cursor:pointer;border-radius:8px;padding:.4rem .8rem}.pagination-buttons button:disabled{opacity:.45;cursor:not-allowed}.pagination-page{font-variant-numeric:tabular-nums}.row-menu{justify-content:flex-end;display:flex;position:relative}.row-menu-trigger{width:1.9rem;height:1.9rem;color:hsl(var(--ink-3));cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.row-menu-trigger:hover,.row-menu-trigger[aria-expanded=true]{background:hsl(var(--shell));border-color:hsl(var(--hairline));color:hsl(var(--ink))}.row-menu-list{z-index:60;border:1px solid hsl(var(--hairline));background:hsl(var(--panel));border-radius:10px;gap:.1rem;width:15rem;padding:.3rem;display:grid;position:fixed;box-shadow:0 14px 34px #06090e47}.row-menu-item{width:100%;color:hsl(var(--ink));font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;gap:.15rem;padding:.45rem .6rem;display:grid}.row-menu-item:hover:not(:disabled),.row-menu-item:focus-visible{background:hsl(var(--shell))}.row-menu-item:disabled{cursor:not-allowed;color:hsl(var(--ink-3))}.row-menu-item.danger:not(:disabled){color:hsl(var(--bad))}.row-menu-item.separated{border-top:1px solid hsl(var(--hairline));margin-top:.3rem;padding-top:.5rem}.row-menu-label{align-items:center;gap:.45rem;display:flex}.row-menu-why{color:hsl(var(--ink-3));font-size:.74rem}.dialog-backdrop{z-index:60;background:#06090e8c;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));border-radius:14px;width:min(34rem,100%);padding:1.5rem;box-shadow:0 24px 60px #06090e66}.definitions{gap:0;margin:0;display:grid}.definitions>div{border-top:1px solid hsl(var(--hairline));grid-template-columns:16rem 1fr;gap:.25rem 1rem;padding:.6rem 0;display:grid}.definitions dt{color:hsl(var(--ink-3))}.definitions dd{gap:.15rem;margin:0;display:grid}@media (max-width:720px){.definitions>div{grid-template-columns:1fr}}.dialog.wide{width:min(56rem,100%)}.dialog>h2{margin:0 0 1rem}.dialog-actions{justify-content:flex-end;gap:.6rem;margin-top:1.25rem;display:flex}.role-pills{flex-wrap:wrap;gap:.3rem;display:flex}.role-picker{border:0;margin:1rem 0 0;padding:0}.role-picker legend{color:hsl(var(--ink-2));padding:0 0 .4rem;font-size:.82rem;font-weight:600}.role-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.5rem;display:grid}.role-option{border:1px solid hsl(var(--hairline));cursor:pointer;border-radius:9px;grid-template-columns:auto 1fr;align-items:center;gap:.2rem .5rem;padding:.6rem .7rem;display:grid}.role-option.on{border-color:hsl(var(--brand) / 55%);background:hsl(var(--brand) / 8%)}.role-name{font-size:.88rem;font-weight:600}.role-option .pill,.role-count{color:hsl(var(--ink-3));grid-column:2;justify-self:start;font-size:.72rem}.behaviour-row{margin-top:1.25rem}.behaviour-row h3{margin:0 0 .6rem;font-size:.92rem}.behaviour-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.5rem;display:grid}.behaviour{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));color:hsl(var(--ink));font:inherit;text-align:left;cursor:pointer;border-radius:9px;gap:.2rem;padding:.65rem .8rem;display:grid}.behaviour.on{border-color:hsl(var(--warn) / 60%);background:hsl(var(--warn-soft))}.behaviour-label{font-size:.88rem;font-weight:600}.behaviour-proves{color:hsl(var(--ink-2));font-size:.75rem}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.link-card{color:inherit;text-decoration:none;transition:border-color .12s;display:block}.link-card:hover{border-color:hsl(var(--brand) / 45%)}.year-confirm{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.assertion{justify-items:end;gap:.6rem;display:grid}.assertion .callout{max-width:26rem}.key-reveal{background:hsl(var(--panel-2));border:1px solid hsl(var(--hairline));border-radius:var(--radius);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:.6rem 0 0;padding:.6rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.handset{justify-items:center;gap:.75rem;margin-top:1rem;display:grid}.handset-screen{color:#9ee59e;background:#111622;border:6px solid #5e6678;border-radius:14px;width:min(22rem,100%);min-height:9rem;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.45}.handset-screen pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;margin:0}.handset-idle{opacity:.6}.handset-meta{gap:1rem;font-size:.85rem;display:flex}.handset-keys{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.handset-entry{text-align:center;background:hsl(var(--panel));width:5rem;color:hsl(var(--ink));border:1px solid hsl(var(--hairline));border-radius:var(--radius);padding:.5rem .65rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.replay{border-top:1px solid hsl(var(--hairline));margin-top:1rem;padding-top:1rem}.replay-list{gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.replay-list li{grid-template-columns:minmax(7rem,auto) 1fr;align-items:start;gap:.75rem;display:grid}.replay-input{color:hsl(var(--ink-3));font-size:.85rem}.replay-screen{background:hsl(var(--panel-2));border:1px solid hsl(var(--hairline));border-radius:var(--radius);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:.6rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}@media (max-width:40rem){.replay-list li{grid-template-columns:1fr;gap:.35rem}}.customer-shell{background:hsl(var(--shell));flex-direction:column;min-height:100dvh;display:flex}.customer-header{border-bottom:1px solid hsl(var(--hairline));background:hsl(var(--panel));text-align:center;flex-direction:column;align-items:center;gap:.4rem;padding:1.1rem 1.25rem;display:flex}.customer-header .wordmark{height:42px}.customer-brand{color:hsl(var(--ink));font-weight:650}.customer-main{flex:1;width:100%;max-width:34rem;margin:0 auto;padding:1.25rem}.customer-footer{text-align:center;color:hsl(var(--ink-3));padding:1.25rem;font-size:.9rem}.customer-stack{gap:1rem;display:grid}.customer-stack h1{margin:0 0 .25rem;font-size:1.5rem}.customer-card{background:hsl(var(--panel));border:1px solid hsl(var(--hairline));border-radius:var(--radius);padding:1.25rem}.customer-card h2{margin:0 0 .5rem;font-size:1.05rem}.customer-card.urgent{border-color:hsl(var(--bad) / 55%);background:hsl(var(--bad-soft))}.customer-card.urgent h2{color:hsl(var(--bad))}.customer-figure{color:hsl(var(--ink));font-variant-numeric:tabular-nums;margin:.25rem 0;font-size:2.25rem;font-weight:680}.customer-lead{color:hsl(var(--ink-2));margin:.4rem 0;line-height:1.55}.customer-primary{justify-content:center;width:100%;min-height:3rem;margin-top:.75rem;font-size:1rem}.customer-pay{margin-top:.9rem}.customer-pay-label{color:hsl(var(--ink));margin-bottom:.35rem;font-size:.9rem;font-weight:600;display:block}.customer-pay-row{align-items:stretch;gap:.6rem;display:flex}.customer-pay-row .control{flex:auto;min-width:0}.customer-pay-row .btn{flex:none;justify-content:center;min-width:6rem}.customer-pay>small{color:hsl(var(--ink-3));margin-top:.35rem;display:block}.customer-schedule{gap:.1rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.customer-schedule li{border-bottom:1px solid hsl(var(--hairline));font-variant-numeric:tabular-nums;grid-template-columns:1fr auto 4.5rem;gap:.75rem;padding:.6rem 0;display:grid}.customer-schedule li.paid{color:hsl(var(--ink-3))}.customer-schedule li:last-child{border-bottom:none}.customer-check{cursor:pointer;align-items:flex-start;gap:.65rem;margin-top:.75rem;display:flex}.customer-check input{width:1.1rem;height:1.1rem;margin-top:.2rem}.customer-check small{color:hsl(var(--ink-3));margin-top:.2rem;display:block}.linklike{font:inherit;color:hsl(var(--brand-ink));cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.linklike:disabled{opacity:.6;cursor:default}.customer-downloads{flex-wrap:wrap;gap:.5rem;margin:.9rem 0 0;display:flex}.customer-downloads a{border:1px solid hsl(var(--hairline));border-radius:var(--radius);background:hsl(var(--panel));color:hsl(var(--ink));align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.9rem;font-weight:550;text-decoration:none;display:inline-flex}.customer-downloads a:hover{border-color:hsl(var(--brand));color:hsl(var(--brand))}.auth-note{color:hsl(var(--ink-2));margin:0 0 1rem;line-height:1.55}.demo-clock{margin-left:auto;position:relative}.clock-pill{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));color:hsl(var(--ink-2));font:inherit;cursor:pointer;font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .6rem;font-size:.82rem;display:inline-flex}.clock-pill:hover{border-color:hsl(var(--hairline-strong))}.clock-pill svg{width:1em;height:1em}.clock-pill.moved{border-color:hsl(var(--warn) / 35%);background:hsl(var(--warn-soft));color:hsl(var(--warn))}.clock-pill .tag{text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:600}.clock-panel{z-index:40;border-radius:var(--radius);border:1px solid hsl(var(--hairline));background:hsl(var(--panel));width:min(23rem,100vw - 2rem);box-shadow:var(--shadow);flex-direction:column;gap:.6rem;padding:1rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.clock-panel .lede{color:hsl(var(--ink-2));margin:0;font-size:.85rem}.clock-panel .muted{color:hsl(var(--ink-3));margin:0;font-size:.8rem}.clock-panel label{font-size:.8rem;font-weight:600}.clock-panel input[type=date]{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));color:inherit;font:inherit;border-radius:8px;padding:.45rem .6rem}.clock-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.clock-actions .btn{min-width:0}.clock-actions .btn.primary{min-width:9.5rem}@media (max-width:40rem){.clock-pill .tag{display:none}}.rate-preview{grid-template-columns:minmax(12rem,1.6fr) repeat(3,minmax(7rem,1fr));align-items:start;gap:.75rem 1rem;display:grid}.rate-preview-actions{grid-column:1/-1}@media (max-width:60rem){.rate-preview{grid-template-columns:1fr 1fr}}@media (max-width:34rem){.rate-preview{grid-template-columns:1fr}}.rate-cell{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.rate-cell .control{width:6.5rem}.rate-cell .control input{text-align:right}.rate-cell .suffix{color:hsl(var(--ink-3));white-space:nowrap;font-size:.82rem}.schedule-name{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.schedule-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.schedule-editor{border:1px solid hsl(var(--hairline-strong));background:hsl(var(--panel-2));border-radius:10px;gap:.75rem;padding:1rem;display:grid}.btn.secondary.danger{color:hsl(var(--bad));border-color:hsl(var(--bad) / 35%)}.enrol-plan .plan-figures{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.9rem 1.5rem;margin:.75rem 0 0;display:grid}.enrol-plan .plan-figures dt{letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--ink-3));margin-bottom:.15rem;font-size:.78rem}.enrol-plan .plan-figures dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.rate-monthly{color:hsl(var(--ink-3));font-variant-numeric:tabular-nums;font-size:.72rem;font-style:normal;display:block}.chips{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.chip{border:1px solid hsl(var(--hairline));background:hsl(var(--panel));color:hsl(var(--ink-2));cursor:pointer;border-radius:999px;padding:.4rem .9rem;font-size:.9rem;font-weight:600}.chip:hover{border-color:hsl(var(--hairline-strong));color:hsl(var(--ink))}.chip.on{border-color:hsl(var(--brand));background:hsl(var(--brand-soft));color:hsl(var(--brand-ink))}.range{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.range label{letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--ink-3));flex-direction:column;gap:.25rem;font-size:.78rem;display:flex}.range input{font-variant-numeric:tabular-nums}
