:root{
  --bg:#090a0c;
  --panel:#101114;
  --panel2:#15161a;
  --panel3:#1a1b20;
  --line:#2c2d34;
  --line-warm:#463a31;
  --cream:#ded7cc;
  --gold:#b08b58;
  --gold2:#665036;
  --muted:#85858a;
  --green:#486f59;
  --green-bright:#70a27f;
  --red:#8d353b;
  --orange:#9c6844;
  --text:#e2ddd4
}
*{box-sizing:border-box}
html,body{min-height:100%}
body{
  margin:0;
  background:
    radial-gradient(circle at 50% 115%,rgba(92,52,48,.15),transparent 38%),
    radial-gradient(circle at 80% 15%,rgba(76,62,48,.10),transparent 28%),
    linear-gradient(rgba(7,8,10,.96),rgba(8,9,12,.985)),
    repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0,rgba(255,255,255,.012) 1px,transparent 1px,transparent 5px);
  color:var(--text);
  font:14px/1.45 Inter,Segoe UI,Arial,sans-serif;
  min-height:100vh
}
body:after{
  content:"";position:fixed;inset:0;pointer-events:none;
  box-shadow:inset 0 0 180px rgba(0,0,0,.68);z-index:999
}
a{color:inherit}
.topline{height:3px;background:linear-gradient(90deg,#26352d 0 33%,#b7aa90 33% 66%,#643036 66%)}
.brandbar{
  height:86px;display:flex;justify-content:space-between;align-items:center;padding:0 24px;
  border-bottom:1px solid var(--line-warm);
  background:
    radial-gradient(circle at 75% 25%,rgba(121,79,54,.10),transparent 24%),
    linear-gradient(180deg,#151416 0%,#0b0c0e 100%);
  box-shadow:0 8px 24px rgba(0,0,0,.38)
}
.brand{font-family:Georgia,serif;font-size:32px;font-weight:900;letter-spacing:2.5px;color:#ded0b2;text-shadow:0 2px 0 #000}
.brand span{color:inherit}
.tagline,.era{font-size:10px;letter-spacing:2.8px;color:#77777c}
.statusbar{
  min-height:35px;display:grid;grid-template-columns:repeat(5,1fr);
  background:#090a0c;border-bottom:1px solid #24252a
}
.statusbar div{display:flex;align-items:center;justify-content:center;border-right:1px solid #25262c;font-size:11px;color:#8f9095;padding:8px}
.statusbar b{color:#c9c7c2;margin-left:5px}.statusbar .live{color:#70a27f}
.shell{display:grid;grid-template-columns:200px minmax(500px,1fr) 235px;max-width:1700px;margin:auto;min-height:calc(100vh - 124px)}
.leftnav,.rightbar{background:rgba(12,13,16,.975)}
.leftnav{border-right:1px solid #28292f}
.leftnav section{border-bottom:1px solid #222329}
.leftnav h3,.side-title{
  margin:0;padding:7px 10px;
  background:linear-gradient(180deg,#28231f,#171619);
  font-size:10px;letter-spacing:1.2px;color:#cbb98f;
  border-top:1px solid #3c332d;border-bottom:1px solid #08090a
}
.leftnav a{display:block;padding:6px 12px;color:#bcbcc0;text-decoration:none;font-size:12px;border-left:2px solid transparent}
.leftnav a:hover{background:#242127;color:#fff;border-left-color:var(--gold)}
.content{
  padding:22px;
  background:
    radial-gradient(circle at 85% 5%,rgba(103,66,53,.08),transparent 26%),
    repeating-linear-gradient(0deg,transparent,transparent 27px,rgba(255,255,255,.012) 28px),
    repeating-linear-gradient(90deg,transparent,transparent 27px,rgba(255,255,255,.012) 28px)
}
.pagehead{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}
.eyebrow{font-size:10px;letter-spacing:2px;color:#9a7950}
h1{font-family:Georgia,serif;font-size:28px;margin:2px 0 0;color:#ece3d2}
.online-dot{font-size:10px;color:#6b9677;letter-spacing:1px}
.card{
  background:linear-gradient(145deg,#15161a,#0f1013);
  border:1px solid #2d2e34;box-shadow:0 10px 30px #0006;margin-bottom:16px
}
.card-title{
  padding:10px 13px;border-bottom:1px solid #303138;
  background:linear-gradient(180deg,#24211f,#17171b);
  font-family:Georgia,serif;color:#dfcfad;font-weight:700
}
.card-body{padding:16px}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.hero-panel{
  min-height:215px;padding:22px;
  background:
    linear-gradient(90deg,rgba(8,9,11,.97),rgba(12,11,13,.78)),
    radial-gradient(circle at 85% 20%,rgba(120,72,55,.18),transparent 30%);
  border:1px solid #373137;position:relative;overflow:hidden
}
.hero-panel:after{
  content:"PALERMO · SICILIA";position:absolute;right:-14px;bottom:17px;
  font:700 32px Georgia,serif;letter-spacing:7px;color:rgba(202,184,150,.045);transform:rotate(-3deg)
}
.hero-panel h2{font:700 34px Georgia,serif;margin:42px 0 8px;color:#eee4d0;position:relative;z-index:1}
.hero-panel p{max-width:560px;color:#a6a5a7;position:relative;z-index:1}
.hero-panel .btn{position:relative;z-index:1}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.stat{background:#0b0c0f;border:1px solid #26272d;padding:13px}
.stat strong{font:700 22px Georgia,serif;display:block;color:#e2d5bc}
.stat span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#77787e}
.activity{width:100%;border-collapse:collapse}
.activity td{border-bottom:1px solid #24252a;padding:9px 8px}.activity tr:hover{background:#ffffff04}
.crime-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.crime{padding:15px;background:#0c0d10;border:1px solid #282a30}
.crime h3{font-family:Georgia,serif;margin:0 0 5px;color:#e1d5be}
.crime p{color:#87878c;min-height:38px}
.crime .meta{font-size:11px;color:#b19a76;margin:8px 0}
.btn{
  display:inline-block;border:1px solid #624e38;
  background:linear-gradient(#51412f,#2d261f);
  color:#eee2c8;padding:8px 12px;text-decoration:none;cursor:pointer;font-weight:700
}
.btn:hover{filter:brightness(1.15)}.btn:disabled{opacity:.42;cursor:not-allowed}
.flash{padding:10px 12px;margin-bottom:12px;border:1px solid #57402f;background:#241a18;color:#dfcdb6}
.rightbar{border-left:1px solid #28292f;padding:0 8px}
.sidecard{margin-top:8px;border:1px solid #2c2d33;background:#111216;text-align:center}
.sidecard h3{margin:6px 0 0;font-family:Georgia,serif;color:#ded2bd}
.sidecard small{color:#77787e}
.portrait{
  margin:12px auto 6px;width:56px;height:68px;display:grid;place-items:center;
  background:linear-gradient(145deg,#28252a,#090a0b);border:1px solid #474048;font-size:34px;color:#a68557
}
.meter{height:7px;background:#2b1115;margin:12px;border:1px solid #301a1d}
.meter span{display:block;height:100%;background:linear-gradient(90deg,#314f3c,#60836b)}
.kv{display:flex;justify-content:space-between;padding:6px 10px;border-top:1px solid #24252a;font-size:11px;color:#96969a}
.kv b{color:#d8d2c8}
.city-silhouette{
  height:75px;margin:10px;display:grid;place-items:center;
  background:radial-gradient(circle,#242427,#0d0e10);
  border:1px solid #25262c;font:700 18px Georgia,serif;color:#69635d;letter-spacing:6px
}
.mini-feed{text-align:left;padding:9px;font-size:11px;color:#98989c;max-height:220px;overflow:auto}
.mini-feed div{padding:6px 0;border-bottom:1px solid #24252a}
.auth-wrap{max-width:440px;margin:8vh auto}
.auth-card{
  padding:28px;background:linear-gradient(145deg,#141519,#0c0d10);
  border:1px solid #302f35;box-shadow:0 25px 70px rgba(0,0,0,.45)
}
.auth-card h1{margin-bottom:5px}.auth-card p{color:#929297}
.auth-card label{display:block;margin:12px 0 5px;color:#aaa5a0}
.auth-card input{
  width:100%;padding:10px;background:#090a0c;border:1px solid #33333a;
  color:#eee5d7;outline:none
}
.auth-card input:focus{border-color:#665036}
.auth-card .btn{width:100%;margin-top:16px}.auth-card a{color:#b08b58}
.currency-note{font-size:10px;color:#77787e;letter-spacing:.6px}
@media(max-width:1050px){.shell{grid-template-columns:165px 1fr}.rightbar{display:none}.hero{grid-template-columns:1fr}}
@media(max-width:720px){.shell{display:block}.leftnav{display:none}.statusbar{grid-template-columns:repeat(2,1fr);height:auto}.content{padding:12px}.hero{display:block}.hero-panel{margin-bottom:12px}}

.economy-chart{height:230px;display:flex;align-items:flex-end;gap:5px;padding:25px 8px 30px;border:1px solid #282a30;background:#0b0c0f;overflow-x:auto}
.eco-bar-wrap{height:100%;min-width:28px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}
.eco-bar{width:72%;min-height:3px;background:linear-gradient(180deg,#8f714b,#4c3a2c);border:1px solid #64503a}
.eco-value{font-size:9px;color:#8f9095;margin-bottom:4px;writing-mode:vertical-rl;transform:rotate(180deg)}
.eco-date{position:absolute;bottom:-23px;font-size:9px;color:#717278;white-space:nowrap;transform:rotate(-35deg);transform-origin:center}
.poll-meta{font-size:11px;color:#b19a76;margin:12px 0 15px;letter-spacing:.4px}.poll-options{display:grid;gap:8px;margin:12px 0}.poll-options label{display:flex;gap:9px;align-items:center;padding:11px;background:#0b0c0f;border:1px solid #292a30;cursor:pointer}.poll-options label:hover{border-color:#574837}.poll-sealed{padding:12px;border:1px solid #31463a;background:#101913;color:#92b09a}.poll-results{display:grid;gap:13px;margin-top:15px}.poll-result>div:first-child{display:flex;justify-content:space-between;gap:12px}.poll-result span{color:#8d8e93;font-size:11px}.poll-bar{height:10px;background:#08090b;border:1px solid #2b2c31;margin-top:5px}.poll-bar span{display:block;height:100%;background:linear-gradient(90deg,#665036,#b08b58)}.poll-total{margin-top:14px;color:#aaa;font-size:11px}.admin-form label{display:block;margin:12px 0 5px;color:#b9b0a3}.admin-form label small{color:#73747a}.admin-form input,.admin-form textarea{width:100%;padding:10px;background:#090a0c;border:1px solid #33333a;color:#eee5d7;outline:none;font:inherit}.admin-form input:focus,.admin-form textarea:focus{border-color:#665036}.admin-form .btn{margin-top:14px}

.role-badge{display:inline-block;margin:8px 0 2px;padding:4px 7px;border:1px solid #3b3c42;background:#17181c;color:#aaa;font-size:9px;text-transform:uppercase;letter-spacing:.7px;white-space:nowrap}
.role-staff_admin{border-color:#795044;color:#e0b5a4;background:#211513}.role-staff_moderator{border-color:#65573d;color:#d9c497;background:#1c1912}.role-staff_support{border-color:#3c5960;color:#9fc4cc;background:#10191b}.role-player_guide{border-color:#405a46;color:#9bc0a3;background:#101813}.role-test_account{border-color:#56506d;color:#b6acd3;background:#15131d}.role-standard_account{border-color:#383940;color:#999a9f;background:#111216}
.role-key{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.muted{color:#85868b}.account-search{display:flex;gap:8px}.account-search input,.role-form select{background:#090a0c;border:1px solid #33333a;color:#eee5d7;padding:9px;outline:none}.account-search input{flex:1}.role-form{display:flex;gap:7px;align-items:center}.role-form select{min-width:170px}.role-form .btn{padding:7px 9px}.account-table small{color:#74757a}.account-table-wrap{overflow-x:auto}.account-table{min-width:760px}

/* V5 Community Master */
.comm-tabs{display:flex;gap:7px;margin-bottom:14px;flex-wrap:wrap}.comm-tabs a{padding:8px 12px;text-decoration:none;border:1px solid #303138;background:#111216;color:#a9a9ad}.comm-tabs a.active,.comm-tabs a:hover{border-color:#665036;color:#eadfc9;background:#211c17}
.message-list{padding:0}.message-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 14px;border-bottom:1px solid #24252a;text-decoration:none}.message-row:hover{background:#ffffff05}.message-row>div{min-width:0}.message-row strong{display:block;color:#ddd6cb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-row span,.message-row time{display:block;color:#77787d;font-size:11px;margin-top:2px}.message-row.unread{border-left:3px solid #9b7950;background:#171512}.message-row.unread strong{color:#f0dfbb}.message-meta{padding-bottom:12px;border-bottom:1px solid #292a30;color:#929298;font-size:11px}.message-meta b{color:#c9bda9}.message-body{padding:20px 2px;white-space:normal;line-height:1.7;color:#d4d0c9}.message-link{display:inline-block;margin-top:12px;color:#aa8a60;font-size:11px}
.forum-categories{display:grid;gap:10px;margin-top:14px}.forum-category{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:17px;background:#0c0d10;border:1px solid #292a30;text-decoration:none}.forum-category:hover{border-color:#574837;background:#111114}.forum-category h2,.forum-head h2{font-family:Georgia,serif;color:#e5d8bf;margin:0 0 4px}.forum-category p,.forum-head p{margin:0;color:#85868b}.forum-counts{text-align:right;color:#77787d;font-size:11px;min-width:82px}.forum-counts b{color:#c7b38e}.forum-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:14px}.forum-head>a,.forum-head div>a{color:#a78961;font-size:11px}.topic-list{padding:0}.topic-row{display:grid;grid-template-columns:1fr auto;gap:18px;padding:13px 14px;border-bottom:1px solid #26272d;text-decoration:none;align-items:center}.topic-row:hover{background:#ffffff05}.topic-row strong{display:block;color:#ddd4c4}.topic-row span{display:block;color:#74757a;font-size:11px;margin-top:3px}.topic-row>div:last-child{text-align:right;color:#77787d;font-size:11px}.topic-row>div:last-child b{display:block;color:#c6b38f;font-size:15px}.forum-posts{display:grid;gap:10px;margin-bottom:16px}.forum-post{display:grid;grid-template-columns:150px 1fr;border:1px solid #2c2d33;background:#101115}.forum-post>aside{padding:14px;background:#0c0d10;border-right:1px solid #28292f}.forum-post>aside strong{display:block;font-family:Georgia,serif;color:#e0d5c1}.forum-post>aside>span:not(.role-badge){display:block;color:#77787d;font-size:10px;margin-top:4px}.forum-post>div{padding:14px;min-width:0}.forum-post time{display:block;color:#6f7075;font-size:10px;border-bottom:1px solid #25262b;padding-bottom:8px;margin-bottom:12px}.post-body{line-height:1.7;overflow-wrap:anywhere}.forum-tools{display:flex;gap:6px}.forum-tools .btn{padding:6px 9px;font-size:11px}
@media(max-width:720px){.forum-category{grid-template-columns:1fr}.forum-counts{text-align:left}.forum-head{align-items:flex-start;flex-direction:column}.forum-post{grid-template-columns:1fr}.forum-post>aside{border-right:0;border-bottom:1px solid #28292f}.message-row{align-items:flex-start}.message-row time{white-space:nowrap}}

/* V6 Responsive Mobile UI */
.mobile-menu-btn,.mobile-hud,.mobile-nav,.mobile-nav-backdrop{display:none}

@media(max-width:720px){
  body{font-size:14px;padding-bottom:env(safe-area-inset-bottom)}
  body.mobile-nav-open{overflow:hidden}
  .topline{height:3px;position:sticky;top:0;z-index:1202}
  .brandbar{
    height:62px;padding:0 14px 0 58px;position:sticky;top:3px;z-index:1200;
    box-shadow:0 8px 22px rgba(0,0,0,.55)
  }
  .brand{font-size:23px;letter-spacing:2px;white-space:nowrap}
  .tagline{font-size:8px;letter-spacing:1.65px;margin-top:2px}
  .era{display:none}
  .mobile-menu-btn{
    display:flex;position:absolute;left:12px;top:12px;width:38px;height:38px;padding:9px 8px;
    flex-direction:column;justify-content:space-between;background:#111216;border:1px solid #3a3432;color:#d9ccb3;cursor:pointer
  }
  .mobile-menu-btn span{display:block;width:100%;height:2px;background:#cbb98f;transition:.18s ease}
  body.mobile-nav-open .mobile-menu-btn span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.mobile-nav-open .mobile-menu-btn span:nth-child(2){opacity:0}
  body.mobile-nav-open .mobile-menu-btn span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .mobile-hud{
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:sticky;top:65px;z-index:1190;
    background:#0c0d10;border-bottom:1px solid #292a30;box-shadow:0 5px 14px rgba(0,0,0,.35)
  }
  .mobile-hud div{min-width:0;text-align:center;padding:7px 3px;border-right:1px solid #24252a}
  .mobile-hud div:last-child{border-right:0}
  .mobile-hud span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.8px;color:#6f7075}
  .mobile-hud b{display:block;font-size:10px;color:#d8d2c8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
  .statusbar{display:none}
  .mobile-nav-backdrop{
    display:block;position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:1300;opacity:0;visibility:hidden;transition:.2s ease
  }
  .mobile-nav{
    display:block;position:fixed;z-index:1301;left:0;top:0;bottom:0;width:min(84vw,330px);
    background:linear-gradient(180deg,#151416,#0a0b0d 28%);border-right:1px solid #4a3e35;
    transform:translateX(-102%);transition:transform .22s ease;overflow-y:auto;overscroll-behavior:contain;
    padding-bottom:max(16px,env(safe-area-inset-bottom));box-shadow:14px 0 40px rgba(0,0,0,.55)
  }
  body.mobile-nav-open .mobile-nav{transform:translateX(0)}
  body.mobile-nav-open .mobile-nav-backdrop{opacity:1;visibility:visible}
  .mobile-nav-head{display:flex;justify-content:space-between;align-items:center;padding:18px 14px;border-bottom:1px solid #332d2a;background:#111114}
  .mobile-nav-head strong{font:900 20px Georgia,serif;letter-spacing:1.7px;color:#ded0b2}.mobile-nav-head strong span{color:#875052}
  .mobile-nav-head small{display:block;margin-top:3px;color:#818187;font-size:10px}
  .mobile-nav-head button{width:36px;height:36px;border:1px solid #3a3432;background:#17171a;color:#c7b993;font-size:25px;line-height:1;cursor:pointer}
  .mobile-nav-status{display:flex;justify-content:space-between;padding:8px 13px;border-bottom:1px solid #24252a;color:#85868b;font-size:10px;letter-spacing:.5px}
  .mobile-nav-status .live{color:#70a27f}
  .mobile-nav section{border-bottom:1px solid #222329}
  .mobile-nav h3{margin:0;padding:8px 13px;background:linear-gradient(180deg,#28231f,#171619);font-size:9px;letter-spacing:1.35px;color:#cbb98f;border-top:1px solid #3c332d}
  .mobile-nav a{display:flex;align-items:center;gap:8px;min-height:43px;padding:9px 14px;text-decoration:none;color:#c4c2bd;border-left:3px solid transparent}
  .mobile-nav a:active,.mobile-nav a:hover{background:#242127;color:#fff;border-left-color:var(--gold)}
  .mobile-nav a span{color:#866a48}
  .shell{display:block;min-height:calc(100vh - 100px)}
  .leftnav,.rightbar{display:none}
  .content{padding:12px 10px 24px;background:radial-gradient(circle at 85% 5%,rgba(103,66,53,.08),transparent 26%),repeating-linear-gradient(0deg,transparent,transparent 27px,rgba(255,255,255,.012) 28px)}
  .pagehead{align-items:flex-start;margin-bottom:12px;gap:8px}
  .pagehead h1,h1{font-size:24px;line-height:1.1}
  .eyebrow{font-size:8px;letter-spacing:1.4px}
  .online-dot{display:none}
  .card{margin-bottom:12px;box-shadow:0 6px 18px #0006}
  .card-title{padding:10px 11px}
  .card-body{padding:12px}
  .hero{display:block}
  .hero-panel{min-height:175px;padding:16px;margin-bottom:10px}
  .hero-panel h2{font-size:27px;margin:28px 0 8px}
  .hero-panel:after{font-size:22px;letter-spacing:4px;right:-10px}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .stat{padding:10px}.stat strong{font-size:18px}.stat span{font-size:8px}
  .crime-grid{grid-template-columns:1fr;gap:9px}
  .crime{padding:12px}.crime p{min-height:0}
  .btn{min-height:42px;padding:10px 13px;touch-action:manipulation}
  input,select,textarea,.admin-form input,.admin-form textarea,.account-search input,.role-form select{font-size:16px!important;max-width:100%}
  .admin-form textarea{min-height:120px}
  .activity{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .activity tbody{display:table;width:max-content;min-width:100%}
  .activity td{white-space:nowrap}
  .account-search{flex-direction:column}.account-search .btn{width:100%}
  .role-form{flex-wrap:wrap}.role-form select{flex:1;min-width:0}.role-form .btn{flex:0 0 auto}
  .account-table-wrap{margin:0 -12px;padding:0 12px;-webkit-overflow-scrolling:touch}
  .economy-chart{height:205px;margin:0 -4px}
  .comm-tabs{gap:5px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px;-webkit-overflow-scrolling:touch}
  .comm-tabs a{flex:0 0 auto;padding:8px 10px;white-space:nowrap}
  .forum-category{grid-template-columns:1fr;padding:13px;gap:9px}.forum-counts{text-align:left;min-width:0}
  .forum-head{align-items:flex-start;flex-direction:column;gap:8px}
  .topic-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:11px 10px}
  .topic-row strong{overflow-wrap:anywhere}
  .forum-post{grid-template-columns:1fr}.forum-post>aside{border-right:0;border-bottom:1px solid #28292f;padding:10px 12px}.forum-post>div{padding:12px}
  .forum-post>aside .role-badge{margin:4px 0 0}
  .message-row{align-items:flex-start;padding:11px 10px;gap:8px}.message-row time{white-space:nowrap;font-size:9px}
  .message-body{padding:14px 0}
  .poll-result>div:first-child{gap:6px}.poll-options label{padding:12px 10px;min-height:44px}
  .auth-wrap{margin:4vh 12px;max-width:none}.auth-card{padding:20px}.auth-card input{min-height:44px;font-size:16px}
}

@media(max-width:390px){
  .brand{font-size:20px}.tagline{letter-spacing:1px}
  .mobile-hud b{font-size:9px}
  .pagehead h1,h1{font-size:22px}
  .stats-grid{grid-template-columns:1fr 1fr}
}

/* V8 FAQ / Game Guide */
.guide-hero h2{margin:5px 0 8px;font-size:28px}.guide-hero p,.guide-copy{color:#96969a;line-height:1.65}.guide-current{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.guide-current>div{padding:14px;border:1px solid #29292d;background:#111114}.guide-current span,.guide-current small{display:block;color:#76767c;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.guide-current strong{display:block;margin:5px 0;color:#ddd;font-size:20px}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guide-table-wrap{overflow-x:auto}.guide-table{width:100%;border-collapse:collapse}.guide-table th,.guide-table td{padding:11px 10px;border-bottom:1px solid #29292d;text-align:left}.guide-table th{color:#74747a;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.guide-table td:last-child,.guide-table th:last-child{text-align:right}.guide-table tr.is-current{background:rgba(135,55,42,.12)}.you-are-here{display:inline-block;margin-left:7px;padding:2px 5px;border:1px solid #7d3f31;color:#d89b83;font-size:8px;letter-spacing:.08em;vertical-align:middle}.faq-list details{border-bottom:1px solid #29292d;padding:2px 0}.faq-list summary{cursor:pointer;padding:14px 2px;color:#c7c7ca;font-weight:700}.faq-list details p{margin:0 0 15px;color:#96969a;line-height:1.65}
.character-rank{margin-top:2px;text-align:center}.character-rank>span{display:block;color:#aab4c0;font-size:13px;line-height:1.3}.character-rank small,.character-account>small{display:block;margin-top:3px;color:#66707a;font-size:8px;letter-spacing:.16em;text-transform:uppercase}.character-account{margin:10px 0 12px;text-align:center}.character-account .role-badge{display:inline-block;width:auto;margin:0 auto}.character-account>small{margin-top:5px}
@media(max-width:720px){.guide-current,.guide-grid{grid-template-columns:1fr}.guide-hero h2{font-size:23px}.guide-table th,.guide-table td{padding:10px 8px}}

/* V11 Admin Player Editor */
.admin-note{margin:10px 0 0}.admin-player-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:18px}.admin-player-summary>div{padding:12px;border:1px solid #292a30;background:#0c0d10}.admin-player-summary span{display:block;color:#74757a;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.admin-player-summary strong{display:block;margin-top:5px;color:#ded6c8}.player-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.player-edit-form label{margin:0}.player-edit-form select{width:100%;padding:10px;background:#090a0c;border:1px solid #33333a;color:#eee5d7;outline:none;font:inherit}.player-edit-form select:focus{border-color:#665036}.player-edit-form label small{display:block;margin-top:4px;color:#77787d;font-size:9px;line-height:1.4}.admin-check{display:flex!important;align-items:center;gap:9px;margin-top:16px!important;padding:11px;border:1px solid #2d2e34;background:#0d0e11;cursor:pointer}.admin-check input{width:auto!important;margin:0}.admin-danger-note{margin-top:14px;padding:10px;border:1px solid #5d4035;background:#19110f;color:#c9aa9b;font-size:10px}.player-admin-table .btn{display:inline-block;padding:7px 10px;min-height:0;text-decoration:none}.audit-table small{color:#a09b92}
@media(max-width:1000px){.player-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-player-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.player-edit-grid,.admin-player-summary{grid-template-columns:1fr}.player-admin-table{min-width:820px}}


/* V14.1 Forum one-page layout. Keeps original Italia Nera forum styling. */
.forum-onepage{display:grid;grid-template-columns:minmax(300px,36%) minmax(0,1fr);gap:12px;align-items:start}.forum-onepage-left,.forum-onepage-thread{min-width:0}.forum-reply-card,.forum-topic-card{margin-bottom:12px}.forum-reply-card .card-body{padding:10px}.forum-reply-card textarea{min-height:120px}.forum-reply-card .btn{margin-top:8px}.forum-topic-card .card-body{max-height:760px;overflow:auto}.topic-row.active-topic{background:#1a1614;border-left:3px solid #8b5a3c;padding-left:11px}.forum-onepage-thread .forum-posts{margin-bottom:0}
@media(max-width:900px){.forum-onepage{grid-template-columns:1fr}.forum-onepage-thread{order:1}.forum-onepage-left{order:2}.forum-topic-card .card-body{max-height:none}}

/* V14.8 rank-gated crime progression */
.crime.crime-locked{
    opacity:.62;
}
.crime.crime-locked h3{
    color:#8c939b;
}
.crime-rank-lock{
    margin-top:8px;
    color:#c9a36a;
    font-weight:700;
    letter-spacing:.03em;
}
.crime.crime-locked .crime-action-btn{
    cursor:not-allowed;
}


/* V14.9.1 concealed locked-crime rewards */
.crime.crime-locked{
    position:relative;
    opacity:1;
    background:#090a0c;
    border-color:#25262a;
    filter:grayscale(.9);
    overflow:hidden;
}
.crime.crime-locked::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(12,13,15,.42);
    pointer-events:none;
    z-index:0;
}
.crime.crime-locked > *{
    position:relative;
    z-index:1;
}
.crime.crime-locked h3{
    color:#74777c;
}
.crime.crime-locked p{
    color:#595d63;
}
.crime-secret-details.is-obscured{
    position:relative;
    overflow:hidden;
    min-height:44px;
    user-select:none;
    pointer-events:none;
}
.crime-secret-details.is-obscured .meta{
    filter:blur(6px);
    opacity:.22;
}
.crime-secret-details.is-obscured::after{
    content:'DETAILS LOCKED';
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(10,11,13,.34);
    color:#85898e;
    font-size:9px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.crime-rank-lock{
    margin-top:9px;
    color:#b99a64;
    font-weight:700;
    letter-spacing:.03em;
}
.crime.crime-locked .crime-action-btn{
    opacity:.5;
    filter:grayscale(1);
    cursor:not-allowed;
}


/* V15 Global draggable inventory */
.inventory-toggle{position:fixed;right:18px;bottom:18px;z-index:1180;display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border:1px solid #5d4933;background:linear-gradient(#312619,#1b1610);color:#e9dcc9;font:inherit;font-size:11px;letter-spacing:.04em;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.38)}
.inventory-toggle:hover{border-color:#8a6845}.inventory-toggle-mark{color:#c89a5b;font-size:15px}.inventory-toggle b{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border:1px solid #694536;background:#211412;color:#e0b29f;font-size:9px}
.inventory-panel{position:fixed;z-index:1200;top:150px;right:24px;width:min(390px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 48px));display:none;flex-direction:column;border:1px solid #4a4138;background:#0c0d10;color:#c6c3bd;box-shadow:0 18px 60px rgba(0,0,0,.65)}
.inventory-panel.is-open{display:flex}.inventory-window-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:9px 10px 9px 13px;border-bottom:1px solid #4a4138;background:linear-gradient(90deg,#241d17,#151416);cursor:move;user-select:none;touch-action:none}.inventory-window-head strong{display:block;color:#efd9b5;font-family:Georgia,serif;font-size:14px;letter-spacing:.08em}.inventory-window-head small{display:block;margin-top:2px;color:#77787d;font-size:8px;letter-spacing:.08em}.inventory-close{width:31px;height:31px;border:1px solid #4b4640;background:#111216;color:#b7b2aa;font-size:20px;line-height:1;cursor:pointer}.inventory-close:hover{color:#fff;border-color:#756451}
.inventory-filters{display:flex;gap:4px;padding:8px;border-bottom:1px solid #27282c;overflow-x:auto;background:#101114}.inventory-filters button{flex:0 0 auto;padding:6px 8px;border:1px solid #2f3035;background:#0b0c0f;color:#85878d;font:inherit;font-size:8px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.inventory-filters button.active{border-color:#76543a;background:#241a13;color:#e6cda9}
.inventory-window-body{min-height:140px;overflow:auto;padding:8px}.inventory-list{display:grid;gap:7px}.inventory-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;padding:9px;border:1px solid #26282d;background:#0f1013}.inventory-item[hidden]{display:none}.inventory-item-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #3b3d43;background:#15161a;color:#bda273;font-family:Georgia,serif;font-size:18px}.inventory-item-info{min-width:0}.inventory-item-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.inventory-item-title strong{color:#ded4c3;font-family:Georgia,serif;font-size:13px}.inventory-item-title span{color:#d0ad75;font-weight:700;font-size:11px}.inventory-item-info small{display:block;margin-top:2px;color:#6f7178;font-size:8px;letter-spacing:.06em;text-transform:uppercase}.inventory-item-info p{margin:6px 0 0;color:#94969c;font-size:10px;line-height:1.45}.inventory-item.rarity-uncommon{border-left-color:#6f7d62}.inventory-item.rarity-rare{border-left-color:#69788b}.inventory-item.rarity-epic{border-left-color:#795e7f}.inventory-item.rarity-legendary{border-left-color:#9a7444}.inventory-empty{padding:32px 12px;text-align:center}.inventory-empty span{color:#6f7177;font-size:10px;letter-spacing:.18em}.inventory-empty p{margin:8px 0 0;color:#898b91;font-size:11px}.inventory-window-foot{display:flex;justify-content:space-between;gap:12px;padding:7px 10px;border-top:1px solid #27282c;color:#62646a;background:#0a0b0d;font-size:8px;letter-spacing:.06em;text-transform:uppercase}
.admin-inventory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-inventory-grid select,.admin-inventory-grid input{width:100%;padding:10px;background:#090a0c;border:1px solid #33333a;color:#eee5d7;font:inherit}.inventory-admin-current{display:grid;gap:7px;margin-top:12px}.inventory-admin-current>div{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid #282a2f;background:#0c0d10}
@media(max-width:720px){.inventory-toggle{right:10px;bottom:10px}.inventory-panel{left:8px!important;right:8px!important;top:auto!important;bottom:8px;width:auto;max-height:72vh}.inventory-window-head{cursor:default;touch-action:auto}.inventory-window-foot span:first-child{display:none}.inventory-filters{padding:7px}.inventory-item{grid-template-columns:38px minmax(0,1fr)}.inventory-item-icon{width:38px;height:38px}.admin-inventory-grid{grid-template-columns:1fr}}

/* V15.1 inventory actions + player editor inventory */
.inventory-use-form{margin-top:8px}.inventory-use-btn{padding:6px 10px;font-size:9px}.player-editor-inventory{display:grid;gap:10px}.player-editor-inventory-row{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid #2b2d31;background:#0d0e11}.player-editor-inventory-row strong{display:block;color:#e2d6c5}.player-editor-inventory-row small{color:#777a80}.player-editor-inventory-row input{width:100%;padding:8px;background:#090a0c;border:1px solid #33353a;color:#eee5d7}.player-editor-add-item{display:grid;grid-template-columns:minmax(0,2fr) 120px auto;gap:8px;align-items:end;margin-top:12px}.player-editor-add-item select,.player-editor-add-item input{width:100%;padding:9px;background:#090a0c;border:1px solid #33353a;color:#eee5d7}.inventory-zero-note{color:#73767b;font-size:9px}.item-effect-note{margin-top:4px;color:#b8925b!important}.inventory-item[data-slug="doppio-espresso"] .inventory-item-icon:before{content:"☕"}.inventory-item[data-slug="doppio-espresso"] .inventory-item-icon{font-size:0}.inventory-item[data-slug="doppio-espresso"] .inventory-item-icon:before{font-size:19px}
@media(max-width:720px){.player-editor-inventory-row{grid-template-columns:1fr 88px}.player-editor-inventory-row .btn{grid-column:1/-1}.player-editor-add-item{grid-template-columns:1fr}.inventory-use-btn{min-height:36px}}

/* V15.2 scalable admin player search */
.admin-player-picker{position:relative;min-width:0}.admin-player-picker>input[type="search"]{width:100%;padding:10px;background:#090a0c;border:1px solid #33333a;color:#eee5d7;font:inherit}.admin-player-search-results{position:absolute;z-index:80;left:0;right:0;top:calc(100% - 1px);max-height:280px;overflow:auto;border:1px solid #3a3a40;background:#0b0c0f;box-shadow:0 10px 24px rgba(0,0,0,.45)}.admin-player-search-result{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:0;border-bottom:1px solid #24262b;background:#0b0c0f;color:#eee5d7;text-align:left;cursor:pointer;font:inherit}.admin-player-search-result:hover,.admin-player-search-result:focus{background:#1c1815;outline:1px solid #8b6840;outline-offset:-1px}.admin-player-search-result small{color:#858c98;font-size:11px}.admin-player-search-state{padding:10px 12px;color:#858c98}.admin-player-selected{display:block;margin-top:5px;color:#858c98}.admin-inventory-view-search{align-items:flex-start}.admin-inventory-view-search>.admin-player-picker{flex:1}.admin-inventory-view-search .btn{flex:0 0 auto}
@media(max-width:720px){.admin-inventory-view-search{flex-direction:column}.admin-inventory-view-search>.admin-player-picker,.admin-inventory-view-search .btn{width:100%}.admin-player-search-results{max-height:220px}}


/* V15.5 rail timetable */
.rail-intro{color:#9da39d;margin-top:0}.rail-board{border:1px solid #2b2e31}.rail-row{display:grid;grid-template-columns:1.25fr 2fr .8fr .65fr 1fr;gap:14px;align-items:center;padding:14px;border-bottom:1px solid #292c2f;margin:0}.rail-row:last-child{border-bottom:0}.rail-head{background:#19191a;color:#b79a68;text-transform:uppercase;font-size:11px;letter-spacing:.08em}.rail-row>span{min-width:0}.rail-row small{display:block;color:#7f8992;margin-top:4px}.rail-times{display:flex;gap:6px;flex-wrap:wrap}.rail-times em{font-style:normal;border:1px solid #34373a;background:#0d0f10;padding:5px 7px;color:#d8c49b}.rail-row .btn{width:100%}@media(max-width:760px){.rail-head{display:none}.rail-row{grid-template-columns:1fr 1fr;gap:10px}.rail-row>span:nth-of-type(1),.rail-row>span:nth-of-type(2),.rail-row>span:nth-of-type(5){grid-column:1/-1}.rail-row>span:nth-of-type(3)::before{content:'Lock: ';color:#7f8992}.rail-row>span:nth-of-type(4)::before{content:'Fare: ';color:#7f8992}}


/* V15.6 scheduled rail journey */
.rail-journey-card{border-color:#70513b}
.rail-ticket-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#2b2926;border:1px solid #34312d;margin-bottom:12px}
.rail-ticket-grid>div{background:#171819;padding:12px;min-width:0}
.rail-ticket-grid small{display:block;color:#7f8589;font-size:9px;letter-spacing:.12em;margin-bottom:5px}
.rail-ticket-grid b{display:block;color:#d8d1c6;font-size:14px}
@media(max-width:720px){.rail-ticket-grid{grid-template-columns:1fr 1fr}.rail-row.rail-head{display:none}.rail-row{grid-template-columns:1fr!important;gap:8px}.rail-row>span{min-width:0}.rail-times{display:flex;flex-wrap:wrap;gap:5px}}


/* V16.0 Transport Hub */
.transport-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.transport-choice{display:flex;flex-direction:column;min-height:245px;padding:20px;border:1px solid #3a3939;background:linear-gradient(180deg,#191919,#101113);text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}
.transport-choice:hover{border-color:#86653e;transform:translateY(-1px)}
.transport-choice h2{margin:7px 0 8px;color:#f1dfbd;font-family:Georgia,serif}
.transport-choice p{color:#a8b0bd;line-height:1.55;flex:1}
.transport-choice-kicker{font-size:11px;letter-spacing:.18em;color:#b7894e}
.transport-choice-status{display:inline-block;margin:10px 0 12px;color:#77b68a;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.transport-choice strong{color:#e8cf9e}
.transport-choice-locked{opacity:.72}
.transport-choice-locked .transport-choice-status{color:#b98575}
.transport-locked-panel .card-body{padding:28px}
.transport-lock-symbol{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border:1px solid #75593b;background:#171717;color:#d4b780;font-family:Georgia,serif;font-weight:bold;letter-spacing:.08em;margin-bottom:18px}
.transport-locked-panel h2{margin:0 0 10px;color:#edd8b3}
@media(max-width:850px){.transport-choice-grid{grid-template-columns:1fr}.transport-choice{min-height:0}}

/* V16.1 Garage Ownership */
.garage-purchase-box{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;margin:18px 0;border:1px solid #4a4033;background:#151515}
.garage-purchase-box>div{display:flex;flex-direction:column;gap:4px}
.garage-purchase-box small{color:#b7894e;letter-spacing:.12em}
.garage-purchase-box strong{font-family:Georgia,serif;font-size:24px;color:#f1dfbd}
.garage-purchase-box span{color:#9da5b1;font-size:12px}
.transport-requirements{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.transport-requirements span{padding:8px 10px;border:1px solid #3c3c3c;background:#151515;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.requirement-complete{color:#7eb48c}
.requirement-missing{color:#c58c80}
@media(max-width:650px){.garage-purchase-box{align-items:flex-start;flex-direction:column}.garage-purchase-box form,.garage-purchase-box .btn{width:100%}}

/* V16.2 Garage tiers */
.garage-current-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 20px}
.garage-current-summary span,.garage-tier-stats span{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #373737;background:#141414}
.garage-current-summary small,.garage-tier-stats small{font-size:10px;letter-spacing:.11em;color:#9aa2ae}
.garage-current-summary strong,.garage-tier-stats strong{color:#e8d2aa}
.garage-tier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.garage-tier-card{display:flex;flex-direction:column;padding:17px;border:1px solid #3b3935;background:#121315}
.garage-tier-card h3{margin:8px 0;color:#efd9b1;font-family:Georgia,serif}
.garage-tier-card p{flex:1;color:#a6adb8;line-height:1.45}
.garage-tier-head{display:flex;justify-content:space-between;gap:10px;font-size:10px;letter-spacing:.13em;color:#ae8352}
.garage-tier-head b{color:#7fb28b}
.garage-tier-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 13px}
.garage-tier-card form,.garage-tier-card .btn{width:100%}
.garage-tier-owned{border-color:#7a6749}
.garage-tier-passed{opacity:.58}
.garage-owned-label{display:block;padding:10px;text-align:center;border:1px solid #343434;color:#8f98a4;font-size:12px}
@media(max-width:760px){.garage-tier-grid{grid-template-columns:1fr}.garage-current-summary{grid-template-columns:1fr}.garage-tier-stats{grid-template-columns:1fr 1fr}}

/* V16.3 Sequential garage upgrades */
.garage-progression{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.garage-progression-panel{display:flex;flex-direction:column;min-width:0;padding:20px;border:1px solid #3b3935;background:#121315}
.garage-progression-panel h2{margin:8px 0 10px;color:#efd9b1;font-family:Georgia,serif}
.garage-panel-kicker{font-size:10px;letter-spacing:.14em;color:#ae8352}
.garage-panel-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.garage-panel-stats span{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #373737;background:#141414}
.garage-panel-stats small{font-size:10px;letter-spacing:.11em;color:#9aa2ae}
.garage-panel-stats strong{color:#e8d2aa}
.garage-current-panel{border-color:#4c4740}
.garage-next-panel{border-color:#725c3d}
.garage-sequential-note{padding:10px 12px;border-left:2px solid #745b39;background:#161616;color:#aeb4bd;font-size:12px;line-height:1.45}
.garage-next-panel form,.garage-next-panel .btn{width:100%}
@media(max-width:760px){.garage-progression{grid-template-columns:1fr}.garage-panel-stats{grid-template-columns:1fr 1fr}}

/* V16.4 Heat risk */
.heat-risk-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}
.heat-risk-summary span{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #3b3935;background:#141414}
.heat-risk-summary small{font-size:10px;letter-spacing:.1em;color:#9ba3ad}
.heat-risk-summary strong{color:#e6c99b}
@media(max-width:760px){.heat-risk-summary{grid-template-columns:1fr 1fr}}

/* V16.7 Carcere */
.crime-arrest-meta{margin-top:5px}
.crime-arrest-meta strong{color:#d3a16d}
.crime-arrest-meta small{display:block;margin-top:2px;color:#7f8790}
.carcere-card h2{font-family:Georgia,serif;color:#ead6b4}
.carcere-bars{display:flex;gap:13px;height:74px;align-items:stretch;margin:6px 0 18px;padding:0 15px;border-top:5px solid #3b3b3b;border-bottom:5px solid #3b3b3b;background:#111}
.carcere-bars span{width:8px;background:#575757;box-shadow:inset 1px 0 #727272}
.carcere-bars-open span:nth-child(3){transform:rotate(12deg);transform-origin:bottom}
.carcere-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0}
.carcere-status-grid span{display:flex;flex-direction:column;gap:4px;padding:13px;border:1px solid #3a3936;background:#141414}
.carcere-status-grid small{font-size:10px;letter-spacing:.1em;color:#969ea8}
.carcere-status-grid strong{color:#e3c79c}
.carcere-note{padding:12px;border-left:2px solid #745b39;background:#151515;color:#aeb4bd}
@media(max-width:700px){.carcere-status-grid{grid-template-columns:1fr}}

/* V16.8.1 restore compact Character account badge */
.character-account{text-align:center}
.character-account .role-badge{
  display:inline-block;
  width:auto;
  max-width:100%;
  padding:4px 7px;
  line-height:1.1;
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}

/* V16.9 Online Players + National Carcere */
.online-title-row,.carcere-population-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.online-title-row strong,.carcere-population-title strong{font-size:10px;letter-spacing:.08em;color:#8fb79c}
.player-presence-list,.carcere-population-list{display:flex;flex-direction:column;border:1px solid #292a30;background:#0d0e10}
.presence-row,.carcere-prisoner-row{display:grid;grid-template-columns:14px minmax(150px,1.3fr) minmax(105px,.8fr) minmax(125px,.8fr);gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #25262b}
.presence-row:last-child,.carcere-prisoner-row:last-child{border-bottom:0}
.presence-dot{width:7px;height:7px;border-radius:50%;background:#62a778;box-shadow:0 0 7px rgba(98,167,120,.5)}
.presence-player{min-width:0}.presence-player strong{display:block;color:#e3d7c4;font-family:Georgia,serif;overflow-wrap:anywhere}.presence-player span{display:block;margin-top:3px;color:#777f89;font-size:10px;letter-spacing:.04em}
.presence-role{text-align:left}.presence-role .role-badge{margin:0}
.presence-location,.carcere-origin,.carcere-release{text-align:right}.presence-location b,.carcere-origin b,.carcere-release b{display:block;color:#b7bcc3;font-size:11px}.presence-location small,.carcere-origin small,.carcere-release small{display:block;margin-top:3px;color:#666e78;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.presence-jailed{color:#d39a86!important}
.presence-empty{padding:18px;color:#747b84;text-align:center}
.carcere-prisoner-row{grid-template-columns:24px minmax(140px,1.2fr) minmax(105px,.8fr) minmax(105px,.75fr) minmax(90px,.65fr)}
.carcere-prisoner-icon{color:#7f858c;font-size:18px;text-align:center}
.carcere-release b{color:#d8b47d}
@media(max-width:720px){
  .presence-row{grid-template-columns:14px 1fr auto;gap:8px}
  .presence-row .presence-role{display:none}
  .presence-location{grid-column:2/4;text-align:left;padding-top:4px}
  .carcere-prisoner-row{grid-template-columns:24px 1fr auto;gap:8px}
  .carcere-prisoner-row .presence-role,.carcere-origin{display:none}
  .carcere-release{grid-column:2/4;text-align:left}
}

/* V16.9.1 compact Online Players list for large populations */
.online-players-card .card-body{padding:12px}
.online-players-card .card-body>p{margin:0 0 9px;font-size:10px}
.online-players-card .presence-row{
  grid-template-columns:10px minmax(120px,1.25fr) minmax(95px,.7fr) minmax(105px,.7fr);
  gap:8px;
  padding:6px 9px;
  min-height:34px;
}
.online-players-card .presence-dot{width:6px;height:6px}
.online-players-card .presence-player strong{font-size:11px;line-height:1.15}
.online-players-card .presence-player span{margin-top:1px;font-size:8px;line-height:1.1}
.online-players-card .presence-role .role-badge{
  padding:3px 5px;
  font-size:8px;
  letter-spacing:.04em;
}
.online-players-card .presence-location b{font-size:9px;line-height:1.1}
.online-players-card .presence-location small{margin-top:1px;font-size:7px}
.online-players-card .presence-empty{padding:12px;font-size:10px}
@media(max-width:720px){
  .online-players-card .presence-row{grid-template-columns:10px 1fr auto;padding:7px 8px}
  .online-players-card .presence-location{padding-top:1px}
}

/* V16.9.2 Online Players family association */
.online-players-card .presence-family{text-align:left;min-width:0}
.online-players-card .presence-family b{display:block;color:#b8aa92;font-size:9px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.online-players-card .presence-family small{display:block;margin-top:1px;color:#666e78;font-size:7px;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:720px){
  .online-players-card .presence-family{display:block}
}

/* V16.9.3 Online privacy: no current location */
.online-players-card .presence-row{
  grid-template-columns:10px minmax(150px,1.5fr) minmax(120px,1fr);
}
@media(max-width:720px){
  .online-players-card .presence-row{
    grid-template-columns:10px minmax(0,1fr) minmax(90px,.7fr);
  }
}

/* V16.9.4 classic compact Online Players board */
.classic-online-card{overflow:hidden}
.classic-online-heading{
  padding:7px 10px;
  text-align:center;
  border-bottom:1px solid #34353a;
  background:#17181b;
  color:#d8d0c3;
  font-size:11px;
  letter-spacing:.04em;
}
.classic-online-body{
  padding:10px 12px;
  background:#101114;
}
.classic-online-list{
  font-size:10px;
  line-height:1.75;
  text-align:left;
  overflow-wrap:anywhere;
}
.classic-online-player{
  display:inline;
  white-space:normal;
}
.classic-online-player strong{
  color:#ddd4c5;
  font-size:10px;
  font-weight:600;
}
.classic-online-player small{
  margin-left:3px;
  color:#756f65;
  font-size:8px;
}
.classic-online-player small::before{content:"["}
.classic-online-player small::after{content:"]"}
.classic-online-separator{
  color:#4d4f55;
  padding:0 2px;
}
.classic-online-total{
  padding:6px 10px;
  border-top:1px solid #34353a;
  background:#17181b;
  text-align:center;
  color:#aaa49a;
  font-size:10px;
  letter-spacing:.04em;
}
.classic-online-total strong{color:#e0d5c1}
.classic-online-empty{display:block;text-align:center;color:#747b84}
@media(max-width:720px){
  .classic-online-body{padding:9px 10px}
  .classic-online-list{font-size:9px;line-height:1.7}
  .classic-online-player strong{font-size:9px}
  .classic-online-player small{font-size:7px}
}

/* V16.9.5 refine compact Online board to match Italia Nera styling */
.classic-online-card{
  border:1px solid #292a30;
  background:#101115;
  box-shadow:none;
}
.classic-online-heading{
  padding:8px 11px;
  text-align:left;
  border-bottom:1px solid #292a30;
  background:#121317;
  color:#c9bda9;
  font-size:10px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.classic-online-body{
  padding:12px 14px;
  background:#101115;
}
.classic-online-list{
  font-size:10px;
  line-height:1.8;
}
.classic-online-player strong{
  color:#ded3c0;
  font-family:inherit;
  font-size:10px;
  font-weight:600;
}
.classic-online-player small{
  margin-left:3px;
  color:#6f756f;
  font-size:8px;
}
.classic-online-separator{
  color:#3f4147;
  padding:0 3px;
}
.classic-online-total{
  padding:7px 11px;
  border-top:1px solid #292a30;
  background:#0d0e11;
  text-align:right;
  color:#73767d;
  font-size:9px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.classic-online-total strong{
  color:#cdbda2;
  font-size:10px;
}
.classic-online-empty{
  color:#747980;
  text-align:left;
}
@media(max-width:720px){
  .classic-online-heading{padding:8px 10px}
  .classic-online-body{padding:10px}
  .classic-online-list{font-size:9px;line-height:1.75}
  .classic-online-total{text-align:left}
}

/* V16.9.6 larger player names on Online Players list */
.classic-online-player strong{font-size:12px}
.classic-online-player small{font-size:9px}
.classic-online-list{line-height:1.8}
@media(max-width:720px){
  .classic-online-player strong{font-size:11px}
  .classic-online-player small{font-size:8px}
}

/* V16.9.7 Online player account-type name colours */
.classic-online-player strong.online-name-staff_admin{color:#e0b5a4}
.classic-online-player strong.online-name-staff_moderator{color:#d9c497}
.classic-online-player strong.online-name-staff_support{color:#9fc4cc}
.classic-online-player strong.online-name-player_guide{color:#9bc0a3}
.classic-online-player strong.online-name-test_account{color:#b6acd3}
.classic-online-player strong.online-name-standard_account{color:#ddd4c5}

.online-role-index{
  display:flex;
  flex-wrap:wrap;
  gap:6px 14px;
  padding:8px 11px;
  border-top:1px solid #292a30;
  background:#0b0c0f;
  color:#70747b;
  font-size:8px;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.online-role-index span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  white-space:nowrap;
}
.online-role-swatch{
  display:inline-block;
  width:7px;
  height:7px;
  border:1px solid currentColor;
  background:currentColor;
  opacity:.9;
}
.online-role-swatch.online-name-staff_admin{color:#e0b5a4}
.online-role-swatch.online-name-staff_moderator{color:#d9c497}
.online-role-swatch.online-name-staff_support{color:#9fc4cc}
.online-role-swatch.online-name-player_guide{color:#9bc0a3}
.online-role-swatch.online-name-test_account{color:#b6acd3}
.online-role-swatch.online-name-standard_account{color:#999a9f}
@media(max-width:720px){
  .online-role-index{gap:5px 10px;padding:8px 10px;font-size:7px}
}

/* V16.9.9 right-sidebar message notification */
.message-alert-card .side-title{margin-bottom:0}
.message-alert-link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 11px;
  color:inherit;
  text-decoration:none;
}
.message-alert-link:hover{background:#141519}
.message-alert-icon{
  display:flex;
  width:29px;
  height:25px;
  flex:0 0 29px;
  align-items:center;
  justify-content:center;
  border:1px solid #34363c;
  background:#111216;
  color:#656970;
  font-size:14px;
}
.message-alert-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:2px;
}
.message-alert-copy strong{
  color:#7d8086;
  font-size:9px;
  letter-spacing:.06em;
}
.message-alert-copy small{
  color:#5f6268;
  font-size:8px;
}
.message-alert-card.has-unread{
  border-color:#4d3934;
}
.message-alert-card.has-unread .message-alert-icon{
  border-color:#744b41;
  background:#211513;
  color:#dda28f;
  box-shadow:0 0 9px rgba(151,67,49,.12);
}
.message-alert-card.has-unread .message-alert-copy strong{
  color:#dda28f;
}
.message-alert-card.has-unread .message-alert-copy small{
  color:#928078;
}

/* V16.9.10 compact mobile Messages notification */
.mobile-message-alert{
  display:none;
}
@media(max-width:720px){
  .mobile-message-alert{
    display:flex;
    align-items:center;
    gap:9px;
    min-height:42px;
    padding:7px 11px;
    border-top:1px solid #23252a;
    border-bottom:1px solid #292b30;
    background:#0f1013;
    color:inherit;
    text-decoration:none;
  }
  .mobile-message-alert:active{
    background:#15161a;
  }
  .mobile-message-icon{
    display:flex;
    width:27px;
    height:23px;
    flex:0 0 27px;
    align-items:center;
    justify-content:center;
    border:1px solid #35373d;
    background:#121317;
    color:#696d74;
    font-size:13px;
  }
  .mobile-message-copy{
    display:flex;
    min-width:0;
    flex:1;
    flex-direction:column;
    gap:1px;
  }
  .mobile-message-copy strong{
    color:#85888e;
    font-size:9px;
    line-height:1.2;
    letter-spacing:.065em;
  }
  .mobile-message-copy small{
    color:#60636a;
    font-size:8px;
    line-height:1.2;
  }
  .mobile-message-chevron{
    color:#555960;
    font-size:17px;
  }
  .mobile-message-alert.has-unread{
    border-top-color:#4b3732;
    border-bottom-color:#4b3732;
    background:#15110f;
  }
  .mobile-message-alert.has-unread .mobile-message-icon{
    border-color:#744b41;
    background:#211513;
    color:#dda28f;
    box-shadow:0 0 8px rgba(151,67,49,.13);
  }
  .mobile-message-alert.has-unread .mobile-message-copy strong{
    color:#dda28f;
  }
  .mobile-message-alert.has-unread .mobile-message-copy small{
    color:#9a8179;
  }
  .mobile-message-alert.has-unread .mobile-message-chevron{
    color:#a16f61;
  }
}

/* V16.11 limited Don / Capo dei Capi leadership offices */
.leadership-national{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;align-items:center}
.leadership-national h2{margin:4px 0 7px;color:#d2c2a8;font-size:25px}
.leadership-national p{margin:0;color:#8a8d92;max-width:680px}
.leadership-holder{padding:14px;border:1px solid #36383e;background:#111216;text-align:center}
.leadership-holder small,.city-don-holder small{display:block;color:#686c73;font-size:8px;letter-spacing:.1em;margin-bottom:4px}
.leadership-holder strong{display:block;color:#d2c2a8;font-size:17px;margin-bottom:10px}
.leadership-holder.vacant{border-color:#574139;background:#171210}
.leadership-holder.vacant strong{color:#dda28f}
.city-leadership-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.city-leadership-card{padding:13px;border:1px solid #2d2f34;background:#111216}
.city-leadership-card.is-vacant{border-color:#4d3934;background:#15110f}
.city-leadership-card.is-yours{border-color:#665b43;background:#17160f}
.city-leadership-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #282a2f}
.city-leadership-head small{display:block;color:#696d73;font-size:8px;text-transform:uppercase;letter-spacing:.08em}
.city-leadership-head h3{margin:2px 0 0;color:#d6c8b3;font-size:17px}
.city-leadership-head>span{color:#777b82;font-size:8px;letter-spacing:.08em}
.city-leadership-card.is-vacant .city-leadership-head>span{color:#cf8f7c}
.city-don-holder{padding:13px 0}
.city-don-holder strong{color:#c7c0b5;font-size:13px}
.city-leadership-card.is-vacant .city-don-holder strong{color:#9b7c72}
.leadership-locked,.leadership-yours{display:block;margin-top:7px;color:#73777e;font-size:9px;line-height:1.45}
.leadership-yours{color:#c5aa72;font-weight:700;letter-spacing:.05em}
.leadership-rules p{color:#96999e}.leadership-rules p:last-child{margin-bottom:0}
@media(max-width:950px){.city-leadership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .leadership-national{grid-template-columns:1fr;gap:12px}
  .city-leadership-grid{grid-template-columns:1fr}
  .leadership-national h2{font-size:21px}
}
/* V16.12.3 unavailable feature navigation */
.leftnav .nav-unavailable{display:block;padding:6px 12px;color:#66676c;font-size:12px;border-left:2px solid transparent;text-decoration:line-through;text-decoration-thickness:1px;cursor:not-allowed;user-select:none;opacity:.72}
@media(max-width:720px){
  .mobile-nav .nav-unavailable{display:flex;align-items:center;gap:8px;min-height:43px;padding:9px 14px;color:#66676c;border-left:3px solid transparent;text-decoration:line-through;text-decoration-thickness:1px;cursor:not-allowed;user-select:none;opacity:.72}
  .mobile-nav .nav-unavailable span{color:#55575c}
}

/* V16.13 private aviation */
.aviation-hangar-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.aviation-hangar-panel{border:1px solid #303238;background:#111216;padding:16px}.aviation-hangar-panel>small,.aviation-flight-live-grid small,.aviation-aircraft-stats small,.aviation-market-stats small,.aviation-route-row small{display:block;color:#6d7178;font-size:8px;letter-spacing:.09em;text-transform:uppercase}.aviation-hangar-panel h2{margin:5px 0 8px;color:#d3c5ae;font-size:21px}.aviation-hangar-next{border-color:#44372f;background:#15120f}.aviation-stat-row{display:flex;justify-content:space-between;gap:18px;padding:8px 0;border-top:1px solid #292b30;font-size:11px}.aviation-stat-row span{color:#777b82}.aviation-stat-row strong{color:#c9c1b6}.aviation-hangar-panel form{margin-top:13px}.aviation-flight-live{border-color:#4d4733}.aviation-flight-live-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.aviation-flight-live-grid>div{padding:10px;border:1px solid #2e3035;background:#111216}.aviation-flight-live-grid strong{display:block;margin-top:4px;color:#d0c3ad;font-size:13px}.aviation-fleet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.aviation-aircraft-card{border:1px solid #303238;background:#111216;padding:14px}.aviation-aircraft-card.status-airborne{border-color:#4e5a64}.aviation-aircraft-card.status-grounded,.aviation-aircraft-card.status-seized,.aviation-aircraft-card.status-impounded{border-color:#5d3e37;background:#16110f}.aviation-aircraft-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding-bottom:10px;border-bottom:1px solid #292b30}.aviation-aircraft-head small{color:#b78a52;font-size:9px;letter-spacing:.12em}.aviation-aircraft-head h3{margin:3px 0 0;color:#d5c7b2;font-size:18px}.aviation-aircraft-head>span{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#8d9197;border:1px solid #3b3d42;padding:5px 7px}.aviation-aircraft-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.aviation-aircraft-stats>div{padding:8px;border:1px solid #292b30;background:#0e0f12}.aviation-aircraft-stats strong{display:block;margin-top:3px;color:#bdb7ad;font-size:11px}.aviation-service-form{margin-top:10px}.aviation-warning{margin:10px 0 0;color:#b97a68;font-size:10px;line-height:1.5}.aviation-market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.aviation-market-card{display:flex;flex-direction:column;border:1px solid #303238;background:#111216;padding:13px}.aviation-market-card.is-locked{opacity:.68}.aviation-market-head small{color:#777b82;font-size:8px;letter-spacing:.09em}.aviation-market-head h3{margin:3px 0;color:#d5c7b2;font-size:17px}.aviation-market-head>strong{color:#c59b63;font-size:13px}.aviation-market-card>p{color:#81858b;font-size:10px;line-height:1.5;min-height:45px}.aviation-market-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:8px 0 12px}.aviation-market-stats span{border:1px solid #292b30;background:#0e0f12;padding:7px}.aviation-market-stats strong{display:block;margin-top:2px;color:#bcb6ac;font-size:10px}.aviation-market-card form{margin-top:auto}.aviation-route-grid{display:flex;flex-direction:column;gap:7px}.aviation-route-row{display:grid;grid-template-columns:1.05fr 1fr .8fr 1fr auto;gap:8px;align-items:center;border:1px solid #2d2f34;background:#111216;padding:9px}.aviation-route-row span{min-width:0}.aviation-route-row strong{display:block;color:#c8c0b4;font-size:11px}.aviation-route-row em{display:block;color:#6f7379;font-style:normal;font-size:9px;margin-top:2px}.aviation-route-row .btn{white-space:nowrap}
@media(max-width:1050px){.aviation-market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aviation-route-row{grid-template-columns:1fr 1fr 1fr}.aviation-route-row span:last-child{grid-column:1/-1}.aviation-route-row .btn{width:100%}}
@media(max-width:720px){.aviation-hangar-grid,.aviation-fleet-grid,.aviation-market-grid,.aviation-flight-live-grid{grid-template-columns:1fr}.aviation-aircraft-stats{grid-template-columns:repeat(2,1fr)}.aviation-route-row{grid-template-columns:1fr 1fr}.aviation-route-row span:nth-child(3),.aviation-route-row span:nth-child(4){border-top:1px solid #292b30;padding-top:7px}.aviation-route-row span:last-child{grid-column:1/-1}}

/* V16.13.2 aircraft market carousel */
.aviation-market-carousel{position:relative;margin-top:14px;padding:0 44px}.aviation-market-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 2px 12px}.aviation-market-track::-webkit-scrollbar{display:none}.aviation-market-track .aviation-market-card{flex:0 0 min(420px,calc(100% - 8px));scroll-snap-align:center;min-height:330px}.aviation-carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:34px;height:58px;border:1px solid #493a30;background:#17130f;color:#c59b63;font-family:inherit;font-size:25px;line-height:1;cursor:pointer}.aviation-carousel-btn:hover{background:#211912;color:#e1c18e}.aviation-carousel-btn:disabled{opacity:.25;cursor:default}.aviation-carousel-prev{left:0}.aviation-carousel-next{right:0}.aviation-carousel-footer{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:3px;color:#777b82;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.aviation-carousel-dots{display:flex;gap:5px;align-items:center}.aviation-carousel-dot{width:6px;height:6px;border:1px solid #5a5044;background:#17181b;padding:0;cursor:pointer}.aviation-carousel-dot.is-active{background:#b78a52;border-color:#b78a52}.aviation-market-track .aviation-market-card>p{min-height:0}.aviation-market-track .aviation-market-stats{grid-template-columns:repeat(3,1fr)}
@media(max-width:720px){.aviation-market-carousel{padding:0 30px}.aviation-market-track .aviation-market-card{flex-basis:100%;min-height:0}.aviation-carousel-btn{width:25px;height:50px;font-size:20px}.aviation-market-track .aviation-market-stats{grid-template-columns:repeat(2,1fr)}.aviation-carousel-footer{gap:7px}.aviation-carousel-dots{gap:4px}.aviation-carousel-dot{width:5px;height:5px}}

/* V16.13.3 owned aircraft selector and fleet overview */
.aviation-fleet-overview{display:flex;flex-direction:column;border:1px solid #2d2f34;background:#0e0f12}.aviation-fleet-overview-row{display:grid;grid-template-columns:1.4fr 1fr 1fr .65fr;gap:10px;align-items:center;padding:9px 11px;border-bottom:1px solid #292b30;font-size:10px}.aviation-fleet-overview-row:last-child{border-bottom:0}.aviation-fleet-overview-row small{display:block;color:#6d7178;font-size:7px;letter-spacing:.09em;text-transform:uppercase}.aviation-fleet-overview-row strong{display:block;margin-top:2px;color:#beb7ab}.aviation-fleet-ident strong{color:#c59b63;font-size:11px}.aviation-fleet-ident em{display:block;margin-top:2px;color:#777b82;font-size:9px;font-style:normal}.aviation-fleet-overview-row.status-seized,.aviation-fleet-overview-row.status-impounded,.aviation-fleet-overview-row.status-grounded{background:#15110f}.aviation-fleet-overview-row.status-destroyed,.aviation-fleet-overview-row.status-sold{opacity:.6}
.aviation-owned-carousel{position:relative;margin-top:14px;padding:0 44px}.aviation-owned-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 2px 12px}.aviation-owned-track::-webkit-scrollbar{display:none}.aviation-owned-card{flex:0 0 min(520px,calc(100% - 8px));scroll-snap-align:center;border:1px solid #303238;background:#111216;padding:14px;opacity:.72;transition:border-color .16s ease,opacity .16s ease,background .16s ease}.aviation-owned-card.is-selected{border-color:#8e704d;background:#15130f;opacity:1}.aviation-owned-carousel .aviation-owned-prev{left:0}.aviation-owned-carousel .aviation-owned-next{right:0}.aviation-selected-flight-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #3b332a;background:#15120f;padding:9px 11px;margin-bottom:10px}.aviation-selected-flight-head span{color:#777b82;font-size:8px;letter-spacing:.1em}.aviation-selected-flight-head strong{color:#d2b17e;font-size:11px}.aviation-route-grid[hidden]{display:none!important}.aviation-route-row{grid-template-columns:1fr .8fr .8fr 1.05fr .9fr auto}
@media(max-width:1050px){.aviation-route-row{grid-template-columns:repeat(3,1fr)}.aviation-route-row span:last-child{grid-column:1/-1}.aviation-route-row .btn{width:100%}}
@media(max-width:720px){.aviation-fleet-overview-row{grid-template-columns:1.3fr 1fr}.aviation-fleet-overview-row>span:nth-child(3),.aviation-fleet-overview-row>span:nth-child(4){border-top:1px solid #292b30;padding-top:7px}.aviation-owned-carousel{padding:0 30px}.aviation-owned-card{flex-basis:100%}.aviation-selected-flight-head{align-items:flex-start;flex-direction:column}.aviation-route-row{grid-template-columns:1fr 1fr}.aviation-route-row span:nth-child(n+3){border-top:1px solid #292b30;padding-top:7px}.aviation-route-row span:last-child{grid-column:1/-1}}

/* V16.13.4 aircraft mileage servicing */
.aviation-service-meter{height:7px;margin-top:10px;border:1px solid #34363b;background:#0b0c0e;overflow:hidden}.aviation-service-meter span{display:block;height:100%;background:linear-gradient(90deg,#596f57,#9d7d46,#8b4d42)}.aviation-service-note{margin:7px 0 0;color:#777b82;font-size:9px;line-height:1.45}.aviation-service-note strong{color:#c7b18d}.aviation-fleet-overview-row em{display:block;margin-top:2px;color:#a98a61;font-size:8px;font-style:normal}.aviation-fleet-overview-row.status-maintenance{background:#121512;border-left:2px solid #6f7553}

/* V16.13.5 aircraft photography */
.aviation-aircraft-image{position:relative;height:210px;margin:-14px -14px 13px;overflow:hidden;border-bottom:1px solid #39342e;background:#0a0a0b}.aviation-aircraft-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,7,8,.08),rgba(10,9,8,.1) 55%,rgba(14,12,10,.42));box-shadow:inset 0 0 45px rgba(0,0,0,.38)}.aviation-aircraft-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:sepia(.3) saturate(.72) brightness(.72) contrast(1.08);transition:filter .18s ease,transform .18s ease}.aviation-owned-card.is-selected .aviation-aircraft-image img{filter:sepia(.25) saturate(.8) brightness(.82) contrast(1.08)}.aviation-market-image{height:205px;margin:-13px -13px 12px}.aviation-market-card:hover .aviation-aircraft-image img,.aviation-owned-card:hover .aviation-aircraft-image img{filter:sepia(.2) saturate(.82) brightness(.84) contrast(1.08);transform:scale(1.012)}
@media(max-width:720px){.aviation-aircraft-image,.aviation-market-image{height:175px}}

/* V16.13.7 location HUD photography */
.city-silhouette.city-photo{
  height:78px;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  position:relative;
  overflow:hidden;
  color:transparent;
  letter-spacing:0;
  box-shadow:inset 0 0 26px rgba(0,0,0,.62);
}
.city-silhouette.city-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(5,6,7,.08),rgba(5,6,7,.28));
  pointer-events:none;
}

/* V16.13.8 Italia Nera scrollbar */
html{scrollbar-width:thin;scrollbar-color:#76583a #090a0c}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:#090a0c;border-left:1px solid #1e1f22}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#8b6844,#4d3a2a);border:2px solid #090a0c;box-shadow:inset 0 0 0 1px #a17b50}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#aa8254,#604832)}
*::-webkit-scrollbar-corner{background:#090a0c}

/* V16.13.8 richer mobile location card */
.mobile-location-card{display:none}
@media(max-width:720px){
  .mobile-location-card{
    display:grid;grid-template-columns:104px minmax(0,1fr) 18px;align-items:center;gap:11px;
    min-height:78px;padding:8px 11px;background:linear-gradient(90deg,#0d0e11,#111014);
    border-bottom:1px solid #302b28;color:inherit;overflow:hidden;
  }
  .mobile-location-photo{
    height:62px;border:1px solid #34302c;background-size:cover;background-position:center;background-repeat:no-repeat;
    box-shadow:inset 0 0 20px rgba(0,0,0,.5);position:relative;
  }
  .mobile-location-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,7,8,.04),rgba(7,7,8,.22));pointer-events:none}
  .mobile-location-copy{min-width:0}
  .mobile-location-copy span{display:block;color:#8a6a45;font-size:7px;letter-spacing:.16em;margin-bottom:3px}
  .mobile-location-copy strong{display:block;color:#e1d3ba;font:700 17px Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-location-copy small{display:block;color:#73767c;font-size:8px;margin-top:3px}
  .mobile-location-mark{color:#805f3d;font-size:9px;text-align:right}
}
\n\n/* V16.14 Bearer Bonds */
.bearer-bond-hud b{color:#d8b86a;letter-spacing:.03em}.bond-symbol{color:#d8b86a}.bond-balance-card{border-color:#5b4a2d;background:linear-gradient(135deg,rgba(51,42,26,.52),rgba(13,14,16,.92))}.bond-balance-amount{font-family:Georgia,serif;font-size:clamp(32px,5vw,56px);color:#ead08d;letter-spacing:.04em;margin:8px 0}.bond-ledger .bond-credit{color:#9cc89d}.bond-ledger .bond-debit{color:#cf8b7d}.bond-ledger td{vertical-align:top}.bond-note{max-width:520px}.bond-admin-grid{display:grid;grid-template-columns:minmax(240px,1fr) minmax(240px,1fr);gap:16px}.bond-warning{border:1px solid #55462b;background:#17140f;padding:12px 14px;color:#c9b889}.bond-pack-preview{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px}.bond-pack-preview div{border:1px solid #343137;background:#111216;padding:14px;text-align:center}.bond-pack-preview strong{display:block;color:#e4ca85;font-size:18px}.bond-pack-preview small{color:#8d8d92}@media(max-width:720px){.bond-admin-grid,.bond-pack-preview{grid-template-columns:1fr 1fr}.bond-ledger th:nth-child(3),.bond-ledger td:nth-child(3){display:none}}@media(max-width:430px){.bond-pack-preview{grid-template-columns:1fr}.bond-admin-grid{grid-template-columns:1fr}}\n
/* V16.14.2 - Player bans and unified player management */
.admin-status-active{color:#a8c89a;font-weight:800;letter-spacing:.06em}.admin-status-banned{color:#d66f62;font-weight:900;letter-spacing:.08em}.admin-ban-card{border-color:rgba(123,88,54,.55)}.admin-ban-card.is-banned{border-color:rgba(151,55,45,.72);box-shadow:inset 0 0 28px rgba(108,25,18,.1)}.admin-ban-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.admin-ban-status strong{display:inline-block;padding:7px 12px;border:1px solid #8f3b31;background:rgba(112,31,23,.2);color:#e18476;letter-spacing:.12em}.admin-ban-status span{color:var(--muted)}.admin-current-ban-reason{padding:14px;border:1px solid rgba(167,130,83,.24);background:rgba(0,0,0,.16);margin-bottom:16px}.admin-current-ban-reason span{display:block;color:var(--muted);font-size:11px;letter-spacing:.09em;text-transform:uppercase;margin-bottom:7px}.admin-current-ban-reason p{margin:0;white-space:normal}.admin-ban-form textarea{width:100%;resize:vertical;min-height:96px}.admin-ban-button{border-color:#8f3b31!important;color:#efb0a6!important}.banned-page{min-height:100vh;background:radial-gradient(circle at 50% 16%,rgba(117,79,39,.11),transparent 34%),#090a09}.ban-wrap{min-height:calc(100vh - 3px);display:grid;place-items:center;padding:28px 16px}.ban-card{width:min(620px,100%);padding:34px;border:1px solid rgba(152,112,68,.48);background:linear-gradient(180deg,rgba(27,26,22,.98),rgba(13,14,13,.99));box-shadow:0 28px 80px rgba(0,0,0,.55);text-align:center}.ban-card .brand{margin-bottom:25px}.ban-stamp{display:inline-block;padding:10px 18px;border:2px solid #87372e;color:#dc7569;background:rgba(118,33,25,.12);font-weight:900;letter-spacing:.18em;transform:rotate(-1.5deg);margin-bottom:17px}.ban-card h1{margin:4px 0 10px;font-size:30px}.ban-lead{color:#c7c0b4;margin:0 auto 24px;max-width:470px}.ban-reason{text-align:left;border:1px solid rgba(173,132,79,.35);background:rgba(0,0,0,.22);padding:18px;margin:20px 0}.ban-reason span,.ban-meta span{display:block;color:#9e8e79;font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}.ban-reason strong{font-size:16px;line-height:1.55;color:#eee2cf}.ban-meta{padding:12px 0 18px;color:#b9ad9d}.ban-meta b{font-weight:700;color:#ddd0bd}
@media(max-width:700px){.ban-card{padding:26px 19px}.ban-card h1{font-size:25px}}

/* V16.14.4 - In-game Helpdesk & Ban Appeals */
.helpdesk-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.helpdesk-sidebar-card{position:sticky;top:12px}.ticket-list{display:flex;flex-direction:column;gap:7px}.ticket-list-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 11px;border:1px solid #2b2d32;background:#101115;text-decoration:none}.ticket-list-item:hover,.ticket-list-item.active{border-color:#665036;background:#171510}.ticket-list-item>div{min-width:0}.ticket-list-item strong{display:block;color:#c6a875;font-size:10px;letter-spacing:.08em}.ticket-list-item span{display:block;color:#d6d0c7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.ticket-list-item small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.ticket-headline{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.ticket-headline h2{margin:3px 0 0;color:#ddd1bc;font:700 23px Georgia,serif}.ticket-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:4px 8px;border:1px solid #3a3c42;background:#111216;font-size:8px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.ticket-status-open{color:#9ac49b;border-color:#405a45}.ticket-status-in_progress{color:#d0ae72;border-color:#665235}.ticket-status-waiting_player{color:#a9a4d1;border-color:#4c4865}.ticket-status-resolved{color:#9cb6c4;border-color:#40545f}.ticket-status-closed{color:#777b82}.ticket-meta{display:flex;gap:12px;flex-wrap:wrap;color:#777b82;font-size:9px;margin:10px 0 16px}.ticket-thread{display:flex;flex-direction:column;gap:10px;margin:16px 0}.ticket-message{border:1px solid #2b2d32;background:#111216;padding:13px}.ticket-message.player{border-left:3px solid #665036}.ticket-message.staff{border-left:3px solid #486f59;background:#101512}.ticket-message.internal{border-left:3px solid #705d43;background:#17140f}.ticket-message-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid #282a2f}.ticket-message-head strong{color:#d0c4b1;font-size:10px;letter-spacing:.04em}.ticket-message-head span{color:#6f7379;font-size:9px}.ticket-message-body{color:#c5c0b8;line-height:1.6;overflow-wrap:anywhere}.ticket-reply-form label,.helpdesk-create-form label,.ticket-admin-controls label{display:block;color:#a9a39a;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.ticket-reply-form textarea,.helpdesk-create-form textarea,.helpdesk-create-form input,.helpdesk-create-form select,.ticket-admin-controls select,.helpdesk-filter-form input,.helpdesk-filter-form select{width:100%;margin-top:6px}.ticket-reply-form .btn,.helpdesk-create-form .btn{margin-top:10px}.helpdesk-create-form{display:grid;gap:12px}.helpdesk-staff-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.4fr);gap:16px;align-items:start}.helpdesk-queue-body{padding:0!important}.staff-ticket-list{display:flex;flex-direction:column}.staff-ticket-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 12px;border-bottom:1px solid #282a2f;text-decoration:none;background:#101115}.staff-ticket-row:hover,.staff-ticket-row.active{background:#171510}.staff-ticket-row.unread{box-shadow:inset 3px 0 0 #8b6844}.staff-ticket-main{min-width:0}.staff-ticket-main>div{display:flex;gap:8px;align-items:center}.staff-ticket-main strong{color:#c6a875;font-size:9px}.staff-ticket-main span{color:#989ba1;font-size:9px}.staff-ticket-main em{font-style:normal;color:#d27d6b;border:1px solid #6d3d34;padding:2px 4px;font-size:7px;letter-spacing:.08em}.staff-ticket-main>b{display:block;color:#d4cec5;margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-ticket-main small{display:block;color:#6f7379;font-size:8px}.helpdesk-filter-form{display:grid;grid-template-columns:minmax(220px,1fr) 150px 180px auto;gap:8px}.appeal-review-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;border:1px solid #533c36;background:#17110f;margin:14px 0}.appeal-review-box>div{padding:9px;border:1px solid #332a27;background:#100d0c}.appeal-review-box span{display:block;color:#8c7d74;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.appeal-review-box strong{display:block;color:#d7c6b6;margin-top:3px;font-size:10px;overflow-wrap:anywhere}.appeal-review-box .btn{align-self:end;justify-self:start}.staff-ticket-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.internal-form{border-left:1px solid #2c2d34;padding-left:12px}.ticket-admin-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;border-top:1px solid #2c2d34;margin-top:15px;padding-top:15px}.ban-action-row,.ban-helpdesk-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.btn.secondary{background:#17181b;border-color:#3b3d43;color:#b9b4aa}.ban-helpdesk-head{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #3b3029;background:#101113}.ban-helpdesk-head>span{color:#a38762;font-size:9px;letter-spacing:.18em}.ban-helpdesk-wrap{width:min(1180px,calc(100% - 28px));margin:24px auto 50px}.helpdesk-ban-summary{border-color:#5b3932}.helpdesk-banned .helpdesk-sidebar-card{top:10px}
@media(max-width:1050px){.helpdesk-staff-layout{grid-template-columns:1fr}.helpdesk-filter-form{grid-template-columns:1fr 1fr}.helpdesk-filter-form .btn{grid-column:1/-1}.helpdesk-layout{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:720px){.helpdesk-layout{grid-template-columns:1fr}.helpdesk-sidebar-card{position:static}.ticket-headline{flex-direction:column}.staff-ticket-actions{grid-template-columns:1fr}.internal-form{border-left:0;border-top:1px solid #2c2d34;padding-left:0;padding-top:12px}.ticket-admin-controls{grid-template-columns:1fr}.appeal-review-box{grid-template-columns:1fr}.helpdesk-filter-form{grid-template-columns:1fr}.staff-ticket-row{align-items:flex-start}.ban-helpdesk-head{padding:0 14px}.ban-helpdesk-head .brand{font-size:22px}.ban-helpdesk-wrap{width:min(100% - 18px,1180px);margin-top:14px}}


/* V16.14.11 Italian tricolore wordmark */
.brand{
  display:inline-block;
  color:#ded0b2;
  background:linear-gradient(90deg,#4f7653 0%,#769276 24%,#ded8c8 46%,#eee7d5 56%,#b56d69 76%,#875052 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 0 #000) drop-shadow(0 0 8px rgba(174,142,91,.08));
  text-shadow:none;
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){.brand{color:#ded0b2;background:none;-webkit-text-fill-color:currentColor}}

/* V16.14.12 NERA-only tricolore wordmark */
.brand{
  color:#ded0b2;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  -webkit-text-fill-color:initial;
  filter:drop-shadow(0 2px 0 #000);
}
.brand .brand-italia{
  color:#ded0b2;
  -webkit-text-fill-color:#ded0b2;
}
.brand .brand-nera{
  display:inline-block;
  color:#ded0b2;
  background:linear-gradient(90deg,#4f7653 0%,#769276 27%,#ded8c8 45%,#eee7d5 57%,#b56d69 77%,#875052 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 8px rgba(174,142,91,.08));
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  .brand .brand-nera{color:#a77570;background:none;-webkit-text-fill-color:currentColor}
}
/* V16.15 Carcere busting */
.carcere-stats-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:14px;margin:14px 0}
.jail-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.jail-stat-grid span{padding:12px;border:1px solid #34322f;background:#121212;display:flex;flex-direction:column;gap:5px}.jail-stat-grid small{font-size:9px;letter-spacing:.1em;color:#858b92}.jail-stat-grid strong{font-family:Georgia,serif;color:#e1c394;font-size:17px}.jail-skill-note{margin:12px 0 0}.jail-leaderboard{border:1px solid #302f2c}.jail-leaderboard>div{display:grid;grid-template-columns:42px 1fr auto;gap:8px;padding:9px 11px;border-bottom:1px solid #292824;align-items:center}.jail-leaderboard>div:last-child{border-bottom:0}.jail-leaderboard b{color:#9a7c50}.jail-leaderboard span{color:#ddd}.jail-leaderboard strong{color:#c7ad83;font-size:11px}.jail-your-rank{margin:11px 0 0}.carcere-bust-action{text-align:right}.carcere-bust-action .btn-small{padding:7px 9px;font-size:10px;white-space:nowrap}.harder-prisoner{display:block;color:#a46d61;font-size:8px;text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.carcere-prisoner-row{grid-template-columns:24px minmax(140px,1.2fr) minmax(105px,.8fr) minmax(105px,.75fr) minmax(90px,.65fr) minmax(105px,.65fr)}
@media(max-width:800px){.carcere-stats-layout{grid-template-columns:1fr}.jail-stat-grid{grid-template-columns:1fr 1fr}.carcere-prisoner-row{grid-template-columns:24px 1fr auto}.carcere-prisoner-row .presence-role,.carcere-origin{display:none}.carcere-release{grid-column:2;text-align:left}.carcere-bust-action{grid-column:3;text-align:right}}
@media(max-width:520px){.jail-stat-grid{grid-template-columns:1fr}.jail-leaderboard>div{grid-template-columns:34px 1fr auto}}

/* V16.15.1 Admin quick panel */
.admin-quick-toggle{position:fixed;right:18px;bottom:66px;z-index:1185;width:max-content}
.admin-quick-toggle summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 12px;border:1px solid #72563a;background:linear-gradient(#3a2b1d,#1e1710);color:#efe0cb;font-size:11px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.42)}
.admin-quick-toggle summary::-webkit-details-marker{display:none}
.admin-quick-toggle summary:hover,.admin-quick-toggle[open] summary{border-color:#b5854e;background:linear-gradient(#49331f,#24180f)}
.admin-quick-mark{color:#d4a15f;font-size:14px;text-shadow:0 0 10px rgba(212,161,95,.28)}
.admin-quick-menu{position:absolute;right:0;bottom:46px;width:250px;padding:12px;border:1px solid #6c5138;background:linear-gradient(180deg,rgba(37,28,19,.99),rgba(20,16,12,.99));box-shadow:0 16px 38px rgba(0,0,0,.52)}
.admin-quick-head{display:flex;flex-direction:column;gap:2px;padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid #4d3b2d}.admin-quick-head strong{font-size:11px;letter-spacing:.13em;color:#d7a463}.admin-quick-head small{font-size:10px;color:#8f8274}
.admin-quick-link{display:block;margin-bottom:9px;padding:8px 9px;border:1px solid #4e4031;background:#211a13;color:#d9c8b4;font-size:11px;text-decoration:none}.admin-quick-link:hover{border-color:#7d6040;color:#fff0d8}
.admin-self-jail{width:100%;font-size:10px;letter-spacing:.05em}
@media(max-width:720px){.admin-quick-toggle{right:10px;bottom:58px}.admin-quick-menu{right:0;width:min(260px,calc(100vw - 20px))}}

/* V16.15.2 Carcere in-page results + floating action alignment */
.jail-action-flash{font-weight:700;letter-spacing:.01em}
.jail-action-flash[hidden]{display:none}
.flash.error,.jail-action-flash.error{border-color:#7f3636;background:#2b1214;color:#f0b9b9}
.flash.success,.jail-action-flash.success{border-color:#3d704e;background:#10251a;color:#bde6c8}
.floating-action-row{position:fixed;right:18px;bottom:18px;z-index:1185;display:flex;align-items:flex-end;gap:8px}
.floating-action-row .inventory-toggle{position:static;right:auto;bottom:auto}
.floating-action-row .admin-quick-toggle{position:relative;right:auto;bottom:auto;z-index:1}
.floating-action-row .admin-quick-menu{left:0;right:auto;bottom:46px}
@media(max-width:720px){
  .floating-action-row{right:10px;bottom:10px;gap:6px}
  .floating-action-row .inventory-toggle,.floating-action-row .admin-quick-toggle{right:auto;bottom:auto}
  .floating-action-row .admin-quick-menu{left:0;right:auto;width:min(260px,calc(100vw - 20px))}
}
