:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.mock-date-panel{position:fixed;top:15px;right:15px;z-index:500;background:#fffc;border:1px solid var(--panel-border);border-radius:8px;padding:6px 10px;box-shadow:var(--panel-shadow);display:flex;gap:6px}.mock-date-panel input{width:50px;border-radius:6px;border:1px solid var(--panel-border);text-align:center}.mock-date-panel button{padding:4px 8px;border-radius:6px;background:var(--panel-bg);border:1px solid var(--panel-border);cursor:pointer}:root{--winter-bg: linear-gradient(180deg, #e7f1ff 0%, #cfdff5 100%);--panel-bg: rgba(255, 255, 255, .85);--panel-bg-locked: rgba(240, 240, 240, .5);--panel-border: rgba(255, 255, 255, .7);--panel-shadow: 0 4px 15px rgba(0, 0, 0, .1);--panel-hover: 0 0 10px rgba(255, 255, 255, .9);--overlay-bg: rgba(0, 0, 0, .45);--confirm-bg: rgba(255, 255, 255, .9)}body{margin:0;min-height:100vh;background:var(--winter-bg);background-attachment:fixed;font-family:Inter,sans-serif;display:flex;justify-content:center;padding:40px 20px;color:#333}.calendar .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:18px;width:100%;max-width:1100px}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);color:#347;border-radius:14px;box-shadow:var(--panel-shadow);aspect-ratio:1;display:flex;justify-content:center;align-items:center;font-size:2rem;transition:transform .15s ease,box-shadow .15s ease;position:relative;overflow:hidden}.panel button{border:none;background:none;color:#347;cursor:pointer;font-size:2rem;width:100%;height:100%}.panel:hover{transform:translateY(-3px);box-shadow:var(--panel-hover)}.panel.locked{background:var(--panel-bg-locked);color:#aaa;opacity:.7;pointer-events:none}.panel.solved img{width:100%;height:100%;object-fit:cover}.overlay{position:fixed;inset:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#00000073;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px;color:#fff;animation:fadein .2s ease-out}@keyframes fadein{0%{opacity:0}to{opacity:1}}.overlay .close{position:absolute;top:25px;right:25px;background:#fff3;border:1px solid rgba(255,255,255,.4);border-radius:8px;padding:6px 10px;font-size:1.2rem;cursor:pointer}.overlay .riddle{font-size:1.4rem;max-width:600px;text-align:center;margin-bottom:20px}.overlay input{padding:10px 14px;border-radius:8px;border:none;font-size:1.2rem;width:260px;text-align:center}.overlay button{margin-top:14px;padding:10px 20px;border:none;border-radius:8px;background:#fff;color:#000;cursor:pointer;font-size:1.2rem}.overlay .bigImage{max-width:90vw;max-height:85vh;border-radius:12px;box-shadow:0 0 20px #ffffff80}.confirm-overlay{position:fixed;inset:0;background:var(--overlay-bg, rgba(0,0,0,.45));display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50}.confirm-box{background:var(--confirm-bg, var(--panel-bg));border:1px solid var(--panel-border);border-radius:14px;padding:26px 32px;text-align:center;box-shadow:var(--panel-shadow);max-width:340px;animation:confirm-pop .18s ease-out}@keyframes confirm-pop{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.confirm-box p{font-size:1.2rem;margin-bottom:22px;color:#333}.confirm-buttons{display:flex;justify-content:center;gap:12px}.confirm-buttons button{color:#333;padding:10px 18px;border-radius:10px;border:1px solid var(--panel-border);background:var(--panel-bg);box-shadow:var(--panel-shadow);cursor:pointer;font-size:1rem;transition:transform .15s ease,box-shadow .15s ease}.confirm-buttons button:hover{transform:translateY(-2px);box-shadow:var(--panel-hover)}.confirm-buttons .cancel{background:var(--panel-bg-locked)}.intro{display:flex;align-items:center;justify-content:center;gap:30px;margin-bottom:40px;padding:20px;max-width:1400px;width:100%}.intro-image{width:200px;height:auto;border-radius:14px;opacity:.85;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.intro-text{flex:1;color:#2a3544;max-width:800px}.intro-text h1{margin:0 0 12px;font-size:2rem;font-weight:600}.intro-text p{font-size:1.2rem;line-height:1.5}@media(max-width:700px){.intro{flex-direction:column;text-align:center}.intro-image{width:160px}}
