:root{--bg:#f4f7fb;--card:#fff;--text:#182033;--muted:#6b7280;--primary:#5b63f6;--border:#e7eaf1;--danger:#dc2626;--ok:#0f9f6e}
*{box-sizing:border-box}body{margin:0;font-family:'Kantumruy Pro',sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:250px;background:#111827;color:#fff;padding:24px 16px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}.brand{font-size:25px;font-weight:700;padding:0 10px 24px}.brand span{color:#9ca3ff}.sidebar nav{display:grid;gap:8px}.sidebar nav a,.logout{padding:12px 14px;border-radius:14px}.sidebar nav a:hover{background:#1f2937}.logout{margin-top:auto;background:#7f1d1d}.main{margin-left:250px;width:calc(100% - 250px)}.topbar{height:72px;background:#ffffffcc;backdrop-filter:blur(14px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:5}.content{padding:24px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:var(--card);border:1px solid var(--border);border-radius:22px;padding:20px;box-shadow:0 8px 30px rgba(15,23,42,.05)}.metric{font-size:28px;font-weight:700;margin-top:6px}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;padding:11px 16px;font:inherit;cursor:pointer;background:var(--primary);color:white}.btn.secondary{background:#e8eaff;color:#3730a3}.btn.danger{background:var(--danger)}.toolbar{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.input,.select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#fff;font:inherit}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group label{display:block;margin-bottom:7px;font-weight:600}.table-wrap{overflow:auto;background:white;border:1px solid var(--border);border-radius:20px}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:13px 14px;border-bottom:1px solid var(--border);text-align:left}th{background:#f8fafc}.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:13px}.badge.ok{background:#ecfdf5;color:#047857}.badge.warn{background:#fff7ed;color:#c2410c}.alert{padding:12px 14px;border-radius:14px;margin-bottom:16px;background:#ecfdf5;color:#065f46}.actions{display:flex;gap:8px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.summary .card{padding:15px}
@media(max-width:900px){.sidebar{width:78px;padding:18px 10px}.brand{font-size:0}.brand:before{content:'LS';font-size:22px}.sidebar nav a,.logout{font-size:0;text-align:center}.sidebar nav a:before{content:'•';font-size:24px}.logout:before{content:'↪';font-size:22px}.main{margin-left:78px;width:calc(100% - 78px)}.grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}}
@media(max-width:560px){.content{padding:14px}.grid,.summary{grid-template-columns:1fr}.topbar{padding:0 14px}.main{margin-left:0;width:100%;padding-bottom:72px}.sidebar{width:100%;height:68px;top:auto;bottom:0;flex-direction:row;align-items:center;z-index:10}.brand,.logout{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);width:100%;gap:5px}.sidebar nav a{padding:10px}.sidebar nav a:before{content:'●';font-size:18px}}
.actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.search{display:flex;gap:8px;flex-wrap:wrap}.btn.secondary{background:#eef1f7;color:#202531}.badge.danger,.alert{background:#ffe3e7;color:#b42335}.alert,.success{padding:12px 14px;border-radius:14px;margin-bottom:16px}.success{background:#ddf7e7;color:#146c3c}.invoice{max-width:900px;margin:auto;background:#fff}.invoice-head,.invoice-meta,.invoice-totals,.signature{display:flex;justify-content:space-between;gap:30px}.invoice-title{text-align:right}.invoice-table{margin-top:28px;width:100%}.invoice-totals{margin-top:20px}.invoice-totals>div:last-child{min-width:330px;text-align:right}.invoice-totals p{display:flex;justify-content:space-between;gap:30px}.invoice-totals .grand{font-size:1.2rem;border-top:1px solid #ddd;padding-top:10px}.signature{margin-top:60px;text-align:center}.signature>div{width:40%}@media print{.sidebar,.topbar,.no-print{display:none!important}.main,.content{margin:0!important;padding:0!important}.invoice{box-shadow:none;border:0;max-width:none}.app-shell{display:block}}@media(max-width:700px){.invoice-head,.invoice-meta,.invoice-totals{display:block}.invoice-title{text-align:left;margin-top:20px}.invoice-totals>div:last-child{min-width:0}.actions{align-items:stretch}.actions .btn{width:100%;text-align:center}}

/* ===== Professional A4 Invoice V2 ===== */
.invoice-toolbar{max-width:210mm;margin:0 auto 16px;display:flex;justify-content:space-between;gap:12px}
.invoice-sheet{width:min(210mm,100%);min-height:297mm;margin:0 auto;background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 18px 55px rgba(15,23,42,.10);padding:16mm 15mm;color:#172033;position:relative;overflow:hidden}
.invoice-sheet:before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:linear-gradient(90deg,#4f46e5,#7c3aed,#ec4899)}
.invoice-brand-row{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding-bottom:14px;border-bottom:2px solid #eef0f5}
.invoice-brand-block{display:flex;gap:14px;align-items:center}.invoice-logo{width:58px;height:58px;border-radius:18px;background:#111827;color:white;display:grid;place-items:center;font-size:24px;font-weight:800;letter-spacing:.5px;box-shadow:0 8px 20px rgba(17,24,39,.18)}
.business-name{font-size:21px;margin:0 0 4px;color:#111827}.invoice-brand-block p{margin:2px 0;color:#667085;font-size:12.5px}
.invoice-heading{text-align:right}.invoice-kicker{font-size:11px;font-weight:800;letter-spacing:3px;color:#7c3aed}.invoice-heading h2{font-size:30px;margin:2px 0 5px;color:#111827}.invoice-number{display:inline-block;padding:5px 11px;border-radius:999px;background:#f2f0ff;color:#5145cd;font-size:12px;font-weight:700}
.invoice-info-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:16px;margin-top:18px}.info-panel{background:#f8fafc;border:1px solid #edf0f4;border-radius:14px;padding:14px}.info-label{display:block;font-size:11px;text-transform:uppercase;color:#7c3aed;font-weight:700;margin-bottom:5px}.info-panel>strong{font-size:16px}.info-panel p{margin:4px 0;color:#667085;font-size:12.5px}.invoice-dates{display:grid;gap:8px}.invoice-dates div{display:flex;justify-content:space-between;gap:15px}.invoice-dates span{color:#667085;font-size:12px}.invoice-dates strong{font-size:12.5px;text-align:right}
.couple-strip{margin:14px 0 18px;padding:11px 16px;border-radius:14px;background:linear-gradient(135deg,#fff7fb,#f5f3ff);border:1px solid #f0e8f6;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center}.couple-strip span{display:block;color:#7d6b82;font-size:11px}.couple-strip strong{font-size:15px}.couple-strip .heart{font-size:18px;color:#ec4899;padding:0 18px}
.invoice-items-wrap{border:1px solid #e8ebf1;border-radius:14px;overflow:hidden}.invoice-items{min-width:0;margin:0}.invoice-items th{background:#111827;color:white;border:0;font-size:12px;padding:11px 12px}.invoice-items td{padding:15px 12px;border-bottom:0;vertical-align:top;font-size:13px}.invoice-items td small{display:block;color:#777f90;margin-top:4px}.invoice-items .num{text-align:right;white-space:nowrap}.invoice-items .col-no{width:48px;text-align:center}
.invoice-summary-area{display:grid;grid-template-columns:1fr 310px;gap:24px;margin-top:20px;align-items:start}.invoice-note h3{margin:0 0 6px;font-size:14px}.invoice-note p{font-size:12px;line-height:1.65;color:#667085;margin:0 0 8px}.invoice-note .exchange-rate{font-weight:700;color:#5145cd}.totals-box{border:1px solid #e7e8ef;border-radius:15px;overflow:hidden;background:#fff}.totals-box>div{display:flex;justify-content:space-between;gap:20px;padding:8px 13px;border-bottom:1px dashed #e7e8ef;font-size:12.5px}.totals-box>div:last-child{border-bottom:0}.totals-box span{color:#667085}.totals-box strong{white-space:nowrap}.totals-box .balance-row{background:#111827;color:#fff;padding-top:11px;padding-bottom:5px;border:0}.totals-box .balance-row span{color:#d1d5db}.totals-box .balance-row strong{font-size:18px}.totals-box .balance-khr{background:#111827;color:#fff;padding-top:2px;padding-bottom:11px;border:0}.totals-box .balance-khr strong{font-size:13px;color:#d8d5ff}
.invoice-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:end;margin-top:54px;text-align:center}.signature-line{border-top:1px solid #9ca3af;margin-bottom:8px}.signature-box strong{font-size:12px}.thanks strong{display:block;color:#5145cd;font-size:18px}.thanks span{font-size:10px;color:#8a93a3}.payment-card,.invoice-profit-grid{max-width:210mm;margin:18px auto 0}.invoice-profit-grid{grid-template-columns:repeat(2,1fr)}

@media(max-width:700px){.invoice-sheet{min-height:0;padding:24px 16px;border-radius:14px}.invoice-brand-row{display:block}.invoice-heading{text-align:left;margin-top:18px}.invoice-info-grid,.invoice-summary-area{grid-template-columns:1fr}.invoice-summary-area{gap:16px}.invoice-footer{grid-template-columns:1fr 1fr;margin-top:36px}.invoice-footer .thanks{grid-column:1/-1;grid-row:1}.couple-strip{grid-template-columns:1fr}.couple-strip .heart{padding:5px}.invoice-items{font-size:12px}.invoice-items th,.invoice-items td{padding:10px 7px}}

@page{size:A4 portrait;margin:0}
@media print{
  html,body{width:210mm!important;min-height:297mm!important;margin:0!important;padding:0!important;background:#fff!important}
  body *{visibility:hidden!important}
  .invoice-sheet,.invoice-sheet *{visibility:visible!important}
  .invoice-sheet{position:absolute!important;left:0!important;top:0!important;width:210mm!important;min-height:297mm!important;margin:0!important;padding:14mm 14mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important}
  .sidebar,.topbar,.no-print,.invoice-toolbar,.payment-card,.invoice-profit-grid{display:none!important}
  .app-shell,.main,.content{display:block!important;width:100%!important;min-height:0!important;margin:0!important;padding:0!important}
  .invoice-brand-row{padding-bottom:11px}.invoice-info-grid{margin-top:14px}.couple-strip{margin:11px 0 14px}.invoice-summary-area{margin-top:16px}.invoice-footer{margin-top:42px}
  .invoice-sheet{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
}

/* ===== Invoice V3 clean professional layout ===== */
.invoice-sheet{max-width:210mm;min-height:297mm;margin:0 auto;background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 18px 55px rgba(15,23,42,.09);padding:15mm 16mm;color:#172033;font-family:'Kantumruy Pro',sans-serif}
.invoice-brand-row{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #202a44;padding-bottom:14px}
.invoice-brand-block{display:flex;align-items:center;gap:14px}.invoice-logo{width:54px;height:54px;border-radius:14px;background:#202a44;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:800;letter-spacing:.5px}.business-name{font-size:22px;margin:0 0 5px}.invoice-brand-block p{margin:2px 0;color:#667085;font-size:12px}.invoice-heading{text-align:right}.invoice-kicker{font-size:11px;letter-spacing:2px;color:#667085;font-weight:700}.invoice-heading h2{font-size:27px;margin:2px 0;color:#202a44}.invoice-number{font-weight:700;font-size:12px;background:#eef2ff;padding:6px 10px;border-radius:8px;display:inline-block}
.invoice-info-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:16px}.info-panel{border:1px solid #e5e7eb;border-radius:12px;padding:13px 15px;background:#fbfcfe}.info-label{display:block;color:#667085;font-size:10px;text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px}.info-panel strong{font-size:15px}.info-panel p{font-size:11px;margin:4px 0;color:#475467}.invoice-dates>div{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed #e5e7eb}.invoice-dates>div:last-child{border-bottom:0}.invoice-dates span{font-size:10.5px;color:#667085}.invoice-dates strong{font-size:11px}
.couple-strip{display:grid;grid-template-columns:1fr 35px 1fr;align-items:center;border-radius:12px;background:#202a44;color:#fff;margin:14px 0;padding:10px 14px;text-align:center}.couple-strip span{display:block;font-size:10px;color:#cbd5e1}.couple-strip strong{font-size:14px}.couple-strip .heart{font-size:15px;color:#fda4af}
.invoice-items-wrap{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.invoice-items{min-width:0!important;width:100%;font-size:11.5px}.invoice-items thead th{background:#f1f4f9;color:#344054;font-size:10.5px;text-transform:none;padding:10px 9px}.invoice-items td{padding:13px 9px;border-bottom:0}.invoice-items .col-no{width:42px;text-align:center}.invoice-items .num{text-align:right;white-space:nowrap}.invoice-items small{display:block;color:#667085;margin-top:4px}
.invoice-summary-area{display:grid;grid-template-columns:1fr 300px;gap:20px;margin-top:16px;align-items:start}.invoice-note{padding:8px 2px}.invoice-note h3{font-size:12px;margin:0 0 5px}.invoice-note p{font-size:10.5px;color:#667085;line-height:1.6;margin:0 0 5px}.invoice-note .exchange-rate{font-weight:700;color:#202a44}.totals-box{border:1px solid #dfe3ea;border-radius:12px;overflow:hidden}.totals-box>div{display:flex;justify-content:space-between;padding:7px 12px;border-bottom:1px solid #edf0f4;font-size:11px}.totals-box span{color:#667085}.totals-box strong{white-space:nowrap}.totals-box .balance-row{background:#202a44;color:#fff;border:0;padding:10px 12px 4px}.totals-box .balance-row span{color:#dbe4f0}.totals-box .balance-row strong{font-size:18px}.totals-box .balance-khr{background:#202a44;color:#fff;border:0;padding:2px 12px 10px}.totals-box .balance-khr strong{font-size:12px;color:#e0e7ff}
.invoice-footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:28px;margin-top:50px;text-align:center}.signature-line{border-top:1px solid #98a2b3;margin-bottom:7px}.signature-box strong{font-size:10.5px}.thanks strong{display:block;color:#202a44;font-size:17px}.thanks span{font-size:9px;color:#98a2b3}
@media(max-width:700px){.invoice-sheet{padding:22px 15px;min-height:auto}.invoice-brand-row{gap:12px}.invoice-logo{width:45px;height:45px}.business-name{font-size:17px}.invoice-heading h2{font-size:21px}.invoice-info-grid,.invoice-summary-area{grid-template-columns:1fr}.invoice-footer{grid-template-columns:1fr 1fr}.invoice-footer .thanks{grid-column:1/-1;grid-row:1}.couple-strip{grid-template-columns:1fr 25px 1fr}.invoice-items{font-size:10.5px}.invoice-items thead th,.invoice-items td{padding:8px 5px}}
@page{size:A4 portrait;margin:8mm}
@media print{html,body{width:auto!important;min-height:auto!important;background:#fff!important}.invoice-sheet{position:static!important;width:194mm!important;min-height:281mm!important;margin:0 auto!important;padding:10mm 11mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}.invoice-brand-row{padding-bottom:10px}.invoice-info-grid{margin-top:12px}.couple-strip{margin:10px 0}.invoice-summary-area{margin-top:12px}.invoice-footer{margin-top:38px}.invoice-items-wrap{break-inside:avoid}.invoice-summary-area,.invoice-footer{break-inside:avoid}}

/* V2.2 customer history, order actions, KHR-first pricing */
.clickable-row{cursor:pointer;transition:background .18s ease}.clickable-row:hover{background:#f7f8ff}
.action-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.action-group form{margin:0}
.btn.small{padding:8px 12px;border-radius:12px;font-size:13px}.btn.danger{background:#e5484d;color:#fff;border-color:#e5484d}
.block-muted{display:block;color:#7a8497;margin-top:3px;font-size:12px}.empty-state{text-align:center;padding:36px!important;color:#8a93a4}
.customer-profile{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:22px;align-items:center}.customer-profile h2{margin:5px 0 0}.section-title{margin:24px 0 12px}
.currency-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;margin-bottom:18px;border-radius:16px;background:#f1f3ff;color:#303a78}.success{padding:14px 16px;border-radius:14px;background:#e9f8ef;color:#18794e;margin-bottom:16px}
.invoice-toolbar{justify-content:space-between}.invoice-toolbar>.action-group{margin-left:auto}
@media(max-width:900px){.customer-profile{grid-template-columns:1fr 1fr}.invoice-toolbar{align-items:flex-start;gap:12px}.invoice-toolbar>.action-group{margin-left:0}}
@media(max-width:600px){.customer-profile{grid-template-columns:1fr}.currency-banner{align-items:flex-start;flex-direction:column}.action-group{gap:6px}.btn.small{padding:7px 9px}}

/* V2.5: Khmer riel is the primary invoice currency */
.invoice-items .usd-equivalent{display:block;margin-top:3px;font-size:10px;font-weight:500;color:#8a94a8;line-height:1.2}
.totals-box .balance-row strong{font-size:22px}
.totals-box .balance-khr{background:#eef2ff;color:#35405c}
.totals-box .balance-khr strong{font-size:13px}
@media print{.invoice-items .usd-equivalent{font-size:8.5px;color:#7b8496}.totals-box .balance-row strong{font-size:18px}}

/* ===== V2.6 customers, account settings and mobile polish ===== */
.form-card{max-width:980px}.full-span{grid-column:1/-1}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.customer-toolbar{align-items:center}.customer-notes{grid-column:1/-1;border-top:1px solid var(--border);padding-top:14px}.customer-notes p{margin:5px 0 0;line-height:1.7}.search-form{width:min(420px,100%)}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.card-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-heading h2{margin:3px 0 0;font-size:20px}.eyebrow{font-size:11px;letter-spacing:1.4px;color:var(--primary);font-weight:700}.form-submit{margin-top:18px}.form-help{color:var(--muted);font-size:13px;line-height:1.6;margin:14px 0 0}
@media(max-width:1000px){.settings-grid{grid-template-columns:1fr}}
@media(max-width:700px){
  .content{padding:14px 12px 88px}.topbar{height:62px;padding:0 14px}.topbar>div:last-child{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
  .toolbar.customer-toolbar{display:grid;grid-template-columns:auto 1fr}.customer-toolbar>.action-group{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.customer-toolbar>.action-group form{grid-column:1/-1}.customer-toolbar .btn{width:100%}
  .customer-profile{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px}.customer-profile .customer-name{grid-column:1/-1}.customer-profile h2{font-size:26px}.customer-profile strong{display:block;margin-top:4px;overflow-wrap:anywhere}.customer-notes{grid-column:1/-1}
  .customer-orders.table-wrap,.responsive-table.table-wrap{overflow:visible;background:transparent;border:0;border-radius:0}.customer-orders table,.responsive-table table{min-width:0;width:100%;display:block}.customer-orders thead,.responsive-table thead{display:none}.customer-orders tbody,.responsive-table tbody{display:grid;gap:12px}.customer-orders tr,.responsive-table tr{display:grid;background:#fff;border:1px solid var(--border);border-radius:18px;padding:13px 14px;box-shadow:0 7px 22px rgba(15,23,42,.05)}.customer-orders td,.responsive-table td{display:grid;grid-template-columns:115px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px dashed var(--border);text-align:right;align-items:start;overflow-wrap:anywhere}.customer-orders td:last-child,.responsive-table td:last-child{border-bottom:0}.customer-orders td:before,.responsive-table td:before{content:attr(data-label);font-weight:600;color:var(--muted);text-align:left}.customer-orders td[data-label="លេខ Order"],.responsive-table td[data-label="ឈ្មោះ"]{font-size:16px}.customer-orders .action-group,.responsive-table .action-group{justify-content:flex-end}.customer-orders .empty-state,.responsive-table .empty-state{display:block;text-align:center!important}.customer-orders .empty-state:before,.responsive-table .empty-state:before{display:none}
  .settings-grid .card{padding:18px}.settings-grid .form-grid{grid-template-columns:1fr}.full-span{grid-column:auto}
  .sidebar{height:74px;padding:8px 8px 7px;background:#111827}.sidebar nav{display:flex!important;grid-template-columns:none!important;gap:6px;overflow-x:auto;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav a{font-size:11px!important;min-width:78px;padding:7px 8px!important;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.25;white-space:normal;background:#172033}.sidebar nav a:before{display:none!important}.sidebar nav a:hover{background:#273249}.main{padding-bottom:74px}
}
@media(max-width:430px){.customer-profile{grid-template-columns:1fr}.customer-profile .customer-name{grid-column:auto}.customer-toolbar>.action-group{grid-template-columns:1fr}.customer-toolbar>.action-group form{grid-column:auto}.customer-orders td,.responsive-table td{grid-template-columns:98px minmax(0,1fr)}.topbar strong{font-size:15px}}

/* ===== V2.7 Wedding detail form ===== */
.wedding-detail-card{margin-top:20px;padding:24px}.wedding-form-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--border)}.wedding-form-header h2{margin:4px 0 6px;font-size:24px}.wedding-form-header p{margin:0;line-height:1.6}.detail-status{padding:7px 12px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700;white-space:nowrap}.wedding-detail-form{margin-top:20px}.invitation-type-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid #dfe6f4;border-radius:17px;background:#f8fbff}.check-pill{display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #dbe3f3;cursor:pointer}.check-pill input{width:17px;height:17px;accent-color:var(--primary)}.couple-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.person-panel{min-width:0;border:1px solid #dce5f6;border-radius:20px;padding:18px;background:linear-gradient(180deg,#fff,#fbfdff)}.person-panel legend{padding:8px 15px;border-radius:999px;background:#1769e8;color:#fff;font-weight:700;box-shadow:0 7px 18px rgba(23,105,232,.2)}.bride-panel legend{background:#ef4b91}.person-panel label{display:grid;grid-template-columns:105px 1fr;align-items:center;gap:10px;margin:10px 0;color:#526079}.person-panel .input{border:0;border-bottom:2px dotted #94b7f8;border-radius:0;background:transparent;padding:9px 4px}.person-panel .person-main{color:#e83d87;font-weight:700}.event-sections{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.event-panel{border:1px solid var(--border);border-radius:18px;padding:18px;background:#fff}.event-panel h3{margin:0 0 14px;color:#153e95}.location-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.wedding-notes{min-height:130px;resize:vertical}.wedding-form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
@media(max-width:900px){.couple-form-grid,.event-sections{grid-template-columns:1fr}.location-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wedding-detail-card{padding:16px;margin-left:0;margin-right:0}.wedding-form-header{display:block}.detail-status{display:inline-block;margin-top:12px}.invitation-type-row{align-items:stretch}.invitation-type-row>strong{width:100%}.check-pill{flex:1 1 calc(50% - 8px)}.person-panel{padding:15px 12px}.person-panel label{grid-template-columns:88px minmax(0,1fr);font-size:14px}.location-grid{grid-template-columns:1fr}.event-panel .form-grid{grid-template-columns:1fr}.wedding-form-actions .btn{width:100%}}

/* ===== V2.8 Live production status dashboard ===== */
.production-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:18px}.production-head h1{margin:4px 0 7px;font-size:30px}.production-head p{margin:0;max-width:760px;line-height:1.65}.production-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.live-dot{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:13px;font-weight:700}.live-dot i{width:9px;height:9px;border-radius:50%;background:#10b981;box-shadow:0 0 0 5px rgba(16,185,129,.13);animation:livePulse 1.8s infinite}@keyframes livePulse{50%{box-shadow:0 0 0 9px rgba(16,185,129,0)}}
.production-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}.production-stat{background:#fff;border:1px solid var(--border);border-radius:18px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;box-shadow:0 7px 24px rgba(15,23,42,.04)}.production-stat span{font-size:13px;color:var(--muted)}.production-stat strong{font-size:25px}.production-stat.waiting{border-left:5px solid #94a3b8}.production-stat.designing{border-left:5px solid #8b5cf6}.production-stat.approval{border-left:5px solid #f59e0b}.production-stat.printing{border-left:5px solid #0ea5e9}.production-stat.total{border-left:5px solid #10b981}
.production-board{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));gap:14px;align-items:start;overflow-x:auto;padding-bottom:10px}.production-column{background:#edf1f7;border:1px solid #e0e6ef;border-radius:20px;min-width:270px;overflow:hidden}.production-column>header{display:flex;justify-content:space-between;align-items:center;padding:14px 15px;background:#fff;border-bottom:1px solid var(--border)}.production-column>header>div{display:flex;align-items:center;gap:9px}.production-column>header b{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#eef2ff;color:#4338ca}.column-dot{width:10px;height:10px;border-radius:50%;background:#94a3b8}.production-column.designing .column-dot{background:#8b5cf6}.production-column.approval .column-dot{background:#f59e0b}.production-column.printing .column-dot{background:#0ea5e9}.production-list{display:grid;gap:11px;padding:11px;max-height:calc(100vh - 310px);overflow-y:auto}.job-card{background:#fff;border:1px solid #e5e9f0;border-radius:17px;padding:14px;box-shadow:0 5px 17px rgba(15,23,42,.05)}.job-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.job-top small{color:#667085;font-weight:600}.job-top h3{margin:4px 0 0;font-size:18px}.qty-badge{white-space:nowrap;padding:6px 9px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700}.job-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed #e1e6ee}.job-detail-grid span{display:block;color:#8a94a5;font-size:11px}.job-detail-grid strong{display:block;margin-top:3px;font-size:13px;overflow-wrap:anywhere}.job-note{padding:9px 10px;border-radius:11px;background:#fff7ed;color:#9a3412;font-size:12px;line-height:1.55}.job-actions{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:13px}.job-actions form{margin:0}.status-select{padding:8px 10px;border-radius:11px;font-size:12px}.column-empty{padding:28px 10px;text-align:center;color:#94a3b8}.production-empty{text-align:center;padding:60px 20px}.production-empty-icon{width:70px;height:70px;margin:0 auto 15px;display:grid;place-items:center;border-radius:50%;background:#dcfce7;color:#15803d;font-size:34px;font-weight:700}.production-empty h2{margin:0 0 7px}
@media(max-width:1200px){.production-stats{grid-template-columns:repeat(3,1fr)}.production-board{grid-template-columns:repeat(2,minmax(290px,1fr))}.production-list{max-height:none}}
@media(max-width:700px){.production-head{display:block}.production-head h1{font-size:25px}.production-tools{margin-top:14px}.production-stats{grid-template-columns:1fr 1fr}.production-board{display:grid;grid-template-columns:1fr;overflow:visible}.production-column{min-width:0}.production-list{max-height:none}.job-actions{grid-template-columns:1fr}.job-actions .btn{width:100%}}
@media(max-width:420px){.production-stats{grid-template-columns:1fr}.job-detail-grid{grid-template-columns:1fr 1fr}}

/* ===== V3.3 Simplified invitation detail ===== */
.wedding-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.single-choice .custom-event-input{flex:1 1 220px;min-width:210px}.single-choice input[type="radio"]{width:17px;height:17px;accent-color:var(--primary)}.event-sections.single-event{grid-template-columns:1fr}.wedding-form-header+.success{margin-top:14px}#weddingFormBody.is-hidden{display:none}
@media(max-width:700px){.wedding-header-actions{justify-content:flex-start;margin-top:12px}.single-choice .check-pill{flex:1 1 calc(50% - 8px)}.single-choice .custom-event-input{flex-basis:100%}}

/* V3.4 ceremony side and Khmer date */
.side-choice{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.khmer-date-preview{display:block;margin-top:7px;color:#315efb;font-weight:700;min-height:20px}.event-panel select.input{appearance:auto}@media(max-width:640px){.side-choice .check-pill{flex:1;justify-content:center;min-width:140px}}

/* V3.7 dashboard expense details */
.dashboard-card-link{display:block;color:inherit;text-decoration:none;position:relative;transition:transform .18s ease,box-shadow .18s ease}
.dashboard-card-link:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(15,23,42,.10)}
.card-link-hint{display:block;margin-top:10px;font-size:.82rem;color:#5965f2;font-weight:700}
.expense-total-card{background:linear-gradient(135deg,#17213b,#27345d);color:#fff}
.expense-total-card .muted{color:#dbe2ff}
.expense-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.expense-summary-grid{margin-bottom:26px}
@media(max-width:700px){
 .expense-filter{width:100%}.expense-filter .input{min-width:0;flex:1 1 135px}
 .expense-table table,.expense-table thead,.expense-table tbody,.expense-table tr,.expense-table th,.expense-table td{display:block}
 .expense-table thead{display:none}.expense-table tr{padding:14px;border-bottom:1px solid #e5e7eb}
 .expense-table td{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border:0;text-align:right}
 .expense-table td:before{font-weight:700;color:#64748b;text-align:left}
 .expense-table td:nth-child(1):before{content:'ថ្ងៃ'}.expense-table td:nth-child(2):before{content:'លេខ Order'}.expense-table td:nth-child(3):before{content:'អតិថិជន'}.expense-table td:nth-child(4):before{content:'ម៉ូត'}.expense-table td:nth-child(5):before{content:'ថ្លៃធៀប'}.expense-table td:nth-child(6):before{content:'ថ្លៃថង់'}.expense-table td:nth-child(7):before{content:'ដឹកចូល'}.expense-table td:nth-child(8):before{content:'ដឹកចេញ'}.expense-table td:nth-child(9):before{content:'សរុប'}
}

/* ===== V3.8 Finance report fix + edit/delete ===== */
.finance-summary-grid{grid-template-columns:repeat(3,1fr);margin-bottom:28px}.finance-profit-card{background:linear-gradient(135deg,#075985,#0f766e);color:#fff}.finance-loss-card{background:linear-gradient(135deg,#991b1b,#be123c);color:#fff}.finance-profit-card .muted,.finance-loss-card .muted{color:#dbeafe}.section-title-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px}.section-title-actions h3{margin:0}.row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.row-actions form{margin:0}.row-actions .btn{padding:8px 12px;border-radius:11px}.finance-filter{align-items:center}
@media(max-width:900px){.finance-summary-grid{grid-template-columns:1fr 1fr}.finance-summary-grid .card:last-child{grid-column:1/-1}}
@media(max-width:700px){.finance-summary-grid{grid-template-columns:1fr}.finance-summary-grid .card:last-child{grid-column:auto}.finance-filter{width:100%}.finance-filter .input{flex:1 1 135px}.section-title-actions{align-items:stretch}.section-title-actions .btn{width:auto}.finance-order-table table,.finance-order-table thead,.finance-order-table tbody,.finance-order-table tr,.finance-order-table th,.finance-order-table td,.finance-transaction-table table,.finance-transaction-table thead,.finance-transaction-table tbody,.finance-transaction-table tr,.finance-transaction-table th,.finance-transaction-table td{display:block}.finance-order-table thead,.finance-transaction-table thead{display:none}.finance-order-table tr,.finance-transaction-table tr{padding:14px;border-bottom:1px solid #e5e7eb}.finance-order-table td,.finance-transaction-table td{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border:0;text-align:right}.finance-order-table td:before,.finance-transaction-table td:before{font-weight:700;color:#64748b;text-align:left}.finance-order-table td:nth-child(1):before{content:'ថ្ងៃ'}.finance-order-table td:nth-child(2):before{content:'លេខ Order'}.finance-order-table td:nth-child(3):before{content:'អតិថិជន'}.finance-order-table td:nth-child(4):before{content:'ចំណូល'}.finance-order-table td:nth-child(5):before{content:'ថ្លៃដើម'}.finance-order-table td:nth-child(6):before{content:'ចំណេញ'}.finance-transaction-table td:nth-child(1):before{content:'កាលបរិច្ឆេទ'}.finance-transaction-table td:nth-child(2):before{content:'ប្រភេទ'}.finance-transaction-table td:nth-child(3):before{content:'ចំណាត់ថ្នាក់'}.finance-transaction-table td:nth-child(4):before{content:'បរិយាយ'}.finance-transaction-table td:nth-child(5):before{content:'ចំនួន'}.finance-transaction-table td:nth-child(6):before{content:'សកម្មភាព'}.finance-transaction-table .row-actions{justify-content:flex-end}}

/* ===== V4.1 One UI 8.5 dashboard refresh ===== */
:root{--oneui-blue:#315efb;--oneui-violet:#7257ff;--oneui-ink:#17213b;--oneui-soft:#f4f7fd}
body{background:radial-gradient(circle at 72% -10%,rgba(105,113,255,.10),transparent 28%),#f5f8fd}
.sidebar{width:286px;padding:26px 18px 18px;background:linear-gradient(165deg,#352cae 0%,#1744bf 52%,#0756bd 100%);box-shadow:16px 0 50px rgba(25,51,148,.18);overflow:hidden}
.sidebar:before,.sidebar:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.sidebar:before{width:260px;height:260px;right:-120px;top:80px;background:radial-gradient(circle,rgba(159,150,255,.38),rgba(159,150,255,0) 68%)}.sidebar:after{width:180px;height:180px;left:-100px;bottom:90px;background:radial-gradient(circle,rgba(80,211,255,.25),rgba(80,211,255,0) 70%)}
.brand-wrap{position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 13px 30px;z-index:1}.brand{padding:0;font-size:28px;letter-spacing:-.5px}.brand span{color:#c7c9ff}.brand-spark{font-size:18px;color:#fff}
.sidebar nav{gap:7px;position:relative;z-index:1}.sidebar nav a,.logout{display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:17px;color:rgba(255,255,255,.88);font-weight:600;transition:.2s ease}.sidebar nav a:hover,.sidebar nav a.active{background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.12));box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 9px 26px rgba(25,31,119,.20);transform:translateX(2px);color:#fff}.nav-icon{width:24px;height:24px;display:grid;place-items:center;font-size:18px}.nav-label{white-space:nowrap}.logout{margin-top:10px;background:rgba(9,20,77,.24)}
.sidebar-promo{position:relative;z-index:1;margin-top:auto;padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.08));box-shadow:0 16px 35px rgba(13,29,100,.22);display:grid;gap:5px}.sidebar-promo .promo-icon{font-size:24px}.sidebar-promo strong{font-size:14px}.sidebar-promo small{color:rgba(255,255,255,.7)}.sidebar-promo a{margin-top:8px;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.13);display:flex;justify-content:space-between}.sidebar-footer{position:relative;z-index:1;padding:14px 12px 0;font-size:11px;color:rgba(255,255,255,.58)}
.main{margin-left:286px;width:calc(100% - 286px)}.topbar{height:92px;padding:0 30px;background:rgba(248,251,255,.78);border-bottom:0;backdrop-filter:blur(24px);box-shadow:0 1px 0 rgba(131,145,181,.12)}.topbar-title,.topbar-actions,.admin-chip{display:flex;align-items:center}.topbar-title{gap:13px}.topbar-title>div{display:grid}.topbar-title strong{font-size:23px}.topbar-title small,.admin-chip small{font-size:11px;color:#8a94aa}.app-grid-icon,.icon-button{width:48px;height:48px;border:1px solid rgba(219,226,239,.9);border-radius:16px;background:#fff;display:grid;place-items:center;box-shadow:0 10px 28px rgba(44,63,112,.08);color:#6671ff;font-size:23px}.topbar-actions{gap:14px}.icon-button{position:relative;font:inherit;cursor:pointer}.icon-button i{position:absolute;width:7px;height:7px;border-radius:50%;background:#7657ff;right:10px;top:9px}.admin-chip{gap:12px;padding:8px 9px 8px 16px;border:1px solid rgba(219,226,239,.9);background:#fff;border-radius:17px;box-shadow:0 10px 30px rgba(44,63,112,.07)}.admin-chip>span{display:grid}.admin-chip em{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#ebeefe,#dfe5f3);display:grid;place-items:center;font-style:normal;font-weight:700;color:#5e6680}
.content{padding:28px 32px 48px}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dashboard-hero h1{font-size:27px;margin:3px 0 5px}.dashboard-hero p{margin:0;color:#7a849b}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#6b63f3}.dashboard-primary{border-radius:17px;padding:13px 18px;background:linear-gradient(135deg,#6557ff,#2b67f6);box-shadow:0 12px 24px rgba(72,84,246,.25)}
.dashboard-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.kpi-card{position:relative;min-height:220px;padding:24px 22px;border:1px solid rgba(225,231,241,.88);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,255,255,.78));box-shadow:0 18px 42px rgba(57,72,112,.08);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.kpi-card:before{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-45px;bottom:-58px;background:var(--glow,rgba(95,99,255,.11));filter:blur(2px)}.kpi-card:hover{transform:translateY(-3px);box-shadow:0 23px 48px rgba(57,72,112,.13)}.kpi-icon{width:55px;height:55px;border-radius:19px;display:grid;place-items:center;margin-bottom:24px;font-size:24px;background:var(--icon-bg,#eef0ff);color:var(--icon-color,#5e5cf5);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.kpi-card .muted{font-size:14px}.kpi-card .metric{font-size:30px;line-height:1.25;margin-top:8px;letter-spacing:-.5px}.kpi-foot,.kpi-link{position:absolute;left:22px;bottom:20px;font-size:12px;color:#8a93a7}.kpi-foot.positive{padding:6px 10px;border-radius:999px;background:#f2faee;color:#31a557}.kpi-link{font-weight:700;color:#4f62f4}.kpi-breakdown{font-size:11px;color:#8c95a8;margin-top:5px;line-height:1.5}.kpi-sales{--icon-bg:#eeedff;--icon-color:#6057f7;--glow:rgba(100,91,250,.14)}.kpi-profit{--icon-bg:#e9faf1;--icon-color:#22b978;--glow:rgba(51,201,137,.13)}.kpi-expense{--icon-bg:#fff0e8;--icon-color:#ff7043;--glow:rgba(255,112,67,.13)}.kpi-balance{--icon-bg:#e9f9ff;--icon-color:#12aede;--glow:rgba(18,174,222,.13)}.kpi-stock{--icon-bg:#f5eaff;--icon-color:#9252ef;--glow:rgba(146,82,239,.13)}
.dashboard-panel{margin-top:28px;padding:22px;border:1px solid rgba(225,231,241,.9);border-radius:30px;background:rgba(255,255,255,.88);box-shadow:0 18px 48px rgba(57,72,112,.08)}.panel-head,.panel-head>div{display:flex;align-items:center}.panel-head{justify-content:space-between;gap:15px;margin-bottom:18px}.panel-head>div{gap:13px}.panel-head h3{margin:0 0 2px;font-size:20px}.panel-head p{margin:0;color:#929aad;font-size:12px}.panel-head>a{padding:10px 15px;border-radius:15px;background:#f1f4ff;color:#5165f3;font-size:13px;font-weight:700}.panel-icon{width:43px;height:43px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#e8edff,#f0ecff);color:#4f63f3;font-size:20px}
.dashboard-table{border-radius:22px;border-color:#e6eaf2;box-shadow:none}.dashboard-table table{min-width:760px}.dashboard-table th{padding:15px 18px;background:#fbfcff;color:#667085;font-size:12px}.dashboard-table td{padding:14px 18px}.dashboard-table tr:last-child td{border-bottom:0}.order-link{display:flex;align-items:center;gap:11px}.order-doc{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#f0edff;color:#6d55f8}.money-status.pending{color:#fb702f;font-weight:700}.money-status.paid,.profit-text{color:#0db778;font-weight:700}.row-more{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;color:#8f98aa}.row-more:hover{background:#f1f3f8}.empty-row{text-align:center!important;color:#9aa2b2;padding:35px!important}
@media(max-width:1350px){.dashboard-kpis{grid-template-columns:repeat(3,1fr)}.kpi-card{min-height:205px}}
@media(max-width:1050px){.sidebar{width:86px;padding:20px 10px}.brand-wrap{justify-content:center;padding:0 0 22px}.brand{font-size:0}.brand:before{content:'LS';font-size:23px}.brand-spark,.nav-label,.sidebar-promo,.sidebar-footer{display:none}.sidebar nav a,.logout{justify-content:center;padding:13px}.main{margin-left:86px;width:calc(100% - 86px)}.dashboard-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{background:#f5f7fb}.main{margin-left:0;width:100%;padding-bottom:82px}.topbar{height:76px;padding:0 14px}.topbar-title small,.icon-button,.admin-chip small{display:none}.topbar-title strong{font-size:18px}.app-grid-icon{width:40px;height:40px;border-radius:14px}.admin-chip{padding:5px 6px 5px 11px}.admin-chip em{width:36px;height:36px}.content{padding:18px 14px 28px}.dashboard-hero{align-items:flex-start}.dashboard-hero h1{font-size:22px}.dashboard-hero p{font-size:13px}.dashboard-primary{padding:11px 12px;font-size:13px}.dashboard-kpis{grid-template-columns:1fr 1fr;gap:12px}.kpi-card{min-height:176px;padding:17px;border-radius:23px}.kpi-icon{width:44px;height:44px;border-radius:15px;margin-bottom:15px}.kpi-card .metric{font-size:22px}.kpi-foot,.kpi-link{left:17px;bottom:15px}.kpi-breakdown{display:none}.dashboard-panel{padding:14px;border-radius:24px}.panel-head p{display:none}.panel-head>a{padding:9px 11px}.sidebar{width:100%;height:72px;top:auto;bottom:0;padding:8px 9px;background:rgba(14,29,78,.97);backdrop-filter:blur(20px);box-shadow:0 -10px 30px rgba(20,31,70,.18);z-index:50}.brand-wrap,.logout{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(5,1fr);width:100%;gap:4px}.sidebar nav a{padding:7px 3px;border-radius:14px;display:flex;flex-direction:column;gap:2px;font-size:0}.sidebar nav a:nth-child(n+6){display:none}.sidebar nav a.active{transform:none}.sidebar nav a .nav-icon{font-size:18px}.sidebar nav a .nav-label{display:block;font-size:9px;max-width:62px;overflow:hidden;text-overflow:ellipsis}.dashboard-table table,.dashboard-table thead,.dashboard-table tbody,.dashboard-table tr,.dashboard-table td{display:block;min-width:0}.dashboard-table thead{display:none}.dashboard-table tr{padding:13px;border-bottom:1px solid #edf0f5}.dashboard-table td{display:flex;justify-content:space-between;gap:15px;padding:6px 0;border:0;text-align:right}.dashboard-table td:before{content:attr(data-label);font-weight:600;color:#8a93a6;text-align:left}.dashboard-table td:first-child{display:block;text-align:left}.dashboard-table td:first-child:before,.dashboard-table td:last-child{display:none}.order-link{justify-content:flex-start}.row-more{margin-left:auto}}
@media(max-width:430px){.dashboard-hero{display:block}.dashboard-primary{margin-top:14px}.dashboard-kpis{grid-template-columns:1fr}.kpi-card{min-height:165px}.panel-head h3{font-size:17px}}


/* V4.6 — mobile navigation refinement */
.mobile-menu-button,.drawer-close,.mobile-bottom-nav,.mobile-nav-overlay{display:none}
@media(max-width:700px){
  body{padding-bottom:88px;overflow-x:hidden}
  body.mobile-nav-open{overflow:hidden}
  .main{padding-bottom:0}
  .topbar{height:70px;padding:0 12px 0 10px;gap:8px}
  .topbar-title{gap:9px;min-width:0}
  .topbar-title>div{min-width:0}
  .topbar-title strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
  .app-grid-icon{display:none}
  .mobile-menu-button{display:grid;width:42px;height:42px;place-items:center;border:1px solid #e5eaf4;border-radius:15px;background:#fff;color:#3148c9;font-size:20px;box-shadow:0 8px 22px rgba(41,55,110,.08);cursor:pointer;flex:0 0 auto}
  .admin-chip{padding:4px 5px 4px 9px;border-radius:15px;max-width:150px}
  .admin-chip b{font-size:12px;max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .admin-chip em{width:34px;height:34px;font-size:13px}

  .sidebar{display:flex;position:fixed;top:0;left:0;bottom:0;width:min(86vw,360px);height:100dvh;padding:22px 16px 18px;border-radius:0 28px 28px 0;transform:translateX(-105%);transition:transform .26s ease;z-index:120;background:linear-gradient(165deg,#3129a7 0%,#1744bf 54%,#0756bd 100%);box-shadow:22px 0 55px rgba(18,31,95,.28);overflow-y:auto}
  .sidebar.is-open{transform:translateX(0)}
  .sidebar .brand-wrap{display:flex;justify-content:space-between;padding:0 8px 22px}
  .sidebar .brand{display:block;font-size:25px}
  .sidebar .brand:before{display:none}
  .sidebar .brand-spark{display:block}
  .drawer-close{display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:12px;background:rgba(255,255,255,.14);color:#fff;font-size:25px;line-height:1;cursor:pointer;margin-left:auto;margin-right:8px}
  .sidebar nav{display:grid;grid-template-columns:1fr;gap:7px;width:100%}
  .sidebar nav a,.sidebar .logout{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:13px!important;padding:13px 15px!important;font-size:14px!important;border-radius:17px!important}
  .sidebar nav a .nav-label,.sidebar .logout .nav-label{display:block!important;font-size:14px!important;max-width:none!important}
  .sidebar nav a .nav-icon,.sidebar .logout .nav-icon{font-size:18px!important}
  .sidebar-promo,.sidebar-footer{display:grid}
  .sidebar .logout{margin-top:10px}

  .mobile-nav-overlay{display:block;position:fixed;inset:0;background:rgba(9,18,49,.32);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:.22s ease;z-index:110}
  .mobile-nav-overlay.is-open{opacity:1;visibility:visible}

  .mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));height:70px;padding:7px;border:1px solid rgba(255,255,255,.2);border-radius:23px;background:rgba(13,27,76,.94);backdrop-filter:blur(24px);box-shadow:0 14px 35px rgba(16,30,80,.28);z-index:90}
  .mobile-bottom-nav a,.mobile-bottom-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;border-radius:16px;background:transparent;color:#d9e2ff;font-family:inherit;cursor:pointer;min-width:0}
  .mobile-bottom-nav a>span,.mobile-bottom-nav button>span{font-size:18px;line-height:1}
  .mobile-bottom-nav small{font-size:9px;white-space:nowrap;max-width:60px;overflow:hidden;text-overflow:ellipsis}
  .mobile-bottom-nav a.active{background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.11));color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.13)}
  .mobile-bottom-nav .mobile-nav-create{transform:translateY(-14px);width:54px;height:54px;justify-self:center;border-radius:19px;background:linear-gradient(135deg,#745cff,#2b67f6);color:#fff;box-shadow:0 10px 24px rgba(68,76,247,.42)}
  .mobile-bottom-nav .mobile-nav-create small{display:none}
  .mobile-bottom-nav .mobile-nav-create span{font-size:27px}

  .content{padding-bottom:28px}
  .dashboard-hero{gap:12px}
  .dashboard-primary{white-space:nowrap}
  .dashboard-panel{margin-bottom:14px}
}
@media(max-width:430px){
  .topbar-title strong{max-width:135px;font-size:16px}
  .admin-chip b{max-width:70px}
  .dashboard-kpis{grid-template-columns:1fr 1fr}
  .kpi-card{min-height:170px}
  .mobile-bottom-nav{left:7px;right:7px}
}

/* V4.7 design stock image thumbnail fix */
.design-stock-table .design-thumb-button{border:0;padding:0;background:transparent;cursor:zoom-in;display:inline-flex;align-items:center;justify-content:center}
.design-stock-table .design-thumb{width:88px;height:66px;object-fit:cover;border-radius:14px;border:1px solid #e3e9f6;box-shadow:0 8px 24px rgba(30,54,102,.10);display:block;background:#f8faff}
.design-stock-table .design-thumb.placeholder{display:flex;align-items:center;justify-content:center;font-size:24px;background:#f4f7fd;color:#8a93aa}
.image-lightbox[hidden]{display:none!important}
.image-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(10,18,40,.72);backdrop-filter:blur(10px);display:grid;place-items:center;padding:20px}
.lightbox-card{max-width:min(860px,94vw);max-height:88vh;background:#fff;border-radius:28px;padding:14px;box-shadow:0 30px 80px rgba(0,0,0,.32);text-align:center}
.lightbox-card img{display:block;max-width:100%;max-height:76vh;object-fit:contain;border-radius:18px}
.lightbox-card strong{display:block;padding:12px 8px 4px;font-weight:700;color:#15213d}
.lightbox-close{position:fixed;right:22px;top:18px;width:46px;height:46px;border:0;border-radius:50%;font-size:30px;line-height:1;background:#fff;color:#22345d;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.22)}

@media (max-width: 900px){
  .design-stock-table table,
  .design-stock-table tbody,
  .design-stock-table tr,
  .design-stock-table td{display:block;width:100%}
  .design-stock-table thead{display:none}
  .design-stock-table tr{margin-bottom:16px;padding:16px;border:1px solid #e8edf7;border-radius:24px;background:#fff;box-shadow:0 10px 26px rgba(27,43,76,.06)}
  .design-stock-table td{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:8px 0;border:0}
  .design-stock-table td::before{content:attr(data-label);font-weight:700;color:#6a7693;flex:0 0 120px}
  .design-stock-table td:first-child{justify-content:center;padding-top:2px}
  .design-stock-table td:first-child::before{display:none}
  .design-stock-table .design-thumb{width:124px;height:92px}
}

/* V4.8 edit-design preview size fix */
.design-upload-box{
  display:flex;
  align-items:center;
  gap:20px;
  padding:18px;
  margin:0 0 20px;
  border:1px dashed #cfd8ff;
  border-radius:24px;
  background:linear-gradient(135deg,#f8faff,#ffffff);
}
.design-image-preview{
  width:180px;
  height:135px;
  max-width:180px;
  max-height:135px;
  flex:0 0 180px;
  overflow:hidden;
  border-radius:20px;
  background:#eef2ff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#78839d;
  gap:6px;
  box-shadow:0 8px 24px rgba(30,54,102,.08);
}
.design-image-preview img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  display:block;
  object-fit:cover!important;
}
.design-image-preview span{font-size:38px}
.remove-image-check{display:block;margin-top:10px;color:#d13b5a}

@media (max-width:700px){
  .design-upload-box{align-items:flex-start;gap:14px;padding:14px}
  .design-image-preview{
    width:120px;
    height:90px;
    max-width:120px;
    max-height:90px;
    flex-basis:120px;
    border-radius:16px;
  }
}

/* V5.1 stock summary cards */
.stock-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0 22px}
.stock-summary-card{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;min-height:118px;padding:20px;border:1px solid rgba(224,231,245,.9);border-radius:26px;background:#fff;box-shadow:0 14px 38px rgba(25,43,85,.07)}
.stock-summary-card::after{content:"";position:absolute;width:105px;height:105px;border-radius:50%;right:-32px;bottom:-42px;opacity:.12}
.stock-summary-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:17px;font-weight:800;font-size:21px}
.stock-summary-card small{display:block;margin-bottom:7px;color:#778199;font-weight:600}
.stock-summary-card strong{display:block;color:#17233e;font-size:clamp(18px,2vw,27px);line-height:1.25}
.stock-card-blue .stock-summary-icon{background:#e9edff;color:#5262ff}.stock-card-blue::after{background:#5262ff}
.stock-card-orange .stock-summary-icon{background:#fff0e9;color:#ff7043}.stock-card-orange::after{background:#ff7043}
.stock-card-purple .stock-summary-icon{background:#f1eaff;color:#814cff}.stock-card-purple::after{background:#814cff}
.stock-card-green .stock-summary-icon{background:#e8faef;color:#1dbb68}.stock-card-green::after{background:#1dbb68}
@media(max-width:1100px){.stock-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.stock-summary-grid{grid-template-columns:1fr 1fr;gap:10px}.stock-summary-card{min-height:108px;padding:15px;align-items:flex-start;flex-direction:column;gap:10px;border-radius:22px}.stock-summary-icon{width:42px;height:42px;flex-basis:42px;border-radius:15px}.stock-summary-card strong{font-size:17px}.stock-summary-card small{font-size:12px}}

/* =========================================================
   V5.2 — Global One UI 8.5 visual refresh
   Applied across dashboard, forms, tables, stock, customers,
   orders, finance, settings, mobile and print-safe surfaces.
   ========================================================= */
:root{
  --one-bg:#f3f6fb;
  --one-surface:#ffffff;
  --one-surface-soft:#f8faff;
  --one-text:#15213d;
  --one-muted:#76819a;
  --one-primary:#5b5cf6;
  --one-primary-2:#3374f6;
  --one-purple:#8068ff;
  --one-blue:#1e6df3;
  --one-green:#16a36a;
  --one-orange:#f08a38;
  --one-red:#e64f63;
  --one-border:#e6ebf4;
  --one-shadow:0 14px 40px rgba(35,50,91,.08);
  --one-shadow-soft:0 7px 24px rgba(35,50,91,.06);
  --one-radius-xl:28px;
  --one-radius-lg:22px;
  --one-radius-md:16px;
}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 85% 0%,rgba(104,92,255,.075),transparent 28%),
    radial-gradient(circle at 15% 100%,rgba(51,116,246,.055),transparent 30%),
    var(--one-bg);
  color:var(--one-text);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
body,input,select,textarea,button{font-family:'Kantumruy Pro',system-ui,sans-serif}
::selection{background:rgba(91,92,246,.18);color:var(--one-text)}
a{transition:color .18s ease,background-color .18s ease,transform .18s ease,box-shadow .18s ease}

/* Main content rhythm */
.content{max-width:1700px;margin:0 auto;padding:28px 30px 42px}
.content>h1,.content>h2,.content>h3{letter-spacing:-.02em}
.page-title,.content>h1{font-size:clamp(24px,2vw,34px);font-weight:800;margin:0 0 6px;color:var(--one-text)}
.page-subtitle{color:var(--one-muted);margin:0 0 24px}

/* One UI surfaces */
.card,.table-wrap,.dashboard-panel,.info-panel,.payment-card,.invoice-profit-grid,
.form-card,.settings-card,.customer-card,.order-card,.finance-card{
  border:1px solid rgba(226,232,243,.92);
  background:rgba(255,255,255,.94);
  border-radius:var(--one-radius-xl);
  box-shadow:var(--one-shadow-soft);
}
.card{padding:24px}
.card:hover{box-shadow:var(--one-shadow)}

/* Toolbar / action bars */
.toolbar,.actions{
  padding:12px;
  border:1px solid rgba(227,232,242,.9);
  border-radius:20px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(16px);
  box-shadow:0 8px 24px rgba(42,55,93,.045);
}
.toolbar:empty,.actions:empty{display:none}

/* Buttons */
.btn,button.btn,input[type="submit"]{
  min-height:44px;
  padding:11px 18px;
  border-radius:15px;
  font-weight:700;
  letter-spacing:.01em;
  background:linear-gradient(135deg,var(--one-primary),var(--one-primary-2));
  box-shadow:0 9px 20px rgba(73,84,238,.22);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.btn:hover,button.btn:hover,input[type="submit"]:hover{transform:translateY(-1px);box-shadow:0 13px 26px rgba(73,84,238,.28);filter:saturate(1.04)}
.btn:active,button.btn:active,input[type="submit"]:active{transform:scale(.98)}
.btn.secondary{background:#eef1ff;color:#4546c8;box-shadow:none}
.btn.secondary:hover{background:#e5e9ff;box-shadow:0 8px 18px rgba(73,84,238,.12)}
.btn.danger{background:linear-gradient(135deg,#ef5b6e,#d93d55);box-shadow:0 9px 20px rgba(222,65,88,.2)}
.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important}

/* Forms */
.form-grid{gap:20px}
.form-group{min-width:0}
.form-group label{font-size:14px;font-weight:700;color:#273451;margin-bottom:8px}
.input,.select,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="url"],select,textarea{
  min-height:48px;
  padding:12px 15px;
  border:1.5px solid #dfe5f0;
  border-radius:16px;
  background:#fbfcff;
  color:var(--one-text);
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
textarea{min-height:120px;resize:vertical}
.input:hover,.select:hover,input:hover,select:hover,textarea:hover{border-color:#cfd7e7;background:#fff}
.input:focus,.select:focus,input:focus,select:focus,textarea:focus{
  border-color:#7274f8;
  background:#fff;
  box-shadow:0 0 0 4px rgba(91,92,246,.12);
}
input[type="checkbox"],input[type="radio"]{accent-color:var(--one-primary);width:18px;height:18px}
fieldset{border:1px solid var(--one-border);border-radius:20px;padding:20px;background:#fbfcff}
legend{font-weight:800;color:var(--one-text);padding:0 8px}

/* Search */
.search .input{min-width:min(320px,100%)}

/* Tables */
.table-wrap{overflow:auto;border-radius:24px;background:#fff}
table{border-collapse:separate;border-spacing:0}
th{
  background:linear-gradient(180deg,#f8faff,#f3f6fb);
  color:#283653;
  font-size:13px;
  font-weight:800;
  letter-spacing:.01em;
  border-bottom:1px solid #e7ebf3;
}
th:first-child{border-top-left-radius:18px}
th:last-child{border-top-right-radius:18px}
td{color:#25314c;background:#fff}
tbody tr{transition:background .15s ease,transform .15s ease}
tbody tr:hover td{background:#fafbff}
tbody tr:last-child td{border-bottom:0}

/* Badges / status */
.badge{padding:7px 11px;font-weight:700;border-radius:999px;background:#eef0ff;color:#5051cf;border:1px solid rgba(81,82,207,.09)}
.badge.ok{background:#e9fbf3;color:#087a50;border-color:#d4f4e6}
.badge.warn{background:#fff4e9;color:#b85c12;border-color:#ffe4ca}
.badge.danger{background:#ffecef;color:#c9334c;border-color:#ffd9df}

/* Alerts */
.alert,.success{border:1px solid transparent;border-radius:17px;padding:14px 16px;box-shadow:0 5px 14px rgba(35,50,91,.04)}
.alert{background:#fff0f2;color:#b72e44;border-color:#ffd8de}
.success{background:#eafbf3;color:#126a49;border-color:#d3f4e4}

/* Metric and summary cards */
.grid,.summary,.dashboard-kpis{gap:18px}
.metric{font-size:clamp(25px,2.2vw,36px);font-weight:850;letter-spacing:-.035em;color:#14203b}
.kpi-card,.summary .card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(228,233,243,.95);
  background:linear-gradient(145deg,#fff 0%,#fbfcff 68%,#f3f1ff 100%);
  box-shadow:var(--one-shadow-soft);
}
.kpi-card:after,.summary .card:after{
  content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-45px;bottom:-55px;
  background:radial-gradient(circle,rgba(103,92,255,.13),rgba(103,92,255,0) 70%);pointer-events:none
}

/* Currency banner */
.currency-banner{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:15px 18px;margin:0 0 18px;border:1px solid #e1e7f3;border-radius:19px;
  background:linear-gradient(135deg,#fff,#f5f7ff);box-shadow:0 8px 24px rgba(35,50,91,.05)
}
.currency-banner strong{color:#243251}.currency-banner span{color:#5964c6;font-weight:700}

/* Stock / image presentation */
.design-stock-table .design-thumb{border-radius:16px;box-shadow:0 8px 22px rgba(31,51,94,.12)}
.design-upload-box{border:1.5px dashed #bcc9f3;background:linear-gradient(145deg,#fafbff,#f4f7ff);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.design-image-preview{border:1px solid #e2e7f2}

/* Customer & order detail blocks */
.info-panel{padding:18px;background:linear-gradient(145deg,#fbfcff,#f7f9fd)}
.info-panel>strong{color:#17213a}
.couple-strip{border-radius:20px}

/* Invoice polish without altering print logic */
.invoice-sheet{border-radius:24px;box-shadow:0 22px 60px rgba(23,34,64,.12)}
.invoice-items-wrap,.totals-box{border-radius:17px}
.invoice-items th{background:#202c4c}
.totals-box .balance-row,.totals-box .balance-khr{background:#202c4c}

/* Sidebar desktop */
@media(min-width:701px){
  .sidebar{
    width:270px;padding:22px 17px;
    background:
      radial-gradient(circle at 90% 0%,rgba(151,129,255,.42),transparent 28%),
      linear-gradient(165deg,#3328a9 0%,#244bc8 52%,#0d56bb 100%);
    box-shadow:12px 0 38px rgba(23,43,117,.18)
  }
  .main{margin-left:270px;width:calc(100% - 270px)}
  .sidebar nav{gap:7px}
  .sidebar nav a,.logout{border-radius:16px;padding:13px 15px}
  .sidebar nav a:hover{background:rgba(255,255,255,.12);transform:translateX(3px)}
  .sidebar nav a.active{background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.10));box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 10px 26px rgba(12,25,92,.18)}
  .topbar{height:76px;padding:0 30px;background:rgba(255,255,255,.82);border-bottom-color:rgba(225,230,240,.9);box-shadow:0 4px 18px rgba(35,50,91,.035)}
}

/* Tablet */
@media(max-width:1100px) and (min-width:701px){
  .content{padding:24px 22px 36px}
  .grid,.dashboard-kpis{grid-template-columns:repeat(2,1fr)}
  .form-grid{grid-template-columns:1fr 1fr}
}

/* Mobile global One UI layout */
@media(max-width:700px){
  body{background:#f5f7fc}
  .content{padding:16px 13px 30px}
  .card,.dashboard-panel,.table-wrap,.info-panel,.form-card{border-radius:22px}
  .toolbar,.actions{padding:9px;border-radius:18px;gap:9px}
  .toolbar .btn,.actions .btn{width:auto;flex:1;min-width:130px}
  .form-grid{grid-template-columns:1fr;gap:15px}
  .input,.select,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="url"],select,textarea{font-size:16px;border-radius:15px}
  .currency-banner{align-items:flex-start;flex-direction:column;padding:14px;border-radius:18px}
  .grid,.summary{grid-template-columns:1fr 1fr;gap:12px}
  .summary .card,.card{padding:17px}
  .metric{font-size:25px}
  .table-wrap{border-radius:21px}
  .table-wrap:not(.design-stock-table) table,
  .table-wrap:not(.design-stock-table) thead,
  .table-wrap:not(.design-stock-table) tbody,
  .table-wrap:not(.design-stock-table) tr,
  .table-wrap:not(.design-stock-table) td{display:block;min-width:0;width:100%}
  .table-wrap:not(.design-stock-table) thead{display:none}
  .table-wrap:not(.design-stock-table) tr{margin:0 0 12px;padding:14px;border:1px solid #e7ebf4;border-radius:20px;background:#fff;box-shadow:0 7px 20px rgba(35,50,91,.05)}
  .table-wrap:not(.design-stock-table) td{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border:0;text-align:right}
  .table-wrap:not(.design-stock-table) td::before{content:attr(data-label);font-weight:700;color:#76819a;text-align:left}
  .actions{align-items:stretch}
  .invoice-sheet{border-radius:0;box-shadow:none}
}
@media(max-width:430px){
  .grid,.summary{grid-template-columns:1fr}
  .toolbar .btn,.actions .btn{width:100%;flex-basis:100%}
  .content{padding-left:11px;padding-right:11px}
  .card{padding:16px}
}

/* Print protection */
@media print{
  body{background:#fff!important}
  .toolbar,.actions,.mobile-bottom-nav,.mobile-menu-button,.mobile-nav-overlay{display:none!important}
  .invoice-sheet{border-radius:0!important;box-shadow:none!important}
}

/* ===== V5.3 Collapsible desktop sidebar ===== */
.topbar-left{display:flex;align-items:center;gap:14px;min-width:0}
.sidebar-toggle{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;border:1px solid rgba(215,222,240,.95);border-radius:15px;background:rgba(255,255,255,.9);color:#4654e8;font:700 23px/1 'Kantumruy Pro',sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(38,55,115,.09);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.sidebar-toggle:hover{background:#fff;transform:translateY(-1px);box-shadow:0 12px 28px rgba(38,55,115,.14)}
.sidebar,.main{transition:width .28s ease,margin-left .28s ease,transform .28s ease}
@media(min-width:701px){
  body.sidebar-collapsed .sidebar{transform:translateX(-100%)}
  body.sidebar-collapsed .main{margin-left:0!important;width:100%!important}
  body.sidebar-collapsed .topbar{padding-left:22px}
}
@media(max-width:700px){
  .sidebar-toggle{display:none!important}
  .topbar-left{gap:8px;min-width:0}
}
admin/assets/css/style.css
