:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy:#171a4f;--navy-2:#26366e;--ink:#131a2c;--text-2:#53627b;--text-3:#7a8aa0;--accent:#2344c6;--accent-hover:#1d3aad;--accent-soft:#eef2ff;--line:#e2e8f0;--line-2:#eef1f6;--page:#f4f7fc;--warning-bg:#fff4e5;--warning:#c2410c;--ease-spring:cubic-bezier(.22, 1.2, .36, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-out-soft:cubic-bezier(.25, .8, .25, 1);--dur-fast:.14s;--dur-base:.26s;--dur-spring:.62s}@supports (transition-timing-function:linear(0, 1)){:root{--ease-spring:linear(0, .006, .025 2.8%, .101 6.1%, .539 18.9%, .721 25.3%, .849 31.5%, .937 38.1%, .968 41.8%, .991 45.7%, 1.006 50.1%, 1.015 55%, 1.017 63.9%, 1.001 85.9%, 1);--ease-bounce:linear(0, .009, .035 2.1%, .141, .281 6.7%, .723 12.9%, .938 16.7%, 1.017, 1.077, 1.121, 1.149 24.3%, 1.159, 1.163, 1.161, 1.154 29.9%, 1.129 32.8%, 1.051 39.6%, 1.017 43.1%, .991, .977 51%, .974 53.8%, .975 57.1%, .997 69.8%, 1.003 76.9%, 1)}}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased;word-break:keep-all;overflow-wrap:break-word;margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:8px}h1,h2,h3,p{margin:0}ul,ol{margin:0;padding:0;list-style:none}.skip{z-index:50;background:#fff;border-radius:14px;padding:12px 16px;position:absolute;top:-100px;left:16px}.skip:focus{top:12px}.topbar{z-index:20;border-bottom:1px solid var(--line);background:#fffffff0;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1200px;min-height:68px;margin:auto;padding:12px 24px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--navy);color:#fff;border-radius:14px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;font-weight:700;display:grid}.brand-text{color:var(--navy);flex-direction:column;font-size:16px;font-weight:600;line-height:1.3;display:flex}.brand-text small{color:var(--text-2);font-size:12px;font-weight:400}.top-nav{align-items:center;gap:4px;margin-left:auto;font-size:14px;display:flex}.top-nav a{color:var(--text-2);transition:background-color var(--dur-fast) var(--ease-out-soft), color var(--dur-fast) var(--ease-out-soft);border-radius:999px;padding:10px 14px}.top-nav a:hover,.top-nav a[aria-current]{background:var(--accent-soft);color:var(--accent)}.top-nav a[aria-current]{font-weight:600}.tabbar{z-index:40;padding:6px 6px max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;display:none;position:fixed;inset:auto 0 0}.tab{color:#64748b;white-space:nowrap;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;min-height:56px;font-size:11px;font-weight:600;display:flex}.tab-icon{width:48px;max-width:100%;height:30px;transition:background-color var(--dur-base) var(--ease-out-soft);border-radius:999px;place-items:center;display:grid}.tab[aria-current]{color:var(--accent)}.tab[aria-current] .tab-icon{background:#dbeafe}.chip{white-space:nowrap;color:var(--text-2);background:#f1f4f9;border-radius:999px;align-items:center;padding:4px 12px;font-size:12px;font-weight:500;display:inline-flex}.chip-warning{background:var(--warning-bg);color:var(--warning)}.chip-accent{background:var(--accent);color:#fff}main{grid-template-columns:minmax(0,1fr);gap:16px;max-width:1200px;margin:auto;padding:24px 24px 56px;display:grid}.hero{isolation:isolate;background:var(--navy);color:#fff;border-radius:32px;grid-template-columns:1.25fr 1fr;align-items:center;gap:40px;padding:48px;display:grid;position:relative;overflow:hidden}.hero-ring{z-index:-1;pointer-events:none;border:54px solid #26366eb3;border-radius:50%;width:430px;height:430px;position:absolute;top:-150px;right:-120px}.hero-glow{z-index:-1;pointer-events:none;filter:blur(48px);background:#26366e73;border-radius:50%;width:320px;height:320px;position:absolute;bottom:-140px;left:-110px}.hero-meta{color:#b9c6ff;font-variant-numeric:tabular-nums;margin-bottom:14px;font-size:13px;font-weight:500}h1{letter-spacing:-.5px;margin-bottom:16px;font-size:clamp(30px,3.6vw,46px);font-weight:600;line-height:1.35}h1 span{color:#9fb3ff}.intro{color:#d3dbf5;max-width:30em;margin-bottom:28px;font-size:16px;line-height:1.8}.button{min-height:48px;color:var(--navy);background:#fff;border-radius:14px;align-items:center;gap:10px;padding:0 22px;font-size:15px;font-weight:600;display:inline-flex}.button:hover{background:var(--accent-soft)}.next-card{color:var(--ink);background:#fff;border-radius:22px;padding:24px;box-shadow:0 1px 2px #141e370a}.next-label{color:var(--accent);align-items:center;gap:6px;margin-bottom:6px;font-size:13px;font-weight:500;display:flex}.next-card h2{color:var(--navy);font-size:18px;font-weight:600}.next-date{background:var(--accent-soft);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin:18px 0;padding:16px;display:flex}.next-date time{align-items:center;gap:14px;display:flex}.next-date time b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:44px;font-weight:600;line-height:1}.next-date time span{color:var(--text-2);font-size:13px;line-height:1.5}.days-left{color:var(--text-2);text-align:right;white-space:nowrap;font-size:13px}.days-left b{color:var(--accent);font-variant-numeric:tabular-nums;font-size:24px;font-weight:600;line-height:1.2;display:block}.next-foot{color:var(--text-2);border-top:1px solid var(--line-2);padding-top:14px;font-size:13px}.notice{background:var(--warning-bg);color:var(--warning);border-radius:18px;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.notice svg{flex-shrink:0;margin-top:2px}.notice strong{font-size:14px;font-weight:600}.notice p{color:#9a3412;margin-top:2px;font-size:13px}.card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:20px;box-shadow:0 1px 2px #141e370a}.card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.card-head h2{color:var(--navy);font-size:20px;font-weight:600}.subtle{color:var(--text-3);font-size:12px}.columns{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.rows{grid-template-columns:minmax(0,1fr);display:grid}.row{border-top:1px solid var(--line-2);align-items:center;gap:14px;min-height:64px;padding:10px 4px;display:flex}.row:first-child{border-top:0}.row-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.row-title{font-size:15px;font-weight:600;line-height:1.4}.row-meta{color:var(--text-3);align-items:center;gap:4px;font-size:12px;display:flex}.day-tile{background:var(--accent-soft);width:48px;height:48px;color:var(--navy);font-variant-numeric:tabular-nums;border-radius:14px;flex-shrink:0;place-items:center;font-size:20px;font-weight:600;display:grid}.round{color:var(--text-2);white-space:nowrap;font-size:12px}.footnote{color:var(--text-3);border-top:1px solid var(--line-2);padding-top:12px;font-size:12px}.subject-code{letter-spacing:.5px;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:12px;font-weight:700;display:grid}.bar{background:var(--line-2);border-radius:999px;height:4px;display:block;overflow:hidden}.bar>span{border-radius:999px;height:100%;display:block}.count{color:var(--text-2);white-space:nowrap;text-align:right;min-width:64px;font-size:12px}.count b{color:var(--ink);font-variant-numeric:tabular-nums;margin-right:2px;font-size:20px;font-weight:600}.date-row{transition:background-color var(--dur-base) var(--ease-out-soft);border-radius:16px;padding-left:8px;padding-right:8px}.date-row.is-next{background:var(--accent-soft);border-top-color:#0000}.date-row.is-next+.row{border-top-color:#0000}.date-row.is-next .day-tile{background:var(--accent);color:#fff}.date-row.is-past{opacity:.55}.row-meta-text{flex-wrap:wrap;align-items:center;gap:4px;min-width:0;line-height:1.5;display:inline-flex}.row-meta .chip{padding:1px 8px;font-size:11px}.icon-button,.ghost-button{border:1px solid var(--line);color:var(--text-2);font:inherit;cursor:pointer;background:#fff;flex-shrink:0;justify-content:center;align-items:center;gap:6px;display:inline-flex}.icon-button{border-radius:14px;width:44px;height:44px}.ghost-button{border-radius:999px;min-height:36px;padding:0 14px;font-size:13px;font-weight:500}.icon-button:hover,.ghost-button:hover{color:var(--accent);background:var(--accent-soft);border-color:#c7d2fe}.faq{grid-template-columns:minmax(0,1fr);display:grid}.faq details{border-top:1px solid var(--line-2)}.faq details:first-child{border-top:0}.faq summary{cursor:pointer;min-height:56px;color:var(--navy);justify-content:space-between;align-items:center;gap:12px;padding:8px 4px;font-size:15px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary svg{color:var(--text-3);transition:transform var(--dur-spring) var(--ease-bounce);flex-shrink:0}.faq details[open] summary svg{color:var(--accent);transform:rotate(180deg)}.faq details p{color:var(--text-2);max-width:46em;padding:0 4px 16px;font-size:14px;line-height:1.8}.faq details[open] p{animation:motion-rise var(--dur-base) var(--ease-spring) both}.steps{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.step{border:1px solid var(--line-2);background:#f8fafc;border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex;position:relative}.step .chip{border:1px solid var(--line);background:#fff;position:absolute;top:16px;right:16px}.step-icon{background:var(--navy);color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.step-no{color:var(--text-3);font-size:12px}.step h3{color:var(--navy);font-size:15px;font-weight:600}.step p{color:var(--text-2);margin-top:2px;font-size:13px}footer{max-width:1200px;color:var(--text-3);justify-content:space-between;gap:12px;margin:auto;padding:20px 24px 32px;font-size:12px;display:flex}footer>span:first-child{color:var(--text-2);font-weight:600}.motion-press{transition:transform var(--dur-spring) var(--ease-bounce), background-color var(--dur-fast) var(--ease-out-soft)}.motion-press:active{transition-duration:var(--dur-fast);transition-timing-function:var(--ease-out-soft);transform:scale(.97)}.motion-rise{animation:motion-rise var(--dur-base) var(--ease-spring) both}.motion-wave{animation:motion-wave var(--dur-spring) var(--ease-bounce) both;animation-delay:calc(var(--i,0) * 70ms)}.motion-fill{transform-origin:0;transform:scaleX(var(--fill,0));animation:motion-fill var(--dur-spring) var(--ease-spring) both}@keyframes motion-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes motion-wave{0%{opacity:.4;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}@keyframes motion-fill{0%{transform:scaleX(0)}to{transform:scaleX(var(--fill,0))}}@media (max-width:1000px){.hero{grid-template-columns:1fr;gap:28px;padding:40px 32px}.steps{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:minmax(0,1fr)}}@media (max-width:860px){.top-nav{display:none}.tabbar{display:grid}body:has(.tabbar){padding-bottom:calc(76px + env(safe-area-inset-bottom))}.account .tabbar-dup{display:none}html{scroll-padding-top:76px}}@media (max-width:560px){.topbar-inner{min-height:60px;padding:10px 16px}.brand-mark{width:38px;height:38px;font-size:18px}.brand-text{font-size:15px}.brand-text small{font-size:11px}main{padding:16px 16px 40px}.hero{border-radius:26px;padding:28px 20px 20px}.hero-ring{border-width:38px;width:260px;height:260px;top:-110px;right:-90px}h1{font-size:28px}.intro{margin-bottom:22px;font-size:14px}.button{justify-content:center;width:100%}.next-card{padding:18px}.next-date time b{font-size:38px}.card{padding:16px}.card-head h2{font-size:18px}.steps{grid-template-columns:minmax(0,1fr)}.step{flex-direction:row;align-items:flex-start;padding:14px 92px 14px 14px}.step .chip{top:14px;right:14px}.card-head{flex-wrap:wrap}footer{flex-direction:column;gap:2px;padding:16px 16px 28px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}.login-link{background:var(--accent);color:#fff;border-radius:14px;flex-shrink:0;align-items:center;gap:6px;min-height:40px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.login-link:hover{background:var(--accent-hover)}.auth{background:var(--page);grid-template-columns:40% 60%;gap:0;max-width:none;min-height:100dvh;margin:0;padding:0;display:grid}.auth-brand{isolation:isolate;background:var(--navy);color:#fff;border-radius:0 42px 42px 0;place-items:center;padding:40px;display:grid;position:relative;overflow:hidden}.auth-brand .hero-ring{top:-110px;right:-110px}.auth-brand-inner{text-align:center;flex-direction:column;align-items:center;display:flex}.auth-mark{width:88px;height:88px;color:var(--navy);background:#fff;border-radius:26px;place-items:center;font-size:44px;font-weight:700;display:grid}.auth-name{margin-top:20px;font-size:30px;font-weight:600}.auth-tagline{color:#c7d2fe;margin-top:4px;font-size:14px}.auth-field{place-items:center;padding:40px 24px 64px;display:grid;position:relative}.auth-card{border:1px solid var(--line);background:#fff;border-radius:28px;width:100%;max-width:440px;padding:32px;box-shadow:0 1px 2px #141e370a}.auth-card h1{color:var(--navy);letter-spacing:0;margin:0;font-size:24px;font-weight:600;line-height:1.4}.auth-sub{color:var(--text-2);margin:4px 0 24px;font-size:14px}.google-button{border:1px solid var(--line);width:100%;min-height:52px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:14px;justify-content:center;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex}.google-button:hover:not(:disabled){background:var(--accent-soft);border-color:#c7d2fe}.google-button:disabled{opacity:.55;cursor:not-allowed}.form-error{color:#c13c2f;background:#fff0ee;border-radius:14px;margin:0 0 16px;padding:12px 14px;font-size:13px}.google-button+.form-error{margin:12px 0 0}.auth-note{background:var(--warning-bg);color:var(--warning);border-radius:14px;align-items:flex-start;gap:8px;margin-top:16px;padding:12px 14px;font-size:13px;display:flex}.auth-note svg{flex-shrink:0;margin-top:2px}.auth-help{color:var(--text-3);border-top:1px solid var(--line-2);margin-top:20px;padding-top:16px;font-size:12px}.back-link{min-height:44px;color:var(--accent);align-items:center;gap:6px;margin-top:12px;font-size:14px;font-weight:500;display:inline-flex}.auth-foot{text-align:center;color:#94a3b8;font-size:11px;position:absolute;bottom:16px;left:0;right:0}.account{align-items:center;gap:10px;min-width:0;display:flex}.avatar{width:36px;height:36px;color:var(--accent);background:#dbeafe;border-radius:999px;flex-shrink:0;place-items:center;font-weight:600;display:grid}.account-email{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:13px;overflow:hidden}.page-head{padding:8px 0 4px}.page-meta{color:var(--text-3);font-size:13px}.page-title{color:var(--navy);letter-spacing:0;margin:2px 0 0;font-size:24px;line-height:1.4}.task-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.next-mini .next-date{margin-bottom:0}@media (max-width:1000px){.auth{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.auth-brand{border-radius:0 0 36px 36px;padding:40px 24px 72px}.auth-mark{border-radius:20px;width:64px;height:64px;font-size:32px}.auth-name{margin-top:12px;font-size:22px}.auth-field{place-items:start center;padding-top:0}.auth-card{margin-top:-44px;position:relative}}@media (max-width:560px){.auth-card{border-radius:24px;padding:24px 20px}.account-email{display:none}.login-link{min-height:38px;padding:0 12px;font-size:13px}}.brand-logo{object-fit:contain;background:0 0;border:0;border-radius:0;padding:0}.auth-mark.brand-logo{filter:drop-shadow(0 8px 20px #00000059);background:0 0;border:0;border-radius:0;width:120px;height:120px;padding:0}@media (max-width:1000px){.auth-mark.brand-logo{width:96px;height:96px}}.brand-name{align-items:center;gap:8px;display:inline-flex}.trial-pill{background:var(--warning-bg);color:var(--warning);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;line-height:1.6}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card-intro{color:var(--text-2);margin-bottom:16px;font-size:14px}.form{gap:14px;display:grid}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:12px;display:flex}.field{color:var(--text-2);gap:6px;font-size:13px;font-weight:500;display:grid}.field small{color:var(--text-3);font-weight:400}.field.grow{flex:200px}.field.narrow{flex:0 0 88px}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;min-height:44px;font:inherit;color:var(--ink);transition:border-color var(--dur-fast) var(--ease-out-soft), background-color var(--dur-fast) var(--ease-out-soft);background:#f8fafc;border-radius:14px;padding:10px 14px;font-size:16px}.field textarea{resize:vertical;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);background:#fff;outline:none}.primary-button{background:var(--accent);color:#fff;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:14px;justify-content:center;justify-self:start;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;display:inline-flex}.primary-button:hover:not(:disabled){background:var(--accent-hover)}.primary-button:disabled,.ghost-button:disabled{opacity:.6;cursor:progress}.ghost-button.tall{border-radius:14px;min-height:44px}.chip-success{color:#14744f;background:#e9f8f0}.chip-danger{color:#c13c2f;background:#fff0ee}.chip-accent-soft{background:var(--accent-soft);color:var(--accent)}.leader{color:#c2410c;vertical-align:2px;background:#fff4e5;border-radius:999px;align-items:center;gap:3px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-flex}.icon-danger:hover{color:#c13c2f;background:#fff0ee;border-color:#f5c2bc}.facts{gap:12px;margin:0;display:grid}.facts dt{color:var(--text-3);font-size:12px}.facts dd{margin:2px 0 0;font-size:15px;font-weight:500}.empty{text-align:center;justify-items:center;gap:8px;padding:24px 8px;display:grid}.empty-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:18px;place-items:center;display:grid}.empty h2,.empty h3{color:var(--navy);font-size:18px}.empty p{color:var(--text-2);max-width:32em;font-size:14px}.row-link{border-radius:14px;align-items:center;gap:14px;width:100%;min-width:0;margin:-10px -4px;padding:10px 4px;display:flex}.row-link:hover{background:#f8fafc}.row-link .row-meta-text{display:block}@media (max-width:480px){.row-link{grid-template-columns:auto minmax(0,1fr) auto;gap:6px 12px;display:grid}.row-link>.task-icon{grid-row:1/span 2;align-self:center}.row-link>.chip{grid-area:2/2;justify-self:start}.row-link>.row-chevron{grid-area:1/3/span 2;align-self:center}}.row-chevron{color:var(--text-3);flex-shrink:0}.page-head .back-link{min-height:36px;margin:0 0 4px}.brand,.brand-text{min-width:0}.brand-name{white-space:nowrap}.brand-text small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width:560px){.hide-sm{display:none}.account{flex-shrink:0;gap:8px}.account .ghost-button{border-radius:14px;width:40px;height:40px;min-height:40px;padding:0}.trial-pill{padding:0 6px;font-size:10px}}.title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.live{border:1px solid var(--line);min-height:30px;color:var(--text-2);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:4px 12px;font-size:12.5px;font-weight:500;display:inline-flex}.live-dot{background:var(--text-3);border-radius:50%;width:8px;height:8px}.live-live .live-dot{animation:live-pulse 2.2s var(--ease-out-soft) infinite;background:#16a34a;box-shadow:0 0 #16a34a73}.live-connecting .live-dot{background:#f59e0b}.live-offline{color:var(--warning);background:var(--warning-bg);border-color:#fed7aa}.live-offline .live-dot{background:var(--warning)}@keyframes live-pulse{0%{box-shadow:0 0 #16a34a73}70%,to{box-shadow:0 0 0 7px #16a34a00}}.toaster{z-index:60;pointer-events:none;gap:8px;width:min(440px,100vw - 32px);display:grid;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}body:has(.tabbar) .toaster{bottom:92px}.toast{animation:toast-in var(--dur-spring) var(--ease-spring) both;pointer-events:auto;border-radius:16px;align-items:flex-start;gap:10px;padding:13px 16px;font-size:14px;font-weight:500;line-height:1.5;display:flex;box-shadow:0 12px 32px #171a4f29}.toast svg{flex-shrink:0;margin-top:2px}.toast-ok{background:var(--navy);color:#fff}.toast-ok svg{color:#6ee7a8}.toast-error{color:#c13c2f;background:#fff0ee;border:1px solid #fecaca}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:none}}.notice-inline{background:var(--warning-bg);color:var(--warning);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px 10px 14px;font-size:13.5px;font-weight:500;display:flex}.notice-inline .ghost-button{background:#fff;min-height:36px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}button[aria-busy=true]{cursor:progress;opacity:.75}@media (prefers-reduced-motion:reduce){.live-live .live-dot,.toast,.spin{animation:none}}.steps-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 16px;padding:0;list-style:none;display:grid}.steps-bar li{background:var(--page);color:var(--text-3);border-radius:12px;align-items:center;gap:7px;min-width:0;padding:8px 10px;font-size:12.5px;font-weight:500;display:flex}.steps-dot{border:1px solid var(--line);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:11px;font-weight:600;display:grid}.steps-bar .is-done{color:#14744f}.steps-bar .is-done .steps-dot{color:#fff;background:#16a34a;border-color:#16a34a}.steps-bar .is-now{background:var(--accent-soft);color:var(--accent)}.steps-bar .is-now .steps-dot{background:var(--accent);border-color:var(--accent);color:#fff}.review-note{background:var(--warning-bg);color:var(--warning);border-radius:14px;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.review-note.is-ok{color:#14744f;background:#e9f8f0}.review-note svg{flex-shrink:0;margin-top:2px}.review-note strong{font-size:13px;font-weight:600}.review-note p{color:var(--ink);white-space:pre-line;margin-top:2px;font-size:14px}.submit-bar{border-top:1px solid var(--line-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:16px;display:flex}.submit-hint{color:var(--text-2);flex:200px;font-size:13px}.primary-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stats.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{border:1px solid var(--line);background:#fff;border-radius:22px;gap:2px;padding:16px 18px;display:grid}.stat-value{color:var(--navy);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1.2}.stat-label{color:var(--text-2);font-size:13px}.stat-accent{background:var(--accent-soft);border-color:#c7d2fe}.stat-accent .stat-value{color:var(--accent)}.stat-success{background:#e9f8f0;border-color:#bbe5cd}.stat-success .stat-value{color:#14744f}.subject-progress{gap:4px;margin:0;padding:0;list-style:none;display:grid}.subject-progress a{color:inherit;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:8px 10px;text-decoration:none;display:grid}.subject-progress a:hover,.subject-progress a.is-active{background:var(--page)}.subject-progress a.is-active{box-shadow:inset 0 0 0 1px var(--accent)}.sp-name{align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.sp-name i{border-radius:3px;width:10px;height:10px}.sp-count{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:13px}.sp-bar{background:var(--line-2);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.sp-bar>span{border-radius:inherit;height:100%;display:block}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.filter-chips{flex-wrap:wrap;gap:6px;max-width:100%;display:flex}.filter-chip{border:1px solid var(--line);min-height:36px;color:var(--text-2);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.filter-chip b{color:var(--text-3);font-size:12px;font-weight:600}.filter-chip:hover{color:var(--accent);border-color:#c7d2fe}.filter-chip.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.filter-chip.is-active b{color:#c7d2fe}.search{border:1px solid var(--line);background:var(--page);max-width:360px;min-height:44px;color:var(--text-3);border-radius:14px;flex:240px;align-items:center;gap:8px;padding:0 14px;display:flex}.search:focus-within{border-color:var(--accent);background:#fff}.search input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:14px}.admin-groups{grid-template-columns:minmax(0,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.admin-group{border:1px solid var(--line);transition:box-shadow var(--dur-base) var(--ease-out-soft);background:#fff;border-radius:18px}.admin-group[open]{border-color:#c7d2fe;box-shadow:0 10px 28px #171a4f14}.admin-group summary{cursor:pointer;align-items:center;gap:12px;min-height:64px;padding:12px 14px;list-style:none;display:flex}.admin-group summary::-webkit-details-marker{display:none}.ag-code{border:1.5px solid var(--line);text-align:center;letter-spacing:.02em;min-width:52px;color:var(--text-2);border-radius:10px;flex-shrink:0;padding:4px 8px;font-size:12px;font-weight:700}.ag-main{flex:1;min-width:0;display:grid}.ag-chevron{color:var(--text-3);transition:transform var(--dur-base) var(--ease-spring);flex-shrink:0}.admin-group[open] .ag-chevron{transform:rotate(180deg)}.ag-body{border-top:1px solid var(--line-2);gap:16px;padding:4px 14px 16px;display:grid}.ag-members{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.ag-members li{display:grid}.review-form{background:var(--page);border-radius:16px;grid-template-columns:minmax(0,1fr) 160px;gap:12px;padding:14px;display:grid}.review-form .full{grid-column:1/-1}.review-form .field input,.review-form .field select,.review-form .field textarea{background:#fff}.danger-zone{justify-content:flex-end;display:flex}.danger-button{color:#c13c2f}.danger-button:hover{color:#c13c2f;background:#fff0ee;border-color:#f5c2bc}.row.is-muted{opacity:.55}@media (max-width:860px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.stats.is-3,.review-form{grid-template-columns:minmax(0,1fr)}.admin-group summary{gap:10px;padding:12px}.admin-group summary .chip{display:none}.ag-code{min-width:44px}.search{max-width:none}.steps-bar li{text-align:center;flex-direction:column;padding:8px 4px;font-size:11.5px}}.form>button{justify-self:start}.narrow-main{max-width:640px}.card-head-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:inline-flex}.tpl{grid-template-columns:minmax(0,400px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.tpl-fields{gap:14px;display:grid;position:sticky;top:88px}.tpl-fields code{background:var(--page);border-radius:6px;margin:0 3px;padding:1px 6px;font-size:12.5px}.tpl-actions{align-items:center}.tpl-preview{gap:8px;display:grid}.tpl-preview .pf-sheet{filter:drop-shadow(0 14px 34px #171a4f1a)}@media (max-width:900px){.tpl{grid-template-columns:minmax(0,1fr)}.tpl-fields{position:static}}.notice-inline.is-info{background:var(--accent-soft);color:var(--accent);justify-content:flex-start;gap:8px}.advisor-form{gap:12px;display:grid}.af-step{border:1px solid var(--line);transition:border-color var(--dur-base) var(--ease-out-soft), box-shadow var(--dur-base) var(--ease-out-soft);background:#fff;border-radius:22px;gap:12px;padding:18px;display:grid}.af-step.is-now{border-color:#c7d2fe;box-shadow:0 10px 28px #2344c614}.af-step h2{color:var(--navy);align-items:center;gap:10px;font-size:17px;font-weight:600;display:flex}.af-num{background:var(--page);width:28px;height:28px;color:var(--text-2);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.af-step.is-now .af-num{background:var(--accent);color:#fff}.af-step.is-done .af-num{color:#fff;background:#16a34a}.af-camera{background:var(--accent-soft);color:var(--accent);font:inherit;cursor:pointer;border:2px dashed #c7d2fe;border-radius:18px;justify-items:center;gap:8px;padding:28px 16px;font-size:15px;font-weight:600;display:grid}.af-camera:disabled{border-color:var(--line);background:var(--page);color:var(--text-3);cursor:not-allowed}.af-photo{justify-items:start;gap:10px;display:grid}.af-photo img{object-fit:contain;background:var(--page);border-radius:16px;width:100%;max-height:420px}.af-camera small{color:var(--text-2);font-size:12px;font-weight:500}.af-group{color:var(--text-2);font-size:14px}.af-group b{color:var(--ink)}.af-people{counter-reset:p;gap:8px;padding:0;list-style:none;display:grid}.af-people li{counter-increment:p;background:var(--page);border-radius:14px;grid-template-columns:1fr minmax(0,168px);align-items:center;gap:10px;padding:10px 10px 10px 14px;display:grid}.af-who{gap:1px;min-width:0;font-size:15px;display:grid}.af-who b{font-weight:600}.af-who small{color:var(--text-3);font-size:12.5px}.af-people input{border:1px solid var(--line);width:100%;min-height:44px;font:inherit;letter-spacing:.02em;background:#fff;border-radius:12px;padding:8px 12px;font-size:15px}.af-people input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}@media (max-width:480px){.af-people li{grid-template-columns:1fr;gap:6px}}.af-agree{border:1px solid var(--line);color:var(--ink);cursor:pointer;transition:border-color var(--dur,.2s) ease, background-color var(--dur,.2s) ease;background:#fff;border-radius:20px;align-items:flex-start;gap:12px;padding:16px 18px;font-size:15px;line-height:1.6;display:flex}.af-preview{justify-content:center;display:flex}.af-agree input{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0;margin-top:3px}.af-agree b{margin:0 4px;font-weight:600}.af-agree:has(input:checked){background:#f3fcf6;border-color:#bbf7d0}.af-send{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);background:#fffffff0;border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;bottom:12px;box-shadow:0 10px 30px #171a4f1a}body:has(.tabbar) .af-send{bottom:84px}.af-send .submit-hint{flex:1 1 0;min-width:0;margin:0;font-size:13px;line-height:1.5}.af-send .primary-button{flex-shrink:0}@media (max-width:480px){.af-send{flex-wrap:nowrap;padding:10px 10px 10px 16px}}.empty-icon.is-ok{color:#16a34a;background:#e9f8f0}.empty .primary-button{justify-self:center;margin-top:8px}.advisor-done{align-items:flex-start;gap:14px;display:flex}.locked-note{background:var(--page);color:var(--text-2);border-radius:16px;align-items:center;gap:10px;padding:14px 16px;font-size:14px;line-height:1.6;display:flex}.locked-note svg{color:var(--text-3);flex-shrink:0}.advisor-when{color:var(--text-2);margin-top:2px;font-size:13px}.advisor-done img{object-fit:cover;background:var(--page);border-radius:16px;flex-shrink:0;width:96px;height:96px}.advisor-done p+p{margin-top:2px}a.primary-button{justify-self:start;text-decoration:none}.admin-nav{border:1px solid var(--line);scrollbar-width:none;background:#fff;border-radius:16px;gap:4px;padding:4px;display:flex;overflow-x:auto}.admin-nav a{min-height:42px;color:var(--text-2);white-space:nowrap;border-radius:12px;flex:1 0 auto;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.admin-nav a:hover{color:var(--accent);background:var(--accent-soft)}.admin-nav a.is-active{background:var(--navy);color:#fff}.admin-nav .an-short{display:none}@media (max-width:1080px){.admin-nav{grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:visible}.admin-nav a{white-space:normal;text-align:center;flex-direction:column;gap:3px;min-height:58px;padding:6px 2px;font-size:12px;line-height:1.25}.admin-nav a svg{width:19px;height:19px}.admin-nav .an-long{display:none}.admin-nav .an-short{display:inline}}@media (max-width:380px){.admin-nav a{font-size:11px}}.stat-warning{background:var(--warning-bg);border-color:#fed7aa}.stat-warning .stat-value{color:var(--warning)}.stat-text{font-size:22px}.ag-advisor{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:14px;display:flex}.af-evidence{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-top:12px;display:flex}.af-evidence img{background:var(--page);border-radius:14px;max-width:100%;max-height:220px;display:block}.af-evidence .af-sig{border:1px solid var(--line);background:#fff;max-height:110px;padding:6px}.mail-ok,.mail-bad{align-items:center;gap:6px;display:inline-flex}.mail-ok{color:#14744f}.mail-bad{color:var(--warning)}.ag-actions{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.ag-actions .return-form{flex:320px;margin-top:0}.coord-list{gap:12px;display:grid}.coord-subject{background:var(--page);border-radius:14px;gap:6px;padding:10px 12px;display:grid}.coord-people{gap:4px;margin:0;padding:0;list-style:none;display:grid}.coord-people li{justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.coord-people small{color:var(--text-3)}.coord-people .icon-button{width:36px;height:36px}.field.narrow-md{flex:0 160px}.draw-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.draw-steps .card{flex-direction:column;gap:12px;display:flex}.draw-steps .card-intro{margin-bottom:0}.draw-steps h2{align-items:center;gap:10px;display:flex}.draw-steps .af-num{background:var(--accent-soft);color:var(--accent)}.check{color:var(--text-2);cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent);margin-top:2px}.btn-row{flex-wrap:wrap;gap:8px;display:flex}.draw-days{gap:16px;display:grid}.draw-day h3{color:var(--navy);margin-bottom:8px;font-size:15px;font-weight:600}.draw-rooms{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.draw-room{background:var(--page);border-radius:16px;padding:10px 12px}.draw-room-name{color:var(--text-2);margin-bottom:6px;font-size:13px;font-weight:600}.draw-room ol{gap:4px;margin:0;padding:0;list-style:none;display:grid}.draw-room li{background:#fff;border-radius:12px;align-items:flex-start;gap:10px;padding:8px 10px;font-size:14px;display:flex}.draw-room li.is-empty{border:1px dashed var(--line);background:0 0}.draw-seq{background:var(--accent-soft);width:24px;height:24px;color:var(--accent);border-radius:8px;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.draw-group{min-width:0;display:grid}.draw-group b{font-size:12px;font-weight:700}.draw-group span{overflow-wrap:anywhere}.slot-card{background:var(--navy);color:#fff;border-radius:22px;gap:6px;padding:22px 24px;display:grid;position:relative;overflow:hidden}.slot-card:after{content:"";background:radial-gradient(circle,#2344c68c,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;top:-60px;right:-60px}.slot-kicker{color:#c7d2fe;font-size:13px}.slot-day{font-size:22px;font-weight:600}.slot-facts{z-index:1;gap:12px;margin-top:6px;display:flex;position:relative}.slot-facts span{background:#ffffff1a;border-radius:14px;padding:10px 16px;font-size:20px;font-weight:700;display:grid}.slot-facts small{color:#c7d2fe;font-size:12px;font-weight:500}@media (max-width:1000px){.draw-steps{grid-template-columns:minmax(0,1fr)}}@media print{.no-print,.topbar,.admin-nav,.tabbar,.toaster,.live{display:none!important}body{background:#fff}.card{box-shadow:none;border:0;padding:0}.draw-day{break-inside:avoid}}.teacher-forms{gap:12px;margin:0;padding:0;list-style:none;display:grid}.teacher-form{align-items:flex-start;gap:16px;display:flex}.tf-photo{object-fit:cover;background:var(--page);border-radius:16px;flex-shrink:0;width:120px;height:120px}.tf-main{flex:1;gap:6px;min-width:0;display:grid}.tf-main .card-head{margin-bottom:0}.tf-main h2{overflow-wrap:anywhere;font-size:17px}.tf-members{color:var(--text-2);font-size:14px}.tf-main .btn-row{margin-top:6px}@media (max-width:560px){.teacher-form{flex-direction:column}.tf-photo{width:100%;height:180px}}.form-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pf-sheet{width:100%;max-width:210mm;margin:0 auto;container-type:inline-size}.paper-form{--ink-fill:#1f3fb5;aspect-ratio:210/297;color:#111;outline-offset:-1.6cqw;background:#fff;border:.35cqw solid #7c8db5;border-radius:.4cqw;outline:.9cqw solid #fff;flex-direction:column;gap:2.2cqw;padding:5cqw 6cqw 4cqw;font-size:2.05cqw;line-height:1.55;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1.25cqw #fff,inset 0 0 0 1.45cqw #c3cbe0}.pf-head{grid-template-columns:34% 1fr;align-items:start;gap:3cqw;display:grid}.pf-badge{letter-spacing:.04em;padding:0 1.4cqw 1.4cqw 0;font:700 2.6cqw/1 Courier New,ui-monospace,monospace;display:flex}.pf-badge span{color:#f2f2f2;background:#0b0b0b;padding:1.3cqw 2cqw;box-shadow:1.4cqw 1.4cqw #6b6b6b}.pf-title{text-align:center;color:#111;border:.3cqw solid #222;border-radius:1.6cqw;margin-top:.6cqw;padding:2cqw;font-size:2.6cqw;font-weight:700;line-height:1.35}.pf-chip{place-self:flex-end end;font-size:1.6cqw}.pf-lines{gap:1.5cqw;margin-top:1.5cqw;display:grid}.pf-row{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:.8cqw;display:flex}.pf-row b{text-underline-offset:.5cqw;font-weight:700;text-decoration:underline;text-decoration-thickness:.15cqw}.pf-member{padding-left:5cqw}.pf-fill{min-width:0;color:var(--ink-fill);text-align:center;text-overflow:clip;border-bottom:.2cqw dotted #555;flex:1 1 0;padding:0 .8cqw;font-weight:500;overflow:hidden}.pf-fill:empty:after{content:" "}.pf-row b+.pf-fill{margin-right:1.4cqw}.pf-photobox{flex-direction:column;flex:1 1 0;gap:1.2cqw;min-height:0;display:flex}.pf-photobox h2{text-align:center;color:#111;background:#fff;border:.25cqw solid #111;padding:.9cqw;font-size:2.4cqw;font-weight:500;box-shadow:inset 0 0 0 1cqw #fff,inset 0 0 0 10cqw #cfcfcf}.pf-frame{background:#fff;border:.25cqw solid #111;flex:1 1 0;place-items:center;min-height:0;display:grid;overflow:hidden}.pf-frame img{object-fit:contain;width:100%;height:100%}.pf-frame-empty{color:#b5b5b5;font-size:1.8cqw}.paper-form .pf-foot{color:#8a8a8a;background:0 0;border-top:.12cqw solid #e2e2e2;flex-direction:row;justify-content:space-between;gap:2cqw;width:auto;max-width:none;margin:0;padding:.8cqw 0 0;font-size:1.3cqw;display:flex}.paper-form .pf-foot>span:first-child{color:#8a8a8a;font-weight:500}@media print{.pf-sheet{max-width:190mm}.paper-form{break-inside:avoid;border-radius:0}main{max-width:none!important;padding:0!important}@page{size:A4;margin:10mm}}.track{background:var(--navy);color:#fff;border-radius:26px;padding:22px 24px 20px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 18px 40px -24px #171a4f8c}.track:after{content:"";aspect-ratio:1;pointer-events:none;border:1px solid #ffffff0f;border-radius:50%;width:60%;position:absolute;inset:auto -20% -60% auto;box-shadow:0 0 0 40px #ffffff05,0 0 0 80px #ffffff04}.track-head{justify-content:space-between;align-items:baseline;display:flex}.track-kicker{letter-spacing:.12em;color:#aab4e8;font-size:12px}.track-count{color:#aab4e8;font-variant-numeric:tabular-nums;font-size:14px}.track-count b{color:#fff;font-size:26px;font-weight:600}.track-steps{counter-reset:s;grid-template-columns:repeat(6,minmax(0,1fr));margin:18px 0 16px;display:grid;position:relative}.track-steps:before,.track-steps:after{content:"";border-radius:2px;height:2px;position:absolute;top:15px;left:8.33333%;right:8.33333%}.track-steps:before{background:#ffffff24}.track-steps:after{transform-origin:0;transform:scaleX(calc(var(--fill) * 1.2 - .1));animation:track-grow 1.1s var(--ease-spring) .15s both;background:linear-gradient(90deg,#7c92ff,#b8c4ff)}@keyframes track-grow{0%{transform:scaleX(0)}}.track-steps li{z-index:1;text-align:center;justify-items:center;display:grid;position:relative}.track-steps li>a,.track-steps li{gap:8px}.track-steps li>a{justify-items:center;display:grid}.track-dot{background:var(--navy);color:#aab4e8;width:32px;height:32px;animation:motion-wave var(--dur-spring) var(--ease-bounce) both;animation-delay:calc(var(--i) * 70ms + .2s);border:2px solid #ffffff38;border-radius:50%;place-items:center;font-size:13px;font-weight:600;display:grid}.track-label{color:#aab4e8;max-width:9em;font-size:12px;line-height:1.35}.track-steps .is-done .track-dot{color:var(--navy);background:#fff;border-color:#fff}.track-steps .is-done .track-label{color:#dfe4ff}.track-steps .is-now .track-dot{color:#fff;border-color:#fff;box-shadow:0 0 0 6px #7c92ff40}.track-steps .is-now .track-dot:after{content:"";width:32px;height:32px;animation:track-ping 2.4s var(--ease-out-soft) infinite;border:2px solid #9fb0ff;border-radius:50%;position:absolute}@keyframes track-ping{0%{opacity:.8;transform:scale(1)}70%,to{opacity:0;transform:scale(1.9)}}.track-steps .is-now .track-label{color:#fff;font-weight:600}.track-next{color:#dfe4ff;border-top:1px solid #ffffff1a;padding-top:14px;font-size:14px}.track-next span{color:#fff;background:#ffffff1a;border-radius:999px;margin-right:8px;padding:1px 10px;font-size:12px;display:inline-block}.claim{background:linear-gradient(#fff,#f8f9ff);border:1px solid #c7d2fe}.claim-kicker{letter-spacing:.12em;color:var(--accent);margin-bottom:4px;font-size:12px}.claim-title{color:var(--navy);margin-bottom:6px;font-size:22px;font-weight:600}.claim-search{flex-wrap:wrap;align-items:flex-end;gap:10px;max-width:520px;display:flex}.claim-search input{letter-spacing:.08em;font-variant-numeric:tabular-nums;font-size:20px}.claim-list{gap:10px;margin-top:16px;display:grid}.claim-item{border:1px solid var(--line);background:#fff;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.claim-who{align-items:center;gap:14px;min-width:0;display:flex}.claim-code{background:var(--navy);color:#fff;letter-spacing:.06em;font-variant-numeric:tabular-nums;border-radius:10px;flex-shrink:0;padding:6px 10px;font-size:13px;font-weight:600}.files{gap:14px;display:grid}.file-list{gap:8px;display:grid}.file-item{background:var(--page);border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.file-kind{color:#c13c2f;background:#fff0ee;border-radius:11px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.file-kind.is-link{background:var(--accent-soft);color:var(--accent)}.file-main{flex:1;gap:2px;min-width:0;display:grid}.file-main:hover .row-title{color:var(--accent)}.seg{background:var(--page);border-radius:14px;justify-self:start;gap:4px;padding:4px;display:inline-flex}.seg button{min-height:34px;color:var(--text-2);font:inherit;cursor:pointer;transition:background-color var(--dur-fast), color var(--dur-fast), box-shadow var(--dur-fast);background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:0 14px;font-size:13px;display:inline-flex}.seg button.is-on{color:var(--navy);background:#fff;font-weight:600;box-shadow:0 1px 3px #131a2c1a}.files .inline-form{margin-top:0}.facts-inline{align-items:baseline;gap:10px;font-size:15px;font-weight:500;display:flex}.facts-inline span{color:var(--text-2);font-size:13px;font-weight:500}.columns-even{grid-template-columns:repeat(2,minmax(0,1fr))}.quiet{color:var(--text-3);font-size:14px}.news{display:grid}.news-item{border-top:1px solid var(--line-2);padding:14px 0}.news-item:first-child{border-top:0;padding-top:0}.news-meta{color:var(--text-3);align-items:center;gap:10px;margin-bottom:4px;font-size:12px;display:flex}.news-pin{color:var(--warning);align-items:center;gap:4px;font-weight:600;display:inline-flex}.news-item h3{color:var(--ink);font-size:16px;font-weight:600}.news-body{color:var(--text-2);white-space:pre-line;margin-top:4px;font-size:14px}.news-links{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.news-link{border:1px solid var(--line);max-width:100%;color:var(--navy);white-space:nowrap;text-overflow:ellipsis;transition:border-color var(--dur-fast), background-color var(--dur-fast);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex;overflow:hidden}.news-link:hover{border-color:var(--accent);background:var(--accent-soft)}.mini-head{letter-spacing:.1em;color:var(--text-3);margin:4px 0 8px;font-size:12px;font-weight:500}.mini-head:not(:first-of-type){margin-top:18px}.people{gap:4px;display:grid}.person{gap:12px;padding:8px 0;display:flex}.person-main{gap:2px;min-width:0;display:grid}.person-links{color:var(--accent);flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.person-links a{align-items:center;gap:4px;display:inline-flex}.person-links a:hover{text-decoration:underline}.subject-people{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.subject-block{background:var(--page);border-left:3px solid var(--c);border-radius:16px;padding:12px 14px}.subject-name{color:var(--navy);align-items:center;gap:8px;margin-bottom:4px;font-size:14px;font-weight:600;display:flex}.subject-dot{background:var(--c);border-radius:50%;width:8px;height:8px}.subject-block .person{padding:4px 0}.subject-block .avatar,.subject-people:empty{display:none}.subject-pending{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:4px;display:flex}.subject-pending>span{background:var(--page);color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:500;display:inline-flex}.subject-pending small{color:var(--text-3);margin-left:2px;font-size:12px}@media (max-width:860px){.columns-even{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.track{border-radius:22px;padding:18px 16px}.track-steps{grid-template-columns:minmax(0,1fr);gap:10px;margin:14px 0}.track-steps:before,.track-steps:after{width:2px;height:auto;inset:16px auto 16px 15px}.track-steps:after{transform-origin:top;transform:scaleY(calc(var(--fill) * 1.2 - .1));animation-name:track-grow-y}.track-steps li,.track-steps li>a{text-align:left;grid-template-columns:32px 1fr;place-items:center start;gap:12px}.track-steps li>a{grid-column:1/-1}.track-label{max-width:none;font-size:14px}}@keyframes track-grow-y{0%{transform:scaleY(0)}}@media (prefers-reduced-motion:reduce){.track-steps:after,.track-dot,.track-steps .is-now .track-dot:after{animation:none}}.contact-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin-top:16px;display:grid}.contact-form>button{justify-self:start}.file-chip{background:var(--accent-soft);color:var(--navy);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 6px 4px 12px;font-size:13px;display:inline-flex}.file-chip .icon-button{width:28px;height:28px}@media (max-width:760px){.contact-form{grid-template-columns:minmax(0,1fr)}}.meter{background:var(--line-2);border-radius:999px;height:10px;margin-bottom:4px;overflow:hidden}.meter>span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), #6f86ff);height:100%;display:block}.ag-members li.is-muted .row-title{color:var(--text-2)}.ag-members .chip{vertical-align:middle;margin-left:8px;padding:1px 8px;font-size:11px}.ag-edit{margin-top:4px}.ag-edit>summary{color:var(--accent);cursor:pointer;font-size:12px;list-style:none;display:inline-block}.ag-edit>summary::-webkit-details-marker{display:none}.ag-edit[open]{border:1px solid var(--line);background:#fff;border-radius:14px;gap:10px;margin-top:8px;padding:12px;display:grid}.roster-edit{grid-template-columns:1fr .7fr 2fr .5fr .5fr auto;align-items:end;gap:8px;display:grid}@media (max-width:760px){.roster-edit{grid-template-columns:1fr 1fr}}.show{--bg:#0c0f33;--panel:#131846;--flap:#1b2156;--paper:#f3efe4;--muted:#8b93c9;background:var(--bg);min-height:100dvh;color:var(--paper);background-image:radial-gradient(circle at 50% 38%,#ffffff0b,#0000 55%),repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 4px);flex-direction:column;display:flex;overflow-x:hidden}.show-bar{justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.show-title{letter-spacing:.2em;color:var(--muted);text-align:center;font-size:13px}.show-link{color:var(--paper);font:inherit;cursor:pointer;background:0 0;border:1px solid #f3efe429;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;display:inline-flex}.show-link:hover{background:#f3efe40f}.dial-wrap{transition:flex-grow .9s var(--ease-spring), padding .9s var(--ease-spring);flex:1;align-content:center;place-items:center;gap:28px;padding:24px;display:grid}.is-board .dial-wrap{flex:none;padding:0 24px 8px}.dial{aspect-ratio:1;width:min(64vw,380px);color:inherit;cursor:pointer;transition:width .9s var(--ease-spring), transform var(--dur-spring) var(--ease-bounce);-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;padding:0;position:relative}.dial:disabled{cursor:default}.dial:not(:disabled):hover .dial-core{transform:scale(1.03)}.dial:not(:disabled):active{transition-duration:.12s;transform:scale(.95)}.is-board .dial{pointer-events:none;width:0}.dial-rings{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ring{fill:none;stroke:var(--paper);transform-origin:100px 100px}.ring-1{stroke-width:.6px;stroke-dasharray:1 4.03;opacity:.55;animation:60s linear infinite ring-turn}.ring-2{stroke-width:2.4px;stroke-dasharray:.8 7.996;opacity:.3;animation:90s linear infinite reverse ring-turn}.ring-3{stroke-width:.5px;opacity:.2}.is-rolling .ring-1{animation-duration:1.4s}.is-rolling .ring-2{animation-duration:2.2s}.is-board .dial-rings{opacity:0;transition:opacity .3s}@keyframes ring-turn{to{transform:rotate(360deg)}}.dial-core{background:var(--paper);color:var(--bg);transition:transform var(--dur-spring) var(--ease-bounce), inset .9s var(--ease-spring);border-radius:50%;place-items:center;display:grid;position:absolute;inset:18%;box-shadow:0 0 0 10px #f3efe40f,0 30px 60px -20px #0009,inset 0 -6px #0c0f3314}.is-rolling .dial-core{animation:core-pulse .7s var(--ease-out-soft) infinite alternate}@keyframes core-pulse{to{transform:scale(.965)}}.dial-label{letter-spacing:.02em;font-size:clamp(28px,6vw,44px);font-weight:600}.dial-ticker{letter-spacing:.06em;font-variant-numeric:tabular-nums;font-size:clamp(30px,7vw,52px);font-weight:700}.dial-opts{color:var(--muted);justify-items:center;gap:10px;font-size:14px;display:grid}.dial-opts label{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.dial-opts input[type=checkbox]{width:18px;height:18px;accent-color:var(--paper)}.dial-opts input[type=number]{width:56px;color:var(--paper);font:inherit;text-align:center;background:0 0;border:1px solid #f3efe433;border-radius:8px;padding:4px 8px}.board{padding:8px 24px 40px}.board-days{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;max-width:1680px;margin:0 auto;display:grid}.bday{background:var(--panel);animation:bday-in .7s var(--ease-spring) both;animation-delay:var(--d);border:1px solid #f3efe412;border-radius:18px;padding:16px}@keyframes bday-in{0%{opacity:0;transform:translateY(24px)}}.bday-head{border-bottom:1px dashed #f3efe424;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:12px;display:flex}.bday-date{background:var(--paper);min-width:52px;color:var(--bg);border-radius:12px;justify-items:center;padding:6px 8px;line-height:1;display:grid}.bday-date b{font-size:26px;font-weight:700}.bday-date small{font-size:12px}.bday-meta{font-size:16px;font-weight:600;line-height:1.3;display:grid}.bday-meta small{color:var(--muted);font-size:12px;font-weight:400}.bday-rooms{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.broom-name{letter-spacing:.12em;color:var(--muted);margin-bottom:6px;font-size:12px}.broom ol{gap:5px;display:grid}.broom li{align-items:center;gap:8px;display:flex}.bseq{width:18px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;font-size:12px}.flap{--c:transparent;perspective:300px;background:var(--flap);box-shadow:inset 3px 0 0 var(--c), inset 0 -1px 0 #00000059;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:#f3efe480;border-radius:6px;flex:1;padding:5px 10px;font-size:17px;font-weight:600;transition:color .3s,box-shadow .4s;display:block;position:relative}.flap:after{content:"";background:#00000073;height:1px;position:absolute;top:50%;left:0;right:0}.flap.is-set{color:var(--paper)}.flap.is-empty{color:#f3efe433}.flap-face{transform-origin:50%;backface-visibility:hidden;animation:90ms linear both flap;display:block}.flap.is-set .flap-face{animation:flap-land .32s var(--ease-bounce) both}@keyframes flap{0%{opacity:.4;transform:rotateX(-80deg)}}@keyframes flap-land{0%{transform:rotateX(-90deg)}}.bcommittee,.bprep{color:var(--paper);gap:2px;margin-top:10px;font-size:13px;display:grid}.bcommittee small,.bprep small{letter-spacing:.12em;color:var(--muted);font-size:11px}.bprep{letter-spacing:.04em;border-top:1px dashed #f3efe424;padding-top:10px}.board-actions{animation:bday-in .6s var(--ease-spring) both;animation-delay:var(--d);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:28px;display:flex}.show-btn{min-height:48px;color:var(--paper);font:inherit;cursor:pointer;transition:background-color var(--dur-fast), transform var(--dur-spring) var(--ease-bounce);background:0 0;border:1px solid #f3efe433;border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-size:15px;display:inline-flex}.show-btn:hover{background:#f3efe412}.show-btn:active{transform:scale(.97)}.show-btn.is-primary{background:var(--paper);color:var(--bg);border-color:var(--paper);font-weight:600}.show-btn:disabled{opacity:.6}.show-note{color:var(--muted);font-size:13px}@media (prefers-reduced-motion:reduce){.ring-1,.ring-2,.bday,.board-actions,.flap-face,.is-rolling .dial-core{animation:none!important}}.show-launch{background:var(--navy);color:#fff;border-radius:22px;align-items:center;gap:16px;margin-bottom:16px;padding:18px 20px;display:flex;box-shadow:0 18px 40px -26px #171a4fb3}.show-launch b{font-size:17px;font-weight:600;display:block}.show-launch small{color:#aab4e8;font-size:13px;display:block}.show-launch-icon{background:#ffffff1a;border-radius:16px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.draw-prep{color:var(--text-2);margin:8px 0 0;font-size:13px}.draw-prep b{color:var(--warning)}.committee-form{align-items:flex-end;gap:6px;margin-top:10px;display:flex}.committee-form .field{flex:1}.committee-form .field input{min-height:36px;padding:6px 10px;font-size:13px}.draw-committee{margin-top:4px;font-size:12px}.print-only{display:none}@media print{.print-only{display:block}.committee-form{display:none}}.slot-prep{border-top:1px solid #ffffff1f;align-items:center;gap:8px;margin-top:14px;padding-top:12px;font-size:14px;display:flex}.sched{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;display:grid}.sched-day{border:1px solid var(--line);background:#fff;border-radius:22px;align-content:start;gap:14px;padding:18px;display:grid}.sched-head{align-items:center;gap:14px;display:flex}.sched-date{background:var(--navy);color:#fff;border-radius:14px;justify-items:center;min-width:56px;padding:8px;line-height:1;display:grid}.sched-date b{font-size:26px;font-weight:700}.sched-date small{color:#aab4e8;font-size:12px}.sched-title{color:var(--navy);font-size:17px;font-weight:600}.sched-sub{color:var(--text-2);font-size:13px}.sched-rooms{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.sched-room{background:var(--page);border-radius:16px;align-content:start;gap:8px;padding:12px;display:grid}.sched-room-name{letter-spacing:.1em;color:var(--text-3);font-size:12px}.sched-room ol{gap:4px;display:grid}.sched-room li{border-radius:10px;align-items:flex-start;gap:8px;padding:4px 6px;display:flex}.sched-room li.is-mine{background:var(--accent-soft);box-shadow:inset 0 0 0 1px #c7d2fe}.sched-seq{width:16px;color:var(--text-3);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:2px;font-size:12px}.sched-room details{flex:1;min-width:0}.sched-room summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:2px 8px;font-size:14px;list-style:none;display:flex}.sched-room summary::-webkit-details-marker{display:none}.sched-room summary b{letter-spacing:.04em;font-variant-numeric:tabular-nums}.sched-room summary span{color:var(--text-3);font-size:12px}.sched-room summary .chip{padding:0 8px;font-size:11px}.sched-room details p{color:var(--text-2);padding:4px 0 2px;font-size:13px}.sched-meta,.sched-prep{color:var(--text-2);align-items:baseline;gap:6px;font-size:13px;display:flex}.sched-meta svg,.sched-prep svg{flex-shrink:0;position:relative;top:2px}.sched-prep{border-top:1px dashed var(--line);padding-top:10px;display:block}.sched-prep .is-mine,.sched-meta .is-mine{color:var(--accent);font-weight:600}@media (max-width:420px){.sched{grid-template-columns:minmax(0,1fr)}}@media print{.sched-day{break-inside:avoid}.sched-room details>p{display:block}}.is-board .dial-wrap{display:none}.is-board .board{animation:bday-in .5s var(--ease-spring) both}.bprep{animation:bday-in .6s var(--ease-spring) both;animation-delay:var(--d)}.live-grid{flex:1;grid-template-columns:minmax(320px,400px) minmax(0,1fr);align-items:start;gap:20px;padding:0 24px 32px;display:grid}.stage{background:var(--panel);border:1px solid #f3efe412;border-radius:24px;justify-items:center;gap:16px;padding:22px 20px;display:grid;position:sticky;top:16px}.stage-head{gap:8px;width:100%;display:grid}.stage-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.stage-count b{color:var(--paper);font-size:28px;font-weight:700}.meter.is-dark{background:#f3efe41a;height:6px}.meter.is-dark>span{background:var(--paper);transform-origin:0;transition:transform .8s var(--ease-spring)}.stage-hint{color:var(--muted);text-align:center;font-size:15px}.dial-sm{width:min(70vw,230px)}.dial-label small{letter-spacing:.2em;opacity:.6;margin-bottom:2px;font-size:14px;font-weight:500;display:block}.dial-sm .dial-label{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:34px;line-height:1.1}.dial-label.is-dim{opacity:.45;font-size:22px!important}.dial-sm .dial-ticker{font-size:36px}.dial:disabled .dial-core{cursor:default}.picker{gap:12px;width:100%;max-height:42vh;padding-right:4px;display:grid;overflow-y:auto}.picker-subject{letter-spacing:.14em;color:var(--muted);margin-bottom:6px;font-size:11px}.picker-chips{flex-wrap:wrap;gap:6px;display:flex}.pchip{background:var(--flap);min-width:64px;min-height:40px;color:var(--paper);font:inherit;letter-spacing:.05em;box-shadow:inset 3px 0 0 var(--c);cursor:pointer;font-variant-numeric:tabular-nums;transition:transform var(--dur-spring) var(--ease-bounce), background-color var(--dur-fast), color var(--dur-fast);border:1px solid #f3efe41f;border-radius:10px;padding:0 10px;font-size:15px;font-weight:600}.pchip:hover:not(:disabled){background:#232a66}.pchip:active:not(:disabled){transform:scale(.94)}.pchip.is-on{background:var(--paper);color:var(--bg);box-shadow:inset 3px 0 0 var(--c), 0 10px 20px -10px #000000b3;transform:translateY(-2px)}.stage-done{justify-items:center;gap:12px;display:grid}.stage-opt{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:inline-flex}.stage-opt input{width:56px;color:var(--paper);font:inherit;text-align:center;background:0 0;border:1px solid #f3efe433;border-radius:8px;padding:4px 8px}.stage-undo{opacity:.7;font-size:12px}.live-board{padding:0}.live-board .board-days{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.live-board .bday{padding:12px;animation:none}.live-board .flap{padding:4px 8px;font-size:15px}.flap-face.is-still{animation:none}.live-board li.is-fresh .flap{box-shadow:inset 3px 0 0 var(--c), 0 0 0 2px var(--paper);animation:fresh-glow 2.4s var(--ease-out-soft) .9s both}@keyframes fresh-glow{to{box-shadow:inset 3px 0 0 var(--c), 0 0 0 2px transparent}}.reveal{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background:#080a24c7;place-items:center;padding:24px;animation:.25s both fade-in;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.reveal-card{background:var(--paper);width:min(92vw,640px);color:var(--bg);text-align:center;cursor:default;box-shadow:0 40px 80px -30px #000c, inset 0 6px 0 var(--c);animation:reveal-pop .7s var(--ease-bounce) both;border-radius:28px;justify-items:center;gap:6px;padding:36px 36px 28px;display:grid}@keyframes reveal-pop{0%{opacity:0;transform:translateY(30px)scale(.9)}}.reveal-kicker{letter-spacing:.2em;color:#6b6f8f;font-size:14px}.reveal-code{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:clamp(64px,14vw,120px);font-weight:700;line-height:1}.reveal-facts{grid-template-columns:1.6fr 1fr .8fr;gap:10px;width:100%;margin:18px 0 20px;display:grid}.reveal-facts span{animation:reveal-pop .6s var(--ease-bounce) both;animation-delay:calc(var(--i) * .16s + .35s);background:#e9e4d6;border-radius:16px;gap:2px;padding:12px 10px;font-size:18px;font-weight:600;display:grid}.reveal-facts small{color:#6b6f8f;font-size:12px;font-weight:500}.reveal-facts b{font-size:34px;line-height:1}.reveal-next{justify-content:center;min-width:200px}.reveal-next.is-primary{background:var(--bg);color:var(--paper);border-color:var(--bg)}@media (max-width:900px){.live-grid{grid-template-columns:minmax(0,1fr);padding:0 16px 24px}.stage{position:static}.reveal-facts{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.reveal,.reveal-card,.reveal-facts span,.live-board li.is-fresh .flap{animation:none!important}}.show-launches{grid-template-columns:1.3fr 1fr;gap:12px;margin-bottom:8px;display:grid}.show-launches .show-launch{margin-bottom:0}.show-launch.is-alt{color:var(--navy);border:1px solid var(--line);box-shadow:none;background:#fff}.show-launch.is-alt small{color:var(--text-2)}.show-launch.is-alt .show-launch-icon{background:var(--accent-soft);color:var(--accent)}@media (max-width:760px){.show-launches{grid-template-columns:minmax(0,1fr)}}.preview-sheet{background:var(--page);width:min(860px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);border:0;border-radius:24px;padding:0;overflow:auto;box-shadow:0 30px 80px #0f123259}.preview-sheet::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f12328c}.preview-sheet[open]{animation:preview-in .32s var(--ease-spring,cubic-bezier(.2, .8, .2, 1)) both}@keyframes preview-in{0%{opacity:0;transform:translateY(16px)scale(.98)}}.preview-bar{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);color:var(--navy);background:#f4f6fbeb;justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 12px 20px;font-weight:600;display:flex;position:sticky;top:0}.preview-page{padding:20px}.preview-page .pf-sheet{filter:drop-shadow(0 12px 30px #171a4f1f)}@media (max-width:560px){.preview-page{padding:12px}.preview-sheet{border-radius:18px}}@media (prefers-reduced-motion:reduce){.preview-sheet[open]{animation:none}}@media print{html.is-previewing body>:not(:has(.preview-sheet[open])){display:none!important}html.is-previewing body *{visibility:hidden}html.is-previewing .preview-sheet[open],html.is-previewing .preview-sheet[open] *{visibility:visible}html.is-previewing .preview-sheet[open]{width:auto;max-height:none;box-shadow:none;background:#fff;border-radius:0;position:absolute;inset:0;overflow:visible}html.is-previewing .preview-page{padding:0}}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (max-width:480px){.field-row{grid-template-columns:minmax(0,1fr)}}.cal{gap:18px;display:grid}.cal-month{gap:8px;display:grid}.cal-items{gap:8px;padding:0;list-style:none;display:grid}.cal-item{background:var(--page);border-left:3px solid var(--k,var(--accent));border-radius:16px;align-items:flex-start;gap:14px;padding:12px 14px;display:flex}.cal-item.is-deadline{--k:#d97706}.cal-item.is-class{--k:#16a34a}.cal-item.is-exam{--k:#dc2626}.cal-item.is-holiday{--k:#94a3b8}.cal-item.is-past{opacity:.55}.cal-item.is-now{box-shadow:0 0 0 1.5px var(--k,var(--accent)), 0 10px 24px #171a4f14;background:#fff}.cal-date{background:#fff;border-radius:12px;justify-items:center;min-width:46px;padding:4px 0;line-height:1.1;display:grid}.cal-date b{color:var(--navy);font-size:20px}.cal-date small{color:var(--text-2);font-size:12px}.cal-body{flex:1;gap:4px;min-width:0;display:grid}.cal-title{font-size:15px;font-weight:600;line-height:1.45}.cal-meta{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px;display:flex}.cal-meta .chip{padding:1px 8px;font-size:12px}.cal-today{color:var(--accent);font-weight:600}.cal-detail{color:var(--text-2);white-space:pre-line;font-size:13.5px}.cal-place{color:var(--text-3);align-items:center;gap:4px;margin-top:2px;font-size:12.5px;display:flex}.cal-place svg{flex:none}.cal.is-compact .cal-items{gap:6px}.cal.is-compact .cal-item{padding:10px 12px}.due-line{color:var(--text-2);align-items:center;gap:8px;margin:-2px 0 12px;font-size:14px;display:flex}.due-line b{color:var(--warning);font-weight:600}.sgrid-wrap{border:1px solid var(--line);-webkit-overflow-scrolling:touch;background:#fff;border-radius:18px;overflow-x:auto}.sgrid{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:560px;font-size:14px}.sgrid caption{caption-side:top;text-align:left;color:var(--text-2);padding:12px 16px 0;font-size:13px}.sgrid th,.sgrid td{border-bottom:1px solid var(--line);border-right:1px solid var(--line-2,#eef1f6);text-align:center;vertical-align:middle;padding:10px 8px}.sgrid tr>:last-child{border-right:0}.sgrid thead th{background:var(--page);color:var(--navy);font-size:13px;font-weight:600}.sgrid thead tr:first-child th[colspan]{border-bottom-color:var(--line-2,#eef1f6)}.sgrid tbody+tbody{border-top:2px solid var(--line)}.sgrid tbody:last-child tr:last-child>*{border-bottom:0}.sgrid .sgrid-date{min-width:92px;color:var(--navy);background:#fbfcfe;font-weight:600;display:table-cell}.sgrid .sgrid-date small{color:var(--text-3);font-size:11.5px;font-weight:500;display:block}.sgrid .sgrid-seq{white-space:nowrap;width:1%;color:var(--text-2)}.sgrid .sgrid-date{white-space:nowrap;width:1%}.sgrid td b{color:var(--c);letter-spacing:.02em;font-size:15px;font-weight:700}.sgrid-empty{color:var(--text-3)}.sgrid td.is-mine{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.sgrid-prep td{color:var(--text-2);background:#fffaf0;padding:6px 8px;font-size:12.5px}.sgrid-prep .sgrid-seq{color:#b45309;font-size:12px;font-weight:600}.sgrid-dayrow{display:none}@media (max-width:640px){.sgrid-wrap{overflow:visible}.sgrid{table-layout:fixed;min-width:0;font-size:13px}.sgrid th,.sgrid td{overflow-wrap:anywhere;padding:8px 2px}.sgrid .sgrid-date{display:none}.sgrid .sgrid-seq{width:34px;font-size:12px}.sgrid thead th{font-size:12px}.sgrid td b{letter-spacing:0;font-size:13.5px}.sgrid-dayrow{display:table-row}.sgrid-dayrow th{text-align:left;color:var(--navy);background:#fbfcfe;border-right:0;padding:9px 12px;font-size:13.5px;font-weight:600}.sgrid-dayrow small{color:var(--text-3);margin-left:6px;font-size:12px;font-weight:500}.sgrid-prep .sgrid-seq{white-space:normal;font-size:10.5px;line-height:1.25}.sgrid-prep td{padding:6px 2px;font-size:11.5px}}@media print{.sgrid-wrap{border:0;overflow:visible}.sgrid{table-layout:auto;min-width:0;font-size:12px}.sgrid .sgrid-date{display:table-cell}.sgrid-dayrow{display:none}.sgrid th,.sgrid td{border:1px solid #999;padding:6px 4px}.sgrid tbody{break-inside:avoid}}.section-title{color:var(--navy);font-size:17px;font-weight:600}.mini-head{color:var(--text-2);margin:16px 0 8px;font-size:14px;font-weight:600}.sgrid-card .sgrid-wrap{margin-top:4px}.ld{background:var(--page);min-height:100dvh;color:var(--ink);flex-direction:column;display:flex}.ld-bar{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:14px 24px;display:grid}.ld-heading{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.ld-bar>:first-child{justify-self:start}.ld-bar>:last-child{justify-self:end}.ld-heading h1{color:var(--navy);font-size:18px;font-weight:600}.ld-link{border:1px solid var(--line);min-height:38px;color:var(--navy);font:inherit;cursor:pointer;transition:background-color var(--dur-fast);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;display:inline-flex}.ld-link:hover{background:var(--accent-soft)}.ld-main{flex:1;grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:20px;padding:20px 24px 28px;display:grid}.ld-stage{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-rows:auto auto auto 1fr auto;gap:16px;max-height:calc(100dvh - 32px);padding:20px;display:grid;position:sticky;top:16px;box-shadow:0 18px 40px -28px #171a4f59}.ld-progress p{color:var(--text-2);font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:14px}.ld-progress b{color:var(--navy);font-size:26px;font-weight:700}.ld-progress .meter{height:8px;margin:0}.ld-progress .meter>span{transform-origin:0;transition:transform .8s var(--ease-spring)}.ld-now{background:var(--page);text-align:center;border-radius:20px;place-items:center;min-height:132px;padding:14px;display:grid}.ld-wait{color:var(--text-2);font-size:16px}.ld-picked{animation:ld-pop .45s var(--ease-bounce) both;gap:2px;display:grid}.ld-picked b{color:var(--c);letter-spacing:.02em;font-size:52px;font-weight:700;line-height:1}.ld-picked small{color:var(--text-2);font-size:14px}.ld-result{width:100%;animation:ld-pop .5s var(--ease-bounce) both;gap:14px;display:grid}.ld-result-code{color:var(--c);font-size:48px;font-weight:700;line-height:1;display:grid}.ld-result-code small{color:var(--text-2);margin-top:4px;font-size:14px;font-weight:500}.ld-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.ld-facts div{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;align-content:center;justify-items:center;gap:4px;padding:10px 4px;display:grid}.ld-facts dt{color:var(--text-3);font-size:12px}.ld-facts dd{color:var(--navy);white-space:nowrap;margin:0;font-size:20px;font-weight:700;line-height:1.1}@keyframes ld-pop{0%{opacity:0;transform:scale(.85)}}.ld-go{background:linear-gradient(135deg, var(--accent), #4f6bff);color:#fff;width:100%;min-height:60px;font:inherit;cursor:pointer;transition:transform var(--dur-spring) var(--ease-bounce), box-shadow var(--dur-base), opacity var(--dur-base);border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-size:18px;font-weight:600;display:inline-flex;box-shadow:0 14px 28px -14px #2344c6cc}.ld-go:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 18px 32px -14px #2344c6e6}.ld-go:not(:disabled):active{transform:scale(.97)}.ld-go:disabled{background:var(--line);color:var(--text-3);box-shadow:none;cursor:default}.is-rolling .ld-go:disabled{background:linear-gradient(135deg, var(--accent), #4f6bff);color:#fff;opacity:.85}.is-rolling .ld-go svg{animation:.8s linear infinite ld-spin}.ld-go.is-next{background:var(--navy);box-shadow:0 14px 28px -14px #171a4fcc}@keyframes ld-spin{to{transform:rotate(360deg)}}.ld-note{color:var(--text-3);text-align:center;font-size:13px}.ld-picker{align-content:start;gap:14px;min-height:0;padding:2px 4px 2px 0;display:grid;overflow-y:auto}.ld-picker h2{color:var(--text-2);align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.ld-picker h2:before{content:"";background:var(--c);border-radius:50%;width:8px;height:8px}.ld-picker h2 span{color:var(--text-3);font-weight:400}.ld-chips{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px;display:grid}.ld-chip{border:1px solid var(--line);min-height:40px;color:var(--c);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;transition:transform var(--dur-spring) var(--ease-bounce), background-color var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);background:#fff;border-radius:12px;font-size:15px;font-weight:600}.ld-chip:hover:not(:disabled){border-color:var(--c)}.ld-chip:active:not(:disabled){transform:scale(.92)}.ld-chip.is-on{background:var(--c);border-color:var(--c);color:#fff;box-shadow:0 8px 16px -8px var(--c);transform:translateY(-2px)}.ld-chip:disabled{opacity:.5;cursor:default}.ld-undo{color:var(--text-3);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;align-items:center;gap:6px;font-size:13px;display:inline-flex}.ld-undo:hover{color:var(--warning)}.ld-done{text-align:center;justify-items:center;gap:12px;display:grid}.ld-board{border:1px solid var(--line);background:#fff;border-radius:24px;min-width:0;overflow:hidden;box-shadow:0 18px 40px -28px #171a4f59}.ld-board-scroll{max-height:calc(100dvh - 112px);position:relative;overflow:auto}.ld-table{table-layout:fixed;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%;min-width:440px}.ld-col-day{width:84px}.ld-col-seq{width:52px}.ld-table thead th{z-index:2;background:var(--navy);color:#fff;text-align:center;white-space:nowrap;padding:12px 6px;font-size:14px;font-weight:600;position:sticky;top:0}.ld-table thead th:first-child{border-top-left-radius:0}.ld-table td,.ld-table tbody th{text-align:center;vertical-align:middle;padding:5px 6px}.ld-table tbody+tbody tr:first-child>*{border-top:1px solid var(--line)}.ld-table tbody tr:first-child>*{padding-top:10px}.ld-table tbody tr:last-child>*{padding-bottom:10px}.ld-day{white-space:nowrap;border-right:1px solid var(--line-2);background:#fbfcfe;padding:8px 6px!important}.ld-day>small{color:var(--text-3);margin-top:4px;font-size:12px;font-weight:500;display:block}.ld-date{background:var(--accent-soft);min-width:52px;color:var(--navy);border-radius:14px;justify-items:center;padding:6px 8px;line-height:1;display:inline-grid}.ld-date b{font-size:22px;font-weight:700}.ld-date small{margin-top:2px;font-size:12px}.ld-seq{white-space:nowrap;color:var(--text-3);font-size:13px;padding:4px 6px!important}.ld-cell{background:var(--page);border:1px dashed var(--line);letter-spacing:.02em;height:44px;color:var(--c);border-radius:12px;place-items:center;font-size:17px;font-weight:700;transition:background-color .3s,border-color .3s;display:grid}.ld-cell.is-set{background:color-mix(in srgb, var(--c) 9%, #fff);border:1px solid color-mix(in srgb, var(--c) 40%, #fff)}.ld-cell.is-landed{animation:ld-land .7s var(--ease-bounce) both;background:color-mix(in srgb, var(--c) 10%, #fff);border-color:var(--c)}@keyframes ld-land{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}.ld-prep td{color:#b45309;padding:6px 4px 10px;font-size:13px}.ld-prep .ld-seq{color:#b45309;font-weight:600}.ld-runner{z-index:1;pointer-events:none;opacity:0;box-shadow:0 0 0 3px var(--accent), 0 0 0 9px #2344c629, 0 10px 24px -8px #2344c699;will-change:transform;background:#2344c614;border-radius:12px;transition:opacity .2s;position:absolute;top:0;left:0}.ld-runner.is-on{opacity:1}.ld-runner.is-stopped{animation:ld-ring 1.4s var(--ease-out-soft) .2s both}@keyframes ld-ring{0%{box-shadow:0 0 0 3px var(--accent), 0 0 0 9px #2344c629}50%{box-shadow:0 0 0 3px var(--accent), 0 0 0 18px #2344c600}to{box-shadow:0 0 0 3px var(--accent), 0 0 0 9px #2344c61f}}@media (min-width:901px){.ld{height:100dvh}.ld-main{grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:0}.ld-stage{min-height:0;max-height:none;position:static}.ld-board{flex-direction:column;min-height:0;display:flex}.ld-board-scroll{flex:1;max-height:none}.ld-table{height:100%}}@media (max-width:1180px){.ld-main{grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:16px;padding:16px}.ld-table thead th{font-size:13px}}@media (max-width:900px){.ld-main{grid-template-columns:minmax(0,1fr);padding:14px 16px 24px}.ld-stage{max-height:none;position:static}.ld-picker{max-height:40vh}.ld-board-scroll{max-height:none}.ld-bar{padding:10px 16px}.ld-heading h1{font-size:16px}}@media (prefers-reduced-motion:reduce){.ld-runner,.ld-cell.is-landed,.ld-result,.ld-picked{transition:none;animation:none}}.viewas-bar{z-index:60;color:#7c3d0a;background:#fff7e6;border-bottom:1px solid #fcd9a4;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding:8px 16px;font-size:14px;display:flex;position:sticky;top:0}.viewas-bar p{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.viewas-bar b{margin-left:4px}.viewas-bar small{background:#fde7c4;border-radius:999px;padding:1px 8px;font-size:12px}.viewas-bar button{color:#fff;min-height:32px;font:inherit;cursor:pointer;background:#7c3d0a;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;display:inline-flex}.viewas-bar button:hover{background:#5e2c05}.viewas .card-head h2{align-items:center;gap:8px;display:inline-flex}.viewas-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.viewas-opt{background:var(--page);border:1px solid var(--line-2);border-radius:18px;align-content:start;gap:10px;padding:16px;display:grid}.viewas-opt b{color:var(--navy);font-size:16px}.viewas-opt .ghost-button{background:#fff;justify-content:center}.viewas-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:14px;place-items:center;display:grid}.viewas-note{color:var(--text-2);font-size:13px}.brand-short{display:none}@media (max-width:1180px){.brand-full{display:none}.brand-short{display:inline}}.brand-mark svg{display:block}.hero-title{font-size:clamp(28px,3.4vw,42px);line-height:1.3}.hero .intro{margin-bottom:24px}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.button.is-ghost{color:#fff;background:0 0;box-shadow:inset 0 0 0 1px #ffffff59}.button.is-ghost:hover{background:#ffffff14}.next-foot b{color:var(--navy);font-weight:600}.empty-line{color:var(--text-3);padding:4px 0 2px;font-size:14px}.notices{display:grid}.notice-item{border-top:1px solid var(--line-2);gap:12px;padding:14px 0;display:flex}.notice-item:first-child{border-top:0;padding-top:4px}.notice-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid}.notice-title{color:var(--navy);font-size:15px;font-weight:600}.notice-body{color:var(--text-2);white-space:pre-line;margin-top:2px;font-size:14px}.notice-meta{color:var(--text-3);flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:12.5px;display:flex}.notice-meta a{color:var(--accent);align-items:center;gap:4px;display:inline-flex}.rules{display:grid}.rule{border-top:1px solid var(--line-2);grid-template-columns:120px minmax(0,1fr);gap:4px 16px;padding:12px 0;display:grid}.rule:first-child{border-top:0;padding-top:2px}.rule dt{color:var(--navy);font-size:14px;font-weight:600}.rule dd{color:var(--ink);font-size:14.5px;line-height:1.7}@media (max-width:560px){.rule{grid-template-columns:minmax(0,1fr)}.hero-actions .button{justify-content:center;width:100%}}.nowrap{white-space:nowrap}.ld-stage{flex-direction:column;align-items:stretch;display:flex}.ld-stage .ld-picker{flex:1;min-height:120px}.ld-dial{--c:var(--accent);aspect-ratio:1;background:radial-gradient(circle at 35% 30%, #4f6bff, var(--accent) 60%, #1b3399);color:#fff;width:min(68vw,260px);font:inherit;cursor:pointer;text-align:center;box-shadow:0 0 0 10px var(--accent-soft), 0 24px 40px -18px #2344c6cc, inset 0 -8px 0 #0000001f;transition:transform var(--dur-spring) var(--ease-bounce), box-shadow var(--dur-base), filter var(--dur-base);-webkit-tap-highlight-color:transparent;border:0;border-radius:50%;place-content:center;align-self:center;justify-items:center;gap:2px;margin:6px 0;padding:0;display:grid;position:relative}.ld-dial:not(:disabled):hover{transform:scale(1.03)}.ld-dial:not(:disabled):active{transition-duration:.12s;transform:scale(.94)}.ld-dial:focus-visible{outline:4px solid var(--navy);outline-offset:10px}.ld-dial:disabled{cursor:default}.ld-dial b{letter-spacing:.02em;font-size:clamp(56px,6vw,84px);font-weight:700;line-height:1}.ld-dial small{opacity:.85;font-size:15px}.ld-dial-cta{background:#ffffff2e;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:6px 14px;font-size:15px;font-weight:600;display:inline-flex}.ld-dial-wait{color:var(--text-3);font-size:20px;line-height:1.5}.ld-dial:has(.ld-dial-wait){background:var(--page);box-shadow:0 0 0 10px var(--line-2), inset 0 0 0 2px var(--line)}.ld-dial:not(:disabled) .ld-dial-ring{border:3px solid var(--accent);opacity:0;animation:ld-ping 1.8s var(--ease-out-soft) infinite;pointer-events:none;border-radius:50%;position:absolute;inset:-10px}@keyframes ld-ping{0%{opacity:.6;transform:scale(.92)}to{opacity:0;transform:scale(1.18)}}.is-rolling .ld-dial .ld-dial-ring{border:4px solid #0000;border-top-color:var(--navy);border-right-color:var(--navy);opacity:1;border-radius:50%;animation:.7s linear infinite ld-spin;position:absolute;inset:-10px}.is-rolling .ld-dial{filter:saturate(1.1)}.ld-table thead th{font-size:clamp(14px,1.15vw,19px)}.ld-cell{height:clamp(40px,4.6vh,58px);font-size:clamp(17px,1.55vw,26px)}.ld-date b{font-size:clamp(22px,1.8vw,30px)}.ld-result-code{font-size:clamp(48px,4.5vw,72px)}.ld-progress b{font-size:clamp(26px,2.2vw,36px)}@media (prefers-reduced-motion:reduce){.ld-dial-ring{animation:none!important}}.ld-stage>*{flex-shrink:0}.ld-stage>.ld-picker{flex-shrink:1}.ld-facts{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,.8fr)}.ld-facts dd{font-size:clamp(15px,1.15vw,20px)}.ld-facts div{padding:8px 4px}.limits-verdict{border-radius:14px;align-items:center;gap:8px;margin:0 0 12px;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.limits-verdict.is-ok{color:#14744f;background:#e9f8f0}.limits-verdict.is-bad{color:#b91c1c;background:#fef2f2}.limits-form{justify-items:start;gap:12px;display:grid}.limits{border-collapse:collapse;width:100%;font-size:14px}.limits th,.limits td{border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:8px 10px}.limits thead th{color:var(--text-2);font-size:12.5px;font-weight:600}.limits thead small{font-weight:400}.limits tbody th{text-align:left;font-weight:500}.limits input{border:1px solid var(--line);width:76px;min-height:38px;font:inherit;text-align:center;background:#fff;border-radius:10px;padding:4px 8px}.limits tr.is-short td:last-child{color:#b91c1c}@media (max-width:480px){.limits th,.limits td{padding:8px 4px}.limits input{width:60px}}.paste-help{color:var(--text-2);gap:4px;margin:0 0 12px;padding-left:20px;font-size:13.5px;display:grid}.admin-group.is-muted{opacity:.6}.teacher-form{margin-top:12px}.tchecks{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.tchecks legend{color:var(--text-2);margin-bottom:6px;padding:0;font-size:13px;font-weight:500}.tcheck{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:8px;min-height:40px;padding:6px 12px;font-size:14px;display:inline-flex}.tcheck:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.tcheck input{width:18px;height:18px;accent-color:var(--accent)}.tcheck.is-wide{justify-self:start}.board-row{align-items:stretch}.contacts-part+.contacts-part{margin-top:14px}.contacts-wide{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);align-items:start;display:grid}.contacts-wide .card-head{grid-column:1/-1}.contacts-wide .contacts-part+.contacts-part{border-left:1px solid var(--line-2);align-self:stretch;margin-top:0;margin-left:28px;padding-left:28px}.contacts-wide .mini-head{margin-top:0}.news-empty{border:1px solid var(--line);color:var(--text-3);background:#fff;border-radius:18px;align-items:center;gap:12px;padding:14px 18px;font-size:14px;display:flex}.news-empty b{color:var(--navy);margin-right:8px;font-weight:600}.news-empty-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:12px;flex-shrink:0;place-items:center;display:grid}@media (max-width:720px){.contacts-wide{grid-template-columns:minmax(0,1fr)}.contacts-wide .contacts-part+.contacts-part{border-left:0;margin:14px 0 0;padding-left:0}}.cm-rules{color:var(--text-2);gap:4px;margin:0 0 14px;padding-left:20px;font-size:14px;display:grid}.cm-checks{gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.cm-checks li{border-radius:12px;align-items:center;gap:8px;padding:8px 12px;display:flex}.cm-checks .is-ok{color:#14744f;background:#e9f8f0}.cm-checks .is-bad{color:#b91c1c;background:#fef2f2}.cm-checks .is-warn{background:var(--warning-bg);color:var(--warning)}.cm-rooms{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.cm-room{border:1px solid var(--line);background:#fff;border-radius:16px;align-content:start;gap:10px;padding:14px;display:grid}.cm-room.is-bad{background:snow;border-color:#fca5a5}.cm-room header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.cm-room header b{color:var(--navy);font-size:15px}.cm-groups{flex-wrap:wrap;gap:6px;font-size:14px;font-weight:700;display:flex}.cm-people{gap:4px;margin:0;padding:0;list-style:none;display:grid}.cm-people li{background:var(--page);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:6px;padding:6px 10px;font-size:14px;display:flex}.cm-people li>span{flex:1;min-width:0}.cm-people small{color:var(--text-3);font-size:12px}.cm-people small.is-match{color:#14744f;font-weight:600}.cm-people em{background:var(--warning-bg);color:var(--warning);border-radius:999px;padding:1px 8px;font-size:11.5px;font-style:normal}.cm-issue{color:#b91c1c;font-size:13px;font-weight:500}.cm-edit summary{color:var(--accent);cursor:pointer;align-items:center;gap:6px;font-size:13px;list-style:none;display:inline-flex}.cm-edit[open] summary{margin-bottom:8px}.cm-edit-form{gap:6px;display:grid}.cm-edit-form select{width:100%;min-height:38px;font-size:13.5px}.cm-load td:nth-child(3){font-weight:700}.work-kinds{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:stretch;gap:14px;display:grid}.work-kind{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;gap:12px;padding:18px;display:flex}.work-kind.is-accepted{border-color:#bbe5cd}.work-kind.is-returned{border-color:#fcd9a4}.work-kind>*{margin-top:0;margin-bottom:0}.work-kind header h3{color:var(--navy);margin-bottom:4px;font-size:16px}.work-kind .due-line{margin:0}.due-line.is-past b{color:#c13c2f}.work-help{color:var(--text-2);font-size:13.5px;line-height:1.6}.work-latest{background:var(--page);border-radius:14px;gap:8px;padding:12px;display:grid}.work-file{min-width:0;color:var(--ink);align-items:center;gap:10px;display:flex}.work-file svg{color:var(--accent);flex-shrink:0}.work-file span{min-width:0;display:grid}.work-file b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.work-file small{color:var(--text-3);font-size:12.5px}.work-file:hover b{text-decoration:underline}.work-chips{flex-wrap:wrap;gap:6px;display:flex}.review-note-inline{color:var(--warning);font-size:13.5px}.work-paper{color:var(--text-3);align-items:center;gap:8px;font-size:13.5px;display:flex}.work-paper.is-in{color:#14744f}.work-send{justify-items:start;gap:10px;margin-top:auto;display:grid}.work-send .field{width:100%}.work-history summary{color:var(--accent);cursor:pointer;align-items:center;gap:6px;font-size:13.5px;list-style:none;display:inline-flex}.work-history ol{gap:6px;margin:8px 0 0;padding-left:20px;font-size:13.5px;display:grid}.work-history li small{color:var(--text-3);font-size:12.5px;display:block}.work-row-chips{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:4px;display:flex}.work-row-chips>span{align-items:center;gap:4px;display:inline-flex}.work-row-chips small{color:var(--text-3);font-size:12px}.work-row-chips .chip{align-items:center;gap:4px;display:inline-flex}.work-admin{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;padding-top:12px;display:grid}.work-admin-kind{background:var(--page);border-radius:16px;align-content:start;gap:10px;padding:14px;display:grid}.work-admin-kind h3{color:var(--navy);font-size:14px}.work-review{gap:8px;display:grid}.work-review .field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.work-paper-form{border-top:1px solid var(--line);padding-top:10px}.notice-inline.is-ok{color:#14744f;background:#e9f8f0;margin-bottom:10px}.drive-setup,.drive-on,.drive-off{gap:8px;display:grid}.drive-on p,.drive-off p,.drive-setup p{margin:0}.drive-on a:not(.ghost-button){align-items:center;gap:3px;display:inline-flex}.drive-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.drive-off .primary-button{justify-self:start}.guide{max-width:920px}.guide-hero{isolation:isolate;background:var(--navy);color:#fff;border-radius:28px;padding:28px 28px 22px;position:relative;overflow:hidden}.guide-hero .hero-meta{align-items:center;gap:6px;margin-bottom:6px;display:inline-flex}.guide-roles{flex-wrap:wrap;gap:8px;display:flex}.guide-roles a{color:#d3dbf5;min-height:44px;transition:background-color var(--dur-fast) var(--ease-out-soft), color var(--dur-fast) var(--ease-out-soft);background:#ffffff1a;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:600;display:inline-flex}.guide-roles a:hover{color:#fff;background:#ffffff2e}.guide-roles a[aria-current]{color:var(--navy);background:#fff;border-color:#fff}.guide-dates{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.guide-dates>div{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 10px;padding:14px;display:grid}.guide-dates svg{color:var(--accent);grid-row:1/span 2}.guide-dates span{color:var(--text-2);font-size:12px;line-height:1.4}.guide-dates b{color:var(--navy);font-size:14px;line-height:1.4}.guide-card .card-head{align-items:flex-start}.guide-card .card-head .subtle{color:var(--text-2);margin-top:2px;font-size:13.5px}.guide-steps{counter-reset:none;margin-top:8px}.guide-step{grid-template-columns:36px minmax(0,1fr);gap:14px;padding-bottom:22px;display:grid;position:relative}.guide-step:last-child{padding-bottom:0}.guide-step:not(:last-child):before{content:"";background:var(--line);border-radius:2px;width:2px;position:absolute;top:38px;bottom:4px;left:17px}.guide-num{background:var(--navy);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;width:36px;height:36px;font-size:15px;font-weight:700;display:grid}.guide-body{gap:8px;min-width:0;padding-top:4px;display:grid}.guide-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.guide-title h3{color:var(--navy);font-size:17px;line-height:1.4}.guide-icon{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.guide-when{margin-left:auto}.guide-body ul{gap:4px;padding-left:0;display:grid}.guide-body ul li{color:var(--ink);padding-left:18px;font-size:15px;line-height:1.7;position:relative}.guide-body ul li:before{content:"";background:#9fb3ff;border-radius:999px;width:6px;height:6px;position:absolute;top:.75em;left:4px}.guide-note{border-radius:12px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13.5px;line-height:1.6;display:flex}.guide-note svg{flex-shrink:0;margin-top:3px}.guide-note.is-tip{background:var(--accent-soft);color:#23349a}.guide-note.is-warn{background:var(--warning-bg);color:var(--warning)}.guide-where{border:1px solid var(--line);min-height:34px;color:var(--accent);background:#fff;border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.guide-where:hover{background:var(--accent-soft)}.guide-faq{gap:8px;display:grid}.guide-faq details{border:1px solid var(--line);background:#fff;border-radius:14px;padding:0 14px}.guide-faq summary{cursor:pointer;min-height:48px;color:var(--navy);align-items:center;font-weight:600;list-style:none;display:flex}.guide-faq summary::-webkit-details-marker{display:none}.guide-faq summary:after{content:"+";color:var(--text-3);margin-left:auto;padding-left:12px;font-size:20px;font-weight:400}.guide-faq details[open] summary:after{content:"–"}.guide-faq p{color:var(--text-2);padding:0 0 14px;font-size:14.5px}.guide-foot{text-align:center;border-top:0}@media (max-width:860px){.guide-dates{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.guide-hero{border-radius:22px;padding:22px 18px 18px}.guide-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.guide-roles a{text-align:center;border-radius:16px;flex-direction:column;justify-content:center;gap:2px;min-height:58px;padding:6px 4px;font-size:13px}.guide-dates>div{padding:12px}.guide-step{grid-template-columns:30px minmax(0,1fr);gap:10px}.guide-num{width:30px;height:30px;font-size:14px}.guide-step:not(:last-child):before{top:32px;left:14px}.guide-when{margin-left:0}.guide-title h3{flex-basis:calc(100% - 40px);font-size:16px}}@media print{.guide-hero{color:var(--navy);background:0 0;padding:0}.guide-hero .hero-ring,.guide-roles,.guide-where{display:none}.guide-step{break-inside:avoid}}@media (max-width:420px){.hide-xs{display:none}.login-link{justify-content:center;width:40px;padding:0}}.settings-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.settings-form .wide{grid-column:1/-1}.settings-form textarea{resize:vertical;width:100%}.logo-upload{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.logo-preview{border:1px dashed var(--line);background:var(--page);border-radius:20px;flex-shrink:0;place-items:center;width:84px;height:84px;display:grid;overflow:hidden}.logo-preview img{object-fit:contain;width:100%;height:100%}.logo-none{color:var(--text-3);font-size:12px}.logo-actions{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:220px;display:flex}.logo-actions .footnote{border-top:0;flex-basis:100%;padding-top:0}.settings-map{color:var(--text-2);gap:8px;font-size:14px;display:grid}.settings-map a{color:var(--accent);margin-right:6px;font-weight:600}@media (max-width:560px){.settings-form{grid-template-columns:minmax(0,1fr)}}.reset-box{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.reset-box summary{cursor:pointer;color:#c13c2f;align-items:center;gap:6px;min-height:32px;font-size:14px;font-weight:600;list-style:none;display:inline-flex}.reset-box summary::-webkit-details-marker{display:none}.reset-box p{color:var(--text-2);margin:6px 0 10px;font-size:13px}.reset-form{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.reset-form .field{flex:1;min-width:160px}.setup-steps{color:var(--text-2);gap:8px;padding-left:20px;font-size:14px;display:grid}.setup-steps code{background:var(--page);border:1px solid var(--line);word-break:break-all;border-radius:6px;padding:1px 5px;font-size:12.5px}.setup-steps a{color:var(--accent);font-weight:600}.trial-inline{color:#b45309;font-weight:600;display:none}@media (max-width:420px){.brand-name .trial-pill{display:none}.trial-inline{display:inline}}@media (max-width:640px){.ld-table{min-width:0}.ld-board-scroll{overflow-x:hidden}.ld-bar{gap:8px;padding:10px 12px}.ld-link{white-space:nowrap}.ld-col-day{width:58px}.ld-col-seq{width:26px}.ld-date{min-width:0;padding:5px 4px}.ld-table td,.ld-table tbody th{padding:4px 2px}.ld-seq{font-size:12px;padding:4px 0!important}}.guide-hero{color:var(--navy);border:1px solid var(--line);background:#fff;padding:22px 24px 18px}.guide-hero .hero-meta{color:var(--text-2);font-size:13px}.guide-hero h1{margin-bottom:14px;font-size:clamp(22px,3vw,30px)}.guide-roles a{background:var(--page);color:var(--text-2);border-color:var(--line)}.guide-roles a:hover{background:var(--accent-soft);color:var(--navy)}.guide-roles a[aria-current]{background:var(--navy);color:#fff;border-color:var(--navy)}.guide-dates>div{grid-template-columns:minmax(0,1fr)}.guide-step{grid-template-columns:36px minmax(0,1fr);padding-bottom:28px}.guide-step.has-shot{grid-template-columns:36px minmax(0,1fr) 320px;column-gap:24px}.guide-body h3{color:var(--navy);font-size:17px;line-height:1.4}.guide-when{color:var(--accent);margin:-4px 0 0;font-size:13.5px;font-weight:600}.guide-note{border-left:3px solid var(--line);color:var(--text-2);background:0 0;border-radius:0;padding:0 0 0 12px;font-size:14px;display:block}.guide-note.is-warn{color:var(--text-2);background:0 0;border-left-color:#f0b46b}.guide-where{border-radius:10px}.guide-shot{min-width:0}.guide-body{align-content:start}.shot{border:1px solid var(--line);background:var(--page);border-radius:22px;width:100%;max-width:320px;margin:0;overflow:hidden;box-shadow:0 14px 30px -24px #171a4f80}.shot-bar{border-bottom:1px solid var(--line);background:#fff;padding:7px 10px}.shot-url{background:var(--page);color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:3px 10px;font-size:10.5px;display:block;overflow:hidden}.shot-screen{pointer-events:none;-webkit-user-select:none;user-select:none;gap:8px;padding:10px;font-size:13px;display:grid}.shot-screen .card{border-radius:16px;gap:8px;margin:0;padding:12px;display:grid}.shot-screen .card-head{margin:0}.shot-screen .card-head h2{font-size:14px}.shot-screen .chip{padding:1px 8px;font-size:10.5px}.shot-screen .primary-button,.shot-screen .ghost-button{border-radius:10px;justify-self:start;gap:5px;min-height:30px;padding:0 12px;font-size:12px}.shot-screen .field{gap:3px;font-size:11.5px}.shot-screen .google-button{width:100%;min-height:36px;font-size:12.5px}.shot-screen .sgrid-wrap{border-radius:12px}.shot-screen .sgrid{table-layout:fixed;min-width:0;font-size:11px}.shot-screen .sgrid th,.shot-screen .sgrid td{padding:5px 2px}.shot-screen .sgrid .sgrid-date{display:none}.shot-screen .sgrid .sgrid-seq{width:30px;font-size:10px}.shot-screen .sgrid-dayrow{display:table-row}.shot-screen .sgrid-dayrow th{text-align:left;color:var(--navy);background:#fbfcfe;padding:6px 8px;font-size:11.5px}.shot-screen .sgrid-prep .sgrid-seq{white-space:normal;font-size:9.5px;line-height:1.2}.shot-screen .sgrid td b{font-size:12px}.shot-screen .stats{gap:6px}.shot-screen .stat{border-radius:14px;padding:10px}.shot-screen .stat-value{font-size:18px}.shot-screen .stat-label{font-size:11px}.shot-input{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:7px 10px;font-size:12.5px;font-weight:400;line-height:1.5;display:block}.shot-input.is-empty{color:var(--text-3)}.shot-paste{white-space:pre-line;font-family:ui-monospace,Menlo,monospace;font-size:10.5px}.shot-center{text-align:center;justify-items:center}.shot-h{color:var(--navy);font-size:14px}.shot-sub{color:var(--text-2);font-size:11.5px}.shot-g{color:#4285f4;font-weight:700}.shot-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.shot-pick{background:var(--accent-soft);border-radius:12px;justify-content:space-between;padding:8px}.shot-pick span{font-size:12px;display:grid}.shot-pick small,.shot-file small{color:var(--text-2);font-size:10.5px}.shot-photo,.shot-drop{min-height:54px;color:var(--text-2);background:#fff;border:1px dashed #b9c4ea;border-radius:12px;justify-content:center;align-items:center;gap:6px;font-size:11.5px;display:flex}.shot-check{color:var(--text-2);align-items:center;gap:6px;font-size:11.5px;display:flex}.shot-check svg{background:var(--accent);color:#fff;border-radius:4px;padding:1px}.shot-chips{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.shot-chips .ld-chip{place-items:center;min-width:38px;min-height:30px;padding:0 6px;font-size:12px;display:inline-grid}.shot-result{color:var(--text-2);font-size:12px}.shot-result b{color:#3f7d20;margin-right:4px;font-size:16px}.shot-file{align-items:center;gap:8px;padding:4px 0;font-size:12px;display:flex}.shot-file>span{min-width:0;display:grid}.shot-file b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shot-file svg{color:var(--accent);flex-shrink:0}.shot-code{background:var(--page);min-width:40px;color:var(--navy);text-align:center;border-radius:8px;flex-shrink:0;padding:3px 6px;font-size:11px}.shot-line{border-bottom:1px solid var(--line);padding:4px 0;font-size:12px}.shot-mailrow{grid-template-columns:52px minmax(0,1fr);font-size:11.5px;display:grid}.shot-mailrow span{color:var(--text-3)}.shot-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.shot-tabs{border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,1fr);display:grid}.shot-tabs span{color:var(--text-3);justify-items:center;gap:1px;padding:5px 0;font-size:9.5px;display:grid}.shot-tabs .is-on{color:var(--accent);font-weight:600}.shot figcaption{color:var(--text-3);text-align:center;border-top:1px solid var(--line);background:#fff;padding:6px 10px 8px;font-size:11.5px}.shot-tabs+figcaption{border-top:0}@media (max-width:760px){.guide-step.has-shot{grid-template-columns:36px minmax(0,1fr)}.guide-shot{grid-column:2;margin-top:12px}.guide-dates{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.guide-step.has-shot{break-inside:avoid;grid-template-columns:30px minmax(0,1fr) 220px}.shot{box-shadow:none}}.guide-roles .an-short{display:none}@media (max-width:480px){.guide-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.guide-roles a{white-space:nowrap;justify-content:center;gap:5px;padding:0 6px;font-size:13.5px}.guide-roles a svg,.guide-roles .an-long{display:none}.guide-roles .an-short{display:inline}.guide-hero{padding:18px 16px 16px}}.avatar{overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.cal-actions{flex-shrink:0;gap:6px;margin-left:auto;display:flex}.cal-actions .icon-button{border-radius:12px;width:38px;height:38px}.edit-sheet{width:min(520px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);background:#fff;border:0;border-radius:24px;padding:20px;overflow:auto;box-shadow:0 30px 80px #0f123259}.edit-sheet::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f123280}.edit-sheet[open]{animation:.28s cubic-bezier(.2,.8,.2,1) both preview-in}.edit-sheet .card-head{margin-bottom:12px}@media (prefers-reduced-motion:reduce){.edit-sheet[open]{animation:none}}.shot-top{border-bottom:1px solid var(--line);color:var(--navy);background:#fff;align-items:center;gap:8px;margin:-10px -10px 0;padding:8px 10px;font-size:12px;display:flex}.shot-top b{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.shot-mark{border-radius:8px!important;width:24px!important;height:24px!important}.shot-avatar{width:22px;height:22px;color:var(--accent);background:#dbeafe;border-radius:999px;place-items:center;font-size:11px;font-weight:600;display:grid}.shot-title{color:var(--navy);margin-top:2px;font-size:15px;font-weight:700}.shot-line{justify-content:space-between;align-items:center;gap:6px;display:flex}.shot-one{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.shot-end{color:var(--success,#16a34a);flex-shrink:0;margin-left:auto;display:inline-flex}.shot-file>span:not(.shot-end){flex:1}.shot-login{padding:18px 14px!important}.shot-login .brand-mark{width:40px;height:40px}.shot-login .shot-h{line-height:1.4}.shot-phone{grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:6px;font-size:11.5px;display:grid}.shot-phone .shot-input{align-items:center;gap:4px;padding:4px 8px;font-size:11px;display:flex}.shot-seg{background:var(--page);text-align:center;border-radius:10px;grid-template-columns:1fr 1fr;padding:3px;font-size:11.5px;display:grid}.shot-seg span{color:var(--text-2);border-radius:8px;padding:5px}.shot-seg .is-on{color:var(--navy);background:#fff;font-weight:600;box-shadow:0 1px 3px #00000014}.shot-mailhead{border-bottom:1px solid var(--line);align-items:flex-start;gap:8px;padding-bottom:8px;font-size:12px;display:flex}.shot-mailhead>span{display:grid}.shot-mailhead small{color:var(--text-2);font-size:10.5px}.shot-mailhead svg{color:var(--accent);margin-top:2px}.shot-cal{background:var(--page);border-left:3px solid var(--accent);border-radius:10px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:grid}.shot-cal>span:nth-child(2){display:grid}.shot-cal small{color:var(--text-2);font-size:10.5px}.shot-date{color:var(--navy);justify-items:center;line-height:1.1;display:grid}.shot-date b{font-size:15px}.shot-date small{font-size:9.5px}.shot-icons{color:var(--text-2);gap:4px;display:flex}.shot-icons svg{border:1px solid var(--line);background:#fff;border-radius:7px;width:22px;height:22px;padding:4px}.shot-draw .card{gap:6px}.shot-dial{width:112px;height:112px;box-shadow:0 0 0 6px color-mix(in srgb, var(--c) 18%, #fff), 0 0 0 1px var(--line);background:#fff;border-radius:999px;place-content:center;justify-items:center;gap:1px;margin:6px 0 8px;display:grid}.shot-dial b{color:var(--c);font-size:26px;line-height:1}.shot-dial small{color:var(--text-2);font-size:10.5px}.shot-dial em{color:var(--accent);align-items:center;gap:3px;margin-top:3px;font-size:10px;font-style:normal;display:inline-flex}.shot-mini{color:var(--text-2);justify-self:start;font-size:11px;font-weight:600}.shot-draw .shot-chips{justify-content:flex-start;width:100%}.shot-result{text-align:center}.shot-login,.shot-screen .card{box-shadow:none}@media (max-width:760px){.guide-shot .shot{margin-inline:auto}}h1,h2,h3,.page-title{text-wrap:balance}p,li,dd,.card-intro,.footnote,.stat-label{text-wrap:pretty}.primary-button,.ghost-button,.chip,.back-link,.guide-where,.tabbar a{white-space:nowrap}.card-head{flex-wrap:wrap;align-items:center;row-gap:6px}.card-head>:first-child{min-width:0}.card-intro{max-width:68ch;line-height:1.65}.footnote{line-height:1.6}.page-head{gap:2px;display:grid}.page-head+.admin-nav{margin-top:2px}@media (max-width:560px){main{gap:12px;padding:16px 16px 40px}.card{border-radius:18px;padding:16px}.card-head h2{font-size:18px}.page-title{font-size:22px}.stats{gap:8px}.stat{border-radius:18px;padding:12px 14px}}.page-meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width:560px){.cal-item{gap:10px;padding:10px 10px 10px 12px}.cal-actions{flex-direction:column;gap:4px}.cal-actions .icon-button{border-radius:10px;width:34px;height:34px}.cal-title{font-size:15px}}
