/* Original mobile adventure-game skin for the Saebom demo. */
:root{--game-ink:#132b52;--game-frame:#16386b;--game-gold:#ffd36d;--game-paper:#fffdf5}
html,body{background:#c9daf1}.game-shell{background:#eaf2ff}.topbar{background:linear-gradient(110deg,#173b76,#102b57);border-bottom:3px solid #f2c55e;color:#fff;height:61px}.brand{color:#fff;font-weight:800}.brand-mark{width:31px;height:31px;object-fit:cover;border:2px solid #fff6;border-radius:9px;background:#fff;box-shadow:0 2px 0 #071b3b}.top-status{color:#ffe28b;letter-spacing:.04em}.app{background:#eaf2ff}.footer{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:8px 13px;background:#112b55;color:#c7dbf7;border-top:2px solid #f0c966;font-size:9px;font-weight:800;letter-spacing:.02em}.footer span:first-child{color:#ffdb83}
.button{border:2px solid #173665;border-radius:12px;box-shadow:0 4px 0 #10274d,0 7px 14px #193c7530;background:#2c66d8}.button:active{transform:translateY(3px);box-shadow:0 1px 0 #10274d}.button.secondary{border-color:#315185;box-shadow:0 3px 0 #bfd0ea}.button.ghost{border-color:#315185;box-shadow:0 3px 0 #c5d5ec}
/* Title screen: artwork rises first, icon glints, then the play command arrives. */
.title-screen{min-height:calc(100dvh - 96px);background:#132e5b;display:flex;flex-direction:column;overflow:hidden}.title-hero{height:clamp(325px,57dvh,570px);min-height:325px;flex:1;position:relative;overflow:hidden;background:#174585}.title-artwork{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;animation:titleArtRise 1.85s cubic-bezier(.18,.65,.21,1) both}.title-shade{position:absolute;inset:0;background:linear-gradient(180deg,#103c7a44 0%,#0d326833 36%,transparent 58%,#071d42c9 100%)}.title-emblem{position:absolute;z-index:2;top:25px;left:50%;width:86px;height:86px;transform:translateX(-50%);animation:emblemRise 1.55s cubic-bezier(.13,.74,.22,1) .62s both}.title-emblem img{width:100%;height:100%;object-fit:cover;border:4px solid #ffdf83;border-radius:23px;box-shadow:0 5px 0 #09275b,0 11px 26px #091c4966;background:#b6d9ff}.title-glint{position:absolute;right:-15px;top:-15px;color:#fff8cc;text-shadow:0 0 12px #fff,0 0 30px #ffe665;font-size:36px;opacity:0;animation:glintBlink .9s steps(1,end) 2.28s forwards}.title-wordmark{position:absolute;z-index:2;top:121px;left:16px;right:16px;text-align:center;color:#fff;animation:wordmarkRise .8s ease-out 1.48s both}.title-kicker{display:inline-block;padding:4px 9px;border-radius:999px;background:#163d7ab8;color:#ffe79b;font-size:10px;font-weight:900;letter-spacing:.14em}.title-wordmark h1{font-size:44px;line-height:1.04;letter-spacing:-.08em;margin:10px 0 7px;color:#fffaf0;text-shadow:0 3px 0 #113767,0 6px 14px #08234ba3}.title-wordmark h1 span{color:#ffe17a}.title-wordmark p{color:#fffdf0;font-size:13px;font-weight:800;margin:0;text-shadow:0 2px 8px #12375c}.title-scene-label{position:absolute;z-index:2;left:17px;bottom:14px;color:#fff4c9;font-size:10px;font-weight:900;letter-spacing:.13em;text-shadow:0 2px 5px #071d44;animation:wordmarkRise .6s ease 1.7s both}.title-scene-label span{display:block;font-size:14px;letter-spacing:-.02em;color:white;margin-top:3px}
.title-panel{position:relative;z-index:3;background:linear-gradient(160deg,#163e79,#102b55);border-top:4px solid #ffdb7a;color:#fff;padding:15px 20px 16px;box-shadow:0 -10px 28px #061f4b4d}.title-panel:before,.title-panel:after{content:"";position:absolute;top:10px;width:6px;height:6px;border:2px solid #ffe39a;transform:rotate(45deg)}.title-panel:before{left:8px}.title-panel:after{right:8px}.title-panel-top{display:flex;justify-content:space-between;color:#ffdf82;font-size:10px;font-weight:900;letter-spacing:.12em}.title-mission{margin:9px 0 7px;color:#d7e8ff;font-size:15px;line-height:1.4}.title-mission strong{color:#fff;font-weight:900}.title-panel .intro-conditions{margin:8px 0 12px;gap:5px}.title-panel .pill{background:#255397;color:#fff5d4;border:1px solid #6b93cb;border-radius:7px;font-size:10px;padding:5px 7px}.intro-actions{visibility:hidden;opacity:0;transform:translateY(12px);animation:actionsEnter .5s ease-out 3.22s forwards}.start-button{width:100%;background:linear-gradient(#ffe794,#f7bf51);color:#15325c;border:2px solid #f8e5aa;border-radius:12px;min-height:52px;font-size:17px;letter-spacing:-.03em;box-shadow:0 4px 0 #a37024,0 8px 18px #091c3b66}.start-button span{font-size:12px;margin-right:8px;vertical-align:1px}.start-button:hover{filter:brightness(1.05)}.start-button:active{box-shadow:0 1px 0 #a37024}.start-hint{text-align:center;color:#b8cff1!important;font-size:10px!important;margin:6px 0 0!important}.title-panel .disclaimer{font-size:10px!important;color:#a9c0e1!important;margin:9px 0 0!important;line-height:1.35}
@keyframes titleArtRise{from{opacity:.15;transform:translateY(65px) scale(1.06);filter:brightness(.8)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}@keyframes emblemRise{from{opacity:0;transform:translate(-50%,105px) scale(.66) rotate(-8deg)}70%{opacity:1}to{opacity:1;transform:translate(-50%,0) scale(1) rotate(0)}}@keyframes glintBlink{0%,20%,48%,72%,100%{opacity:0;transform:scale(.6) rotate(-12deg)}10%,34%,60%,85%{opacity:1;transform:scale(1.12) rotate(10deg)}}@keyframes wordmarkRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes actionsEnter{to{visibility:visible;opacity:1;transform:translateY(0)}}
/* Field and dialogue windows: clearly framed commands over the illustrated scene. */
.map-page{background:linear-gradient(#e3f0ff,#f6faff)}.map-heading{padding-top:18px}.map-heading .eyebrow{color:#2a5bb3}.map-heading h1,.notebook h1,.results h1{color:#142f5d}.turn-track span{height:8px;border:1px solid #7d9dcc}.turn-track .done{background:#f4c762;border-color:#c19537}.turn-track .next{background:#5d96f1;border-color:#2558ad}.map-panel{border:4px solid #173d74;border-radius:19px;box-shadow:0 5px 0 #0e2d59,0 12px 25px #21477b38}.map-marker{background:#fffdf3;border:2px solid #194783;border-radius:9px;box-shadow:0 4px 0 #0d2e60,0 8px 14px #10295145}.map-marker:before{border-color:#194783;background:#fffdf3}.map-marker:hover{filter:brightness(1.06);transform:translate(-50%,-52%)}.map-caption{background:#173b72d8;padding:6px 9px;border:1px solid #a2c4f8;border-radius:7px;bottom:9px;left:10px}.goal-box{border:2px solid #254e85;background:#fffdf4;box-shadow:0 3px 0 #b5c9e4;border-radius:12px}.goal-box strong:before{content:"✦ MISSION ";color:#2961bb;font-size:10px;letter-spacing:.06em}.event-banner{border:2px solid #285aa3;background:#fff7d9;box-shadow:0 3px 0 #bed2ed;color:#254c80}
.office-scene{height:min(44dvh,390px);min-height:290px;border-bottom:5px solid #143c72}.office-badge,.office-counter{border:2px solid #1d497f;border-radius:8px;box-shadow:0 3px 0 #0d2c5b}.office-content{position:relative;z-index:1;margin-top:-35px;padding:0 14px 28px;background:linear-gradient(transparent 0 35px,#eaf2ff 35px)}.speaker{display:table;background:#ffe08b;color:#17325d;border:2px solid #1c3c6a;border-bottom:0;border-radius:9px 9px 0 0;padding:5px 11px;margin:0 0 -1px 8px;position:relative;z-index:2;box-shadow:2px -2px 0 #12315c}.dialogue{position:relative;min-height:103px;border:3px solid #1d3c67;border-radius:11px;background:var(--game-paper);box-shadow:0 5px 0 #a7c1e2,0 10px 19px #183b6a24;padding:15px 17px 20px}.dialogue p{font-size:15px;font-weight:650;color:#1a3158}.dialogue:after{content:"▼";position:absolute;bottom:4px;right:12px;color:#2b61bd;font-size:11px;animation:promptBlink .9s infinite}@keyframes promptBlink{50%{opacity:.2;transform:translateY(3px)}}.choice-heading{color:#2c5289;font-size:12px;margin:20px 3px 10px}.choice-heading:before{content:"◆ ";color:#e0ac35}.choices{gap:10px}.choice{border:2px solid #294d81;border-radius:10px;background:#fffefa;box-shadow:0 4px 0 #b3c8e7;padding:11px 12px;min-height:55px;position:relative}.choice:hover,.choice:focus-visible{border-color:#1e63c8;background:#f2f8ff;transform:translateY(-2px)}.choice:active{transform:translateY(2px);box-shadow:0 1px 0 #b3c8e7}.choice-number{background:#ffdf81;color:#1b3b6d;border:1px solid #c49a40;border-radius:6px;font-size:12px}.choice strong{font-size:13px;color:#1a365f}.choice small{color:#637998}.stat-row{margin-top:18px}.stat{border:2px solid #c6d8ef;background:#fdfefa;border-radius:9px}.fresh-note{border:2px solid #a9c6ea;background:#fff8de;color:#274f86}.phase-button{background:#295fc9}
.notebook{background:linear-gradient(90deg,#e4ecfa 0 8px,#fffdf5 8px 100%);min-height:100%}.notebook .section-title:first-child .eyebrow{background:#ffda80;border:2px solid #285187;border-radius:7px;padding:5px 9px;color:#234677}.listing-card{border:2px solid #b8cce8;background:#fffefa;box-shadow:0 3px 0 #ccd9ec;border-radius:12px}.listing-thumb{border:2px solid #d0dded;border-radius:8px}.tag{border-radius:5px}.results{background:#eef5ff;min-height:100%}.results .listing-card.selected{border:3px solid #e2ae37;background:#fff8e8;box-shadow:0 4px 0 #c18b2d}.offer-option{border:2px solid #a7c4e5;border-radius:9px;background:#fffefa;box-shadow:0 2px 0 #c9d7e7}.offer-option.selected{border-color:#c99733;background:#fff4d4;box-shadow:0 3px 0 #b78930}.quote-box{border:2px solid #29528b;background:#fff7db;box-shadow:0 3px 0 #bfd0e6}.ending-hero{background-image:url('assets/title-hero.webp');background-position:center 51%}.ending{padding-top:5px}.ending .outcome-card{border:2px solid #b8cce8}.missed{border:2px solid #bfd2eb;background:#fffdf4}
@media(min-width:600px){.game-shell{border:4px solid #123461;border-radius:21px;min-height:calc(100dvh - 42px);margin:21px auto}.title-screen{min-height:680px}}
@media(max-width:380px){.title-wordmark h1{font-size:39px}.title-panel{padding:12px 16px 14px}.title-hero{min-height:310px}.title-mission{font-size:14px}.top-status{font-size:10px}}
@media(max-height:700px){.title-hero{min-height:300px;height:45dvh}.title-emblem{width:72px;height:72px;top:16px}.title-wordmark{top:99px}.title-wordmark h1{font-size:36px}.title-panel{padding-top:11px;padding-bottom:11px}}
@media(prefers-reduced-motion:reduce){.title-artwork,.title-emblem,.title-wordmark,.title-scene-label,.title-glint,.intro-actions{animation:none!important;opacity:1!important;visibility:visible!important;transform:none!important;filter:none!important}.title-emblem{transform:translateX(-50%)!important}.title-glint{display:none}.dialogue:after{animation:none}}
.title-emblem img{animation:iconFlash .9s steps(1,end) 2.28s 1}@keyframes iconFlash{0%,20%,48%,72%,100%{filter:brightness(1)}10%,34%,60%,85%{filter:brightness(1.35)}}
@media(prefers-reduced-motion:reduce){.title-emblem img{animation:none!important}}
/* Focused mini-game layout: scene first, information on demand. */
.topbar{height:52px;padding:0 15px;border-bottom-width:2px}.brand{font-size:13px;gap:7px}.brand-mark{width:29px;height:29px}.top-status{font-size:13px;color:#ffe28b}.game-shell{min-height:100dvh}.title-screen{min-height:calc(100dvh - 52px)}.title-hero{min-height:340px;height:auto;flex:1}.title-wordmark{top:128px}.title-wordmark h1{font-size:48px}.title-panel{padding:16px 19px 18px;border-top-width:3px}.title-panel:before,.title-panel:after{display:none}.title-objective{text-align:center;color:#e1edff;font-size:12px;font-weight:700;letter-spacing:-.02em;margin:0 0 14px}.title-panel .disclaimer{text-align:center;margin:12px 0 0!important;color:#a9bddb!important}.intro-actions{margin:0}.start-button{min-height:53px}.start-button span{font-size:11px;margin:0 0 0 8px}
.map-page{min-height:calc(100dvh - 52px);padding:18px 0 21px;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 40%,#315b96,#15345f 80%)}.map-heading{padding:0 17px 7px;display:flex;align-items:center;justify-content:space-between;gap:10px}.map-heading h1{font-size:21px;color:#fff;margin:0;text-shadow:0 2px 7px #0b234f}.journal-button,.office-journal{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:42px;min-height:39px;padding:5px 9px;border:2px solid #f7db95;border-radius:10px;background:#15386e;color:#fff6db;font-size:19px;font-weight:900;box-shadow:0 3px 0 #0b244a}.journal-button span{font-size:12px;vertical-align:middle}.map-panel{margin:auto 13px;aspect-ratio:2 / 2.65;max-height:590px;border:3px solid #f7d47a;border-radius:13px;box-shadow:0 5px 0 #092249,0 16px 30px #071b3c77}.map-marker{min-width:0;max-width:none;padding:7px 9px;border:2px solid #163f7a;border-radius:8px;white-space:nowrap;display:flex;align-items:center;gap:5px}.map-marker strong{font-size:11px}.map-marker.visited{background:#eaf2ff}.marker-visited{color:#225ac5;font-size:12px;font-weight:900}.event-banner{margin:7px 13px 0;padding:9px 11px;font-size:12px}
.office-scene{height:min(48dvh,420px);min-height:300px}.office-badge{font-size:12px}.office-journal{position:absolute;z-index:2;top:14px;right:15px;width:40px;height:40px}.office-content{padding-bottom:28px}.choice-heading{margin:18px 3px 10px;font-size:12px}.choices{gap:9px}.choice{min-height:51px;padding:10px 14px;justify-content:space-between}.choice strong{font-size:14px}.choice-arrow{font-size:27px;line-height:1;color:#2f65b7;font-weight:600}.fresh-note{font-size:13px;font-weight:900;width:max-content;max-width:100%;padding:9px 12px}.dialogue p{font-size:15px}
.notebook{padding:18px;min-height:calc(100dvh - 52px)}.notebook .section-title:first-child{margin-bottom:10px}.notebook h1{margin:0;font-size:25px}.notebook .section-title h2{font-size:15px}.notebook-details,.end-details{margin-top:13px;border:2px solid #c5d7ec;background:#fffdf6;border-radius:11px;color:#1a355f}.notebook-details summary,.end-details summary{cursor:pointer;padding:13px 14px;font-size:13px;font-weight:800;list-style:none}.notebook-details summary::-webkit-details-marker,.end-details summary::-webkit-details-marker{display:none}.notebook-details summary:after,.end-details summary:after{content:'+';float:right;font-size:19px;line-height:14px;color:#4166a1}.notebook-details[open] summary:after,.end-details[open] summary:after{content:'−'}.notebook-detail-body{padding:0 14px 12px}.notebook-detail-body p{font-size:12px;line-height:1.5;margin:6px 0}.notebook-details .note-list{padding:0 10px 12px}.notebook-details .note-list li{border:0;border-top:1px solid #dce6f1;border-radius:0;background:none;padding:8px 4px}
.results{padding:18px;min-height:calc(100dvh - 52px)}.results .section-title{margin-bottom:15px}.results h1{font-size:25px;margin:0}.results .listing-grid{gap:9px}.results .listing-card.compact{align-items:center;min-height:78px;padding:8px 10px;text-align:left}.results .listing-card.compact .listing-thumb{width:60px;height:58px;flex-basis:60px}.results .listing-card.compact .listing-body{position:relative;padding-right:13px}.results .listing-card.compact .listing-top{display:block}.results .listing-card.compact h3{font-size:14px;margin:0 0 3px}.results .listing-card.compact .price{font-size:14px}.listing-pick{position:absolute;right:0;top:8px;color:#2c5eb1;font-size:24px}.selection-info{margin-top:17px;padding:12px 13px;background:#fffef9;border:2px solid #b6cae5;border-radius:10px}.selection-info strong{display:block;font-size:13px}.selection-info span{display:block;font-size:12px;color:#647795;margin-top:3px}.result-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.offer-option{font-size:13px;font-weight:800;padding:10px 8px;text-align:center}.quote-box{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;margin:13px 0}.quote-box strong{font-size:17px}.results .choice-heading{margin:18px 2px 0}
.ending-hero{height:200px}.ending{padding:0 18px 25px;margin-top:-15px}.ending h1{font-size:27px;margin-bottom:5px}.ending .lead{font-size:13px;margin-bottom:15px}.ending .outcome-card{margin:10px 0;padding:15px}.ending .outcome-card h2{font-size:17px;margin:0 0 6px}.final-price{font-size:27px;font-weight:900;color:#2757b2}.final-badge{display:inline-block;margin-top:8px;padding:5px 8px;border-radius:6px;background:#e4f6e7;color:#24643b;font-size:11px;font-weight:900}.final-badge.warning{background:#fff0dc;color:#9a5a1a}.ending .end-details{margin-top:12px}.ending .end-details summary{padding:10px 11px}.ending .outcome-card .end-details{border:1px solid #d4e0ed}.ending .home-facts{padding:8px 9px;margin:0}.ending .checklist{padding:0 10px 12px;margin:0}.ending .missed{margin:12px 0 18px;border:2px solid #bfd2eb;background:#fffdf4;padding:0}.ending .missed ul{margin:0;padding:0 18px 12px 28px}.ending .missed li{font-size:12px;color:#526984;line-height:1.5;margin:5px 0}.integration-note{margin-top:13px}
@media(max-width:380px){.title-wordmark h1{font-size:42px}.map-marker strong{font-size:10px}.map-marker{padding:6px 7px}.results .listing-card.compact .listing-thumb{width:55px;flex-basis:55px}}

/* A short spoken exchange stays in focus while the next 2–3 replies appear below it. */
.office-scene.conversation-started{height:210px;min-height:210px;transition:height .28s ease}.office-scene.conversation-started .portrait{width:47%;bottom:-20%}
.talk-log{display:grid;gap:9px;padding:12px 0 3px}.talk-turn{max-width:92%;border:2px solid #1d3c67;border-radius:12px;background:#fffdf5;box-shadow:0 3px 0 #b6cae6;padding:10px 13px;animation:slideUp .22s ease}.talk-turn.agent{justify-self:start}.talk-turn.player{justify-self:end;background:#e8f2ff;border-color:#3973be}.talk-name{display:block;font-size:11px;font-weight:900;color:#315c9e;margin-bottom:4px}.talk-turn p{margin:0;font-size:14px;line-height:1.55;font-weight:650;color:#20385c;word-break:keep-all}.talk-turn.player p{color:#244d86}.office-content .choice-heading{margin-top:18px}.office-content .choices{padding-bottom:4px}.office-content .choice strong{line-height:1.45;word-break:keep-all}.decision-dialogue{border:2px solid #315b91;border-radius:11px;background:#fffdf3;padding:10px 13px;margin:0 0 14px;box-shadow:0 3px 0 #c4d5eb}.decision-dialogue span{display:block;font-size:11px;font-weight:900;color:#315b91;margin-bottom:4px}.decision-dialogue p{font-size:14px;line-height:1.5;margin:0;color:#1d3457;font-weight:700}.decision-choices{margin-top:9px}.ending-story{border:2px solid #c2d3e9;border-radius:12px;background:#fffdf5;padding:14px;font-size:14px;line-height:1.7;color:#304968;word-break:keep-all}
@media(max-height:700px){.title-hero{min-height:320px}.map-panel{max-height:calc(100dvh - 155px)}.office-scene{height:40dvh;min-height:265px}}
.title-screen .title-objective{color:#e5efff}
.map-tools{display:flex;align-items:center;gap:7px}.hint-button{width:39px;height:39px;border:2px solid #f7db95;border-radius:10px;background:#15386e;color:#fff6db;font-size:19px;font-weight:900;box-shadow:0 3px 0 #0b244a}
.game-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:17px;background:#071d41c9;backdrop-filter:blur(4px)}.discovery-panel,.hint-panel{width:min(100%,390px);border:4px solid #f6d580;border-radius:19px;background:linear-gradient(#fffefa,#ecf5ff);box-shadow:0 7px 0 #0e2d5d,0 21px 50px #061632aa;padding:19px;text-align:center;animation:rewardPop .38s cubic-bezier(.17,.82,.28,1.18) both}.discovery-star,.hint-spark{font-size:29px;color:#d5a83c;line-height:1;animation:rewardShine 1.2s ease-in-out infinite}.discovery-panel h2,.hint-panel h2{font-size:24px;letter-spacing:-.05em;margin:6px 0 3px;color:#173763}.discovery-sub{font-size:12px;color:#677b98;margin:0 0 13px}.discovery-list{display:grid;gap:8px;text-align:left;max-height:50dvh;overflow:auto}.discovery-card{display:flex;align-items:center;gap:10px;padding:8px;border:2px solid #c6d7eb;border-radius:11px;background:#fff;box-shadow:0 2px 0 #d5e0ef}.discovery-card img{width:57px;height:57px;flex:0 0 57px;object-fit:cover;border-radius:7px}.discovery-card strong{display:block;font-size:14px;color:#19355f;margin-bottom:5px}.discovery-fit,.fit-tag{display:inline-block;border-radius:6px;padding:4px 6px;font-size:11px;font-weight:900}.fit-A{background:#e3f5e9!important;color:#267046!important}.fit-B{background:#fff1cf!important;color:#925b15!important}.fit-C{background:#ffe5df!important;color:#a64d3d!important}.discovery-note{font-size:10px;color:#71839c;margin:12px 0}.discovery-panel .button,.hint-panel .button{margin-top:4px}.hint-panel{border-color:#9fc2ff;padding:24px 21px}.hint-panel p{font-size:16px;font-weight:700;line-height:1.55;color:#28446d;margin:17px 0 23px}.hint-spark{color:#477de0}@keyframes rewardPop{from{opacity:0;transform:translateY(35px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rewardShine{50%{transform:scale(1.25);filter:brightness(1.2)}}@media(prefers-reduced-motion:reduce){.discovery-panel,.hint-panel,.discovery-star,.hint-spark{animation:none!important}}
/* Compact reward, with the exact comparison kept in the notebook. */
.fit-S{background:#dce9ff!important;color:#234e9c!important}.discovery-card>div{min-width:0}.discovery-card strong{margin:0 0 3px}.discovery-card small{display:block;font-size:10px;line-height:1.35;color:#5d7192;margin-top:3px;font-weight:700}.discovery-fit{margin:1px 0 2px}.rank-pill{display:inline-block;margin-right:5px;padding:2px 5px;border-radius:5px;background:#ffdf88;color:#584019;font-size:10px;font-weight:900;vertical-align:1px}.top-pick{border:2px solid #e7bc57;border-radius:11px;background:#fff5d8;color:#725015;padding:9px 11px;margin:0 0 12px;font-size:12px;font-weight:900}.top-pick strong{display:block;font-size:15px;color:#244878;margin:2px 0}.top-pick small{display:block;color:#657793;font-size:11px}.quality-grid{display:grid;grid-template-columns:minmax(112px,1fr) 1.25fr;gap:6px 7px;border-top:1px solid #dbe5ef;padding-top:9px;margin-top:9px;font-size:11px;line-height:1.3}.quality-grid span{color:#6e8098}.quality-grid strong{color:#1d426f;text-align:right;font-weight:850}.quality-verdict{font-size:11px;line-height:1.55;color:#516984;margin-top:9px;padding:8px;background:#f0f6ff;border-radius:7px}.quality-verdict b{color:#284d80}.results .listing-grade{display:inline-block;font-size:11px;font-weight:900;border-radius:5px;padding:2px 5px}.results .listing-card.compact .listing-top h3{padding-right:12px}.ending-quality{font-size:12px;font-weight:750;color:#4e6582;line-height:1.55;margin-top:10px}.ending .final-badge+.final-badge{margin-left:5px}

/* Story mode: two facing pixel portraits and one readable dialogue window. */
.jrpg-office{min-height:calc(100dvh - 59px);background:#152b4d;display:flex;flex-direction:column;color:#18304e}.jrpg-scene{height:clamp(205px,36dvh,300px);position:relative;flex:0 0 auto;background-position:center;background-size:cover;overflow:hidden;border-bottom:5px solid #111f36;image-rendering:pixelated}.jrpg-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(#111c35a0,#12254a35 35%,#102242a8);pointer-events:none}.jrpg-scene.is-tour{background-size:cover;background-position:center 45%}.jrpg-location{position:absolute;z-index:4;top:12px;left:13px;background:#f9e5a8;color:#1b2f4c;padding:5px 9px;border:2px solid #263a58;box-shadow:3px 3px 0 #162843;font-weight:900;font-size:11px}.jrpg-scene .office-journal{z-index:4}.jrpg-portrait{position:absolute;z-index:2;bottom:-5px;height:88%;width:48%;object-fit:contain;object-position:bottom;image-rendering:pixelated;filter:drop-shadow(3px 3px 0 #111d36) drop-shadow(-2px 0 0 #111d36)}.jrpg-portrait.buyer{left:-6%;transform:translateY(8px);opacity:.9}.jrpg-portrait.agent{right:-6%;height:100%;animation:characterIn .28s steps(4) both}.jrpg-scene.is-tour .jrpg-portrait{height:75%;width:36%;opacity:.94}.jrpg-bottom{position:relative;margin-top:-16px;z-index:3;padding:0 12px 20px;flex:1;background:linear-gradient(transparent 0 16px,#152b4d 16px)}.jrpg-dialogue{position:relative;border:3px solid #17294b;outline:2px solid #e5c373;background:#fff9e7;box-shadow:4px 5px 0 #081b35;padding:15px 15px 17px;min-height:103px}.jrpg-speaker{display:inline-block;position:absolute;top:-15px;left:10px;background:#f1c767;border:2px solid #17294b;padding:3px 10px;color:#233758;font-size:12px;font-weight:900}.jrpg-dialogue p{font-size:15px;line-height:1.55;font-weight:750;word-break:keep-all;margin:7px 5px 0}.jrpg-player-line{font-size:11px;line-height:1.4;color:#597195;border-bottom:1px dashed #b8c4cf;padding:5px 2px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jrpg-player-line span{font-weight:900;color:#284f85;margin-right:7px}.jrpg-prompt{position:absolute;bottom:4px;right:9px;color:#4067aa;font-size:10px;animation:promptBlink .85s steps(2) infinite}.jrpg-options{display:grid;gap:8px;margin-top:13px}.jrpg-choice{width:100%;min-height:45px;border:2px solid #96add3;border-bottom:4px solid #7192c1;border-radius:3px;background:#fffdf2;color:#1d3454;text-align:left;padding:8px 10px;display:flex;align-items:center;gap:8px;box-shadow:3px 3px 0 #081b35}.jrpg-choice:hover,.jrpg-choice:focus-visible{background:#fff0c6;border-color:#e0b851}.jrpg-choice:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #081b35}.jrpg-choice strong{flex:1;font-size:12px;line-height:1.35;word-break:keep-all}.choice-diamond{font-size:10px;color:#e6ad39}.jrpg-choice>span:last-child{font-size:20px;color:#4772b2}.story-reveal{display:flex;align-items:center;gap:6px;background:#283f65;color:#fff4d3;padding:7px 9px;margin-top:9px;border:1px solid #e5c36d;font-size:10px}.story-reveal strong{flex:1;font-size:11px}.story-reveal button{border:0;background:#ffe29a;color:#233b61;padding:4px 7px;font-size:10px;font-weight:900}.journal-lead{color:#526986;font-size:12px}.story-listing{align-items:flex-start}.story-listing .listing-thumb{width:73px;flex-basis:73px}.story-listing .listing-top{display:block}.story-grade{display:inline-block;padding:3px 6px;border-radius:3px;font-size:10px;margin-top:4px}.fit-F{background:#692d41!important;color:#fff4f0!important}.story-ending,.time-skip{min-height:calc(100dvh - 59px);background:#eff3fa}.ending-illustration{height:230px;background-size:cover;background-position:center;image-rendering:pixelated;filter:saturate(.85)}.story-ending.danger .ending-illustration{filter:grayscale(.8) contrast(1.2)}.ending-content{position:relative;margin:-22px 14px 0;background:#fffdf3;border:3px solid #233b62;box-shadow:4px 5px 0 #9bb2d2;padding:18px 15px 24px}.ending-label{font-size:11px;letter-spacing:.08em;color:#3562a4;font-weight:900}.ending-content h1{font-size:25px;line-height:1.2;margin:5px 0 9px}.ending-content .lead{font-size:13px;line-height:1.55;color:#526782}.ending-story{background:#edf3ff;border-left:4px solid #d6ad4f;padding:11px;font-size:13px;line-height:1.65}.ending-home{display:flex;justify-content:space-between;align-items:center;border:2px solid #bbcbdf;padding:9px;margin:12px 0;font-size:13px;font-weight:900}.ending-home strong{padding:4px 7px}.story-ending .missed{padding:0;margin:12px 0}.story-ending .missed p{padding:0 12px 10px;margin:0;font-size:12px;color:#5a6f89;line-height:1.5}.story-ending .button.secondary{display:block;text-decoration:none;text-align:center;margin-top:9px}.time-skip{display:flex;flex-direction:column;padding:20px;background:#0e1b32;color:#fff}.time-skip-scene{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:center;background:linear-gradient(#0d1c3399,#0c1421df),url('assets/listing-L6.webp') center/cover;border:3px solid #e3c078;padding:25px;animation:timeReveal 2.4s steps(9) both}.time-skip-scene span{color:#e7c875;font-size:12px;font-weight:900}.time-skip-scene h1{font-size:29px;margin:18px 0}.time-skip-scene p{font-size:14px;line-height:1.8}.time-skip>.button{margin-top:17px}@keyframes timeReveal{0%{filter:brightness(0);opacity:0}100%{filter:brightness(1);opacity:1}}@media(prefers-reduced-motion:reduce){.jrpg-portrait.agent,.time-skip-scene,.jrpg-prompt{animation:none!important}}

.agency-preview-scene img{image-rendering:pixelated}.mood-sigh .jrpg-portrait.agent{animation:spriteSigh .55s steps(5) both}.mood-secret .jrpg-portrait.agent{animation:spriteSecret .42s steps(4) both}.mood-confident .jrpg-portrait.agent{animation:spriteConfident .45s steps(4) both}.mood-concerned .jrpg-portrait.buyer{animation:spriteConcerned .45s steps(4) both}.mood-curious .jrpg-portrait.buyer{animation:spriteCurious .4s steps(4) both}.mood-relaxed .jrpg-portrait.agent{animation:spriteRelaxed .35s steps(4) both}.time-skip-buyer{width:120px;height:130px;object-fit:contain;image-rendering:pixelated;margin:24px auto 0;filter:grayscale(1) drop-shadow(3px 4px 0 #060d17);animation:spriteConcerned .6s steps(4) 2}.mood-secret .jrpg-speaker{background:#b7c7ff}.mood-sigh .jrpg-speaker{background:#d7dded}.mood-confident .jrpg-speaker{background:#ffd880}@keyframes spriteSigh{0%{transform:translateY(-9px) rotate(-3deg)}55%{transform:translateY(8px) rotate(3deg)}100%{transform:translateY(4px) rotate(2deg)}}@keyframes spriteSecret{0%{transform:translateX(22px) scale(.92)}100%{transform:translateX(-8px) scale(1.04)}}@keyframes spriteConfident{0%{transform:translateY(15px) scale(.93)}100%{transform:translateY(-3px) scale(1.02)}}@keyframes spriteConcerned{0%{transform:translateY(5px) rotate(0)}30%{transform:translateY(5px) rotate(-4deg)}65%{transform:translateY(5px) rotate(3deg)}100%{transform:translateY(5px) rotate(0)}}@keyframes spriteCurious{0%{transform:translateY(11px)}60%{transform:translateY(1px)}100%{transform:translateY(5px)}}@keyframes spriteRelaxed{0%{transform:translateY(-4px)}100%{transform:translateY(5px)}}@media(prefers-reduced-motion:reduce){.mood-sigh .jrpg-portrait.agent,.mood-secret .jrpg-portrait.agent,.mood-confident .jrpg-portrait.agent,.mood-concerned .jrpg-portrait.buyer,.mood-curious .jrpg-portrait.buyer,.mood-relaxed .jrpg-portrait.agent,.time-skip-buyer{animation:none!important}}
.quality-assumptions{font-size:10px;line-height:1.45;color:#788aa1;margin-top:8px}.listing-card .listing-body{min-width:0}
/* Agency dossier shown before a visit is spent. */
.agency-panel{width:min(100%,390px);max-height:calc(100dvh - 34px);overflow-y:auto;border:4px solid #f6d580;border-radius:19px;background:#fffefa;box-shadow:0 7px 0 #0e2d5d,0 21px 50px #061632aa;animation:rewardPop .28s ease-out both}.agency-preview-scene{height:135px;position:relative;overflow:hidden;background-position:center 48%;background-size:cover;border-bottom:3px solid #d8b357}.agency-preview-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b2c6088,#0b2c6012 72%)}.agency-preview-scene img{position:absolute;z-index:1;right:8px;bottom:-46px;height:186px;max-width:54%;object-fit:contain;object-position:bottom}.agency-preview-scene span{position:absolute;z-index:2;top:13px;left:13px;padding:5px 8px;border-radius:6px;border:1px solid #ffe1a0;background:#173969;color:#fff1c5;font-size:10px;font-weight:900}.agency-preview-body{padding:15px 17px 16px;color:#203c68}.agency-preview-body h2{margin:0;font-size:23px;letter-spacing:-.05em}.agency-person{font-size:12px;font-weight:800;color:#667a98;margin:1px 0 13px}.agency-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.agency-facts>div{min-width:0;padding:9px 7px;border:1px solid #c4d7ef;border-radius:9px;background:#f2f7ff;text-align:center}.agency-facts span,.agency-facts strong,.agency-facts small{display:block}.agency-facts span{font-size:10px;color:#6980a0;font-weight:750}.agency-facts strong{font-size:13px;color:#21467f;margin:3px 0;line-height:1.2}.agency-facts small{font-size:9px;line-height:1.35;color:#6c7d92}.agency-tradeoffs{display:grid;gap:6px;margin:12px 0}.agency-tradeoffs p{display:flex;gap:7px;align-items:start;font-size:12px;line-height:1.45;margin:0;color:#4d6380}.agency-tradeoffs b{flex:0 0 55px;color:#28549a}.agency-preview-actions{display:grid;gap:8px}.agency-preview-actions .button{min-height:46px;padding:10px 14px;font-size:14px}.agency-preview-note{text-align:center;font-size:10px;color:#8392a8;margin:10px 0 0}.agency-panel .button.ghost{background:#fffefa}.agency-panel .button:focus-visible{outline-color:#ffbe47}
@media(max-height:650px){.agency-preview-scene{height:105px}.agency-preview-scene img{height:150px;bottom:-39px}.agency-preview-body{padding:10px 14px}.agency-person{margin-bottom:8px}.agency-tradeoffs{margin:8px 0}}
@media(prefers-reduced-motion:reduce){.agency-panel{animation:none!important}}
.jrpg-office.is-narration .jrpg-portrait{opacity:.66}.jrpg-office.is-narration .jrpg-dialogue{background:#edf2ff}.jrpg-office.is-narration .jrpg-speaker{background:#dbe6ff}.jrpg-office.is-entry-empty .jrpg-portrait{visibility:hidden;animation:none!important}.jrpg-options.is-continuation{display:flex;justify-content:flex-end}.jrpg-continue{display:inline-flex;align-items:center;gap:10px;min-height:37px;width:auto;border:1px solid #d8bc75;border-radius:999px;padding:8px 14px;background:#274b7a;color:#fff7dc;box-shadow:0 3px 0 #0b1d39;font-size:11px;font-weight:900;letter-spacing:.01em}.jrpg-continue span{font-size:9px;color:#f6d787;animation:promptBlink .9s steps(2) infinite}.jrpg-continue:hover,.jrpg-continue:focus-visible{background:#3563a0;outline-color:#ffe097}.jrpg-continue:active{transform:translateY(2px);box-shadow:0 1px 0 #0b1d39}
.jrpg-office.is-entry-glance .jrpg-portrait.agent{animation:entryGlance .55s steps(4) both}@keyframes entryGlance{from{opacity:.45;transform:translate(10px,5px)}to{opacity:1;transform:translate(0,0)}}@media(prefers-reduced-motion:reduce){.jrpg-office.is-entry-glance .jrpg-portrait.agent{animation:none!important}}
.district-strip{display:flex;justify-content:space-between;align-items:center;width:calc(100% - 34px);margin:5px 17px 9px;padding:9px 12px;border:2px solid #edcc73;border-radius:7px;background:#fff8de;color:#183864;box-shadow:3px 3px 0 #092249;text-align:left;font-size:12px;font-weight:900}.district-strip strong{color:#315d9a}.district-strip.complete{background:#ffebad;border-color:#ffcf58}.office-ask{position:absolute;z-index:4;top:61px;right:15px;padding:6px 9px;border:2px solid #e6c677;border-radius:4px;background:#fff8df;color:#213c65;box-shadow:2px 2px 0 #102546;font-size:11px;font-weight:900}.office-ask:hover,.office-ask:focus-visible{background:#ffe394}.district-reveal{background:#1f5772;border-color:#9fe3da}.district-page{min-height:calc(100dvh - 59px);padding:19px 15px 27px;background:#edf4ff;color:#203a61}.district-page h1{margin:0;font-size:24px}.district-lead{font-size:12px;line-height:1.55;color:#657b9a;margin:4px 0 14px}.district-progress{display:flex;justify-content:space-between;padding:10px 12px;margin-bottom:11px;border:2px solid #24436f;background:#fff9e9;font-size:13px;font-weight:900}.district-progress strong{color:#265caa}.district-group{margin:13px 0;padding:11px;background:#fffdf4;border:2px solid #385a89;box-shadow:3px 4px 0 #b5c8e2}.district-group h2{display:flex;justify-content:space-between;align-items:center;margin:0 0 9px;font-size:15px}.district-group h2 span{font-size:11px;color:#5976a2}.district-entry{padding:9px 10px;border:1px solid #b9cee8;background:#f7faff}.district-entry+.district-entry{margin-top:7px}.district-entry.locked{background:#f4f4f2;color:#7d8998}.district-entry-title{display:flex;align-items:center;gap:7px}.district-entry-title>span{font-size:14px;color:#3d78b5}.district-entry-title strong{font-size:13px;flex:1}.district-entry-title b{font-size:9px;padding:3px 5px;background:#ffe4a1;color:#684a13}.district-entry p{margin:5px 0 0;font-size:11px;line-height:1.5}.district-deep{margin-top:8px;padding:8px;background:#fff0c8;border-left:3px solid #d9a94d;font-size:11px;line-height:1.55}.district-certificate{text-align:center;padding:16px 11px;border:3px double #c48b2a;background:linear-gradient(125deg,#fff0bb,#fffdf0,#f8df9a);box-shadow:0 3px 0 #d2ba85;margin-bottom:14px}.district-certificate span,.district-certificate strong,.district-certificate small{display:block}.district-certificate span{font-size:11px;color:#98611e;font-weight:900}.district-certificate strong{font-size:18px;margin:5px 0;color:#573913}.district-certificate small{font-size:11px;color:#80643c}.ending-district{margin:0 0 9px}@media(max-width:370px){.district-strip{font-size:11px}.office-ask{font-size:10px}}
.district-level{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border:1px solid #b7c9e2;background:#f9fbff;font-size:11px;font-weight:900}.district-level strong{color:#2f68b7;letter-spacing:3px;font-size:14px}.district-help{font-size:10px;line-height:1.45;color:#637a99;margin:6px 0 12px}
.district-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:42px;min-height:39px;padding:5px 9px;border:2px solid #f7db95;border-radius:10px;background:#15386e;color:#fff6db;font-size:19px;font-weight:900;box-shadow:0 3px 0 #0b244a}.district-button span{font-size:12px}.district-button.complete{background:#856222;border-color:#ffe394}.district-button:hover,.district-button:focus-visible{background:#245493}.district-hint{display:block;margin:0 0 12px auto;padding:6px 10px;border:1px solid #abc3e1;border-radius:6px;background:#f7fbff;color:#315b95;font-size:11px;font-weight:900}.district-hint:hover,.district-hint:focus-visible{background:#e3efff}.district-hint-text{padding:9px 10px;margin:-4px 0 12px;border-left:3px solid #d5aa50;background:#fff7db;color:#3e5d82;font-size:11px;line-height:1.5}
.district-button{min-width:74px;gap:5px;border-color:#213c66;background:#f6dd98;color:#18345c;font-size:12px}.district-button svg{display:block;flex:0 0 20px;width:20px;height:20px}.district-button span{font-size:12px;white-space:nowrap}.district-button.complete{background:#ffe69f;border-color:#a56c21;color:#573b13}.district-button:hover,.district-button:focus-visible{background:#ffe9b3}
.title-hero .intro-actions{position:absolute;z-index:4;left:20px;right:20px;bottom:24px}.title-screen .title-panel{flex:0 0 auto;padding:7px 15px 9px;border-top:0;box-shadow:none;background:#102b55}.title-screen .title-panel .disclaimer{margin:0!important;text-align:center}
body.is-prologue{background:#080b12}body.is-prologue .topbar,body.is-prologue .footer{display:none}body.is-prologue .game-shell{width:100%;max-width:none;min-height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none}body.is-prologue .app{background:#080b12}.prologue{min-height:100dvh;display:grid;place-items:center;padding:24px;background:#080b12;color:#f4f2e8}.prologue-center{width:min(100%,440px)}.prologue-caption{display:block;margin:0 0 18px;text-align:center;color:#a8b4c7;font-size:11px;font-weight:800;letter-spacing:.12em}.prologue-dialogue{position:relative;min-height:178px;padding:26px 24px 29px;border:2px solid #b8c7d8;background:#111925;box-shadow:5px 5px 0 #27384e;animation:prologueLineIn .32s ease both}.prologue-dialogue>span{display:inline-block;margin-bottom:15px;color:#f0cb75;font-size:12px;font-weight:900}.prologue-dialogue p{margin:0;color:#f8f6f0;font-size:18px;font-weight:700;line-height:1.72;word-break:keep-all}.prologue-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:17px}.prologue-dots{display:flex;gap:6px}.prologue-dots i{display:block;width:6px;height:6px;border-radius:50%;background:#506075}.prologue-dots i.active{width:19px;border-radius:6px;background:#f2d486}.prologue-next{min-height:40px;padding:9px 15px;border:1px solid #dfc783;border-radius:6px;background:#ebd18c;color:#12253f;font-size:12px;font-weight:900;box-shadow:0 3px 0 #4c3e24}.prologue-next span{margin-left:8px;font-size:17px;line-height:0}.prologue-next:hover,.prologue-next:focus-visible{background:#ffe3a0}.prologue-next:active{transform:translateY(2px);box-shadow:0 1px 0 #4c3e24}@keyframes prologueLineIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:390px){.prologue{padding:19px}.prologue-dialogue{min-height:188px;padding:22px 18px}.prologue-dialogue p{font-size:16px}}@media(prefers-reduced-motion:reduce){.prologue-dialogue{animation:none!important}}
/* Center the title group as the viewport height changes. */
.title-hero .title-emblem{top:max(16px,calc(50% - 160px))}
.title-hero .title-wordmark{top:max(119px,calc(50% - 57px))}
@media(max-height:700px){
  .title-hero .title-emblem{top:max(16px,calc(50% - 130px))}
  .title-hero .title-wordmark{top:max(99px,calc(50% - 47px))}
}

body.is-prologue .topbar{display:flex;position:fixed;z-index:10;top:max(10px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));width:auto;height:auto;padding:0;background:transparent;border:0}body.is-prologue .brand,body.is-prologue .top-status{display:none}body.is-prologue .sound-toggle{background:#111925;color:#dbe5f3;border-color:#65758d;box-shadow:0 2px 0 #05070c}body.is-prologue .sound-toggle.is-muted{background:#202630;color:#9ba8ba;border-color:#4d5868}

/* Game codex and completion reward */
.district-page{min-height:calc(100dvh - 52px);padding:17px 14px 27px;background-color:#10294f;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:18px 18px;color:#edf5ff}.district-title{align-items:flex-start;margin-bottom:5px}.district-title>div{min-width:0}.district-kicker{display:block;margin-bottom:3px;color:#f2cc70;font-family:ui-monospace,Consolas,monospace;font-size:9px;font-weight:900;letter-spacing:.12em}.district-page h1{margin:0;color:#fff7df;font-size:27px;letter-spacing:-.05em;text-shadow:2px 2px 0 #081a35}.district-page .icon-button{border:2px solid #a9c5e9;border-radius:3px;background:#edf5ff;color:#132e59;box-shadow:3px 3px 0 #071a36}.district-lead{margin:4px 0 13px;color:#afc5df;font-size:11px;line-height:1.55}.district-dashboard{position:relative;padding:13px;border:3px solid #f1cd74;background:#183966;box-shadow:4px 5px 0 #07182f}.district-dashboard:before,.district-dashboard:after{content:"";position:absolute;width:7px;height:7px;border:2px solid #f1cd74;background:#10294f}.district-dashboard:before{top:-6px;left:-6px}.district-dashboard:after{right:-6px;bottom:-6px}.district-score{display:flex;align-items:end;justify-content:space-between;gap:12px}.district-score span{color:#a9c3e4;font-family:ui-monospace,Consolas,monospace;font-size:9px;font-weight:900;letter-spacing:.14em}.district-score strong{color:#fff0aa;font-family:ui-monospace,Consolas,monospace;font-size:21px;line-height:1}.district-record-slots{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin:12px 0}.district-record-slots i{height:13px;border:1px solid #6686b1;background:#0c2448;box-shadow:inset 0 -2px 0 #071a35}.district-record-slots i.found{border-color:#d9b553;background:#f0cf78;box-shadow:inset 0 -3px 0 #b9812f}.district-record-slots i.deep{border-color:#aeece0;background:#62c9bc;box-shadow:inset 0 -3px 0 #2b8d87}.district-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px}.district-stats>div{display:flex;align-items:center;justify-content:space-between;padding:7px 8px;border:1px solid #607fab;background:#0e2a53}.district-stats span{color:#aac0dc;font-size:10px;font-weight:800}.district-stats strong{color:#fff;font-family:ui-monospace,Consolas,monospace;font-size:12px}.district-level{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:9px 11px;border:2px solid #4c6f9f;background:#eaf2ff;color:#19365f;box-shadow:2px 3px 0 #071a36}.district-level>div:first-child span,.district-level>div:first-child small{display:block}.district-level>div:first-child span{font-size:11px;font-weight:900}.district-level>div:first-child small{margin-top:2px;color:#6a7e9b;font-size:9px}.district-skill-slots{display:flex;gap:4px}.district-skill-slots i{display:block;width:10px;height:10px;border:1px solid #6582a8;background:#cbd8e8;transform:rotate(45deg)}.district-skill-slots i.filled{border-color:#9b681c;background:#f1c75e;box-shadow:1px 1px 0 #7b551c}.district-hint{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:10px 0 13px auto;padding:6px 0;border:0;background:transparent;color:#d7e5f7;font-size:10px;font-weight:900}.district-hint span{color:#f3d27d;font-size:17px}.district-hint:hover,.district-hint:focus-visible{background:transparent;color:#fff0b2}.district-hint-text{margin:-3px 0 13px;padding:9px 10px;border:1px solid #b8943f;border-left:4px solid #f0cb6c;background:#1b3d6d;color:#e8f1ff;font-size:10px;line-height:1.5}.district-group{margin:12px 0 0;padding:0;border:2px solid #6e8db5;background:#102b52;box-shadow:3px 4px 0 #07182f}.district-group.complete{border-color:#e2bd5d}.district-group-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 10px;border-bottom:2px solid #6e8db5;background:#1c406f}.district-group.complete .district-group-head{border-bottom-color:#cfa749;background:#54441f}.district-group-head>span{color:#f0ca6b;font-family:ui-monospace,Consolas,monospace;font-size:9px;font-weight:900;letter-spacing:.08em}.district-group-head h2{display:block;margin:0;color:#fff;font-size:14px}.district-group-head small{display:block;margin-top:1px;color:#a9bdd7;font-size:9px}.district-group.complete .district-group-head small{color:#f6dfa5}.district-group-head>strong{min-width:36px;padding:4px 5px;border:1px solid #91acd0;background:#10294e;color:#fff1ae;text-align:center;font-family:ui-monospace,Consolas,monospace;font-size:11px}.district-entry-list{display:grid;gap:1px;background:#355781}.district-entry{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;padding:10px;background:#f4f8ff;color:#19365f}.district-entry+.district-entry{margin:0}.district-entry.locked{background:#152f55;color:#738aa8}.district-entry.deep{background:#fff4cf}.district-entry-index{display:grid;align-content:center;justify-items:center;min-height:48px;border:2px solid #7694ba;background:#dce8f7}.district-entry-index span{color:#245891;font-size:17px;font-weight:900;line-height:1}.district-entry-index small{margin-top:4px;color:#587596;font-family:ui-monospace,Consolas,monospace;font-size:8px;font-weight:900}.district-entry.locked .district-entry-index{border-color:#405e84;background:#102746}.district-entry.locked .district-entry-index span,.district-entry.locked .district-entry-index small{color:#6a82a1}.district-entry.deep .district-entry-index{border-color:#b7832d;background:#f4ce6b}.district-entry-copy{min-width:0}.district-entry-title{display:flex;align-items:center;gap:7px}.district-entry-title strong{min-width:0;flex:1;color:inherit;font-size:12px}.district-entry-title b{flex:0 0 auto;padding:3px 5px;border:1px solid #8da7c7;background:#e5edf7;color:#385678;font-family:ui-monospace,Consolas,monospace;font-size:8px}.district-entry.locked .district-entry-title b{border-color:#405c7f;background:#102745;color:#7890ad}.district-entry.deep .district-entry-title b{border-color:#b7832d;background:#f2c963;color:#573a10}.district-entry p{margin:5px 0 0;color:#536b89;font-size:10px;line-height:1.5;word-break:keep-all}.district-entry.locked p{color:#7187a3}.district-deep{margin-top:8px;padding:8px;border:1px solid #d4a74b;border-left:4px solid #bc7f23;background:#fff8e6;color:#5a4827;font-size:10px;line-height:1.55}.district-deep span{display:block;margin-bottom:3px;color:#96611b;font-size:8px;font-weight:900;letter-spacing:.08em}.district-certificate{margin:0 0 13px;padding:14px 11px;border:3px double #e6bd5a;background:#57451e;color:#fff2bd;box-shadow:3px 4px 0 #07182f}.district-certificate span{color:#f0cc72}.district-certificate strong{color:#fff5d3}.district-certificate small{color:#e3cea0}.district-page .integration-note{color:#8299b6;text-align:center}
.completion-overlay{z-index:80;background:#06162ee0;backdrop-filter:none}.completion-panel{position:relative;width:min(100%,360px);max-height:calc(100dvh - 34px);overflow-y:auto;padding:18px 17px 16px;border:4px solid #f1cc71;border-radius:4px;background:#f6f1df;color:#17345c;box-shadow:7px 7px 0 #07162d;animation:completionIn .3s steps(4) both;text-align:center}.completion-panel:before,.completion-panel:after{content:"";position:absolute;width:10px;height:10px;background:#173861}.completion-panel:before{top:6px;left:6px}.completion-panel:after{right:6px;bottom:6px}.completion-label{display:inline-block;padding:4px 8px;border:2px solid #173861;background:#173861;color:#ffe298;font-family:ui-monospace,Consolas,monospace;font-size:9px;font-weight:900;letter-spacing:.08em}.completion-icon{display:grid;width:60px;height:60px;margin:14px auto 10px;place-items:center;border:3px solid #173861;background:#f0c861;color:#173861;box-shadow:4px 4px 0 #173861;font-size:28px;font-weight:900}.completion-panel.kind-detail .completion-icon,.completion-panel.kind-skill .completion-icon{background:#8bd5ca}.completion-panel.kind-listing .completion-icon{background:#bdd8ff}.completion-panel.kind-complete .completion-icon{background:#ffe58f}.completion-panel h2{margin:0;color:#17345c;font-size:22px;line-height:1.2;letter-spacing:-.04em;word-break:keep-all}.completion-panel>p{margin:9px auto 14px;color:#536985;font-size:11px;line-height:1.55;word-break:keep-all}.completion-progress{padding:9px 10px;border:2px solid #8da6c5;background:#e7edf3;text-align:left}.completion-progress>div:first-child{display:flex;align-items:center;justify-content:space-between}.completion-progress span{color:#506985;font-size:9px;font-weight:900}.completion-progress strong{color:#173861;font-family:ui-monospace,Consolas,monospace;font-size:11px}.completion-progress-slots{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-top:7px}.completion-progress-slots i{height:8px;border:1px solid #8ca3bf;background:#c8d3df}.completion-progress-slots i.filled{border-color:#a17326;background:#e8bd53}.completion-confirm{width:100%;min-height:48px;margin-top:13px;border:3px solid #173861;border-radius:3px;background:#245b9e;color:#fff8de;box-shadow:0 4px 0 #0c284d;font-size:14px;font-weight:900}.completion-confirm:hover,.completion-confirm:focus-visible{background:#3270bd;outline-color:#f2c965}.completion-confirm:active{transform:translateY(3px);box-shadow:0 1px 0 #0c284d}@keyframes completionIn{from{opacity:1;transform:translateY(24px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-height:650px){.completion-panel{padding-top:13px}.completion-icon{width:48px;height:48px;margin:9px auto 7px;font-size:23px}.completion-panel h2{font-size:19px}.completion-panel>p{margin:7px auto 10px}.completion-confirm{min-height:43px}}@media(prefers-reduced-motion:reduce){.completion-panel{animation:none!important}}
/* Larger real estate destinations on the mobile map. */
@media(max-width:599px){
  .map-marker{
    min-width:118px;
    min-height:48px;
    padding:10px 13px;
    border-width:3px;
    gap:7px;
  }
  .map-marker strong{
    font-size:15px;
    line-height:1.15;
  }
  .map-marker:before{
    width:13px;
    height:13px;
    border-right-width:3px;
    border-bottom-width:3px;
  }
  .marker-visited{font-size:15px}
}
