@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-vietnamese-400-normal-BF4g3tCF.woff2) format("woff2"),url(/assets/archivo-vietnamese-400-normal-FGOLYM1a.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-ext-400-normal-B5tPZzqW.woff2) format("woff2"),url(/assets/archivo-latin-ext-400-normal-DrmqtLj6.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-400-normal-C81ewxNO.woff2) format("woff2"),url(/assets/archivo-latin-400-normal-Bl602Mgc.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-vietnamese-600-normal-anCjMumA.woff2) format("woff2"),url(/assets/archivo-vietnamese-600-normal-C8xBVdfP.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-ext-600-normal-Dm61iqcg.woff2) format("woff2"),url(/assets/archivo-latin-ext-600-normal-D7uErJuz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-600-normal-3BBy0ZsW.woff2) format("woff2"),url(/assets/archivo-latin-600-normal-DwYieO8P.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-vietnamese-800-normal-DHDgv4cm.woff2) format("woff2"),url(/assets/archivo-vietnamese-800-normal-BKe5Z8rz.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-latin-ext-800-normal-BC6piDwP.woff2) format("woff2"),url(/assets/archivo-latin-ext-800-normal-B9NTbsU1.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/archivo-latin-800-normal-cB6v3kRN.woff2) format("woff2"),url(/assets/archivo-latin-800-normal-DZa_k145.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg: #f3f2f2;--color-surface: #eae9e9;--color-text: #201e1d;--color-accent: #ec3013;--color-accent-2: #e15b47;--color-divider: color-mix(in srgb, #201e1d 40%, transparent);--color-neutral-100: #f8f4f4;--color-neutral-200: #eae7e7;--color-neutral-300: #d7d3d3;--color-neutral-400: #bab6b6;--color-neutral-500: #9b9797;--color-neutral-600: #7d7979;--color-neutral-700: #605d5d;--color-neutral-800: #444141;--color-neutral-900: #2d2b2b;--color-accent-100: #fff2ef;--color-accent-200: #ffe0d9;--color-accent-300: #ffc4b8;--color-accent-400: #ff9783;--color-accent-500: #ff563c;--color-accent-600: #dd2b0f;--color-accent-700: #ae1800;--color-accent-800: #7c1405;--color-accent-900: #4d170e;--color-accent-2-100: #fff2ef;--color-accent-2-200: #ffe0da;--color-accent-2-300: #ffc4b9;--color-accent-2-400: #ff9784;--color-accent-2-500: #ef6853;--color-accent-2-600: #c94b39;--color-accent-2-700: #9e3526;--color-accent-2-800: #71261b;--color-accent-2-900: #471d16;--font-heading: "Archivo", system-ui, sans-serif;--font-heading-weight: 800;--font-body: "Archivo", system-ui, sans-serif;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-sm: 0px;--radius-md: 0px;--radius-lg: 0px;--shadow-sm: 0 1px 2px color-mix(in srgb, #2d2b2b 14%, transparent);--shadow-md: 0 3px 10px color-mix(in srgb, #2d2b2b 16%, transparent);--shadow-lg: 0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent)}.grayscale{filter:grayscale(1) contrast(1.08)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.55;font-weight:400;-webkit-text-size-adjust:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-heading-weight);line-height:1.12;letter-spacing:-.015em;margin:0 0 var(--space-2)}h1{font-size:42px}h2{font-size:32px}h3{font-size:25px}h4{font-size:20px}h5{font-size:16px}h6{font-size:13px;letter-spacing:.08em;text-transform:uppercase}p{margin:0 0 var(--space-3)}a{color:var(--color-accent-700);text-decoration:none;border-bottom:1px solid var(--color-divider);text-underline-offset:3px}a:hover{color:var(--color-accent)}::placeholder{color:color-mix(in srgb,var(--color-text) 40%,transparent)}.text-muted{color:color-mix(in srgb,var(--color-text) 55%,transparent)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--color-accent) 30%,transparent)}.hr{height:2px;border:0;margin:var(--space-4) 0;background:var(--color-divider)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;text-decoration:none;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:14px;line-height:1.2;color:var(--color-text);background:transparent;border:1px solid transparent;padding:var(--space-2) calc(var(--space-3) * 1.2);border-radius:var(--radius-md)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-600)}.btn-primary:active{background:var(--color-accent-700)}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent)}.btn-secondary:active{background:color-mix(in srgb,var(--color-text) 14%,transparent)}.btn-ghost{color:var(--color-accent);padding-inline:var(--space-1)}.btn-ghost:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.btn-ghost:active{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.input{width:100%;min-height:36px;padding:6px 10px;font:inherit;font-size:14px;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md)}.input:hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}.tag{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.02em;padding:3px 10px;border-radius:calc(var(--radius-md) * .75)}.tag-accent{background:var(--color-accent-100);color:var(--color-accent-800)}.tag-outline{border:1px solid var(--color-accent);color:var(--color-accent)}.nav{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:2px solid var(--color-divider)}.nav-brand{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:18px;margin-right:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 60%,transparent);padding:var(--space-2);border-bottom:2px solid var(--color-divider)}.table td{padding:var(--space-2);border-bottom:1px solid var(--color-divider)}.table tbody tr:hover{background:color-mix(in srgb,var(--color-text) 4%,transparent)}.muted-60{color:color-mix(in srgb,var(--color-text) 60%,transparent)}.muted-45{color:color-mix(in srgb,var(--color-text) 45%,transparent)}.muted-40{color:color-mix(in srgb,var(--color-text) 40%,transparent)}.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase}.gate{min-height:100vh;display:grid}.gate-left{padding:clamp(28px,5vw,56px) clamp(20px,4vw,48px);display:flex;flex-direction:column;justify-content:space-between;gap:clamp(28px,5vw,40px)}.gate-title{font-size:clamp(40px,5.6vw,78px);line-height:.92;letter-spacing:-.03em;margin:0}.gate-right{padding:clamp(28px,5vw,56px) clamp(20px,4vw,48px);display:flex;flex-direction:column;gap:20px;justify-content:center;background:var(--color-surface)}.gate-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 0;border-top:2px solid var(--color-divider)}.play-header{display:flex;align-items:center;gap:clamp(12px,3vw,24px)}.play-body{display:grid}.play-left{padding:clamp(14px,3.5vw,28px) clamp(14px,3.5vw,32px);display:flex;flex-direction:column;gap:clamp(14px,3vw,18px);min-width:0}.grid{display:grid;background:var(--color-text);border:2px solid var(--color-text);padding:2px 0 0 2px}.cell{position:relative;border-right:2px solid var(--color-text);border-bottom:2px solid var(--color-text)}.cell-num{position:absolute;top:1px;left:2px;font-size:clamp(7px,1.6vw,9px);line-height:1;font-weight:600;pointer-events:none}.cell-input{width:100%;height:100%;border:0;padding:0;margin:0;background:transparent;text-align:center;text-transform:uppercase;font-family:var(--font-heading);font-weight:800;font-size:clamp(13px,3.4vw,20px);color:var(--color-text);caret-color:transparent;outline:none;cursor:pointer}.active-clue{display:flex;flex-direction:column;gap:10px;border-left:2px solid var(--color-accent);padding-left:12px;max-width:520px}.play-right{padding:clamp(14px,3.5vw,28px) clamp(14px,3.5vw,32px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:clamp(16px,3vw,28px);align-content:start;min-width:0}.clue-list-heading{font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding-bottom:8px;border-bottom:2px solid var(--color-text)}.clue-row{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;padding:9px 8px 9px 4px;border-bottom:1px solid var(--color-divider);cursor:pointer;background:none;border-left:none;border-right:none;border-top:none;text-align:left;font:inherit;color:inherit;width:100%}.board-body{padding:clamp(20px,4vw,36px) clamp(16px,4vw,44px);display:grid;gap:clamp(24px,4vw,44px);align-items:start}.results-sidebar{display:flex;flex-direction:column;gap:14px;padding:24px;background:var(--color-surface);border-left:2px solid var(--color-accent)}.answer-key-row{display:grid;grid-template-columns:34px minmax(0,1fr) 14px;gap:8px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--color-divider);font-size:13px}.campaign-site{--panel: color-mix(in srgb, var(--color-bg) 7%, var(--color-text));background:var(--color-text);color:var(--color-bg);min-height:100vh;max-width:1440px;margin:0 auto;font-family:var(--font-body);font-size:15px}.campaign-site a{color:var(--color-accent-400);text-decoration:none}.campaign-site a:hover{color:var(--color-accent)}.campaign-outline-btn{all:unset;cursor:pointer;height:48px;padding:0 22px;display:inline-flex;align-items:center;font-family:var(--font-heading);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;border:2px solid var(--color-bg);box-sizing:border-box;color:var(--color-bg)}.campaign-outline-btn:hover{background:var(--color-bg);color:var(--color-text)}.campaign-diamond{width:10px;height:10px;border:2px solid var(--color-accent);transform:rotate(45deg);flex:none}.campaign-skel{background:var(--panel);position:relative;overflow:hidden}.campaign-skel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-bg) 8%,transparent),transparent);animation:campaign-shimmer 1.6s ease-in-out infinite}@keyframes campaign-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.campaign-skel:after{animation:none}}.reg-skel{animation:reg-skel-pulse 1.4s ease-in-out infinite}@keyframes reg-skel-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.reg-skel{animation:none}}:root{--ease-move: cubic-bezier(.65, 0, .25, 1);--ease-enter: cubic-bezier(.2, .7, .2, 1)}@keyframes cm-view-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes cm-menu-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.cm-view{animation:cm-view-in .36s var(--ease-enter) both}.cm-menu-panel{animation:cm-menu-in .22s var(--ease-enter) both}.cm-tabs{position:relative;display:flex;gap:2px;flex:none}.cm-tab-ind{position:absolute;top:0;left:0;width:0;height:44px;background:var(--color-accent);pointer-events:none}.cm-tab-ind.is-moving{transition:transform .38s var(--ease-move),width .38s var(--ease-move)}.cm-tab{position:relative;transition:color .26s}.cm-tab:not([aria-current=page]):hover{color:var(--color-bg)!important}.cm-recap-card{transition:background-color .28s,border-color .28s}.cm-recap-body{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .38s var(--ease-move),visibility 0s linear .38s}.cm-recap-body>div{min-height:0;overflow:hidden}.cm-recap-inner{opacity:0;transform:translateY(-6px);transition:opacity .3s ease,transform .38s var(--ease-enter)}.cm-recap-body.is-open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .38s var(--ease-move),visibility 0s}.cm-recap-body.is-open .cm-recap-inner{opacity:1;transform:none;transition-delay:80ms}.cm-recap-sign{transition:transform .34s var(--ease-move),background-color .24s,border-color .24s,color .24s}@media(prefers-reduced-motion:reduce){[data-anim]{animation:none!important;transition:none!important}}.admin-outline-btn:hover{border-color:var(--color-accent)!important}.admin-remove-btn:hover{border-color:var(--color-accent)!important;color:var(--color-accent-400)!important}.admin-text-link:hover{color:var(--color-accent)!important}.campaign-site input,.campaign-site textarea,.campaign-site select{color-scheme:dark}.admin-sched-tiles{container-type:inline-size}.admin-sched-tiles-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}@container (min-width: 720px){.admin-sched-tiles-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.admin-sched-tile{all:unset;box-sizing:border-box;cursor:pointer;min-width:0;min-height:64px;padding:14px 16px;display:flex;gap:14px;align-items:flex-start;text-align:left;background:var(--color-text);border:1px solid color-mix(in srgb,var(--color-bg) 18%,transparent)}.admin-sched-tile:hover,.admin-sched-tile:focus-visible{border-color:var(--color-accent-400);background:color-mix(in srgb,var(--color-accent) 8%,var(--color-text))}.admin-sched-submit,.admin-sched-cancel,.admin-sched-undo{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase}.admin-sched-submit{height:44px;padding:0 18px;background:var(--color-accent);color:#fff;font-weight:700;font-size:13px}.admin-sched-submit:hover{background:var(--color-accent-600)}.admin-sched-cancel{height:44px;padding:0 14px;border:2px solid color-mix(in srgb,var(--color-bg) 30%,transparent);font-weight:700;font-size:13px}.admin-sched-undo{height:36px;padding:0 12px;border:1px solid color-mix(in srgb,var(--color-bg) 30%,transparent);font-weight:600;font-size:12px}.admin-sched-cancel:hover,.admin-sched-undo:hover{border-color:var(--color-accent-400)}.admin-sched-submit:focus-visible,.admin-sched-cancel:focus-visible,.admin-sched-undo:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.admin-sched-submit:disabled,.admin-sched-undo:disabled{opacity:.6;cursor:progress}.admin-pager-btn{all:unset;box-sizing:border-box;cursor:pointer;min-width:40px;height:40px;padding:0 10px;display:grid;place-items:center;font-family:var(--font-heading);font-weight:600;font-size:13px;border:1px solid color-mix(in srgb,var(--color-bg) 30%,transparent);color:var(--color-bg)}.admin-pager-btn:hover:not(:disabled){border-color:var(--color-accent-400)}.admin-pager-btn[aria-current=page]{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.admin-pager-btn:disabled{opacity:.45;cursor:default}.admin-pager-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cal{--panel: color-mix(in srgb, var(--color-bg) 7%, var(--color-text));--muted: color-mix(in srgb, var(--color-bg) 60%, transparent);--rule: color-mix(in srgb, var(--color-bg) 14%, transparent);--pad: clamp(10px, 4vw, 48px);min-height:100vh;max-width:1440px;margin:0 auto;background:var(--color-text);color:var(--color-bg);font-family:var(--font-body);font-size:15px}.cal a{color:var(--color-accent-400);text-decoration:none;border:0}.cal a:hover{color:var(--color-accent)}.cal button{all:unset;box-sizing:border-box;cursor:pointer}.cal button:focus-visible,.cal a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cal-heading{font-family:var(--font-heading);font-weight:800;text-transform:uppercase}.cal-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px var(--pad);min-height:57px;background:color-mix(in srgb,var(--color-text) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2px solid var(--rule)}.cal-mark{display:flex;align-items:center;gap:10px;min-width:0}.cal-mark-c{width:28px;height:28px;flex:none;display:grid;place-items:center;background:var(--color-accent);color:#fff;font:800 17px/1 var(--font-heading)}.cal-mark-name{font-family:var(--font-heading);font-weight:800;font-size:clamp(13px,3.9vw,16px);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.cal .cal-home{height:44px;display:flex;align-items:center;gap:8px;padding:0 4px;font:600 13px var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--color-bg)}.cal-title{margin:0;padding:clamp(20px,4vw,40px) var(--pad) 8px;font-size:clamp(40px,8vw,88px);line-height:.9;letter-spacing:-.03em}.cal-body{display:flex;flex-direction:column;gap:16px;padding:16px var(--pad) 64px}.cal .cal-next{width:100%;min-height:52px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:12px clamp(14px,2vw,20px);background:var(--color-accent);color:#fff}.cal .cal-next:hover{background:var(--color-accent-600)}.cal-next-kicker{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.cal-next-camp{font-size:17px;line-height:1.1}.cal-next-rel{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500}.cal-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cal-period{margin:0;font-size:clamp(20px,3vw,28px);letter-spacing:-.01em;white-space:nowrap}.cal-nav{display:flex;align-items:center;gap:8px;min-width:0}.cal .cal-today{height:44px;padding:0 14px;display:flex;align-items:center;border:2px solid color-mix(in srgb,var(--color-bg) 30%,transparent);font:600 13px var(--font-heading);letter-spacing:.06em;text-transform:uppercase}.cal .cal-today:hover{border-color:var(--color-accent-400)}.cal .cal-arrow{width:44px;height:44px;display:grid;place-items:center;font-size:20px}.cal .cal-arrow:hover,.cal .cal-close:hover{background:color-mix(in srgb,var(--color-bg) 10%,transparent)}.cal-views{margin-left:auto;display:flex;border:2px solid color-mix(in srgb,var(--color-bg) 30%,transparent)}.cal .cal-view{height:40px;padding:0 clamp(10px,2vw,16px);display:flex;align-items:center;font:600 13px var(--font-heading);letter-spacing:.06em;text-transform:uppercase}.cal .cal-view:hover{background:color-mix(in srgb,var(--color-bg) 10%,transparent)}.cal .cal-view[aria-selected=true]{background:var(--color-accent);color:#fff}.cal .cal-view[aria-selected=true]:hover{background:var(--color-accent-600)}@media(max-width:759px){.cal-period{order:-1;flex:1 1 100%}}.cal-frame{border-top:2px solid var(--color-bg)}.cal-empty{margin:0;padding:14px 0;font-size:14px;color:color-mix(in srgb,var(--color-bg) 65%,transparent);border-top:1px solid var(--rule)}.cal-day-wd{font-size:11px;font-weight:400;letter-spacing:.14em;color:color-mix(in srgb,var(--color-bg) 65%,transparent)}.cal-day-wd.is-today{color:var(--color-accent-300)}.cal-day-num{align-self:flex-start;min-width:34px;height:34px;padding:0 4px;display:grid;place-items:center;font:500 22px var(--font-heading)}.cal-day-num.is-today{background:var(--color-accent);color:#fff}.cal-wk-head,.cal-wk-grid{display:grid;grid-template-columns:56px repeat(7,minmax(0,1fr))}.cal-wk-head{border-bottom:2px solid var(--rule)}.cal-wk-head>div:not(:first-child){padding:10px 8px;display:flex;flex-direction:column;gap:4px;border-left:1px solid color-mix(in srgb,var(--color-bg) 10%,transparent)}.cal-hour{height:52px;padding:4px 8px 0 0;text-align:right;font-size:11px;color:color-mix(in srgb,var(--color-bg) 55%,transparent)}.cal-col{position:relative;border-left:1px solid color-mix(in srgb,var(--color-bg) 10%,transparent);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,color-mix(in srgb,var(--color-bg) 8%,transparent) 51px,color-mix(in srgb,var(--color-bg) 8%,transparent) 52px)}.cal-col.is-today{background-color:color-mix(in srgb,var(--color-accent) 6%,transparent)}.cal .cal-ev{position:absolute;padding:6px 8px;overflow:hidden;display:flex;flex-direction:column;gap:2px}.cal-ev-range{font-size:11px;letter-spacing:.04em}.cal-ev-camp{font:800 13px/1.15 var(--font-heading);text-transform:uppercase;overflow-wrap:anywhere}.cal-ev-title{font-size:12px;line-height:1.25}.cal-now{position:absolute;left:0;right:0;height:2px;background:var(--color-accent);pointer-events:none}.cal-now:before{content:"";position:absolute;left:-5px;top:-4px;width:10px;height:10px;background:var(--color-accent)}.cal .cal-card{min-height:56px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.cal-card .cal-ev-range{font-size:12px}.cal-card .cal-ev-camp{font-size:15px}.cal-card .cal-ev-title{font-size:13px}.cal-wk-day{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--color-bg) 12%,transparent)}.cal-wk-day>div{display:flex;flex-direction:column;gap:4px}.cal-wk-day>div:last-child{gap:8px;justify-content:center}.cal-nothing{font-size:13px;color:color-mix(in srgb,var(--color-bg) 50%,transparent)}.cal-mo-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-mo-row+.cal-mo-row,.cal-mo-head+.cal-mo-row{border-top:1px solid color-mix(in srgb,var(--color-bg) 12%,transparent)}.cal-mo-head>span{padding:8px 6px;font-size:11px;letter-spacing:.14em;color:color-mix(in srgb,var(--color-bg) 65%,transparent)}.cal-mo-cell{min-width:0;padding:6px;display:flex;flex-direction:column;gap:4px;border-left:1px solid color-mix(in srgb,var(--color-bg) 8%,transparent);text-align:left}.cal-mo-num{align-self:flex-start;min-width:26px;height:26px;padding:0 3px;display:grid;place-items:center;font:500 14px var(--font-heading)}.cal-mo-num.is-out{color:color-mix(in srgb,var(--color-bg) 35%,transparent)}.cal-mo-num.is-today{background:var(--color-accent);color:#fff}.cal .cal-chip{display:flex;gap:6px;align-items:baseline;padding:3px 6px;min-width:0;overflow:hidden;white-space:nowrap;font-size:12px}.cal-chip span:last-child{font-weight:600;overflow:hidden;text-overflow:ellipsis}.cal .cal-more{font-size:12px;font-weight:700;padding:2px 6px;color:var(--color-accent-300)}.cal-bar{display:block;height:6px}.cal-pick{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:2px solid var(--rule)}.cal-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--color-bg) 65%,transparent)}.cal-ag-month{padding:20px 0 8px;font:800 13px var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-300);border-bottom:2px solid var(--rule)}.cal-ag-day{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--color-bg) 12%,transparent)}.cal-ag-day>div:first-child{display:flex;flex-direction:column;gap:4px}.cal .cal-ag-ev{min-height:52px;padding:8px;display:grid;grid-template-columns:14px 110px minmax(0,1fr) auto;gap:12px;align-items:center}.cal .cal-ag-ev:hover{background:color-mix(in srgb,var(--color-bg) 6%,transparent)}.cal-ag-ev .cal-ev-range{font-size:13px}.cal-ag-ev .cal-ev-camp{font-size:15px}.cal-ag-ev .cal-ev-title{font-size:13px;color:color-mix(in srgb,var(--color-bg) 72%,transparent)}.cal-dot{width:12px;height:12px;flex:none}.cal-tag{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;white-space:nowrap}@media(max-width:759px){.cal .cal-ag-ev{grid-template-columns:12px 88px minmax(0,1fr)}.cal-ag-ev .cal-tag{display:none}}.cal-yr{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));column-gap:16px}.cal-yr-month{padding:14px 12px 18px 0;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid color-mix(in srgb,var(--color-bg) 12%,transparent)}.cal .cal-yr-name{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-height:32px}.cal .cal-yr-name:hover{color:var(--color-accent-300)}.cal-yr-name span:first-child{font:800 16px var(--font-heading);text-transform:uppercase;letter-spacing:.02em}.cal-yr-name span:last-child{font-size:12px;color:var(--muted)}.cal-yr-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.cal-yr-grid>span{aspect-ratio:1;display:grid;place-items:center;font-size:11px;font-weight:600}.cal-yr-grid>span.is-head{aspect-ratio:auto;font-size:10px;font-weight:700;color:color-mix(in srgb,var(--color-bg) 50%,transparent)}.cal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:color-mix(in srgb,#000 60%,transparent)}.cal-drawer{position:absolute;right:0;top:0;bottom:0;width:min(440px,100%);overflow-y:auto;background:var(--color-text);color:var(--color-bg);border-left:2px solid var(--color-accent)}@media(max-width:759px){.cal-drawer{top:auto;left:0;width:100%;max-height:88vh;border-left:0;border-top:2px solid var(--color-accent)}}.cal-dr-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 10px 10px 20px;border-bottom:2px solid var(--rule)}.cal-dr-head>span{display:flex;align-items:center;gap:10px;min-width:0;font:800 13px var(--font-heading);letter-spacing:.08em;text-transform:uppercase}.cal .cal-close{width:44px;height:44px;display:grid;place-items:center;font-size:22px}.cal-dr-body{padding:20px;display:flex;flex-direction:column;gap:20px}.cal-dr-main{display:flex;flex-direction:column;gap:8px}.cal-dr-title{margin:0;font-size:32px;line-height:.98;letter-spacing:-.02em}.cal-dr-block{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:2px solid var(--rule)}.cal-dr-party{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.cal-dr-member{display:flex;gap:10px;align-items:center;min-width:0;padding:10px;background:var(--panel)}.cal-dr-member>span:first-child{width:32px;height:32px;flex:none;display:grid;place-items:center;background:var(--color-bg);color:var(--color-text);font:800 15px var(--font-heading)}.cal-dr-member>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}.cal-dr-member strong,.cal-dr-member small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-dr-member strong{font:800 14px var(--font-heading);text-transform:uppercase}.cal-dr-member small{font-size:12px;color:color-mix(in srgb,var(--color-bg) 68%,transparent)}.cal-dr-seat{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--panel)}.cal .cal-apply{align-self:flex-start;height:44px;padding:0 16px;display:flex;align-items:center;gap:10px;background:var(--color-accent);color:#fff;font:700 13px var(--font-heading);letter-spacing:.06em;text-transform:uppercase}.cal .cal-apply:hover{background:var(--color-accent-600);color:#fff}.cal .cal-action{height:48px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border:2px solid color-mix(in srgb,var(--color-bg) 30%,transparent);font:700 13px var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--color-bg)}.cal .cal-action.is-primary{border-color:var(--color-bg)}.cal .cal-action:hover{border-color:var(--color-accent-400)}.cal .cal-action.is-link{border-color:transparent}.cal-tags{display:flex;gap:6px;flex-wrap:wrap}.cal-tags span{font-size:11px;font-weight:600;padding:3px 8px;border:1px solid color-mix(in srgb,var(--color-bg) 30%,transparent)}.cal-skel{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px;padding:24px var(--pad) 64px;animation:cal-skel 1.4s ease-in-out infinite}.cal-skel div{background:var(--panel)}@keyframes cal-skel{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.cal-skel{animation:none}}
