@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{--accent:#c1fb8e;color:#f7f4f1;font-synthesis:none;background:#110f1d;font-family:Manrope,DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 80% 0,#28203d 0,#0000 35%),#110f1d;min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #b4f987}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}h1{line-height:1.03}p{color:#b8b4c5;line-height:1.65}small{font-size:.75rem}.site-shell{min-height:100vh;position:relative;overflow:hidden}.site-header{z-index:5;justify-content:space-between;align-items:center;max-width:1440px;height:72px;margin:auto;padding:0 20px;display:flex;position:relative}.brand-button{color:inherit;background:0 0;border:0;padding:0}.brand{text-align:left;align-items:center;gap:10px;line-height:.98;display:flex}.brand-symbol{color:#1b1424;background:#c2fa90;border-radius:12px;place-items:center;width:38px;height:38px;font-size:29px;display:grid;transform:rotate(-12deg);box-shadow:0 0 25px #b5f9904d}.brand span:last-child{flex-direction:column;gap:3px;display:flex}.brand b{letter-spacing:-.09em;font-size:25px}.brand small{letter-spacing:.28em;font-size:8px;font-weight:800}.header-spacer,.icon-button{width:40px;height:40px}.icon-button{color:#fff;background:#ffffff0b;border:1px solid #fff2;border-radius:12px;place-items:center;display:grid}.btn{border:0;border-radius:16px;justify-content:center;align-items:center;gap:12px;min-height:54px;padding:13px 22px;font-weight:800;line-height:1.2;transition:transform .18s,background .18s,box-shadow .18s;display:inline-flex}.btn-ghost{color:#f9f8f6;background:#ffffff12;border:1px solid #ffffff23}.eyebrow{letter-spacing:.24em;color:var(--accent);text-transform:uppercase;font-size:10px;font-weight:800}.eyebrow>span{background:var(--accent);width:7px;height:7px;box-shadow:0 0 12px var(--accent);border-radius:50%;margin-right:8px;display:inline-block}.text-link{color:var(--accent);background:0 0;border:0;padding:8px;font-weight:700}.form-error{color:#ffb6c8;background:#ff779c1c;border:1px solid #ff779c6c;border-radius:12px;margin:10px 0;padding:14px}.toast{z-index:40;color:#fff;background:#27233b;border:1px solid #ffffff30;border-radius:15px;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:13px 18px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 22px 60px #0009}.toast-error{border-color:#f68ea9}.toast button{color:var(--accent);background:0 0;border:0;text-decoration:underline}.spinner{border:2px solid #c1fb8e55;border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}.splash{min-height:100vh;color:var(--accent);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.home{grid-template-rows:1fr auto;grid-template-columns:1fr 1fr;align-items:center;gap:0 4vw;max-width:1440px;min-height:calc(100vh - 72px);margin:auto;padding:0 5vw;display:grid}.hero-visual{aspect-ratio:1;grid-area:1/2;justify-content:center;align-items:center;max-height:650px;display:flex;position:relative}.hero-visual img{z-index:1;object-fit:contain;filter:drop-shadow(0 40px 65px #0009);width:100%;max-width:100%;max-height:100%;position:relative}.hero-glow{filter:blur(90px);opacity:.36;background:#7772d5;border-radius:50%;position:absolute;inset:18%}.hero-sticker{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#252038cb;border:1px solid #fff4;border-radius:13px;align-items:center;gap:6px;padding:11px 15px;font-size:11px;font-weight:800;display:flex;position:absolute;box-shadow:0 15px 35px #0005}.sticker-top{top:15%;right:4%;transform:rotate(8deg)}.sticker-bottom{color:#25172a;background:#f2a8c9;bottom:18%;left:1%;transform:rotate(-6deg)}.hero-copy{z-index:2;grid-area:1/1;max-width:680px;padding:45px 0;position:relative}.hero-copy h1{margin:24px 0;font-size:clamp(3.4rem,6.5vw,6.8rem)}.hero-copy p{max-width:570px;font-size:clamp(1rem,1.45vw,1.22rem)}.home-subactions button{color:#d9d5e2;background:0 0;border:0;align-items:center;gap:8px;padding:10px 0;font-weight:700;display:flex}.home-bottom{color:#a6a0ba;letter-spacing:.18em;border-top:1px solid #ffffff17;grid-column:1/-1;align-items:center;gap:24px;padding:18px 0 23px;font-size:10px;font-weight:800;display:flex}.progress-dots{gap:5px;display:flex}.progress-dots i{background:#535064;border-radius:2px;width:22px;height:3px}.auth-layout{grid-template-columns:1fr 1fr;gap:30px;max-width:1000px;margin:7vh auto 60px;padding:0 20px;display:grid}.auth-art{background:radial-gradient(circle at 70% 20%,#e4afd966,#0000 45%),linear-gradient(145deg,#3d345f,#211d36);border-radius:30px;flex-direction:column;justify-content:flex-end;min-height:500px;padding:50px;display:flex;position:relative;overflow:hidden}.auth-art>svg{color:var(--accent);filter:drop-shadow(0 0 36px #bbfc8d99);width:120px;height:120px;position:absolute;top:70px;left:50px}.auth-art h2{margin-bottom:15px;font-size:clamp(2.8rem,4vw,4.6rem);line-height:1.05}.auth-card{background:#211d30;border:1px solid #ffffff1b;border-radius:30px;flex-direction:column;justify-content:center;gap:17px;padding:clamp(24px,4vw,52px);display:flex;box-shadow:0 25px 70px #0003}.auth-card p{margin-bottom:8px}.auth-card .btn{width:100%;margin-top:8px}.field{color:#d7d3e0;flex-direction:column;gap:7px;font-size:12px;font-weight:800;display:flex}.field>span{letter-spacing:.07em}.field input,.field textarea,.field select{color:#fff;background:#12101f;border:1px solid #ffffff2a;border-radius:12px;outline:none;width:100%;min-height:48px;padding:11px 13px;font-weight:500}.field textarea{resize:vertical;min-height:100px}.field input::placeholder{color:#878195}.intro-card h1{margin:18px 0;font-size:clamp(2.6rem,5vw,4.6rem)}.goal-list{grid-template-columns:1fr 1fr;gap:12px;margin:26px 0;display:grid}.goal-list>div{background:#ffffff0a;border:1px solid #ffffff1c;border-radius:16px;align-items:center;gap:14px;padding:16px;display:flex}.goal-list svg{color:var(--accent);flex:none}.goal-list span{flex-direction:column;gap:4px;display:flex}.goal-list small{color:#aaa5b9}.goal-list strong{color:var(--accent);text-transform:uppercase;align-self:flex-start;margin-left:auto;font-size:8px}.rule-note{background:#f8aecc16;border:1px solid #f8aecc40;border-radius:14px;gap:10px;padding:13px;font-size:13px;display:flex}.rule-note svg{flex:none}.intro-card>.btn{min-width:265px}.page{max-width:900px;margin:40px auto 70px;padding:0 20px}.page h1{margin:18px 0;font-size:clamp(3rem,6vw,5.5rem)}.board-page>p{margin-bottom:27px}.segmented{background:#262234;border-radius:14px;gap:5px;margin-bottom:25px;padding:5px;display:inline-flex}.segmented button{color:#bab4c5;background:0 0;border:0;border-radius:10px;padding:10px 17px;font-weight:800}.segmented button.selected{background:var(--accent);color:#161621}.leaderboard{border:1px solid #ffffff20;border-radius:21px;overflow:hidden}.leader-row{border-bottom:1px solid #ffffff17;grid-template-columns:45px 1fr auto;align-items:center;gap:14px;padding:20px 23px;display:grid}.leader-row:last-child{border:0}.leader-row>b{color:var(--accent);font-size:20px}.leader-row strong{font-size:20px}.empty{text-align:center;color:#aba6b8;padding:55px 20px}.game-top{justify-content:space-between;align-items:end;display:flex}.game-count{color:var(--accent);font-size:28px;font-weight:800}.round-progress{background:#363244;border-radius:5px;height:5px;margin:0 0 22px;overflow:hidden}.round-progress i{background:var(--accent);height:100%;display:block}.game-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:22px;display:grid}.story-card{color:#211d2b;background:#e9e4dd;border-radius:25px;animation:.4s ease-out card-in;overflow:hidden;box-shadow:0 30px 70px #0007}.story-art{background:#765a89;height:clamp(220px,29vw,360px);position:relative;overflow:hidden}.story-art img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.story-art:after{content:"";background:linear-gradient(#0000,#1a142066);position:absolute;inset:50% 0 0}.story-product{background:#765bc4}.story-money{background:#d28678}.story-users{background:#609686}.story-team{background:#946a97}.art-id{z-index:1;color:#fff;letter-spacing:.12em;background:#211d2acc;border:1px solid #fff7;border-radius:9px;padding:7px 10px;font-size:10px;font-weight:800;position:absolute;bottom:17px;left:22px}.story-content{padding:clamp(22px,4vw,42px)}.card-kicker{color:#6c607a;text-transform:uppercase;letter-spacing:.14em;justify-content:space-between;gap:12px;font-size:10px;font-weight:900;display:flex}.story-content h2{margin:15px 0;font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.1}.story-content p{color:#514959;font-size:16px;line-height:1.75}.story-question{border-top:1px solid #c8c0c0;flex-direction:column;gap:8px;padding:20px 0 18px;display:flex}.story-question span{letter-spacing:.18em;color:#7b6284;font-size:10px;font-weight:900}.story-question strong{font-size:18px}.choice-label{color:#695e6f;margin-bottom:11px;font-size:11px;font-weight:700}.choices button{text-align:left;color:#28202d;background:#fcfaf6;border:1px solid #c9c1bd;border-radius:14px;align-items:center;gap:15px;width:100%;min-height:60px;margin:9px 0;padding:13px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.choices button b{color:#e8f2d2;background:#28213b;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.choices button span{flex:1;font-size:13px;font-weight:800;line-height:1.4}.choices button svg{flex:none}.game-aside{background:#242034;border:1px solid #fff2;border-radius:22px;padding:18px;position:sticky;top:16px}.aside-heading{align-items:center;gap:9px;margin-bottom:15px;font-weight:800;display:flex}.goal-hint{color:#c5c0d2;gap:9px;margin-top:16px;font-size:11px;line-height:1.45;display:flex}.goal-hint svg{color:var(--accent);flex:none}@keyframes card-in{0%{opacity:0;transform:translateY(18px)rotate(-1deg)}to{opacity:1;transform:translateY(0)rotate(0)}}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.metric{background:#262235;border:1px solid #ffffff21;border-radius:15px;min-width:0;padding:14px}.metric-top{color:#c8c3d2;white-space:nowrap;align-items:center;gap:8px;font-size:10px;font-weight:800;display:flex}.metric-icon{background:var(--tint);width:25px;height:25px;color:var(--color);border-radius:7px;place-items:center;display:grid}.metric-amber{--color:#ffd179;--tint:#ffd17922}.metric-mint{--color:#a6eed1;--tint:#a6eed122}.metric-pink{--color:#f2a0c8;--tint:#f2a0c822}.metric-violet{--color:#c0adff;--tint:#c0adff22}.metric strong{white-space:nowrap;text-overflow:ellipsis;margin:9px 0 10px;font-size:clamp(17px,2vw,23px);display:block;overflow:hidden}.metric strong small{color:#b6b0c2;font-size:.65em}.metric-bar{background:#ffffff21;border-radius:3px;height:5px;overflow:hidden}.metric-bar span{background:var(--color);border-radius:3px;height:100%;display:block}.metric-foot{color:#a8a2b6;white-space:nowrap;justify-content:space-between;align-items:center;gap:4px;margin-top:7px;display:flex}.metric-foot small{font-size:9px}.metric-foot b{font-size:10px}.outcome-icon{background:var(--accent);color:#24202e;border-radius:25px;place-items:center;width:90px;height:90px;margin:28px auto 10px;display:grid;transform:rotate(-8deg);box-shadow:0 0 50px #c1fb8e77}.outcome-text{color:#e0dce5;max-width:700px;margin:25px auto 32px;font-size:clamp(1.1rem,2vw,1.4rem)}.outcome-page .metrics-grid,.result-page .metrics-grid{max-width:750px;margin:0 auto 26px}.outcome-page .metric,.result-page .metric{text-align:left}.result-page{position:relative}.result-glow{z-index:-1;filter:blur(110px);opacity:.25;background:#9479cb;height:380px;position:absolute;top:0;left:20%;right:20%}.result-art{width:min(65%,420px);height:220px;margin:auto}.result-art img{object-fit:contain;filter:drop-shadow(0 15px 35px #0007);width:100%;height:100%}.score-chip{background:var(--accent);color:#211d29;border-radius:16px;align-items:center;gap:8px;margin-bottom:23px;padding:13px 20px;font-size:23px;font-weight:900;display:inline-flex}.score-chip small{font-size:10px}.result-goals{flex-wrap:wrap;justify-content:center;gap:9px;margin:0 0 26px;display:flex}.result-goals span{color:#a9a4b4;background:#fff1;border-radius:9px;align-items:center;gap:5px;padding:9px;font-size:10px;font-weight:800;display:inline-flex}.result-buttons{justify-content:center;gap:12px;display:flex}.admin-title{justify-content:space-between;align-items:center;gap:15px;margin:15px 0 28px;display:flex}.admin-title h1{margin:8px 0;font-size:clamp(2.3rem,4vw,3.8rem)}.admin-title p{margin:0}.admin-shell{grid-template-columns:200px minmax(0,1fr);gap:24px;display:grid}.admin-nav{flex-direction:column;align-self:start;gap:5px;display:flex;position:sticky;top:20px}.admin-nav button{text-align:left;color:#bcb7c7;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;min-height:44px;padding:10px 14px;font-weight:700;display:flex}.admin-body{min-width:0}.admin-body h2{margin:0 0 20px;font-size:clamp(1.8rem,3vw,2.8rem)}.admin-body>p{max-width:750px}.mobile-menu{display:none}.stats-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stat{background:#262236;border:1px solid #ffffff20;border-radius:16px;flex-direction:column;gap:12px;padding:21px;display:flex}.stat span{color:#bcb5c9;font-size:11px;font-weight:800}.stat b{font-size:34px}.admin-panel h3{margin-bottom:10px;font-size:20px}.admin-panel p{margin:8px 0;font-size:13px}.admin-panel>.btn{margin-top:13px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-stack{flex-direction:column;align-items:start;gap:14px;display:flex}.form-stack .field{width:100%}.button-row{flex-wrap:wrap;gap:8px;display:flex}.section-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.section-head h2{margin:0}.section-head p{margin:8px 0 0;font-size:12px}.content-list{border:1px solid #ffffff1e;border-radius:17px;overflow:hidden}.content-list>button,.admin-row{text-align:left;color:#f8f6f8;background:#211e2f;border:0;border-bottom:1px solid #ffffff1a;align-items:center;gap:14px;width:100%;min-height:65px;padding:11px 16px;display:flex}.content-list>button:last-child,.admin-row:last-child{border:0}.content-number{color:var(--accent);min-width:55px;font-size:10px;font-weight:900}.content-name{flex-direction:column;flex:1;gap:3px;display:flex}.content-name small{color:#a8a2b7}.pill{color:#c7c1d0;background:#ffffff15;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:800}.admin-row{flex-wrap:wrap;justify-content:space-between;font-size:12px}.admin-row span{color:#bbb5c6}.admin-row button{color:#f2a0c8;background:0 0;border:0;font-weight:800}.preview-list{flex-wrap:wrap;gap:6px;display:flex}.preview-list span{background:#ffffff14;border-radius:7px;padding:6px 9px;font-size:10px}.error-line{color:#ff9bb1;padding:4px;font-size:12px}.modal-overlay{z-index:60;background:#070610c9;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.edit-modal{background:#272238;border:1px solid #ffffff2b;border-radius:20px;flex-direction:column;width:min(900px,100%);max-height:calc(100vh - 28px);display:flex;box-shadow:0 30px 90px #000b}.modal-header,.modal-footer{justify-content:space-between;align-items:center;gap:10px;padding:17px 20px;display:flex}.modal-header h2{margin:0}.modal-footer{border-top:1px solid #ffffff20;justify-content:flex-end}.edit-scroll{flex-direction:column;gap:15px;padding:0 20px 20px;display:flex;overflow:auto}.edit-scroll h3{margin:10px 0 0}.checks{flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.checks label{align-items:center;gap:7px;display:flex}.option-edit{background:#181627;border:1px solid #ffffff1c;border-radius:13px;flex-direction:column;gap:11px;padding:15px;display:flex}.option-edit-head{align-items:center;gap:10px;display:flex}.option-edit-head span{color:#a49cb2;flex:1;font-size:9px}.option-edit-head button{color:#fff;background:0 0;border:0}@media (width<=850px){.home{grid-template-columns:1fr 1fr;gap:0 1vw}.hero-copy h1{font-size:clamp(3rem,6vw,4.5rem)}.hero-visual{height:450px}.game-grid{grid-template-columns:1fr}.game-aside{grid-row:1;position:static}.game-aside .metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.game-aside .metric{padding:10px}.game-aside .metric-top span:last-child{display:none}.game-aside .metric strong{font-size:15px}.game-aside .metric-foot small{font-size:8px}.admin-shell{grid-template-columns:160px minmax(0,1fr)}}@media (width<=650px){.site-header{height:58px;padding:0 16px}.brand-symbol{width:33px;height:33px;font-size:25px}.brand b{font-size:21px}.brand small{font-size:7px}.home{flex-direction:column;min-height:calc(100vh - 58px);padding:0 20px;display:flex}.hero-visual{aspect-ratio:auto;order:2;width:100%;height:250px;min-height:0;margin:4px 0 0}.hero-visual img{object-fit:contain;width:100%;height:100%}.hero-glow{filter:blur(50px)}.hero-sticker{padding:7px 9px;font-size:8px}.sticker-top{top:5%;right:0}.sticker-bottom{bottom:4%;left:0}.hero-copy{order:1;width:100%;padding:23px 0 0}.hero-copy h1{margin:15px 0;font-size:clamp(2.75rem,11vw,4.1rem)}.hero-copy p{margin:0;font-size:14px;line-height:1.55}.hero-actions{margin-top:18px}.hero-actions>.btn{width:100%;min-height:52px}.home-subactions{gap:18px;margin-top:7px}.home-subactions button{font-size:12px}.home-bottom{order:3;gap:10px;width:100%;margin-top:auto;padding:14px 0 17px;font-size:8px}.progress-dots i{width:12px}.auth-layout{grid-template-columns:1fr;gap:0;margin:18px auto 40px}.auth-art{display:none}.auth-card{min-height:0;padding:25px}.auth-card h1{font-size:2.5rem}.intro-layout{margin:10px auto 40px;padding:0 16px}.intro-card{border-radius:22px;padding:24px}.intro-card h1{font-size:2.75rem}.goal-list{grid-template-columns:1fr;margin:20px 0}.goal-list>div{padding:11px}.goal-list strong{font-size:7px}.intro-card>.btn{width:100%;min-width:0}.page{margin:25px auto 50px;padding:0 16px}.page h1{font-size:3.25rem}.leader-row{grid-template-columns:27px 1fr auto;gap:7px;padding:16px 12px}.leader-row strong{font-size:14px}.leader-row small{display:none}.game-layout{margin:8px auto 50px;padding:0 12px}.game-top h1{font-size:2.5rem}.game-count{font-size:24px}.game-aside{border-radius:16px;padding:10px}.game-aside .metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.game-aside .metric{border-radius:10px;padding:8px}.game-aside .metric-top{gap:0}.game-aside .metric-icon{width:20px;height:20px}.game-aside .metric-icon svg{width:12px}.game-aside .metric strong{margin:7px 0;font-size:12px}.game-aside .metric-foot small{text-overflow:ellipsis;font-size:6px;overflow:hidden}.game-aside .metric-foot b{font-size:7px}.aside-heading{margin-bottom:7px;font-size:12px}.goal-hint{display:none}.story-card{border-radius:18px}.story-art{height:210px}.story-content{padding:20px}.story-content h2{font-size:2rem}.story-content p{font-size:14px}.choices button{min-height:60px}.metrics-grid{gap:7px}.metric{padding:10px}.metric strong{font-size:15px}.metric-top{font-size:9px}.metric-foot small{font-size:8px}.metric-foot b{font-size:9px}.outcome-page>.metrics-grid,.result-page>.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.result-art{width:80%;height:180px}.result-buttons{flex-direction:column}.result-buttons .btn{width:100%}.admin-layout{margin:8px auto 50px;padding:0 12px}.admin-title{margin:10px 0 18px}.admin-title h1{font-size:2.5rem}.admin-title .btn{min-height:42px;padding:9px;font-size:11px}.mobile-menu{color:#fff;background:#29243c;border:1px solid #ffffff25;border-radius:10px;align-items:center;gap:7px;width:100%;margin-bottom:10px;padding:12px;font-weight:800;display:flex}.admin-shell{display:block}.admin-nav{display:none;position:static}.admin-nav.open{background:#252035;border-radius:13px;margin-bottom:15px;padding:9px;display:flex}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:15px}.stat b{font-size:26px}.form-grid{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:start}.content-list>button{gap:6px;padding:10px}.content-number{min-width:45px}.pill{font-size:8px}.modal-header,.modal-footer{padding:12px}.edit-scroll{padding:0 12px 15px}}@media (width<=365px){.hero-copy h1{font-size:2.55rem}.hero-visual{height:225px}.home-bottom span:last-child{display:none}.game-aside .metric strong{font-size:11px}.game-aside .metric-foot{display:none}.story-art{height:185px}.story-content{padding:16px}.card-kicker{font-size:8px}.choice-label{font-size:10px}}@media (width>=651px) and (width<=850px){.home{flex-direction:column;align-items:stretch;min-height:calc(100vh - 72px);padding:0 7vw;display:flex}.hero-copy{order:1;max-width:680px;padding:26px 0 10px}.hero-copy h1{margin:16px 0;font-size:clamp(3.8rem,8vw,5.3rem)}.hero-copy p{font-size:16px}.hero-actions{margin-top:20px}.hero-visual{order:2;align-self:center;width:min(100%,520px);height:360px}.home-bottom{order:3;width:100%;margin-top:auto}}@media (width<=650px){.game-aside .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.game-aside .metric{padding:10px}.game-aside .metric-top span:last-child{display:inline}.game-aside .metric strong{font-size:16px}.game-aside .metric-foot small{font-size:8px}.game-aside .metric-foot b{font-size:9px}}@media (width<=365px){.game-aside .metric strong{font-size:15px}.game-aside .metric-foot{display:flex}.outcome-page h1,.result-page h1{font-size:2.75rem}}@media (width<=650px){.outcome-page h1{font-size:2.75rem}}.export-group{background:#ffffff0b;border:1px solid #ffffff23;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:9px 12px;display:flex}.export-group span{min-width:82px;font-size:12px;font-weight:800}.export-group .btn{min-height:38px;padding:8px 12px;font-size:11px;text-decoration:none}.verify-check{color:#d9d4e2;align-items:center;gap:8px;margin:18px 0 8px;font-size:12px;display:flex}.recovery-code code{word-break:break-all;color:var(--accent);background:#151224;border-radius:7px;padding:7px;display:inline-block}.event-note{color:#ffe4c8;background:#f6b1821f;border:1px solid #f6b18275;border-radius:12px;margin:12px 0;padding:13px;font-size:12px;font-weight:700}.best-score{color:#d9ffbf;background:#c1fb8e18;border:1px solid #c1fb8e55;border-radius:14px;margin:0 0 15px;padding:16px}.best-score strong{font-size:19px}.last-consequence{color:#ded8e6;background:#ffffff0e;border-radius:12px;padding:14px}.score-interpretation{color:#b9fb9d!important;font-size:12px!important}.art-preview{background:#403753;border-radius:14px;height:160px;position:relative;overflow:hidden}.art-preview img{object-fit:cover;width:100%;height:100%}.art-preview span{color:#fff;background:#1d1935d9;border-radius:7px;padding:6px 9px;font-size:10px;font-weight:800;position:absolute;bottom:10px;left:10px}:root{--accent:#c7653c;--paper:#f3ead9;--sheet:#fffaf1;--ink:#142433;--ink-soft:#344b59;--quiet:#52616a;--line:#c9c9bf;--signal:var(--accent);--signal-dark:color-mix(in srgb, var(--accent), #142433 24%);--blue-paper:#d8e2e5;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);color:var(--ink);background:var(--paper);font-family:Manrope,system-ui,sans-serif}html{scroll-behavior:auto;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none}body{background:var(--paper);color:var(--ink);overscroll-behavior:none;min-width:320px}::selection{color:var(--ink);background:#c7653c55}button,a,[role=button]{touch-action:manipulation}button,[role=button]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select{color:var(--ink);font-size:16px}:is(button,input,textarea,select,a):focus-visible{outline:3px solid var(--signal);outline-offset:3px}h1,h2,h3{letter-spacing:-.025em;color:var(--ink);text-wrap:balance;font-family:Fraunces,Georgia,serif}p{color:var(--ink-soft);max-width:70ch;line-height:1.62}em{color:var(--signal-dark);font-style:normal}.skip-link{z-index:100;background:var(--ink);color:var(--sheet);border-radius:4px;padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-shell{background:var(--paper);min-height:100dvh;overflow:clip}.site-header{max-width:1440px;height:82px;padding:env(safe-area-inset-top,0px) clamp(20px, 3vw, 46px) 0;border-bottom:1px solid var(--line);background:var(--paper);view-transition-name:game-header}::view-transition-old(game-header){animation:none}::view-transition-new(game-header){animation:none}::view-transition{pointer-events:none}::view-transition-old(root){animation:stage-exit .3s var(--ease-out) both}::view-transition-new(root){animation:stage-enter .52s var(--ease-out) both}html[data-stage-kind=success]::view-transition-new(root){animation:launch-enter .52s var(--ease-out) both}html[data-stage-kind=failure]::view-transition-new(root){animation:setback-enter .52s var(--ease-out) both}.game-layout,.outcome-page,.result-page{animation:stage-enter .52s var(--ease-out) both}.result-page.result-success{animation:launch-enter .52s var(--ease-out) both}.result-page.result-unsuccessful{animation:setback-enter .52s var(--ease-out) both}html.stage-view-transition .game-layout,html.stage-view-transition .outcome-page,html.stage-view-transition .result-page,html.stage-vt-complete .game-layout,html.stage-vt-complete .outcome-page,html.stage-vt-complete .result-page,html.stage-instant .game-layout,html.stage-instant .outcome-page,html.stage-instant .result-page,html.stage-instant .outcome-page .metric-changed .metric-foot b{animation:none}html.stage-instant .outcome-page .metric-changed:before{opacity:0;animation:none}.brand-button{color:var(--ink);align-items:center;min-height:44px;display:inline-flex}.brand{gap:11px}.brand-symbol{background:var(--ink);width:38px;height:38px;color:var(--paper);box-shadow:none;border-radius:4px;place-items:center;display:grid;transform:none}.brand-symbol svg{width:28px;height:28px}.brand b{letter-spacing:-.035em;font:700 23px/1 Fraunces,Georgia,serif}.brand small{letter-spacing:.16em;color:var(--signal-dark);font-size:8px;font-weight:800}.icon-button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:4px;min-width:44px;min-height:44px}.btn{min-height:52px;box-shadow:none;transition:transform .14s var(--ease-out), background-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:5px;padding:13px 22px;font-weight:800}.btn-primary{background:var(--signal-dark);color:#fff;box-shadow:none}.btn-ghost{color:var(--ink);border:1px solid var(--ink);background:0 0}.btn:active:not(:disabled),.icon-button:active,.choices button:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.55}.eyebrow{letter-spacing:.15em;color:var(--signal-dark);font-size:11px;font-weight:800}.eyebrow>span{background:var(--signal);box-shadow:none}.text-link{color:var(--signal-dark);text-underline-offset:3px;text-decoration:underline}.form-error,.event-note{color:#643425;background:#f2d9d0;border:1px solid #bf765d;border-radius:5px;padding:14px}.toast{background:var(--ink);color:var(--sheet);bottom:calc(20px + env(safe-area-inset-bottom,0px));border:1px solid #71808a;border-radius:5px;box-shadow:0 20px 48px #14243338}.toast button{color:#ffd2b9}.spinner{border-color:#c7653c44;border-top-color:var(--signal)}.splash{min-height:100dvh;color:var(--ink);background:var(--paper)}.home{grid-template-rows:1fr auto;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:24px;max-width:1440px;min-height:calc(100svh - 82px);padding:38px clamp(24px,5vw,80px) 24px}.hero-copy{grid-area:1/1;align-self:center;padding:20px 0}.hero-copy h1{letter-spacing:-.035em;max-width:10ch;margin:20px 0 28px;font-size:clamp(3.8rem,6.6vw,6rem);line-height:.99}.hero-copy p{max-width:52ch;color:var(--ink-soft);font-size:clamp(1rem,1.3vw,1.2rem)}.hero-actions{margin-top:32px}.hero-actions>.btn{min-width:220px}.home-subactions{flex-wrap:wrap;gap:10px 20px;margin-top:18px;display:flex}.home-subactions button{color:var(--ink-soft);border:0;border-bottom:1px solid var(--line);background:0 0;padding:8px 0;font-size:13px}.hero-visual{background:var(--blue-paper);border-radius:0;grid-area:1/2;align-self:center;width:100%;height:min(61vw,670px);min-height:450px;max-height:calc(100svh - 175px);margin:0;overflow:hidden;box-shadow:18px 18px #d6d0c2}.hero-visual img{object-fit:cover;object-position:center;filter:none;width:100%;height:100%}.hero-glow{display:none}.hero-sticker{background:var(--paper);color:var(--ink);border:0;border-radius:2px;padding:10px 13px;font-size:11px;box-shadow:0 3px 14px #14243320}.sticker-top{top:16px;right:16px}.sticker-bottom{bottom:16px;left:16px}.home-bottom{border-top:1px solid var(--line);color:var(--quiet);letter-spacing:.09em;grid-area:2/1/auto/-1;padding-top:18px;font-size:10px}.progress-dots i{background:#a8b5ba}.progress-dots i:first-child{background:var(--signal)}.auth-layout{grid-template-columns:1fr minmax(400px,.85fr);gap:0;max-width:1160px;min-height:630px;margin:42px auto 80px;padding:0 24px}.auth-art{background:var(--ink) url(/illustrations/game-world-v3.webp) center/cover;min-height:630px;color:var(--sheet);border-radius:0;justify-content:flex-end;padding:44px;position:relative}.auth-art:before{content:"";background:linear-gradient(#0000 40%,#142433dc);position:absolute;inset:0}.auth-art>*{z-index:1}.auth-art>svg{display:none}.auth-art h2{color:var(--sheet);font-size:clamp(2.5rem,4vw,4.4rem);line-height:1.04}.auth-art p{color:#fff4e5}.auth-card{background:var(--sheet);border:1px solid var(--line);box-shadow:none;border-radius:0;min-height:630px;padding:clamp(28px,4vw,56px)}.auth-card h1{margin:14px 0;font-size:clamp(2.7rem,4vw,4.2rem)}.auth-card p{color:var(--ink-soft)}.auth-card .btn{width:100%}.field>span{color:var(--ink-soft);font-size:12px;font-weight:800}.field input,.field textarea,.field select{color:var(--ink);background:#fffef9;border:1px solid #aeb8b8;border-radius:4px;min-height:46px}.field input::placeholder,.field textarea::placeholder{color:#718087}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--signal)}.intro-layout{max-width:1060px;margin:46px auto 80px;padding:0 24px}.intro-card{background:var(--sheet);border:1px solid var(--line);border-radius:0;padding:clamp(28px,5vw,64px);box-shadow:16px 16px #d7d2c7}.intro-card h1{font-size:clamp(3rem,5vw,5.5rem);line-height:1.02}.intro-card>p{max-width:70ch}.goal-list{border-top:1px solid var(--line);border-left:1px solid var(--line);gap:0}.goal-list>div{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);background:0 0;border-radius:0;min-width:0;padding:19px}.goal-list span{min-width:0}.goal-list svg{color:var(--signal-dark)}.goal-list small{color:#45565d;line-height:1.45}.intro-resource-label{color:var(--ink);margin-top:28px;font-weight:800}.goal-list strong{color:var(--signal-dark);white-space:nowrap;background:0 0}.rule-note{color:var(--ink-soft);background:#e1e8e8;border-radius:4px}.rule-note svg{color:var(--signal-dark)}.game-layout{max-width:1420px;margin:auto;padding:30px clamp(20px,4vw,56px) 90px}.game-top{align-items:end;margin-bottom:16px}.game-layout{max-width:1160px}.game-top h1{margin:8px 0 0;font-size:clamp(2rem,3.8vw,4rem)}.game-count{color:var(--ink);font-variant-numeric:tabular-nums;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,4vw,4.5rem)}.game-count small{color:var(--quiet)}.round-progress{background:#c8ceca;border-radius:0;height:3px;margin-bottom:26px}.round-progress i{background:var(--signal);transform-origin:0;width:100%;transition:transform .2s var(--ease-in-out);border-radius:0}.game-grid{grid-template-columns:minmax(0,1fr);gap:24px;display:grid}.story-card{background:var(--sheet);color:var(--ink);border:1px solid var(--line);border-radius:0;animation:none;display:block;overflow:hidden;box-shadow:12px 12px #d8d2c6}.story-content{flex-direction:column;padding:clamp(22px,3vw,42px);display:flex}.story-art{background:var(--blue-paper);height:clamp(260px,33vw,440px);min-height:0}.story-art img{object-fit:cover;width:100%;height:100%}.story-art:after{display:none}.story-product,.story-money,.story-users,.story-team{background:var(--blue-paper)}.art-id{background:var(--paper);color:var(--ink);border:0;border-radius:2px;padding:6px 10px;bottom:14px;left:14px}.card-kicker{color:var(--signal-dark);border-bottom:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;padding-bottom:14px;font-size:11px}.story-content h2{color:var(--ink);margin:22px 0 18px;font-size:clamp(2rem,3vw,3.3rem);line-height:1.08}.story-content p{color:var(--ink-soft);margin-bottom:15px;font-size:15px;line-height:1.65}.story-question{color:var(--ink);background:0 0;border:0;margin:10px 0 18px;padding:0}.story-question span{color:var(--signal-dark);letter-spacing:.15em;font-size:10px}.story-question strong{font-size:19px;line-height:1.4}.choices{width:min(100%,760px);margin-top:26px}.choice-label{color:var(--quiet);margin-bottom:10px;font-size:11px}.choices button{color:var(--ink);min-height:60px;transition:transform .14s var(--ease-out), background-color .14s var(--ease-out), border-color .14s var(--ease-out);background:0 0;border:1px solid #9faeaf;border-radius:3px;margin:0 0 9px;padding:11px 14px}.choices button b{border:1px solid var(--signal);color:var(--signal-dark);font-variant-numeric:tabular-nums;background:0 0;border-radius:2px}.choices button svg{color:var(--signal-dark)}.choices button.choice-selected{border-color:var(--signal-dark);background:#ede4d4;transition:none}.choices button.choice-selected:disabled{opacity:1}.choices button.choice-selected b{background:var(--signal-dark);color:var(--sheet)}.choices button .choice-saving{flex:none;place-items:center;margin-left:auto;display:grid}.choice-saving .spinner{width:17px;height:17px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-aside{background:var(--ink);color:var(--sheet);border-radius:0;padding:22px 28px;position:static}.aside-heading{color:#fff5e6;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #ffffff40;padding-bottom:14px;font-size:12px}.game-aside .metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.goal-hint{color:#d7e1df;background:0 0;border-top:1px solid #ffffff40;border-radius:0;padding:16px 0 0;font-size:12px}.goal-hint svg{color:#f1ab89}.metrics-grid{gap:0}.metric{background:0 0;border:0;border-bottom:1px solid #d0d4d0;border-radius:0;min-width:0;padding:15px 8px}.metric-top{color:var(--ink-soft);font-size:11px}.metric-icon{color:var(--signal-dark);background:0 0;border-radius:0;width:19px;height:19px}.metric-amber,.metric-mint,.metric-pink,.metric-violet{--color:var(--signal);--tint:transparent}.metric strong{color:var(--ink);font-variant-numeric:tabular-nums;margin:5px 0;font-size:clamp(17px,2vw,24px)}.metric strong small{color:var(--ink-soft)}.metric-bar{background:#cad0cb;height:3px}.metric-bar span{background:var(--signal);width:100%;transition:transform .2s var(--ease-in-out);transform-origin:0}.metric-foot{color:var(--quiet);white-space:normal}.metric-foot small,.metric-foot b{font-size:12px}.metric-foot small{color:#45565d}.positive{color:#2e6d56}.negative{color:#a94735}.game-aside .metric{border-bottom:0;border-right:1px solid #ffffff30;padding:13px 16px}.game-aside .metric:first-child{padding-left:0}.game-aside .metric:last-child{border-right:0}.game-aside .metric-top,.game-aside .metric strong,.game-aside .metric strong small{color:var(--sheet)}.game-aside .metric-top span:last-child{display:inline}.game-aside .metric-foot,.game-aside .metric-foot small{color:#c1cccc}.game-aside .metric-bar{background:#ffffff36}.game-aside .metric-bar span{background:#ec9e78}.page{max-width:1120px;padding:40px 24px 100px}.page h1{font-size:clamp(3.2rem,6vw,6rem);line-height:1.02}.outcome-page,.result-page{text-align:left}.outcome-page{max-width:1040px}.outcome-page .outcome-text{animation:none}.outcome-page .metric-changed{position:relative}.outcome-page .metric-changed:before{content:"";background:color-mix(in srgb, var(--signal) 12%, transparent);pointer-events:none;animation:changed-metric .42s var(--ease-out) .12s both;position:absolute;inset:4px}.outcome-page .metric-changed .metric-foot b{animation:changed-delta .36s var(--ease-out) .12s both;position:relative}html.stage-view-transition .outcome-page .metric-changed:before,html.stage-view-transition .outcome-page .metric-changed .metric-foot b,html.stage-vt-complete .outcome-page .metric-changed .metric-foot b{animation:none}html.stage-view-transition .outcome-page .metric-changed:before{opacity:0}html.stage-vt-complete .outcome-page .metric-changed:before{animation:changed-metric .42s var(--ease-out) both}.outcome-icon{background:var(--signal);color:#fff;width:52px;height:52px;box-shadow:none;border-radius:3px;margin:26px 0 14px;transform:none}.outcome-icon svg{width:25px;height:25px}.outcome-text{max-width:60ch;color:var(--ink-soft);margin:22px 0 28px;font-size:clamp(1.1rem,2vw,1.35rem)}.outcome-page .metrics-grid,.result-page .metrics-grid{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;margin:0 0 28px}.outcome-page .metric,.result-page .metric{text-align:left;border-right:1px solid var(--line);padding:15px}.outcome-page .metric:nth-child(4n),.result-page .metric:nth-child(4n){border-right:0}.outcome-page>.btn{min-width:230px}.result-page{max-width:1060px}.result-glow{display:none}.result-art{aspect-ratio:16/9;background:var(--blue-paper);width:min(100%,650px);height:auto;margin:0 0 22px;overflow:hidden}.result-art img{object-fit:cover;filter:none}.result-page p{max-width:65ch;margin:0 0 24px}.score-chip{background:var(--ink);color:var(--sheet);box-shadow:none;border-radius:3px}.result-goals{justify-content:start}.result-goals span{border:1px solid var(--line);color:var(--ink-soft);background:0 0;border-radius:2px}.result-goals span.done{color:#215a45;background:#dfebe4}.result-buttons{justify-content:start}.board-page>p{color:var(--ink-soft)}.board-page h1 svg{color:var(--signal)}.segmented{border-bottom:1px solid var(--line);background:0 0;border-radius:0;gap:4px;padding:0}.segmented button{color:var(--ink-soft);border-bottom:3px solid #0000;border-radius:0;min-height:44px}.segmented button.selected{color:var(--ink);border-color:var(--signal);background:0 0}.best-score{color:var(--ink);background:#e1e8e8;border:0;border-radius:2px}.leaderboard{border:1px solid var(--line);background:var(--sheet);border-radius:0}.leader-row{border-color:var(--line);color:var(--ink);min-height:62px}.leader-row>b{color:var(--signal-dark);font-variant-numeric:tabular-nums}.leader-row strong{font-variant-numeric:tabular-nums}.leader-row small{color:var(--quiet)}.empty{color:var(--quiet);text-align:center;padding:42px}.admin-layout{max-width:1500px;margin:30px auto 80px;padding:0 clamp(16px,3vw,46px)}.admin-title{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:20px}.admin-title h1{font-size:clamp(2.6rem,4vw,4.5rem)}.admin-title p{color:var(--quiet)}.admin-shell{grid-template-columns:200px minmax(0,1fr);gap:26px}.admin-nav{border-top:1px solid var(--line);gap:0}.admin-nav button{border-bottom:1px solid var(--line);color:var(--ink-soft);border-radius:0;min-height:47px;font-weight:700}.admin-nav button.active{background:var(--ink);color:var(--sheet)}.admin-body h2{font-size:clamp(2rem,3vw,3rem)}.admin-body>p{color:var(--ink-soft)}.stats-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.stat{background:var(--sheet);border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-radius:0;gap:9px;padding:18px}.stat span{color:var(--quiet);font-size:11px}.stat b{color:var(--ink);font-variant-numeric:tabular-nums;font-family:Fraunces,Georgia,serif;font-size:33px}.admin-panel{background:var(--sheet);border:1px solid var(--line);border-radius:0;margin:16px 0;padding:22px}.admin-panel h3{font-size:23px}.admin-panel p{color:var(--ink-soft);font-size:13px}.section-head p{color:var(--quiet)}.content-list{border-color:var(--line);background:var(--sheet);border-radius:0}.content-list>button,.admin-row{background:var(--sheet);color:var(--ink);border-color:var(--line);min-height:70px}.content-art{object-fit:cover;background:var(--blue-paper);flex:none;width:64px;height:48px}.content-number{color:var(--signal-dark);font-variant-numeric:tabular-nums}.content-name b{font-size:13px}.content-name small,.admin-row span{color:var(--quiet)}.player-list .player-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;display:grid}.player-row b,.player-row span{overflow-wrap:anywhere;grid-column:1;min-width:0}.player-row span{color:var(--quiet)}.player-row small{white-space:nowrap;color:var(--quiet);grid-area:1/2/span 2}.pill{color:var(--ink-soft);background:#e6e7e1;border-radius:2px}.pill-live{color:#235b44;background:#d7e9df}.admin-row button{color:var(--signal-dark)}.admin-row.access-row,.admin-row.session-row,.admin-row.audit-row,.admin-row.result-row{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.admin-row:is(.access-row,.session-row,.audit-row,.result-row)>*{overflow-wrap:anywhere;min-width:0}.admin-row.audit-row time{color:var(--quiet);white-space:nowrap;font-size:12px}.formula-actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:18px;display:flex}.formula-actions small{max-width:100%;color:var(--quiet);overflow-wrap:anywhere;display:block}.recovery-code{border:1px solid var(--line);background:#f2f0e9;gap:8px;margin-top:18px;padding:15px;display:grid}.recovery-code input{border:1px solid var(--line);background:var(--sheet);width:100%;min-width:0;color:var(--ink);letter-spacing:.04em;padding:10px;font:700 14px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.recovery-code small{color:var(--ink-soft);line-height:1.5}.recovery-qr{align-items:center;gap:24px;margin-block:8px;display:flex}.recovery-qr svg{background:#fff;flex:none;width:240px;max-width:100%;height:auto;display:block}.recovery-qr p{max-width:36ch;margin:0}.recovery-code .recovery-address input{font:inherit;letter-spacing:normal}.recovery-code .recovery-address{margin-bottom:8px}.recovery-manual-code{gap:8px;display:grid}.recovery-manual-code span{font-size:14px}.recovery-qr-hint{margin:8px 0}@media (width<=700px){.recovery-qr{flex-direction:column;align-items:flex-start;gap:12px}}.preview-list span{color:var(--ink);background:#e5e9e6;border-radius:2px}.preview-list{gap:8px;display:grid}.import-change{border:1px solid var(--line);background:var(--sheet);min-width:0}.import-change summary{cursor:pointer;min-height:44px;padding:12px;font-weight:800}.import-change-row{border-top:1px solid var(--line);overflow-wrap:anywhere;grid-template-columns:minmax(100px,30%) minmax(0,1fr);gap:12px;padding:10px 12px;display:grid}.import-change-row span{background:0 0;padding:0;font-size:13px;font-weight:400}.formula-preview{background:var(--line);border:1px solid var(--line);gap:1px;margin-top:16px;display:grid}.formula-preview>div{background:var(--sheet);justify-content:space-between;gap:16px;padding:12px;display:flex}.error-line{color:#a94735}.modal-overlay{background:#142433b8;padding:12px}.edit-modal{background:var(--sheet);border:0;border-radius:4px;max-height:calc(100dvh - 24px);box-shadow:0 30px 80px #14243366}.modal-header,.modal-footer{border-color:var(--line)}.modal-header h2{font-size:28px}.edit-scroll{overscroll-behavior:contain}.option-edit{border-color:var(--line);background:#f2f0e9;border-radius:2px}.option-edit-head b{color:var(--signal-dark)}.option-edit-head span{color:var(--quiet)}.option-edit-head button{color:var(--ink)}.art-preview{background:var(--blue-paper);border:1px solid var(--line);border-radius:0}.art-preview img{object-fit:cover;width:100%;max-height:280px}.checks label{color:var(--ink-soft)}@keyframes stage-enter{0%{opacity:.08;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes stage-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes changed-metric{0%,to{opacity:0}35%{opacity:1}}@keyframes changed-delta{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes launch-enter{0%{opacity:.12;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes setback-enter{0%{opacity:.18;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (width<=1050px){.game-grid{grid-template-columns:1fr}.game-aside{grid-row:auto;padding:14px 18px;position:static}.game-aside .metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.game-aside .metric{border:0;border-right:1px solid #ffffff30;padding:10px}.game-aside .metric:last-child{border:0}.goal-hint{margin:0}.story-art{min-height:0}.admin-shell{grid-template-columns:170px minmax(0,1fr)}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.site-header{height:62px;padding:env(safe-area-inset-top,0px) 16px 0}.brand-symbol{width:32px;height:32px}.brand-symbol svg{width:24px;height:24px}.brand b{font-size:19px}.brand small{font-size:7px}.home{flex-direction:column;gap:20px;min-height:calc(100svh - 62px);padding:24px 18px 20px;display:flex}.hero-copy{order:1;padding:0}.hero-copy h1{max-width:12ch;margin:12px 0 16px;font-size:clamp(2.9rem,13vw,5rem)}.hero-copy p{font-size:14px;line-height:1.55}.hero-actions{margin-top:22px}.hero-actions>.btn{width:100%}.hero-visual{order:2;height:260px;min-height:0;max-height:none;box-shadow:8px 8px #d8d2c6}.hero-visual img{object-fit:cover}.home-bottom{order:3;width:100%;margin-top:auto}.auth-layout{min-height:0;margin:18px auto 46px;padding:0 16px;display:block}.auth-art{display:none}.auth-card{min-height:0;padding:26px}.auth-card h1{font-size:2.8rem}.intro-layout{margin:20px auto 55px;padding:0 16px}.intro-card{padding:24px;box-shadow:7px 7px #d7d2c7}.intro-card h1{font-size:clamp(2.6rem,10vw,4.2rem)}.goal-list{grid-template-columns:minmax(0,1fr)}.goal-list>div{grid-template-columns:30px minmax(0,1fr);gap:12px;min-height:82px;padding:12px 14px;display:grid}.goal-list strong{grid-column:2;align-self:center;margin-left:0;font-size:9px}.page{padding:28px 18px 80px}.page h1{font-size:clamp(2.9rem,12vw,4.5rem)}.game-layout{padding:20px 14px 70px}.game-top h1{font-size:2.2rem}.game-count{font-size:2.3rem}.game-grid{gap:15px}.game-aside{padding:12px}.game-aside .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-aside .metric{border-bottom:1px solid #ffffff30;padding:9px}.game-aside .metric:nth-child(2){border-right:0}.game-aside .metric strong{font-size:17px}.game-aside .metric-top span:last-child{display:inline}.game-aside .metric-foot{flex-wrap:wrap;align-items:baseline;gap:2px 8px;display:flex}.game-aside .metric-foot small,.game-aside .metric-foot b{font-size:11px;line-height:1.35}.goal-hint{padding-top:10px}.story-card{display:block;box-shadow:6px 6px #d8d2c6}.story-content{padding:22px}.story-art{height:230px;min-height:0}.story-content h2{margin:15px 0;font-size:2.4rem}.story-content p{font-size:14px}.story-question{margin:8px 0 16px}.story-question strong{font-size:17px}.choices button{min-height:58px}.outcome-page .metrics-grid,.result-page .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.outcome-page .metric:nth-child(2),.result-page .metric:nth-child(2){border-right:0}.outcome-page .metric-foot{grid-template-columns:minmax(0,1fr);align-content:start;gap:2px;min-height:32px;line-height:1.35;display:grid}.outcome-page .metric-foot b{justify-self:end}.result-buttons{flex-wrap:wrap}.result-buttons .btn{flex:200px}.admin-layout{padding:0 14px}.admin-title{align-items:start}.admin-title h1{font-size:2.6rem}.admin-shell{display:block;position:relative}.admin-nav{z-index:10;background:var(--sheet);border:1px solid var(--line);transform-origin:top;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out), visibility 0s linear .18s;border-radius:2px;grid-template-columns:1fr 1fr;margin:0;padding:6px;display:grid;position:absolute;top:0;left:0;right:0;transform:translateY(-8px)scale(.97);box-shadow:0 18px 36px #1424332b}.admin-nav.open{background:var(--sheet);opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out), visibility 0s;border-radius:2px;grid-template-columns:1fr 1fr;margin:0;padding:6px;display:grid;transform:translateY(0)scale(1)}.admin-nav.menu-instant,.admin-nav.open.menu-instant{transition:none}.admin-nav.open button{min-width:0;color:var(--ink-soft)}.admin-nav.open button.active{color:var(--sheet)}.mobile-menu{border:1px solid var(--ink);min-height:46px;color:var(--ink);background:0 0;border-radius:2px;align-items:center;gap:8px;margin-bottom:15px;display:flex}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{align-items:start}.section-head .btn{min-width:auto}.content-list>button{gap:8px;padding:10px}.content-art{width:44px;height:44px}.content-number{min-width:47px}.form-grid{grid-template-columns:1fr}.admin-row:is(.access-row,.session-row,.audit-row,.result-row){grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 12px;padding:16px}.admin-row:is(.access-row,.session-row,.audit-row,.result-row)>b{grid-column:1/-1}.admin-row:is(.access-row,.session-row)>span{grid-column:1}.admin-row:is(.access-row,.session-row)>button{grid-column:2;justify-self:end}.admin-row.audit-row>span,.admin-row.audit-row>time,.admin-row.result-row>span,.admin-row.result-row>strong{grid-column:1/-1}.admin-row.audit-row time{white-space:normal}.edit-modal{max-height:calc(100dvh - 20px)}.modal-footer{flex-wrap:wrap}.modal-footer .btn{flex:1}.art-preview img{max-height:200px}}@media (width<=390px){.hero-copy h1{font-size:2.75rem}.hero-visual{height:220px}.goal-list{grid-template-columns:1fr}.game-aside .metric strong{font-size:15px}.game-aside .metric-top span:last-child{font-size:10px}.story-content h2{font-size:2rem}.story-art{height:220px}.content-art{display:none}.admin-title .btn{min-height:42px;padding:9px}.stat b{font-size:26px}}@media (prefers-reduced-motion:reduce){.game-layout,.outcome-page,.result-page{animation:.15s linear both reduced-enter!important}html.stage-instant .game-layout,html.stage-instant .outcome-page,html.stage-instant .result-page,.story-card{animation:none!important}.outcome-page .outcome-text,.result-success .result-art img,.result-success .score-chip,.result-unsuccessful .result-art img{animation:none}.outcome-page .metric-changed .metric-foot b{animation:.15s linear both reduced-enter}.outcome-page .metric-changed:before,.spinner{animation:none}.outcome-page .metric-changed:before{opacity:0}.admin-nav{transition:opacity .15s linear,visibility 0s linear .15s!important;transform:none!important}.admin-nav.open{transition:opacity .15s linear,visibility!important}.admin-nav.menu-instant,.admin-nav.open.menu-instant{transition:none!important}.btn,.choices button,.round-progress i,.metric-bar span{transition-duration:0s}.btn:active:not(:disabled),.choices button:active:not(:disabled){transform:none}@keyframes reduced-enter{0%{opacity:.6}to{opacity:1}}}@media (prefers-contrast:more){:root{--quiet:#384b56;--line:#657680}.btn-ghost,.choices button{border-width:2px}}@media (prefers-reduced-transparency:reduce){.toast{background:var(--ink)}}#main-content:focus{outline:none}.last-consequence{background:var(--sheet);border:1px solid var(--line);color:var(--ink-soft);border-radius:2px}.score-interpretation{color:var(--ink-soft)!important}.event-note{color:#643425;background:#f2d9d0;border:1px solid #bf765d;border-radius:3px}.export-group{border:1px solid var(--line);background:#f2f0e9;border-radius:2px}.verify-check{color:var(--ink-soft)}.recovery-code code,.art-preview span{background:var(--ink);color:var(--paper);border-radius:2px}@media (width<=390px){.game-count{display:none}}.admin-loading{background:var(--blue-paper);color:var(--ink);border-left:2px solid var(--signal);align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:13px;font-weight:700;display:flex}@media (hover:hover) and (pointer:fine){.icon-button:hover{background:var(--sheet)}.btn-primary:hover:not(:disabled){background:var(--signal-dark)}.btn-ghost:hover:not(:disabled){background:var(--ink);color:var(--paper)}.home-subactions button:hover{color:var(--signal-dark)}.choices button:hover:not(:disabled){border-color:var(--ink);background:#f3ead9}.admin-nav button:hover:not(.active){background:var(--sheet);color:var(--ink)}.content-list>button:hover{background:#f0e9db}}
