.cal-kicker{font-size:var(--font-size-sm);letter-spacing:1.8px;text-transform:uppercase;color:var(--color-gold);align-items:center;gap:8px;font-weight:700;display:inline-flex}.cal-count-pill{border-radius:var(--radius-full);color:var(--color-gold);font-size:var(--font-size-sm);white-space:nowrap;background:#ecc8551a;border:1px solid #ecc85538;flex-shrink:0;padding:6px 14px;font-weight:600}.cal-count-pill--muted{color:var(--color-text-secondary);background:#ffffff0a;border-color:#ffffff14}.cal-countdown{border-radius:var(--radius-full);letter-spacing:.3px;white-space:nowrap;border:1px solid #0000;flex-shrink:0;align-items:center;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.cal-countdown.is-default{color:var(--color-text-secondary);background:#ffffff0a;border-color:#ffffff0f}.cal-countdown.is-live{color:#7ee482;background:#4caf502e;border-color:#4caf5052;animation:2s infinite pulse-live}.cal-countdown.is-today,.cal-countdown.is-tomorrow{color:var(--color-gold);background:#ecc85529;border-color:#ecc8554d}.cal-countdown.is-soon{color:#ffab40;background:#ff910024;border-color:#ff910042}.cal-countdown.is-past{color:var(--color-text-tertiary);opacity:.6;background:0 0;border-color:#ffffff0a}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.7}}.cal-badge{--badge-color:var(--color-primary-light);--badge-bg:#8b45a324;border-radius:var(--radius-full);background:var(--badge-bg);color:var(--badge-color);letter-spacing:.3px;border:1px solid color-mix(in srgb, var(--badge-color) 22%, transparent);align-items:center;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.cal-badge--muted{--badge-bg:#ffffff0f;--badge-color:var(--color-text-secondary)}.cal-badge--live{--badge-bg:#4caf5029;--badge-color:#7ee482}.cal-tag{border-radius:var(--radius-full);color:var(--color-text-secondary);background:#ffffff0a;border:1px solid #ffffff0f;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.cal-hero{padding:calc(var(--space-12) + var(--space-4)) 0 var(--space-10);position:relative;overflow:clip}.cal-hero__mesh{pointer-events:none;background:radial-gradient(circle at 16% 16%,#8b45a338,#0000 36%),radial-gradient(circle at 84% 10%,#ecc8551f,#0000 30%),linear-gradient(#ffffff05,#0000 40%);position:absolute;inset:0}.cal-hero__content{z-index:1;gap:var(--space-8);grid-template-columns:minmax(0,1.3fr) minmax(300px,420px);align-items:center;display:grid;position:relative}.cal-hero h1{letter-spacing:-.05em;margin:var(--space-4) 0 var(--space-5);max-width:12ch;font-size:clamp(44px,7vw,82px);line-height:.96}.cal-hero h1 span{background:var(--gradient-gold);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;display:block}.cal-clock{margin:var(--space-4) 0 var(--space-2);font-variant-numeric:tabular-nums;align-items:flex-end;gap:4px;display:flex}.cal-clock__unit{flex-direction:column;align-items:center;min-width:42px;display:flex}.cal-clock__num{letter-spacing:-.03em;color:var(--color-text-primary);font-size:clamp(26px,3.4vw,38px);font-weight:800;line-height:1}.cal-clock__lbl{letter-spacing:1.4px;text-transform:uppercase;color:var(--color-text-secondary);margin-top:4px;font-size:10px;font-weight:700}.cal-clock__sep{color:var(--color-text-tertiary,#ffffff57);align-self:flex-start;margin-top:2px;font-size:clamp(20px,2.6vw,28px);font-weight:700;line-height:1}.cal-clock__unit:last-child .cal-clock__num{color:var(--color-gold);animation:1s step-end infinite cal-tick}@keyframes cal-tick{0%,60%{opacity:1}80%{opacity:.55}to{opacity:1}}.cal-clock__now{font-size:var(--font-size-lg);color:#4ade80;font-weight:800}.cal-progress{margin-top:var(--space-3);align-items:center;gap:10px;display:flex}.cal-progress__track{background:#ffffff17;border-radius:999px;flex:1;height:5px;overflow:hidden}.cal-progress__fill{background:var(--ev-color,var(--color-gold));border-radius:999px;height:100%;transition:width .6s;display:block}.cal-progress__txt{font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-shrink:0;font-weight:700}.cal-progress.is-tight .cal-progress__fill{background:#ff5252}.cal-progress.is-tight .cal-progress__txt{color:#ff8a80}.cal-reveal{opacity:0;transform:translateY(14px)}.cal-reveal.is-in{opacity:1;transition:opacity .5s,transform .5s cubic-bezier(.22,1,.36,1);transform:none}.cal-stat.is-live .cal-stat__value{color:#4ade80}@media (prefers-reduced-motion:reduce){.cal-reveal{opacity:1;transform:none}.cal-clock__unit:last-child .cal-clock__num{animation:none}}.cal-hero__lead{max-width:56ch;font-size:var(--font-size-lg);color:var(--color-text-secondary)}.cal-hero__actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.cal-hero__stats{gap:var(--space-3);margin-top:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.cal-stat{padding:var(--space-4);gap:var(--space-2);background:linear-gradient(#2e2e2ee6,#1a1a1ae0);border:1px solid #ffffff12;border-radius:20px;flex-direction:column;display:flex}.cal-stat__value{color:var(--color-text-primary);letter-spacing:-.03em;font-size:clamp(26px,3vw,36px);font-weight:800;line-height:1}.cal-stat__label{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.4}.cal-spotlight{padding:var(--space-6);background:radial-gradient(circle at 100% 0,#ecc8551a,#0000 40%),linear-gradient(160deg,#3d1e4dd9,#161616f2);border:1px solid #ffffff1a;border-radius:28px;box-shadow:0 20px 50px #00000059}.cal-spotlight__loading{margin-top:var(--space-4);color:var(--color-text-secondary)}.cal-spotlight__type-row{align-items:center;gap:var(--space-3);margin:var(--space-4) 0 var(--space-5);display:flex}.cal-spotlight__icon{background:var(--ev-bg,#8b45a333);width:52px;height:52px;color:var(--ev-color,var(--color-primary-light));font-size:var(--font-size-sm);letter-spacing:1px;border:1px solid color-mix(in srgb, var(--ev-color,var(--color-primary-light)) 30%, transparent);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.cal-spotlight__type-info{flex-direction:column;flex:1;gap:3px;display:flex}.cal-spotlight__type-name{font-size:var(--font-size-md);color:var(--color-text-primary);font-weight:700}.cal-spotlight__stage{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cal-spotlight__title{letter-spacing:-.03em;margin-bottom:var(--space-2);font-size:clamp(22px,3vw,32px);font-weight:800;line-height:1.15}.cal-spotlight__olympiad{color:var(--color-text-secondary);font-size:var(--font-size-md);margin-bottom:var(--space-4)}.cal-spotlight__meta{margin-bottom:var(--space-5);flex-wrap:wrap;gap:8px;display:flex}.cal-spotlight__meta span{border-radius:var(--radius-full);color:var(--color-text-secondary);font-size:var(--font-size-sm);background:#ffffff0d;border:1px solid #ffffff12;align-items:center;padding:6px 12px;display:inline-flex}.cal-spotlight__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.cal-shell{padding-bottom:var(--space-12)}.cal-shell__layout{gap:var(--space-8);grid-template-columns:minmax(280px,320px) minmax(0,1fr);align-items:start;display:grid}.cal-sidebar{top:calc(var(--nav-height) + var(--space-4));gap:var(--space-4);flex-direction:column;display:flex;position:sticky}.cal-panel{padding:var(--space-5);-webkit-backdrop-filter:blur(16px);background:linear-gradient(170deg,#2a2a2ae6,#161616f0);border:1px solid #ffffff12;border-radius:24px}.cal-panel--upcoming .cal-panel__title{margin-bottom:var(--space-4)}.cal-panel__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.cal-panel__title{letter-spacing:-.03em;margin-bottom:var(--space-5);font-size:clamp(22px,2.5vw,28px);font-weight:800}.cal-filter-block+.cal-filter-block{margin-top:var(--space-5)}.cal-filter-label{color:var(--color-text-secondary);font-size:var(--font-size-sm);letter-spacing:.8px;text-transform:uppercase;margin-bottom:var(--space-3);font-weight:700;display:block}.cal-chip-row,.cal-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.cal-chip{--chip-color:#ffffff26;appearance:none;color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition-fast), transform var(--transition-fast), background var(--transition-fast), color var(--transition-fast);background:#ffffff08;border:1px solid #ffffff14;padding:8px 14px;font-weight:600}.cal-chip:hover{color:var(--color-text-primary);border-color:#ffffff24;transform:translateY(-1px)}.cal-chip.is-active{background:color-mix(in srgb, var(--chip-color) 20%, transparent);border-color:color-mix(in srgb, var(--chip-color) 55%, transparent);color:var(--color-text-primary)}.cal-select-wrap{position:relative}.cal-select-wrap:after{content:"";border-right:2px solid var(--color-text-secondary);border-bottom:2px solid var(--color-text-secondary);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:16px;transform:translateY(-65%)rotate(45deg)}.cal-select{appearance:none;width:100%;color:var(--color-text-primary);font-size:var(--font-size-md);background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;padding:12px 40px 12px 14px}.cal-upcoming-list{gap:var(--space-2);flex-direction:column;display:flex}.cal-upcoming-placeholder{padding:var(--space-4);color:var(--color-text-tertiary);font-size:var(--font-size-md);text-align:center}.cal-upcoming-item{gap:var(--space-3);transition:background var(--transition-fast);background:#ffffff05;border:1px solid #ffffff0a;border-radius:14px;grid-template-columns:44px 1fr;align-items:center;padding:10px 12px;display:grid}.cal-upcoming-item:hover{background:#ffffff0d}.cal-upcoming-item__marker{background:var(--ev-bg,#8b45a324);border:1px solid color-mix(in srgb, var(--ev-color,var(--color-primary)) 28%, transparent);letter-spacing:.5px;width:40px;height:40px;color:var(--ev-color,var(--color-primary-light));border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.cal-upcoming-item__title{font-size:var(--font-size-md);color:var(--color-text-primary);margin-bottom:3px;font-weight:600;line-height:1.3;display:block}.cal-upcoming-item__meta{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.cal-feed__header{justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8);align-items:flex-end;display:flex}.cal-feed__title{letter-spacing:-.04em;margin-top:var(--space-2);font-size:clamp(28px,3.5vw,42px);font-weight:800}.cal-feed__summary{font-size:var(--font-size-md);color:var(--color-text-secondary);text-align:right;flex-shrink:0;max-width:30ch}.cal-state{padding:var(--space-6);background:#ffffff05;border:1px solid #ffffff12;border-radius:24px}.cal-state--loading{gap:var(--space-4);flex-direction:column;display:flex}.cal-state[hidden]{display:none}.cal-state--message strong{font-size:var(--font-size-xl);margin-bottom:var(--space-2);display:block}.cal-state--message p{margin-bottom:var(--space-4)}.cal-skeleton{background:linear-gradient(90deg,#ffffff08,#ffffff12,#ffffff08) 0 0/200% 100%;border-radius:20px;height:160px;animation:1.4s linear infinite skeleton-wave}@keyframes skeleton-wave{0%{background-position:200% 0}to{background-position:-200% 0}}.cal-groups{gap:var(--space-12);flex-direction:column;display:flex}.cal-group__head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid #ffffff12;display:flex}.cal-group__period{align-items:baseline;gap:12px;display:flex}.cal-group__mname{letter-spacing:-.05em;text-transform:capitalize;color:var(--color-text-primary);font-size:clamp(40px,5.5vw,66px);font-weight:800;line-height:1}.cal-group__yr{color:var(--color-text-tertiary);letter-spacing:-.02em;font-size:clamp(18px,2vw,24px);font-weight:400}.cal-timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.cal-event{grid-template-columns:52px 28px 1fr;align-items:start;display:grid}.cal-event__date{flex-direction:column;align-items:flex-end;gap:1px;padding-top:14px;padding-right:6px;display:flex}.cal-event__day{color:var(--color-text-primary);letter-spacing:-.03em;font-size:22px;font-weight:800;line-height:1}.cal-event__mabbr{text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-tertiary);font-size:10px;font-weight:700}.cal-event__track{flex-direction:column;align-items:center;padding-top:20px;display:flex;position:relative}.cal-event__track:before{content:"";background:linear-gradient(#ffffff1f 0%,#ffffff0d 100%);width:1px;position:absolute;top:0;bottom:-20px;left:50%;transform:translate(-50%)}.cal-event:first-child .cal-event__track:before{top:26px}.cal-event:last-child .cal-event__track:before{height:26px;bottom:0}.cal-event:first-child:last-child .cal-event__track:before{display:none}.cal-event__dot{background:var(--ev-color);border:2px solid var(--color-bg);outline:2px solid color-mix(in srgb, var(--ev-color) 50%, transparent);outline-offset:0px;z-index:1;border-radius:50%;flex-shrink:0;width:12px;height:12px;position:relative}.cal-event__card{margin-left:var(--space-3);margin-bottom:var(--space-5);border:1px solid #ffffff12;border-left:3px solid color-mix(in srgb, var(--ev-color) 70%, transparent);background:linear-gradient(140deg, color-mix(in srgb, var(--ev-bg) 30%, #1c1c1cf7) 0%, #161616fc 65%);padding:var(--space-4) var(--space-5);transition:border-color var(--transition-fast);border-radius:16px}.cal-event__card:hover{border-left-color:var(--ev-color);border-color:#ffffff1c;border-left-color:var(--ev-color)}.cal-event__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.cal-event__badges{flex-wrap:wrap;flex:1;gap:6px;display:flex}.cal-event__title{letter-spacing:-.02em;margin-bottom:var(--space-3);color:var(--color-text-primary);font-size:clamp(17px,1.8vw,22px);font-weight:700;line-height:1.25}.cal-event__sub{margin-bottom:var(--space-3);flex-wrap:wrap;gap:6px;display:flex}.cal-event__sub span{border-radius:var(--radius-full);color:var(--color-text-secondary);background:#ffffff0a;border:1px solid #ffffff0f;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.cal-event__desc{font-size:var(--font-size-md);color:var(--color-text-secondary);margin-bottom:var(--space-3);line-height:1.55}.cal-event__tags{margin-bottom:var(--space-3);flex-wrap:wrap;gap:6px;display:flex}.cal-event__footer{gap:var(--space-4);padding-top:var(--space-3);border-top:1px solid #ffffff0a;flex-wrap:wrap;align-items:center;display:flex}.cal-link{color:var(--color-gold);font-size:var(--font-size-sm);transition:color var(--transition-fast);font-weight:600;text-decoration:none}.cal-link:hover{color:color-mix(in srgb, var(--color-gold) 80%, #fff)}.cal-link--ext{color:var(--color-text-secondary)}.cal-link--ext:hover{color:var(--color-text-primary)}@media (width<=1080px){.cal-hero__content,.cal-shell__layout{grid-template-columns:1fr}.cal-sidebar{position:static}.cal-feed__header{flex-direction:column;align-items:flex-start}.cal-feed__summary{text-align:left;max-width:none}}@media (width<=720px){.cal-hero{padding-top:calc(var(--space-12) + var(--space-2))}.cal-hero__stats{grid-template-columns:1fr 1fr}.cal-stat:last-child{grid-column:1/-1}.cal-group__mname{font-size:clamp(32px,9vw,56px)}.cal-event{grid-template-columns:42px 24px 1fr}.cal-event__day{font-size:18px}.cal-event__card{padding:var(--space-3) var(--space-4)}.cal-spotlight__actions .btn{flex:1}}@media (width<=480px){.cal-hero__actions .btn{width:100%}.cal-event{grid-template-columns:38px 22px 1fr}.cal-event__day{font-size:16px}.cal-event__mabbr{font-size:9px}.cal-event__header{gap:var(--space-2);flex-direction:column}.cal-countdown{align-self:flex-start}}@media (prefers-reduced-motion:reduce){.cal-skeleton,.cal-chip,.cal-countdown{transition:none;animation:none}}
