/* ============================================================
   S D DECORATORS — PREMIUM BUSINESS ADMIN UI
   Visual override only. Existing application logic stays intact.
============================================================ */

:root{
    --sd-navy-950:#061426;
    --sd-navy-900:#091b31;
    --sd-navy-850:#0d223d;
    --sd-navy-800:#122b49;
    --sd-gold-600:#b7791f;
    --sd-gold-500:#d9a441;
    --sd-gold-400:#edc46c;
    --sd-gold-200:#f8e7b7;
    --sd-ink:#142033;
    --sd-muted:#667085;
    --sd-bg:#f4f6f9;
    --sd-surface:#ffffff;
    --sd-surface-soft:#f8fafc;
    --sd-line:#e6eaf0;
    --sd-success:#16865b;
    --sd-danger:#c43d4b;
    --sd-warning:#b66a13;
    --sd-info:#2d67c7;
    --sd-shadow-sm:0 4px 16px rgba(15,23,42,.06);
    --sd-shadow-md:0 12px 36px rgba(15,23,42,.09);
    --sd-shadow-lg:0 24px 70px rgba(2,12,27,.16);
    --sd-radius-sm:10px;
    --sd-radius-md:16px;
    --sd-radius-lg:22px;
    --sd-sidebar:270px;
}

html{background:var(--sd-bg);}

