/*
DesignSystemCore v1.3.0 — Unified Foundation
Gemeinsame Basis für AdminCenter, Dashboard, Profile, UserPanel, Inventory und spätere NEXTGEN-Module.
Diese Datei ist bewusst defensiv: Sie setzt gemeinsame Optik über bestehende Klassen, ohne Modul-Logik anzufassen.
*/

html.design-system-core-active{
    background:var(--dsc-bg-deep);
}

body.design-system-core-active{
    color:var(--dsc-text);
    background:var(--dsc-bg);
}

body.design-system-core-active *,
body.design-system-core-active *::before,
body.design-system-core-active *::after{
    box-sizing:border-box;
}

/* Gemeinsame Container-/Panel-Verträge */
body.design-system-core-active .dsc-panel,
body.design-system-core-active .panel,
body.design-system-core-active .origin-panel,
body.design-system-core-active .runtime-box,
body.design-system-core-active .module-panel,
body.design-system-core-active .content-panel,
body.design-system-core-active .settings-panel,
body.design-system-core-active .form-panel,
body.design-system-core-active .table-panel{
    border:1px solid var(--dsc-line) !important;
    border-radius:var(--dsc-radius) !important;
    background:var(--dsc-panel-bg) !important;
    color:var(--dsc-text) !important;
    box-shadow:var(--dsc-shadow-soft), inset 0 1px 0 rgba(255,226,159,.06) !important;
}

body.design-system-core-active .dsc-hero,
body.design-system-core-active .origin-hero,
body.design-system-core-active .module-hero,
body.design-system-core-active .page-hero,
body.design-system-core-active .dashboard-hero,
body.design-system-core-active .admin-hero-panel{
    border:1px solid var(--dsc-line-strong) !important;
    border-radius:var(--dsc-radius-xl) !important;
    background:var(--dsc-hero-bg) !important;
    color:var(--dsc-text) !important;
    box-shadow:var(--dsc-shadow), inset 0 1px 0 rgba(255,226,159,.1) !important;
}

/* Einheitliche Cards */
body.design-system-core-active .dsc-card,
body.design-system-core-active .card,
body.design-system-core-active .module-card,
body.design-system-core-active .admin-card,
body.design-system-core-active .dashboard-card,
body.design-system-core-active .dashboard-widget,
body.design-system-core-active .dashboard-stat-card,
body.design-system-core-active .profile-card,
body.design-system-core-active .profilenext-card,
body.design-system-core-active .inventory-card,
body.design-system-core-active .item-card,
body.design-system-core-active .news-card,
body.design-system-core-active .forum-card,
body.design-system-core-active .download-card,
body.design-system-core-active .event-card{
    border:1px solid var(--dsc-line) !important;
    border-radius:var(--dsc-radius) !important;
    background:
        radial-gradient(circle at 86% 0%, rgba(255,153,48,.08), transparent 32%),
        linear-gradient(180deg, rgba(30,21,14,.97), rgba(9,8,7,.98)) !important;
    color:var(--dsc-text) !important;
    box-shadow:var(--dsc-shadow-soft), inset 0 1px 0 rgba(255,221,147,.06) !important;
}

/* Typografie */
body.design-system-core-active h1,
body.design-system-core-active h2,
body.design-system-core-active h3,
body.design-system-core-active h4,
body.design-system-core-active .panel-title,
body.design-system-core-active .card-title,
body.design-system-core-active .module-title{
    color:var(--dsc-accent-2) !important;
    text-shadow:0 0 18px rgba(255,153,48,.13);
}

body.design-system-core-active p,
body.design-system-core-active small,
body.design-system-core-active .muted,
body.design-system-core-active .text-muted,
body.design-system-core-active .description,
body.design-system-core-active .meta,
body.design-system-core-active .subline{
    color:var(--dsc-muted) !important;
}

/* Links und Buttons */
body.design-system-core-active a{
    color:var(--dsc-accent-2);
}

body.design-system-core-active a:hover{
    color:var(--dsc-text);
}

