:root{--stone: #cfc4ab;--stone-dim: #94896f;--stone-faint: rgba(207, 196, 171, .4);--ember: #ffb45c;--ember-deep: #b06a24;--blood: #c8503c;--ink: #0b0907;--slab-top: #3a342b;--slab-bottom: #211d17;--slab-line: rgba(0, 0, 0, .5);--slab-glint: rgba(224, 196, 148, .14);--bronze-top: #a9752f;--bronze-mid: #7a4d1d;--bronze-bottom: #5c3814;--font-display: "Cinzel", "Trajan Pro", "Optima", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--font-ui: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, "Times New Roman", serif;--grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23g)' opacity='0.4'/%3E%3C/svg%3E");--chip: polygon(12px 0, 100% 0, 100% calc(100% - 12px) , calc(100% - 12px) 100%, 0 100%, 0 12px);--chip-small: polygon(7px 0, 100% 0, 100% calc(100% - 7px) , calc(100% - 7px) 100%, 0 100%, 0 7px);--chip-tablet: polygon(20px 0, calc(100% - 20px) 0, 100% 20px, 100% calc(100% - 20px) , calc(100% - 20px) 100%, 20px 100%, 0 calc(100% - 20px) , 0 20px);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;overflow:hidden;background:var(--ink);color:var(--stone);font-family:var(--font-ui);overscroll-behavior:none}#app{position:fixed;inset:0}#scene{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}#ui{position:absolute;inset:0;pointer-events:none}#boot{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:var(--grain),radial-gradient(circle at 50% 45%,#241d14,#0b0907 72%);background-blend-mode:overlay,normal;z-index:50;transition:opacity .8s ease}#boot.hidden{opacity:0;pointer-events:none}.boot-crest{width:46px;height:46px;transform:rotate(45deg);background:linear-gradient(135deg,var(--bronze-top),var(--bronze-bottom));box-shadow:0 0 30px #ffaa5066,inset 0 2px #ffdca073,inset 0 -4px 8px #0009;animation:smoulder 2.6s ease-in-out infinite}@keyframes smoulder{0%,to{box-shadow:0 0 18px #ffaa5040,inset 0 2px #ffdca073,inset 0 -4px 8px #0009}50%{box-shadow:0 0 40px #ffaa508c,inset 0 2px #ffdca099,inset 0 -4px 8px #0009}}.boot-title{font-family:var(--font-display);font-size:clamp(24px,6vw,44px);letter-spacing:.3em;text-indent:.3em;color:var(--stone);text-shadow:0 -2px 1px rgba(0,0,0,.9),0 2px 1px rgba(255,225,180,.12),0 0 34px rgba(255,160,70,.3)}.boot-bar{width:min(320px,62vw);height:8px;background:linear-gradient(180deg,#100d0a,#1d1913);box-shadow:inset 0 2px 4px #000000e6,inset 0 -1px 0 var(--slab-glint);clip-path:var(--chip-small);overflow:hidden}.boot-bar-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--ember-deep),var(--ember));box-shadow:0 0 14px #ffaa50b3;transition:width .3s ease}.boot-hint{font-size:13px;letter-spacing:.14em;font-style:italic;color:var(--stone-dim)}.panel{position:absolute;inset:0;display:none;pointer-events:none}.panel.visible{display:flex}.panel .btn,.panel input,.panel select,.panel .segmented{pointer-events:auto}.panel-menu,.panel-settings{flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:calc(24px + var(--safe-top)) 20px calc(24px + var(--safe-bottom));background:radial-gradient(ellipse at 50% 42%,#0b090785,#080604ed 78%);overflow-y:auto}.game-title{margin:0;font-family:var(--font-display);font-size:clamp(30px,8vw,60px);font-weight:700;letter-spacing:.18em;text-indent:.18em;color:#ddd2b6;text-shadow:0 -2px 1px rgba(0,0,0,.95),0 2px 1px rgba(255,228,185,.14),0 0 44px rgba(255,160,70,.28)}.title-rule{position:relative;width:min(320px,72vw);height:12px;background:linear-gradient(90deg,transparent,rgba(196,158,100,.55) 18%,rgba(196,158,100,.55) 82%,transparent) center / 100% 1px no-repeat}.title-rule:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;transform:translate(-50%,-50%) rotate(45deg);background:linear-gradient(135deg,#d3a463,var(--bronze-bottom));box-shadow:0 0 10px #ffaa5080}.game-subtitle{margin:-4px 0 12px;font-size:clamp(12px,3vw,15px);letter-spacing:.14em;color:var(--stone-dim);font-style:italic}.menu-actions{display:flex;flex-direction:column;gap:10px;width:min(340px,84vw)}.menu-quick{display:flex;flex-direction:column;gap:8px;width:min(340px,84vw);margin-top:12px}.menu-record{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:16px}.menu-record[hidden]{display:none}.record-heading{font-family:var(--font-display);font-size:12px;letter-spacing:.26em;text-indent:.26em;color:var(--stone-dim)}.record-row{display:flex;gap:26px}.record-cell{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:64px}.record-value{font-family:var(--font-display);font-size:22px;color:#ddd2b6;font-variant-numeric:tabular-nums;text-shadow:0 -1px 1px rgba(0,0,0,.9),0 1px 0 rgba(255,225,180,.12)}.record-label{font-size:11px;letter-spacing:.14em;color:var(--stone-dim)}.menu-resources{display:flex;gap:18px;margin-top:4px;pointer-events:auto;font-size:12px;letter-spacing:.08em}.menu-resources a{color:var(--stone-dim);text-underline-offset:3px;transition:color .18s ease}.menu-resources a:hover,.menu-resources a:focus-visible{color:var(--ember)}.seo-fallback{position:fixed;inset:0;z-index:100;overflow-y:auto;padding:12vh max(24px,calc((100vw - 720px)/2));background:radial-gradient(circle at 50% 20%,#241d14,#0b0907 72%);color:var(--stone);line-height:1.65}.seo-fallback h1{font-family:var(--font-display);color:#ddd2b6}.seo-fallback nav{display:flex;flex-wrap:wrap;gap:20px}.seo-fallback a{color:var(--ember)}.panel-settings h2,.card h2{margin:0 0 8px;font-family:var(--font-display);font-weight:700;letter-spacing:.2em;text-indent:.2em;font-size:clamp(20px,5vw,28px);color:#ddd2b6;text-shadow:0 -2px 1px rgba(0,0,0,.9),0 2px 1px rgba(255,225,180,.12)}.settings-list{display:flex;flex-direction:column;gap:10px;width:min(440px,90vw);margin-bottom:12px}.settings-row{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px 12px;padding:11px 16px;background-color:#262119;background-image:var(--grain),linear-gradient(180deg,#3a342beb,#1e1a15f0);background-blend-mode:overlay,normal;background-size:140px 140px,100% 100%;clip-path:var(--chip-small);box-shadow:inset 0 1px 0 var(--slab-glint),inset 0 -2px 5px #0000008c}.settings-label{flex:1;font-size:14px;letter-spacing:.06em;color:var(--stone)}.settings-value{width:44px;text-align:right;font-size:13px;color:var(--stone-dim);font-variant-numeric:tabular-nums}.language-select{min-width:180px;padding:9px 34px 9px 12px;font-family:var(--font-ui);font-size:14px;color:var(--stone);color-scheme:dark;background:linear-gradient(180deg,#332d24,#1c1914);border:1px solid rgba(196,160,102,.34);border-radius:2px;cursor:pointer}.language-select:focus-visible{outline:2px solid var(--ember);outline-offset:2px}[dir=rtl] .settings-row{direction:rtl}[dir=rtl] .language-select{padding:9px 12px 9px 34px}.btn{position:relative;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);background-color:#2b2620;background-image:var(--grain),linear-gradient(180deg,var(--slab-top),var(--slab-bottom));background-blend-mode:overlay,normal;background-size:140px 140px,100% 100%;border:0;padding:14px 24px;clip-path:var(--chip);box-shadow:inset 0 1px 0 var(--slab-glint),inset 0 -3px 7px #000000a6,inset 0 0 0 1px #00000059;text-shadow:0 -1px 1px rgba(0,0,0,.85),0 1px 0 rgba(230,205,160,.1);cursor:pointer;transition:color .18s ease,filter .2s ease,transform .1s ease}.btn:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 65% 140% at 0% 50%,rgba(255,170,75,.24),transparent 70%);opacity:0;transition:opacity .25s ease;pointer-events:none}.btn:hover:not(:disabled){color:#ffdca8;filter:brightness(1.12);text-shadow:0 0 14px rgba(255,180,92,.55),0 -1px 1px rgba(0,0,0,.85)}.btn:hover:not(:disabled):before{opacity:1}.btn:active:not(:disabled){transform:translateY(1px);filter:brightness(.94)}.btn:disabled{opacity:.35;cursor:default}.btn-primary{background-color:#7a4d1d;background-image:var(--grain),linear-gradient(180deg,var(--bronze-top) 0%,var(--bronze-mid) 48%,var(--bronze-bottom) 100%);color:#ffe7bd;box-shadow:inset 0 1px #ffd69673,inset 0 -3px 8px #1e0c0099,inset 0 0 0 1px #28120080,0 0 26px #ff963224;text-shadow:0 -1px 1px rgba(50,20,0,.9),0 0 16px rgba(255,180,90,.3)}.btn-primary:hover:not(:disabled){color:#fff3da}.btn-primary:after,.btn-ghost:after,.btn-action:after{content:"";position:absolute;inset:4px;clip-path:var(--chip-small);box-shadow:inset 0 0 0 1px #0006,inset 0 1px #e6cda014;pointer-events:none}.btn-primary:after{box-shadow:inset 0 0 0 1px #2d14008c,inset 0 1px #ffdca024}.segmented{display:flex;gap:5px}.btn-segment{padding:8px 10px;font-size:11px;letter-spacing:.04em;clip-path:var(--chip-small)}.btn-segment.active{background-color:#7a4d1d;background-image:var(--grain),linear-gradient(180deg,var(--bronze-top),var(--bronze-bottom));color:#ffe7bd;box-shadow:inset 0 1px #ffd69666,inset 0 -2px 5px #1e0c0099,0 0 14px #ff963238;text-shadow:0 -1px 1px rgba(50,20,0,.9)}.slider{flex:2;-webkit-appearance:none;appearance:none;height:7px;background:linear-gradient(180deg,#12100c,#221d16);box-shadow:inset 0 2px 4px #000000e6,inset 0 -1px 0 var(--slab-glint);clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px);outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:19px;height:19px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#e7b872,#8a5820 62%,#4a2c0d);box-shadow:0 0 12px #ffaa4673,inset 0 -2px 3px #0000008c;cursor:pointer}.slider::-moz-range-thumb{width:19px;height:19px;border:none;border-radius:50%;background:radial-gradient(circle at 34% 28%,#e7b872,#8a5820 62%,#4a2c0d);box-shadow:0 0 12px #ffaa4673,inset 0 -2px 3px #0000008c;cursor:pointer}.panel-hud{flex-direction:column;justify-content:space-between;padding:calc(12px + var(--safe-top)) 14px calc(14px + var(--safe-bottom));transition:opacity .3s ease}.panel-hud.dimmed{opacity:.25}.hud-top{display:flex;align-items:center;gap:10px}.hud-status{flex:1;font-family:var(--font-display);font-size:14px;letter-spacing:.1em;color:var(--stone-dim);text-shadow:0 2px 8px rgba(0,0,0,.9)}.hud-check{padding:6px 14px;font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.22em;text-indent:.22em;color:#ffb0a0;background:linear-gradient(180deg,#60160ce6,#340a05eb);clip-path:var(--chip-small);box-shadow:inset 0 1px #ff826440,inset 0 -2px 5px #0009;text-shadow:0 -1px 1px rgba(0,0,0,.9);animation:alarm 1.1s ease-in-out infinite}@keyframes alarm{0%,to{opacity:.75;filter:brightness(1)}50%{opacity:1;filter:brightness(1.3) drop-shadow(0 0 12px rgba(255,70,45,.6))}}.btn-icon{padding:10px 14px;display:flex;align-items:center;gap:4px}.pause-bar{display:block;width:4px;height:13px;background:currentColor;box-shadow:0 -1px 1px #000000b3}.hud-history{align-self:center;max-width:90vw;font-size:12px;letter-spacing:.1em;color:var(--stone-faint);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 6px rgba(0,0,0,.9)}.hud-bottom{display:flex;gap:10px;justify-content:center}.btn-action{padding:11px 22px;font-size:12px;min-width:130px}.panel-modal{align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 45%,#08060499,#060403e0 80%);pointer-events:auto}.card{position:relative;display:flex;flex-direction:column;gap:10px;width:min(370px,88vw);padding:30px 28px;background-color:#221d17;background-image:var(--grain),linear-gradient(165deg,#322c24,#1a1611);background-blend-mode:overlay,normal;background-size:140px 140px,100% 100%;clip-path:var(--chip-tablet);box-shadow:inset 0 2px 0 var(--slab-glint),inset 0 -6px 18px #0009,inset 0 0 0 1px #00000080;text-align:center}.card:before{content:"";position:absolute;inset:9px;clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);box-shadow:inset 0 0 0 1px #00000073,inset 0 1px #e6cda012;pointer-events:none}.card:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#c69b5c 0 2px,#5f3f16 2px 3.5px,transparent 4.5px),radial-gradient(circle,#c69b5c 0 2px,#5f3f16 2px 3.5px,transparent 4.5px),radial-gradient(circle,#c69b5c 0 2px,#5f3f16 2px 3.5px,transparent 4.5px),radial-gradient(circle,#c69b5c 0 2px,#5f3f16 2px 3.5px,transparent 4.5px);background-repeat:no-repeat;background-size:10px 10px;background-position:22px 22px,calc(100% - 22px) 22px,22px calc(100% - 22px),calc(100% - 22px) calc(100% - 22px)}.card-row{display:flex;gap:10px}.card-row .btn{flex:1}.card-result h2{font-size:clamp(24px,6vw,34px);text-shadow:0 -2px 1px rgba(0,0,0,.95),0 2px 1px rgba(255,228,185,.14),0 0 34px rgba(255,160,70,.4)}.result-reason{margin:-4px 0 0;font-size:14px;font-style:italic;letter-spacing:.08em;color:var(--stone-dim)}.result-detail{margin:0 0 8px;font-size:12px;letter-spacing:.1em;color:var(--stone-faint)}.promotion-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn-promotion{display:flex;flex-direction:column;align-items:center;gap:3px;padding:13px 8px;font-size:12px}.promotion-glyph{font-family:var(--font-ui);font-size:30px;line-height:1;text-shadow:0 -1px 1px rgba(0,0,0,.9),0 2px 3px rgba(0,0,0,.6)}.promotion-label{letter-spacing:.08em}.toast{position:absolute;left:50%;bottom:calc(88px + var(--safe-bottom));transform:translate(-50%,12px);padding:11px 20px;font-size:13px;letter-spacing:.08em;font-style:italic;color:var(--stone);background-color:#262119;background-image:var(--grain),linear-gradient(180deg,#3a342bf5,#1c1813f7);background-blend-mode:overlay,normal;clip-path:var(--chip-small);box-shadow:inset 0 1px 0 var(--slab-glint),inset 0 -2px 5px #0009;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease}.toast.visible{opacity:1;transform:translate(-50%)}@media(max-height:480px){.game-title{font-size:26px}.game-subtitle,.title-rule{display:none}.menu-actions .btn{padding:9px 16px}.settings-row{padding:6px 12px}.btn-action{padding:8px 16px}.menu-record{margin-top:8px}.record-value{font-size:17px}}