body,
.dashboard-body{
    background:
        radial-gradient(circle at 88% 0%, rgba(217,164,65,.07), transparent 24rem),
        linear-gradient(180deg,#f8fafc 0%,var(--sd-bg) 100%) !important;
    color:var(--sd-ink);
    font-family:Inter,"Segoe UI",Arial,Helvetica,sans-serif !important;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

::selection{
    background:var(--sd-gold-200);
    color:var(--sd-navy-950);
}

/* ---------- LOGIN ---------- */
body:not(.dashboard-body){
    background:
        radial-gradient(circle at 20% 18%, rgba(237,196,108,.15), transparent 25rem),
        radial-gradient(circle at 82% 72%, rgba(45,103,199,.14), transparent 28rem),
        linear-gradient(145deg,#061426 0%,#0b2340 52%,#0e3155 100%) !important;
}

.login-page{
    position:relative;
    isolation:isolate;
    overflow:hidden;
}

.login-page::before,
.login-page::after{
    content:"";
    position:absolute;
    z-index:-1;
    border:1px solid rgba(237,196,108,.15);
    border-radius:50%;
}

.login-page::before{width:34rem;height:34rem;left:-15rem;top:-14rem;}
.login-page::after{width:25rem;height:25rem;right:-10rem;bottom:-12rem;}

.login-card{
    max-width:440px !important;
    padding:38px 36px 34px !important;
    border:1px solid rgba(255,255,255,.72);
    border-radius:26px !important;
    background:rgba(255,255,255,.97) !important;
    box-shadow:0 32px 90px rgba(0,0,0,.30) !important;
    backdrop-filter:blur(18px);
}

.login-card .brand{
    position:relative;
    padding-top:82px;
    margin-bottom:24px !important;
}

.login-card .brand::before{
    content:"";
    position:absolute;
    top:0;
    left:50%;
    width:66px;
    height:66px;
    transform:translateX(-50%);
    border-radius:20px;
    background:#081a31 url('/icons/icon-192.png') center/cover no-repeat;
    box-shadow:0 13px 30px rgba(7,24,45,.24), 0 0 0 5px #f7edcf;
}

.login-card .brand h1{
    color:var(--sd-navy-950) !important;
    font-size:29px !important;
    letter-spacing:-.7px;
}

.login-card .brand p{
    color:var(--sd-gold-600) !important;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:10px !important;
}

.admin-title{
    padding-top:22px;
    border-top:1px solid var(--sd-line);
}

.admin-title h2{color:var(--sd-ink) !important;font-size:23px !important;}
.admin-title p{color:var(--sd-muted) !important;}

.input-group label{
    color:#344054 !important;
    font-size:13px;
    font-weight:750 !important;
}

.input-group input,
.input-group select,
.input-group textarea,
.form-grid input,
.form-grid select,
.form-grid textarea,
select,
textarea{
    border:1px solid #d9dee7 !important;
    border-radius:11px !important;
    background:#fff !important;
    color:var(--sd-ink) !important;
    box-shadow:0 1px 2px rgba(16,24,40,.02);
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.input-group input:focus,
.input-group select:focus,
.input-group textarea:focus,
.form-grid input:focus,
.form-grid select:focus,
.form-grid textarea:focus,
select:focus,
textarea:focus{
    outline:none !important;
    border-color:var(--sd-gold-500) !important;
    box-shadow:0 0 0 4px rgba(217,164,65,.14) !important;
}

.login-btn,
.customer-save-btn,
.refresh-btn,
.invoice-main-btn,
.report-print-btn,
.enquiry-update-btn,
.add-detailed-item-btn{
    border:none !important;
    border-radius:11px !important;
    background:linear-gradient(135deg,var(--sd-navy-900),var(--sd-navy-800)) !important;
    color:#fff !important;
    box-shadow:0 8px 18px rgba(9,27,49,.16) !important;
    font-weight:750 !important;
    transition:transform .18s ease,box-shadow .18s ease,filter .18s ease !important;
}

.login-btn:hover,
.customer-save-btn:hover,
.refresh-btn:hover,
.invoice-main-btn:hover,
.report-print-btn:hover,
.enquiry-update-btn:hover,
.add-detailed-item-btn:hover{
    transform:translateY(-1px) !important;
    box-shadow:0 12px 24px rgba(9,27,49,.20) !important;
    filter:brightness(1.06);
}

.password-box button,
.back-link{color:var(--sd-gold-600) !important;}

/* ---------- APP SHELL ---------- */
.dashboard-layout{min-height:100vh;}

.sidebar,
.website-sidebar{
    width:var(--sd-sidebar) !important;
    padding:22px 16px 18px !important;
    border-right:1px solid rgba(255,255,255,.08);
    background:
        radial-gradient(circle at 20% 0%,rgba(237,196,108,.10),transparent 15rem),
        linear-gradient(180deg,var(--sd-navy-950) 0%,var(--sd-navy-900) 55%,#07182d 100%) !important;
    color:#fff;
    box-shadow:18px 0 44px rgba(7,20,38,.09);
    overflow-y:auto;
    scrollbar-width:thin;
    scrollbar-color:rgba(237,196,108,.35) transparent;
}

.sidebar-brand,
.website-sidebar-brand{
    position:relative;
    min-height:70px;
    padding:5px 8px 20px 70px !important;
    margin-bottom:8px;
    border-bottom:1px solid rgba(255,255,255,.08);
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.sidebar-brand::before,
.website-sidebar-brand::before{
    content:"";
    position:absolute;
    left:7px;
    top:2px;
    width:48px;
    height:48px;
    border-radius:15px;
    background:#081a31 url('/icons/icon-192.png') center/cover no-repeat;
    box-shadow:0 10px 25px rgba(0,0,0,.26),0 0 0 1px rgba(237,196,108,.25);
}

.sidebar-brand h2,
.website-sidebar-brand h2{
    margin:0 !important;
    color:#fff !important;
    font-size:18px !important;
    font-weight:800;
    letter-spacing:-.25px;
}

.sidebar-brand p,
.website-sidebar-brand p{
    margin-top:4px !important;
    color:var(--sd-gold-400) !important;
    font-size:9px !important;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.sidebar-menu,
.website-sidebar-menu{gap:4px !important;}

.sidebar-menu a,
.website-sidebar-menu a{
    position:relative;
    min-height:43px;
    padding:11px 12px 11px 42px !important;
    border-radius:11px !important;
    color:#c8d3e2 !important;
    font-size:13px;
    font-weight:650;
    letter-spacing:.01em;
    transition:background .16s ease,color .16s ease,transform .16s ease !important;
}

.sidebar-menu a::before,
.website-sidebar-menu a::before{
    position:absolute;
    left:14px;
    top:50%;
    width:18px;
    transform:translateY(-50%);
    color:#8fa1b9;
    font-size:14px;
    text-align:center;
    opacity:.96;
}

.sidebar-menu a[href*="dashboard"]::before,.sidebar-menu a[href="#"]::before{content:"◆";}
.sidebar-menu a[href*="customers"]::before{content:"●";}
.sidebar-menu a[href*="enquiries"]::before{content:"✦";}
.sidebar-menu a[href*="bookings"]::before{content:"▣";}
.sidebar-menu a[href*="inventory"]::before{content:"▦";}
.sidebar-menu a[href*="labour.html"]::before{content:"◉";}
.sidebar-menu a[href*="attendance"]::before{content:"✓";}
.sidebar-menu a[href*="labour-payments"]::before{content:"₹";}
.sidebar-menu a[href*="expenses"]::before{content:"−";}
.sidebar-menu a[href*="payments.html"]::before{content:"₹";}
.sidebar-menu a[href*="invoices"]::before{content:"▤";}
.sidebar-menu a[href*="reports"]::before{content:"▥";}
.website-sidebar-menu a[href*="notification"]::before{content:"●";}
.website-sidebar-menu a[href*="hero"]::before{content:"★";}
.website-sidebar-menu a[href*="gallery"]::before{content:"▧";}
.website-sidebar-menu a[href*="service"]::before{content:"◆";}
.website-sidebar-menu a[href*="contact"]::before{content:"☎";}
.website-sidebar-menu a[href*="admin"]::before{content:"⚙";}

.sidebar-menu a:hover,
.sidebar-menu a.active,
.website-sidebar-menu a:hover,
.website-sidebar-menu a.active{
    background:linear-gradient(90deg,rgba(217,164,65,.18),rgba(255,255,255,.06)) !important;
    color:#fff !important;
    transform:translateX(2px);
    box-shadow:inset 3px 0 0 var(--sd-gold-500);
}

.sidebar-menu a:hover::before,
.sidebar-menu a.active::before,
.website-sidebar-menu a:hover::before,
.website-sidebar-menu a.active::before{color:var(--sd-gold-400);}

.logout-btn,
.website-dashboard-link{
    margin-top:auto !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:11px !important;
    background:rgba(255,255,255,.06) !important;
    color:#eef3fa !important;
    box-shadow:none !important;
    font-weight:700;
}

.logout-btn:hover,
.website-dashboard-link:hover{
    background:rgba(255,255,255,.10) !important;
    border-color:rgba(237,196,108,.32) !important;
}

.dashboard-main{
    margin-left:var(--sd-sidebar) !important;
    padding:28px 30px 44px !important;
    min-width:0;
}

.website-control-page{
    margin-left:var(--sd-sidebar) !important;
    padding:28px 30px 44px !important;
    min-width:0;
}

/* ---------- TOP BAR ---------- */
.dashboard-topbar,
.website-control-header{
    position:relative;
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
    padding:0 0 20px !important;
    margin-bottom:24px !important;
    border-bottom:1px solid var(--sd-line);
}

.dashboard-topbar > div:first-child,
.website-control-header > div:first-child{margin-right:auto;}

.dashboard-topbar h1,
.website-control-header h1{
    color:var(--sd-navy-950) !important;
    font-size:29px !important;
    line-height:1.12;
    letter-spacing:-.75px;
    font-weight:820;
}

.dashboard-topbar p,
.website-control-header p{
    margin-top:6px !important;
    color:var(--sd-muted) !important;
    font-size:13px !important;
}

.admin-profile{
    min-height:42px;
    padding:0 16px !important;
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:1px solid var(--sd-line);
    border-radius:12px !important;
    background:#fff !important;
    color:var(--sd-navy-900);
    box-shadow:var(--sd-shadow-sm) !important;
    font-size:13px;
    font-weight:800;
}

.admin-profile::before{
    content:"A";
    width:27px;
    height:27px;
    border-radius:9px;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,var(--sd-gold-400),var(--sd-gold-600));
    color:var(--sd-navy-950);
    font-size:11px;
    font-weight:900;
}

.website-control-btn,
.website-back-btn,
.history-back-btn{
    min-height:42px;
    padding:0 15px !important;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    border:1px solid var(--sd-line) !important;
    border-radius:11px !important;
    background:#fff !important;
    color:var(--sd-navy-900) !important;
    box-shadow:var(--sd-shadow-sm) !important;
    text-decoration:none;
    font-size:13px;
    font-weight:750;
}

/* ---------- SUMMARY CARDS ---------- */
.dashboard-cards,
.inventory-summary,
.labour-summary,
.expense-summary,
.payment-summary,
.enquiry-summary,
.report-cards,
.attendance-summary,
.labour-payment-summary,
.labour-account-summary,
.labour-history-summary,
.fy-summary-grid{
    gap:15px !important;
}

.stat-card,
.inventory-summary-card,
.labour-summary-card,
.expense-summary-card,
.payment-summary-card,
.enquiry-summary-card,
.attendance-summary-card,
.labour-payment-card,
.labour-account-summary-card,
.labour-history-summary-card,
.fy-summary-card{
    position:relative;
    overflow:hidden;
    min-height:118px;
    padding:20px 20px 18px 20px !important;
    border:1px solid var(--sd-line) !important;
    border-radius:17px !important;
    background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%) !important;
    box-shadow:var(--sd-shadow-sm) !important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
}

.stat-card::after,
.inventory-summary-card::after,
.labour-summary-card::after,
.expense-summary-card::after,
.payment-summary-card::after,
.enquiry-summary-card::after,
.attendance-summary-card::after,
.labour-payment-card::after,
.labour-account-summary-card::after,
.labour-history-summary-card::after,
.fy-summary-card::after{
    content:"";
    position:absolute;
    right:-22px;
    top:-30px;
    width:86px;
    height:86px;
    border-radius:50%;
    background:rgba(217,164,65,.09);
}

.stat-card:hover,
.inventory-summary-card:hover,
.labour-summary-card:hover,
.expense-summary-card:hover,
.payment-summary-card:hover,
.enquiry-summary-card:hover,
.attendance-summary-card:hover,
.labour-payment-card:hover,
.labour-account-summary-card:hover,
.labour-history-summary-card:hover,
.fy-summary-card:hover{
    transform:translateY(-2px) !important;
    box-shadow:var(--sd-shadow-md) !important;
    border-color:#d9dfe8 !important;
}

.stat-card{border-top:3px solid var(--sd-gold-500) !important;}
.stat-card:nth-child(3n+2){border-top-color:#5b7fc6 !important;}
.stat-card:nth-child(3n){border-top-color:#4a9679 !important;}
.stat-card.profit-card{border-top-color:var(--sd-success) !important;border-left:1px solid var(--sd-line) !important;}

.stat-card span,
.inventory-summary-card span,
.labour-summary-card span,
.expense-summary-card span,
.payment-summary-card span,
.enquiry-summary-card span,
.attendance-summary-card span,
.labour-payment-card span,
.labour-account-summary-card span,
.labour-history-summary-card span,
.fy-summary-card span{
    color:var(--sd-muted) !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.stat-card h2,
.inventory-summary-card h3,
.labour-summary-card h3,
.expense-summary-card h3,
.payment-summary-card h3,
.enquiry-summary-card h3,
.attendance-summary-card h3,
.labour-payment-card h3,
.labour-account-summary-card h3,
.labour-history-summary-card h3,
.fy-summary-card h3{
    position:relative;
    z-index:1;
    color:var(--sd-navy-950) !important;
    letter-spacing:-.55px;
}

/* ---------- CONTENT PANELS ---------- */
.dashboard-box,
.customer-form-box,
.customer-list-box,
.booking-form-box,
.inventory-form-box,
.labour-form-box,
.labour-live-box,
.attendance-form-box,
.attendance-box,
.attendance-list-box,
.labour-payment-box,
.labour-payment-list-box,
.labour-history-box,
.expense-form-box,
.payment-booking-box,
.payment-form-box,
.report-section,
.enquiry-filter-box,
.website-notification-box,
.website-hero-box,
.website-services-box,
.website-contact-box,
.admin-settings-box,
.invoice-control-panel,
.invoice-gst-panel,
.signature-upload-panel,
.convert-booking-form{
    border:1px solid var(--sd-line) !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:var(--sd-shadow-sm) !important;
}

.dashboard-box{padding:21px !important;}
.dashboard-box h3,
.customer-list-header h2,
.form-section-title,
.report-section-heading h2,
.admin-settings-heading h2{
    color:var(--sd-navy-950) !important;
    letter-spacing:-.25px;
}

.dashboard-box h3{
    position:relative;
    padding-left:14px;
    margin-bottom:16px !important;
    font-size:16px !important;
}

.dashboard-box h3::before{
    content:"";
    position:absolute;
    left:0;
    top:.3em;
    width:4px;
    height:1em;
    border-radius:10px;
    background:var(--sd-gold-500);
}

.dashboard-list-item,
.report-list-item{
    border-bottom:1px solid #edf0f4 !important;
}

.dashboard-list-item:last-child,
.report-list-item:last-child{border-bottom:none !important;}

.empty-text,
.customer-message,
.labour-history-message{
    color:#8a95a5 !important;
}

/* ---------- TABLES ---------- */
.table-wrapper,
.report-table-wrapper,
.invoice-table-wrapper,
.booking-table-scroll,
.attendance-table-wrapper,
.labour-payment-table-wrapper,
.labour-history-table-wrapper{
    border:1px solid var(--sd-line);
    border-radius:13px;
    background:#fff;
    overflow:auto;
}

.customer-table,
.report-table,
.invoice-table,
.detailed-item-table,
.attendance-table,
.labour-payment-table,
.labour-history-table{
    border-collapse:separate !important;
    border-spacing:0 !important;
}

.customer-table th,
.report-table th,
.invoice-table th,
.detailed-item-table th,
.attendance-table th,
.labour-payment-table th,
.labour-history-table th{
    background:#f5f7fa !important;
    color:#475467 !important;
    border-bottom:1px solid #dfe4eb !important;
    font-size:10.5px !important;
    font-weight:850 !important;
    letter-spacing:.055em;
    text-transform:uppercase;
}

.customer-table td,
.report-table td,
.invoice-table td,
.detailed-item-table td,
.attendance-table td,
.labour-payment-table td,
.labour-history-table td{
    color:#344054 !important;
    border-bottom:1px solid #edf0f4 !important;
}

.customer-table tbody tr:hover,
.report-table tbody tr:hover,
.attendance-table tbody tr:hover,
.labour-payment-table tbody tr:hover,
.labour-history-table tbody tr:hover{
    background:#fbfcfd !important;
}

/* ---------- ACTION BUTTONS ---------- */
button,
.customer-table a,
.booking-actions button,
.inventory-actions button,
.labour-actions button,
.attendance-actions button,
.expense-action-buttons button,
.payment-action-buttons button,
.gallery-admin-actions button,
.notification-admin-actions button,
.service-admin-actions button{
    font-family:inherit;
}

.edit-customer-btn,
.inventory-edit-btn,
.labour-edit-btn,
.attendance-edit-btn,
.expense-edit-btn,
.payment-edit-btn,
.gallery-edit-btn,
.notification-edit-btn,
.service-edit-btn,
.booking-edit-btn{
    border-radius:8px !important;
    background:#eef4ff !important;
    color:#315da8 !important;
    border:1px solid #d8e5fb !important;
}

.delete-customer-btn,
.inventory-delete-btn,
.labour-delete-btn,
.attendance-delete-btn,
.expense-delete-btn,
.payment-delete-btn,
.gallery-delete-btn,
.notification-delete-btn,
.service-delete-btn,
.booking-delete-btn,
.booking-cancel-btn,
.signature-remove-btn{
    border-radius:8px !important;
    background:#fff1f2 !important;
    color:#b53745 !important;
    border:1px solid #f5d2d6 !important;
}

.status-badge,
.booking-status-badge,
.payment-type-badge,
.selected-fy-badge,
.gst-badge,
.linked-expense-badge{
    border-radius:999px !important;
    font-weight:800 !important;
    letter-spacing:.02em;
}

/* ---------- ENQUIRY / CONTENT CARDS ---------- */
.enquiry-card,
.gallery-admin-card,
.notification-admin-card,
.service-admin-card,
.booking-mode-card,
.check-card{
    border:1px solid var(--sd-line) !important;
    border-radius:15px !important;
    background:#fff !important;
    box-shadow:0 3px 12px rgba(15,23,42,.04) !important;
}

.enquiry-card:hover,
.gallery-admin-card:hover,
.notification-admin-card:hover,
.service-admin-card:hover{
    border-color:#d6dde7 !important;
    box-shadow:var(--sd-shadow-sm) !important;
}

/* ---------- WEBSITE CONTROL ---------- */
.website-control-grid{gap:16px !important;}
.website-control-card{
    border:1px solid var(--sd-line) !important;
    border-radius:17px !important;
    background:linear-gradient(180deg,#fff,#fbfcfe) !important;
    box-shadow:var(--sd-shadow-sm) !important;
}
.website-control-card:hover{box-shadow:var(--sd-shadow-md) !important;transform:translateY(-2px);}

/* ---------- MOBILE APP BAR + BOTTOM NAV ---------- */
.mobile-admin-bar{display:none;}
.mobile-admin-bottom-nav{display:none;}
.mobile-sidebar-overlay{backdrop-filter:blur(2px);}

@media(max-width:1100px) and (min-width:769px){
    :root{--sd-sidebar:236px;}
    .sidebar,.website-sidebar{padding-left:12px !important;padding-right:12px !important;}
    .sidebar-menu a,.website-sidebar-menu a{padding-left:38px !important;font-size:12px;}
    .dashboard-main,.website-control-page{padding-left:22px !important;padding-right:22px !important;}
    .dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}

@media(max-width:768px){
    body.dashboard-body{padding-top:64px !important;padding-bottom:70px !important;}

    .mobile-admin-bar{
        display:flex !important;
        position:fixed !important;
        left:0;right:0;top:0;
        z-index:1600;
        height:64px;
        padding:8px 14px;
        align-items:center;
        gap:11px;
        background:rgba(6,20,38,.96) !important;
        border-bottom:1px solid rgba(237,196,108,.18);
        box-shadow:0 7px 24px rgba(3,14,28,.18);
        backdrop-filter:blur(16px);
    }

    .mobile-menu-btn{
        width:42px !important;
        height:42px !important;
        flex:0 0 42px;
        border:1px solid rgba(255,255,255,.12) !important;
        border-radius:12px !important;
        background:rgba(255,255,255,.07) !important;
    }
    .mobile-menu-btn span{background:#fff !important;}
    .mobile-admin-brand strong{color:#fff !important;font-size:14px !important;}
    .mobile-admin-brand small{color:var(--sd-gold-400) !important;font-size:9px !important;letter-spacing:.08em;text-transform:uppercase;}

    .sidebar,.website-sidebar{
        width:min(86vw,300px) !important;
        z-index:1800 !important;
        transform:translateX(-104%);
        transition:transform .24s ease !important;
        box-shadow:28px 0 70px rgba(0,0,0,.34) !important;
    }
    .sidebar.mobile-open,.website-sidebar.mobile-open{transform:translateX(0) !important;}
    .mobile-sidebar-close{
        position:absolute;
        right:13px !important;
        top:13px !important;
        width:34px !important;
        height:34px !important;
        border:1px solid rgba(255,255,255,.12) !important;
        border-radius:10px !important;
        background:rgba(255,255,255,.07) !important;
        color:#fff !important;
        font-size:22px !important;
    }
    .sidebar-brand,.website-sidebar-brand{padding-right:40px !important;}

    .dashboard-main,
    .website-control-page{
        margin-left:0 !important;
        padding:18px 14px 28px !important;
        width:100% !important;
    }

    .dashboard-topbar,
    .website-control-header{
        align-items:flex-start !important;
        gap:10px !important;
        padding-bottom:16px !important;
        margin-bottom:18px !important;
    }
    .dashboard-topbar h1,.website-control-header h1{font-size:24px !important;}
    .dashboard-topbar p,.website-control-header p{font-size:12px !important;line-height:1.45;}
    .admin-profile{display:none !important;}
    .website-control-btn,.website-back-btn{min-height:40px;padding:0 12px !important;font-size:12px !important;}

    .dashboard-cards,
    .inventory-summary,
    .labour-summary,
    .expense-summary,
    .payment-summary,
    .enquiry-summary,
    .report-cards,
    .attendance-summary,
    .labour-payment-summary,
    .labour-account-summary,
    .labour-history-summary,
    .fy-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .stat-card,
    .inventory-summary-card,
    .labour-summary-card,
    .expense-summary-card,
    .payment-summary-card,
    .enquiry-summary-card,
    .attendance-summary-card,
    .labour-payment-card,
    .labour-account-summary-card,
    .labour-history-summary-card,
    .fy-summary-card{
        min-height:100px;
        padding:15px !important;
        border-radius:14px !important;
    }
    .stat-card h2{font-size:22px !important;}

    .dashboard-box,
    .customer-form-box,
    .customer-list-box,
    .booking-form-box,
    .inventory-form-box,
    .labour-form-box,
    .labour-live-box,
    .attendance-form-box,
    .attendance-box,
    .attendance-list-box,
    .labour-payment-box,
    .labour-payment-list-box,
    .labour-history-box,
    .expense-form-box,
    .payment-booking-box,
    .payment-form-box,
    .report-section,
    .enquiry-filter-box,
    .website-notification-box,
    .website-hero-box,
    .website-services-box,
    .website-contact-box,
    .admin-settings-box,
    .invoice-control-panel,
    .invoice-gst-panel,
    .signature-upload-panel,
    .convert-booking-form{
        border-radius:15px !important;
        box-shadow:0 4px 15px rgba(15,23,42,.05) !important;
    }

    .mobile-admin-bottom-nav{
        position:fixed;
        left:10px;
        right:10px;
        bottom:10px;
        z-index:1550;
        height:58px;
        padding:5px 6px max(5px,env(safe-area-inset-bottom));
        display:grid !important;
        grid-template-columns:repeat(4,1fr);
        gap:3px;
        border:1px solid rgba(255,255,255,.14);
        border-radius:18px;
        background:rgba(6,20,38,.96);
        box-shadow:0 12px 35px rgba(3,14,28,.28);
        backdrop-filter:blur(16px);
    }
    .mobile-bottom-link{
        appearance:none;
        border:0;
        border-radius:12px;
        background:transparent;
        color:#aebed2;
        text-decoration:none;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:2px;
        font-family:inherit;
        font-size:9px;
        font-weight:750;
        line-height:1.1;
        cursor:pointer;
    }
    .mobile-bottom-link::before{font-size:16px;line-height:1;}
    .mobile-bottom-link[data-nav="dashboard"]::before{content:"◆";}
    .mobile-bottom-link[data-nav="bookings"]::before{content:"▣";}
    .mobile-bottom-link[data-nav="customers"]::before{content:"●";}
    .mobile-bottom-link[data-nav="more"]::before{content:"☰";}
    .mobile-bottom-link.active{background:rgba(217,164,65,.15);color:var(--sd-gold-400);}

    .form-grid{grid-template-columns:1fr !important;}
    input,select,textarea{font-size:16px !important;} /* prevents iOS zoom */
}

@media(max-width:480px){
    .dashboard-main,.website-control-page{padding:14px 10px 26px !important;}
    .dashboard-cards,
    .inventory-summary,
    .labour-summary,
    .expense-summary,
    .payment-summary,
    .enquiry-summary,
    .report-cards,
    .attendance-summary,
    .labour-payment-summary,
    .labour-account-summary,
    .labour-history-summary,
    .fy-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .stat-card span,
    .inventory-summary-card span,
    .labour-summary-card span,
    .expense-summary-card span,
    .payment-summary-card span,
    .enquiry-summary-card span{font-size:9px !important;}
    .stat-card h2{font-size:19px !important;}
    .dashboard-topbar,.website-control-header{flex-wrap:wrap !important;}
    .website-control-btn,.website-back-btn{width:auto !important;}
}

@media(max-width:360px){
    .dashboard-cards,
    .inventory-summary,
    .labour-summary,
    .expense-summary,
    .payment-summary,
    .enquiry-summary,
    .report-cards,
    .attendance-summary,
    .labour-payment-summary,
    .labour-account-summary,
    .labour-history-summary,
    .fy-summary-grid{grid-template-columns:1fr !important;}
}

@media print{
    body,
    body.dashboard-body{background:#fff !important;padding:0 !important;}
    .mobile-admin-bar,.mobile-admin-bottom-nav,.mobile-sidebar-overlay{display:none !important;}
    .invoice-paper,.report-section{box-shadow:none !important;}
}


/* ============================================================
   MOBILE HOTFIX — 2026-08-23
   Resolves premium/base CSS conflicts on narrow admin screens.
============================================================ */
@media(max-width:768px){
    body.dashboard-body{
        padding-bottom:calc(82px + env(safe-area-inset-bottom)) !important;
    }

    .mobile-sidebar-overlay{
        z-index:2400 !important;
    }

    .sidebar,
    .website-sidebar{
        z-index:2500 !important;
    }

    .mobile-admin-bottom-nav{
        height:auto !important;
        min-height:58px !important;
        bottom:max(8px, env(safe-area-inset-bottom)) !important;
    }

    .dashboard-main,
    .website-control-page,
    .dashboard-box,
    .customer-form-box,
    .customer-list-box,
    .booking-form-box,
    .inventory-form-box,
    .labour-form-box,
    .expense-form-box,
    .payment-booking-box,
    .payment-form-box,
    .report-section,
    .invoice-control-panel{
        min-width:0 !important;
        max-width:100% !important;
    }
}

@media(max-width:480px){
    .dashboard-cards,
    .inventory-summary,
    .labour-summary,
    .expense-summary,
    .payment-summary,
    .enquiry-summary,
    .report-cards,
    .attendance-summary,
    .labour-payment-summary,
    .labour-account-summary,
    .labour-history-summary,
    .fy-summary-grid{
        grid-template-columns:minmax(0,1fr) !important;
    }

    .dashboard-main,
    .website-control-page{
        padding:14px 10px 26px !important;
    }

    .dashboard-topbar,
    .website-control-header{
        flex-direction:column !important;
        align-items:stretch !important;
        width:100% !important;
    }

    .dashboard-topbar > div:first-child,
    .website-control-header > div:first-child{
        width:100% !important;
        margin-right:0 !important;
    }

    .website-control-btn,
    .website-back-btn{
        width:100% !important;
    }

    .stat-card,
    .inventory-summary-card,
    .labour-summary-card,
    .expense-summary-card,
    .payment-summary-card,
    .enquiry-summary-card,
    .attendance-summary-card,
    .labour-payment-card,
    .labour-account-summary-card,
    .labour-history-summary-card,
    .fy-summary-card{
        min-height:0 !important;
    }
}
