/*
 * Dentalab3000 / DL3Support
 * Stile condiviso del portale - revisione grafica 24/07/2026
 */
:root {
    --dl3-navy: #0b2852;
    --dl3-navy-soft: #153f76;
    --dl3-blue: #1769e8;
    --dl3-blue-dark: #0d4fb5;
    --dl3-blue-pale: #eaf2ff;
    --dl3-bg: #eef4fa;
    --dl3-surface: #ffffff;
    --dl3-text: #142b47;
    --dl3-muted: #667990;
    --dl3-border: #d8e4f0;
    --dl3-success: #138a5b;
    --dl3-warning: #d97706;
    --dl3-danger: #c73e36;
    --dl3-purple: #7047c8;
    --dl3-radius-lg: 20px;
    --dl3-radius-md: 14px;
    --dl3-radius-sm: 10px;
    --dl3-shadow: 0 14px 34px rgba(17, 46, 85, 0.09);
    --dl3-shadow-soft: 0 8px 22px rgba(17, 46, 85, 0.07);

    /* Compatibilità con i nomi variabile già usati nelle singole pagine. */
    --primary: var(--dl3-blue);
    --primary-dark: var(--dl3-blue-dark);
    --primary-soft: var(--dl3-blue-pale);
    --navy: var(--dl3-navy);
    --navy-light: var(--dl3-navy-soft);
    --navy-soft: var(--dl3-navy-soft);
    --text: var(--dl3-text);
    --muted: var(--dl3-muted);
    --border: var(--dl3-border);
    --page: var(--dl3-bg);
    --background: var(--dl3-bg);
    --bg: var(--dl3-bg);
    --surface: var(--dl3-surface);
    --card: var(--dl3-surface);
    --success: var(--dl3-success);
    --warning: var(--dl3-warning);
    --danger: var(--dl3-danger);
    --shadow: var(--dl3-shadow);
    --line: var(--dl3-border);
    --accent: var(--dl3-blue);
    --accent-2: var(--dl3-navy-soft);

    --dash-bg: var(--dl3-bg);
    --dash-card: var(--dl3-surface);
    --dash-border: var(--dl3-border);
    --dash-text: var(--dl3-text);
    --dash-muted: var(--dl3-muted);
    --dash-primary: var(--dl3-blue);
    --dash-primary-dark: var(--dl3-blue-dark);
    --dash-success: var(--dl3-success);
    --dash-warning: var(--dl3-warning);
    --dash-danger: var(--dl3-danger);
    --dash-shadow: var(--dl3-shadow);

    --help-bg: var(--dl3-bg);
    --help-card: var(--dl3-surface);
    --help-border: var(--dl3-border);
    --help-text: var(--dl3-text);
    --help-muted: var(--dl3-muted);
    --help-blue: var(--dl3-blue);
    --help-navy: var(--dl3-navy);
    --help-shadow: var(--dl3-shadow);

    --ship-bg: var(--dl3-bg);
    --ship-border: var(--dl3-border);
    --ship-muted: var(--dl3-muted);
    --ship-blue: var(--dl3-blue);
    --ship-navy: var(--dl3-navy);
    --ship-yellow: #ffcf18;

    --stats-bg: var(--dl3-bg);
    --stats-card: var(--dl3-surface);
    --stats-border: var(--dl3-border);
    --stats-text: var(--dl3-text);
    --stats-muted: var(--dl3-muted);
    --stats-blue: var(--dl3-blue);
    --stats-navy: var(--dl3-navy);
    --stats-shadow: var(--dl3-shadow);
}

html {
    color-scheme: light;
}

body {
    color: var(--dl3-text);
    background-color: var(--dl3-bg);
}

body,
button,
input,
select,
textarea {
    font-family: Inter, Arial, Helvetica, sans-serif;
}

/* Intestazioni principali */
.dashboard-header,
.lab-topbar,
.studio-header,
.topbar,
.dl3-profile-page > header,
.dl3-activity-page > header {
    background: #123c78 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 24px rgba(5, 28, 65, 0.16) !important;
}

.dashboard-header a,
.lab-topbar a,
.studio-header a,
.topbar a,
.dl3-profile-page > header a,
.dl3-activity-page > header a {
    color: #ffffff;
}

/* Sidebar: stile gestito da admin_layout.css (tema chiaro) — nessun override qui. */

.admin-sidebar-brand strong {
    line-height: 1.2;
}

/* Titolo introduttivo uniforme */
.page-intro,
.dashboard-welcome,
.shipments-hero,
.stats-hero,
.help-hero,
.assistenza-hero,
.dl3-profile-page .intro,
.dl3-activity-page .intro,
.assistenza-studio-page .hero,
body:not(.dl3-login-page):not(.dl3-registration-page) .hero {
    position: relative;
    overflow: hidden;
    color: #ffffff !important;
    background: #0e2f63 !important;
    padding: 25px 28px !important;
    border: 0 !important;
    border-radius: var(--dl3-radius-lg) !important;
    box-shadow: var(--dl3-shadow) !important;
}

