/* The existing ivory, honey and brown palette, with quieter surfaces and clear type. */
body[data-page=home] #siteStatistics{position:relative;margin:34px 0 30px;padding:30px;border:1px solid #e2cfaf;border-radius:26px;background:linear-gradient(125deg,#fbf4e7,#f1e4cd);box-shadow:0 16px 40px #63431e08;overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}
body[data-page=home] #siteStatistics .site-statistics-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}body[data-page=home] #siteStatistics .eyebrow{display:block;color:#9b794d;font-size:.62rem;letter-spacing:.16em;font-weight:750;margin-bottom:10px}body[data-page=home] #siteStatistics h2{font-family:inherit;font-size:clamp(1.25rem,2.5vw,1.75rem);letter-spacing:-.045em;font-weight:750;line-height:1.25;margin:0;color:#543d26}.statistics-heading-mark{font-size:2.5rem;letter-spacing:-.1em;font-weight:800;color:#ba98623b;user-select:none}
body[data-page=home] #siteStatistics .site-statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr));gap:14px;margin-top:24px}body[data-page=home] #siteStatistics .site-statistic{display:flex;align-items:stretch;flex-direction:column;gap:0;min-width:0;padding:22px;border-radius:19px;border:1px solid #e7d7be;background:#fffdf7d9;box-shadow:0 6px 18px #67451e04;position:relative;transition:transform .25s,box-shadow .25s;overflow:hidden}body[data-page=home] #siteStatistics .site-statistic:after{content:'';position:absolute;height:3px;bottom:0;left:22px;right:22px;background:linear-gradient(90deg,#d6ad70,#d6ad7000);border-radius:9px}body[data-page=home] #siteStatistics .site-statistic:hover{transform:translateY(-4px);box-shadow:0 12px 26px #67451e0c}.statistic-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:12px}#siteStatistics .statistic-icon{display:grid;place-items:center;width:40px;height:40px;background:#f6e7ce;border:1px solid #ead5b4;border-radius:13px;color:#a77735}#siteStatistics .statistic-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#siteStatistics .metric-lessons .statistic-icon{color:#a35a44;background:#f8e6dc;border-color:#efd3c6}#siteStatistics .metric-hours .statistic-icon{color:#56785c;background:#eaf0e3;border-color:#d5e1cd}#siteStatistics .statistic-korean{color:#c0a887;font-size:1.05rem;font-weight:650;letter-spacing:.04em}body[data-page=home] #siteStatistics .statistic-value{display:block;font-family:inherit;font-size:clamp(1.9rem,3.8vw,3.1rem);font-weight:750;line-height:1.1;letter-spacing:-.065em;font-variant-numeric:tabular-nums;color:#5b4025;overflow-wrap:anywhere;min-width:0}body[data-page=home] #siteStatistics .statistic-value[data-size=compact]{font-size:clamp(1.3rem,2.8vw,2rem)}body[data-page=home] #siteStatistics .statistic-label{display:block;font-family:inherit;font-size:.75rem;line-height:1.6;color:#8b7357;margin-top:11px;min-height:2.4em}
body[data-page=calendar] .calendar-main{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;container:calendar-page/inline-size;padding:30px 24px 36px;box-sizing:border-box}body[data-page=calendar] .calendar-main *{box-sizing:border-box}.calendar-main .calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:6px 0 30px}.calendar-main .calendar-heading-copy{min-width:0}.calendar-main .calendar-heading .eyebrow{font-size:.6rem;letter-spacing:.15em;font-weight:750;color:#a47d4d;margin-bottom:17px}.calendar-main .calendar-heading h1{font-family:inherit;font-size:clamp(1.9rem,3.2vw,2.75rem);line-height:1.16;letter-spacing:-.055em;font-weight:750;margin:0 0 16px;color:#533c28}.calendar-main .calendar-heading h1 span{color:#a48051}.calendar-main .calendar-heading p{font-size:.85rem;line-height:1.8;max-width:51ch;color:#8c755d;margin:0}.calendar-heading-art{display:flex;flex-direction:column;justify-content:center;align-items:center;flex:0 0 114px;height:128px;gap:10px;background:linear-gradient(145deg,#f4e5cc,#e6ceaa);border:1px solid #dac09b;box-shadow:0 9px 22px #714d1b0a,inset 0 1px #fff9ef;border-radius:28px;transform:rotate(5deg)}.calendar-heading-art span{font-size:2rem;font-weight:750;letter-spacing:-.09em;color:#a28050}.calendar-heading-art small{font-size:.48rem;font-weight:750;letter-spacing:.2em;color:#9b805b}
.calendar-main .calendar-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(235px,.85fr);gap:20px;align-items:start}.calendar-main .calendar-card{container:calendar-sheet/inline-size;padding:24px;border-radius:25px;background:#fffcf6;border:1px solid #e3d3b9;box-shadow:0 14px 35px #65421f06;min-width:0}.calendar-main .calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 24px}.calendar-overline{display:block;font-size:.54rem;font-weight:750;letter-spacing:.14em;color:#b09673;margin-bottom:7px}.calendar-main .calendar-controls h2{font-family:inherit;font-size:1.35rem;letter-spacing:-.045em;font-weight:750;color:#65472d;margin:0;text-transform:capitalize}.calendar-navigation{display:flex;gap:5px;align-items:center}.calendar-main .calendar-controls button{font:600 .71rem/1 ui-sans-serif,system-ui;min-width:32px;min-height:34px;box-shadow:none;border:1px solid #e4d3b8;border-radius:10px;padding:9px;background:#fffcf7;color:#856743;cursor:pointer;transition:background .18s,transform .18s}.calendar-main .calendar-controls button:hover:not(:disabled){background:#f4e6cf;transform:translateY(-1px)}.calendar-main .calendar-controls button:disabled{opacity:.4;cursor:default}.calendar-main .calendar-controls .calendar-today{padding-inline:12px;background:#f3e5ce;color:#876135}.calendar-toolbar{display:flex;flex-wrap:wrap;gap:14px;padding-bottom:20px;margin-bottom:12px;border-bottom:1px solid #eee2cf}.calendar-main .calendar-toolbar label{display:flex;flex-direction:column;align-items:stretch;flex:1 1 150px;min-width:0;gap:7px;font-size:.6rem;color:#9b8365;margin:0}.calendar-main .calendar-toolbar :is(input,select){font:500 .72rem/1.5 ui-sans-serif,system-ui;min-width:0;max-width:100%;width:100%;height:39px;border:1px solid #e5d6c0;border-radius:10px;padding:8px 10px;background:#faf5eb;color:#705538;color-scheme:light}
.calendar-main .calendar-grid{gap:6px}.calendar-main .calendar-weekday{font:600 .58rem/1 ui-sans-serif,system-ui;letter-spacing:.02em;padding:12px 0;color:#b09a7c}.calendar-main .calendar-weekday:nth-child(7){color:#b78472}.calendar-main .calendar-day{position:relative;min-height:61px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:8px 4px;border:1px solid transparent;border-radius:14px;background:#faf5eb;color:#806445;outline:0;transition:background .18s,box-shadow .18s,transform .18s}.calendar-main .calendar-day strong{font:650 .82rem/1.3 ui-sans-serif,system-ui;letter-spacing:-.025em}.calendar-main .calendar-day:hover{background:#eee0c9;transform:translateY(-2px)}.calendar-main .calendar-day.has-events{background:#f4e8d4;border-color:#e9d7b7}.calendar-main .calendar-day.is-today strong{background:transparent;color:#ae4b3d;padding:0}.calendar-main .calendar-day.is-today:after{content:'';position:absolute;top:8px;right:8px;width:4px;height:4px;border-radius:50%;background:#b85a46}.calendar-main .calendar-day[aria-pressed=true]{outline:0;background:#765130;color:#fff8e9;border-color:#765130;box-shadow:0 5px 13px #78533224}.calendar-main .calendar-day[aria-pressed=true] strong{color:#fff8e9}.calendar-main .calendar-day[aria-pressed=true] .calendar-marker{background:#efd4a6}.calendar-main .calendar-day[aria-pressed=true]:after{background:#f6d4a3}.calendar-main .calendar-day:focus-visible,.calendar-main :is(button,input,select,a):focus-visible{outline:3px solid #bd8a4d;outline-offset:3px}.calendar-main .calendar-day .calendar-markers{display:flex;justify-content:center;align-items:center;gap:3px;min-height:5px;margin:0;overflow:visible}.calendar-marker{display:block;width:4px;height:4px;flex:0 0 4px;border-radius:50%}.marker-holiday{background:#bb6754}.marker-culture{background:#779471}.marker-event{background:#c49c53}.calendar-main .calendar-markers small{font-size:.4rem}.calendar-main .calendar-day .calendar-event-name{display:none;font:500 .57rem/1.4 ui-sans-serif,system-ui;max-width:100%;margin:0;text-align:center}.calendar-main .calendar-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:18px;margin-top:17px;border-top:1px solid #eee2cf}.calendar-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:.53rem;color:#a18868}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.calendar-legend i{width:5px;height:5px;border-radius:50%}.legend-holiday{background:#bb6754}.legend-culture{background:#779471}.legend-event{background:#c49c53}.calendar-refresh{font:550 .6rem/1.4 ui-sans-serif,system-ui;color:#a68a67;background:none;border:0;padding:6px;cursor:pointer}.calendar-main #calendarStatus{font:400 .58rem/1.6 ui-sans-serif,system-ui;letter-spacing:0;color:#b19a7a;min-height:0;margin:10px 0 0;max-width:100%}.calendar-main .calendar-agenda{padding:22px;background:linear-gradient(145deg,#f5ead7,#f9f1e4);border:1px solid #e1cbaa;border-radius:25px;box-shadow:0 14px 35px #65421f05;min-width:0}.calendar-agenda-top{display:flex;align-items:center;gap:13px;padding-bottom:19px;border-bottom:1px solid #e7d7bd}.calendar-date-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:0 0 51px;height:61px;background:#fffaf0;border:1px solid #e9d9bf;box-shadow:0 3px 0 #d9c19e44;border-radius:14px;color:#946c3d}.calendar-date-tile small{font-size:.52rem;letter-spacing:.08em;text-transform:uppercase}.calendar-date-tile strong{font-size:1.6rem;font-weight:750;letter-spacing:-.07em;line-height:1}.calendar-main .calendar-agenda h2{font:650 .85rem/1.6 ui-sans-serif,system-ui;letter-spacing:-.025em;margin:0;color:#7b5837}.calendar-main .calendar-event{padding:21px 0 0;border:0;animation:calendar-detail-in .3s ease-out}.calendar-main .calendar-event+.calendar-event{margin-top:20px;border-top:1px solid #e7d7bd}.calendar-main .event-category{font:650 .5rem/1.4 ui-sans-serif,system-ui;letter-spacing:.07em;color:#a6634d;display:inline-block;background:#eddbbf80;border:1px solid #e1cbaa;border-radius:6px;padding:5px 7px}.calendar-main .event-culture .event-category{color:#5e7b52}.calendar-main .calendar-event h3{font-family:inherit;font-size:1.08rem;line-height:1.5;letter-spacing:-.035em;font-weight:750;color:#705034;margin:14px 0 10px;overflow-wrap:anywhere}.calendar-main .calendar-event-meta{font:400 .58rem/1.6 ui-sans-serif,system-ui;display:block;color:#a08461}.calendar-main .calendar-event p{font:400 .76rem/1.95 ui-sans-serif,system-ui;color:#937a5a;margin:15px 0 18px}.calendar-main .calendar-event a{display:inline-flex;align-items:center;font:650 .6rem/1.5 ui-sans-serif,system-ui;text-decoration:none;border:1px solid #dbc19a;background:#fff8ec;border-radius:9px;padding:9px 11px;color:#9b733f;transition:background .2s}.calendar-main .calendar-event a:hover{background:#ecdabd}.calendar-empty-state{padding:27px 2px 4px;text-align:center}.calendar-empty-symbol{display:inline-grid;place-items:center;font-size:1.6rem;width:59px;height:59px;border:1px solid #e6d4b5;border-radius:18px;background:#fffbf0;color:#b69b72}.calendar-main .calendar-empty-state h3{font:650 .85rem/1.5 ui-sans-serif,system-ui;color:#8e6b42;margin:17px 0 10px}.calendar-main .calendar-empty-state p{font:400 .7rem/1.9 ui-sans-serif,system-ui;color:#a68b68;margin:0}.calendar-disclaimer{font:400 .6rem/1.8 ui-sans-serif,system-ui;color:#b19a79;margin:20px 5px 0}
@container calendar-sheet (min-width:570px){.calendar-main .calendar-day{min-height:84px}.calendar-main .calendar-day .calendar-event-name{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}}@container calendar-page (max-width:630px){.calendar-main .calendar-layout{grid-template-columns:1fr}.calendar-main .calendar-heading-art{display:none}.calendar-main .calendar-agenda{padding:22px}.calendar-main .calendar-card{padding:20px}}@container calendar-sheet (max-width:350px){.calendar-main .calendar-controls h2{font-size:1.15rem}.calendar-main .calendar-controls{gap:12px}.calendar-main .calendar-day{min-height:51px;border-radius:11px}.calendar-main .calendar-grid{gap:4px}.calendar-main .calendar-toolbar{gap:10px}.calendar-main .calendar-toolbar label{flex-basis:125px}}
@keyframes calendar-detail-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){body[data-page=home] #siteStatistics{padding:22px 17px;border-radius:22px}body[data-page=home] #siteStatistics .site-statistics-grid{gap:10px}body[data-page=home] #siteStatistics .site-statistic{padding:19px}.statistics-heading-mark{font-size:2rem}body[data-page=calendar] .calendar-main{padding:24px 15px}.calendar-main .calendar-heading{margin-bottom:25px}.calendar-main .calendar-heading h1{font-size:2rem}.calendar-main .calendar-heading p{font-size:.8rem}}@media(prefers-reduced-motion:reduce){#siteStatistics *,body[data-page=calendar] .calendar-main *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Compact community totals: three metrics share a single quiet strip. */
body[data-page=home] #siteStatistics{padding:12px 14px;margin:23px 0 22px;border-radius:19px;box-shadow:0 6px 20px #63431e05}body[data-page=home] #siteStatistics .site-statistics-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body[data-page=home] #siteStatistics .site-statistics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}body[data-page=home] #siteStatistics .site-statistic{display:grid;grid-template-columns:29px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:11px;row-gap:4px;padding:9px 15px;background:none;border:0;border-radius:0;box-shadow:none;min-width:0}body[data-page=home] #siteStatistics .site-statistic+.site-statistic{border-left:1px solid #decaab}body[data-page=home] #siteStatistics .site-statistic:after{display:none}body[data-page=home] #siteStatistics .site-statistic:hover{transform:none;box-shadow:none}#siteStatistics .statistic-top{display:contents}#siteStatistics .statistic-icon{width:29px;height:29px;border-radius:10px;grid-column:1;grid-row:1/3}#siteStatistics .statistic-icon svg{width:16px;height:16px}#siteStatistics .statistic-korean{display:none}body[data-page=home] #siteStatistics .statistic-value{grid-column:2;grid-row:1;font-size:clamp(1.35rem,2.3vw,1.85rem);line-height:1.1;letter-spacing:-.055em}body[data-page=home] #siteStatistics .statistic-value[data-size=compact]{font-size:clamp(.9rem,1.7vw,1.25rem)}body[data-page=home] #siteStatistics .statistic-label{grid-column:2;grid-row:2;font-size:.62rem;line-height:1.5;min-height:0;margin:0;color:#9b805c}@media(max-width:700px){body[data-page=home] #siteStatistics{padding:12px 5px}body[data-page=home] #siteStatistics .site-statistic{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5px 8px;gap:5px;text-align:center}body[data-page=home] #siteStatistics .statistic-top{display:none}body[data-page=home] #siteStatistics .statistic-label{font-size:.65rem;max-width:125px}body[data-page=home] #siteStatistics .statistic-value{font-size:1.45rem}body[data-page=home] #siteStatistics .statistic-value[data-size=compact]{font-size:.95rem}}
