@import"https://fonts.googleapis.com/css2?family=Anton&family=Barlow+Condensed:wght@500;600;700;800&family=Bungee+Inline&display=swap";:root{color-scheme:dark;--background: #050503;--canvas: #0c0b08;--surface: #15120d;--surface-strong: #211a12;--ink: #f5e7c4;--muted: #b99d68;--line: #6c5226;--moss: #184431;--moss-dark: #0b2319;--amber: #f3b72f;--amber-bright: #ffd15d;--danger: #b71916;--danger-dark: #6f0f0c;--danger-hot: #f04432;--bone: #f4e5c4;--wrong: #f04432;font-family:Barlow Condensed,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 50% 34%,#0000008f,#030302 73%),linear-gradient(90deg,#050503e0,#0505037a 18%,#050503ad 82%,#050503e6),linear-gradient(180deg,#0505031a,#050503b8),url(/assets/dino-park-bg.jpg) center / cover fixed no-repeat,var(--background);color:var(--ink)}body:before{position:fixed;z-index:0;inset:0;background:radial-gradient(circle at 12% 78%,rgba(8,28,12,.6),transparent 22%),radial-gradient(circle at 88% 82%,rgba(11,36,16,.56),transparent 24%),linear-gradient(rgba(255,209,93,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,209,93,.014) 1px,transparent 1px);background-size:100% 100%,100% 100%,3px 3px,3px 3px;content:"";opacity:.45;pointer-events:none}button,input{font:inherit}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.github-link{position:fixed;z-index:10;bottom:14px;left:14px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;background:transparent;color:var(--amber-bright);line-height:1;text-decoration:none}.github-link:hover,.github-link:focus-visible{color:var(--bone);outline:none}.github-icon{width:24px;height:24px;flex:0 0 auto}.app{position:relative;z-index:1;display:grid;min-height:100vh;padding:22px;place-items:center}.playing-app{align-items:start}.setup-shell,.empty-state,.results-shell{position:relative;overflow:hidden;border:2px solid var(--amber);border-radius:6px;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 38%),#0a0806;box-shadow:0 0 0 1px #000000d9,0 20px 80px #000000b3,0 0 34px #b7191638}.setup-shell{width:min(580px,100%);padding:24px}.results-shell{width:min(680px,100%);padding:24px}.setup-shell>*,.empty-state>*,.results-shell>*{position:relative;z-index:1}.setup-shell:before,.empty-state:before,.results-shell:before{position:absolute;top:0;right:0;left:0;height:0;background:none;content:""}.setup-shell:after,.empty-state:after,.results-shell:after{position:absolute;inset:0;background:radial-gradient(circle at 50% 8%,rgba(183,25,22,.13),transparent 22%),linear-gradient(90deg,rgba(255,255,255,.025),transparent 30%),repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 5px);content:"";mix-blend-mode:screen;pointer-events:none}.game-shell{width:min(1040px,100%);background:transparent}.setup-header,.results-header,.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.setup-header{display:grid;align-items:center;justify-content:center;justify-items:center;gap:0;padding-top:74px;padding-bottom:18px;border-bottom:2px solid rgba(243,183,47,.58)}.results-header{display:grid;justify-content:center;justify-items:center;gap:14px;padding-top:74px;padding-bottom:18px;border-bottom:3px solid rgba(243,183,47,.66);text-align:center}.results-header .wordmark{margin-bottom:18px;padding:8px 18px 7px}.results-header .wordmark:before{top:-58px;width:148px;height:120px;border-width:7px;box-shadow:0 0 0 6px #080705,inset 0 0 0 4px #080705}.results-header .wordmark-mark{top:-45px;width:52px;height:52px}.results-header .wordmark h1{font-size:clamp(1.9rem,5vw,3.25rem)}.topbar{margin-bottom:18px;padding:24px 4px 0}.wordmark{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;padding:10px 20px 9px;border:5px solid var(--amber);background:#080705;color:var(--bone);filter:drop-shadow(0 4px 0 rgba(0,0,0,.75)) drop-shadow(0 0 18px rgba(183,25,22,.38))}.wordmark:before{position:absolute;z-index:-1;top:-68px;left:50%;width:172px;height:140px;border:8px solid var(--amber);border-radius:50% 50% 47% 47%;background:var(--danger);box-shadow:0 0 0 7px #080705,inset 0 0 0 4px #080705;content:"";transform:translate(-50%)}.wordmark-mark{position:absolute;z-index:0;top:-54px;left:50%;width:62px;height:62px;flex:0 0 auto;color:#060504;filter:drop-shadow(0 2px 0 rgba(255,209,93,.25));transform:translate(-50%)}.wordmark h1,.empty-state h1{position:relative;z-index:2;margin:0;color:#fff5e5;font-family:Neuland Inline,Bungee Inline,Anton,Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(2.1rem,6vw,3.75rem);font-weight:400;letter-spacing:0;line-height:.9;text-shadow:2px 2px 0 var(--danger),4px 4px 0 #080705;text-transform:uppercase}.topbar .wordmark{padding:7px 14px 6px;border-width:4px}.topbar .wordmark:before{top:-29px;width:78px;height:66px;border-width:5px;box-shadow:0 0 0 5px #080705,inset 0 0 0 3px #080705}.topbar .wordmark-mark{display:block;top:-18px;width:30px;height:30px}.topbar .wordmark h1{font-size:clamp(1.5rem,4.2vw,2.9rem);text-shadow:.75px .75px 0 var(--danger),1.5px 1.5px 0 var(--danger),3px 3px 0 #080705}.setup-section{display:grid;gap:8px;margin-top:14px}.setup-section h2,.hint-panel h2{margin:0;color:var(--amber-bright);font-size:.92rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.difficulty-control{display:grid;overflow:hidden;grid-template-columns:repeat(3,1fr);min-height:46px;border:2px solid var(--line);border-radius:6px;background:#090806}.difficulty-control button{border:0;border-right:1px solid rgba(243,183,47,.38);background:transparent;color:var(--bone);cursor:pointer;font-size:1rem;font-weight:800}.difficulty-control button:last-child{border-right:0}.difficulty-control button.active,.mode-grid button.active,.start-button,.guess-control button,.next-button{background:linear-gradient(180deg,rgba(255,255,255,.09),transparent 42%),var(--danger);color:var(--bone)}.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mode-grid button{display:grid;gap:4px;min-height:64px;padding:10px;border:2px solid rgba(243,183,47,.36);border-radius:6px;background:linear-gradient(180deg,rgba(255,255,255,.045),transparent 44%),#0a0907;color:var(--bone);cursor:pointer;text-align:left}.mode-grid strong{font-size:1.08rem;font-weight:800;line-height:1.1}.mode-grid span{color:var(--amber);font-size:.86rem;font-weight:700}.mode-grid button.active span{color:var(--amber-bright)}.mode-grid button:hover,.mode-grid button:focus-visible{border-color:var(--amber);background:#17120c;outline:none}.mode-grid button.active:hover,.mode-grid button.active:focus-visible{border-color:var(--amber);background:linear-gradient(180deg,rgba(255,255,255,.11),transparent 42%),var(--danger)}.start-button{width:100%;min-height:52px;margin-top:16px;border:2px solid var(--amber);border-radius:6px;box-shadow:inset 0 -4px #00000059,0 0 20px #b7191647;cursor:pointer;font-family:Anton,Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:1.34rem;font-weight:400;letter-spacing:0;text-transform:uppercase}.secondary-button{min-height:52px;border:2px solid rgba(243,183,47,.5);border-radius:6px;background:#0a0907;color:var(--amber-bright);cursor:pointer;font-size:1rem;font-weight:800;text-transform:uppercase}.secondary-button:hover,.secondary-button:focus-visible{border-color:var(--amber);color:var(--bone);outline:none}.results-score{display:grid;justify-items:center;gap:2px;color:var(--amber);font-size:.86rem;font-weight:800;text-transform:uppercase}.results-score strong{color:var(--bone);font-family:Anton,Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(2.4rem,8vw,4.4rem);font-weight:400;line-height:.9}.results-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:0}.results-meta span{padding:4px 8px;border:1px solid rgba(243,183,47,.38);border-radius:4px;background:#080705b8;color:var(--amber-bright);font-size:.82rem;font-weight:800;line-height:1;text-transform:uppercase}.stats{display:flex;align-items:center;justify-content:flex-end;gap:16px}.stats span{display:inline-flex;align-items:baseline;gap:5px;min-width:0;padding:0;border:0;background:transparent;color:var(--amber);font-size:.82rem;font-weight:800;line-height:1;text-transform:uppercase}.stats strong{color:var(--bone);font-family:Anton,Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:1.44rem;font-weight:400;line-height:1}.hint-button{border:0;background:transparent;color:var(--amber-bright);cursor:pointer;font-size:.9rem;font-weight:800;padding:0;text-transform:uppercase}.end-game-button{min-height:34px;padding:7px 12px;border:2px solid var(--amber);border-radius:6px;background:linear-gradient(180deg,rgba(255,255,255,.09),transparent 42%),var(--danger);color:var(--bone);cursor:pointer;font-size:.84rem;font-weight:800;line-height:1;text-transform:uppercase}.end-game-button:hover,.end-game-button:focus-visible{border-color:var(--amber-bright);background:linear-gradient(180deg,rgba(255,255,255,.13),transparent 42%),var(--danger-hot);outline:none}.hint-button:hover,.hint-button:focus-visible{color:var(--danger-hot);outline:none;text-decoration:underline}.game-stage{display:grid;justify-items:center;gap:14px}.photo-panel{position:relative;overflow:hidden;width:min(820px,100%);aspect-ratio:16 / 9;margin:0;border:2px solid var(--amber);border-radius:6px;background:var(--canvas);box-shadow:0 0 0 1px #000000e6,0 16px 48px #0000008c,0 0 28px #f3b72f1f}.photo-panel img{display:block;width:100%;height:100%;object-fit:contain}.photo-panel.masked:before{position:absolute;z-index:1;top:0;right:0;left:0;height:min(20%,92px);border-bottom:2px solid rgba(243,183,47,.3);background:#110d08;content:"";pointer-events:none}.image-credits{position:absolute;z-index:3;right:0;bottom:0;max-width:min(100%,360px);background:#080705db;color:var(--bone);font-size:.72rem;line-height:1.3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.image-fact{position:absolute;z-index:2;right:0;bottom:0;left:0;min-height:46px;margin:0;padding:11px 82px 11px 14px;background:linear-gradient(180deg,#08070500,#080705e0 38%,#080705f5);color:var(--bone);font-size:.94rem;font-weight:800;line-height:1.25;text-align:center;text-shadow:0 2px 8px #080705}.image-credits summary{cursor:pointer;list-style:none;padding:7px 10px}.image-credits summary::-webkit-details-marker{display:none}.image-credits[open] summary{border-bottom:1px solid rgba(243,183,47,.34)}.image-credits[open]{left:0;max-width:none}.credits-links{display:flex;flex-wrap:wrap;gap:8px 12px;padding:7px 10px 9px}.bottom-panel{display:grid;width:min(820px,100%);grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px}.bottom-panel.without-hints{grid-template-columns:minmax(0,420px);justify-content:center}.hint-panel{min-width:0}.hint-panel-header{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:12px}.hint-button .shortcut-keys{display:inline-flex;align-items:center;gap:3px;margin-left:4px;vertical-align:middle}.hint-button kbd{display:inline-grid;min-width:20px;height:20px;padding:0 5px;border:1px solid var(--amber);border-radius:4px;color:var(--amber);font-size:.7rem;font-family:inherit;font-weight:800;place-items:center}.hint-button:disabled{color:#b99d6880;cursor:default;text-decoration:none}.hint-list{display:grid;min-height:118px;margin:0;padding:0;border-top:2px solid rgba(243,183,47,.46);list-style:none}.hint-list li{min-height:29px;padding:7px 0;border-bottom:1px solid rgba(243,183,47,.24);color:#f5e7c46b;font-size:.9rem;font-weight:700;line-height:1.3}.hint-list li.visible{color:var(--bone)}.answer-panel{min-height:150px}.guess-form{display:grid;gap:7px}.guess-form label{color:var(--amber-bright);font-size:.86rem;font-weight:800;text-transform:uppercase}.guess-control{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.guess-control input{width:100%;min-height:42px;padding:9px 11px;border:2px solid rgba(243,183,47,.44);border-radius:6px;background:#080705d9;color:var(--bone);font-size:1rem;font-weight:700;letter-spacing:0;line-height:1.2}.guess-control input:focus{border-color:var(--amber);background:#100d09;box-shadow:0 0 0 3px #f3b72f2e;outline:none}.guess-control button,.next-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.button-shortcut{display:inline-grid;min-width:26px;height:20px;padding:0 5px;border:1px solid currentColor;border-radius:4px;font-family:inherit;font-size:.68rem;font-weight:800;line-height:1;place-items:center}.guess-control button{min-width:78px;min-height:42px;border:2px solid var(--amber);border-radius:6px;cursor:pointer;font-size:.96rem;font-weight:800;text-transform:uppercase}.guess-control .skip-button{min-width:64px;border-color:#f3b72f6b;background:#0a0907;color:var(--amber-bright)}.guess-control .skip-button:hover,.guess-control .skip-button:focus-visible{border-color:var(--amber);color:var(--bone);outline:none}.guess-control button:disabled{border-color:#b99d6866;background:#37312b;color:#f5e7c49e;cursor:default}.missed-section{display:grid;gap:10px;margin-top:18px}.missed-section h2{margin:0;color:var(--amber-bright);font-size:.92rem;font-weight:800;text-transform:uppercase}.missed-section.perfect-section{justify-items:center;padding:18px 0 4px}.missed-section.perfect-section h2{color:var(--bone);font-family:Anton,Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(2.3rem,8vw,4.5rem);font-weight:400;line-height:.9;text-shadow:1px 1px 0 var(--danger),3px 3px 0 #080705}.missed-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.missed-card{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:7px;border:1px solid rgba(243,183,47,.32);border-radius:6px;background:#080705bd}.missed-card img{width:54px;height:42px;border-radius:4px;object-fit:cover}.missed-card div{display:grid;min-width:0;gap:2px}.missed-card.more-misses{grid-template-columns:1fr;min-height:58px}.missed-card strong,.missed-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.missed-card strong{color:var(--bone);font-size:.98rem;line-height:1}.missed-card span{color:var(--muted);font-size:.84rem;font-weight:700}.results-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:18px}.results-actions .start-button{margin-top:0}.guess-form.correct input{border-color:#ffd15db3;background:#17120b;color:var(--amber-bright)}.guess-form.wrong input{border-color:#f04432bf;background:#1e0b09;color:var(--wrong)}.result-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:10px;min-height:48px;margin-top:12px}.result{min-height:24px;margin:0;color:var(--amber-bright);font-size:.96rem;font-weight:800;opacity:0}.result.visible{opacity:1}.next-button{min-width:92px;min-height:40px;border:0;border:2px solid var(--amber);border-radius:6px;cursor:pointer;font-size:.96rem;font-weight:800;text-transform:uppercase}.next-button:disabled{visibility:hidden}.enter-icon{width:1em;height:1em;flex:0 0 auto}.empty-state{width:min(460px,100%);padding:24px}.empty-state h1{margin-bottom:10px}.empty-state p{margin:0;color:var(--muted)}@media(max-width:840px){.app{align-items:start;padding:14px}.setup-shell,.results-shell{padding:16px}.topbar{align-items:flex-start}.results-header{display:grid;justify-items:center;gap:14px}.results-score{justify-items:center}.stats{gap:12px}.bottom-panel{grid-template-columns:1fr;gap:14px}.bottom-panel.without-hints{grid-template-columns:minmax(0,420px)}.answer-panel{min-height:126px}}@media(max-width:560px){.setup-header,.topbar{display:grid;align-items:start}.setup-header{justify-content:center;justify-items:center;padding-top:72px}.wordmark-mark{width:58px;height:58px;top:-50px}.stats{width:100%;justify-content:space-between}.difficulty-control{min-height:42px}.difficulty-control button{font-size:.84rem}.mode-grid{grid-template-columns:1fr}.mode-grid button{min-height:54px}.guess-control,.result-row,.results-actions{grid-template-columns:1fr}.image-fact{min-height:62px;padding:10px 12px 34px;font-size:.84rem}.next-button,.guess-control button,.secondary-button{width:100%}.missed-list{grid-template-columns:1fr}}
