@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/20aee433927f7d4b-s.2_7u3qf8hb00l.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/256e1f7f180674ba-s.3qp6y754qyij-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/be3bf58b83159894-s.437wgy8nypf_z.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/753b6407f468151f-s.36f255hs6fere.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/292081311a6a8abc-s.3ffd3kh1ay1yu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:500;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0xq4un9mlaiqb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/20aee433927f7d4b-s.2_7u3qf8hb00l.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/256e1f7f180674ba-s.3qp6y754qyij-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/be3bf58b83159894-s.437wgy8nypf_z.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/753b6407f468151f-s.36f255hs6fere.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/292081311a6a8abc-s.3ffd3kh1ay1yu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0xq4un9mlaiqb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url(../media/20aee433927f7d4b-s.2_7u3qf8hb00l.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url(../media/256e1f7f180674ba-s.3qp6y754qyij-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url(../media/be3bf58b83159894-s.437wgy8nypf_z.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url(../media/753b6407f468151f-s.36f255hs6fere.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url(../media/292081311a6a8abc-s.3ffd3kh1ay1yu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0xq4un9mlaiqb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}._1CcvyG_className{font-family:"Source Serif 4","Source Serif 4 Fallback";font-style:normal}._1CcvyG_variable{--font-display:"Source Serif 4", "Source Serif 4 Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.XWRyVq_className{font-family:Inter,Inter Fallback;font-style:normal}.XWRyVq_variable{--font-body:"Inter", "Inter Fallback"}
:root{--ink:#161a22;--ink-2:#4b5261;--ink-3:#6b7280;--line:#e2e0dc;--line-cool:#dfe3ee;--red:#d42a31;--red-dark:#b3232a;--crimson:#8f1d2c;--navy:#121a33;--amber:#e8a33d;--teal:#1f8a8a;--tint:#f1f4fb;--rose:#fdeff0;--warm:#f6f4f1;--coral:#ff5a60;--coral-soft:#ff9a9e;--on-dark:#d3d9e8;--on-dark-2:#c3c9d9;--on-dark-3:#8e99b3;--display:var(--font-display), "Source Serif 4", Georgia, serif;--body:var(--font-body), Inter, "Helvetica Neue", Arial, sans-serif;--ease:cubic-bezier(.2, .7, .2, 1);--shadow-md:0 10px 28px #121a3312;--shadow-lg:0 20px 50px #121a3317}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{color:var(--ink);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;background:#fff;margin:0;overflow-x:hidden}a{color:inherit}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0;padding:0}ul,ol{list-style:none}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:3px}h1,h2,h3{font-family:var(--display);color:var(--ink);letter-spacing:-.01em;font-weight:600}h1{font-size:clamp(30px,3.8vw,44px);line-height:1.1}h2{font-size:clamp(24px,2.6vw,30px);line-height:1.2}h3{font-size:20px;line-height:1.25}.lead{color:var(--ink-2);max-width:640px;font-size:17px;line-height:1.65}.kicker{color:var(--red);font-size:14px;font-weight:600}.more{color:var(--red-dark);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding-bottom:1px;font-size:15px;font-weight:600;text-decoration:none;transition:color .15s,padding-right .2s}.more:hover{color:var(--ink);padding-right:6px}.muted{color:var(--ink-3)}.small{font-size:14px}.num{font-variant-numeric:tabular-nums}.serif{font-family:var(--display);font-weight:600}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.container{max-width:1160px;margin:0 auto;padding:0 28px}.container.wide{max-width:1360px}.section{padding:48px 0 72px}.section.tint{background:var(--tint)}.section-head{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.section-head.split{flex-flow:wrap;justify-content:space-between;align-items:flex-end;gap:16px}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 22px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 22px #121a332e}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-lg{min-height:52px;padding:0 28px;font-size:16px}.btn-sm{min-height:36px;padding:0 14px;font-size:14px}.btn-block{width:100%}.btn-red{background:var(--red);color:#fff}.btn-red:hover:not(:disabled){background:var(--red-dark)}.btn-outline{color:var(--ink);background:#fff;border-color:#c9c6c0}.btn-outline:hover:not(:disabled){border-color:var(--ink)}.btn-white{color:var(--red-dark);background:#fff}.btn-white:hover:not(:disabled){background:var(--warm)}.btn-ghost{color:var(--ink-2);background:0 0;padding:0 10px}.btn-ghost:hover:not(:disabled){color:var(--ink);box-shadow:none;background:var(--tint);transform:none}.btn-danger{color:var(--red-dark);background:#fff;border-color:#f4cfd2}.btn-danger:hover:not(:disabled){border-color:var(--red)}.on-dark .btn-outline{color:#fff;background:0 0;border-color:#ffffff80}.on-dark .btn-outline:hover:not(:disabled){background:#ffffff14;border-color:#fff}.site-header{z-index:50;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0}.site-header .container{align-items:center;gap:28px;min-height:72px;display:flex}.brand{color:var(--ink);flex-shrink:0;align-items:center;gap:12px;line-height:1.25;text-decoration:none;display:flex}.brand img{width:auto;height:32px}.brand strong{font-size:16px;font-weight:600;display:block}.brand small{color:var(--ink-3);font-size:12px;display:block}.menu{flex:1;align-items:center;gap:28px;display:flex}.nav{flex:1;align-items:center;gap:26px;display:flex}.nav a{color:var(--ink-2);border-bottom:2px solid #0000;padding:6px 0;font-size:15px;text-decoration:none;transition:color .15s,border-color .15s}.nav a:hover{color:var(--ink)}.nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--red)}.header-user{align-items:center;gap:14px;margin-left:auto;display:flex}.header-user .who{text-align:right;line-height:1.3}.header-user .who strong{font-size:14px;font-weight:600;display:block}.header-user .who small{color:var(--ink-3);font-size:12px}.burger{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;margin-left:auto;display:none}.burger span{background:var(--ink);width:18px;height:2px}.page-band{color:#fff;background-color:var(--navy);background-image:linear-gradient(90deg,#121a33 0%,#121a33eb 32%,#121a3300 68%),url(/bg-dark.svg),radial-gradient(circle at 85% 20%,#d42a318c,#d42a3100 45%),linear-gradient(120deg,#121a33 0%,#241a3d 55%,#7d1b30 115%);background-position:50%,100%,50%,50%;background-repeat:no-repeat;background-size:auto,cover,auto,auto;padding:44px 0 40px;position:relative;overflow:hidden}.page-band .container{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.page-band .copy{max-width:720px;animation:rise .9s var(--ease) backwards;flex-direction:column;gap:10px;display:flex}.page-band h1{color:#fff}.page-band .kicker{color:var(--coral-soft)}.page-band .lead{color:var(--on-dark);font-size:16px}@keyframes rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translateY(18px)scale(.94)}to{opacity:1;transform:none}}@media (max-width:960px){.menu{display:none}.burger{display:inline-flex}.site-header[data-open=true] .menu{border-bottom:1px solid var(--line);background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 20px;display:flex;position:absolute;top:72px;left:0;right:0;box-shadow:0 12px 24px #00000014}.site-header[data-open=true] .nav{flex-direction:column;align-items:stretch;gap:0}.site-header[data-open=true] .nav a{border-bottom:1px solid var(--line);padding:14px 0}.site-header[data-open=true] .nav a[aria-current=page]{color:var(--red-dark)}.site-header[data-open=true] .header-user{justify-content:space-between;margin:16px 0 0}.site-header[data-open=true] .header-user .who{text-align:left}.page-band{background-image:linear-gradient(#121a33d9,#121a338c),url(/bg-dark.svg),linear-gradient(135deg,#121a33 0%,#3a1a3a 70%,#7d1b30 130%);background-position:50%,100%,50%;background-size:auto,cover,auto;padding:36px 0 32px}}@media (max-width:600px){.container{padding:0 20px}.section{padding:32px 0 56px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
.card{border:1px solid var(--line-cool);box-shadow:var(--shadow-md);background:#fff;border-radius:8px}.card-pad{padding:24px}.card-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.card-head h2,.card-head h3{font-size:20px}.tiles{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.tiles.three{grid-template-columns:repeat(3,1fr)}.tile{border:1px solid var(--line);border-top:3px solid var(--accent,var(--red));background:#fff;flex-direction:column-reverse;gap:6px;padding:20px 22px;display:flex}.tile:nth-child(4n+2){--accent:var(--navy)}.tile:nth-child(4n+3){--accent:var(--amber)}.tile:nth-child(4n+4){--accent:var(--teal)}.tile dt{color:var(--ink-2);font-size:14px}.tile dd{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:36px;font-weight:600;line-height:1}.stats-band{color:#fff;background:linear-gradient(120deg,#b3232a 0%,#d42a31 55%,#e8573d 120%);padding:32px 0}.stats{grid-template-columns:repeat(4,1fr);gap:32px;display:grid}.stat{border-left:3px solid #ffffff73;flex-direction:column-reverse;gap:6px;padding-left:20px;display:flex}.stat dt{color:#ffe3e4;font-size:15px}.stat dd{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:clamp(34px,4vw,48px);font-weight:600;line-height:1}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:15px}.table th{text-align:left;color:var(--ink-3);border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 16px;font-size:13px;font-weight:600}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 16px}.table tr:last-child td{border-bottom:0}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table .tabular{font-variant-numeric:tabular-nums;white-space:nowrap}.table tfoot td{border-top:2px solid var(--line);border-bottom:0;font-weight:600}.table tbody tr.clickable{cursor:pointer;transition:background .15s}.table tbody tr.clickable:hover{background:var(--tint)}.table .primary{font-weight:600}.table .sub{color:var(--ink-3);font-size:13px;display:block}.pill{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:13px;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.pill-draft{color:#8a5a12;background:#fff8ec;border-color:#f3d9ac}.pill-published{color:#135f5f;background:#e8f4f4;border-color:#bfe0e0}.pill-cancelled{color:var(--ink-3);border-color:var(--line);background:#f3f4f6}.pill-onsite{color:#135f5f;background:#e8f4f4;border-color:#bfe0e0}.pill-late{background:var(--rose);color:var(--crimson);border-color:#f4cfd2}.pill-done{background:var(--tint);color:var(--navy);border-color:var(--line-cool)}.pill-scheduled{color:var(--ink-2);border-color:var(--line);background:#fff}.pill-role{background:var(--rose);color:var(--crimson);border-color:#f4cfd2}.pill-role:before,.pill-plain:before{display:none}.pill-plain{background:var(--tint);color:var(--ink-2);border-color:var(--line-cool)}.form{gap:20px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-grid .span-2{grid-column:1/-1}.field{flex-direction:column;gap:8px;display:flex}.field>span,.field>legend{color:var(--ink-3);padding:0;font-size:13px;font-weight:600}.field .hint{color:var(--ink-3);font-size:13px}fieldset.field{border:0;min-width:0;margin:0;padding:0}.input,.select,.textarea{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #c8cfdd;border-radius:4px;outline:none;padding:0 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;min-height:84px;padding:10px 14px;line-height:1.5}.select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.input::placeholder,.textarea::placeholder{color:var(--ink-3)}.input:focus,.select:focus,.textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px #d42a311f}.segmented{border:1px solid #c8cfdd;border-radius:4px;display:inline-flex;overflow:hidden}.segmented label{position:relative}.segmented input{opacity:0;cursor:pointer;position:absolute;inset:0}.segmented span{min-height:42px;color:var(--ink-2);align-items:center;padding:0 18px;font-size:15px;font-weight:600;display:inline-flex}.segmented input:checked+span{background:var(--navy);color:#fff}.segmented input:focus-visible+span{outline:2px solid var(--red);outline-offset:-2px}.check{cursor:pointer;align-items:center;gap:10px;font-size:15px;display:flex}.check input{width:18px;height:18px;accent-color:var(--red)}.alert{color:#93000a;background:#ffdad6;border:1px solid #ba1a1a40;border-radius:4px;padding:12px 16px;font-size:14px}.notice{background:var(--tint);color:var(--ink-2);border:1px solid var(--line-cool);border-radius:4px;padding:12px 16px;font-size:14px}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.form-actions .spacer{margin-right:auto}.filters{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.filters .field{min-width:170px}.switch{flex-shrink:0;width:48px;height:28px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch .track{width:100%;height:100%;transition:background .2s var(--ease);background:#c9d0de;border-radius:999px}.switch .track:after{content:"";width:22px;height:22px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #121a3340}.switch input:checked+.track{background:var(--red)}.switch input:checked+.track:after{transform:translate(20px)}.switch input:focus-visible+.track{outline:2px solid var(--red);outline-offset:3px}.dialog{width:min(620px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);border:0;border-top:3px solid var(--red);background:#fff;padding:0;box-shadow:0 24px 60px #080a1859}.dialog::backdrop{background:#121a338c}.dialog[open]{animation:pop .28s var(--ease)}.dialog-body{flex-direction:column;gap:24px;padding:32px;display:flex}.dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dialog-head h2{font-size:26px;line-height:1.25}.dialog-head p{color:var(--ink-2);margin-top:6px;font-size:14px}.icon-btn{width:40px;height:40px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--tint);color:var(--ink)}.empty{text-align:center;color:var(--ink-2);flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.empty .ico{background:var(--rose);width:52px;height:52px;color:var(--red);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.list{flex-direction:column;display:flex}.list-item{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.list-item:last-child{border-bottom:0}.when{flex-direction:column;min-width:120px;display:flex}.when .day{color:var(--ink-3);font-size:13px;font-weight:600}.when .time{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600;line-height:1.2}.grid-cards{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.place{border:1px solid var(--line-cool);text-align:left;cursor:pointer;transition:transform .2s var(--ease), box-shadow .2s var(--ease);animation:pop .5s var(--ease) backwards;background:#fff;border-radius:8px;flex-direction:column;gap:6px;padding:24px;display:flex}.place:hover{transform:translateY(-4px);box-shadow:0 16px 34px #121a331a}.place .ico{background:var(--rose);width:38px;height:38px;color:var(--red);border-radius:10px;justify-content:center;align-items:center;margin-bottom:8px;display:inline-flex}.place h3{font-size:22px}.place.inactive{opacity:.6}@media (max-width:960px){.tiles,.stats,.grid-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.tiles,.tiles.three,.stats,.grid-cards,.form-grid{grid-template-columns:1fr}.dialog-body{padding:24px 22px}.card-head,.list-item{padding:16px 18px}}.link-btn{font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.link-btn:hover{color:var(--red-dark)}.statement{border:1px solid var(--line);border-top:3px solid var(--red);box-shadow:var(--shadow-lg);background:#fff;flex-direction:column;gap:10px;padding:40px;display:flex}.statement h1{font-size:clamp(28px,3.4vw,38px)}.statement-rows{border-top:1px solid var(--line);margin-top:18px}.statement-rows>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.statement-rows dt{color:var(--ink-3);font-size:14px}.statement-rows dd{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.statement-total{justify-content:space-between;align-items:baseline;gap:16px;padding:18px 0 8px;display:flex}.statement-total span{font-weight:600}.statement-total strong{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:40px;font-weight:600;line-height:1}@media (max-width:600px){.statement{padding:26px 22px}}@media print{.site-header,.page-band,.no-print,nextjs-portal{display:none!important}.section{padding:0}.statement{box-shadow:none}}
.signin{color:#fff;background:radial-gradient(35% 80% at 84% 25%,#d42a3159,#d42a3100),linear-gradient(90deg,#1a2037 0% 36%,#602138 100%);flex-direction:column;min-height:100vh;padding:44px 56px;display:flex;position:relative;overflow:hidden}.signin>:not(.signal-lines){z-index:1;position:relative}.signal-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.signal-still{display:none}.signin-brand{color:#fff;align-items:center;gap:12px;width:fit-content;line-height:1.25;text-decoration:none;display:flex}.signin-brand img{width:auto;height:36px}.signin-brand strong{font-size:16px;font-weight:600;display:block}.signin-brand small{color:#a0a9c1;font-size:12px;display:block}.signin-main{flex:1;grid-template-columns:minmax(0,1fr) 384px;align-items:center;gap:64px;padding:48px clamp(0px,13vw - 56px,184px) 48px 0;display:grid}.signin-pitch{flex-direction:column;gap:18px;max-width:560px;display:flex}.signin-pitch>*{animation:rise .9s var(--ease) backwards}.signin-pitch>:nth-child(2){animation-delay:.12s}.signin-pitch>:nth-child(3){animation-delay:.24s}.signin-pitch .kicker{color:var(--coral-soft)}.signin-pitch h1{color:#fff;font-size:clamp(36px,5vw,58px)}.signin-pitch .lead{color:var(--on-dark);max-width:520px;font-size:17px;line-height:1.7}.signin-card{color:var(--ink);border-top:3px solid var(--red);background:#fff;padding:36px;animation:.22s ease-out backwards cardIn;box-shadow:0 24px 60px #080a1859}@keyframes cardIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.signin-card h2{font:600 26px/1.25 var(--display);letter-spacing:-.01em}.signin-card>p{color:var(--ink-2);margin-top:8px;font-size:14px}.signin-card form{gap:24px;margin-top:32px;display:grid}.signin-fine{color:#a9b3cb;font-size:13px}@media (max-width:1023px){.signin-main{flex-direction:column;justify-content:center;align-items:stretch;gap:48px;padding:48px 0;display:flex}.signin-card{width:100%;max-width:440px}}@media (max-width:639px){.signin{padding:32px 20px}.signin-card{padding:28px}}@media (prefers-reduced-motion:reduce){.signal-moving{display:none}.signal-still{display:inline}}
.roster-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.week-nav{align-items:center;gap:8px;display:flex}.week-nav .label{font-family:var(--display);text-align:center;min-width:200px;font-size:22px;font-weight:600}.roster{border:1px solid var(--line-cool);box-shadow:var(--shadow-md);background:#fff;border-radius:8px;overflow-x:auto}.roster table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1080px}.roster th,.roster td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:top}.roster th:last-child,.roster td:last-child{border-right:0}.roster tbody tr:last-child td,.roster tbody tr:last-child th{border-bottom:0}.roster thead th{text-align:left;color:var(--ink-3);background:#fff;padding:12px;font-size:13px;font-weight:600}.roster thead th.today{color:var(--red-dark);box-shadow:inset 0 -2px 0 var(--red)}.roster thead th .date{font-family:var(--display);color:var(--ink);font-size:18px;display:block}.roster thead th.today .date{color:var(--red-dark)}.roster .person{z-index:1;text-align:left;background:#fff;width:200px;padding:14px 16px;position:sticky;left:0}.roster .person strong{font-size:15px;display:block}.roster .person small{color:var(--ink-3);font-size:12px}.roster .person .hours{font-variant-numeric:tabular-nums}.roster td{height:88px;padding:8px}.roster td.today{background:#fcfcfe}.cell{flex-direction:column;gap:6px;height:100%;display:flex}.chip{text-align:left;border:1px solid var(--line-cool);border-left:3px solid var(--navy);cursor:pointer;background:#fff;border-radius:6px;width:100%;padding:6px 8px;font-size:13px;line-height:1.35;transition:transform .15s,box-shadow .15s;display:block}.chip:hover{transform:translateY(-2px);box-shadow:0 8px 18px #121a331a}.chip .t{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600;display:block}.chip .l{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chip.draft{border-left-color:var(--amber);background:#fffdf8;border-style:dashed dashed dashed solid}.chip.cancelled{opacity:.6;border-left-color:#c6c3bc;text-decoration:line-through}.chip.onsite{border-left-color:var(--teal)}.chip.late{border-left-color:var(--red);background:snow}.chip.done{border-left-color:var(--teal);background:var(--tint)}.add-cell{min-height:28px;color:var(--ink-3);cursor:pointer;opacity:0;background:0 0;border:1px dashed #0000;border-radius:6px;align-self:stretch;margin-top:auto;font-size:13px;transition:opacity .15s,border-color .15s,color .15s}.roster td:hover .add-cell,.add-cell:focus-visible{opacity:1;border-color:#c8cfdd}.add-cell:hover{color:var(--red-dark);border-color:var(--red)}@media (hover:none){.add-cell{opacity:1;border-color:var(--line)}}.legend{color:var(--ink-3);flex-wrap:wrap;gap:18px;margin-top:14px;font-size:13px;display:flex}.legend span{align-items:center;gap:8px;display:inline-flex}.legend i{border:1px solid var(--line-cool);border-left:3px solid var(--c);border-radius:3px;width:14px;height:14px}@media (max-width:600px){.roster-toolbar>*{width:100%}.week-nav{flex-wrap:wrap}.week-nav .label{flex:1;min-width:0;font-size:17px}.roster-toolbar .row .btn{flex:1}}
