:root{--cell-min-px: 48;--cell-max-px: 76;--cell-vmin-scale: 12;--cell: clamp(calc(var(--cell-min-px) * 1px), calc(var(--cell-vmin-scale) * 1vmin), calc(var(--cell-max-px) * 1px));--gap: 0px;--radius: 6px;--board-radius: 14px;--board-frame: 5px;--board-fit-padding: 96px;--bg: #f5eadc;--bg-deep: #ecdcc9;--board-bg: #d7c8b5;--cell-bg: rgba(245, 237, 226, .85);--domino-bg: #fff;--domino-border: #c0b8ae;--pip: #444;--filter-accent: #2c6d66;--filter-accent-soft: rgba(44, 109, 102, .22);--filter-accent-ink: #1a4e49;--dock-width: clamp(92px, 10vw, 112px);--dock-panel: rgba(255, 251, 245, .88);--dock-border: rgba(192, 184, 174, .94)}*{box-sizing:border-box;margin:0;padding:0}html,body{overscroll-behavior:none;height:100%}body{background:linear-gradient(160deg,var(--bg),var(--bg-deep));-webkit-font-smoothing:antialiased;color:#4c3b2f}body.calendar-modal-open{overflow:hidden}main{height:100%;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,3vw,2rem) clamp(1rem,3vw,2rem) clamp(2.5rem,5vw,4rem);flex-direction:column}.starter-shell,.frontend-root{display:contents}.puzzle-container{display:flex;flex-direction:column;align-items:center;gap:clamp(1.5rem,4vmin,2.5rem);width:min(100%,1180px);justify-content:space-between;flex-grow:1}.page-top-row{align-self:stretch;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem}.page-top-actions{display:flex;align-items:center;min-width:0}.page-top-actions-left{justify-content:flex-start;gap:.65rem;flex-wrap:wrap}.page-top-actions-right{justify-content:flex-end}.timer-value{display:inline-flex;align-items:center;justify-content:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(1.9rem,4vw,2.4rem);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:#4c3b2f}.calendar-launch-button,.replay-launch-button{appearance:none;min-height:2.85rem;padding:.55rem 1rem;border:1px solid rgba(192,184,174,.92);border-radius:999px;background:#fffbf5e6;box-shadow:0 10px 24px #5a46321f;color:#5d493b;font-size:.94rem;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.calendar-icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:0;flex:none}.calendar-control-icon{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.calendar-launch-button{width:2.85rem;min-width:2.85rem}.calendar-launch-button:hover:not(:disabled),.replay-launch-button:hover:not(:disabled),.calendar-close-button:hover:not(:disabled),.calendar-month-nav:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #5a463224}.calendar-launch-button[aria-pressed=true],.replay-launch-button[aria-pressed=true]{border-color:var(--filter-accent);box-shadow:0 0 0 3px var(--filter-accent-soft),0 12px 24px #2c6d662e}.calendar-launch-button:focus-visible,.replay-launch-button:focus-visible,.calendar-close-button:focus-visible,.calendar-month-nav:focus-visible{outline:3px solid rgba(35,140,140,.35);outline-offset:2px}.calendar-launch-button:disabled,.replay-launch-button:disabled{opacity:.45;cursor:default}.frontend-root.is-replaying .board-stage,.frontend-root.is-replaying .history-row{pointer-events:none;-webkit-user-select:none;user-select:none}.board-stage{--active-draw-color: #c73c72;position:relative;width:100%;display:flex;justify-content:center}.board-workspace{display:flex;justify-content:center;width:100%;min-width:0}.draw-surface{position:relative;width:fit-content;max-width:100%;display:flex;flex-direction:column;align-items:center;gap:clamp(1.4rem,4vmin,2rem)}.tool-dock{position:fixed;top:50%;z-index:40;display:flex;flex-direction:column;gap:.95rem;transform:translateY(-50%);transition:opacity .18s ease,transform .18s ease}.tool-dock.is-hidden{opacity:0;pointer-events:none;transform:translateY(-50%) scale(.94)}.tool-dock-left{left:0;align-items:flex-start}.tool-dock-right{right:clamp(.75rem,2vw,1.5rem);align-items:flex-end}.edge-tool-button{appearance:none;border:0;background:transparent;padding:0;margin-left:clamp(-88px,-8vw,-72px);width:clamp(176px,16vw,204px);color:var(--active-draw-color);cursor:pointer;transition:transform .18s ease,opacity .15s ease,filter .18s ease}.edge-tool-button svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 18px 24px rgba(90,70,50,.16))}.edge-tool-button:hover{transform:translate(4px)}.edge-tool-button[aria-pressed=true]{transform:translate(12px)}.edge-tool-button:focus-visible,.action-button:focus-visible,.color-swatch:focus-visible{outline:3px solid rgba(35,140,140,.35);outline-offset:2px}.draw-tool-illustration{color:inherit}.edge-tool-button-eraser{color:#fc7c90}.action-button{appearance:none;width:3.7rem;height:3.7rem;border:1px solid rgba(192,184,174,.9);border-radius:1.25rem;background:linear-gradient(180deg,#fffdf8f5,#efe2d4eb);color:#5d493b;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 14px 26px #5a46321f,inset 0 1px #ffffffe0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:transform .15s ease,box-shadow .15s ease,border-color .18s ease,opacity .15s ease}.action-button:hover:not(:disabled),.color-swatch:hover:not(:disabled){transform:translateY(-1px)}.action-button[aria-pressed=true]{border-color:var(--filter-accent);box-shadow:0 0 0 3px var(--filter-accent-soft),0 12px 24px #2c6d662e}.action-button:disabled{opacity:.45;cursor:default}.action-icon{display:block;width:1.55rem;height:1.55rem;object-fit:contain}.paint-button .paint-bucket-body{fill:#5d493b}.paint-button .paint-bucket-accent{fill:var(--active-draw-color)}.color-popover{position:absolute;top:0;right:calc(100% + .8rem);display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem;padding:.65rem;border:1px solid var(--dock-border);border-radius:1.4rem;background:#fffbf5f5;box-shadow:0 18px 36px #5a463229;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transform:translate(10px) scale(.96);transform-origin:right center;transition:opacity .14s ease,transform .14s ease}.color-popover.is-open{opacity:1;pointer-events:auto;transform:translate(0) scale(1)}.color-swatch{appearance:none;width:2.55rem;height:2.55rem;border-radius:50%;border:2px solid rgba(255,253,248,.95);background:var(--swatch);cursor:pointer;box-shadow:inset 0 1px #ffffff59,0 8px 16px #5a46321f;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.color-swatch[aria-pressed=true]{box-shadow:0 0 0 3px var(--filter-accent-soft),0 12px 24px #2c6d662e}.history-row{align-self:stretch;display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.calendar-modal[hidden]{display:none}.calendar-modal{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:clamp(.6rem,2vw,1rem)}.calendar-modal-backdrop{appearance:none;position:absolute;inset:0;border:0;background:#3a2c2152;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.calendar-modal-card{position:relative;z-index:1;width:min(100%,560px);max-height:min(calc(100dvh - 1.2rem),860px);display:flex;flex-direction:column;gap:.9rem;padding:clamp(.85rem,2vw,1.1rem);border:1px solid rgba(192,184,174,.92);border-radius:26px;background:radial-gradient(circle at top left,rgba(255,255,255,.54),transparent 38%),linear-gradient(180deg,#fffcf6f7,#f3e7d8f0);box-shadow:0 26px 60px #3c2e223d;overflow:hidden}.calendar-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem}.calendar-kicker{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#8a735f;margin-bottom:.35rem}.calendar-heading{font-size:clamp(1.05rem,2.8vw,1.35rem);font-weight:800;line-height:1.1;color:#4c3b2f}.calendar-summary{max-width:22rem;margin-top:.45rem;font-size:.82rem;line-height:1.45;color:#725c49}.calendar-close-button{appearance:none;border:1px solid rgba(192,184,174,.92);border-radius:999px;background:#fffbf5eb;color:#5d493b;cursor:pointer;box-shadow:0 10px 20px #5a46321a}.calendar-root{min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:.1rem}.calendar-month{display:grid;gap:.7rem;padding:.8rem;border:1px solid rgba(192,184,174,.76);border-radius:20px;background:#fffaf4d1;min-width:0}.calendar-month-header{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:.45rem}.calendar-month-copy{text-align:center}.calendar-month-header h3{font-size:.98rem;font-weight:800;color:#4c3b2f}.calendar-month-header p{margin-top:.18rem;font-size:.72rem;color:#8a735f}.calendar-month-nav{appearance:none;border:1px solid rgba(192,184,174,.9);border-radius:999px;background:#fffbf5eb;color:#5d493b;cursor:pointer}.calendar-month-nav:disabled{opacity:.42;cursor:default}.calendar-weekday-row,.calendar-grid{width:100%;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}.calendar-weekday-row{margin-bottom:.1rem}.calendar-weekday-row span{text-align:center;font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a735f}.calendar-cell{min-height:clamp(4.15rem,11vw,5.1rem);border-radius:4px}.calendar-cell-outside{visibility:hidden}.calendar-cell-placeholder{padding:.35rem;border:1px dashed rgba(192,184,174,.76);background:#fff7ef7a}.calendar-day-number{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;border-radius:999px;font-size:.68rem;font-weight:800;color:#8a735f}.calendar-cell-day{display:flex;flex-direction:column;gap:.22rem;padding:.28rem;border:1px solid rgba(192,184,174,.84);background:linear-gradient(180deg,#fffdf9fa,#f4e9dbeb);box-shadow:0 12px 24px #5a463214}.calendar-cell-day.is-today{border-color:#2c6d6670;box-shadow:0 0 0 3px #2c6d6624,0 14px 28px #5a463214}.calendar-cell-day.is-active-day{border-color:#5d493b7a}.calendar-day-header{display:flex;align-items:center;justify-content:space-between;gap:.24rem;min-width:0}.calendar-day-link{text-decoration:none;color:#4c3b2f;font-size:.72rem;font-weight:800}.calendar-day-link:hover{color:#1a4e49}.calendar-today-badge{display:inline-flex;align-items:center;justify-content:center;width:.55rem;height:.55rem;padding:0;border-radius:999px;background:#2c6d6624;color:#1a4e49;box-shadow:0 0 0 2px #2c6d6638}.calendar-difficulty-list{display:flex;flex-direction:column;gap:.18rem;margin-top:auto}.calendar-difficulty-link{display:inline-flex;align-items:center;justify-content:center;min-height:1.05rem;border-radius:8px;padding:.1rem .16rem;text-decoration:none;font-size:clamp(.44rem,1.4vw,.64rem);font-weight:800;letter-spacing:0;color:#fffaf2;box-shadow:inset 0 1px #ffffff2e,0 8px 18px #5a46321f;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.calendar-difficulty-link span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-difficulty-link:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 12px 22px #5a463224}.calendar-difficulty-link.is-active{box-shadow:0 0 0 3px #4c3b2f29,inset 0 1px #ffffff2e,0 12px 22px #5a463224}.calendar-difficulty-link.is-complete{font-variant-numeric:tabular-nums}.calendar-difficulty-easy{background:linear-gradient(180deg,#70ad62,#4f8f46)}.calendar-difficulty-medium{background:linear-gradient(180deg,#d8b24d,#bf8f28);color:#503600}.calendar-difficulty-hard{background:linear-gradient(180deg,#d56e5d,#b94b3d)}.calendar-empty-state{padding:1.25rem;border:1px dashed rgba(192,184,174,.78);border-radius:4px;background:#fffaf499;text-align:center;color:#8a735f}.history-controls{display:flex;gap:.65rem;padding:.4rem;border:1px solid rgba(192,184,174,.92);border-radius:999px;background:#fffbf5e0;box-shadow:0 10px 24px #5a463224;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.history-button{appearance:none;border:0;border-radius:999px;width:3.2rem;height:3.2rem;display:inline-flex;align-items:center;justify-content:center;padding:0;background:linear-gradient(180deg,#fffdf8,#efe1d1);box-shadow:inset 0 1px #fffc,0 1px 2px #5a463224;color:#5d493b;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.history-icon{width:1.25rem;height:1.25rem}.history-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:inset 0 1px #ffffffe0,0 6px 16px #5a463229}.history-button:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 2px 4px #5a46321f}.history-button:focus-visible{outline:3px solid rgba(35,140,140,.35);outline-offset:2px}.history-button:disabled{opacity:.45;cursor:default}.filter-controls{margin-left:auto;display:grid;grid-template-columns:repeat(4,max-content);justify-content:end;gap:clamp(.35rem,.9vmin,.65rem)}.filter-button{appearance:none;border:0;background:transparent;padding:0;border-radius:12px;cursor:pointer}.filter-button:focus-visible{outline:3px solid rgba(44,109,102,.28);outline-offset:2px}.filter-button .domino-filter-tile{overflow:hidden;transition:transform .15s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.filter-button:hover .domino-filter-tile{transform:translateY(-1px)}.domino-filter-tile .domino-face{width:clamp(24px,4.8vmin,32px);height:clamp(24px,4.8vmin,32px);padding:clamp(3px,.55vmin,4px)}.domino-filter-tile .pip,.domino-filter-tile .pip-empty{width:clamp(3px,.65vmin,5px);height:clamp(3px,.65vmin,5px)}.domino-filter-symbol{position:relative;display:grid;place-items:center;padding:0;font-size:0;line-height:0;color:#6b5648}.domino-filter-symbol:before,.domino-filter-symbol:after{content:"";position:absolute;top:50%;left:50%;width:56%;height:clamp(2px,.45vmin,3px);border-radius:999px;background:currentColor}.domino-filter-symbol:before{transform:translate(-50%,-50%) rotate(45deg)}.domino-filter-symbol:after{transform:translate(-50%,-50%) rotate(-45deg)}.filter-button[aria-pressed=true] .domino-filter-tile{border-color:var(--filter-accent);box-shadow:0 0 0 3px var(--filter-accent-soft),0 8px 18px #2c6d662e;background:linear-gradient(180deg,#fffefb,#f0f5f2)}.filter-button[aria-pressed=true] .pip{background:var(--filter-accent-ink)}.filter-button[aria-pressed=true] .domino-filter-symbol{color:var(--filter-accent-ink)}.board-stack{position:relative;filter:drop-shadow(0 4px 18px rgba(90,70,50,.14))}.drawing-layer{position:absolute;inset:0;z-index:6;width:100%;height:100%;pointer-events:none;touch-action:none}.drawing-layer.drawing-enabled{pointer-events:auto;cursor:crosshair}.board-stage[data-draw-tool=highlighter] .drawing-layer.drawing-enabled{cursor:cell}.drawing-stroke-highlighter{mix-blend-mode:multiply}.board-layer{display:grid;gap:var(--gap);pointer-events:none}.board-layer-0{position:relative;z-index:1}.board-layer-1,.board-layer-2,.board-layer-3{position:absolute;inset:0}.board-layer-1{z-index:2}.board-layer-2{z-index:3}.board-layer-3{z-index:4}.board-cell{width:var(--cell);height:var(--cell);border-radius:var(--radius);position:relative}.board-cell:after{content:"";position:absolute;z-index:-2;inset:0;background:var(--board-bg)}.board-cell.edge-t:after{top:calc(var(--board-frame) * -1)}.board-cell.edge-b:after{bottom:calc(var(--board-frame) * -1)}.board-cell.edge-l:after{left:calc(var(--board-frame) * -1)}.board-cell.edge-r:after{right:calc(var(--board-frame) * -1)}.board-cell:before{content:"";position:absolute;z-index:-1;inset:1px;border-radius:var(--radius);background:var(--cell-bg)}.board-cell.edge-tl:after{border-top-left-radius:var(--board-radius)}.board-cell.edge-tr:after{border-top-right-radius:var(--board-radius)}.board-cell.edge-bl:after{border-bottom-left-radius:var(--board-radius)}.board-cell.edge-br:after{border-bottom-right-radius:var(--board-radius)}.board-cell.notch-tl:after{mask-image:radial-gradient(circle var(--board-radius) at 0 0,transparent 96%,black 100%);-webkit-mask-image:radial-gradient(circle var(--board-radius) at 0 0,transparent 96%,black 100%)}.board-cell.notch-tr:after{mask-image:radial-gradient(circle var(--board-radius) at 100% 0,transparent 96%,black 100%);-webkit-mask-image:radial-gradient(circle var(--board-radius) at 100% 0,transparent 96%,black 100%)}.board-cell.notch-bl:after{mask-image:radial-gradient(circle var(--board-radius) at 0 100%,transparent 96%,black 100%);-webkit-mask-image:radial-gradient(circle var(--board-radius) at 0 100%,transparent 96%,black 100%)}.board-cell.notch-br:after{mask-image:radial-gradient(circle var(--board-radius) at 100% 100%,transparent 96%,black 100%);-webkit-mask-image:radial-gradient(circle var(--board-radius) at 100% 100%,transparent 96%,black 100%)}.region-cell{position:relative;overflow:visible}.region-badge{--region-badge-size: clamp(15px, calc(var(--cell) * .5), 20.5px);--region-badge-offset: calc(var(--region-badge-size) * -.24);position:absolute;z-index:10;bottom:var(--region-badge-offset);right:var(--region-badge-offset);width:var(--region-badge-size);height:var(--region-badge-size);transform:rotate(45deg);display:flex;align-items:center;justify-content:center;border-radius:calc(var(--region-badge-size) * .14);color:#fff;font-family:system-ui,-apple-system,sans-serif;font-size:clamp(7px,calc(var(--cell) * .2),9px);font-weight:800;line-height:1;letter-spacing:-.03em}.region-badge.is-invalid{border:max(1px,calc(var(--region-badge-size) * .08)) solid #a52323}.region-badge span{transform:rotate(-45deg);white-space:nowrap}.domino{display:inline-flex;background:var(--domino-bg);border:2px solid var(--domino-border);border-radius:8px;box-shadow:0 1px 3px #00000014,0 2px 8px #0000000a;transition:border-color .18s ease,box-shadow .18s ease,opacity .18s ease,filter .18s ease}.domino-face{display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);place-items:center}.domino-face+.domino-face{border-left:1px solid #d8d2cc}.pip{border-radius:50%;background:var(--pip)}.pip-empty{visibility:hidden}.domino.filter-match{border-color:var(--filter-accent);box-shadow:0 0 0 3px var(--filter-accent-soft),0 10px 24px #2c6d662e}.domino.filter-match .pip{background:var(--filter-accent-ink)}.domino.filter-muted{opacity:.26;filter:saturate(.72)}.tray{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(8px,1.5vmin,12px);max-width:min(100%,520px)}.tray .domino-face{width:clamp(28px,5.5vmin,38px);height:clamp(28px,5.5vmin,38px);padding:clamp(3px,.6vmin,5px)}.tray .pip,.tray .pip-empty{width:clamp(4px,.85vmin,6px);height:clamp(4px,.85vmin,6px)}.domino.vertical{flex-direction:column}.domino.vertical .domino-face+.domino-face{border-left:none;border-top:1px solid #d8d2cc}.domino.board-domino{position:absolute;touch-action:none;pointer-events:auto}.domino.board-domino.horizontal{width:calc(var(--cell) * 2 + var(--gap));height:var(--cell)}.domino.board-domino.vertical{width:var(--cell);height:calc(var(--cell) * 2 + var(--gap))}.domino.board-domino .domino-face{width:var(--cell);height:var(--cell);padding:clamp(8px,1.5vmin,12px)}.domino.board-domino .pip,.domino.board-domino .pip-empty{width:clamp(6px,1.5vmin,10px);height:clamp(6px,1.5vmin,10px)}.domino.placed{cursor:grab}.domino.ghosted{opacity:.58;border-style:dashed;border-color:#605c59eb;box-shadow:0 10px 24px #0000001f}.domino.ghosted.invalid{border-color:#ba4a4af2;background:#fff4f4f0}.domino.drag-preview{position:fixed;z-index:10000;pointer-events:none;opacity:.88;box-shadow:0 8px 28px #0003;transform:translate(-50%,-50%)}.board-cell.drop-valid{background:#50b45073!important;transition:background .1s}.board-cell.drop-invalid{background:#c83c3c59!important;transition:background .1s}.tray .domino{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:transform .15s ease,opacity .15s ease}.tray .domino.used{opacity:.2;pointer-events:none}.tray .domino.used.filter-match{opacity:.46}.tray .domino.dragging{opacity:.3}@media(max-width:720px){.page-top-row{gap:.7rem}.replay-launch-button{min-height:2.55rem;padding:.45rem .85rem;font-size:.88rem}.calendar-launch-button{width:42px;min-width:42px;min-height:42px}.history-row{gap:.85rem}.history-button{width:3rem;height:3rem}.filter-controls{justify-content:end}.calendar-modal-card{max-height:min(calc(100dvh - .8rem),780px)}}@media(max-width:760px){.tool-dock{gap:.75rem}.edge-tool-button{margin-left:-84px;width:146px}.color-popover{right:calc(100% + .55rem);gap:.45rem;padding:.55rem}.action-button{width:3.3rem;height:3.3rem;border-radius:1.1rem}.color-swatch{width:2.3rem;height:2.3rem}}@media(max-width:640px){.page-top-row{grid-template-columns:auto 1fr}.page-top-actions-right{display:none}.timer-value{justify-self:end}.action-button{width:3rem;height:3rem}.edge-tool-button{margin-left:-80px;width:132px}.action-icon{width:1.35rem;height:1.35rem}.color-popover{grid-template-columns:repeat(2,1fr)}.calendar-modal-card{width:min(100%,460px);max-height:calc(100dvh - .25rem);gap:.45rem;padding:.55rem;border-radius:18px}.calendar-modal-header{gap:.55rem}.calendar-kicker{margin-bottom:.18rem;font-size:.62rem}.calendar-heading{font-size:.95rem}.calendar-summary{display:none}.calendar-close-button{align-self:auto}.calendar-root{padding-right:0}.calendar-month{gap:.35rem;padding:.4rem;border-radius:18px}.calendar-month-header{gap:.25rem}.calendar-month-header h3{font-size:.9rem}.calendar-month-header p{display:none}.calendar-month-nav{min-width:42px;min-height:42px}.calendar-weekday-row,.calendar-grid{gap:.18rem}.calendar-weekday-row{margin-bottom:0}.calendar-weekday-row span{font-size:.5rem}.calendar-cell{min-height:clamp(6rem,16vw,7.4rem)}.calendar-cell-placeholder{padding:.25rem;min-height:2.2rem}.calendar-day-number{min-width:1.2rem;height:1.2rem;font-size:.58rem}.calendar-cell-day{gap:.18rem;padding:.22rem}.calendar-day-header{gap:.15rem}.calendar-day-link{font-size:.62rem}.calendar-today-badge{width:.48rem;height:.48rem}.calendar-difficulty-list{gap:.18rem;flex:1 1 auto;min-height:0}.calendar-difficulty-link{flex:1 1 0;min-height:0;max-height:42px;padding:.16rem .18rem;font-size:.52rem}}
