@charset "UTF-8";
:root{--ink:#153c47;--navy:#123343;--muted:#64777d;--paper:#f5f2e9;--line:#d8ded5;--orange:#f47b50;--orange-light:#fff0df;--green:#236456;--mint:#dcece0;--yellow:#f4d267;--radius:24px;font-family:Inter,"Segoe UI","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid #cd6238;outline-offset:4px}button:disabled{opacity:.62}p{line-height:1.8}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}svg{flex-shrink:0}.icon{width:21px;height:21px;vertical-align:middle}img{max-width:100%}.shell{max-width:1280px;padding:0 48px;margin:auto;min-height:100vh;display:flex;flex-direction:column}.page-grain{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(#244b5510 .6px,transparent .6px);background-size:6px 6px;z-index:-1}.site-header{display:flex;align-items:center;justify-content:space-between;height:102px;border-bottom:1px solid var(--line)}.wordmark{border:0;background:none;padding:0;display:flex;align-items:center;gap:12px;font-size:19px;font-weight:850;text-align:left;letter-spacing:.06em}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:var(--paper);font-family:serif;font-size:23px}.wordmark small{display:block;font-size:8px;letter-spacing:.23em;color:var(--muted);margin-top:6px}.header-tools{display:flex;align-items:center;gap:14px}.icon-button{height:42px;width:42px;display:grid;place-items:center;background:none;border:1px solid var(--line);border-radius:50%}.header-help{border:0;background:none;font-size:13px;display:flex;align-items:center;gap:9px}.header-help span{background:var(--ink);color:white;border-radius:50%;width:18px;height:18px;line-height:18px;font-size:12px}main{flex:1;outline:0}.screen{animation:arrive .32s ease both}.site-footer{display:flex;justify-content:space-between;padding:25px 0;margin-top:36px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);letter-spacing:.05em}
.eyebrow,.section-label{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow::selection{background:var(--yellow)}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:15px 23px;border-radius:12px;border:1px solid transparent;font-size:14px;font-weight:750;transition:transform .18s,background .18s}.button:hover:not(:disabled){transform:translateY(-2px)}.primary{background:var(--navy);color:white;box-shadow:0 4px 0 #0c253220}.primary:hover{background:#224d5c}.secondary{border-color:#afbbb7;background:transparent;color:var(--ink)}.quiet{background:#e7eae2;color:var(--ink)}.text-button{border:0;background:none;padding:10px 0;text-decoration:underline;text-underline-offset:5px;font-size:13px}.home-page{padding-top:46px}.hero-grid{display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:40px;min-height:410px}.hero-copy .eyebrow{color:var(--muted);margin-bottom:22px}.hero-grid h1{font-size:clamp(46px,5.6vw,76px);line-height:1.12;letter-spacing:-.065em;font-weight:900;margin:0 0 24px}.hero-grid h1 em{font-style:normal;color:#c95c3a}.hero-grid h1 .hero-star,.hero-grid h1>span{color:var(--orange)}.hero-copy>p:not(.eyebrow):not(.guest-note){font-size:16px;color:var(--muted);line-height:1.9}.hero-description{font-size:16px;color:var(--muted)}.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.hero-tags span{border:1px solid var(--line);padding:5px 10px;border-radius:20px;font-size:10px}.home-actions{display:flex;gap:10px;margin:25px 0 12px}.start-button{background:var(--orange);color:#182f35;box-shadow:0 4px 0 #d5633e30}.start-button:hover{background:#f88e69}.guest-note{font-size:11px;color:var(--muted);margin-bottom:0}.resume-strip{display:flex;align-items:center;gap:8px;border:0;background:#e3eade;border-radius:9px;padding:12px;font-size:11px;width:100%;margin-top:16px}.resume-strip span{margin-left:auto;font-weight:700}
.hero-art{position:relative;min-height:400px;display:grid;place-items:center;isolation:isolate}.character-disc{position:absolute;width:300px;height:300px;background:#dce5d8;border-radius:50%;z-index:-1}.hero-character{width:210px;height:auto;object-fit:contain;transform:rotate(-8deg);filter:drop-shadow(8px 13px 0 #12334312);animation:bob 6s ease-in-out infinite}.orbit{position:absolute;width:360px;height:360px;border:1px solid #a8b5aa77;border-radius:50%;z-index:-1}.orbit-two{width:310px;height:370px;transform:rotate(48deg);border-style:dashed}.art-coordinates{position:absolute;left:0;top:14px;font-size:8px;letter-spacing:.14em;line-height:1.9;color:#647d77}.floating-token{position:absolute;padding:12px 17px;font-weight:900;border:1px solid var(--ink);border-radius:9px;box-shadow:4px 4px 0 var(--ink);font-size:23px;transform:rotate(-12deg)}.token-a{left:15px;top:98px;background:var(--yellow)}.token-b{right:20px;bottom:110px;background:var(--orange);transform:rotate(11deg)}.character-name{position:absolute;bottom:8px;width:235px;left:50%;transform:translateX(-50%) rotate(-3deg);padding:13px 18px;background:var(--paper);border:1px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.character-name span{display:block;font-size:9px;color:var(--muted);margin-bottom:5px;letter-spacing:.16em}.character-name strong{font-size:23px}.character-name i{position:absolute;right:18px;top:22px;font-size:30px;font-style:normal}.art-star{position:absolute;font-size:43px;color:var(--orange)}.star-a{top:38px;right:26px}.star-b{bottom:76px;left:45px;font-size:22px}
.home-bottom{display:grid;grid-template-columns:1fr 235px;gap:26px;margin-top:44px}.journey-panel{border:1px solid var(--line);border-radius:16px;padding:22px 27px;background:#faf8f1}.section-label{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.section-label span:last-child{font-size:9px;letter-spacing:.09em}.voyage-route{list-style:none;display:flex;margin:28px 0 0;padding:0;gap:0}.voyage-route li{display:flex;align-items:center;gap:10px;flex:1;font-weight:750;font-size:12px;position:relative}.voyage-route li:not(:last-child):after{content:"";position:absolute;left:45px;top:18px;right:8px;border-top:1px dashed #aebfb5;z-index:0}.voyage-route li>span{z-index:1;background:#faf8f1}.route-node{display:grid;place-items:center;flex-shrink:0;width:37px;height:37px;border:1px solid #b8c6bb;border-radius:50%;font-size:12px;font-weight:800;position:relative}.voyage-route small{display:block;font-weight:400;font-size:9px;margin-top:5px;color:var(--muted)}.voyage-route li>span:last-child{padding-right:8px}.best-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;background:var(--navy);color:#f9f5e9;border:0;border-radius:16px;padding:20px 22px}.best-card>span:first-child{font-size:10px;display:flex;align-items:center;gap:7px;color:#ced8cd}.best-card>strong{font-size:42px;line-height:1;margin:12px 0}.best-card small{font-size:12px;font-weight:400;margin-left:7px}.best-link{font-size:10px;display:flex;align-items:center;justify-content:space-between;color:#d3deda}.best-link svg{width:16px}.rules-teaser{display:flex;align-items:center;gap:32px;margin:26px 0 0;font-size:11px;color:var(--muted)}.rules-teaser b{font-size:10px;color:#9bad9f;margin-right:8px}.rules-teaser button{margin-left:auto;background:none;border:0;font-size:11px;font-weight:700}.challenge-banner{background:var(--orange-light);border:1px solid #e8c6a4;padding:16px 20px;border-radius:14px;margin-bottom:24px;display:flex;gap:12px;align-items:center}.challenge-banner strong{color:#bc5230}.challenge-banner p{margin:0}
.game-page{padding-top:28px}.game-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.game-heading .eyebrow{margin:0}.quit-button{font-size:11px;color:var(--muted)}.scoreboard{display:grid;grid-template-columns:1fr 1fr 150px;gap:0;background:var(--navy);color:white;border-radius:17px;margin-bottom:25px;padding:22px 28px}.score-cell{display:flex;gap:14px;align-items:center}.score-cell>svg{width:29px;height:29px;color:#b4cfbd}.score-cell>span{font-size:11px;color:#cad9d4}.score-cell strong{display:block;color:#fff9e9;font-size:34px;line-height:1.2;font-variant-numeric:tabular-nums;margin-top:4px}.score-cell small{color:#9fb8b1;font-size:10px;margin-left:20px}.carried>svg,.carried strong{color:var(--yellow)}.multiplier{border-left:1px solid #55706f;display:flex;flex-direction:column;align-items:center;justify-content:center}.multiplier span{font-size:10px;color:#b8cdc7}.multiplier strong{font-size:29px;letter-spacing:-.03em;margin-top:3px}.game-layout{display:grid;grid-template-columns:210px 1fr;gap:32px}.game-sidebar{padding:18px 0}.compact{flex-direction:column;gap:26px;margin-top:24px}.compact li{font-size:12px;gap:13px}.compact li>span{background:var(--paper)}.compact li:not(:last-child):after{left:18px;top:37px;right:auto;height:28px;border:0;border-left:1px dashed #afbdaf}.current .route-node{background:var(--orange);border-color:var(--orange);box-shadow:0 0 0 5px #f47b5016}.passed .route-node{background:var(--green);border-color:var(--green);color:white}.sidebar-tip{display:flex;gap:7px;align-items:center;border-top:1px solid var(--line);margin-top:30px;padding-top:23px}.sidebar-tip img{width:44px;height:auto;transform:rotate(-7deg)}.sidebar-tip p{font-size:9px;color:var(--muted);margin:0}.sidebar-tip b{font-weight:600;color:var(--ink)}.game-content{padding:30px 36px;border:1px solid var(--line);border-radius:20px;background:#fcfbf6;min-width:0}.question-topline{display:flex;align-items:center;gap:16px;margin-bottom:22px}.question-category{color:#607970;background:#e8eee2;font-size:10px;letter-spacing:.08em;padding:7px 10px;border-radius:6px}.question-number{font-size:9px;letter-spacing:.12em;color:var(--muted)}.question-number b{color:var(--ink);font-size:14px}.timer{width:46px;height:46px;margin-left:auto;position:relative;color:var(--green);flex-shrink:0}.timer svg{width:100%;height:100%;transform:rotate(-90deg)}.timer circle{fill:none;stroke-width:2.5}.timer-track{stroke:#dde5d7}.timer-progress{stroke:currentColor;stroke-dasharray:119.4;transition:stroke-dashoffset .15s linear}.timer strong{position:absolute;inset:0;display:grid;place-items:center;font-size:15px}.timer.urgent{color:#c9472d;animation:urgent 1s infinite}.timing-paused{font-size:9px;color:var(--muted);margin-left:auto}.question-text{font-size:23px;letter-spacing:0;font-weight:750;line-height:1.75;margin:0 0 24px;overflow-wrap:anywhere}.options{display:grid;gap:10px}.option{width:100%;display:flex;align-items:center;gap:15px;border:1px solid #d8e0d4;border-radius:12px;background:#fffefa;text-align:left;padding:17px;transition:background .15s,border-color .15s;font-size:14px;line-height:1.65}.option:hover:not(:disabled){border-color:var(--green);background:#edf4e7}.option-letter{font-weight:700;font-size:12px;flex-shrink:0;width:28px;height:28px;border-radius:7px;background:#eef0e8;display:grid;place-items:center}.option-text{flex:1;overflow-wrap:anywhere}.option-target{width:14px;height:14px;flex-shrink:0;border:1px solid #bccabd;border-radius:50%}.option.correct{background:#e4efdf;border-color:#427454;opacity:1}.option.correct .option-letter{background:var(--green);color:white}.option.wrong{background:#fce8df;border-color:#cb755b;opacity:1}.option.wrong .option-letter{background:#c46045;color:white}.option:disabled{opacity:.76;cursor:default}.answer-label{font-size:9px;font-weight:600;display:flex;align-items:center;gap:4px}.answer-label svg{width:14px}.question-footnote{font-size:10px;color:var(--muted);display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:21px;line-height:1.6}.question-footnote svg{width:13px}.question-footnote>span{margin-left:auto}.feedback-panel{margin-top:24px;padding-top:22px;border-top:1px dashed #c9d4c5}.feedback-title{display:flex;gap:12px;align-items:center}.feedback-icon{width:36px;height:36px;background:#dae9d3;display:grid;place-items:center;flex-shrink:0;border-radius:50%;color:var(--green)}.failure .feedback-icon{background:#fbe2d5;color:#b75137}.feedback-title strong{font-size:16px;display:block}.feedback-title div>span{font-size:11px;color:var(--muted);display:block;margin-top:6px;line-height:1.8}.explanation{padding:16px 0}.explanation>span{color:var(--green);font-size:10px;letter-spacing:.06em;font-weight:700}.explanation p{font-size:13px;color:#526a6c;line-height:1.9;margin:6px 0 0}.feedback-panel>.button{width:100%}.friend-progress{margin-top:30px;padding:14px;background:#e9ecdf;border-radius:10px;font-size:10px}.friend-progress>span{display:block;color:var(--muted);margin-bottom:8px}.friend-progress>div{display:flex;justify-content:space-between;gap:10px;line-height:2}.friend-progress p{margin:5px 0 0;color:var(--muted)}
.checkpoint{text-align:center}.checkpoint-heading .eyebrow{justify-content:center;margin:10px 0;color:var(--green);font-size:9px}.checkpoint-stamp{width:40px;height:40px;background:var(--green);border-radius:50%;color:white;display:grid;place-items:center;margin:auto}.checkpoint-heading h2{font-size:27px;margin:12px 0}.checkpoint-heading>p:last-child{font-size:12px;color:var(--muted)}.checkpoint-balance{display:flex;flex-direction:column;gap:9px;padding:12px 0 16px}.checkpoint-balance>span{font-size:11px;color:var(--muted)}.checkpoint-balance>strong{font-size:62px;letter-spacing:-.06em;line-height:1;font-variant-numeric:tabular-nums}.checkpoint-balance small{font-size:13px;font-weight:500;margin-left:8px;letter-spacing:0}.first-guide{background:#edf0e5;border-radius:8px;padding:11px;text-align:left;font-size:11px;line-height:1.8;margin:14px 0}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.decision-card{padding:20px 18px;border-radius:14px;border:1px solid #b6cbb7;text-align:left;display:flex;flex-direction:column;gap:15px;background:#edf3e6;transition:transform .2s,box-shadow .2s}.decision-card:hover{transform:translateY(-3px);box-shadow:0 5px 0 #12334312}.decision-kicker{font-size:11px;font-weight:600;display:flex;align-items:center;gap:6px}.decision-kicker svg{width:18px}.decision-card>strong{font-size:20px}.decision-description{font-size:10px;line-height:1.9;color:#556e5d}.decision-bottom{font-size:10px;border-top:1px solid #b6cbb7;padding-top:13px;display:flex;align-items:center;gap:4px}.decision-bottom svg{margin-left:auto;width:18px}.risk-choice{background:#fce8d7;border-color:#e5b191}.risk-choice .decision-description{color:#94624d}.risk-choice .decision-bottom{border-color:#e5b191}.checkpoint-note{font-size:10px;color:var(--muted);margin:19px 0 0}
.result-page{padding-top:36px}.result-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:52px;align-items:center}.result-ticket{position:relative;overflow:hidden;background:var(--navy);border-radius:20px;color:#fff7df;padding:30px 36px 22px;box-shadow:0 12px 0 #12334309}.ticket-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #66807860;padding-bottom:20px;font-size:9px;letter-spacing:.14em;color:#c3d5cb}.ticket-top svg{color:var(--yellow)}.result-ticket .eyebrow{color:#abc6b8;font-size:9px;margin:27px 0 13px}.result-ticket h1{font-size:26px;line-height:1.4;margin-bottom:25px}.final-score>span{color:#c0d2c6;font-size:11px}.final-score strong{display:block;font-size:84px;letter-spacing:-.05em;line-height:1.2;color:var(--yellow);font-variant-numeric:tabular-nums;margin:8px 0}.final-score small{font-size:16px;margin-left:10px;letter-spacing:0;font-weight:400}.final-score p{color:#b5cec1;font-size:11px;margin:0}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:28px;padding-bottom:27px;border-bottom:1px dashed #93aa9970}.result-stats span{display:block;font-size:9px;color:#b0c5b7;margin-bottom:9px}.result-stats strong{font-size:22px}.result-stats small{font-size:11px;color:#b0c5b7;font-weight:400}.ticket-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:20px;font-size:12px}.ticket-bottom span{font-size:10px;color:#bacec0;display:flex;align-items:center;gap:7px}.ticket-bottom svg{width:16px}.ticket-notch{position:absolute;width:24px;height:24px;border-radius:50%;background:var(--paper);bottom:53px}.notch-left{left:-12px}.notch-right{right:-12px}.result-actions-panel>.button{width:100%;margin-bottom:10px}.result-mascot{display:flex;gap:17px;align-items:center;margin-bottom:25px}.result-mascot img{width:63px;height:auto;transform:rotate(-7deg)}.result-mascot span{font-size:9px;color:var(--muted);letter-spacing:.12em}.result-mascot p{font-size:18px;line-height:1.6;font-weight:700;margin:7px 0}.ranking-note{font-size:10px;color:var(--muted);line-height:1.8;margin:7px 0 23px}.nickname-form{padding-top:20px;border-top:1px solid var(--line)}.nickname-form label{font-size:12px;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:12px}.nickname-form label span{font-size:9px;font-weight:400;color:var(--muted);padding:3px 6px;border:1px solid var(--line);border-radius:4px}.nickname-form>div{display:flex;border:1px solid #aebeaf;border-radius:9px;background:#fafaf2;overflow:hidden}.nickname-form input{width:100%;min-width:0;padding:14px 12px;border:0;background:none;font-size:12px;color:var(--ink)}.nickname-form button{flex-shrink:0;border:0;border-left:1px solid var(--line);background:#e6ecdf;padding:0 15px;font-size:11px;font-weight:700}.form-message{font-size:10px;color:var(--muted);margin:8px 0 0;min-height:18px}.share-ready{margin-top:20px;background:#e8eee1;border:1px solid #bfd0b9;padding:16px;border-radius:12px;font-size:12px}.share-ready p{font-size:11px;color:var(--muted);margin:7px 0}.share-ready>div{display:flex;gap:8px}.share-ready button{background:var(--navy);color:white;border:0;padding:10px 14px;border-radius:7px;font-size:11px}.share-ready input{width:100%;font-size:10px;border:1px solid var(--line);padding:8px;background:#f5f8ef;margin-top:10px;border-radius:5px;color:var(--muted)}.back-home{margin-top:26px;color:var(--muted)}
.ranking-page{max-width:860px;margin:38px auto 0}.ranking-header h1{font-size:44px;margin:15px 0}.ranking-header h1 span{color:var(--orange);margin-left:16px}.ranking-header p{font-size:13px;color:var(--muted)}.ranking-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--navy);color:#dce7d9;border-radius:12px 12px 0 0;padding:18px 24px;font-size:11px}.ranking-meta>span:first-child{display:flex;gap:8px;align-items:center}.ranking-meta svg{color:var(--yellow);width:18px}.ranking-table{border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;overflow:hidden;background:#fcfbf5}.ranking-row{display:grid;grid-template-columns:65px 1fr 100px;align-items:center;gap:12px;min-height:76px;padding:16px 25px;border-bottom:1px solid #e3e6dc}.ranking-row:last-child{border:0}.ranking-row>span:last-child,.rank-score{text-align:right}.ranking-labels{font-size:10px;color:var(--muted);min-height:42px;background:#e9ede2;padding:12px 25px}.rank-number{font-size:18px;font-weight:850;color:#8b9f94}.rank-1{color:#c88923}.rank-2{color:#546e76}.rank-3{color:#b47853}.rank-player{display:flex;align-items:center;gap:12px;min-width:0}.rank-player i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e4ebdc;font-size:11px;font-style:normal;flex-shrink:0}.rank-player strong{font-size:12px;overflow-wrap:anywhere}.rank-player small{background:var(--green);color:white;padding:2px 5px;border-radius:4px;font-size:8px}.rank-score{font-size:21px}.my-ranking{background:#ecf3e4}.ranking-footnote{font-size:10px;color:var(--muted);margin:17px 0}.ranking-actions{display:flex;gap:12px;justify-content:flex-end}.empty-state{padding:45px 20px;text-align:center}.empty-state h2{font-size:20px}.empty-state p{font-size:12px;color:var(--muted)}.empty-symbol{font-size:46px;display:block;margin-bottom:15px;color:var(--orange)}
.error-banner{padding:15px 18px;background:#ffebe0;border:1px solid #e8b393;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 20px;font-size:12px}.error-banner strong{display:block;font-size:12px;margin-bottom:5px}.error-banner span span{font-size:11px;line-height:1.6}.error-banner button{flex-shrink:0;font-size:11px;border:1px solid #c68565;border-radius:6px;background:none;padding:10px}.loader{display:inline-block;width:24px;height:24px;border:2px solid #d8e3d3;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}.boot-state,.question-loading{padding:70px 20px;text-align:center;color:var(--muted);font-size:12px}.toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%,15px);background:#123343f0;color:#f6f5e9;padding:14px 22px;border-radius:12px;box-shadow:0 8px 25px #12334325;max-width:calc(100% - 32px);width:max-content;pointer-events:none;opacity:0;transition:opacity .2s,transform .2s;font-size:12px;line-height:1.8;z-index:100}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid #aabcaa;padding:28px;border-radius:22px;background:var(--paper);color:var(--ink);width:min(520px,calc(100% - 28px));max-height:85dvh;box-shadow:0 30px 90px #001c3b40}dialog::backdrop{background:#12334390;backdrop-filter:blur(4px)}.modal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.modal-top .eyebrow{color:var(--muted)}dialog h2{font-size:27px}.rule-list{display:grid;gap:15px;margin:23px 0}.rule-list>div{display:flex;gap:14px}.rule-list>div>span{font-size:14px;font-weight:800;color:var(--orange);padding-top:4px}.rule-list p,.modal-copy{font-size:13px;line-height:1.9;margin:0}.modal-note{font-size:11px;color:var(--muted);background:#e9ecdf;padding:12px;border-radius:8px;margin:20px 0;line-height:1.8}dialog>.button{width:100%}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-actions>*{flex:1;padding:13px 10px;font-size:12px}.effects{pointer-events:none;position:fixed;inset:0;z-index:90;overflow:hidden}.score-bubble{position:absolute;top:28%;left:50%;padding:12px 22px;border-radius:30px;background:var(--yellow);color:var(--navy);font-size:28px;font-weight:900;box-shadow:0 5px 0 #12334320;animation:float-score .85s ease-out both}.lost-particle{position:absolute;top:30%;left:50%;width:12px;height:12px;border-radius:3px;background:var(--orange);animation:scatter .65s ease-out both}.noscript{padding:20px}
@keyframes arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes bob{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-9px) rotate(-5deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes urgent{50%{opacity:.6}}@keyframes float-score{0%{opacity:0;transform:translate(-50%,30px) scale(.8)}20%{opacity:1;transform:translate(-50%,0) scale(1)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-90px) scale(.6)}}@keyframes scatter{from{transform:translate(0,0);opacity:1}to{transform:translate(var(--x),100px) rotate(var(--r));opacity:0}}
@media(min-width:1000px){.hero-copy{padding:12px 0}.hero-tags{margin-top:20px}}
@media(max-width:1000px){.shell{padding:0 28px}.hero-grid{gap:15px}.hero-art{transform:scale(.88);transform-origin:center;min-height:360px}.home-bottom{gap:16px;grid-template-columns:1fr 195px}.journey-panel{padding:20px 16px}.voyage-route li{gap:6px;font-size:10px}.voyage-route li small{font-size:8px}.route-node{width:30px;height:30px}.voyage-route li:not(:last-child):after{top:15px;left:30px}.score-cell small{display:none}.game-layout{grid-template-columns:155px 1fr;gap:22px}.game-content{padding:25px}.compact li:not(:last-child):after{left:15px;top:30px;height:28px}.result-grid{gap:28px}.result-ticket{padding:27px}.final-score strong{font-size:70px}.result-ticket h1{font-size:23px}.rules-teaser{gap:16px}}
@media(max-width:700px){.shell{padding:0 20px}.site-header{height:80px}.wordmark{font-size:16px;gap:9px}.wordmark small{font-size:7px}.brand-mark{width:36px;height:36px;font-size:20px}.header-tools{gap:5px}.header-help{font-size:11px;gap:5px}.icon-button{width:35px;height:35px}.icon-button svg{width:17px}.home-page{padding-top:30px}.hero-grid{grid-template-columns:1fr;gap:8px;min-height:0;position:relative}.hero-copy{position:relative;z-index:2}.hero-grid h1{font-size:54px;margin-bottom:18px;max-width:320px}.hero-copy .eyebrow{font-size:9px;margin-bottom:18px}.hero-copy>p:not(.eyebrow):not(.guest-note){font-size:13px;line-height:1.85}.hero-tags{margin:17px 0 20px;gap:6px}.hero-tags span{font-size:9px;padding:5px 9px}.home-actions{margin-top:20px;gap:8px}.home-actions>.button{min-height:49px;font-size:12px;padding:13px 16px}.home-actions .primary{flex:1}.guest-note{font-size:10px}.hero-art{min-height:285px;transform:none;margin:10px 0}.hero-character{width:155px}.character-disc{width:225px;height:225px}.orbit{width:275px;height:275px}.orbit-two{width:235px;height:270px}.art-coordinates{font-size:7px;top:4px}.floating-token{font-size:18px;padding:9px 12px;border-radius:7px;box-shadow:3px 3px 0 var(--ink)}.token-a{top:65px;left:19px}.token-b{bottom:80px;right:21px}.character-name{width:191px;bottom:-3px;padding:10px 14px}.character-name span{font-size:8px}.character-name strong{font-size:20px}.character-name i{font-size:25px;top:19px}.star-a{right:22px;top:23px;font-size:31px}.star-b{left:18px;bottom:39px}.home-bottom{grid-template-columns:1fr;margin-top:23px;gap:12px}.journey-panel{padding:19px 15px}.section-label{font-size:9px;letter-spacing:.07em}.section-label span:last-child{font-size:7px}.voyage-route{margin-top:23px;gap:0}.voyage-route li{flex-direction:column;align-items:flex-start;gap:9px;font-size:10px}.voyage-route li>span:last-child{padding:0}.voyage-route li:not(:last-child):after{left:29px;right:5px;top:14px}.route-node{width:29px;height:29px;font-size:10px}.voyage-route li small{font-size:8px;margin-top:4px}.best-card{padding:18px 19px;display:grid;grid-template-columns:1fr auto;column-gap:20px;align-items:center}.best-card>strong{grid-column:2;grid-row:1/3;font-size:34px;margin:0}.best-card>span:first-child{font-size:10px}.best-link{grid-column:1;grid-row:2;justify-content:start;gap:10px;margin-top:10px;font-size:9px}.rules-teaser{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:23px;font-size:9px}.rules-teaser b{font-size:9px}.rules-teaser button{font-size:9px;margin:0;text-align:left;padding:0}.site-footer{padding:19px 0;margin-top:28px;font-size:8px;gap:12px}.game-page{padding-top:20px}.game-heading{margin-bottom:12px}.game-heading .eyebrow{font-size:10px;letter-spacing:.06em}.scoreboard{padding:17px 16px;grid-template-columns:1fr 1fr 67px;border-radius:13px;margin-bottom:17px}.score-cell{gap:8px}.score-cell>svg{width:19px;height:19px}.score-cell>span{font-size:9px}.score-cell strong{font-size:24px}.multiplier span{font-size:8px}.multiplier strong{font-size:22px}.game-layout{display:flex;flex-direction:column;gap:14px}.game-sidebar{padding:0}.game-sidebar>.section-label,.sidebar-tip{display:none}.compact{flex-direction:row;margin:0;gap:0;padding:3px 3px 8px}.compact li{font-size:9px;gap:7px}.compact .route-node{width:24px;height:24px;font-size:9px}.compact li small{display:none}.compact li:not(:last-child):after{left:24px;right:5px;top:12px;height:0;border:0;border-top:1px dashed #afbdaf}.current .route-node{box-shadow:0 0 0 3px #f47b5016}.game-content{padding:21px 18px;border-radius:15px}.question-topline{gap:9px;margin-bottom:17px}.question-category{font-size:9px;padding:6px 8px}.question-number{font-size:8px}.question-number b{font-size:12px}.timer{width:37px;height:37px}.timer strong{font-size:13px}.question-text{font-size:18px;line-height:1.8;margin-bottom:20px}.option{font-size:13px;padding:14px 12px;gap:10px;border-radius:10px}.option-letter{width:26px;height:26px;font-size:11px}.option-target{width:11px;height:11px}.options{gap:9px}.answer-label{font-size:0;gap:0}.answer-label svg{width:17px}.question-footnote{font-size:9px;margin-top:17px;gap:4px}.question-footnote>span{width:100%;margin:4px 0 0 18px}.timing-paused{font-size:8px}.feedback-panel{margin-top:20px;padding-top:19px}.feedback-title{gap:9px;align-items:flex-start}.feedback-title strong{font-size:14px}.feedback-title div>span{font-size:10px}.feedback-icon{width:30px;height:30px}.feedback-icon svg{width:16px}.explanation p{font-size:12px}.feedback-panel>.button{font-size:12px;min-height:47px}.friend-progress{margin:10px 0 0;padding:11px;display:flex;flex-wrap:wrap;gap:4px 12px}.friend-progress>span{margin-bottom:0}.friend-progress p{margin:0}.friend-progress>div{gap:12px;line-height:1.6}.checkpoint-heading h2{font-size:25px}.checkpoint-heading>p:last-child{font-size:11px}.checkpoint-balance>strong{font-size:57px}.decision-grid{grid-template-columns:1fr;gap:11px;margin-top:16px}.decision-card{padding:16px;gap:10px;position:relative}.decision-card>strong{font-size:20px}.decision-description{font-size:10px}.decision-kicker{font-size:10px}.decision-bottom{font-size:10px;padding-top:10px}.first-guide{font-size:10px;padding:10px}.checkpoint-note{font-size:9px}.result-page{padding-top:24px}.result-grid{grid-template-columns:1fr;gap:28px}.result-ticket{padding:26px 24px 21px}.result-ticket h1{font-size:24px}.result-ticket .eyebrow{margin:24px 0 12px}.final-score strong{font-size:76px}.result-actions-panel>.button{font-size:12px;min-height:49px}.result-mascot{margin-bottom:22px}.result-mascot img{width:54px}.result-mascot p{font-size:17px}.ranking-note{font-size:10px}.nickname-form{padding-top:18px}.back-home{margin-top:19px}.ranking-page{margin:27px auto 0}.ranking-header h1{font-size:33px}.ranking-header .eyebrow{font-size:9px}.ranking-header p{font-size:11px}.ranking-meta{padding:14px 13px;font-size:9px;gap:8px}.ranking-meta svg{width:15px}.ranking-row{grid-template-columns:36px 1fr 61px;padding:15px 13px;gap:9px;min-height:66px}.ranking-labels{min-height:38px;font-size:9px;padding:11px 13px}.rank-player{gap:7px}.rank-player i{width:25px;height:25px;font-size:10px}.rank-player strong{font-size:11px}.rank-number{font-size:16px}.rank-score{font-size:18px}.ranking-actions>.button{font-size:12px;min-height:48px;padding:13px 15px;flex:1}.ranking-footnote{font-size:9px}.empty-state{padding:33px 15px}.empty-state p{font-size:11px}.error-banner{font-size:11px;padding:13px}.error-banner strong{font-size:11px}.error-banner span span{font-size:10px}.error-banner button{font-size:10px;padding:8px}.toast{font-size:11px;padding:12px 17px}dialog{padding:23px}dialog h2{font-size:24px}}
@media(max-width:375px){.shell{padding:0 16px}.hero-grid h1{font-size:49px}.hero-art{margin-top:9px}.scoreboard{padding:16px 12px}.score-cell{gap:5px}.score-cell strong{font-size:22px}.game-content{padding:19px 15px}.question-text{font-size:17px}.final-score strong{font-size:67px}.ranking-meta{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.title-spark{display:inline-block;font-style:normal;font-size:.48em;color:var(--orange);vertical-align:middle;margin-left:16px;transform:rotate(12deg)}.title-outline{color:var(--green)!important}.friend-invite{display:flex;gap:13px;align-items:center;background:#e8ecdc;border:1px solid #c8d3b7;padding:14px;border-radius:12px;margin:20px 0}.mini-avatar{display:grid;place-items:center;width:36px;height:36px;background:var(--navy);color:var(--paper);border-radius:50%;font-size:15px}.friend-invite div>span{display:block;font-size:10px;color:var(--muted)}.friend-invite strong{font-size:24px;display:block;margin-top:6px}.friend-invite small{font-size:10px;font-weight:400;margin-left:8px}.decision-card:hover{transform:none}.home-actions>.button{vertical-align:middle}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none!important}}

