.extra-hero.leonida-hero{background-image:linear-gradient(115deg,rgba(27,17,46,.78),rgba(168,57,121,.12)),url('./art/leonida.svg')}.extra-hero.passport-hero{background-image:linear-gradient(115deg,rgba(28,17,40,.8),rgba(188,116,54,.18)),url('./art/sunset.svg')}.passport-ornament{font-size:60px;opacity:.8}.vi-mode-grid h3,.vi-region-grid h3{margin:8px 0}.source-flag{padding:4px 8px;border-radius:6px;background:#3f324d;color:#ead0ef;font-size:11px}.backup-actions{display:flex;gap:8px;flex-wrap:wrap}.backup-actions>*{cursor:pointer;border:1px solid #795d84;color:#fff;background:#32273f;padding:10px;border-radius:9px}.danger-button{border-color:#bf5d62!important}.passport-callout{display:flex;flex-wrap:wrap}
/* Atlas Passport interactions */
.passport-world{min-width:0;overflow:hidden}.passport-place{color:#d6bbca;font-size:11px;letter-spacing:.04em}.passport-world h3{margin:5px 0 12px;font-size:19px}.passport-goal{border-top:1px solid var(--line);padding:12px 0}.passport-goal-head{display:flex;justify-content:space-between;gap:12px;align-items:start;font-size:12px}.passport-goal-head span:last-child{color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap}.passport-progress{height:8px;background:#120e20;border-radius:99px;overflow:hidden;margin:8px 0}.passport-progress>span{display:block;height:100%;background:linear-gradient(90deg,#efaa65,#b65ad1);border-radius:99px;transition:width .2s}.passport-controls{display:flex;align-items:center;gap:9px}.passport-controls button{border:1px solid #906187;border-radius:8px;background:#3a2a42;color:white;font-weight:800;width:34px;height:34px}.passport-controls button:hover{background:#65436c}.passport-controls input{width:100%;max-width:94px;text-align:center;padding:6px;min-height:34px;font-variant-numeric:tabular-nums}.passport-empty{color:var(--muted);font-size:13px}.passport-grid{align-items:start}.passport-ornament{font-size:12px;letter-spacing:.09em;display:flex;flex-direction:column;text-align:center;gap:6px;align-items:center;justify-content:center;border:1px solid #daa779;background:linear-gradient(140deg,#49324d,#251c39);padding:24px;border-radius:16px;min-width:210px;box-shadow:0 18px 35px #08060d77}.passport-ornament strong{font-size:28px;line-height:1.05;color:#ffe4ae}.passport-ornament b{color:#f9bb7d}.passport-hero{justify-content:space-between;gap:24px}.passport-hero>div:first-child{min-width:0;flex:1}.search-inline{color:var(--gold);display:flex;align-items:center;gap:9px}.search-inline input{width:min(100%,300px)}.extra-stats strong{display:block;font-size:26px;color:#ffca8c;line-height:1.5}.extra-stats small{display:block;color:var(--muted);font-size:11px}.extra-stats span{color:#e6d6e6;font-size:11px;letter-spacing:.1em}.backup{padding:21px;border:1px solid var(--line);border-radius:14px;background:#231b31}.backup-actions{align-items:center}.backup-actions button,.backup-actions label{display:inline-flex;align-items:center;font-size:13px;min-height:42px}.countdown-panel{min-width:225px;border:1px solid #cb8a89;background:#1c1728dd;border-radius:15px;padding:18px;text-align:center}.countdown-panel>span{display:block;color:var(--gold);font-size:10px;letter-spacing:.12em}.countdown-panel strong{display:block;font-size:34px;color:#fdd09a}.countdown-panel strong em{font-style:normal;font-size:55px}.countdown-panel small{color:#d6bfce;font-size:11px}.countdown-panel a{display:block;color:#f8c88c;font-size:12px;margin-top:9px}.launch-countdown{font-size:13px;color:#fff;padding-top:8px}.leonida-hero{justify-content:space-between;gap:18px}.leonida-hero>div:first-child{min-width:0;flex:1}.vi-mode-grid article,.vi-region-grid article{min-width:0}.vi-mode-grid article p,.vi-region-grid article p{font-size:13px;color:var(--muted)}.vi-mode-grid article b{font-size:10px;letter-spacing:.08em;color:#f4bd7e}.vi-region-grid article a{display:inline-block;color:var(--gold);font-size:12px;margin-top:7px}@media(max-width:760px){.passport-hero,.leonida-hero{flex-direction:column;align-items:stretch}.passport-ornament{min-width:0}.countdown-panel{min-width:0}.search-inline{width:100%}.search-inline input{max-width:none;flex:1}}
