.pzh-shell{min-height:100vh;background:#0e3d46;padding:0;display:grid;place-items:start center;color:#143d43}.pzh-app{position:relative;width:min(100%,430px);min-height:100vh;overflow:hidden;background:#f3ead7;font-family:"Noto Serif SC","Songti SC","STSong",serif;box-shadow:0 0 60px #001f2680}.pzh-app button{font-family:inherit}.intro-screen,.paper-screen,.seal-screen,.reward-screen{min-height:100vh;padding:44px 28px 30px;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center}.intro-screen{background:linear-gradient(#f5eddddb,#eef4e7d9),url('/puzhehei-map.png') center/cover}.intro-wash{position:absolute;inset:0;background:linear-gradient(180deg,#f6edda 0%,transparent 38%,#eaf2e9 100%);z-index:0}.intro-screen>*{position:relative;z-index:1}.place-kicker{margin:0 0 12px;color:#7d6433;font-size:13px;font-weight:800;letter-spacing:.16em}.intro-screen h1,.reward-screen h1{font-size:45px;line-height:1.1;margin:6px 0 12px;color:#0d4a44;letter-spacing:.08em}.intro-subtitle{font-size:15px;line-height:1.8;color:#45625f;margin:0}.guide-large{width:190px;height:190px;object-fit:cover;border-radius:50%;margin:24px auto 12px;border:4px solid #f4d886;box-shadow:0 14px 35px #1e5b5238}.guide-line{background:#fff9eae8;padding:14px 16px;border-radius:16px;text-align:left;border:1px solid #d8c89f;box-shadow:0 8px 24px #4a5b4d1a;margin-bottom:20px}.guide-line b{display:block;color:#b06d55;margin-bottom:5px}.guide-line span{font-size:14px;line-height:1.6}.pzh-primary{border:1px solid #ebcc75;border-radius:16px;background:linear-gradient(135deg,#f4d786,#d9a83e);color:#17473f;width:100%;min-height:56px;font-size:18px;font-weight:900;letter-spacing:.08em;box-shadow:0 9px 22px #7b5c2238;cursor:pointer}.pzh-primary:disabled{opacity:.55}.small-note{font:12px/1.5 Arial,sans-serif;color:#6e807c}.map-screen{position:relative;min-height:1030px;background:#e9e0cb;overflow:hidden}.map-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.map-header{position:absolute;top:0;left:0;right:0;padding:22px 20px 15px;display:flex;align-items:flex-start;justify-content:space-between;background:linear-gradient(#f4ecddfa,#f4ecdd00);z-index:3}.map-header small{color:#7d6433;font-weight:700}.map-header h1{font-size:25px;margin:3px 0;color:#0d4a44}.seal-count{display:flex;align-items:baseline;gap:3px;background:#f8f0dddb;border:1px solid #c8a75c;border-radius:14px;padding:7px 10px}.seal-count b{font-size:27px;color:#a26722}.seal-count span{font:12px Arial,sans-serif}.map-guide{position:absolute;top:100px;left:18px;right:18px;z-index:3;display:flex;gap:10px;align-items:center;background:#fff9e9e8;border:1px solid #d6c59f;border-radius:17px;padding:10px;box-shadow:0 8px 22px #24463e26}.map-guide img{width:54px;height:54px;border-radius:50%;object-fit:cover}.map-guide p{margin:0;font-size:13px;line-height:1.5}.mission-points{position:absolute;inset:0;z-index:2}.point{position:absolute;width:112px;min-height:66px;border:1px solid #d8b562;border-radius:15px;background:#fff7e7ed;color:#16463f;text-align:left;padding:9px 8px 8px 40px;box-shadow:0 7px 18px #183c3648;cursor:pointer}.point>span{position:absolute;left:-12px;top:14px;width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#d8a644;color:#fff;font:800 18px Arial,sans-serif;border:3px solid #fff0bf}.point b,.point small{display:block}.point b{font-size:16px}.point small{font-size:11px;color:#6b7f78;margin-top:3px}.point.locked{filter:grayscale(.9);opacity:.65;cursor:not-allowed}.point.done{background:#dff2e4ed;border-color:#4f8b61}.point.done>span{background:#367655}.point.active{animation:pulsePoint 1.8s infinite}.point-1{top:252px;right:35px}.point-2{top:447px;left:44px}.point-3{top:603px;right:30px}.point-4{top:735px;left:52px}.point-5{top:850px;right:52px}@keyframes pulsePoint{50%{transform:scale(1.04);box-shadow:0 0 0 9px #f4d78655,0 9px 25px #183c3655}}.map-reward{position:absolute;z-index:5;bottom:22px;left:24px;width:calc(100% - 48px)}.paper-screen{background:#f6eedf url('/puzhehei-map.png') center/cover}.paper-screen:before{content:"";position:absolute;inset:0;background:#f7efdfeb}.paper-screen>*{position:relative;z-index:1}.back-btn{align-self:flex-start;border:0;background:#fff7e6bb;color:#315b55;padding:9px 13px;border-radius:12px;cursor:pointer}.chapter{color:#a2692b;font-size:13px;letter-spacing:.25em;margin:27px 0 6px}.paper-screen h1{font-size:42px;color:#0d4a44;margin:0}.location{margin:8px 0 18px;color:#657c76}.guide-medium{width:130px;height:130px;object-fit:cover;border-radius:50%;border:4px solid #edd28d;box-shadow:0 10px 25px #305b5040}.dialog{width:100%;background:#fffaf0ed;border:1px solid #d7c49a;border-radius:18px;padding:18px;text-align:left;margin:16px 0}.dialog b{color:#ad6b51}.dialog p{font-size:17px;line-height:1.65;margin:8px 0}.dialog span{font-size:13px;line-height:1.6;color:#63766e}.steps{display:flex;gap:7px;margin:0 0 22px;width:100%}.steps span{flex:1;font-size:11px;color:#5f736e}.steps b{display:grid;place-items:center;margin:0 auto 5px;width:28px;height:28px;border-radius:50%;background:#d7aa4a;color:#fff}.scan-screen{min-height:100vh;background:#071d25;position:relative;color:white;overflow:hidden}.scan-screen video,.scan-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scan-fallback{background:linear-gradient(#05273199,#052731d9),url('/puzhehei-map.png') center/cover}.scan-screen video{z-index:1}.scan-top{position:absolute;z-index:3;top:0;left:0;right:0;padding:20px 16px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#001b26cc,transparent)}.scan-top button{border:0;border-radius:9px;padding:8px 10px;background:#ffffff20;color:white}.scan-top span{font-size:14px;font-weight:800}.scan-top b{font:13px Arial,sans-serif}.scanner{position:absolute;z-index:3;top:20%;left:14%;width:72%;aspect-ratio:1;border:1px solid #9ff3c955;border-radius:25px;display:grid;place-items:center}.scanner i{position:absolute;width:44px;height:44px;border-color:#a8ffd0;border-style:solid}.scanner i:nth-child(1){top:-2px;left:-2px;border-width:4px 0 0 4px;border-radius:16px 0 0}.scanner i:nth-child(2){top:-2px;right:-2px;border-width:4px 4px 0 0;border-radius:0 16px 0 0}.scanner i:nth-child(3){bottom:-2px;left:-2px;border-width:0 0 4px 4px;border-radius:0 0 0 16px}.scanner i:nth-child(4){bottom:-2px;right:-2px;border-width:0 4px 4px 0;border-radius:0 0 16px}.scanner span{background:#062a31b8;border-radius:99px;padding:8px 13px;font:13px Arial,sans-serif}.scanner.scanning:after{content:"";position:absolute;left:8%;right:8%;height:3px;background:#a8ffd0;box-shadow:0 0 18px #a8ffd0;animation:scanLine 1.1s linear infinite}@keyframes scanLine{from{top:12%}to{top:86%}}.scan-sheet{position:absolute;z-index:4;left:13px;right:13px;bottom:13px;background:#092d3de8;border:1px solid #8fcdb0;border-radius:24px;padding:18px;backdrop-filter:blur(12px);text-align:center}.scan-sheet small{color:#efca74}.scan-sheet h2{font-size:28px;margin:5px 0}.scan-sheet p{font:13px/1.5 Arial,sans-serif;color:#d5e6df}.camera-btn,.fallback-code{border:0;background:transparent;color:#a9dfca;padding:10px;cursor:pointer}.camera-btn{display:block;width:100%;border:1px solid #5b9d87;border-radius:12px;margin-bottom:10px}.fallback-code{font-size:12px;text-decoration:underline}.quiz-screen h2{font-size:21px;line-height:1.5;margin:25px 0 14px}.found-stamp{margin:24px 0 0;width:120px;height:120px;border-radius:50%;border:5px double #d7a443;display:grid;place-content:center;background:#fff5d6}.found-stamp span{font:800 36px Arial,sans-serif;color:#b77723}.found-stamp b{color:#865c2e}.answers{width:100%;display:grid;gap:12px}.answers button{min-height:58px;border:1px solid #d4bd8a;border-radius:16px;background:#fffaf0;color:#17463f;font-size:16px;font-weight:800;cursor:pointer}.answers button:hover{border-color:#287a66;background:#e4f1e8}.wrong-tip{font-size:13px;line-height:1.5;color:#a2493d;background:#fff0e9;padding:10px;border-radius:12px}.seal-screen{justify-content:center;background:radial-gradient(circle at 50% 38%,#fff7cb,#e6efe3 52%,#dbe8df)}.seal-screen>p:first-of-type{letter-spacing:.22em;color:#967030}.seal-medal{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;background:#f8e9ae;border:10px double #c99435;box-shadow:0 0 0 12px #fff4c680,0 20px 45px #8a692a44;margin:24px}.seal-medal span{font:800 70px Arial,sans-serif;color:#28715d}.seal-screen h1{font-size:43px;color:#0d4a44;margin:3px}.seal-copy{line-height:1.7;color:#55716b}.collection{display:flex;gap:9px;margin:22px 0}.collection span{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;border:1px solid #b9b6a8;color:#8d958f;font:700 15px Arial,sans-serif}.collection span.collected{background:#d8ae51;color:#fff;border-color:#d8ae51}.reward-screen{justify-content:center;background:linear-gradient(#f6ecdbe8,#e7f2e8ed),url('/puzhehei-map.png') center/cover}.reward-screen h1{font-size:41px}.reward-screen>p:not(.place-kicker){font-size:14px;line-height:1.7;color:#506d67}.reward-code{width:100%;padding:20px;border-radius:18px;background:#fff9eae8;border:1px solid #cda85b;box-shadow:0 12px 30px #395b5030;margin:15px 0;display:grid;gap:5px}.reward-code small{color:#8c6b2b}.reward-code b{font:900 30px Arial,sans-serif;letter-spacing:.12em;color:#0c5149}.reward-code span{font-size:11px;color:#7d8b86}.reward-item{width:100%;display:flex;justify-content:space-between;padding:14px;background:#e3f0e5;border-radius:14px;margin-bottom:17px;font-size:13px}.restart{margin-top:14px;border:0;background:transparent;text-decoration:underline;color:#486861;cursor:pointer}@media(min-width:600px){.pzh-shell{padding:28px 0}.pzh-app{min-height:850px;border-radius:28px}.intro-screen,.paper-screen,.seal-screen,.reward-screen,.scan-screen{min-height:850px}.map-screen{min-height:1030px}}@media(prefers-reduced-motion:reduce){.point.active,.scanner.scanning:after{animation:none}}
