:root{--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px)}*{box-sizing:border-box}html,body{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;height:100%;margin:0;overflow:hidden}html,body,button{touch-action:manipulation}#app,#app canvas{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}.hidden{display:none!important}#loading{z-index:50;place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}.gp-focus{outline-offset:3px}.screen#title{padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#title>*{position:relative}#title .menu{pointer-events:auto;flex-direction:column;display:flex}#title .copyright{left:0;right:0;bottom:calc(10px + var(--safe-b));text-align:center;position:absolute}.modal{z-index:10;padding:calc(12px + var(--safe-t)) calc(12px + var(--safe-r)) calc(12px + var(--safe-b)) calc(12px + var(--safe-l));place-items:center;display:grid;position:absolute;inset:0}.card{flex-direction:column;align-items:stretch;width:min(26em,100%);max-height:100%;display:flex;overflow:auto}.row{justify-content:space-between;align-items:center;gap:1em;display:flex}.keys{grid-template-columns:auto 1fr;align-items:center;gap:.5em 1em;display:grid}.keys dt{text-align:right}.keys dd{margin:0}#hud{pointer-events:none;position:absolute;inset:0}#hud .score{top:calc(12px + var(--safe-t));left:calc(16px + var(--safe-l));position:absolute}#hud .hints{bottom:calc(12px + var(--safe-b));left:calc(16px + var(--safe-l));gap:1em;display:flex;position:absolute}#hud .hints span{align-items:center;gap:.35em;display:flex}[data-device=touch] #hud .hints{display:none}.gl{vertical-align:middle;border-radius:6px;justify-content:center;align-items:center;min-width:1.7em;height:1.7em;margin:0 .08em;padding:0 .35em;font:700 .8em/1 system-ui,sans-serif;display:inline-flex}.gl svg{width:1.3em;height:1.3em}.gl-face{border-radius:50%;width:1.7em;padding:0}.gl-pill{border-radius:999px;padding:0 .6em}.gl-stick b{margin-left:.1em;font-size:.7em}.gl-mouse{padding:0 .15em}.gl-or{opacity:.7;margin:0 .15em}#touch{pointer-events:none;touch-action:none;position:absolute;inset:0}#touch .stick{width:120px;height:120px;left:calc(40px + var(--safe-l));bottom:calc(40px + var(--safe-b));border-radius:50%;position:absolute}#touch .stick.on{bottom:auto}#touch .knob{border-radius:50%;width:50px;height:50px;position:absolute;top:35px;left:35px}#touch .tbtn{pointer-events:auto;border-radius:50%;width:76px;min-width:0;height:76px;padding:0;position:absolute}#touch .slot-0{width:92px;height:92px;right:calc(24px + var(--safe-r));bottom:calc(32px + var(--safe-b))}#touch .slot-1{right:calc(130px + var(--safe-r));bottom:calc(24px + var(--safe-b))}#touch .slot-2{right:calc(36px + var(--safe-r));bottom:calc(138px + var(--safe-b))}#touch .slot-3{right:calc(124px + var(--safe-r));bottom:calc(118px + var(--safe-b))}#touch .tbtn.pause{width:46px;height:46px;top:calc(10px + var(--safe-t));bottom:auto;right:calc(12px + var(--safe-r))}:root{--ink:#2b2118;--ink-2:#5a4a3a;--paper:#f8efdf;--paper-2:#efe2c9;--accent:#ff7a2a;--accent-2:#ffa25c;--accent-ink:#fff;--cyan:#5ff4ff;--good:#57e08f;--warn:#ffc23a;--bad:#ff5a48;--panel:#18130f9e;--panel-line:#fff0dc24;--shade:#100c0980;--font:"Hiragino Maru Gothic ProN", "M PLUS Rounded 1c", "Nunito", "Arial Rounded MT Bold", system-ui, sans-serif}html,body{color:var(--ink);font:16px/1.5 var(--font);background:#120e0b}#loading{color:#f8efdf;letter-spacing:.08em;background:radial-gradient(at 50% 60%,#3a2c20,#120e0b 70%)}#focus-hint{left:50%;bottom:calc(6vh + var(--safe-b,0px));pointer-events:none;color:#fff;text-align:center;background:#0009;border:1px solid #ffffff40;border-radius:999px;max-width:min(90vw,36em);padding:.5em 1.2em;font-size:clamp(13px,1.6vw,16px);animation:2.4s ease-in-out infinite focus-blink;position:absolute;transform:translate(-50%)}@keyframes focus-blink{50%{opacity:.5}}#paddiag{pointer-events:none;z-index:60;color:#fff;white-space:pre-wrap;background:#000000b3;max-width:92vw;margin:0;padding:6px 8px;font:11px/1.4 ui-monospace,Menlo,monospace;position:absolute;top:8px;left:8px}button{font:inherit;color:var(--ink);background:var(--paper);cursor:pointer;letter-spacing:.04em;border:0;border-radius:12px;min-width:12em;padding:.62em 1.5em;font-weight:800;transition:transform 80ms;box-shadow:0 3px #c9b28c,0 6px 14px #00000040}button.gp-focus{background:var(--accent);color:var(--accent-ink);box-shadow:0 3px #b8501a,0 6px 14px #0000004d}@media (hover:hover) and (pointer:fine){button:hover{background:var(--accent);color:var(--accent-ink);box-shadow:0 3px #b8501a,0 6px 14px #0000004d}}button:active{transform:translateY(2px);box-shadow:0 1px #c9b28c}button:disabled{opacity:.45;cursor:default}.gp-focus{outline:3px solid #fff}input[type=range]{width:10em;accent-color:var(--accent)}select{font:inherit;background:#fffaf0;border:1px solid #0002;border-radius:8px;padding:.25em .5em}.screen#title{padding-left:calc(6vw + var(--safe-l));justify-content:center;align-items:flex-start}#title:before{content:"";pointer-events:none;background:linear-gradient(90deg,#120d099e,#120d0959 60%,#120d0900);width:min(62vw,640px);position:absolute;top:0;bottom:0;left:0}#title h1{color:#fff3df;letter-spacing:.02em;text-shadow:0 2px #d8692a,0 4px #b4541f,0 6px #7b3712,0 10px 18px #0000008c;margin:0;font-size:clamp(40px,7.4vw,92px);font-weight:900;line-height:1.02}#title h1:after{content:"FOSSIL HORIHORI";letter-spacing:.42em;color:var(--cyan);text-shadow:0 0 10px #5ff4ff99;margin-top:.5em;font-size:.2em;font-weight:700;display:block}html[lang=en] #title h1:after{content:"フ カ セ キ ホ リ ホ リ";letter-spacing:.2em}#title .tagline{color:#fbecd6;text-shadow:0 1px 3px #000000b3;max-width:26em;margin:.9em 0 1.6em;font-weight:700}#title .menu{align-items:stretch;gap:.7em}#title .menu button{text-align:left;min-width:15em;padding-left:1.4em}#title .menu button:before{content:"▸";color:var(--accent);margin-right:.6em}#title .menu button.gp-focus:before,#title .menu button:hover:before{color:#fff}#title .copyright{color:#fff5e6e6;text-shadow:0 1px 2px #0009;letter-spacing:.04em;font-size:12px}#title .copyright .build{opacity:.7;letter-spacing:.06em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:10px;display:block}.modal{background:var(--shade)}.card{background:linear-gradient(180deg, var(--paper), var(--paper-2));border:1px solid #d9c49e;border-radius:18px;gap:.6em;padding:1.3em 1.5em;position:relative;box-shadow:inset 0 2px #fff8,0 14px 44px #0006}.card:before{content:"";pointer-events:none;border:1.5px dashed #785a3c38;border-radius:12px;position:absolute;inset:8px}.card h2{text-align:center;letter-spacing:.06em;margin:0 0 .3em}.card button{min-width:0}.keys{margin:.4em 0 .8em}#m-howto .card{width:min(34em,100%)}#m-howto .tips{color:var(--ink-2);margin:.2em 0 .6em;padding-left:1.2em;font-size:14px}#m-howto .tips li{margin:.2em 0}.card.select{width:min(30em,100%)}.sites{flex-direction:column;gap:.55em;margin-bottom:.4em;display:flex}.site-card{text-align:left;border-radius:14px;align-items:center;gap:.9em;padding:.6em .9em;display:flex}.site-card .num{background:var(--ink);width:2em;height:2em;color:var(--paper);border-radius:50%;flex:none;place-items:center;font-size:.95em;display:grid}.site-card .sc-body{flex-direction:column;flex:1;line-height:1.3;display:flex}.site-card .sub{opacity:.75;font-size:.78em;font-weight:600}.site-card .grade{text-align:center;flex:none;width:1.6em;font-size:1.3em;font-style:normal;font-weight:900}.grade[data-g=S],.r-grade[data-g=S]{color:#e0a800}.grade[data-g=A],.r-grade[data-g=A]{color:#e0582a}.grade[data-g=B],.r-grade[data-g=B]{color:#2f8fd8}.grade[data-g=C],.r-grade[data-g=C]{color:#6c7a62}.site-card.gp-focus .grade,.site-card:hover .grade{color:#fff}.modal.side{background:linear-gradient(90deg,#0000 40%,#100c0973);justify-items:end}.card.result{width:min(24em,100%);margin-right:calc(3vw + var(--safe-r))}.r-site{text-align:center;color:var(--ink-2);letter-spacing:.1em;font-weight:700}.r-name{font-size:1.45em;line-height:1.25}.r-grade{background:#fffaf0eb;border:4px solid;border-radius:50%;place-items:center;width:3.4em;height:3.4em;font-size:1.3em;display:grid;position:absolute;top:-.5em;right:.4em;box-shadow:0 4px 12px #00000040}.r-grade b{font-size:1.9em;font-weight:900;line-height:1}.r-stats{grid-template-columns:auto 1fr;align-items:center;gap:.45em .8em;margin:.6em 0 .2em;font-weight:700;display:grid}.r-stats dt{color:var(--ink-2);font-size:.9em}.r-stats dd{align-items:center;gap:.6em;margin:0;display:flex}.r-stats .bar{background:#5a46322e;border-radius:5px;flex:1;height:10px;display:block;overflow:hidden}.r-stats .bar b{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:5px;width:0;height:100%;display:block}.r-stats dd span{text-align:right;font-variant-numeric:tabular-nums;width:3.2em}.r-score{text-align:center;margin:.5em 0 0;font-weight:800}.r-score b{font-variant-numeric:tabular-nums;margin-left:.2em;font-size:1.6em}.r-new{color:var(--accent);font-size:.85em;font-style:normal;display:block}.r-comment{text-align:center;color:var(--ink-2);margin:.2em 0 .4em;font-size:.92em}.r-btns{flex-direction:column;gap:.5em;display:flex}.card.fail{text-align:center;width:min(22em,100%)}.card.fail p{color:var(--ink-2);margin:0 0 .6em}.card.fail .f-hint{color:#2a7f8c;margin:0 0 .2em;font-size:.85em}.card.fail .f-easy{background:var(--cyan);color:#06232a;box-shadow:0 3px #2aa7b8,0 6px 14px #00000040}.diff-btn{background:#f1e6cf;font-size:.9em}.diff-btn[data-d=easy]{color:#1f7f8c}.diff-btn[data-d=hard]{color:#c0462a}#m-settings .diff-note{color:var(--ink-2);margin:-.3em 0 .2em;font-size:12px}#intro{text-align:center;pointer-events:none;color:#fff7e8;text-shadow:0 2px 10px #0009;white-space:nowrap;position:absolute;top:22%;left:50%;transform:translate(-50%)}#intro small{letter-spacing:.3em;color:var(--cyan);font-weight:700}#intro h2{text-shadow:0 3px #b4541f,0 6px 18px #00000080;margin:.1em 0;font-size:clamp(30px,6vw,64px);font-weight:900}#intro p{white-space:normal;max-width:80vw;margin:0;font-weight:700}#dig{pointer-events:none;color:#fff6ea;position:absolute;inset:0}#dig .dig-top{top:calc(10px + var(--safe-t));left:calc(12px + var(--safe-l));right:calc(64px + var(--safe-r));justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute}#dig .site{background:var(--panel);border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(6px);border-radius:12px;flex-direction:column;padding:6px 14px 7px;display:flex}#dig .site-name{letter-spacing:.06em;font-size:16px}#dig .site-sub{opacity:.75;max-width:22em;font-size:11px}#dig .meters{background:var(--panel);border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(6px);border-radius:12px;flex-direction:column;gap:4px;min-width:230px;padding:8px 12px;display:flex}#dig .meter{grid-template-columns:4.6em 1fr 3em;align-items:center;gap:8px;font-size:12px;font-weight:700;display:grid}html[lang=en] #dig .meter{grid-template-columns:5.4em 1fr 3em}#dig .meter .bar{background:#ffffff24;border-radius:4px;height:8px;position:relative;overflow:visible}#dig .meter .bar i{border-radius:4px;position:absolute;top:0;bottom:0;left:0}#dig .meter .bar em{opacity:.8;background:#fff;border-radius:1px;width:2px;position:absolute;top:-3px;bottom:-3px}#dig .meter .mv{text-align:right;font-variant-numeric:tabular-nums}#dig .m-bat .bar i{background:linear-gradient(90deg,#4fd27f,#8cf0a8)}#dig .m-bat.low .bar i{background:var(--bad)}#dig .m-bat.charging .bar i{background:linear-gradient(90deg, #4fd27f, var(--cyan))}#dig .m-bat.charging .ml:after{content:" ⚡";color:var(--cyan)}#dig .site-name .diff{background:var(--cyan);color:#06232a;vertical-align:2px;border-radius:999px;margin-left:.6em;padding:1px 7px;font-size:11px;font-style:normal}#dig .m-int .bar i{background:linear-gradient(90deg,#f0c060,#ffe2a0)}#dig .m-int.low .bar i{background:var(--bad)}#dig .m-int.low .mv{color:#ff9a8a}#dig .m-exp .bar i{background:linear-gradient(90deg, #4ac8e8, var(--cyan))}#dig .m-exp.ok .mv{color:var(--cyan)}#dig .toolbar{left:50%;bottom:calc(12px + var(--safe-b));pointer-events:auto;background:var(--panel);border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(6px);border-radius:16px;gap:8px;padding:6px;display:flex;position:absolute;transform:translate(-50%)}#dig .tool{color:#fff3e2;width:76px;min-width:0;box-shadow:none;background:#ffffff0f;border:1.5px solid #0000;border-radius:11px;flex-direction:column;align-items:center;gap:1px;padding:4px 4px 5px;font-size:11px;display:flex;position:relative}#dig .tool .ti svg{width:30px;height:30px;display:block}#dig .tool .tk{font-size:10px;position:absolute;top:2px;right:3px}#dig .tool .tk .gl{min-width:1.5em;height:1.5em}#dig .tool.on{border-color:var(--accent);background:#ff7a2a52}#dig .tool.scan{border-color:#5ff4ff59}#dig .tool.rec{border-color:var(--cyan);background:#5ff4ff2e}#dig .tool.rec:after{content:"!";background:var(--cyan);color:#06232a;border-radius:50%;place-items:center;width:18px;height:18px;font-size:12px;font-weight:900;display:grid;position:absolute;top:-8px;left:-6px}#dig .tool.scan.off{opacity:.4}@media (hover:hover) and (pointer:fine){#dig .tool:hover{color:#fff;box-shadow:none;background:#ff7a2a80}}#dig .ai{left:calc(12px + var(--safe-l));bottom:calc(86px + var(--safe-b));-webkit-backdrop-filter:blur(6px);background:#0a1216b8;border:1px solid #5ff4ff59;border-radius:14px;align-items:flex-start;gap:10px;max-width:min(420px,60vw);padding:9px 13px 10px 10px;display:flex;position:absolute;box-shadow:0 0 18px #5ff4ff1f}#dig .ai.gone{visibility:hidden}#dig .ai-face{background:#05080b;border:2px solid #f3eee4;border-radius:10px;flex:none;justify-content:center;align-items:center;gap:6px;width:36px;height:30px;display:flex}#dig .ai-face i{background:var(--cyan);width:6px;height:10px;box-shadow:0 0 6px var(--cyan);border-radius:3px}#dig .ai[data-mood=warn]{border-color:#ffc23a99}#dig .ai[data-mood=warn] .ai-face i{background:var(--warn);box-shadow:0 0 6px var(--warn)}#dig .ai[data-mood=bad]{border-color:#ff5a48b3}#dig .ai[data-mood=bad] .ai-face i{background:var(--bad);box-shadow:0 0 6px var(--bad);height:4px}#dig .ai[data-mood=good] .ai-face i{border-radius:6px 6px 0 0;height:5px}#dig .ai-text{color:#e8fbff;min-height:1.5em;margin:0;font-size:14px;font-weight:600;line-height:1.5}#dig .extract{right:calc(14px + var(--safe-r));bottom:calc(86px + var(--safe-b));pointer-events:auto;background:var(--cyan);color:#06232a;align-items:center;gap:.5em;min-width:0;display:flex;position:absolute;box-shadow:0 3px #2aa7b8,0 0 18px #5ff4ff66}#dig .extract.glow{background:#a9fbff}#dig .hints{right:calc(14px + var(--safe-r));bottom:calc(18px + var(--safe-b));text-shadow:0 1px 3px #000c;gap:1em;font-size:12px;display:flex;position:absolute}#dig .hints span{align-items:center;gap:.35em;display:flex}[data-device=touch] #dig .hints{display:none}#dig .gauge{will-change:transform;align-items:flex-end;gap:6px;display:flex;position:absolute;top:0;left:0}#dig .g-bar{background:#00000073;border:1.5px solid #ffffffbf;border-radius:8px;width:16px;height:120px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000080}#dig .g-zone{opacity:.85;position:absolute;inset:0}#dig .g-fill{background:#fff;border-radius:3px 3px 0 0;height:0;position:absolute;bottom:0;left:3px;right:3px;box-shadow:0 0 8px #fff}#dig .gauge.over .g-fill{box-shadow:0 0 10px var(--bad);background:#ffd0c8}#dig .gauge.od .g-bar{border-color:var(--bad)}#dig .g-mark{background:#fff;height:2px;position:absolute;left:-2px;right:-2px;transform:translateY(1px)}#dig .g-label{text-shadow:0 1px 3px #000000e6;white-space:nowrap;flex-direction:column;font-size:12px;font-weight:800;line-height:1.25;display:flex}#dig .g-label .g-p{font-size:15px}#dig .g-label .g-info{opacity:.9;font-size:11px}#dig .gauge.over .g-p{color:#ff9a8a}#dig .gauge.weak .g-p{color:#c9d3dc}#dig .pops{position:absolute;inset:0;overflow:hidden}#dig .pop{color:#fff;white-space:nowrap;text-shadow:0 2px #00000073,0 0 10px #0006;font-size:22px;font-weight:900;position:absolute;top:0;left:0}#dig .pop.bad{color:#ff7a6a;font-size:26px}#dig .pop.warn{color:var(--warn)}#dig .pop.good{color:#7dffb0;font-size:24px}#dig .pop.dim{color:#d6dde6;font-size:18px}.gl{color:#fff;background:#1e1a16e0}.card .gl{background:#3a3028}#touch .stick{opacity:.55;background:#ffffff2e;border:2px solid #fff6}#touch .stick.on{opacity:1}#touch .knob{background:#ffffffbf}#touch .tbtn{background:#fff4e4db;font-size:15px;box-shadow:0 3px #c9b28c,0 6px 14px #0000004d}#touch .tbtn.on{background:var(--accent);color:#fff}#touch .tbtn.pause{font-size:16px}#touch .slot-0{bottom:calc(96px + var(--safe-b))}[data-device=touch] #dig .toolbar{left:calc(10px + var(--safe-l));transform:none}[data-device=touch] #dig .ai{bottom:calc(84px + var(--safe-b));max-width:min(100vw - 150px,46vw)}@media (max-aspect-ratio:1){[data-device=touch] #dig .ai{max-width:calc(100vw - 150px)}}[data-device=touch] #dig .extract{bottom:calc(210px + var(--safe-b))}@media (max-width:720px){#dig .hints{display:none}#dig .dig-top{right:calc(60px + var(--safe-r));flex-direction:column}#dig .meters{width:100%;min-width:0}#dig .site-sub{display:none}#dig .tool{width:60px;font-size:10px}#dig .tool .ti svg{width:24px;height:24px}#dig .ai-text{font-size:12.5px}.card.result{margin:0 auto;padding:1em 1.2em;font-size:14px}.card.result .r-stats{gap:.3em .8em;margin:.3em 0 0}.card.result .r-btns{flex-flow:wrap}.card.result .r-btns button{flex:30%;padding:.55em .4em}.modal.side{background:linear-gradient(#0000 30%,#100c0980);place-items:end center}.screen#title{padding-left:calc(18px + var(--safe-l))}#title:before{width:100%}}@media (max-height:480px){#title h1{font-size:clamp(30px,8vh,56px)}#title .tagline{margin:.5em 0 .8em;font-size:13px}#title .menu{gap:.4em}button{padding:.45em 1.4em}#dig .meters{gap:2px;padding:5px 10px}#dig .ai{bottom:calc(70px + var(--safe-b))}.card.result{font-size:13px}}
