.game-shell{box-sizing:border-box;background:var(--g-bg);min-height:100%;color:var(--g-text);place-items:center;padding:20px;font-family:DM Mono,monospace;display:grid}.game-card{box-sizing:border-box;border:1px solid var(--g-border);background:var(--g-surface);border-radius:18px;width:min(900px,100%);padding:28px 34px}.game-card--wide{width:min(1100px,100%)}.game-mark{letter-spacing:.18em;text-align:center;font-size:28px;font-weight:800}.game-mark--small{text-align:left;font-size:18px}.game-subtitle{color:var(--g-muted);text-align:center;margin:6px 0 24px;font-size:11px}.game-head{justify-content:space-between;align-items:flex-end;display:flex}.game-head span{color:var(--g-muted);margin-top:4px;font-size:9px;display:block}.game-head strong{font-size:16px;font-weight:400}.game-page{color:var(--g-muted-2);text-align:center;margin-top:18px;font-size:9px}.game-focus{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:360px;display:flex}.game-card--focus{position:relative}.game-card--focus>.game-mark{text-align:left;font-size:18px;position:absolute;top:24px;left:24px}.game-focus span{color:var(--g-muted);letter-spacing:.16em;font-size:10px}.game-focus strong{margin:16px 0 12px;font-size:clamp(72px,12vw,110px);font-weight:800;line-height:.8}.game-focus small{color:var(--g-muted-2);letter-spacing:.08em;font-size:10px}.game-level{border-block:1px solid var(--g-border-soft);text-align:center;grid-template-columns:48px 1fr 48px;align-items:center;gap:12px;padding:14px 0;display:grid}.game-level span,.game-level small{color:var(--g-muted);font-size:9px;display:block}.game-level strong{margin:2px 0;font-size:20px;display:block}.game-level button,.game-nav button{border:1px solid var(--g-border);height:42px;color:var(--g-text);cursor:pointer;font:inherit;background:0 0;border-radius:8px;font-size:18px}.game-level button:disabled,.game-nav button:disabled{opacity:.2;cursor:not-allowed}.game-config{margin:24px 0 10px;display:block}.game-config>span{color:var(--g-muted);letter-spacing:.12em;margin-bottom:8px;font-size:9px;display:block}.game-config input,.game-config select{box-sizing:border-box;border:1px solid var(--g-border);background:var(--g-input);width:100%;height:52px;color:var(--g-text);font:inherit;border-radius:9px;outline:none;padding:0 16px;font-size:16px}.game-config input:focus,.game-config select:focus{border-color:var(--g-text)}.game-config small{color:var(--g-muted-2);margin-top:7px;font-size:9px;display:block}.game-preview{border:1px solid var(--g-border-faint);color:var(--g-muted);white-space:nowrap;border-radius:8px;margin-bottom:18px;padding:12px;font-size:11px;overflow:hidden}.game-btn-primary{background:var(--g-primary-bg);width:100%;min-height:42px;color:var(--g-primary-text);cursor:pointer;font:inherit;letter-spacing:.06em;border:0;border-radius:9px;padding:12px 16px;font-weight:700}.game-btn-primary:hover:not(:disabled){opacity:.9}.game-btn-primary:disabled{opacity:.25;cursor:not-allowed}.game-btn-primary--sm{width:auto;min-width:130px}.game-btn-save{color:var(--g-muted);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:10px auto 0;padding:0;font-size:11px;text-decoration:underline;display:block}.game-btn-save:hover{color:var(--g-text)}.game-chunks{justify-content:center;align-items:center;gap:18px;min-height:250px;display:flex}.game-chunks span{border:1px solid var(--g-border);background:var(--g-input);border-radius:8px;padding:14px 18px;font-size:32px}.game-nav{grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;display:grid}.game-nav span{color:var(--g-muted-2);text-align:center;font-size:9px}.game-result-scroll{scrollbar-gutter:stable;height:100%;min-height:0;padding:20px;display:block;overflow:hidden auto}.game-result-scroll .game-card{margin:0 auto 20px}.game-result-top{justify-content:space-between;align-items:center;gap:24px;margin-top:10px;display:flex}.game-score{letter-spacing:-.035em;align-items:baseline;font-size:clamp(48px,6vw,64px);font-weight:700;line-height:.95;display:flex}.game-score span{color:var(--g-muted-2);letter-spacing:-.01em;margin-left:5px;font-size:23px;font-weight:400}.game-result-message{color:var(--g-muted);margin:8px 0 14px;font-size:10px}.game-stats{border-block:1px solid var(--g-border-soft);grid-template-columns:repeat(4,1fr);margin:20px 0;display:grid}.game-stats>div{text-align:center;border-right:1px solid var(--g-border-soft);padding:14px 10px}.game-stats>div:last-child{border-right:0}.game-stats small{color:var(--g-muted-2);letter-spacing:.1em;margin-bottom:5px;font-size:8px;display:block}.game-stats strong{color:var(--g-text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500;display:block}.game-comparison{text-align:left;grid-template-columns:1fr;gap:20px;margin:0;display:grid}.game-comparison-col{min-width:0}@media (width<=700px){.game-shell{padding:10px}.game-card{border-radius:14px;padding:20px 16px}.game-chunks{gap:8px;min-height:220px}.game-chunks span{padding:12px 10px;font-size:24px}.game-result-top{align-items:flex-end}.game-comparison{grid-template-columns:1fr;gap:14px}.game-stats>div{padding:12px 4px}.game-stats strong{font-size:12px}}.game-toast{z-index:20;border:1px solid var(--g-border-soft);background:var(--g-surface);color:var(--g-text);letter-spacing:.04em;pointer-events:none;padding:8px 10px;font-size:10px;line-height:1.2;animation:2.8s forwards game-toast-in;position:absolute;top:14px;left:14px}@keyframes game-toast-in{0%{opacity:0;transform:translateY(-4px)}12%,82%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.cal-hud{justify-content:flex-end;align-items:center;margin-bottom:12px;display:flex}.cal-timer{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:22px;font-weight:700}.cal-timer.low{color:var(--g-wrong)}.cal-feedback{text-align:center;color:#0000;height:18px;margin-bottom:4px;font-size:11px;font-weight:700}.cal-feedback.visible{animation:.7s ease-out forwards cal-feedback-fade}.cal-feedback.correct{color:var(--g-correct)}.cal-feedback.wrong{color:var(--g-wrong)}@keyframes cal-feedback-fade{0%{opacity:1}75%{opacity:1}to{opacity:0}}.cal-date{text-align:center;letter-spacing:-.025em;border:1px solid var(--g-border);background:var(--g-input);user-select:none;border-radius:14px;margin-bottom:20px;padding:28px 16px;font-size:clamp(26px,5.5vw,40px);font-weight:800}.cal-days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-day{border:1px solid var(--g-border);background:var(--g-surface);color:var(--g-text);letter-spacing:.02em;cursor:pointer;user-select:none;border-radius:10px;padding:16px 4px;font-size:12px;font-weight:700;transition:border-color .1s,background .1s,transform 80ms}.cal-day:hover{border-color:var(--g-text);background:var(--g-hover)}.cal-day:active{transform:scale(.95)}.cal-stop{color:var(--g-muted-2);font:inherit;letter-spacing:.04em;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:700}.cal-stop:hover{color:var(--g-text)}.cal-footer{color:var(--g-muted);justify-content:center;align-items:center;gap:10px;margin-top:16px;font-size:11px;display:flex}.cal-key-hint{color:var(--g-muted-2)}.cal-result-page{box-sizing:border-box;height:100%;min-height:0;padding:20px 20px 40px;overflow:hidden auto}.cal-result-page>.game-card{margin-bottom:20px}.cal-setup-meta{border-block:1px solid var(--g-border);grid-template-columns:1fr 1fr;margin:14px 0;display:grid}.cal-setup-meta>div{text-align:center;padding:12px 16px}.cal-setup-meta>div+div{border-left:1px solid var(--g-border)}.cal-setup-meta small{color:var(--g-muted-2);letter-spacing:.1em;margin-bottom:4px;font-size:9px;font-weight:700;display:block}.cal-setup-meta strong{font-size:14px;font-weight:700;display:block}.cal-setup-header{justify-content:center;align-items:center;display:flex;position:relative}.cal-settings{width:34px;height:34px;color:var(--g-muted-2);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:0;transform:translateY(-50%)}.cal-settings:hover{color:var(--g-text)}.cal-settings-icon{background:currentColor;width:22px;height:22px;display:block;-webkit-mask:url(/icons/settings.svg) 50%/contain no-repeat;mask:url(/icons/settings.svg) 50%/contain no-repeat}.cal-setup-bottom{margin-top:12px}.cal-setup-bottom .game-btn-primary{width:100%}.cal-setting-row input[type=checkbox]{width:20px;height:20px;accent-color:var(--g-text)}.cal-setup-switcher{grid-template-areas:"content";width:100%;min-width:0;transition:grid-template-rows .18s ease-out;display:grid;overflow:hidden}.cal-setup-switcher>.cal-setup-content,.cal-setup-switcher>.cal-settings-view{box-sizing:border-box;grid-area:content;width:100%;min-width:0}.cal-settings-view{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease-out,transform .18s ease-out,visibility 0s linear .18s;transform:translateY(4px)}.cal-setup-content{opacity:1;visibility:visible;transition:opacity .12s ease-out,transform .18s ease-out,visibility linear;transform:translateY(0)}.cal-setup-switcher.settings-open{grid-template-rows:1fr}.cal-setup-switcher.settings-open .cal-setup-content{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease-out,transform .18s ease-out,visibility 0s linear .18s;transform:translateY(-4px)}.cal-setup-switcher.settings-open .cal-settings-view{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .12s ease-out,transform .18s ease-out,visibility linear;transform:translateY(0)}.cal-settings-panel{border:1px solid var(--g-border);background:var(--g-input);border-radius:10px;margin-top:0;padding:10px 14px}.cal-settings-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.cal-settings-header strong{letter-spacing:.1em;font-size:10px}.cal-settings-header button{color:var(--g-muted-2);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px}.cal-settings-header button:hover{color:var(--g-text)}.cal-setting-row{border-top:1px solid var(--g-border-faint);min-height:40px;color:var(--g-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.cal-setting-group{gap:6px;margin-top:12px;display:grid}.cal-setting-group>span{color:var(--g-muted-2);letter-spacing:.08em;margin-bottom:2px;font-size:9px;font-weight:700}.cal-setting-group button{border:1px solid var(--g-border);width:100%;color:var(--g-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;font-size:10px;display:flex}.cal-setting-group button.selected{border-color:var(--g-text);color:var(--g-text)}.cal-setting-group button small{color:var(--g-muted-2);font-size:9px;font-weight:400}.cal-setting-group button.selected small{color:var(--g-muted)}.cal-example{border:1px solid var(--g-border-faint);background:var(--g-input);border-radius:12px;flex-direction:column;align-items:center;gap:5px;margin-top:16px;padding:14px 28px;display:flex}.cal-example span{letter-spacing:.14em;text-transform:uppercase;color:var(--g-muted-2);font-size:9px}.cal-example strong{letter-spacing:-.01em;font-size:22px;font-weight:800}.cal-example em{color:var(--g-correct);font-size:13px;font-style:normal;font-weight:600}@media (width<=480px){.cal-setup-meta>div{padding:9px 8px}.cal-setting-group button{flex-direction:column;align-items:flex-start;gap:3px}.cal-date{padding:20px 12px;font-size:clamp(20px,5vw,28px)}.cal-days{gap:4px}.cal-day{border-radius:8px;padding:13px 2px;font-size:10px}.cal-timer{font-size:18px}.cal-key-hint{display:none}.cal-result-page{padding:10px 10px 30px}.cal-attempts-list{max-height:300px}}.cal-result-page .calendar-review-muted{color:var(--g-muted)}.cal-result-page .full-review-cell.calendar-review-score.correct{color:#70b887}.cal-result-page .full-review-cell.calendar-review-score.wrong{color:#d47777}.cal-result-title{text-align:center;letter-spacing:.12em;color:var(--g-text);font-size:22px;font-weight:600}.cal-result-divider{background:var(--g-border-soft);height:1px;margin:18px 0}.cal-result-actions{flex-direction:column;gap:10px;margin-top:24px;display:flex}@media (width<=700px){.cal-result-title{font-size:20px}}
