@font-face{font-family:Gelio Retsina;src:url(/assets/GelioRetsina-gTnXaRXC.ttf)format("truetype");font-display:swap}:root{--bg:#f7f5f0;--fg:#1f1d1a;--muted:#6b665e;--border:#d8d3c8;--correct:#4a8f5a;--partial:#c9a227;--wrong:#8a8378;--veil:70%;--surface:color-mix(in srgb, var(--bg) 72%, transparent);--panel:#f7f5f0e6;--easy:#4f7091;--hard:#a24e34;--canvas:#d5cdbf;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--fg);background:var(--canvas);font-family:Georgia,Times New Roman,serif}@media (prefers-color-scheme:dark){:root{--bg:#1a1917;--fg:#ece8df;--muted:#a39d92;--border:#3a3732;--wrong:#6a645b;--veil:50%;--surface:color-mix(in srgb, var(--bg) 45%, transparent);--panel:#34302ae6;--canvas:#4f4532;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{min-height:100vh;margin:0}body:before,body:after{--band-fade:calc((100% - 1160px) * .75);--band-mask:linear-gradient(to right, transparent, #00000073 calc(var(--band-fade) * .5), #000 var(--band-fade), #000 calc(100% - var(--band-fade)), #00000073 calc(100% - var(--band-fade) * .5), transparent);content:"";pointer-events:none;position:fixed;inset:0}body:before{z-index:-2;background:url(/assets/school-of-athens-Ddrmu4hN.jpg) 50%/cover no-repeat}body:after{z-index:-1;background:color-mix(in srgb, var(--bg) var(--veil), transparent);-webkit-backdrop-filter:blur(4px)saturate(1.15);backdrop-filter:blur(4px)saturate(1.15);-webkit-mask-image:var(--band-mask);-webkit-mask-image:var(--band-mask);mask-image:var(--band-mask)}@media (hover:none){body{position:relative}body:before,body:after{position:absolute}}.app{max-width:1120px;margin:0 auto;padding:1.5rem 1rem}.header{text-align:center;margin-bottom:1.5rem}.divider{max-width:640px;color:var(--muted);align-items:center;gap:.9rem;margin:.9rem auto 0;display:flex}.divider:before,.divider:after{content:"";flex:1;height:1px}.divider:before{background:linear-gradient(to right, transparent, var(--muted))}.divider:after{background:linear-gradient(to left, transparent, var(--muted))}.divider span{font-size:1.3rem;line-height:1}.header h1{letter-spacing:.04em;margin:0;font-family:Gelio Retsina,Georgia,serif;font-size:min(2.75rem,14vw);font-weight:400}.tagline{color:var(--muted);margin:.25rem 0 0;font-style:italic}.input-row{gap:.5rem;max-width:520px;margin:0 auto 1rem;display:flex}.guess-input{flex:1;position:relative}.guess-input input{width:100%;font:inherit;color:var(--fg);background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:2px solid var(--border);border-radius:6px;outline:none;padding:.75rem 1rem;font-size:1.05rem}.guess-input input:disabled{opacity:.6}.suggestions{z-index:10;background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:6px;margin:0;padding:.25rem 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 6px 18px #0000001f}.suggestions li{cursor:pointer;padding:.5rem 1rem}.suggestions li.active{background:color-mix(in srgb, var(--fg) 14%, transparent)}.grid-scroll{padding-bottom:.5rem;overflow-x:auto}.grid{grid-template-columns:8rem repeat(3,minmax(5.5rem,1fr)) minmax(7.5rem,1.5fr) minmax(6rem,1fr) minmax(7rem,1.3fr) minmax(4.5rem,.8fr);gap:4px;min-width:820px;display:grid}.grid-row{display:contents}.grid-cell{text-align:center;color:#fff;background:var(--wrong);min-height:4rem;animation:.45s both flip;animation-delay:calc(var(--i,0) * .12s);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;padding:.4rem;font-size:.9rem;line-height:1.2;display:flex;position:relative;overflow:hidden}.grid-cell.list{font-size:.78rem}.grid-cell.correct{background:var(--correct)}.grid-cell.partial{background:var(--partial)}.grid-cell.name{color:var(--fg);z-index:1;background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-weight:700;animation:none;position:sticky;left:0}.header .grid-cell{min-height:auto;color:var(--muted);background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;animation:none}.arrow{fill:#00000038;width:calc(100% - 8px);height:calc(100% - 8px);position:absolute;inset:4px}.arrow.up{transform:rotate(180deg)}.cell-text{position:relative}.grid-row:not(.header) .grid-cell:not(.name,.unknown){text-shadow:0 0 3px #0000008c,0 1px 2px #00000073;font-weight:700}@keyframes flip{0%{opacity:0;transform:rotateX(90deg)}to{opacity:1;transform:rotateX(0)}}@media (prefers-reduced-motion:reduce){.grid-cell{animation:none}}@media (width<=640px){.grid-scroll{overflow-x:visible}.grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.05fr) minmax(0,.9fr);gap:3px;min-width:0}.grid-cell{letter-spacing:-.01em;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;min-height:3.4rem;padding:.2rem .1rem;font-size:.62rem}.grid-cell.list{font-size:.56rem}.grid-cell.name{grid-column:1/-1;min-height:auto;margin-top:.35rem;padding:.25rem .5rem;font-size:.85rem;position:static}.header .grid-cell{letter-spacing:0;padding:.3rem .1rem;font-size:.5rem}.header .grid-cell:first-child{display:none}}@media (width<=360px){.app{padding-inline:.5rem}}.grid-scroll{container:guesses/inline-size}.cell-label{display:none}@container guesses (width<=21rem){.grid-cell{font-size:.56rem}.grid-cell.list{font-size:.5rem}.header .grid-cell{font-size:.45rem}}@container guesses (width<=18.5rem){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-row.header{display:none}.grid-cell,.grid-cell.list{min-height:3.6rem;padding:.3rem .2rem;font-size:.7rem}.grid-cell.unknown{font-size:1rem}.cell-label{text-transform:uppercase;letter-spacing:.04em;opacity:.85;margin-bottom:.15rem;font-size:.5rem;font-weight:400;display:block;position:relative}.grid-row .grid-cell:last-child{grid-column:span 2}}@container guesses (width<=15rem){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-row .grid-cell:last-child{grid-column:span 3}}@container guesses (width<=11.5rem){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-row .grid-cell:last-child{grid-column:span 2}}.toolbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.25rem;margin-bottom:.75rem;display:flex}.status{color:var(--muted);font-size:.9rem}.result{width:fit-content;max-width:100%;color:var(--fg);background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;margin:0 auto 1.25rem;padding:.5rem .6rem .5rem 1.1rem;font-size:1.05rem;display:flex}.result-button{font:inherit;color:#fff;background:var(--correct);cursor:pointer;border:none;border-radius:6px;padding:.35rem .9rem;font-size:.9rem}.header .grid-cell:first-child{z-index:1;position:sticky;left:0}.modal{width:min(460px,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--fg);background:var(--panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:10px;outline:none;padding:0;box-shadow:0 20px 50px #00000040}.modal::backdrop{background:#00000073}.modal-body{padding:1.5rem 1.5rem 1.25rem;position:relative}.modal h2{text-align:center;margin:0 0 1rem;font-size:1.4rem}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:1.6rem;line-height:1;position:absolute;top:.5rem;right:.75rem}.reveal{text-align:center}.reveal p{margin:0}.reveal-lead{color:var(--muted);font-size:.9rem}.reveal-name{font-size:1.6rem;font-weight:700;margin:.2rem 0!important}.reveal-meta{color:var(--muted);font-size:.9rem}.reveal blockquote{margin:1rem 0 0;font-style:italic}.reveal blockquote footer{color:var(--muted);margin-top:.35rem;font-size:.8rem;font-style:normal}.result-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1rem;display:flex}.result-actions.next-only{flex-direction:column;justify-content:center;gap:.75rem}.streak-note{margin:0;font-size:1.05rem;font-weight:700}.next-label{color:var(--muted);font-size:.75rem;display:block}.countdown{font-variant-numeric:tabular-nums;font-size:1.3rem}.share{font:inherit;color:#fff;background:var(--correct);cursor:pointer;border:none;border-radius:6px;padding:.6rem 1.4rem;font-weight:700}.clue-button{font:inherit;color:var(--fg);border:2px solid var(--border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;flex:none;padding:0 1rem;font-size:.95rem;animation:.5s both clue-in;overflow:hidden}.clue-button:hover{border-color:var(--partial)}.quote-clue-wrap{grid-template-rows:1fr;display:grid}.quote-clue-inner{min-height:0;overflow:hidden}.quote-clue{text-align:center;max-width:640px;color:var(--fg);margin:0 auto;padding-bottom:1.5rem;font-size:1.1rem;font-style:italic}.grid-cell.unknown{color:var(--muted);border:1px dashed var(--border);background:0 0;font-size:1.1rem}.share:focus-visible{outline:2px solid var(--correct);outline-offset:2px}.dev-tools{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:20;position:fixed}.dev-tools button{color:#fff;background:var(--hard);opacity:.75;cursor:pointer;border:none;border-radius:4px;padding:.35rem .75rem;font:.8rem/1 ui-monospace,Menlo,monospace}.dev-tools button:hover{opacity:1}@keyframes clue-in{0%{opacity:0;border-width:0;max-width:0;padding-inline:0}to{opacity:1;max-width:10rem}}@media (prefers-reduced-motion:reduce){.clue-button{animation:none}}.levels{gap:.75rem;display:grid}.level{font:inherit;text-align:center;color:#fff;cursor:pointer;border:none;border-radius:8px;gap:.3rem;padding:1rem 1.25rem;transition:transform .1s,box-shadow .1s;display:grid;box-shadow:0 4px #0003}.level:hover{transform:translateY(-1px);box-shadow:0 5px #0003}.level:active{transform:translateY(3px);box-shadow:0 1px #0003}.level.easy{background:var(--easy)}.level.hard{background:var(--hard)}.level-name{letter-spacing:.03em;font-size:1.35rem;font-weight:700}.level-description{opacity:.92;font-size:.9rem;line-height:1.35}.levels-note{text-align:center;color:var(--muted);margin:1rem 0 0;font-size:.8rem}.quote-clue-wrap.revealing{animation:1s both quote-make-room}.quote-clue-wrap.revealing .quote-clue{animation:2s 1s both quote-fade-in}@keyframes quote-make-room{0%{grid-template-rows:0fr}to{grid-template-rows:1fr}}@keyframes quote-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.quote-clue-wrap.revealing,.quote-clue-wrap.revealing .quote-clue{animation:none}}.share-card{box-sizing:border-box;text-align:center;background:color-mix(in srgb, var(--fg) 7%, transparent);border-radius:10px;width:fit-content;max-width:100%;margin:1.25rem auto 0;padding:.85rem 1rem 1rem}.share-card figcaption{color:var(--muted);margin-bottom:.6rem;font-size:.9rem}.mini-grid{gap:4px;display:grid}.mini-row{gap:4px;display:flex}.mini{aspect-ratio:1;background:var(--wrong);border-radius:4px;flex:0 1.5rem;min-width:0;position:relative}.mini.correct{background:var(--correct)}.mini.partial{background:var(--partial)}.mini svg{fill:#00000040;position:absolute;inset:3px}.mini svg.up{transform:rotate(180deg)}.portrait{aspect-ratio:4/5;background:var(--surface);border-radius:8px;width:min(100%,20rem);margin:0 auto 1rem;position:relative;overflow:hidden;box-shadow:0 6px 24px #00000040}.portrait img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.portrait-tiles{grid-template-columns:repeat(var(--cols), 1fr);grid-template-rows:repeat(var(--rows), 1fr);display:grid;position:absolute;inset:0}.tile{background:radial-gradient(circle at 30% 25%, #ffffff2e, transparent 60%), color-mix(in srgb, var(--bg) 88%, #8a7a5c);transition:opacity .7s,transform .7s;box-shadow:inset 0 0 0 .5px #00000026}.tile.open{opacity:0;transform:scale(.9)}@media (prefers-reduced-motion:reduce){.tile{transition:none}}.portrait-credit{text-align:center;color:var(--muted);margin:-.5rem 0 1rem;font-size:.75rem}.portrait-credit a{color:inherit}.misses{flex-wrap:wrap;justify-content:center;gap:.4rem;max-width:640px;margin:0 auto;padding:0;list-style:none;display:flex}.misses li{color:var(--fg);text-decoration:line-through;-webkit-text-decoration-color:var(--hard);text-decoration-color:var(--hard);background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;padding:.25rem .7rem;font-size:.9rem}.reveal-portrait{aspect-ratio:4/5;object-fit:cover;border-radius:6px;width:7rem;margin:0 auto .75rem;display:block}.home-link{color:inherit;text-decoration:none}.home{max-width:560px;margin:0 auto}@media (width>=900px){.home{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;max-width:1080px;display:grid}}.menu-panel{background:var(--surface);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:0 12px 12px;margin-top:2.2rem;margin-bottom:3rem;padding:1.25rem 1rem 1rem;position:relative}.menu-panel-head{align-items:baseline;gap:.9rem;display:flex;position:absolute;bottom:100%;left:0}.menu-panel-head h2{white-space:nowrap;letter-spacing:.04em;background:var(--surface);border-radius:12px 12px 0 0;margin:0;padding:.35rem 1.1rem .25rem;font-family:Gelio Retsina,Georgia,serif;font-size:1.5rem;font-weight:400}.menu-next{color:var(--muted);font-size:.85rem;line-height:1.2}.menu-next .countdown{font-size:inherit}.menu-games{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.game-card{color:#fff;box-sizing:border-box;background:linear-gradient(135deg, var(--easy), color-mix(in srgb, var(--easy) 75%, #000));border-radius:10px;align-items:center;gap:1rem;height:6.25rem;padding:.9rem 1rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 3px #0000002e}.game-card:hover{transform:translateY(-2px);box-shadow:0 5px #0000002e}.game-card:focus-visible{outline:2px solid var(--fg);outline-offset:3px}.game-icon{background:#0000002e;border-radius:10px;flex:none;place-items:center;width:3.5rem;height:3.5rem;font-size:2rem;display:grid}.game-text{flex:1;gap:.2rem;min-width:0;display:grid}.game-title{letter-spacing:.04em;font-family:Gelio Retsina,Georgia,serif;font-size:1.45rem;line-height:1.1}.game-blurb{-webkit-line-clamp:2;line-clamp:2;opacity:.92;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.3;display:-webkit-box;overflow:hidden}
