:root{--paper:#f7f8f2;--ink:#202944;--muted:#737887;--blue:#4d62ec;--blue-soft:#edf0ff;--orange:#ed8b63;--orange-soft:#fff2e9;--green:#85ac96;--green-soft:#eef7ef;--lime:#e9ef87;--line:#e1e3da;--radius:20px;font-family:Heebo,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;-webkit-font-smoothing:antialiased}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.4}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:var(--lime);color:var(--ink)}svg{display:block}p,h1,h2,h3,h4{margin:0}button svg,a svg,[data-icon] svg{width:20px;height:20px;flex-shrink:0}[hidden]{display:none!important}.shell{max-width:1440px;margin-inline:auto;padding-inline:64px}.page-grain{position:fixed;inset:0;z-index:40;pointer-events:none;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23g)' opacity='.7' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.skip-link{position:fixed;top:-100px;right:20px;background:var(--ink);color:white;padding:12px;z-index:100}.skip-link:focus{top:10px}
.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px}.brand .brand-mark{width:43px;height:43px;color:var(--blue);transition:transform .65s cubic-bezier(.2,1,.2,1)}.brand:hover .brand-mark{transform:translateY(-2px)}.brand-word{display:block;font-size:25px;line-height:1;font-weight:800;letter-spacing:-1.2px}.brand-word>span{display:block;font-size:13px;letter-spacing:1.7px;font-weight:500;margin-top:8px}.main-nav{display:flex;align-items:center;gap:34px;font-size:15px;font-weight:500}.main-nav a,.main-nav button{position:relative;background:none;padding:8px 0}.main-nav a:after,.main-nav button:after{content:'';position:absolute;bottom:0;right:0;height:2px;background:var(--blue);width:0;transition:width .25s}.main-nav a:hover:after,.main-nav button:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:17px}.preview-badge{font-size:12px;letter-spacing:.3px;color:#858978;border:1px solid var(--line);padding:5px 9px;border-radius:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;border-radius:9px;min-height:56px;padding:16px 24px;font-size:16px;font-weight:500;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}.button:hover{transform:translateY(-3px);box-shadow:0 6px 0 rgba(32,41,68,.12)}.button:active{transform:translateY(0);box-shadow:none}.button.small{min-height:44px;padding:12px 17px;font-size:14px;gap:10px}.button-dark{background:var(--ink);color:white}.button-blue{background:var(--blue);color:white}.button-light{background:var(--blue-soft);color:var(--blue)}.button-outline{background:transparent;border:1px solid var(--line)}.text-button{display:inline-flex;align-items:center;gap:9px;background:none;font-size:15px;font-weight:500;padding:10px 0}.text-button:hover{color:var(--blue)}
.hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;min-height:622px;align-items:center;padding-block:45px 65px;overflow:clip}.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:9px;font-size:13px;letter-spacing:.8px;font-weight:500}.live-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px rgba(133,172,150,.12)}.eyebrow-line{width:38px;height:1px;background:#bfc3b4;margin-right:5px}.hero h1{font-size:clamp(52px,5.1vw,74px);font-weight:800;line-height:1.17;letter-spacing:-3.5px;margin-block:26px 30px;white-space:nowrap}.highlight{position:relative;display:inline-block;color:var(--blue)}.highlight svg{position:absolute;width:103%;height:17px;bottom:-12px;right:-2%;color:var(--lime);z-index:-1;transform:rotate(-1deg)}.hero-description{font-size:18px;color:#697080;line-height:1.9;font-weight:400}.grade-picker{display:flex;align-items:center;gap:20px;margin-block:28px 22px}.picker-label{font-size:14px;font-weight:500}.grade-options{display:flex;gap:7px}.grade-options button{background:transparent;border:1px solid #d8dbd1;width:41px;height:39px;border-radius:7px;font-size:17px;transition:background .2s,transform .2s,border-color .2s}.grade-options button:hover{border-color:var(--blue);transform:translateY(-2px)}.grade-options button[aria-pressed=true]{color:white;background:var(--ink);border-color:var(--ink)}.hero-actions{display:flex;gap:26px;align-items:center}.hero-footnote{display:flex;align-items:center;gap:9px;margin-top:27px;font-size:12px;color:#8a8e85}.tiny-orbit{font-size:18px;color:var(--orange)}
.hero-stage{position:relative;isolation:isolate;height:490px;direction:ltr;width:100%;max-width:660px;justify-self:center;--tilt:0deg}.stage-orbit{position:absolute;border:1px solid #d7ddcb;border-radius:50%;pointer-events:none}.orbit-one{width:410px;height:410px;left:50%;top:13px;transform:translateX(-50%);border-style:dashed;opacity:.8}.orbit-two{width:490px;height:270px;left:50%;top:90px;transform:translateX(-50%) rotate(-24deg);opacity:.45}.stage-scribble{position:absolute;width:79px;height:86px;right:0;top:11px;color:#9fa791;transform:rotate(13deg)}.floating-ticket{position:absolute;left:30px;top:4px;z-index:5;display:flex;align-items:center;gap:12px;background:var(--lime);font-size:13px;font-weight:600;border:1px solid #e1e770;padding:11px 17px;border-radius:3px;transform:rotate(-9deg);box-shadow:3px 5px 0 #eceee2;animation:ticket-float 8s ease-in-out infinite}.floating-ticket>span:last-child{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:1px;writing-mode:vertical-rl;padding-left:7px;border-left:1px dashed #aeb45c}.ticket-star{font-size:27px}.side-card{position:absolute;top:88px;width:215px;height:302px;z-index:0;border:1px solid rgba(30,42,69,.1);border-radius:15px;display:flex;align-items:flex-start;flex-direction:column;padding:24px;direction:rtl;box-shadow:0 8px 20px #20294405;transition:transform .5s}.side-card-prev{left:7px;transform:rotate(-12deg);background:#e6edde;color:#929d80}.side-card-prev:hover{transform:rotate(-15deg) translateX(-5px)}.side-card-next{right:3px;transform:rotate(11deg);background:#f4dfd0;color:#c28e73}.side-card-next:hover{transform:rotate(15deg) translateX(5px)}.side-day{font-size:14px}.side-number{font-family:'IBM Plex Mono',monospace;font-size:58px;line-height:1.5}.side-line{height:6px;width:80%;background:currentColor;border-radius:20px;opacity:.22;margin-top:19px}.side-line.short{width:53%;margin-top:10px}.hero-day-card{direction:rtl;position:absolute;left:50%;top:40px;width:326px;min-height:374px;border:1px solid #dedfd4;border-radius:17px;background:#fffefa;box-shadow:0 20px 40px #2029440c,0 3px 4px #20294404;transform:translateX(-50%) rotate(var(--tilt));padding:23px 25px 0;transition:transform .5s;z-index:3;overflow:hidden}.hero-card-ghost{pointer-events:none;z-index:2;transition:none}.hero-stage[data-transitioning] .hero-day-card{will-change:transform,opacity}.hero-card-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#959b8a;font-family:'IBM Plex Mono',Heebo,monospace}.hero-card-top .day-tag{display:flex;align-items:center;gap:6px;border:1px solid #e6e8da;border-radius:20px;padding:4px 8px;font-family:Heebo}.hero-date-row{display:flex;align-items:center;gap:18px;margin-block:8px 17px;border-bottom:1px solid #e8e9e0;padding-bottom:12px}.hero-date-number{font-family:'IBM Plex Mono',monospace;font-size:84px;line-height:1.1;letter-spacing:-7px;color:var(--ink);margin-right:-5px}.hero-date-name strong{font-size:21px;font-weight:600;display:block}.hero-date-name>span{display:block;font-size:13px;color:#8c9184;margin-top:4px}.hero-event-preview{display:flex;align-items:flex-start;gap:11px;margin-block:12px;min-width:0}.hero-event-preview .preview-source-icon{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;flex-shrink:0}.preview-source-icon svg{width:14px;height:14px}.hero-event-preview strong{display:block;font-size:14px;line-height:1.5;font-weight:500;max-height:36px;overflow:hidden}.hero-event-preview small{font-size:11px;color:#8b9184;display:block;margin-top:2px}.hero-card-empty{text-align:center;padding:12px 0 17px;color:#8d9586}.hero-card-empty .empty-art{font-size:43px;color:#a8b396;display:block}.hero-card-empty strong{display:block;font-size:17px;font-weight:500;margin-top:6px}.hero-card-empty p{font-size:13px;margin-top:5px}.hero-card-bottom{border-top:1px solid #e8e9e0;display:flex;align-items:center;justify-content:space-between;padding-block:13px;margin-top:17px;font-size:12px}.hero-card-bottom button{display:flex;align-items:center;gap:10px;background:none;color:var(--blue);font-size:13px}.hero-card-bottom button svg{width:15px;height:15px}.stage-sticker{position:absolute;right:16px;bottom:66px;z-index:4;width:107px;height:107px;transform:rotate(14deg);color:var(--blue);filter:drop-shadow(0 5px 0 #2029440a);animation:sticker-float 7s ease-in-out infinite}.stage-sticker svg{width:100%;height:100%}.stage-sticker>span{position:absolute;inset:0;display:grid;place-content:center;color:white;direction:rtl;text-align:center;font-size:14px;font-weight:500;line-height:1.5}.hero-slider-controls{display:flex;align-items:center;justify-content:center;gap:17px;position:absolute;bottom:5px;left:50%;transform:translateX(-50%);direction:rtl}.circle-button{border:1px solid #d9ddce;background:transparent;border-radius:50%;height:35px;width:35px;display:grid;place-items:center;transition:background .2s,color .2s,transform .2s}.circle-button:hover{background:var(--ink);color:white;transform:scale(1.07)}.circle-button svg{width:15px;height:15px}.hero-slider-controls>span{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#94998c;min-width:60px;text-align:center}
.source-ribbon{border-block:1px solid var(--line);background:#eff1e7}.ribbon-content{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:77px;font-size:14px}.ribbon-heading{font-weight:500;display:flex;align-items:center;gap:28px}.ribbon-spark{font-size:28px;font-weight:400;color:#b5bba0}.ribbon-source{display:flex;align-items:center;gap:8px;color:var(--ink)}.ribbon-source [data-icon]{padding:7px;border-radius:7px}.ribbon-source svg{width:17px;height:17px}.ribbon-source.orange [data-icon]{background:#f6e2d6;color:#ba714f}.ribbon-source.blue [data-icon]{background:#e0e4f6;color:var(--blue)}.ribbon-source.green [data-icon]{background:#dae8d9;color:#618a6d}.ribbon-plus{color:#b0b6a1;font-size:19px;font-weight:400}.ribbon-end{font-size:12px;color:#89907d;display:flex;gap:10px;align-items:center}.ribbon-end svg{width:13px;height:13px}
.month-section{padding-block:62px 50px;scroll-margin-top:15px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:25px}.section-eyebrow{font-size:12px;color:#959a8a;letter-spacing:.5px;margin-bottom:12px}h2{font-size:36px;font-weight:600;letter-spacing:-1.4px;line-height:1.3}.heading-dot{color:var(--blue)}.month-summary{display:flex;align-items:center;gap:10px;font-size:12px;color:#909787;max-width:165px}.month-summary strong{font-family:'IBM Plex Mono',monospace;color:var(--blue);font-size:37px;font-weight:400;line-height:1}.month-summary>span{max-width:85px;line-height:1.6}.calendar-toolbar{background:var(--ink);border-radius:14px;padding:21px 27px 17px;color:white;box-shadow:0 8px 15px #20294406}.calendar-toolbar-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #ffffff13}.toolbar-title{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:500}.toolbar-title>span[data-icon]{color:#b5bedc}.toolbar-title svg{width:19px;height:19px}.toolbar-grade{font-size:11px;font-weight:400;background:#ffffff12;padding:4px 8px;border-radius:5px;color:#c5cbe0;margin-right:6px}.toolbar-actions{display:flex;align-items:center;gap:16px}.today-button{background:none;color:#d3d7e6;display:flex;align-items:center;gap:9px;font-size:12px}.today-button svg{width:13px;height:13px}.icon-button{background:transparent;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;transition:background .2s}.icon-button:hover{background:#88888816}.toolbar-actions .icon-button{color:#b7c0db}.toolbar-actions .icon-button svg{width:16px;height:16px}.day-strip{display:flex;gap:4px;overflow:auto;padding-top:13px;scrollbar-width:thin;scrollbar-color:#ffffff22 transparent;scroll-snap-type:x proximity}.strip-day{color:#929dbb;background:transparent;display:flex;flex-direction:column;align-items:center;gap:4px;flex:1 0 39px;padding:6px 4px 8px;border-radius:9px;scroll-snap-align:center;position:relative;transition:background .2s,color .2s}.strip-day small{font-size:11px}.strip-day strong{font-family:'IBM Plex Mono',monospace;font-weight:400;font-size:18px}.strip-day .strip-dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:0}.strip-day.has-events .strip-dot{opacity:.7}.strip-day:hover{background:#ffffff0d;color:white}.strip-day.selected{background:var(--lime);color:var(--ink)}.strip-day.weekend:not(.selected){color:#68718b}.filter-bar{display:flex;gap:15px;align-items:center;justify-content:space-between;padding-block:24px 8px}.source-filters{display:flex;gap:6px;align-items:center}.filter-chip{display:flex;align-items:center;gap:7px;background:transparent;border:1px solid transparent;font-size:12px;color:#7e8578;padding:8px 10px;border-radius:6px;transition:background .2s}.filter-chip.active{background:#fffefa;color:var(--ink);border-color:#dfe3d5;box-shadow:0 2px 3px #20294403}.filter-chip:hover{background:#ebeede}.filter-chip>span{font-family:'IBM Plex Mono',monospace;font-size:11px;border-radius:4px;background:#eff0e8;padding:1px 5px}.source-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.source-dot.orange{background:var(--orange)}.source-dot.blue{background:var(--blue)}.source-dot.green{background:var(--green)}.search-field{display:flex;gap:9px;align-items:center;color:#959c8d;border-bottom:1px solid #dce0d1;padding-block:8px;max-width:185px}.search-field svg{width:14px;height:14px}.search-field input{background:none;border:0;min-width:0;width:140px;font-size:12px;color:var(--ink);outline:none}.search-field input::placeholder{color:#959c8d}.search-field kbd{font-size:11px;border:1px solid #dce0d1;border-radius:3px;min-width:16px;text-align:center}.quiet-toggle{display:flex;align-items:center;gap:7px;background:none;padding:6px 0;font-size:11px;color:#909786;white-space:nowrap}.quiet-toggle svg{width:14px;height:14px}.quiet-toggle[aria-pressed=true]{color:var(--blue)}.feed-state{display:flex;align-items:center;gap:8px;font-size:11px;color:#a0a595;min-height:35px;margin-bottom:17px}.feed-state .live-dot{height:4px;width:4px;box-shadow:none}.feed-state.warning{color:#a16f32}.feed-state.warning .live-dot{background:#d9a04c}.feed-state.error{color:#b25848}.feed-state.error .live-dot{background:#b25848}.feed-state button{background:none;color:var(--blue);text-decoration:underline;font-size:12px}.month-layout{display:grid;grid-template-columns:222px minmax(0,1fr);gap:32px;align-items:start}.month-sidebar{position:sticky;top:25px}.sidebar-note{position:relative;padding:27px 23px 14px;background:#edf0e3;border-radius:11px;overflow:hidden;border:1px solid #e3e7d8}.note-eyebrow{font-size:10px;letter-spacing:.7px;color:#929c80}.sidebar-note h3{font-size:32px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin-top:17px}.sidebar-note p{font-size:12px;line-height:1.9;color:#8b957b;margin-top:12px}.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px 3px;margin-top:27px}.mini-day{background:none;aspect-ratio:1;font-size:10px;border-radius:50%;position:relative;color:#a3aa96;font-family:'IBM Plex Mono',monospace}.mini-day.has-events{color:var(--ink)}.mini-day.has-events:after{content:'';position:absolute;bottom:1px;left:50%;width:2px;height:2px;border-radius:50%;background:var(--blue);transform:translateX(-50%)}.mini-day.selected{background:var(--blue);color:white}.mini-day.selected:after{background:white}.mini-day:hover{outline:1px solid #aeb9a2}.mini-weekday{font-size:9px;text-align:center;color:#9aa68a;padding-bottom:8px}.mini-legend{display:flex;align-items:center;gap:5px;font-size:9px;color:#9ca78b;justify-content:center;margin-top:14px}.mini-legend i{width:3px;height:3px;border-radius:50%;background:var(--blue)}.note-doodle{width:85px;height:55px;color:#abb997;margin:10px auto 0;transform:rotate(-10deg)}.sidebar-subscribe{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:22px;background:#fffefa;border:1px solid var(--line);border-radius:10px;margin-top:17px;width:100%;text-align:right;transition:transform .2s,border-color .2s}.sidebar-subscribe:hover{transform:translateY(-3px);border-color:var(--blue)}.subscribe-symbol{color:var(--blue);background:#eef0fc;padding:10px;border-radius:9px;margin-bottom:15px}.subscribe-symbol svg{width:18px;height:18px}.sidebar-subscribe strong{font-size:14px;font-weight:500}.sidebar-subscribe>span:not([data-icon]){font-size:11px;color:#9a9f90;margin-top:6px}.subscribe-arrow{position:absolute;left:18px;bottom:22px;color:#9aa28b}.subscribe-arrow svg{width:13px;height:13px}.sidebar-updates{background:none;display:flex;align-items:center;gap:8px;font-size:11px;color:#9a9f91;padding:17px 3px;width:100%}.sidebar-updates svg{width:13px;height:13px}.sidebar-updates>span:last-child{margin-right:auto}.days-container{min-width:0}.day-section{padding-bottom:28px;position:relative;scroll-margin-top:25px;animation:fade-in .35s ease-out both}.day-section+.day-section{padding-top:22px;border-top:1px solid var(--line)}.day-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.day-date{display:flex;align-items:center;gap:12px}.day-number{font-family:'IBM Plex Mono',monospace;font-size:35px;line-height:1;color:#313b56;font-weight:400;letter-spacing:-2px}.day-title{font-size:16px;font-weight:500;line-height:1.3}.day-title small{display:block;font-size:11px;font-weight:400;color:#959b8b;margin-top:5px}.day-badge{font-size:10px;padding:4px 8px;background:#eef0e5;color:#939b84;border-radius:4px}.day-badge.today{color:var(--blue);background:#e8ecff}.day-total{display:flex;align-items:center;gap:8px;color:#a2a791;font-size:11px}.day-total .count-dot{width:4px;height:4px;border-radius:50%;background:#aab59a}.source-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.source-column{background:#fffefa;border:1px solid #e2e4db;border-radius:10px;overflow:hidden;min-height:140px;display:flex;flex-direction:column}.source-column.orange{--source:var(--orange);--soft:var(--orange-soft)}.source-column.blue{--source:var(--blue);--soft:var(--blue-soft)}.source-column.green{--source:var(--green);--soft:var(--green-soft)}.source-column-heading{display:flex;align-items:center;gap:7px;border-bottom:1px solid #e2e4db;padding:12px 13px;color:#77806a;font-size:11px}.source-column-heading [data-icon]{color:var(--source)}.source-column-heading svg{height:13px;width:13px}.source-column-heading strong{font-weight:500;color:#67715c}.source-column-heading .source-count{margin-right:auto;font-family:'IBM Plex Mono',monospace;font-size:10px;color:#a2a896}.event-button{background:none;display:block;text-align:right;padding:12px 13px;width:100%;position:relative;transition:background .2s}.event-button:hover{background:var(--soft)}.event-button+.event-button{border-top:1px solid #eceee5}.event-time{font-family:'IBM Plex Mono',Heebo,monospace;font-size:10px;color:#a0a693;display:flex;align-items:center;gap:5px;margin-bottom:6px;line-height:1.4}.event-time svg{height:9px;width:9px}.event-title{font-size:13px;line-height:1.65;font-weight:500;display:block;overflow-wrap:anywhere;color:#414a35}.event-location{display:flex;align-items:center;gap:4px;font-size:10px;color:#9ea58f;margin-top:7px}.event-location svg{height:10px;width:10px}.event-description{font-size:11px;line-height:1.7;color:#9ba18e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:6px}.event-more{font-size:10px;color:var(--source);display:flex;gap:5px;align-items:center;margin-top:9px;opacity:0;transition:opacity .15s}.event-more svg{height:10px;width:10px}.event-button:hover .event-more,.event-button:focus-visible .event-more{opacity:1}.source-empty{padding:21px 13px 20px;display:flex;gap:7px;align-items:center;font-size:10px;color:#b2b8a3;flex:1}.source-empty svg{height:13px;width:13px;color:#c9cfba}.empty-day .source-column{min-height:105px;background:#f9faf5}.empty-day .source-column-heading{padding-block:10px}.empty-day .source-empty{padding-block:15px}.empty-day .day-number{color:#aab09d}.empty-day .day-title{color:#939d86}.empty-day .day-total{color:#b0b6a2}.cancelled .event-title{text-decoration:line-through;color:#b16f62}.event-cancelled{font-size:10px;color:#b16f62;background:#fff0ec;padding:2px 4px;margin-inline-start:5px}.month-empty{padding:65px 20px;text-align:center;border:1px dashed #dce0d2;border-radius:12px}.month-empty>span{font-size:35px;color:#c1cba7;display:block}.month-empty h3{font-size:22px;font-weight:500;margin-top:10px}.month-empty p{font-size:14px;color:#8f9883;margin-top:9px}.month-empty button{margin-top:20px}.selected-day .day-heading{position:relative}.selected-day .day-heading:before{content:'';width:3px;height:32px;background:var(--blue);position:absolute;right:-12px;border-radius:5px}.section-flash{animation:day-flash 1.2s ease-out}.closing-banner{padding-block:10px 50px}.closing-inner{background:var(--lime);border-radius:14px;min-height:190px;display:flex;align-items:center;justify-content:space-between;padding:35px 47px;gap:30px;position:relative;overflow:hidden}.closing-copy{position:relative;z-index:1;margin-left:auto}.closing-copy>span{font-size:12px;color:#72773e;letter-spacing:.4px}.closing-copy h2{font-size:33px;margin-block:10px 9px}.closing-copy p{font-size:14px;color:#7c814b}.closing-inner>.button{z-index:1}.closing-art{position:relative;width:135px;height:120px;flex-shrink:0;direction:ltr}.closing-disc{position:absolute;font-size:115px;line-height:1;top:0;left:-10px;color:var(--blue);transform:rotate(7deg)}.closing-note{position:absolute;bottom:-12px;right:0;color:var(--ink);font-size:86px;line-height:1;transform:rotate(-15deg)}.closing-square{position:absolute;width:39px;height:39px;right:12px;top:8px;background:var(--orange);border-radius:6px;transform:rotate(17deg);box-shadow:5px 5px 0 #d5dc6f}.site-footer{border-top:1px solid var(--line);min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#929a85}.footer-brand{font-size:17px;color:var(--ink);font-weight:600;letter-spacing:-.4px}.footer-brand span{font-size:11px;color:#8e9780;margin-right:10px;font-weight:400}.site-footer .text-button{font-size:12px;color:#858e78}.site-footer .text-button svg{width:13px;height:13px}.back-top{position:fixed;bottom:24px;left:24px;width:40px;height:40px;border:1px solid #d8ddce;border-radius:50%;background:#fffefae8;backdrop-filter:blur(10px);display:grid;place-items:center;z-index:8;opacity:0;transform:translateY(15px);pointer-events:none;transition:opacity .25s,transform .25s}.back-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-top svg{width:17px;height:17px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 22px;border-radius:10px;font-size:14px;z-index:100;pointer-events:none;opacity:0;transition:opacity .25s,transform .25s;max-width:calc(100vw - 40px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
dialog{border:1px solid #e3e5db;border-radius:20px;background:var(--paper);color:var(--ink);padding:39px 35px 32px;max-width:510px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);box-shadow:0 30px 100px #20294430}dialog[open]{animation:dialog-in .25s ease-out}dialog::backdrop{background:#18213965;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:12px;left:12px;color:#7f8975}.dialog-close svg{width:17px;height:17px}.modal-eyebrow{display:flex;align-items:center;gap:8px;color:var(--blue);font-size:12px;margin-bottom:13px}.modal-eyebrow svg{width:15px;height:15px}.modal-title{font-size:33px;line-height:1.3;letter-spacing:-1px;font-weight:600;margin-bottom:12px}.modal-intro{font-size:15px;line-height:1.9;color:#818b76;margin-bottom:22px}.modal-grade{display:flex;gap:7px;align-items:center;font-size:13px;margin-bottom:22px}.modal-grade .grade-options{margin-right:auto}.modal-grade .grade-options button{width:37px;height:35px;font-size:14px}.subscription-options{display:grid;gap:10px}.subscription-option{display:flex;align-items:center;gap:12px;padding:17px;background:#fffefa;border:1px solid #dde2d2;border-radius:10px;text-align:right;transition:border-color .2s,transform .2s}.subscription-option:hover{border-color:var(--blue);transform:translateY(-2px)}.subscription-option>span:first-child{display:grid;place-items:center;border-radius:9px;width:36px;height:36px;background:#eef0fc;color:var(--blue);font-size:18px}.subscription-option strong{display:block;font-size:15px;font-weight:500}.subscription-option small{display:block;font-size:12px;color:#949e88;margin-top:3px}.subscription-option>.option-arrow{margin-right:auto;color:#9aa68b}.subscription-option svg{width:17px;height:17px}.modal-note{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.8;color:#929c84;margin-top:20px;padding-top:17px;border-top:1px solid var(--line)}.modal-note svg{width:14px;height:14px;flex-shrink:0;margin-top:2px}.copy-row{display:flex;gap:8px;margin-top:14px}.copy-row input{font-size:12px;font-family:'IBM Plex Mono',monospace;direction:ltr;border:1px solid var(--line);border-radius:6px;min-width:0;flex:1;padding:10px;background:#fffefa;color:#839174}.copy-row button{font-size:13px;color:var(--blue);background:var(--blue-soft);padding:10px 14px;border-radius:6px}.preview-notice{background:#f1edda;border:1px solid #e6dfc0;border-radius:9px;padding:12px 15px;font-size:13px;line-height:1.8;color:#8c8056;margin-bottom:20px}.phone-preview{border:1px solid #dbe1d0;background:#e9eddf;border-radius:20px;padding:28px 17px 18px;position:relative}.phone-notch{position:absolute;height:4px;width:42px;background:#c0c9b3;top:11px;left:50%;transform:translateX(-50%);border-radius:10px}.phone-date{text-align:center;font-size:12px;color:#929e81;margin-bottom:14px}.notification-bubble{background:#fffefae8;border:1px solid #dfe3d6;border-radius:12px;padding:14px}.notification-brand{display:flex;align-items:center;gap:7px;color:#9ba58f;font-size:10px;margin-bottom:8px}.notification-brand img{width:18px;height:18px;border-radius:4px}.notification-brand>span:last-child{margin-right:auto}.notification-bubble h3{font-size:14px;font-weight:600}.notification-bubble h4{font-size:13px;margin-top:13px;font-weight:500}.notification-bubble ul{margin:5px 0 0;padding-right:17px;font-size:12px;line-height:1.8;color:#7b866e}.notification-bubble p{font-size:13px;line-height:1.8;color:#8a957d;margin-top:10px}.notification-window{font-size:11px;color:#8d997e;margin-top:13px;text-align:center}.install-help{margin-top:20px;border:1px solid var(--line);border-radius:9px;padding:15px}.install-help h3{font-size:14px;font-weight:500;margin-bottom:7px}.install-help p{font-size:12px;line-height:1.9;color:#919d83}.install-help .button{margin-top:12px;min-height:39px;font-size:13px;padding:10px 15px;gap:12px}.event-modal-meta{display:flex;gap:9px;flex-wrap:wrap;font-size:12px;color:#8e9a80;margin-bottom:19px}.event-modal-meta>span{display:flex;align-items:center;gap:5px;background:#edf0e6;padding:6px 9px;border-radius:5px}.event-modal-meta svg{width:13px;height:13px}.event-full-description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:2;color:#79866a;max-height:300px;overflow:auto;padding-block:4px}.event-source-link{margin-top:20px}.about-grid{display:grid;gap:12px;margin-block:20px}.about-row{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:9px;padding:15px;background:#fffefa}.about-row>[data-icon]{color:var(--blue);margin-top:3px}.about-row svg{height:18px;width:18px}.about-row strong{display:block;font-size:14px;font-weight:500}.about-row p{font-size:13px;line-height:1.8;color:#909c82;margin-top:4px}.loading .card-skeleton{padding:15px 0;min-height:350px}.card-skeleton span,.day-skeleton{background:linear-gradient(110deg,#ecede5 25%,#f8f9f3 45%,#ecede5 65%);background-size:200% 100%;animation:shimmer 1.5s infinite}.card-skeleton span{display:block;height:70px;margin-bottom:20px;border-radius:8px}.card-skeleton span:first-child{height:110px;width:65%}.day-skeleton{height:220px;border-radius:12px;margin-bottom:27px}.spinning svg{animation:spin 1s linear infinite}.reveal{opacity:0;transform:translateY(18px);transition:opacity .5s,transform .5s}.reveal.in-view{opacity:1;transform:none}
@keyframes ticket-float{0%,100%{transform:rotate(-9deg) translateY(0)}50%{transform:rotate(-7deg) translateY(-7px)}}@keyframes sticker-float{0%,100%{transform:rotate(14deg) translateY(0)}50%{transform:rotate(8deg) translateY(-5px)}}@keyframes fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes day-flash{0%{background:#e9ef873f}100%{background:transparent}}@keyframes dialog-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}
.source-columns.single-source{grid-template-columns:1fr}.push-button-row{display:flex;flex-wrap:wrap;gap:9px}.push-button-row .button{gap:8px}.latest-update{margin-top:16px;font-size:12px;color:#879476}.latest-update summary{cursor:pointer}.latest-update p{white-space:pre-wrap;margin-top:10px}.holiday-banner{background:#f0f2d7;border:1px solid #e2e6bd;border-radius:8px;padding:11px 13px;display:flex;align-items:center;gap:9px;text-align:right;width:100%;margin-bottom:11px;color:#90975c;font-size:11px}.holiday-banner strong{font-size:12px;font-weight:500;color:#7b854b;flex:1;overflow-wrap:anywhere}.holiday-banner svg{width:14px;height:14px;flex-shrink:0}.holiday-banner>svg:last-child{width:12px;height:12px}.holiday-banner:hover{background:#e9edc1}.hero-holiday{font-size:11px;color:#8b9560;background:#f1f3df;padding:7px 9px;border-radius:5px;margin:-7px 0 12px;line-height:1.6}.strip-day.holiday-day:not(.selected){color:#c5ca84}.strip-day.holiday-day:after{content:'';width:3px;height:3px;border-radius:50%;background:#c5ca84;position:absolute;top:2px;left:2px}
@media(min-width:1600px){.hero h1{font-size:78px}.hero{min-height:670px;gap:70px}.hero-stage{height:510px}}
@media(max-width:1200px){.shell{padding-inline:40px}.hero{gap:5px}.hero h1{font-size:59px;letter-spacing:-3px}.hero-stage{transform:scale(.93);transform-origin:center}.hero-day-card{width:300px}.side-card{width:190px}.stage-sticker{right:-2px;width:96px;height:96px}.floating-ticket{left:5px}.month-layout{grid-template-columns:185px minmax(0,1fr);gap:25px}.sidebar-note{padding:23px 18px}.sidebar-note h3{font-size:28px}.sidebar-subscribe{padding:18px}.sidebar-subscribe strong{font-size:13px}.filter-bar{gap:8px}.filter-chip{padding-inline:8px}.quiet-toggle{font-size:10px}.ribbon-heading{gap:15px}.ribbon-end{display:none}.source-columns{gap:8px}.event-title{font-size:12px}.source-column-heading{font-size:10px;padding-inline:10px}.event-button{padding-inline:10px}.closing-inner{padding-inline:34px}}
@media(max-width:980px){.shell{padding-inline:28px}.site-header{height:94px}.main-nav{gap:20px;font-size:13px}.hero{min-height:565px;padding-block:27px 40px}.hero h1{font-size:50px;letter-spacing:-2.7px}.hero-description{font-size:16px}.hero-stage{height:450px;transform:scale(.85);width:115%;max-width:none}.hero-day-card{width:290px;min-height:360px;padding-inline:21px}.hero-date-number{font-size:75px}.hero-date-name strong{font-size:19px}.side-card{width:165px;height:290px;top:75px}.side-card-prev{left:0}.side-card-next{right:0}.floating-ticket{left:-2px;top:-8px}.stage-sticker{bottom:45px;right:-10px}.hero-slider-controls{bottom:-20px}.orbit-one{width:330px;height:330px}.orbit-two{width:400px;height:240px}.hero-actions{gap:15px}.hero-actions .button{gap:15px;padding-inline:17px;font-size:14px}.hero-actions .text-button{font-size:13px}.grade-picker{gap:12px}.picker-label{font-size:12px}.grade-options{gap:5px}.grade-options button{width:36px;height:36px;font-size:15px}.ribbon-content{font-size:12px;min-height:69px}.ribbon-heading{font-size:13px}.ribbon-spark{font-size:23px}.ribbon-source svg{width:14px;height:14px}.ribbon-plus{font-size:18px}.section-heading h2{font-size:30px}.month-section{padding-top:42px}.month-layout{grid-template-columns:160px minmax(0,1fr);gap:22px}.sidebar-note h3{font-size:26px}.sidebar-note p{font-size:11px}.sidebar-subscribe strong{font-size:12px}.sidebar-updates{font-size:10px;gap:5px}.source-columns{grid-template-columns:1fr;gap:8px}.source-column{min-height:0}.source-column-heading{padding:10px 13px;font-size:11px;background:var(--soft);border-color:#e9ecdf}.event-button{padding:12px 13px}.event-title{font-size:14px}.event-description{font-size:12px}.source-empty{padding:12px 13px;font-size:11px}.empty-day .source-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.empty-day .source-column{min-height:95px}.empty-day .source-column-heading{font-size:10px;padding-inline:8px;gap:4px}.empty-day .source-column-heading strong{font-weight:400}.empty-day .source-column-heading svg{width:10px;height:10px}.empty-day .source-count{display:none}.empty-day .source-empty{font-size:10px;padding-inline:8px;gap:4px}.empty-day .source-empty svg{width:10px;height:10px}.search-field{max-width:160px}.search-field input{width:115px}.quiet-toggle span:not([data-icon]){display:none}.quiet-toggle{height:34px;width:34px;justify-content:center;border:1px solid var(--line);border-radius:6px}.closing-art{width:100px;height:100px}.closing-disc{font-size:96px}.closing-note{font-size:72px}.closing-copy h2{font-size:27px}.closing-copy p{font-size:13px}.closing-inner>.button{font-size:14px;padding-inline:19px;gap:17px}.calendar-toolbar{padding-inline:20px}}
@media(max-width:700px){.shell{padding-inline:22px}.site-header{height:83px;gap:10px}.brand{gap:9px}.brand .brand-mark{width:34px;height:34px}.brand-word{font-size:21px;letter-spacing:-1px}.brand-word>span{font-size:11px;margin-top:6px;letter-spacing:1.3px}.main-nav{display:none}.preview-badge{font-size:10px;padding:4px 7px}.header-actions{gap:8px}.header-actions .button{padding:10px 11px;min-height:37px;font-size:12px;gap:6px}.header-actions .button svg{width:14px;height:14px}.hero{grid-template-columns:1fr;gap:7px;padding-block:33px 25px;min-height:0;overflow:hidden}.hero-copy{text-align:center}.hero .eyebrow{justify-content:center;font-size:12px;gap:9px}.eyebrow-line{display:none}.hero h1{font-size:clamp(45px,8.6vw,64px);letter-spacing:-2.7px;margin-block:22px 25px;line-height:1.14}.highlight svg{height:14px;bottom:-9px}.hero-description{font-size:15px;line-height:1.8}.grade-picker{justify-content:center;gap:15px;margin-block:24px 18px}.picker-label{font-size:12px}.grade-options{gap:7px}.grade-options button{width:38px;height:35px}.hero-actions{justify-content:center;gap:21px}.hero-actions .button{font-size:13px;min-height:45px;padding:12px 16px;gap:20px}.hero-actions .button svg{width:17px;height:17px}.hero-actions .text-button{font-size:12px;gap:7px}.hero-actions .text-button svg{width:16px;height:16px}.hero-footnote{justify-content:center;margin-top:19px;font-size:10px;gap:7px}.hero-footnote .tiny-orbit{font-size:17px}.hero-stage{width:100%;max-width:500px;height:423px;transform:scale(.87);margin-block:-7px -30px;transform-origin:center}.hero-day-card{width:293px;min-height:346px;top:35px;padding:20px 22px 0}.hero-date-number{font-size:72px}.hero-date-row{padding-bottom:11px;margin-bottom:11px}.hero-event-preview{margin-block:10px}.hero-event-preview strong{font-size:13px}.hero-event-preview small{font-size:10px}.hero-card-bottom{padding-block:12px;margin-top:11px}.side-card{width:170px;height:278px;top:73px}.side-card-prev{left:-4px;transform:rotate(-11deg)}.side-card-next{right:-4px;transform:rotate(11deg)}.side-number{font-size:51px}.stage-sticker{right:0;bottom:37px;width:87px;height:87px}.stage-sticker>span{font-size:12px}.floating-ticket{left:-3px;top:2px;font-size:11px;padding:9px 11px;gap:9px}.ticket-star{font-size:23px}.floating-ticket>span:last-child{font-size:8px}.stage-scribble{width:57px;height:65px;top:2px;right:0}.orbit-one{width:345px;height:345px}.orbit-two{width:380px;height:250px;top:65px}.hero-slider-controls{bottom:-23px;gap:20px}.circle-button{width:33px;height:33px}.source-ribbon{margin-top:12px}.ribbon-content{flex-wrap:wrap;justify-content:center;gap:9px;padding-block:13px;min-height:0}.ribbon-heading{display:none}.ribbon-source{font-size:11px;gap:5px}.ribbon-source [data-icon]{padding:5px;border-radius:5px}.ribbon-source svg{width:12px;height:12px}.ribbon-plus{font-size:15px}.month-section{padding-block:36px 30px}.section-heading{margin-bottom:20px;gap:16px;align-items:center}.section-heading h2{font-size:25px;letter-spacing:-.9px;max-width:240px;line-height:1.35}.section-eyebrow{font-size:10px;letter-spacing:.1px;margin-bottom:8px;gap:4px}.month-summary{gap:6px;font-size:10px;max-width:102px}.month-summary strong{font-size:30px}.month-summary>span{max-width:54px}.calendar-toolbar{padding:17px 16px 13px;border-radius:11px}.calendar-toolbar-top{padding-bottom:13px;gap:5px}.toolbar-title{font-size:14px;gap:7px;flex-wrap:wrap}.toolbar-title>span[data-icon] svg{width:16px;height:16px}.toolbar-grade{font-size:10px;margin-right:1px;padding:3px 6px}.toolbar-actions{gap:7px}.today-button{font-size:10px;gap:5px}.today-button svg{width:10px;height:10px}.toolbar-actions .icon-button{width:25px;height:25px}.toolbar-actions .icon-button svg{height:13px;width:13px}.strip-day{flex-basis:36px;gap:4px}.strip-day strong{font-size:18px}.strip-day small{font-size:10px}.day-strip{padding-top:11px;gap:3px}.filter-bar{flex-wrap:wrap;gap:8px;padding-top:18px}.source-filters{gap:4px;flex:1}.filter-chip{font-size:11px;padding:7px 9px;gap:5px;border-radius:5px}.filter-chip>span{font-size:10px;padding-inline:4px}.source-dot{width:5px;height:5px}.search-field{order:3;width:100%;max-width:none;padding-block:10px;margin-top:4px}.search-field input{width:100%;font-size:13px}.search-field svg{width:15px;height:15px}.search-field kbd{display:none}.quiet-toggle{width:30px;height:30px}.quiet-toggle svg{width:13px;height:13px}.feed-state{font-size:10px;margin-bottom:18px;min-height:30px;line-height:1.7;align-items:flex-start;padding-top:8px;gap:6px}.feed-state .live-dot{margin-top:5px}.month-layout{display:block}.month-sidebar{display:none}.day-section{padding-bottom:23px}.day-section+.day-section{padding-top:20px}.day-heading{margin-bottom:12px}.day-date{gap:10px}.day-number{font-size:31px}.day-title{font-size:15px}.day-title small{font-size:11px}.day-total{font-size:10px;gap:6px}.day-badge{font-size:9px;padding:3px 6px}.source-columns{gap:9px}.source-column{border-radius:9px}.source-column-heading{font-size:12px;padding-block:11px;gap:8px}.source-column-heading svg{width:14px;height:14px}.event-button{padding:13px 15px}.event-title{font-size:14px;line-height:1.8}.event-time{font-size:11px}.event-description{font-size:12px;margin-top:5px;-webkit-line-clamp:2}.event-location{font-size:11px}.event-more{opacity:1;font-size:10px;margin-top:7px}.source-empty{font-size:11px;padding:14px 15px}.empty-day .source-columns{gap:6px}.empty-day .source-column-heading{font-size:10px;padding:9px 7px;gap:4px}.empty-day .source-column-heading [data-icon]{display:none}.empty-day .source-empty{font-size:10px;line-height:1.5;padding:12px 7px;gap:4px;align-items:flex-start}.empty-day .source-empty svg{display:none}.empty-day .source-column{min-height:82px}.selected-day .day-heading:before{right:-10px;height:28px}.closing-banner{padding-block:5px 30px}.closing-inner{padding:30px 24px;min-height:0;flex-wrap:wrap;gap:22px;border-radius:12px}.closing-art{width:72px;height:75px;position:absolute;left:18px;top:26px;opacity:.85}.closing-disc{font-size:78px}.closing-note{font-size:58px;bottom:-13px;right:-8px}.closing-square{width:25px;height:25px;right:0;top:0}.closing-copy{width:100%;max-width:calc(100% - 65px)}.closing-copy>span{font-size:10px}.closing-copy h2{font-size:26px;line-height:1.3;margin-block:9px 10px;max-width:220px}.closing-copy p{font-size:12px;line-height:1.8;max-width:200px}.closing-inner>.button{font-size:13px;min-height:43px;padding:12px 17px;gap:30px}.site-footer{flex-wrap:wrap;justify-content:space-between;gap:14px;min-height:0;padding-block:24px}.footer-brand{font-size:18px}.footer-brand span{font-size:10px}.site-footer>span{font-size:10px;order:3;flex-basis:100%}.site-footer .text-button{font-size:11px}.back-top{left:14px;bottom:16px;height:36px;width:36px}dialog{padding:34px 23px 25px;border-radius:16px}.modal-title{font-size:28px}.modal-intro{font-size:14px}.modal-note{font-size:11px}.notification-bubble ul{font-size:12px}.phone-preview{padding-inline:13px}.subscription-option{padding:14px}.subscription-option strong{font-size:14px}.subscription-option small{font-size:11px}.event-full-description{font-size:14px}.toast{font-size:13px;bottom:20px}}
@media(max-width:360px){.shell{padding-inline:17px}.preview-badge{display:none}.hero h1{font-size:43px}.hero-stage{transform:scale(.78);width:110%;margin-block:-20px -47px}.filter-chip{padding-inline:7px}.ribbon-content{gap:7px}.ribbon-source{font-size:10px}.section-heading h2{font-size:23px}.month-summary{max-width:86px}.month-summary strong{font-size:26px}.toolbar-title{font-size:13px}.toolbar-grade{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.creator{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.creator a{text-decoration:underline;text-underline-offset:3px}.creator a:hover{color:var(--blue)}

.hero-stage{touch-action:pan-y}.hero-day-card{cursor:grab}.hero-stage.is-dragging,.hero-stage.is-dragging *{cursor:grabbing!important;user-select:none}.hero-stage.is-dragging .hero-day-card{transition:none;will-change:transform}
.hero h1 .highlight:after{content:"";position:absolute;bottom:-8px;right:-2%;width:105%;height:11px;border-top:3px solid var(--blue);border-radius:50%;transform:rotate(-3deg);transform-origin:right center;animation:underline-draw .85s .6s cubic-bezier(.22,1,.36,1) backwards!important}
@keyframes underline-draw{from{transform:rotate(-3deg) scaleX(0)}to{transform:rotate(-3deg) scaleX(1)}}
.onboarding-app{display:flex;align-items:center;gap:16px;padding:22px 0;margin-block:8px 15px;border-bottom:1px solid var(--line)}.onboarding-app img{width:64px;height:64px;object-fit:contain}.onboarding-app strong{display:block;font-size:22px}.onboarding-app span{display:block;font-size:14px;color:#697080;margin-top:4px}.install-steps{padding-inline-start:22px;font-size:15px;line-height:1.9;color:#697080}.install-steps li{padding-inline-start:5px;margin-bottom:9px}.onboarding-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.onboarding-actions .button{min-height:46px;font-size:14px;padding:12px 18px;gap:12px}
.hero-card-track{position:absolute;inset:0;user-select:none;-webkit-user-select:none}.hero-card-track .hero-day-card{height:400px;min-height:0;padding:22px 24px 0;transition:none;transform-origin:50% 50%;will-change:transform,opacity;cursor:grab;backface-visibility:hidden}.hero-card-content{display:flex;flex-direction:column;height:100%;min-height:0}.hero-card-content .hero-date-row{flex-shrink:0;margin:8px 0 12px;min-height:100px}.hero-event-list{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:11px}.hero-card-content .hero-event-preview{margin:0;flex-shrink:0}.hero-card-content .hero-event-preview>div{min-width:0}.hero-card-content .hero-event-preview strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6}.hero-card-content .hero-card-bottom{flex-shrink:0;margin-top:12px}.hero-card-select{position:absolute;inset:0;width:100%;height:100%;padding:0;background:transparent;border-radius:inherit;cursor:grab}.hero-card-track .hero-card-empty{margin:auto 0;padding:12px 0}.hero-card-track .empty-art{display:flex;justify-content:center;margin-bottom:12px}.hero-card-track .empty-art svg{width:30px;height:30px;color:#aeb9d9}.hero-slider-controls{z-index:150}.hero-stage.is-dragging .hero-card-track *{cursor:grabbing!important}
@media(max-width:980px){.hero-card-track .hero-day-card{height:380px;padding-inline:21px}.hero-card-content .hero-date-row{min-height:90px}.hero-event-list{gap:9px}}
@media(max-width:700px){.hero-stage{height:440px;margin-block:-7px -8px}.hero-card-track .hero-day-card{height:354px;padding:20px 22px 0}.hero-card-content .hero-date-row{min-height:84px;margin-block:8px 10px}.hero-card-content .hero-card-bottom{margin-top:10px}.hero-event-list{gap:8px}.hero-slider-controls{bottom:8px}}
@media(max-width:360px){.hero-stage{margin-block:-15px -16px}}
.hero-card-content .hero-date-row{flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:0}.hero-card-content .hero-date-number{font-size:78px;line-height:1;margin:0;letter-spacing:-5px}.hero-card-content .hero-date-name{display:flex;align-items:baseline;justify-content:center;gap:8px}.hero-card-content .hero-date-name strong{font-size:20px;line-height:1.3}.hero-card-content .hero-date-name>span{margin:0;font-size:12px;white-space:nowrap}.hero-card-content .hero-event-preview strong{line-height:1.45}
@media(max-width:700px){.hero-card-content .hero-date-number{font-size:68px}.hero-card-content .hero-date-name strong{font-size:17px}.hero-card-content .hero-date-name>span{font-size:11px}.hero-card-content .hero-event-preview strong{line-height:1.4}}
@media(min-width:981px){.hero-stage{height:510px}.hero-card-track .hero-day-card{height:412px}}
@media(min-width:701px) and (max-width:980px){.hero-stage{height:490px}.hero-card-track .hero-day-card{height:400px}}

/* Header navigation shares the existing dialogs on every screen size. */
.main-nav{gap:17px;white-space:nowrap}
.nav-separator{display:block;flex:0 0 1px;width:1px;height:14px;background:#c9cec2}
@media(min-width:701px) and (max-width:980px){.main-nav{gap:10px}}
@media(max-width:700px){
  .site-header{height:auto;min-height:112px;flex-wrap:wrap;gap:0 10px;padding-block:19px 10px}
  .main-nav{display:flex;order:3;flex:0 0 100%;justify-content:center;gap:12px;font-size:14px;margin-top:13px}
  .nav-separator{height:12px}
}

.about-footer{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);color:#6b7560;font-size:13px;line-height:1.8}
.about-footer .creator{gap:8px 16px}
.about-footer .creator>span{flex-basis:100%}
.about-footer .creator a{display:inline-flex;align-items:center;min-height:24px}

/* Readable text sizes for event content and the smaller interface labels. */
.event-title{font-size:14px;line-height:1.75}
.event-description{font-size:12px;line-height:1.8}
.event-time,.event-location,.event-more,.event-cancelled{font-size:11px}
.event-description,.event-time,.event-location,.day-title small,.day-total,.feed-state{color:#6b755f}
.source-column-heading{font-size:12px;color:#647058;flex-wrap:wrap}
.source-column-heading .source-count{font-size:11px;color:#7c846e}
.source-empty{font-size:11px;color:#8c957e}
.empty-day .source-column-heading,.empty-day .source-empty{font-size:11px}
.day-title{font-size:16px}
.day-title small{font-size:11px}
.day-total,.day-badge{font-size:11px}
.event-button{padding-block:15px}
.hero-card-track .hero-day-card{height:460px}
.hero-stage{height:570px}
.hero-card-content .hero-event-preview strong{font-size:15px;line-height:1.4;max-height:none}
.hero-card-content .hero-event-preview small{font-size:12px;line-height:1.4;color:#6f7967}
.hero-card-content .hero-date-name>span{font-size:12px;color:#6d7565}
.hero-card-top{font-size:12px;color:#737d6a}
.hero-event-list{gap:10px}
.hero-card-content .hero-card-bottom{font-size:12px}
.hero-card-content .hero-card-bottom button{font-size:13px}
.hero-card-content .hero-card-empty p{font-size:13px}
.modal-intro,.event-full-description,.about-row p,.install-help p,.modal-note{color:#69745f}
.site-footer,.footer-brand span,.site-footer .text-button{color:#707b65}
.site-footer .creator{font-size:12px}
.site-footer{flex-wrap:wrap}
@media(min-width:701px) and (max-width:980px){
  .site-header{gap:16px}
  .brand-word>span{font-size:12px;letter-spacing:1.2px}
  .main-nav{font-size:12px;gap:9px}
}
@media(max-width:700px){
  .main-nav{font-size:13px;gap:10px}
  .header-actions .button{font-size:11px}
  .brand-word>span{font-size:10px}
  .hero-stage{height:530px}
  .hero-card-track .hero-day-card{height:440px}
  .hero-card-content .hero-event-preview strong{font-size:15px;line-height:1.4}
  .hero-card-content .hero-date-name>span{font-size:11px}
  .hero-event-list{gap:8px}
  .filter-bar .source-filters{flex-wrap:wrap;max-width:100%}
  .source-columns .source-column-heading{font-size:12px}
  .empty-day .source-column-heading,.empty-day .source-empty{font-size:11px}
  .site-footer .creator>span{flex-basis:100%}
}
@media(max-width:360px){
  .site-header{column-gap:8px}
  .brand-word>span{letter-spacing:1px}
  .hero-card-track .hero-day-card{height:450px}
  .hero-stage{height:540px}
  .hero-card-content .hero-event-preview strong{font-size:16px}
}

@media(min-width:701px) and (max-width:980px){
  .hero{grid-template-columns:1fr;gap:16px;overflow:hidden}
  .hero-copy{text-align:center}
  .hero .eyebrow,.hero .grade-picker,.hero-actions{justify-content:center}
  .hero-stage{width:100%;max-width:500px;justify-self:center;transform:scale(.9);margin-block:0 -18px}
}

.about-source{color:inherit;text-decoration:none;transition:border-color .2s,background .2s}
.about-source>svg{flex-shrink:0;color:var(--blue);margin-top:3px}
.about-source>div{flex:1;min-width:0}
.about-source strong{text-decoration:underline;text-decoration-color:#aeb4e2;text-underline-offset:4px}
.about-source-arrow{display:flex;align-self:center;flex-shrink:0;color:var(--blue)}
.about-source:hover{border-color:var(--blue);background:var(--blue-soft)}
.about-source:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

.notification-grade{flex-wrap:wrap;gap:12px;margin-block:18px}.notification-grade>span{flex-basis:100%;font-size:15px}.notification-grade .grade-options{margin-right:0;gap:10px;width:100%;max-width:206px}.notification-grade .grade-options button{width:auto;min-width:0;flex:1;height:44px;font-size:17px}#push-controls .push-button-row .button{max-width:100%;white-space:normal;text-align:right;gap:8px}

.main-nav .nav-install{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-weight:600}.nav-install [data-icon] svg{width:16px;height:16px}
@media(min-width:701px) and (max-width:1100px){.site-header{flex-wrap:wrap;height:auto;min-height:112px;padding-block:20px;gap:14px}.main-nav{order:3;flex-basis:100%;justify-content:center}}
@media(max-width:700px){.main-nav{display:grid;grid-template-columns:auto 1px auto;justify-content:center;column-gap:14px;row-gap:2px}.main-nav .nav-separator:nth-of-type(2){display:none}.main-nav .nav-install{justify-content:center}}
