:root{--bg:#070a0e;--panel:#10161d;--line:#26313c;--gold:#c8933f;--gold2:#e0b468;--text:#f4f1ea;--muted:#909baa}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0,rgba(200,147,63,.08),transparent 25%),var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif}a{color:inherit;text-decoration:none}
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,100%);padding:30px;border:1px solid rgba(200,147,63,.35);border-radius:18px;background:#10161df5;box-shadow:0 35px 100px #0008}.logo{text-align:center;margin-bottom:26px}.stars{color:var(--gold);letter-spacing:.5em;font-size:10px}.logo-title{font-family:Georgia,serif;font-style:italic;font-size:34px}.logo-title b{color:var(--gold2)}.login-card p,.muted{color:var(--muted)}
.field{display:grid;gap:7px;margin:14px 0}.field label{font-size:12px;font-weight:700;color:#bdc5cd}.field input{padding:12px;border:1px solid #303b48;border-radius:9px;background:#090e14;color:#fff;outline:none}.field input:focus{border-color:var(--gold)}.primary{width:100%;padding:12px;border:1px solid #b37e2e;border-radius:9px;background:linear-gradient(90deg,#735321,#b57d28);color:#fff8e8;font-weight:900;cursor:pointer}.alert{padding:11px;border-radius:9px;background:#40161b;color:#ffc1c6}
.layout{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{position:relative;padding:22px 14px;background:#0b1016;border-right:1px solid #202a35}.nav{display:grid;gap:4px}.nav a{padding:11px 13px;border-radius:9px;color:#9da8b5}.nav a:hover,.nav a.active{background:#18212b;color:#fff}.sidebar-footer{position:absolute;left:14px;right:14px;bottom:18px}.user-box{padding:12px;border:1px solid var(--line);border-radius:10px;background:#101720}.user-name{font-weight:800}.user-rank{margin-top:3px;color:var(--gold2);font-size:11px;text-transform:uppercase}.logout{display:block;margin-top:9px;color:#bbc4cc;font-size:12px}
.main{padding:28px 32px}.top{margin-bottom:24px}.top h1{margin:0;font-size:27px}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:13px}.card{padding:17px}.card-label{color:var(--muted);font-size:12px}.metric{margin-top:6px;font-size:29px;font-weight:900}.panel{margin-top:14px;padding:17px}.panel h2{margin:0 0 14px;font-size:16px}
table{width:100%;border-collapse:collapse}th,td{padding:10px 8px;text-align:left;border-top:1px solid #222c36;font-size:12px}th{color:var(--muted)}.badge{display:inline-block;padding:4px 7px;border-radius:999px;background:#202b36}.status-dot{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#df5964}.status-dot.online{background:#65c487}
@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar-footer{position:static;margin-top:18px}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.cards{grid-template-columns:1fr}.main{padding:20px 14px}}

.actionbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border-radius:8px;border:1px solid #344150;background:#1b2631;color:#fff;cursor:pointer;font-size:12px}.btn:hover{filter:brightness(1.12)}.btn.gold{border-color:#b57f2e;background:linear-gradient(90deg,#684b20,#9f6e25);color:#fff7e5}.btn.danger{border-color:#6e3137;background:#472126;color:#ffdce0}.btn.success{border-color:#315b40;background:#203a2b;color:#dcffe7}.btn.ghost{background:transparent}.inline-form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.inline-form input,.inline-form select,.form-grid input,.form-grid select{background:#0a1016;border:1px solid #303b48;color:#fff;padding:8px 9px;border-radius:8px;outline:none}.inline-form input:focus,.inline-form select:focus,.form-grid input:focus,.form-grid select:focus{border-color:var(--gold)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label{display:grid;gap:6px;color:#bac3cc;font-size:12px}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.panel-head h2{margin:0}.small{font-size:11px}.text-danger{color:#ff9ea6}.text-success{color:#9ce7b7}.right{text-align:right}.alert.success{background:rgba(101,196,135,.12);border:1px solid rgba(101,196,135,.35);color:#c6f6d6}.alert.error{background:rgba(226,93,104,.12);border:1px solid rgba(226,93,104,.35);color:#ffbdc3}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.inline-form{display:flex}}

.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.toolbar-group{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.statline{display:flex;gap:10px;flex-wrap:wrap}
.mini-card{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#0d141b;min-width:125px}
.mini-card .n{font-size:22px;font-weight:900;margin-top:3px}
.resource-state{font-weight:800}
.resource-state.started{color:#8ee3ad}
.resource-state.stopped{color:#ff9aa3}
.resource-state.starting{color:#e8c57d}
.notice{padding:12px 14px;border-radius:10px;border:1px solid #3a4652;background:#0d141b;color:#cbd2d8}


.searchbox{
    width:min(360px,100%);
    padding:9px 11px;
    border:1px solid #303b48;
    border-radius:8px;
    background:#0a1016;
    color:#fff;
    outline:none;
}
.searchbox:focus{border-color:var(--gold)}
.template-row{
    display:grid;
    grid-template-columns:220px 1fr;
    gap:10px;
    margin-bottom:10px;
}
.restart-box{
    display:grid;
    grid-template-columns:120px 1fr auto;
    gap:10px;
    align-items:end;
}
.maintenance-on{
    color:#ffb2b8;
    font-weight:900;
}
.maintenance-off{
    color:#9ce7b7;
    font-weight:900;
}
.countdown{
    font-size:30px;
    font-weight:900;
    color:var(--gold2);
}
@media(max-width:760px){
    .template-row,.restart-box{grid-template-columns:1fr}
}


/* Alte Zeit RP Control Center v0.7 */
.hero-control{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:24px;
    margin-bottom:18px;
    border:1px solid #2b3440;
    border-radius:14px;
    background:linear-gradient(135deg,#151b22,#0d1218);
}
.hero-control h2{margin:3px 0 5px;font-size:28px}
.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:900;color:var(--gold2)}
.live-pill{
    display:flex;align-items:center;gap:8px;
    padding:9px 13px;border-radius:999px;
    border:1px solid #303b48;font-weight:800;font-size:13px;
    white-space:nowrap
}
.live-dot{width:8px;height:8px;border-radius:50%;background:#777}
.live-pill.online .live-dot{background:#55d88a;box-shadow:0 0 10px #55d88a}
.live-pill.offline .live-dot{background:#ef6262}
.stat-link{display:block;text-decoration:none;color:inherit;transition:.15s transform,.15s border-color}
.stat-link:hover{transform:translateY(-2px);border-color:var(--gold)}
.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.status-list{display:grid;gap:2px}
.status-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #252e38}
.status-row:last-child{border-bottom:0}
.ok-text{color:#72dda0}
.bad-text{color:#ff777f}
.warn-text{color:#f0c56e}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.quick-action{
    display:flex;flex-direction:column;gap:3px;
    min-height:94px;padding:15px;
    text-decoration:none;color:inherit;
    border:1px solid #2b3541;border-radius:10px;background:#0d1319;
    transition:.15s
}
.quick-action:hover{border-color:var(--gold);transform:translateY(-1px)}
.quick-action small{color:#8e99a6}
.quick-icon{font-size:20px;color:var(--gold2)}
.empty-state{display:flex;flex-direction:column;gap:5px;padding:24px;text-align:center}
.activity-list{display:grid}
.activity-item{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #252e38}
.activity-item:last-child{border-bottom:0}
.roadmap-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #252e38}
.roadmap-row>div{display:flex;flex-direction:column;gap:3px}
.roadmap-row:last-child{border-bottom:0}
.badge-ready,.badge-next,.badge-wait{
    padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap
}
.badge-ready{background:rgba(70,190,120,.12);color:#78dfa3}
.badge-next{background:rgba(230,181,95,.12);color:var(--gold2)}
.badge-wait{background:rgba(130,145,160,.12);color:#a8b2bd}
@media(max-width:900px){
    .control-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
    .hero-control{align-items:flex-start;flex-direction:column}
    .quick-grid{grid-template-columns:1fr}
    .control-stats{grid-template-columns:1fr 1fr}
}


/* Character Management v0.8 */
.danger-zone{
    border-color:rgba(226,93,104,.45);
    background:linear-gradient(180deg,rgba(65,24,29,.32),var(--panel));
}
.danger-eyebrow{color:#ff858d}
.danger-zone code{
    padding:2px 5px;
    border-radius:5px;
    background:#281318;
    color:#ffc6cb;
}
.btn:disabled,
input:disabled,
select:disabled{
    opacity:.48;
    cursor:not-allowed;
}


/* Spielerakte v0.9 */
.player-file-hero h2{margin:3px 0 4px}
.file-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.badge-gold{color:var(--gold2);border:1px solid rgba(200,147,63,.35)}
.badge-danger{color:#ffabb2;background:rgba(226,93,104,.14)}
.file-metric-small{font-size:18px!important;text-transform:capitalize}
.character-file-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
}
.character-file-card{
    display:block;
    padding:15px;
    color:inherit;
    text-decoration:none;
    border:1px solid #29343f;
    border-radius:11px;
    background:#0d141b;
    transition:.15s
}
.character-file-card:hover{
    transform:translateY(-2px);
    border-color:var(--gold)
}
.character-file-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:5px
}
.character-file-meta{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding-top:10px;
    margin-top:10px;
    border-top:1px solid #252f39;
    font-size:12px
}
.character-file-meta span{color:var(--muted)}
.live-pill.mini{padding:4px 7px;font-size:10px}
.live-pill.mini .live-dot{width:6px;height:6px}
@media(max-width:1000px){
    .character-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
    .character-file-grid{grid-template-columns:1fr}
    .file-badges{justify-content:flex-start}
}


/* Mailverwaltung v1.0 */
.mail-stats{margin-bottom:14px}
.mail-filter{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto auto;gap:8px;align-items:center}
.table-wrap{overflow-x:auto}
.mail-account-actions{position:relative;display:inline-block;text-align:left}
.mail-account-actions summary{list-style:none}
.mail-account-actions summary::-webkit-details-marker{display:none}
.mail-action-box{
    position:absolute;right:0;z-index:20;width:330px;margin-top:7px;padding:13px;
    border:1px solid #34414d;border-radius:10px;background:#0d141b;
    box-shadow:0 18px 50px rgba(0,0,0,.45)
}
.mail-action-box form{display:grid;gap:8px;padding:9px 0;border-bottom:1px solid #27313a}
.mail-action-box form:last-child{border-bottom:0}
.mail-action-box label{display:grid;gap:4px;font-size:11px;color:var(--muted)}
@media(max-width:760px){
    .mail-filter{grid-template-columns:1fr}
    .mail-action-box{position:fixed;left:12px;right:12px;top:90px;width:auto;max-height:calc(100vh - 110px);overflow:auto}
}

.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.form-grid label{display:flex;flex-direction:column;gap:6px}.form-grid input,.form-grid select{width:100%}
/* Fahrzeugverwaltung v1.1 */
.vehicle-filter{display:grid;grid-template-columns:minmax(260px,1fr) 190px 160px;gap:9px;margin-bottom:14px}.dealer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.audit-json{white-space:pre-wrap;word-break:break-word;max-width:650px;max-height:300px;overflow:auto;font-size:11px}.vehicle-filter select{width:100%}@media(max-width:760px){.vehicle-filter{grid-template-columns:1fr}.control-stats{grid-template-columns:1fr 1fr}}

/* Fahrzeugverwaltung v1.2 - Popup & Reichweitenberechnung */
.modal-backdrop{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}
.modal-backdrop.is-open{display:flex}
.modal-card{width:min(980px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid #34414d;border-radius:14px;background:#0d141b;box-shadow:0 28px 90px rgba(0,0,0,.6);padding:20px}
.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.modal-head h2{margin:3px 0 0}.modal-close{border:0;background:transparent;color:#fff;font-size:30px;line-height:1;cursor:pointer;padding:2px 7px;border-radius:7px}.modal-close:hover{background:#202a34}.modal-open{overflow:hidden}
.vehicle-modal-card .range-field{grid-column:span 2}.vehicle-modal-card .range-field small{color:var(--muted);line-height:1.35}.vehicle-checks{display:flex;gap:18px;flex-wrap:wrap;margin:16px 0}.fuel-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.fuel-preview>div{padding:13px;border:1px solid #2d3843;border-radius:10px;background:#0a1016}.fuel-preview span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.fuel-preview strong{font-size:18px;color:var(--gold2)}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid #26303a}
@media(max-width:700px){.modal-backdrop{padding:10px}.modal-card{max-height:calc(100vh - 20px);padding:15px}.vehicle-modal-card .range-field{grid-column:span 1}.fuel-preview{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}}

/* Fahrzeugverwaltung v1.6 - Fahrzeugbild & unbearbeitete Fahrzeuge */
.vehicle-modal-image-wrap{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:220px;
    margin:0 0 18px;
    padding:14px;
    overflow:hidden;
    border:1px solid #2d3843;
    border-radius:12px;
    background:linear-gradient(180deg,#0a1016,#101820);
}
.vehicle-modal-image{
    display:none;
    width:100%;
    max-width:620px;
    max-height:300px;
    object-fit:contain;
}
.vehicle-modal-image-fallback{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:190px;
    color:var(--muted);
    font-size:13px;
    text-align:center;
}
@media(max-width:700px){
    .vehicle-modal-image-wrap{min-height:160px;padding:10px}
    .vehicle-modal-image{max-height:210px}
    .vehicle-modal-image-fallback{min-height:140px}
}

/* Handelsbörse */
.market-stats{margin-bottom:14px}.market-price-form{display:flex;gap:8px;align-items:center;min-width:245px}.market-price-form input{width:130px}@media(max-width:760px){.market-price-form{min-width:210px}.market-price-form input{width:110px}}


/* Busjob-Routenverwaltung */
.busjob-stats{margin-bottom:14px}.busjob-price-form{display:flex;gap:8px;align-items:center;min-width:245px}.busjob-price-form input{width:130px}.busjob-route-warning{color:#ffcc66;font-weight:700}.busjob-route-ok{color:#7fdc9a}.busjob-route-disabled{opacity:.6}@media(max-width:760px){.busjob-price-form{min-width:210px}.busjob-price-form input{width:110px}}


/* LS Social Verwaltung v1.0 */
.social-create-panel textarea,
.social-action-box textarea{
    width:100%;
    padding:9px;
    resize:vertical;
    border:1px solid #303b48;
    border-radius:8px;
    background:#0a1016;
    color:#fff;
    outline:none;
    font:inherit;
}
.social-create-panel textarea:focus,
.social-action-box textarea:focus{border-color:var(--gold)}
.social-full-field{grid-column:1/-1}
.social-check-row{display:flex;gap:16px;flex-wrap:wrap;margin:14px 0;color:#bac3cc;font-size:12px}
.social-check-row label,.social-inline-check{display:flex!important;flex-direction:row!important;align-items:center;gap:7px}
.social-check-row input,.social-inline-check input{width:auto!important}
.social-account-cell{display:flex;align-items:center;gap:10px;min-width:230px}
.social-account-cell img,.social-avatar-fallback{
    width:38px;height:38px;flex:0 0 38px;border-radius:50%;
    object-fit:cover;display:grid;place-items:center;
}
.social-avatar-fallback{background:linear-gradient(135deg,#8b5cf6,#5b21b6);font-weight:900;color:#fff}
.social-blue-check,.social-panel-verified{color:#1d9bf0;font-weight:900}
.social-action-box textarea{min-height:70px}
.social-post-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}
.social-admin-post{padding:14px;border:1px solid #29343f;border-radius:12px;background:#0d141b}
.social-admin-post-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.social-admin-post-head>div{display:flex;flex-direction:column;gap:2px}
.social-admin-post-head span{font-size:11px;color:var(--muted)}
.social-admin-post p{font-size:13px;line-height:1.5;white-space:normal;word-break:break-word}
.social-admin-post-image{display:block;width:100%;max-height:260px;object-fit:cover;border-radius:9px;margin:10px 0}
.social-admin-post form{margin-top:10px}
@media(max-width:700px){
    .social-full-field{grid-column:auto}
    .social-post-admin-grid{grid-template-columns:1fr}
}

/* LS Social moderation extension */
.social-reports-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}
.social-report-admin{padding:14px;border:1px solid #513647;border-radius:12px;background:#151017}
.social-report-reason{padding:9px;border-radius:8px;background:#25151c;color:#f4becd;font-size:12px;margin:8px 0}
.social-report-review{display:grid;grid-template-columns:1fr auto auto;gap:7px;margin-top:10px}
.social-report-review input{min-width:0}
.social-suspension-form{border-top:1px solid #28333d;margin-top:12px;padding-top:12px}
@media(max-width:700px){.social-report-review{grid-template-columns:1fr}.social-reports-grid{grid-template-columns:1fr}}

/* Web-Account Seitenrechte v1.0 */
.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin-top:14px}
.permission-check{display:flex!important;flex-direction:row!important;align-items:center;gap:9px;padding:10px 11px;border:1px solid #2d3843;border-radius:9px;background:#0a1016;color:#d7dde3!important;cursor:pointer}
.permission-check input{width:auto!important;margin:0}
.webuser-card{margin-top:10px;border:1px solid #2b3540;border-radius:11px;background:#0d141b;overflow:hidden}
.webuser-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;cursor:pointer;list-style:none}
.webuser-card>summary::-webkit-details-marker{display:none}
.webuser-card>summary>div:first-child{display:flex;flex-direction:column;gap:3px}
.webuser-summary-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.webuser-body{padding:0 14px 14px;border-top:1px solid #26303a}

/* Charakter Wirtschaft / Besitz */
.character-finance-cards{margin-top:14px}
.inventory-meta{display:inline-block;max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.permission-grid{grid-template-columns:1fr 1fr}.inventory-meta{max-width:180px}}
@media(max-width:500px){.permission-grid{grid-template-columns:1fr}}
.subpermission-box{border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 14px;background:rgba(255,255,255,.025)}
.permission-grid.compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
