/* Cinematic city: shared glass, brushed champagne edges and restrained blue light. */
:root {
  --ink:#f4f3ee; --muted:#bdc9ce; --line:rgba(231,226,207,.24);
  --night:#0c1720; --panel:rgba(25,43,54,.66); --panel-2:rgba(36,57,67,.7);
  --cyan:#a5e5e8; --purple:#b5cbd5; --gold:#e5c489; --green:#a8d6bc;
  --glass:linear-gradient(130deg,rgba(213,229,225,.16),rgba(47,72,85,.57) 40%,rgba(21,34,43,.79));
  --glass-edge:rgba(228,237,232,.35); --shadow:0 20px 60px rgba(0,0,0,.26);
}
button:focus-visible,input:focus-visible { outline:2px solid #bfefff;outline-offset:4px; }
.city-stat[data-citizen-medals] {text-align:left;cursor:pointer;color:var(--ink);min-height:44px;}
.city-stat[data-citizen-medals]:hover {border-color:var(--gold);}
.city-stat[data-citizen-level] {text-align:left;cursor:pointer;color:var(--ink);min-height:44px;}
.city-meter .medal-entry,.profile-section.medal-entry {border-color:var(--gold);background:linear-gradient(125deg,rgba(137,103,41,.65),rgba(33,43,48,.85));}
.city-meter .medal-entry b {color:#ffe2a6;}
.medal-reward-hero {padding:18px;border:1px solid var(--gold);border-radius:10px;background:linear-gradient(125deg,rgba(158,119,49,.22),rgba(19,37,47,.6));margin:18px 0;}
.medal-reward-hero>small {font-size:13px;color:var(--gold);}.medal-reward-hero h3 {font-size:22px;margin:10px 0;}.medal-reward-hero p {font-size:14px;line-height:1.7;}
.reward-account {border-top:1px solid var(--glass-edge);padding-top:12px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px;}.reward-account b {font-weight:500;color:var(--gold);}
.reward-steps {display:flex;list-style:none;gap:6px;padding:0;margin:18px 0;}.reward-steps li {flex:1;padding:10px 7px;background:rgba(154,193,202,.1);border-radius:6px;font-size:13px;line-height:1.6;text-align:center;}.reward-steps li:not(:last-child):after {content:' →';color:var(--gold);}
.medal-section-title {font-size:17px;margin-top:24px;}.medal-emblem {font-size:24px;}.medal-reward-value {padding-top:10px;border-top:1px solid var(--glass-edge);}.medal-reward-value dd {color:#ffe2a6;font-weight:600;}
.medal-rules {margin-top:18px;border:1px solid var(--glass-edge);border-radius:8px;padding:12px;}.medal-rules summary {cursor:pointer;font-size:14px;min-height:32px;}.medal-rules dl>div {margin:12px 0;}.medal-rules dt {color:var(--gold);font-size:14px;}.medal-rules dd {margin:5px 0;font-size:13px;line-height:1.7;}
.medal-list {display:grid;gap:12px;}.medal-item {padding:16px;border:1px solid var(--glass-edge);border-radius:10px;background:rgba(12,30,42,.35);}
.medal-item.current {border-color:var(--gold);background:rgba(175,139,72,.12);}
.medal-heading {display:flex;gap:12px;align-items:center;}.medal-heading h3 {margin:0 0 5px;font-size:18px;}.medal-heading small {font-size:12px;color:var(--muted);}
.medal-level {display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);}
.medal-item p {font-size:14px;line-height:1.7;}.medal-item dl {margin:12px 0 0;display:grid;gap:10px;}.medal-item dl>div {display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;}.medal-item dt {font-size:13px;color:var(--muted);}.medal-item dd {margin:0;font-size:14px;}.medal-note {font-size:12px;line-height:1.6;}
.city-home {height:100svh;min-height:650px;background:#0b1b29;perspective:none;}
.city-home:after {display:none;}
.city-home:before {background:linear-gradient(180deg,rgba(8,17,24,.52),transparent 23%,transparent 68%,rgba(5,15,24,.86));}
.city-map-stage {inset:auto;background: url('../../assets/city/pw-island-detail-desktop-v3.webp') center/100% 100% no-repeat;transform-style:flat;will-change:auto;image-rendering:auto;}
.city-top {top:25px;left:32px;right:32px;align-items:center;}
.city-brand,.city-stat,.city-news,.city-nav,.bottom-nav,.topbar {
  background:var(--glass);border:1px solid var(--glass-edge);border-radius:10px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 8px 30px rgba(0,0,0,.2);
  backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
}
.city-brand {padding:10px 16px;font-weight:600;font-size:12px;letter-spacing:.18em;}
.city-brand .brand-mark,.brand-mark {border-radius:5px;border-color:rgba(238,218,173,.6);background:linear-gradient(130deg,#ddc99f,#8c7953);color:#14202a;box-shadow:none;}
.city-stat {min-width:120px;padding:9px 14px;}
.city-stat b {font-weight:500;}.city-stat b i {color:var(--gold);}
.city-news {left:auto;right:32px;top:92px;width:min(470px,43vw);height:34px;border-radius:6px;}
.city-news b {color:var(--gold);font-size:8px;}.news-track {font-size:10px;}
.city-news:hover .news-track {animation-play-state:paused;}
.city-intro {position:absolute;z-index:2;top:115px;left:34px;pointer-events:none;text-shadow:0 3px 24px #06111d;}
.city-intro>span {font-size:9px;letter-spacing:.24em;color:#dfceb1;}
.city-intro h1 {font-size:clamp(28px,3.2vw,48px);font-weight:400;letter-spacing:.05em;margin:12px 0;}
.city-intro p {font-size:12px;font-weight:300;color:#d6e2e6;letter-spacing:.12em;}
.map-hotspot {min-width:112px;min-height:44px;filter:drop-shadow(0 4px 10px #07131c);transform:translate(-50%,-50%);}
.map-hotspot span,.map-hotspot.agent span,.map-hotspot.game-hot span {padding:9px 14px;border-radius:5px;background:linear-gradient(130deg,rgba(186,206,214,.17),rgba(13,29,41,.88));border:1px solid rgba(223,238,239,.65);border-left:2px solid #a5dce2;box-shadow:inset 0 1px 0 rgba(255,255,255,.18);backdrop-filter:blur(14px);font-size:12px;font-weight:500;color:#fff;letter-spacing:.08em;}
.map-hotspot em,.map-hotspot.agent em,.map-hotspot.game-hot em {font-size:7px;letter-spacing:.17em;color:#d0dfe4;opacity:1;}
.map-hotspot.game-hot span {border-left-color:#edcc8b;}
.map-hotspot:before,.map-hotspot.agent:before,.map-hotspot.game-hot:before {width:5px;height:5px;top:calc(100% + 16px);background:#e2cc9e;box-shadow:0 0 0 4px rgba(216,221,209,.15);animation:none;}
.map-hotspot:after {content:"";position:absolute;left:50%;top:100%;height:16px;width:1px;background:rgba(223,232,218,.8);}
.map-hotspot:hover,.map-hotspot:focus-visible {transform:translate(-50%,-50%) translateY(-3px);}
.map-hotspot:hover span,.map-hotspot:focus-visible span {background:rgba(40,69,84,.94);border-color:#e0c88f;}
.city-home .hot-hall {left:34%;top:38%;}.city-home .hot-agent {left:49%;top:42%;}
.city-home .hot-arcade {left:34%;top:53%;}
.city-home .hot-market {left:57%;top:51%;}.city-home .hot-harbor {left:71%;top:62%;z-index:3;}
.city-eva {left:32px;right:auto;bottom:100px;width:min(470px,48vw);padding:0;pointer-events:none;}
.city-eva button,.city-eva input {pointer-events:auto;}
.eva-orb {width:32px;height:32px;flex-basis:32px;background:transparent;border:1px solid var(--glass-edge);border-radius:50%;box-shadow:none;color:var(--gold);font-size:16px;}
.city-eva p {font-size:13px;line-height:1.65;}.city-eva b {color:#dfd0ad;font-size:10px;font-weight:500;}
.eva-choices {margin:14px 0 10px;gap:8px;}.eva-choice {min-height:38px;border-radius:5px;background:rgba(39,57,65,.62);border-color:var(--glass-edge);padding:8px 12px;}
.eva-input input {border-radius:4px;background:rgba(31,47,55,.7);padding:10px 12px;}
.eva-send {width:38px;height:38px;background:linear-gradient(120deg,#f3deaf,#caa970);border-radius:5px;}
.eva-avatar,.city-home .eva-character {pointer-events:none;position:absolute;right:32px;bottom:103px;width:220px;min-width:0;opacity:1;filter:none;z-index:4;overflow:visible;border:0;background:none;box-shadow:none;}
.eva-character:after {display:none;}
.eva-avatar-button {display:block;position:relative;width:100%;padding:0;border:0;background:none;box-shadow:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.eva-avatar .eva-pose-image {display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;mask-image:none;-webkit-mask-image:none;pointer-events:none;user-select:none;filter:drop-shadow(0 8px 10px rgba(0,8,18,.35));transform-origin:50% 95%;animation:eva-breathe 5s ease-in-out infinite;}
.eva-avatar.is-reacting .eva-pose-image {animation:eva-react .45s ease-out, eva-breathe 5s .45s ease-in-out infinite;}
.eva-avatar-button:focus-visible {outline:2px solid #d8f5f3;outline-offset:2px;border-radius:20px;}
@keyframes eva-breathe {0%,100% {transform:translateY(0) rotate(-.25deg);}50% {transform:translateY(-3px) rotate(.25deg);}}
@keyframes eva-react {0% {opacity:.7;transform:translateY(3px);}55% {opacity:1;transform:translateY(-4px);}100% {transform:translateY(0);}}
.city-nav,.bottom-nav {bottom:22px;border-radius:9px;padding:5px;}
.nav-item {min-height:42px;min-width:95px;border-radius:5px;letter-spacing:.1em;}
.nav-item.eva,.city-nav .nav-item.eva {background:linear-gradient(125deg,#dcd3b8,#beab86);color:#18252d;font-weight:600;min-width:95px;}
.city-nav .nav-item.active {background:rgba(180,214,221,.15);color:#f2ead9;}
.district-scene {min-height:100svh;background:#17242c;}
.scene-mission,.scene-core,.scene-option,.card,.agent-card,.brief,.session,.profile-section,.my-agent,.game-directory,.game-card,.plaza {
  border:1px solid var(--glass-edge);border-radius:10px;background:var(--glass);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 14px 36px rgba(0,0,0,.2);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.scene-mission {width:280px;top:100px;padding:20px;}.scene-mission h2 {font-weight:500;font-size:20px;}.scene-mission p {font-size:12px;line-height:1.7;}
.scene-core {top:310px;width:280px;}.scene-core-item {border-radius:5px;}
.scene-eva.eva-avatar {width:160px;right:25px;bottom:115px;}
.scene-line {max-width:48vw;font-size:14px;bottom:150px;}.scene-line b,.scene-option i {color:#ded3b7;}
.scene-option {min-height:80px;border-radius:7px;}.scene-option b {font-weight:500;}
.scene-title b {font-weight:400;letter-spacing:.12em;}.scene-title small {color:#d4cbb6;}
.scene-back,.game-return,.secondary,.chip,.ghost,.action,.game-detail,.game-tab,.game-filter {border-radius:6px;min-height:40px;background:rgba(29,48,59,.48);border-color:var(--glass-edge);}
.game-directory {top:95px;bottom:24px;padding:24px;background:linear-gradient(135deg,rgba(64,87,94,.55),rgba(18,35,47,.8));}
.game-directory-head b {font-weight:400;font-size:26px;}.game-directory-head small {font-size:11px;letter-spacing:.06em;}
.game-list {background:transparent;border:0;padding:8px 0;backdrop-filter:none;gap:12px;}
.game-card {background:linear-gradient(110deg,rgba(102,135,149,.3),rgba(17,35,45,.54));padding:18px;}
.game-info>b {font-weight:500;}.game-metrics b {font-weight:500;}.game-info span {color:#cbd8df;}
.game-card:hover {background:linear-gradient(110deg,rgba(120,160,173,.4),rgba(31,54,66,.75));border-color:#c8dfdf;}
.game-mark {border-radius:6px;background:linear-gradient(130deg,#456877,#1c3545);border:1px solid rgba(185,229,236,.4);color:#e7d9b9;box-shadow:inset 0 0 24px rgba(143,202,220,.12);font-weight:400;}
.game-mark:after {opacity:.2;}.game-kicker {color:#d4ceb8!important;font-weight:500!important;}
.game-play,.primary,.wide-button {min-height:42px;border:1px solid #ecdbb7;border-radius:6px;background:linear-gradient(125deg,#f2dfb6,#c7a972);color:#15222b;font-weight:600;box-shadow:0 3px 16px rgba(226,197,136,.12);}
.game-tab.active,.game-filter.active {border-color:#b3d6de;color:#f3ebda;background:rgba(131,182,201,.18);}
.app {background:linear-gradient(180deg,rgba(13,26,38,.25),rgba(11,24,35,.78)),url('../../assets/districts/park-cinematic-v1.webp') center/cover fixed;}
.topbar {border-radius:0;border-width:0 0 1px;}.plaza {background:linear-gradient(110deg,rgba(17,39,50,.8),rgba(28,46,57,.17)),url('../../assets/districts/park-cinematic-v1.webp') center/cover;}
.plaza:before,.plaza .orb,.city-agents .tower,.brief:before {display:none;}
.plaza h2,h1,h3 {font-weight:500;}.agent-card {background:var(--glass);}.agent-card:hover {border-color:#bfd9dd;}
.agent-card,.session,.brief,.safe-item,.permission div {border-radius:8px;}.assistant-logo {border-radius:9px;background:linear-gradient(130deg,#abc8ce,#597687);box-shadow:none;}
dialog {width:min(650px,calc(100% - 28px));max-height:calc(100svh - 40px);border:1px solid rgba(242,229,200,.7);border-radius:14px;background:linear-gradient(130deg,rgba(111,128,129,.73),rgba(23,44,58,.91) 45%,rgba(25,35,43,.94));backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:0 30px 100px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.26);}
dialog::backdrop {background:rgba(7,16,23,.35);backdrop-filter:blur(5px);}
dialog:has(.wallet-cash),dialog:has(#account-topup){width:min(820px,100%);height:100dvh;max-height:100dvh;margin:0 0 0 auto;border-radius:0;overflow-y:auto;}
dialog:has(.wallet-cash) .mvp-note,dialog:has(#account-topup) .mvp-note{font-size:12px;padding:6px 10px;width:auto;min-height:30px;}
.wallet-cash{padding:24px 0;border-bottom:1px solid #ffffff30;}
.wallet-cash>strong{display:block;font-size:48px;color:#efdaa7;margin:12px 0;font-variant-numeric:tabular-nums;}
.wallet-cash button{min-width:110px;margin-right:12px;}
.wallet-points{padding:12px 0 20px;border-bottom:1px solid #ffffff30;}
.wallet-point-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.wallet-point-grid span,.wallet-point-grid strong{display:block;}
.wallet-point-grid strong{font-size:28px;margin:10px 0;}
.wallet-point-grid button{padding:10px;min-height:44px;font-size:14px;}
.wallet-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
.wallet-filters button{min-height:44px;padding:8px 12px;font-size:14px;}
.wallet-filters [aria-pressed=true]{background:#d8c18d;color:#142830;}
.wallet-bill{display:flex;justify-content:space-between;gap:14px;text-align:left;width:100%;padding:18px 0;border:0;border-bottom:1px solid #ffffff25;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:16px;}
.wallet-bill b{text-align:right;white-space:nowrap;font-size:15px;}
.wallet-bill small{display:block;font-size:12px;color:#b8c8cc;margin-top:6px;font-weight:normal;}
.wallet-topup-summary{margin:24px 0;}.wallet-topup-summary p{display:flex;justify-content:space-between;gap:16px;}
.wallet-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.7;}
.wallet-consent input{width:20px!important;min-width:20px;height:20px;margin-top:3px;}
.wallet-payment{text-align:center;padding:24px;border:1px solid #ffffff30;margin:20px 0;}
dialog:has(.wallet-cash),dialog:has(#account-topup){max-width:100vw;box-sizing:border-box;padding:0;}
.wallet-filters{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;}.wallet-filters button{padding:8px 4px;}
dialog:has(.wallet-cash) .modal-content,dialog:has(#account-topup) .modal-content{padding:24px;}
@media(max-width:600px){dialog:has(.wallet-cash),dialog:has(#account-topup){padding:0;width:100vw;}dialog:has(.wallet-cash) h2{font-size:26px;}.wallet-cash>strong{font-size:42px;}.wallet-bill{font-size:14px;}.wallet-bill b{font-size:14px;}}
.modal-content {padding:28px;}.modal-content h2 {font-weight:400;letter-spacing:.01em;}.modal-content p {color:#e0e7e9;}
.modal-info div,.plan,.cap-row span,.profile-section {border-radius:7px;}.modal-info div {background:rgba(141,179,196,.09);}.modal-info strong {font-weight:500;}.modal-label {color:#e4d5b5;font-weight:500;letter-spacing:.16em;}
.plan {font-size:13px;line-height:1.7;background:rgba(159,137,92,.1);border-color:rgba(237,220,182,.25);}.plan b {color:#e8d3aa;font-weight:500;}
.modal-actions {flex-wrap:wrap;}.modal-actions>* {flex:1;}.close {min-width:40px;width:40px;height:40px;border-radius:7px;}
.citizen-id {color:#edf1ee;border:1px solid #dbcfaf;background:linear-gradient(115deg,rgba(36,83,92,.95),rgba(39,56,65,.88) 65%,rgba(162,143,105,.6));border-radius:9px;box-shadow:inset 0 1px 0 #efdec0;}
.citizen-id-top,.id-grid div {border-color:rgba(212,222,214,.28);}.id-data span,.id-grid label {color:#b9d0d3;}.id-avatar {border-radius:5px;background:linear-gradient(140deg,#a99875,#344f60);}.id-code {filter:brightness(3);}
@media(max-width:900px) {
  .city-home {min-height:700px;height:100svh;background:#102431;}
  .city-home:before {background:linear-gradient(180deg,rgba(8,20,30,.5),transparent 28%,transparent 62%,rgba(5,17,27,.55));}
  .city-top {top:14px;left:14px;right:14px;gap:8px;}
  .city-brand {font-size:9px;padding:8px;gap:7px;letter-spacing:.1em;}.city-brand .brand-mark {width:26px;height:26px;}
  .city-meter {gap:5px;}.city-stat {min-width:0;padding:7px 8px;}.city-stat small {font-size:7px;}.city-stat b {font-size:10px;}.city-stat b i {display:none;}
  .city-news {left:14px;right:14px;top:78px;width:auto;height:32px;padding:0 9px;}.news-track {font-size:9px;}
  .city-intro {top:136px;left:20px;}.city-intro>span {font-size:8px;letter-spacing:.18em;}.city-intro h1 {font-size:30px;margin:10px 0 7px;}.city-intro p {font-size:10px;margin:0;}
  .city-map-stage {background-image:url('../../assets/city/pw-island-detail-mobile-v3.webp');background-size:100% 100%;}
  .map-hotspot {min-width:72px;min-height:44px;}.map-hotspot span,.map-hotspot.agent span,.map-hotspot.game-hot span {font-size:10px;padding:7px 6px;letter-spacing:0;}
  .map-hotspot em,.map-hotspot.agent em,.map-hotspot.game-hot em {font-size:5px;letter-spacing:.05em;}
  .map-hotspot:after {height:9px;}.map-hotspot:before,.map-hotspot.agent:before,.map-hotspot.game-hot:before {top:calc(100% + 9px);}
  .city-home .hot-hall {left:29%;top:37%;}.city-home .hot-agent {left:49%;top:40%;}
  .city-home .hot-arcade {left:32%;top:47%;}.city-home .hot-market {left:61%;top:47%;}.city-home .hot-harbor {left:74%;top:55%;}
  .city-eva {left:15px;right:15px;bottom:calc(76px + env(safe-area-inset-bottom));width:auto;}
  .city-eva-top {padding-right:106px;min-height:80px;gap:8px;}.city-eva p {font-size:11px;line-height:1.6;}.eva-orb {display:none;}
  .eva-choices {margin:9px 0 8px;gap:6px;}.eva-choice {font-size:10px;min-height:38px;flex:1;padding:7px 5px;}
  .eva-input {padding-top:7px;}.eva-input input {font-size:16px;min-height:40px;}.eva-send {height:40px;width:40px;}
  .city-home .eva-character {right:15px;bottom:calc(180px + env(safe-area-inset-bottom));width:96px;min-width:0;opacity:1;}
  .city-nav,.bottom-nav {left:0;right:0;bottom:0;transform:none;width:100%;max-width:none;border-radius:0;display:flex;padding:5px 8px calc(5px + env(safe-area-inset-bottom));min-height:62px;}
  .city-nav .nav-item,.bottom-nav .nav-item {flex:1;min-width:0;min-height:46px;font-size:12px;}.city-nav .nav-item.eva,.bottom-nav .nav-item.eva {min-width:0;}
  .scene-mission {top:78px;left:14px;width:calc(100% - 28px);padding:15px;}.scene-mission h2 {font-size:17px;}.scene-mission p {font-size:11px;}
  .scene-core {left:14px;right:14px;top:260px;width:auto;}.scene-core-item b {font-size:10px;}
  .scene-eva.eva-avatar {width:110px;right:14px;bottom:120px;}.scene-line {left:14px;max-width:calc(100% - 144px);bottom:139px;font-size:11px;}
  .scene-options {bottom:18px;}.scene-option {min-height:74px;padding:10px 7px;}.scene-option b {font-size:11px;}
  .scene-back {min-height:44px;}.game-directory {top:68px;bottom:12px;left:10px;width:calc(100% - 20px);padding:12px;transform:none;}
  .game-directory-head b {font-size:22px;}.game-directory-head small {font-size:9px;max-width:185px;line-height:1.6;}.game-return {min-height:44px;padding:8px;}
  .game-tab,.game-filter {min-height:36px;padding:7px 9px;font-size:10px;}.game-list {padding:4px 0;gap:10px;}
  .game-card {padding:12px;gap:10px;grid-template-columns:45px minmax(0,1fr);}.game-info>b {font-size:15px;}.game-info span {font-size:10px;line-height:1.5;}.game-summary {font-size:11px;}
  .game-metrics span {font-size:9px;}.game-actions {grid-column:1/-1;display:flex;}.game-actions button {flex:1;min-height:44px;font-size:11px;}
  .modal-content {padding:20px;}.modal-content h2 {font-size:23px;}.modal-actions>button {min-height:44px;}.modal-info strong {overflow-wrap:anywhere;}
  .app {background-attachment:scroll;}.plaza {min-height:430px;}.city-agents {height:120px;}.plaza-copy {padding:24px;}.topbar {padding:0 14px;}
}
@media(max-height:760px) and (min-width:901px) {.city-intro {top:95px;}.city-intro h1 {font-size:30px;}.city-eva {bottom:85px;}.city-home .eva-character {bottom:90px;width:180px;}}
@media(max-height:820px) and (min-width:901px) {.scene-eva.eva-avatar {right:325px;width:140px;}}
@media(min-width:901px) and (max-width:1200px) {.city-home .eva-character {width:150px;right:16px;}}
@media(max-height:740px) and (max-width:900px) {.city-intro {top:123px;}.city-intro h1 {font-size:25px;margin:8px 0 5px;}.city-home .eva-character {width:64px;bottom:calc(170px + env(safe-area-inset-bottom));}}
.district-scene:not([data-district="commerce"]) .commerce-directory {display:none}
.district-scene[data-district="commerce"] .scene-mission,.district-scene[data-district="commerce"] .scene-core,.district-scene[data-district="commerce"] .scene-options,.district-scene[data-district="commerce"] .scene-line,.district-scene[data-district="commerce"] .scene-eva {display:none}
.commerce-directory {position:absolute;z-index:5;inset:100px 5% 24px;overflow:auto;padding:24px;border:1px solid #8c9c9f;border-radius:18px;background:rgba(15,33,43,.87);backdrop-filter:blur(18px);touch-action:pan-y;color:#edf2f3}
.commerce-heading h2 {font-size:28px;margin:10px 0}.commerce-heading p,.commerce-card p {font-size:16px;line-height:1.6}
.commerce-tabs {display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.commerce-tabs button {min-height:44px}.commerce-tabs [aria-pressed="true"] {border-color:#efd79d;color:#efd79d}
.commerce-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.commerce-card {padding:20px;border:1px solid #637780;border-radius:14px;background:rgba(32,54,65,.8);margin-bottom:14px}.commerce-card h3 {font-size:22px}.commerce-card .modal-info {grid-template-columns:1fr}.commerce-card small {color:#e1c991;font-size:14px}.commerce-card .modal-actions {flex-wrap:wrap}.commerce-disclaimer {font-size:14px;line-height:1.6;color:#b9ccd2}.commerce-timeline {padding-left:22px;line-height:1.8}
#commerce-chat,#commerce-rating,#commerce-dispute,#commerce-return {display:grid;gap:14px;margin:18px 0}#commerce-chat input,#commerce-rating select,#commerce-dispute textarea,#commerce-return textarea {box-sizing:border-box;width:100%;min-height:46px;padding:12px;background:#16313f;color:#f3f6f8;border:1px solid #91a3ac;border-radius:8px;font:inherit}#commerce-dispute textarea {min-height:110px}
@media(max-width:1000px){.commerce-grid{grid-template-columns:1fr}.commerce-directory{inset:85px 12px 16px;padding:16px}.commerce-heading h2{font-size:23px}}
.account-balances {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.account-balances section {padding:18px;border:1px solid #70858d;border-radius:14px;background:#203b48}.account-balances small {display:block;font-size:14px}.account-balances strong {display:block;font-size:32px;color:#ebd398;margin:12px 0}.account-balances button {width:100%;margin-top:8px;min-height:44px}.account-balances p {font-size:14px}.account-record {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #52656d;font-size:14px}.account-record small {display:block;margin-top:6px;color:#c1ced2}.account-record b {white-space:nowrap}.account-record button {min-height:44px;flex-shrink:0}
#account-topup,#account-sell {display:grid;gap:16px}#account-amount,#sell-amount,#invite-code {box-sizing:border-box;width:100%;background:#203b48;color:white;border:1px solid #96a5ab;border-radius:8px;min-height:48px;padding:12px;font:inherit}button[data-account] {min-height:44px;margin:4px}
@media(max-width:650px){.account-balances {grid-template-columns:1fr 1fr}.account-balances section:first-child{grid-column:1 / -1}.account-balances section:first-child button{width:calc(50% - 8px)}.account-balances section {padding:12px}.account-balances strong {font-size:28px}.account-balances small{font-size:13px}.account-balances button{white-space:normal;font-size:13px}.account-record {flex-wrap:wrap}}
.mvp-note {display:inline-block;font-size:12px;line-height:1.5;font-weight:400;color:#c3cdd0;border:1px solid #586d77;border-radius:6px;padding:4px 8px;background:transparent;max-width:100%}
.modal-head {flex-wrap:wrap}.modal-head>.mvp-note {flex-basis:100%;width:fit-content;flex-grow:0;text-align:left}
.compact-rules {padding:10px 0;margin:8px 0;border-top:1px solid #53666e;font-size:14px}.compact-rules summary {cursor:pointer;color:#d9c698;min-height:32px}.compact-rules p {font-size:14px;line-height:1.6}
.payment-summary {color:#8fe3bc;font-weight:600}.payment-warning {color:#f4d49a;font-weight:600}.next-action progress {width:100%;height:12px;accent-color:#dac28b}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.street-entry,.street-title,.street-utilities,.street-shop-facts,.street-invite,.street-pending{display:flex;align-items:center;gap:12px;justify-content:space-between}.street-entry{flex-wrap:wrap}.street-title{justify-content:flex-start}.street-title h2{margin:0;font-size:28px}.street-title small{color:#afbdc3;font-size:12px}.street-city select{font:inherit;color:#e6cf94;background:#1a3542;border:1px solid #70868d;border-radius:8px;padding:10px;min-height:44px}.street-utilities button{font-size:14px;padding:8px 12px;min-height:44px}.street-purpose{font-size:16px;line-height:1.7;margin:12px 0 16px;color:#cfdae0}.street-discovery{display:flex;gap:18px;align-items:center}.street-discovery .commerce-tabs{flex-shrink:0;margin:0}.street-discovery input{font:inherit;font-size:16px;width:100%;min-width:0;min-height:48px;background:#223e4c;color:white;border:1px solid #70868d;border-radius:10px;padding:12px}.street-discovery input::placeholder{color:#b3c3cb}.street-shop-facts{justify-content:flex-start;flex-wrap:wrap;font-size:14px}.street-shop-facts b{color:#ebd298}.street-invite{border-top:1px solid #536975;padding:22px 0 4px;margin-top:16px;font-size:16px}.street-invite small{display:block;font-size:14px;color:#b4c5cb;margin-top:6px}.street-invite button{flex-shrink:0;min-height:44px}.street-pending{padding:12px;border:1px solid #a18c5e;border-radius:10px;margin-bottom:16px;font-size:14px}.street-pending button{flex-shrink:0;min-height:44px}
@media(max-width:650px){.street-discovery{display:block}.street-discovery .commerce-tabs{margin-bottom:12px}.street-title h2{font-size:24px}.street-utilities{width:100%;justify-content:flex-end;gap:8px}.street-invite{align-items:flex-start;flex-direction:column}.street-purpose{margin-top:10px}.street-pending{align-items:flex-start;flex-wrap:wrap}}
.next-action {margin:18px 0;padding:18px;border:1px solid rgba(218,197,145,.4);border-radius:14px;background:rgba(212,192,145,.07)}
.next-action h3 {margin:0 0 10px;font-size:18px}.next-action p {font-size:16px;line-height:1.65}.next-action small {display:block;font-size:14px;line-height:1.6;color:#c8d6dc}
.next-action .modal-actions {flex-wrap:wrap}.next-action button {min-height:44px;white-space:normal}
.news-open {flex-shrink:0;min-width:44px;align-self:stretch;background:transparent;color:#f3d798;border:0;font-size:14px}.city-news:hover .news-track,.city-news:focus-within .news-track {animation-play-state:paused}
.eva-next-actions {display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.eva-next-actions button {min-height:44px}
@media(prefers-reduced-motion:reduce) {*,*:before,*:after {animation:none!important;scroll-behavior:auto!important;transition:none!important;}}