.page-intro::after,
.dashboard-welcome::after,
.shipments-hero::after,
.stats-hero::after,
.help-hero::after,
.dl3-profile-page .intro::after,
.dl3-activity-page .intro::after,
body:not(.dl3-login-page):not(.dl3-registration-page) .hero::after {
    content: "";
    position: absolute;
    width: 230px;
    height: 230px;
    right: -100px;
    top: -125px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 50%;
    pointer-events: none;
}

.page-intro > *,
.dashboard-welcome > *,
.shipments-hero > *,
.stats-hero > *,
.help-hero > *,
.dl3-profile-page .intro > *,
.dl3-activity-page .intro > *,
body:not(.dl3-login-page):not(.dl3-registration-page) .hero > * {
    position: relative;
    z-index: 1;
}

.page-intro h1,
.dashboard-welcome h1,
.shipments-hero h1,
.stats-hero h1,
.help-hero h1,
.dl3-profile-page .intro h1,
.dl3-activity-page .intro h1,
body:not(.dl3-login-page):not(.dl3-registration-page) .hero h1 {
    color: #ffffff !important;
}

.page-intro p,
.dashboard-welcome p,
.shipments-hero p,
.stats-hero p,
.help-hero p,
.dl3-profile-page .intro p,
.dl3-activity-page .intro p,
body:not(.dl3-login-page):not(.dl3-registration-page) .hero p {
    color: rgba(255, 255, 255, 0.78) !important;
}

.page-icon {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.10) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
}

.page-icon i {
    color: #ffffff;
    font-size: 30px;
}

/* Azioni rapide */
.dashboard-quick-actions,
.studio-quick-actions {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100%;
    margin-bottom: 22px;
}

.quick-action,
.studio-quick-action {
    border-color: var(--dl3-border) !important;
    border-radius: var(--dl3-radius-md) !important;
    box-shadow: var(--dl3-shadow-soft) !important;
}

.quick-action:hover,
.studio-quick-action:hover {
    transform: translateY(-2px);
    box-shadow: var(--dl3-shadow) !important;
}

/* Schede e pannelli */
.kpi-card,
.studio-kpi-card,
.stat-card,
.stats-kpi,
.stats-card,
.dashboard-panel,
.card,
.table-card,
.filter-card,
.help-card,
.order-summary,
.section-card,
.profile-card,
.info-card,
.form-card,
.summary-card {
    border-color: var(--dl3-border) !important;
    border-radius: var(--dl3-radius-lg) !important;
    box-shadow: var(--dl3-shadow-soft) !important;
}

/* Moduli */
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
    border-color: #cddbea !important;
    border-radius: 11px !important;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--dl3-blue) !important;
    outline: 3px solid rgba(23, 105, 232, 0.13) !important;
}

/* Pulsanti principali */
.submit-button,
.login-button,
.help-primary,
.button-blue,
.stats-button:not(.secondary),
.primary:not(.quick-action):not(.studio-quick-action) {
    background: linear-gradient(135deg, var(--dl3-blue), var(--dl3-blue-dark)) !important;
    border-color: transparent !important;
    color: #ffffff !important;
}

/* Tabelle */
table th {
    color: #52657d;
}

/* Titoli browser e contenuti non devono usare la parola Dashboard come etichetta visiva */
.dl3-page-context {
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
}

@media (max-width: 1200px) {
    .dashboard-quick-actions,
    .studio-quick-actions {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .dashboard-quick-actions,
    .studio-quick-actions {
        grid-template-columns: 1fr !important;
    }

    .page-intro,
    .dashboard-welcome,
    .shipments-hero,
    .stats-hero,
    .help-hero,
    .dl3-profile-page .intro,
    .dl3-activity-page .intro,
    body:not(.dl3-login-page):not(.dl3-registration-page) .hero {
        padding: 21px 19px !important;
    }
}

@media print {
    .page-intro,
    .dashboard-welcome,
    .shipments-hero,
    .stats-hero,
    .help-hero,
    .dl3-profile-page .intro,
    .dl3-activity-page .intro,
    body:not(.dl3-login-page):not(.dl3-registration-page) .hero {
        color: #111111 !important;
        background: #ffffff !important;
        box-shadow: none !important;
        border: 1px solid #cccccc !important;
    }

    .page-intro h1,
    .dashboard-welcome h1,
    .shipments-hero h1,
    .stats-hero h1,
    .help-hero h1,
    .dl3-profile-page .intro h1,
    .dl3-activity-page .intro h1,
    body:not(.dl3-login-page):not(.dl3-registration-page) .hero h1,
    .page-intro p,
    .dashboard-welcome p,
    .shipments-hero p,
    .stats-hero p,
    .help-hero p,
    .dl3-profile-page .intro p,
    .dl3-activity-page .intro p,
    body:not(.dl3-login-page):not(.dl3-registration-page) .hero p {
        color: #111111 !important;
    }
}
