:root{color-scheme:dark;--bg:#080c17;--card:#11182a;--edge:#27334b;--ink:#f7f5f3;--muted:#98a7bc;--violet:#a886fd;--pink:#e8b9d6;--teal:#7ad6d0;--gold:#edce96;--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}::selection{background:#b295ee66}.ambient{position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(85px);opacity:.28}.ambient-one{width:500px;height:500px;background:#452668;top:-200px;right:-100px}.ambient-two{width:370px;height:370px;background:#193e5a;top:620px;left:-190px}.shell{width:min(1440px,100%);margin:auto;padding:0 38px}.topbar{height:95px;border-bottom:1px solid #ffffff15;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}.brand-symbol{font-family:Georgia,serif;font-size:27px;line-height:1;color:#eee2fc;border:1px solid #a98ce450;background:#ab86fa15;display:grid;place-items:center;width:53px;height:53px;border-radius:12px;font-weight:900;letter-spacing:-2px}.brand-symbol span{color:#b18af4;font-size:26px;font-weight:400}.brand-word{font-weight:800;font-size:16px;letter-spacing:2.3px;line-height:1.2}.brand-word b{color:#bba0ff}.brand-sub{display:block;font-size:8px;color:#94a4b7;letter-spacing:2px;margin-top:6px;font-weight:600}.topnav{display:flex;align-items:center;gap:24px}.navlink{font-size:12px;text-transform:uppercase;letter-spacing:1.1px;color:#b7c0d1;font-weight:700;white-space:nowrap}.navlink:hover,.footer a:hover{color:white}.nav-user{color:var(--teal)}.icon-circle{color:#b9a1f7}.notif-count{display:inline-block;padding:1px 6px;background:#7751ad;border-radius:20px;color:white;margin-left:3px}.main-content{padding-bottom:75px;min-height:70vh}.footer{border-top:1px solid #ffffff13;color:#71849b;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px;font-weight:700;padding:27px 0;gap:20px}.dot,.live-dot{color:#6de3c6}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7be7c6;box-shadow:0 0 12px #63eeccbb;vertical-align:middle;margin-right:7px}.eyebrow{font-weight:800;letter-spacing:2.2px;font-size:10px;text-transform:uppercase;color:#bcacdc}.muted{color:var(--muted)}.small{font-size:13px}.centered{text-align:center}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:-.04em;line-height:1.09}h1{font-size:clamp(38px,5.3vw,75px)}h2{font-size:clamp(26px,3vw,38px)}h3{font-size:22px}h4{font-size:17px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;color:var(--pink)}.button{border:1px solid #c2a0fd;background:linear-gradient(120deg,#d0afff,#a584f3);color:#141020;min-height:49px;display:inline-flex;gap:16px;align-items:center;justify-content:center;padding:13px 23px;border-radius:10px;font-size:12px;letter-spacing:1px;font-weight:900;text-transform:uppercase;transition:transform .2s,box-shadow .2s,background .2s}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #895ed04a}.button.ghost{background:#121a2d99;color:#e4d5f9;border-color:#64729377}.button.secondary{background:transparent;border-color:#495879;color:#e3d5ff}.button.tiny{min-height:35px;padding:8px 13px;font-size:10px;border-radius:8px}.button.full{width:100%}.panel{background:linear-gradient(140deg,#151d2e,#101627);border:1px solid #31405b99;border-radius:var(--radius);box-shadow:0 12px 38px #03061344;overflow:hidden}.panel.padded{padding:28px}.alert{margin:20px 0;padding:12px 17px;border:1px solid #829b9b;border-radius:11px;background:#233445;color:#e0f7e8}.alert.error,.alert.warn{border-color:#ce799a;background:#472335;color:#ffe5ed}.visual-city{background-image:linear-gradient(0deg,#090d1e 0%,transparent 64%),url('city.svg');background-position:center;background-size:cover}.visual-street{background-image:linear-gradient(0deg,#070b16 0%,transparent 75%),url('street.svg');background-position:center;background-size:cover}.visual-rooftop{background-image:linear-gradient(0deg,#070b16 0%,transparent 75%),url('rooftop.svg');background-position:center;background-size:cover}.visual-shadow{background-image:linear-gradient(0deg,#080d1c 0%,transparent 75%),url('shadow.svg');background-position:center;background-size:cover}.visual-harbor{background-image:linear-gradient(0deg,#070b16 0%,transparent 75%),url('harbor.svg');background-position:center;background-size:cover}
/* Landing */
.hero{min-height:630px;position:relative;margin:26px 0 30px;border:1px solid #364461aa;border-radius:22px;overflow:hidden;display:flex;align-items:center}.hero-visual{position:absolute;inset:0;background-position:center 38%;transform:scale(1.025)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080c19 4%,#0a0d1ce0 37%,#14112640 87%),linear-gradient(0deg,#090d1d 2%,transparent 48%)}.hero-content{position:relative;max-width:700px;padding:65px 6.5% 50px}.hero-content h1{font-size:clamp(48px,6.8vw,94px);letter-spacing:-.058em;margin:20px 0}.hero-content h1 em{color:#d9b1d7}.hero-content p{font-size:16px;color:#c4cbdb;max-width:510px;line-height:1.83}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.hero-facts{display:flex;flex-wrap:wrap;gap:28px;margin-top:82px;font-size:9px;letter-spacing:1.3px;color:#a5afc4;font-weight:800}.hero-facts b{color:#e5b9e8;font-size:17px;margin-right:6px}.home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.feature-card{position:relative;border:1px solid #3140599a;background:#10192a;border-radius:15px;padding:28px;min-height:255px}.feature-card h3{margin:34px 0 11px}.feature-card p{color:#a6b2c5;font-size:13px;max-width:285px}.feature-mark{position:absolute;right:24px;bottom:13px;font-size:42px;font-family:Georgia,serif;color:#8473c966}.center-cta{text-align:center;padding:115px 10px 85px}.center-cta h2{margin:12px 0 26px}
/* Auth and creation */
.auth-page{display:grid;grid-template-columns:1.05fr .95fr;min-height:590px;margin:32px 0}.auth-side{position:relative;padding:58px 52px;display:flex;flex-direction:column;justify-content:center;border-radius:20px 0 0 20px;border:1px solid #3b4760}.auth-side:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b1021e8,#10152766);border-radius:inherit}.auth-side>*{position:relative}.auth-side h1{font-size:clamp(43px,4.5vw,70px);margin:26px 0}.auth-side p{max-width:420px;color:#b9bfd0}.auth-side-bottom{position:absolute;bottom:42px;left:52px;font-size:10px;letter-spacing:2.3px;color:#a4aed0;font-weight:800}.auth-card{padding:65px min(7vw,85px);background:#131a2c;border:1px solid #34405a;border-radius:0 20px 20px 0;display:flex;flex-direction:column;justify-content:center}.auth-card h2{margin:15px 0}.auth-card a,.side-memory a{color:#d5beff}.form-grid{display:grid;gap:19px;margin-top:22px}.form-grid label{display:grid;gap:8px;color:#b0a9c4;font-size:10px;letter-spacing:1.8px;font-weight:800}.form-grid input:not([type=radio]){height:49px;padding:13px 15px;color:#fff;background:#0a1020;border-radius:9px;border:1px solid #3b4a64;outline:none;font-size:14px;letter-spacing:0}.form-grid input:focus{border-color:#bc9efc;box-shadow:0 0 0 3px #b69aff24}.setup-card{max-width:540px;margin:55px auto;border-radius:16px}.page-intro{padding:60px 0 36px;max-width:790px}.page-intro h1{margin:15px 0;font-size:clamp(42px,5vw,64px)}.page-intro p{color:#a3b1c7;font-size:16px;max-width:670px}.creation-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.art-card{min-height:620px;border:1px solid #394768;border-radius:19px;position:relative;overflow:hidden}.caption-bottom{position:absolute;bottom:0;left:0;right:0;padding:50px 36px 24px;background:linear-gradient(0deg,#080b19f0,transparent)}.caption-bottom h3{margin:8px 0}.field-title{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#aca7bc;margin-bottom:11px}.background-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.radio-card{cursor:pointer}.radio-card input{position:absolute;opacity:0}.radio-card span{display:flex;min-height:106px;padding:15px;border:1px solid #37435c;border-radius:11px;background:#111a2b;flex-direction:column;gap:5px}.radio-card input:checked+span{border-color:#bd9bfc;background:#33294999}.radio-card b{font-size:12px;color:#f4eafd}.radio-card small{font-size:11px;color:#91a0b7;letter-spacing:0;font-weight:500}.starting-pack{display:flex;flex-direction:column;align-items:center;background:#0c1325;border:1px solid #3c4668;padding:19px;border-radius:12px;gap:4px}.starting-pack span{font-size:10px;letter-spacing:2px;color:#b7a9ce}.starting-pack b{font-size:29px;color:#a2e3d6}.starting-pack small{color:#a0abc1}
/* Game */
.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:43px 0 30px}.dashboard-heading h1{font-size:clamp(37px,4.4vw,57px);margin:12px 0 10px}.dashboard-heading p{margin:0}.day-chip{border-left:1px solid #34435b;padding-left:25px;text-align:right}.day-chip span{display:block;color:#94a6be;font-size:10px;font-weight:900;letter-spacing:1.5px}.day-chip b{font-size:31px;color:#e9d4ff}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 325px;align-items:start;gap:24px}.game-main,.sidebar{min-width:0}.scene-art{height:265px;position:relative;border-radius:17px 17px 0 0}.scene-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#11192a,transparent 63%)}.scene-overlay-top{position:absolute;top:18px;left:21px;right:21px;z-index:1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.mini-chip{display:inline-block;background:#0a1020c4;border:1px solid #b8a0dc88;border-radius:6px;padding:7px 10px;font-size:9px;letter-spacing:1.5px;font-weight:900;color:#f1e3ff}.scene-art-bottom{position:absolute;z-index:1;bottom:20px;left:28px;font-size:10px;font-weight:800;letter-spacing:2px;color:#cbb8e4}.scene-body{padding:30px 34px 20px}.scene-body h2{font-size:clamp(28px,3vw,38px);margin:12px 0 22px;text-transform:uppercase}.story-copy{font-size:17px;line-height:1.85;color:#d1d6df;margin-bottom:35px}.choice-heading{display:flex;justify-content:space-between;gap:14px;font-size:10px;letter-spacing:1.7px;font-weight:900;color:#c1a6ff;border-bottom:1px solid #37425b;padding-bottom:13px;margin-bottom:13px}.choice-heading span:last-child{color:#71829c}.choice-list{display:grid;gap:10px}.choice-button{display:flex;align-items:center;gap:16px;text-align:left;width:100%;padding:16px;background:#1a2437;border:1px solid #384660;border-radius:10px;color:#f1edf8;font-size:14px;font-weight:650;transition:background .2s,border .2s,transform .2s}.choice-button:hover{background:#2b2745;border-color:#ba99f8;transform:translateX(3px)}.choice-number{color:#baa4d4;font-size:11px;letter-spacing:1px}.choice-arrow{margin-left:auto;font-size:21px;color:#b39bf8}.scene-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:21px;font-size:9px;color:#8798ad;font-weight:800;letter-spacing:1px}.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:34px 0 15px}.section-header h3{font-size:13px;letter-spacing:1.2px;margin:0}.section-header a{color:#c4a9f3;font-size:12px}.news-card{border:1px solid #344360;border-radius:13px;background:#151d30;padding:20px 23px;display:flex;gap:17px}.news-icon{display:grid;place-items:center;width:49px;height:49px;border:1px solid #856ab87c;border-radius:12px;background:#4733655c;color:#d5b3f0;font-size:27px;flex-shrink:0}.news-card h4{margin:6px 0}.news-card p{color:#a7b4c4;font-size:13px;margin:0}.sidebar{display:grid;gap:17px}.profile-head{padding:22px;display:flex;gap:13px;align-items:center}.profile-head h3{margin:6px 0;font-size:21px}.profile-head p{margin:0;font-size:12px}.avatar{display:grid;place-items:center;background:linear-gradient(135deg,#b095f0,#594b88);font-weight:800;color:white;border:2px solid #b49be8;font-size:24px;border-radius:14px;flex-shrink:0}.avatar-large{width:57px;height:57px}.avatar-xl{height:90px;width:90px;font-size:42px}.small-avatar{width:34px;height:34px;font-size:15px;border-radius:10px}.balance{margin:0 22px 24px;padding:21px;background:linear-gradient(120deg,#2d2b56,#222746);border:1px solid #675e99a1;border-radius:12px;display:flex;align-items:center;justify-content:space-between}.balance strong{display:block;font-size:32px;letter-spacing:-1px;margin-top:2px}.balance-symbol{font-size:35px;color:#e3cdf7}.stats{display:grid;gap:12px;padding:0 22px 18px}.stat-caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:650;color:#b5bfd3}.stat-caption b{color:#d7d7e4}.stat-caption small{font-size:9px;color:#75859b;margin-left:2px}.stat-track{height:5px;background:#313b53;border-radius:99px;margin-top:7px;overflow:hidden}.stat-fill{height:100%;background:#a68df4;border-radius:99px}.stat-fill.energy{background:#61cfbb}.stat-fill.health{background:#e8b38a}.stat-fill.danger{background:#ea829b}.stat-fill.insight{background:#82acfe}.panel-footer{display:flex;justify-content:space-between;padding:17px 20px;gap:6px;border-top:1px solid #34405a;font-size:10px;color:#a7b4c5}.panel-footer span b{color:#e9defd}.phone-widget{display:flex;align-items:center;gap:14px;background:linear-gradient(125deg,#22254e,#161c34);border:1px solid #6668a0;border-radius:13px;padding:18px;color:#eae6ff}.phone-widget>span:last-child{margin-left:auto}.phone-symbol{font-size:28px;color:#d6b9f9}.phone-widget strong{display:block;font-size:13px;margin:5px 0}.phone-widget small{font-size:11px;color:#a6abc7}.side-actions{display:grid;gap:4px}.quick-action{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:13px 0;background:none;border:0;border-bottom:1px solid #37435b;color:#dce4f2;text-align:left;font-size:12px}.quick-action span:last-child{font-size:11px;color:#b9a5dc}.quick-action:hover{color:#d9baff}.side-memory h4{margin:12px 0}.side-memory p{font-size:12px;color:#9facbe}.side-memory a{font-size:11px;font-weight:800}
/* Pages */
.outcome-wrap{max-width:880px;margin:65px auto}.outcome-wrap>.eyebrow{margin-bottom:20px}.outcome-art{height:270px}.outcome-content{padding:34px 43px 43px}.outcome-content h1{font-size:clamp(34px,4vw,55px);margin:20px 0}.outcome-content h3{color:#efc3dd}.outcome-content .story-copy{margin:18px 0 26px}.effect-list{display:flex;flex-wrap:wrap;gap:8px}.effect{font-size:11px;padding:7px 11px;border-radius:8px;background:#243449;color:#b6e5d9}.effect.negative{background:#442936;color:#f5abb7}.outcome-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.city-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.city-art{height:195px}.city-info{padding:24px}.city-info h3{margin:10px 0}.city-info p{color:#a9b5ca;font-size:13px;min-height:45px}.city-info form{margin-top:21px}.two-col-section{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.two-col-section h2{margin:10px 0 18px}.list-row{border-top:1px solid #36425a;display:flex;justify-content:space-between;align-items:center;gap:13px;padding:15px 0;font-size:12px}.list-row b{display:block;color:#e7e4f3;margin-bottom:3px}.list-row small{display:block;color:#8c9bb2;font-size:11px}.list-row strong{color:#8fddcf}.journal-container{max-width:880px}.timeline{border-left:1px solid #715b9e;margin-left:12px;padding-left:28px}.timeline-item{position:relative;margin-bottom:18px}.timeline-dot{position:absolute;left:-35px;top:26px;height:13px;width:13px;background:#c4a6fa;border:3px solid #141827;border-radius:50%}.timeline-item h3{margin:12px 0}.timeline-item p{margin:0;color:#adbad0;font-size:14px}.phone-layout{display:grid;grid-template-columns:minmax(320px,530px) 1fr;gap:36px;align-items:start}.phone-frame{border:8px solid #36415c;box-shadow:inset 0 0 0 1px #7a88ab,0 15px 80px #0007;border-radius:36px;background:#0b1221;overflow:hidden;min-height:620px;padding:14px}.phone-header{display:flex;justify-content:space-between;align-items:center;color:#98abc3;font-size:10px;font-weight:900;letter-spacing:1px;padding:2px 7px 23px}.phone-header b{color:#73d5a8}.phone-speaker{width:48px;height:5px;background:#2b364d;border-radius:40px}.phone-title{padding:10px 17px}.phone-title h2{margin:6px 0}.inbox{max-height:620px;overflow:auto;padding:8px 6px}.message-item{display:flex;gap:12px;padding:17px 9px;border-top:1px solid #2b3649}.sender-icon{width:38px;height:38px;border-radius:11px;background:#2a3353;display:grid;place-items:center;font-size:20px;color:#d8ccfc;flex-shrink:0}.sender-icon.encrypted{background:#392852;color:#e6b8df}.message-item>div:last-child{min-width:0;flex:1}.message-from{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#d6c6ef;font-weight:800}.message-from span{color:#71839b;font-size:10px}.message-item h4{font-size:14px;margin:4px 0}.message-item p{font-size:12px;color:#aab7cb;margin:6px 0;overflow-wrap:anywhere}.encrypted-label{font-size:9px;color:#ba92d7;font-weight:800;letter-spacing:1px;margin-top:9px}.phone-bottom-line{height:4px;width:100px;border-radius:99px;background:#5d6882;margin:20px auto 0}.contacts-panel h2{margin:10px 0 17px}.contact-name{display:flex;gap:9px;align-items:center}.contact-trust{color:#e7b2d1}.hint-card{padding:26px;border-radius:13px;border:1px solid #685883;margin-top:19px;background:#27203d;color:#d5c8eb}.hint-card p{color:#aa9fbe;font-size:12px;margin-top:12px}.profile-detail{display:flex;align-items:center;gap:25px;max-width:780px}.profile-detail h2{margin:0 0 10px}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric{padding:24px}.metric span{font-size:10px;color:#b1a9bf;letter-spacing:1.7px;font-weight:800}.metric b{display:block;font-size:43px;letter-spacing:-.04em;color:#e7d3ff}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 0;border-top:1px solid #36425a}.setting-row b{display:block;font-size:12px}.setting-row small{display:block;color:#899bb5}.error-panel{max-width:700px;margin:65px auto}
@media (max-width:1050px){.shell{padding:0 23px}.topnav{gap:12px}.game-layout{grid-template-columns:minmax(0,1fr) 285px;gap:15px}.scene-body{padding:23px}.auth-card{padding:45px 35px}}
@media (max-width:800px){.shell{padding:0 16px}.topbar{height:auto;min-height:88px;align-items:flex-start;padding:16px 0;flex-direction:column}.brand-symbol{height:41px;width:41px;font-size:23px}.brand-word{font-size:14px}.brand-sub{font-size:7px}.topnav{width:100%;gap:0;overflow-x:auto;justify-content:space-between;padding-bottom:5px}.navlink{font-size:10px;padding:7px;letter-spacing:.4px}.topnav .button{font-size:10px}.footer{font-size:8px;flex-wrap:wrap}.hero{min-height:590px}.hero-content{padding:38px 8%;max-width:560px}.hero-shade{background:linear-gradient(90deg,#080b18f5,#080b19a8 70%,#080b1990)}.hero-content h1{font-size:clamp(45px,9vw,67px)}.hero-facts{margin-top:55px;gap:17px}.home-grid{grid-template-columns:1fr}.feature-card{min-height:195px}.feature-card h3{margin-top:20px}.auth-page,.creation-grid,.game-layout,.phone-layout{grid-template-columns:1fr}.auth-page{margin:18px 0}.auth-side{min-height:270px;border-radius:17px 17px 0 0;padding:34px}.auth-side h1{font-size:42px}.auth-side-bottom{display:none}.auth-card{border-radius:0 0 17px 17px;padding:40px 28px}.art-card{min-height:310px}.sidebar{grid-template-columns:1fr 1fr}.profile-card{grid-row:span 3}.page-intro{padding:42px 0 25px}.city-grid,.two-col-section{grid-template-columns:1fr 1fr}.admin-metrics{grid-template-columns:1fr 1fr}.phone-layout{max-width:100%}}
@media (max-width:560px){.brand-word{font-size:12px;letter-spacing:1.5px}.hero{margin-top:14px;min-height:585px}.hero-content h1{font-size:45px}.hero-content p{font-size:14px}.hero-buttons{flex-direction:column;align-items:stretch}.hero-facts{gap:13px}.hero-facts span{width:100%}.dashboard-heading{align-items:flex-start;padding:33px 0 20px}.dashboard-heading h1{font-size:36px}.day-chip{padding-left:10px}.day-chip span{font-size:8px}.day-chip b{font-size:24px}.scene-art{height:220px}.scene-body{padding:20px 16px}.scene-body h2{font-size:26px}.story-copy{font-size:15px}.choice-heading span:last-child{display:none}.choice-button{padding:14px 10px;font-size:13px;gap:10px}.scene-foot{font-size:8px}.sidebar,.city-grid,.two-col-section,.background-options{grid-template-columns:1fr}.profile-card{grid-row:auto}.phone-frame{border-width:5px}.outcome-wrap{margin:25px auto}.outcome-art{height:195px}.outcome-content{padding:24px 21px}.outcome-content h1{font-size:33px}.outcome-actions{flex-direction:column}.phone-layout{gap:20px}.profile-detail{flex-direction:column;align-items:start}.admin-metrics{gap:8px}.metric{padding:15px}.metric b{font-size:30px}.footer{line-height:1.8}.starting-pack{margin-top:10px}}
.scene-report{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:17px;padding-top:16px;border-top:1px solid #29364c;color:#7485a0;font-size:10px}.scene-report label{font-size:9px;font-weight:800;letter-spacing:1px}.scene-report select{background:#171f32;color:#a5b1cb;border:1px solid #45516a;border-radius:7px;padding:5px;font-size:11px}.scene-report button{border:0;background:transparent;color:#ac98ce;font-size:10px;font-weight:700}.report-row{padding:16px 0;border-bottom:1px solid #38445b;display:flex;gap:16px;justify-content:space-between;align-items:start}.report-row b,.report-row small{display:block}.report-row small{font-size:11px;color:#9da8c1}.report-row p{margin:8px 0;color:#b0b9cb;font-size:12px;max-width:620px}.report-row form{display:flex;gap:7px;flex-shrink:0}@media(max-width:650px){.report-row{flex-direction:column}}
.preview-result{border:1px solid #ad88d6;background:#2a2445;border-radius:12px;padding:23px;margin-top:20px}.preview-result h3{margin:13px 0;color:#efd2f5}.preview-result p{color:#cbd0df;font-size:14px}.preview-result[hidden],#preview-choices[hidden]{display:none!important}

/* FateFork v1.1: World Engine Monitor */
.world-monitor{margin-top:24px}.monitor-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.monitor-title h2{margin:9px 0 10px}.monitor-title p{max-width:670px;font-size:13px}.monitor-status{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;border-radius:999px;padding:10px 14px;font-size:11px;font-weight:800;border:1px solid #607b7c;background:#1b3b38;color:#bcf4d9}.monitor-status.is-warning{border-color:#8c6a57;background:#392a27;color:#f2c5ab}.monitor-light{height:8px;width:8px;background:currentColor;border-radius:100%;box-shadow:0 0 10px currentColor}.monitor-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:23px 0}.monitor-stat{padding:17px;background:#0b1424;border:1px solid #34415b;border-radius:12px;min-width:0}.monitor-stat span{display:block;font-size:9px;font-weight:800;letter-spacing:1.1px;color:#9eacc2}.monitor-stat strong{display:block;font-size:17px;font-weight:800;color:#f6ebff;margin-top:9px;overflow-wrap:anywhere}.monitor-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:12px}.monitor-cols h3{font-size:17px;margin-bottom:17px;letter-spacing:-.02em}.monitor-row{padding:12px 0;border-top:1px solid #354259;display:flex;align-items:center;justify-content:space-between;gap:10px}.monitor-row b{font-size:12px;display:block}.monitor-row small{font-size:10px;color:#9fb1c6;display:block;margin-top:3px;overflow-wrap:anywhere}.source-pill{padding:5px 8px;border-radius:9px;background:#2b3453;color:#d7c5f6;font-size:9px;font-weight:800;white-space:nowrap}.monitor-notice{border:1px solid #765d57;border-radius:9px;background:#392b2b;padding:14px;color:#eed1c6;font-size:12px}.world-monitor .muted{font-size:12px}@media(max-width:900px){.monitor-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.monitor-title{flex-direction:column}.monitor-cols{grid-template-columns:1fr}.monitor-metrics{gap:7px}.monitor-stat{padding:13px}.monitor-stat strong{font-size:14px}}

/* FateFork v1.3 — anchored navigation, apartment, interactive phone, upgrade market */
html{scroll-padding-top:115px}
.topbar{position:sticky;top:0;z-index:80;isolation:isolate;background:rgba(8,12,23,.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 14px 30px -30px rgba(0,0,0,.85)}
.topnav{min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#695583 transparent;overscroll-behavior-x:contain}
.topnav .navlink{flex-shrink:0;padding:9px 0}
.navlink:focus-visible,.button:focus-visible,.choice-button:focus-visible,.message-link:focus-visible{outline:2px solid #dab8ff;outline-offset:4px}
.compact-intro{padding-bottom:23px}
.compact-intro h1{margin-top:12px}
.text-link{font-size:13px;color:#e6c3ea;text-decoration:underline;text-underline-offset:3px}
.apartment-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr);gap:20px;align-items:start}
.apartment-main,.apartment-aside{display:grid;gap:20px;min-width:0}
.apartment-room{overflow:hidden}
.apartment-art{height:390px;position:relative;overflow:hidden;background:linear-gradient(175deg,#362b50 0%,#1e2742 56%,#101d34 100%)}
.apartment-art:before{content:"";position:absolute;inset:auto 0 0;height:105px;background:linear-gradient(#30283e,#241e31);border-top:8px solid #4e405c;z-index:2}
.room-window{position:absolute;top:34px;left:13%;width:64%;height:56%;border:12px solid #2e253d;outline:2px solid #9a769d40;border-radius:12px;background:linear-gradient(180deg,#493968,#242a57 68%,#101c38);box-shadow:inset 0 0 30px #0007;overflow:hidden}
.room-window:before{content:"";position:absolute;top:0;left:48%;width:7px;height:100%;background:#2e253d;z-index:4}
.room-moon{position:absolute;right:18%;top:22px;width:37px;height:37px;border-radius:50%;background:#ead4e0;box-shadow:0 0 55px #edd3deaa}
.room-skyline{position:absolute;bottom:0;left:0;right:0;height:38%;background:repeating-linear-gradient(90deg,#18213a 0 27px,#38405d 27px 31px,#1a2340 31px 54px,#30385b 54px 61px);clip-path:polygon(0 45%,10% 45%,10% 12%,22% 12%,22% 34%,39% 34%,39% 0,52% 0,52% 50%,69% 50%,69% 22%,79% 22%,79% 60%,100% 60%,100% 100%,0 100%)}
.room-bed{position:absolute;left:10%;bottom:68px;width:49%;height:63px;border-radius:13px 18px 4px 4px;background:linear-gradient(150deg,#d4b6d5,#79608d 48%,#413d63);z-index:5;box-shadow:0 10px 0 #2b263e,0 21px 0 #151729}
.room-bed:before{content:"";position:absolute;top:6px;left:7%;height:22px;width:26%;border-radius:12px;background:#eee0f4;box-shadow:0 3px 8px #0004}
.room-desk{position:absolute;right:10%;bottom:70px;width:20%;height:13px;background:#594252;z-index:5;box-shadow:0 12px 0 -4px #291d30}
.room-desk:before{content:"";position:absolute;right:14%;bottom:12px;width:45px;height:35px;border-radius:5px;background:linear-gradient(#2c364e,#111c2d);border:4px solid #9d83a9}
.room-lamp{position:absolute;right:18%;bottom:107px;width:7px;height:67px;background:#aa8a9e;z-index:6}
.room-lamp:before{content:"";position:absolute;top:-8px;left:-21px;width:49px;height:24px;border-radius:50% 50% 10% 10%;background:#dbc2b6;box-shadow:0 20px 42px #dba87a73}
.room-rug{position:absolute;bottom:10px;left:20%;width:65%;height:57px;background:#65507266;transform:skewX(-32deg);border-radius:50%;z-index:3}
.apartment-art-caption{position:absolute;top:18px;left:18px;right:18px;display:flex;flex-wrap:wrap;gap:8px;z-index:6}
.apartment-summary{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}
.apartment-summary h2{margin:8px 0 10px}
.apartment-summary p{max-width:530px;font-size:13px}
.home-activity h3{margin:8px 0}
.home-activity p{font-size:13px}
.home-activity .button{margin-top:10px}
.home-upgrade{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #36425a}
.home-upgrade:last-of-type{margin-bottom:20px}
.home-upgrade>div{flex:1;min-width:0}
.home-upgrade b,.home-upgrade small{display:block}
.home-upgrade b{font-size:12px}
.home-upgrade small{font-size:10px;color:#98a7bc}
.item-emblem{display:grid;place-items:center;height:40px;width:40px;flex-shrink:0;border-radius:12px;color:#efd5f3;background:#3a2e4d;font-size:22px}
.tier-badge{display:inline-flex;align-items:center;border-radius:999px;background:#2a304a;color:#dcc4f2;font-size:10px;font-weight:800;padding:5px 9px;white-space:nowrap}
.wallet-big{font-weight:850;font-size:34px;color:#eacbf2;margin:8px 0 11px}
.store-wallet{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 23px;margin-bottom:26px;border:1px solid #675979;border-radius:16px;background:linear-gradient(95deg,#2b2444,#172138)}
.store-wallet .eyebrow{display:block}
.store-wallet strong{display:block;font-size:31px;color:#f1d6f4;line-height:1.2;margin-top:7px}
.store-section{margin-bottom:28px}
.store-section .section-header{margin:0 0 13px}
.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.store-card{padding:23px;display:flex;flex-direction:column;min-height:291px}
.store-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.store-symbol{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#44325b,#242740);color:#ead2f1;font-size:30px}
.store-card h4{margin:18px 0 7px;font-size:19px}
.store-card p{font-size:13px;color:#aeb8cc;margin:0}
.store-benefit{font-size:11px;color:#a6e6d6;margin:16px 0;line-height:1.5}
.store-purchase{margin-top:auto;padding-top:14px;border-top:1px solid #303b54;display:flex;align-items:center;gap:10px;justify-content:space-between}
.store-price{font-size:17px;font-weight:800;color:#f0d0ea}
.store-purchase .button{font-size:11px;padding:11px 14px;text-align:center}
.city-home-shortcut{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:13px;background:#181f34;border:1px solid #3e4264;border-radius:13px;padding:14px 20px;margin:5px 0 21px;color:#c6c0db;font-size:13px}
.inbox-count{font-size:11px;font-weight:600;color:#b6dcd7;vertical-align:middle;margin-left:6px}
.inbox-form{margin:0}
.message-link{width:100%;display:flex;align-items:center;gap:13px;text-align:left;background:transparent;border:0;border-top:1px solid #2b3649;color:#d9d8e8;padding:15px 9px;transition:background .16s ease}
.message-link:hover,.message-link:focus-visible{background:#222b45}
.message-link.is-unread{background:#23233c7a}
.message-link.is-unread .message-preview strong{color:#fff}
.message-link.is-unread .sender-icon{outline:1px solid #b799de}
.message-preview{flex:1;min-width:0;display:block}
.message-preview>strong,.message-preview>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.message-preview>strong{font-size:13px;margin:4px 0}
.message-preview>small{font-size:11px;color:#a9b8cc}
.message-from small{font-size:10px;color:#899bb1}
.message-open{font-size:21px;color:#bd9bd9;flex-shrink:0}
.empty-inbox{padding:25px 12px;color:#9facbe;font-size:13px}
.read-message{max-width:820px;padding:32px}
.message-detail-head{display:flex;align-items:flex-start;gap:16px;border-bottom:1px solid #38435c;padding-bottom:22px}
.message-detail-head .sender-icon{width:58px;height:58px;font-size:29px}
.message-detail-head h2{font-size:26px;margin:7px 0}
.message-detail-head p{margin:0;font-size:12px}
.message-fullbody{font-size:16px;line-height:1.8;white-space:normal;color:#e4e4ed;padding:27px 3px 34px;overflow-wrap:anywhere}
.reply-selector,.message-reply-result{border-top:1px solid #38435c;padding-top:21px}
.reply-selector p{font-size:12px}
.reply-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}
.message-reply-result{color:#b5e4d7;font-size:14px}
@media (max-width:1120px){.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topnav{gap:15px}}
@media (max-width:800px){.topbar{top:0;align-items:stretch}.topnav{justify-content:flex-start;overflow-x:auto;padding:6px 0 9px;gap:20px}.topnav .navlink{font-size:11px;padding:7px 0}.apartment-layout{grid-template-columns:1fr}.apartment-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.apartment-art{height:330px}.read-message{max-width:100%}}
@media (max-width:580px){html{scroll-padding-top:130px}.topbar{padding-top:12px;padding-bottom:8px}.store-grid,.apartment-aside{grid-template-columns:1fr}.store-card{min-height:245px}.store-wallet{align-items:flex-start;flex-direction:column}.store-wallet strong{font-size:28px}.apartment-art{height:260px}.room-window{top:33px;height:54%}.room-bed{bottom:50px}.room-desk{bottom:53px}.room-lamp{bottom:90px}.apartment-summary{align-items:flex-start}.apartment-summary .button{width:100%;text-align:center}.read-message{padding:20px 17px}.message-detail-head h2{font-size:21px}.message-fullbody{font-size:15px}.reply-actions{flex-direction:column}.reply-actions button{width:100%}.city-home-shortcut .button{width:100%;text-align:center}}


/* ============================================================
   FateFork v1.3.1 — responsive layout correction
   Fix: stacked logo, clipped header links, apartment card padding,
   narrow page grids and small-screen navigation.
   ============================================================ */
html { max-width: 100%; scroll-padding-top: 120px; }
body { min-width: 0; }
.shell {
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: clamp(16px, 2.65vw, 38px);
  min-width: 0;
}
.shell > *,
.main-content > *,
.apartment-main > *,
.apartment-aside > *,
.game-main > *,
.sidebar > * { min-width: 0; max-width: 100%; }

/* Header remains on-screen; nav wraps instead of truncating items. */
.topbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  box-sizing: border-box;
  height: auto;
  min-height: 88px;
  padding-block: 13px;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 20px;
  background: rgba(8, 12, 23, .98);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  isolation: isolate;
}
.brand { flex: 0 1 auto; min-width: 0; max-width: 100%; }
/* v1.3 used display:grid: each text node became its own grid row,
   leaving a stray F below the header. */
.brand-symbol {
  display: flex;
  flex: 0 0 53px;
  align-items: center;
  justify-content: center;
  gap: 1px;
  width: 53px;
  height: 53px;
  font-size: 21px;
  line-height: 1;
  letter-spacing: -1px;
  white-space: nowrap;
  overflow: hidden;
}
.brand-symbol span {
  display: inline;
  flex: 0 0 auto;
  font-size: 19px;
  line-height: 1;
  margin: 0;
}
.topnav {
  flex: 1 1 690px;
  min-width: 0;
  max-width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 3px 17px;
  margin-left: auto;
  overflow: visible;
  scrollbar-width: auto;
}
.topnav .navlink {
  flex: 0 0 auto;
  max-width: 100%;
  padding: 8px 0;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.35;
}
.nav-user { overflow-wrap: anywhere; }

/* Explicit minmax columns prevent content from forcing wider pages. */
.apartment-layout {
  grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
}
.apartment-summary {
  padding: 26px 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 18px;
  min-width: 0;
}
.apartment-summary > div { flex: 1 1 310px; min-width: 0; }
.apartment-summary h2, .apartment-summary p { overflow-wrap: anywhere; }
.apartment-summary .button {
  flex: 0 1 auto;
  max-width: 100%;
  text-align: center;
  white-space: normal;
}
.apartment-aside .panel.padded { min-width: 0; }
.apartment-art { width: 100%; max-width: 100%; }
.home-upgrade { min-width: 0; }
.home-upgrade > div { overflow-wrap: anywhere; }

.store-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.store-card { min-width: 0; }
.store-purchase { flex-wrap: wrap; }
.store-purchase .button { max-width: 100%; overflow-wrap: anywhere; }
.phone-layout { grid-template-columns: minmax(0, 530px) minmax(0, 1fr); }
.phone-layout > * { min-width: 0; }
.admin-metrics { grid-template-columns: repeat(4, minmax(0,1fr)); }
.monitor-cols { grid-template-columns: repeat(2, minmax(0,1fr)); }

@media (max-width: 1200px) {
  .topnav { flex-basis: 100%; width: 100%; margin-left: 0; justify-content: flex-start; }
  .topbar { gap: 4px; }
  .apartment-layout { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); }
  .store-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .apartment-layout { grid-template-columns: minmax(0, 1fr); }
  .apartment-aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .monitor-cols { grid-template-columns: minmax(0, 1fr); }
  .admin-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  html { scroll-padding-top: 165px; }
  .topbar { flex-direction: column; align-items: stretch; padding-block: 12px; }
  .brand { align-self: flex-start; }
  .brand-symbol { flex-basis: 41px; height: 41px; width: 41px; font-size: 17px; }
  .brand-symbol span { font-size: 15px; }
  .topnav {
    flex: none;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    justify-content: flex-start;
    overflow: visible;
    padding: 2px 0 0;
    gap: 2px 16px;
  }
  .topnav .navlink { font-size: 11px; padding: 6px 0; }
  .phone-layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 580px) {
  .shell { padding-inline: 14px; }
  .topbar { gap: 8px; }
  .topnav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: center;
    gap: 4px 6px;
  }
  .topnav .navlink {
    min-width: 0;
    max-width: 100%;
    text-align: center;
    font-size: 10px;
    line-height: 1.25;
    padding: 7px 2px;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .topnav .button { width: max-content; max-width: 100%; }
  .page-intro { padding-top: 28px; }
  .apartment-summary { padding: 22px 18px; }
  .apartment-summary > div { flex-basis: 100%; }
  .apartment-summary .button { width: 100%; }
  .apartment-aside, .store-grid { grid-template-columns: minmax(0,1fr); }
  .store-wallet { min-width: 0; }
  .store-wallet .button { max-width: 100%; white-space: normal; }
  .store-card { padding: 18px; }
  .store-purchase { align-items: flex-start; }
  .monitor-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 370px) {
  .topnav { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .brand-sub { font-size: 6px; letter-spacing: 1px; }
  .panel.padded { padding: 18px; }
  .topnav .navlink { font-size: 10px; }
}

/* FateFork v1.4 — autonomous Life Hub */
.life-topline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 22px}
.life-topline>div{min-width:0;background:linear-gradient(125deg,#1a2035,#11192a);border:1px solid #354261;border-radius:14px;padding:19px 20px}
.life-topline small{color:#acb6ca;display:block;font-size:10px;letter-spacing:1.3px;font-weight:800}
.life-topline strong{display:block;font-size:clamp(18px,2.4vw,27px);color:#ebc9f2;margin-top:7px;overflow-wrap:anywhere}
.life-pulse{padding:20px 24px;margin-bottom:24px;background:linear-gradient(110deg,#25213e,#131c30)}
.life-pulse p{color:#d4d7e4;font-size:14px;margin:7px 0 0}
.life-section{margin:0 0 24px;min-width:0}
.life-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #38435b;padding-bottom:18px;margin-bottom:22px}
.life-section-head h2{margin:11px 0}
.life-section-head p{font-size:13px;line-height:1.65;margin:0;max-width:720px}
.life-icon{display:grid;place-items:center;width:54px;height:54px;flex-shrink:0;border:1px solid #644e88;border-radius:16px;background:#322742;color:#f0caec;font-size:29px}
.life-job-active{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:20px;border:1px solid #5c5376;border-radius:15px;background:linear-gradient(110deg,#302747,#1a2740);padding:23px;margin-bottom:22px}
.life-job-active h3{font-size:27px;margin:10px 0}
.life-job-active p{color:#c6bfd6;margin-bottom:9px}
.life-job-active small{color:#adbdd5}
.life-job-pay{border-left:1px solid #554e71;padding-left:23px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.life-job-pay span{font-size:10px;letter-spacing:1.4px;font-weight:800;color:#ada8cc}
.life-job-pay strong{font-size:30px;color:#d6f3e5;line-height:1.1}
.life-job-pay .button{margin-top:10px;max-width:100%;white-space:normal}
.life-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.life-option{min-width:0;padding:20px;border:1px solid #394763;border-radius:14px;background:#0c1426;display:flex;flex-direction:column;gap:7px}
.life-option-symbol{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#3a2b51;color:#edd3f0;font-size:26px;margin-bottom:7px}
.life-option h3{margin:0;font-size:19px;line-height:1.25}
.life-option p{margin:0;color:#aeb9ca;font-size:12px;line-height:1.65;flex:1}
.life-option-foot{margin-top:13px;padding-top:13px;border-top:1px solid #344056;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.life-option-foot span{font-size:12px;color:#d7d0e9;font-weight:700}
.life-option-foot form{margin:0}
.life-business-income{color:#9ce1d6;font-size:14px;font-weight:800;margin:13px 0}
.life-option form{margin-top:auto}
.life-businesses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:24px}
.life-business-card{border:1px solid #414765;border-radius:14px;background:linear-gradient(140deg,#20253e,#0d1629);padding:22px;display:flex;flex-direction:column;gap:9px;min-width:0}
.life-business-card h3{margin:0;font-size:20px}
.life-business-card p{color:#b0bcd0;font-size:12px;margin:0}
.life-business-card strong{color:#b8eddd;font-size:17px}
.life-business-card form{margin-top:auto;padding-top:13px}
.life-subheading{font-size:19px;margin-bottom:14px}
.life-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.life-contact{border:1px solid #394763;border-radius:14px;background:#0e1729;padding:21px;min-width:0}
.life-contact-header{display:flex;align-items:center;gap:13px;min-width:0}
.life-contact-header>div{flex:1;min-width:0}
.life-contact-header h3{font-size:17px;margin:0 0 4px;overflow-wrap:anywhere}
.life-contact-header p{font-size:12px;color:#abb8d0;margin:0}
.life-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:13px;background:linear-gradient(120deg,#9f7cba,#4a496f);display:grid;place-items:center;color:white;font-weight:900;font-size:21px}
.life-affinity{font-size:12px;color:#e5c8ec;font-weight:800;white-space:nowrap}
.life-affinity-track{height:5px;border-radius:10px;background:#29334b;overflow:hidden;margin:19px 0}
.life-affinity-track span{display:block;background:linear-gradient(90deg,#8660c9,#c4a1ee);height:100%;border-radius:10px}
.life-contact-actions{display:flex;gap:7px;flex-wrap:wrap}
.life-contact-actions .button{flex:1 1 95px;max-width:100%;white-space:normal;padding:8px 10px}
.life-contact>small{display:block;margin-top:10px;font-size:11px}
.life-return{display:flex;flex-wrap:wrap;gap:11px;margin:17px 0 35px}
@media(max-width:1000px){.life-topline{grid-template-columns:repeat(2,minmax(0,1fr))}.life-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.life-contacts,.life-businesses,.life-catalog{grid-template-columns:1fr}.life-job-active{grid-template-columns:1fr}.life-job-pay{border-left:0;border-top:1px solid #554e71;padding:16px 0 0}.life-section-head{gap:9px}.life-icon{width:40px;height:40px;font-size:22px}.life-section.panel.padded{padding:19px}}
@media(max-width:420px){.life-topline{gap:8px}.life-topline>div{padding:13px}.life-topline strong{font-size:17px}.life-contact{padding:14px}.life-contact-header{gap:8px}.life-affinity{font-size:10px}.life-return .button{width:100%}}


/* FateFork v1.4.1 — contextual location visuals and mobile-safe scene banners */
.location-banner {
 position:relative; min-height:190px; border:1px solid #3f4966;
 border-radius:19px; overflow:hidden; margin:0 0 24px;
 display:flex; align-items:flex-end; isolation:isolate;
 background-color:#172035;
}
.location-banner:before {
 content:"";position:absolute;inset:0;z-index:0;
 background:linear-gradient(90deg,rgba(6,10,23,.90) 0%,rgba(6,10,23,.62) 58%,rgba(6,10,23,.15) 100%);
}
.location-banner-content {position:relative;z-index:1;padding:26px 30px;max-width:min(640px,90%);}
.location-banner h2{font-size:clamp(23px,3vw,35px);line-height:1.1;margin:7px 0;letter-spacing:-.02em}
.location-banner p{color:#d9d5e7;margin:0;font-size:13px;line-height:1.6}
.scene-art,.outcome-art {background-size:cover;background-position:center center;transition:background-image .15s ease;}
.scene-art.is-shadow-event:after,.outcome-art.is-shadow-event:after{
 content:"⌁";position:absolute;top:50%;right:12%;transform:translateY(-50%);
 color:rgba(224,198,247,.27);font-family:Georgia,serif;font-size:clamp(74px,14vw,175px);
 font-weight:bold;text-shadow:0 0 22px rgba(10,10,38,.8);pointer-events:none;
}
.scene-art.is-shadow-event .scene-overlay-top {position:relative;z-index:2}
@media(max-width:700px){.location-banner{min-height:155px}.location-banner-content{padding:18px 20px}.location-banner p{font-size:12px}}
@media(max-width:420px){.location-banner{min-height:143px}.location-banner-content{max-width:100%;padding:16px}.location-banner h2{font-size:23px}}

/* Your Other World: distinct environments and visible purchased apartment upgrades */
.visual-market{background-image:linear-gradient(0deg,#070b16,transparent 85%),url('market.svg');background-position:center;background-size:cover}
.visual-office{background-image:linear-gradient(0deg,#070b16,transparent 85%),url('office.svg');background-position:center;background-size:cover}
.apartment-art{background-image:linear-gradient(180deg,#10142b33,#14102344),url('apartment.svg');background-size:cover;background-position:center}
.apartment-art .room-window,.apartment-art .room-moon,.apartment-art .room-skyline{opacity:.32}
.room-tier-1{filter:saturate(1.15)}.room-tier-2{filter:saturate(1.3) brightness(1.1)}.room-tier-3{filter:saturate(1.45) brightness(1.18)}
.room-bed-tier-1 .room-bed{background:linear-gradient(140deg,#d6a7cf,#7652a2)}
.room-bed-tier-2 .room-bed{background:linear-gradient(140deg,#f2d7e6,#8166d2);box-shadow:0 10px 0 #483260,0 21px 0 #151729,0 0 24px #b28ee566}
.room-bed-tier-3 .room-bed{background:linear-gradient(140deg,#fff4fa,#9d84ff);box-shadow:0 10px 0 #61458a,0 21px 0 #151729,0 0 35px #d9b8ff99}
.room-kitchen,.room-security{display:none;position:absolute;z-index:6}
.room-kitchen{right:2%;bottom:38px;width:25%;height:42px;border:3px solid #a3b6c8;border-radius:5px;background:linear-gradient(#4b556c,#1a263a)}
.room-kitchen:before{content:'KITCHEN';font-size:9px;letter-spacing:2px;color:#e4dcfa;position:absolute;top:9px;left:10px}
.room-kitchen-tier-1 .room-kitchen,.room-kitchen-tier-2 .room-kitchen,.room-kitchen-tier-3 .room-kitchen{display:block}
.room-kitchen-tier-2 .room-kitchen{border-color:#d8a9df;background:linear-gradient(#74718d,#26314a)}
.room-kitchen-tier-3 .room-kitchen{border-color:#f5d3ff;background:linear-gradient(#a38aaf,#364b6b)}
.room-security{top:35px;right:28px;border:2px solid #a9cce9;border-radius:9px;background:#0b2335;padding:7px 10px;font-size:11px;color:#aaf3d8}
.room-security:before{content:'● SECURITY ACTIVE'}
.room-security-tier-1 .room-security,.room-security-tier-2 .room-security,.room-security-tier-3 .room-security{display:block}
.room-security-tier-2 .room-security{box-shadow:0 0 18px #8fffe566}.room-security-tier-3 .room-security{box-shadow:0 0 30px #8fffe5bb}
@media(max-width:600px){.room-kitchen{width:29%;bottom:26px}.room-security{top:65px;right:12px;font-size:8px}}