body.design-system-core-active .dsc-btn,
body.design-system-core-active .btn,
body.design-system-core-active .button,
body.design-system-core-active .admin-btn,
body.design-system-core-active .origin-btn,
body.design-system-core-active .module-btn,
body.design-system-core-active .action-btn,
body.design-system-core-active button,
body.design-system-core-active input[type="submit"],
body.design-system-core-active input[type="button"],
body.design-system-core-active input[type="reset"],
body.design-system-core-active a.button,
body.design-system-core-active a.btn{
    border:1px solid var(--dsc-line) !important;
    border-radius:var(--dsc-radius-sm) !important;
    background:linear-gradient(180deg, rgba(217,154,67,.17), rgba(15,11,8,.96)) !important;
    color:var(--dsc-text) !important;
    box-shadow:inset 0 1px 0 rgba(255,236,190,.08), 0 10px 22px rgba(0,0,0,.24) !important;
    text-decoration:none !important;
    transition:transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

body.design-system-core-active .dsc-btn:hover,
body.design-system-core-active .btn:hover,
body.design-system-core-active .button:hover,
body.design-system-core-active .admin-btn:hover,
body.design-system-core-active .origin-btn:hover,
body.design-system-core-active .module-btn:hover,
body.design-system-core-active .action-btn:hover,
body.design-system-core-active button:hover,
body.design-system-core-active input[type="submit"]:hover,
body.design-system-core-active a.button:hover,
body.design-system-core-active a.btn:hover{
    border-color:var(--dsc-line-strong) !important;
    background:linear-gradient(180deg, rgba(255,189,102,.23), rgba(25,16,10,.98)) !important;
    transform:translateY(-1px);
    box-shadow:var(--dsc-glow), 0 12px 26px rgba(0,0,0,.28) !important;
}

/* Formulare */
body.design-system-core-active input[type="text"],
body.design-system-core-active input[type="email"],
body.design-system-core-active input[type="password"],
body.design-system-core-active input[type="number"],
body.design-system-core-active input[type="search"],
body.design-system-core-active input[type="url"],
body.design-system-core-active input[type="date"],
body.design-system-core-active input[type="datetime-local"],
body.design-system-core-active input[type="file"],
body.design-system-core-active select,
body.design-system-core-active textarea{
    width:auto;
    max-width:100%;
    border:1px solid var(--dsc-line-soft) !important;
    border-radius:var(--dsc-radius-sm) !important;
    background:rgba(5,4,3,.72) !important;
    color:var(--dsc-text) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}

body.design-system-core-active input:focus,
body.design-system-core-active select:focus,
body.design-system-core-active textarea:focus{
    border-color:var(--dsc-line-strong) !important;
    outline:none !important;
    box-shadow:var(--dsc-focus), inset 0 1px 0 rgba(255,255,255,.04) !important;
}

body.design-system-core-active label{
    color:var(--dsc-text-soft) !important;
}

/* Tabellen */
body.design-system-core-active table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    color:var(--dsc-text);
}

body.design-system-core-active table th{
    background:rgba(217,154,67,.12) !important;
    color:var(--dsc-accent-2) !important;
    border-bottom:1px solid var(--dsc-line) !important;
}

body.design-system-core-active table td{
    border-bottom:1px solid rgba(214,152,69,.12) !important;
    color:var(--dsc-text-soft) !important;
}

body.design-system-core-active table tr:hover td{
    background:rgba(255,189,102,.045) !important;
}

/* Status / Badges */
body.design-system-core-active .badge,
body.design-system-core-active .tag,
body.design-system-core-active .status,
body.design-system-core-active .pill,
body.design-system-core-active .chip,
body.design-system-core-active .module-badge,
body.design-system-core-active .role-badge,
body.design-system-core-active .permission-badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    border:1px solid var(--dsc-line-soft) !important;
    border-radius:999px !important;
    background:rgba(217,154,67,.10) !important;
    color:var(--dsc-text-soft) !important;
    padding:4px 9px;
    line-height:1.2;
}

/* Details/Summary als moderne Drop-down-Basis */
body.design-system-core-active details{
    border:1px solid var(--dsc-line-soft);
    border-radius:var(--dsc-radius);
    background:rgba(10,8,6,.42);
    overflow:hidden;
}

body.design-system-core-active summary{
    cursor:pointer;
    color:var(--dsc-accent-2);
    padding:12px 14px;
    list-style:none;
}

body.design-system-core-active summary::-webkit-details-marker{
    display:none;
}

body.design-system-core-active summary::after{
    content:"▾";
    float:right;
    color:var(--dsc-muted);
}

body.design-system-core-active details[open] summary::after{
    content:"▴";
}

/* Utility-Grids */
body.design-system-core-active .dsc-grid,
body.design-system-core-active .card-grid,
body.design-system-core-active .module-grid,
body.design-system-core-active .dashboard-grid,
body.design-system-core-active .stats-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
    gap:var(--dsc-gap);
}

body.design-system-core-active .dsc-two-col{
    display:grid;
    grid-template-columns:minmax(0, 1.7fr) minmax(280px, .8fr);
    gap:var(--dsc-gap-lg);
}

@media (max-width: 980px){
    body.design-system-core-active .dsc-two-col{
        grid-template-columns:1fr;
    }
}
