:root{--theme-accent:#c92132;--theme-accentDark:#941725;--theme-surface:#fff;--theme-soft:#fff2f3;--theme-border:#edc9ce;--theme-text:#342d35;color:var(--theme-text);background:repeating-linear-gradient(0deg,var(--theme-accent) 0 24px,var(--theme-surface) 24px 48px);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;font-weight:500;line-height:1.7}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #245d78}h1:focus{outline:none}h1,h2,p{margin:0}button{min-height:48px}img{max-width:100%}button:hover{filter:brightness(.96)}:root[data-stripes=false]{background:var(--theme-soft)}.app-shell{background:var(--theme-surface);border-top:6px solid var(--theme-accent);max-width:560px;min-height:100svh;margin:auto;box-shadow:0 0 60px #78233118}.brand{border-bottom:1px solid var(--theme-border);letter-spacing:1.5px;align-items:center;gap:9px;padding:20px 24px;font-size:13px;font-weight:900;display:flex}.brand-mark{color:var(--theme-accent);font-size:27px;line-height:1}.event-label{letter-spacing:1px;color:#746064;margin-left:auto;font-size:10px}main{padding:32px 24px 20px}h1{letter-spacing:.02em;text-wrap:balance;font-size:clamp(24px,5.8vw,31px);font-weight:850;line-height:1.55}h2{font-size:21px}.eyebrow{letter-spacing:.12em;color:#876168;margin-bottom:16px;font-size:12px;font-weight:700}.start,.result{text-align:center}.description{color:#6b595e;white-space:pre-line;margin:14px 0 25px;font-size:15px}.hero-art{background:var(--theme-surface);border-radius:48% 48% 44% 44%;max-width:350px;height:230px;margin:0 auto 24px;position:relative;overflow:hidden}.hero-art img{object-fit:contain;width:100%;height:100%}.hero-glasses{z-index:1;font-size:90px;position:absolute;top:20px;left:34px;transform:rotate(-15deg)}.hero-bag{z-index:1;font-size:99px;position:absolute;top:57px;right:20px;transform:rotate(12deg)}.hero-hat{z-index:1;font-size:60px;position:absolute;bottom:30px;left:80px}.hero-spark{color:#d65139;font-size:49px;position:absolute;top:5px;right:55px}.hero-caption{letter-spacing:2px;font-size:10px;font-weight:900;position:absolute;bottom:17px;right:35px;transform:rotate(-9deg)}.hero-path{border:2px dashed #9ea88a;border-radius:50%;width:230px;height:170px;position:absolute;top:25px;left:10px;transform:rotate(-20deg)}.pill{border:1px solid var(--theme-border);background:var(--theme-soft);color:var(--theme-accentDark);border-radius:20px;margin-bottom:14px;padding:4px 13px;font-size:11px;font-weight:700;display:inline-block}.primary,.secondary{border:0;border-radius:14px;justify-content:center;align-items:center;gap:15px;width:100%;padding:16px;font-size:16px;font-weight:750;display:flex}.primary{background:var(--theme-accent);color:var(--theme-surface);box-shadow:0 4px 0 var(--theme-accentDark)}.primary span{font-size:23px}.secondary{background:var(--theme-soft);color:var(--theme-accentDark);border:1px solid var(--theme-border);box-shadow:none}.how-to{justify-content:center;align-items:center;gap:10px;margin:29px 0 12px;font-size:12px;font-weight:700;display:flex}.how-to b{color:var(--theme-accent);letter-spacing:1px;font-size:10px;display:block}.how-to i{color:#ad7e85;font-style:normal}.helper{color:#79666a;font-size:11px}.progress{background:var(--theme-soft);border-radius:18px;margin:22px 0;padding:18px 20px}.progress-label{justify-content:space-between;align-items:center;font-size:13px;font-weight:700;display:flex}.progress-label strong{font-size:29px;line-height:1}.progress-label small{color:#8b6870;font-size:17px}.progress-dots{gap:10px;margin-top:16px;display:flex}.progress-dots span{background:var(--theme-soft);color:#86636b;border-radius:9px;flex:1;place-items:center;height:32px;font-size:18px;display:grid}.progress-dots .filled{background:var(--theme-accent);color:var(--theme-surface)}.item-list{gap:14px;display:grid}.item-card{border:1px solid var(--theme-border);background:var(--theme-surface);border-radius:19px;gap:18px;padding:17px;display:flex}.picture{background:var(--theme-soft);border-radius:13px;flex:0 0 94px;place-items:center;min-height:110px;display:grid;position:relative}.item-emoji{font-size:56px;line-height:1.3}.item-image{object-fit:contain;width:90px;height:90px}.item-number{color:#96727a;font-size:10px;font-weight:800;position:absolute;top:6px;left:9px}.item-info{flex:1}.hint-label{letter-spacing:1.5px;color:var(--theme-accent);margin-top:6px;font-size:10px;font-weight:800}.hint{color:#6b595e;font-size:13px;line-height:1.7}.status{color:#925361;margin-top:10px;font-size:11px;font-weight:750}.is-found{border-color:var(--theme-border);background:var(--theme-soft)}.is-found .status{color:var(--theme-accent)}.is-found .picture{background:var(--theme-soft)}.scan-note{text-align:center;color:#79666a;margin:25px 0;font-size:13px}.result{padding:18px 0 30px}.result-word{letter-spacing:-1px;color:var(--theme-accent);font-size:clamp(34px,9vw,48px);font-weight:950;line-height:1.2}.result-picture{background:var(--theme-soft);border:2px dashed var(--theme-border);border-radius:50%;place-items:center;width:180px;height:180px;margin:28px auto;display:grid}.result-picture .item-emoji{font-size:100px}.result-picture .item-image{width:135px;height:135px}.result h1{font-size:25px}.trophy{margin:25px 0;font-size:100px;line-height:1.5}.celebration{background:radial-gradient(circle at 6% 12%,#e8bc61 0 4px,#0000 5px),radial-gradient(circle at 94% 32%,#c65a42 0 5px,#0000 6px)}.complete-count{color:var(--theme-accent);margin:18px 0;font-size:17px;font-weight:850}.prize{background:var(--theme-soft);border:1px solid var(--theme-border);border-radius:18px;margin:25px 0;padding:24px 12px}.prize>span{font-size:32px}.prize p{margin-top:7px;font-size:14px}.redeemed{background:var(--theme-soft);color:var(--theme-accentDark);border-radius:30px;margin-bottom:24px;padding:8px 24px;font-weight:750;display:inline-block}.dev-tools{color:#79666a;border:1px dashed #c8a8af;border-radius:12px;margin-top:30px;padding:15px;font-size:12px}.dev-tools summary{cursor:pointer;min-height:30px}.dev-tools p{margin:10px 0}.dev-tools>div{gap:9px;display:grid}.dev-tools button{padding:9px;font-size:13px}footer{text-align:center;color:#79666a;border-top:1px solid var(--theme-border);padding:25px 20px;font-size:11px}footer span{letter-spacing:2px;margin-top:8px;font-size:9px;display:block}dialog{width:380px;max-width:calc(100% - 32px);color:var(--theme-text);background:var(--theme-surface);border:0;border-radius:20px;padding:25px;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#35232c88}dialog p{margin:12px 0 22px;font-size:14px}dialog form{gap:12px;display:grid}@media (width<=360px){main{padding:26px 16px}.brand{padding:17px 16px}.item-card{gap:12px;padding:12px}.picture{flex-basis:78px}.how-to{gap:8px}}.storage-warning{color:#654419;background:#fff0cf;border:1px solid #c58a35;border-radius:12px;margin-bottom:20px;padding:16px;font-size:14px}.dev-tools a{min-height:48px;padding:9px;font-size:13px;text-decoration:none}a:focus-visible{outline-offset:4px;outline:3px solid #245d78}.app-shell{border-top:0}.app-shell:before{content:"";background:repeating-linear-gradient(0deg, var(--theme-accent) 0 8px, var(--theme-surface) 8px 16px);height:24px;display:block}.brand{color:var(--theme-accent);background:var(--theme-surface)}.hero-art{border:2px solid var(--theme-border);background:repeating-linear-gradient(0deg, var(--theme-accent) 0 16px, var(--theme-surface) 16px 32px);border-radius:24px;max-width:350px;height:clamp(250px,72vw,320px);padding:10px 22px}.hero-art img{background:var(--theme-surface);border-radius:16px;display:block}.progress{border:1px solid var(--theme-border);border-top:5px solid var(--theme-accent)}footer{background:var(--theme-surface);padding-bottom:42px;position:relative}footer:after{content:"";background:repeating-linear-gradient(0deg, var(--theme-accent) 0 8px, var(--theme-surface) 8px 16px);height:16px;position:absolute;bottom:0;left:0;right:0}.brand-home{min-height:48px;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.home-label{letter-spacing:0;text-underline-offset:3px;font-size:10px;text-decoration:underline}@media (width<=380px){.brand{letter-spacing:.5px;gap:6px}.brand-home{gap:5px}.event-label{letter-spacing:0}}:root[data-stripes=false] .app-shell:before,:root[data-stripes=false] footer:after{background:var(--theme-accent)}:root[data-stripes=false] .hero-art{background:var(--theme-soft)}
