
:root{
  --bg:#f4f6f9;
  --surface:#ffffff;
  --surface2:#f8fafc;
  --line:#e6eaf0;
  --text:#111827;
  --muted:#6b7280;
  --nav:#0f172a;
  --nav2:#111827;
  --blue:#2563eb;
  --green:#059669;
  --red:#b91c1c;
  --orange:#b45309;
  --radius:18px;
  --shadow:0 10px 32px rgba(15,23,42,.06);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Arial,"Noto Sans Arabic",sans-serif;background:var(--bg);color:var(--text)}
body{background:radial-gradient(circle at 100% 0%,rgba(37,99,235,.05),transparent 28rem),var(--bg)}
button,input,select{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}
.mobile-only{display:none}

.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}
.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:0 24px 70px rgba(15,23,42,.10)}
.auth-card.wide{width:min(850px,100%)}
.brand-mark{width:62px;height:62px;border-radius:20px;background:linear-gradient(145deg,#0f172a,#1e293b);color:#fff;display:grid;place-items:center;font-size:31px;font-weight:800;margin:auto}
.brand-mark.sm{width:44px;height:44px;border-radius:14px;font-size:22px;margin:0}
.auth-card h1,.auth-card h2{text-align:center;margin:14px 0 5px}
.auth-card>p{text-align:center;color:var(--muted)}
.auth-card label,.form-panel label{display:block;margin:12px 0 5px;font-size:13px;font-weight:700;color:#374151}
.auth-card input,.form-panel input,.form-panel select,.search,.smart-bar input{width:100%;padding:12px 13px;border:1px solid #dce2ea;border-radius:12px;background:#fff;outline:none}
.auth-card input:focus,.form-panel input:focus,.form-panel select:focus,.search:focus,.smart-bar input:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #dbeafe}
.screen-head,.page-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}
.screen-head h2,.page-actions h3{margin:0}
.screen-head p,.page-actions p{color:var(--muted);margin:5px 0 0}
.workspace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:20px 0}
.workspace-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;text-align:right;box-shadow:0 6px 16px rgba(15,23,42,.04)}
.workspace-card:hover{transform:translateY(-2px);border-color:#cbd5e1}
.workspace-card b{display:block;font-size:17px}
.workspace-card small{color:var(--muted)}

.btn{border:0;border-radius:12px;padding:11px 15px;font-weight:700}
.primary{background:var(--nav);color:#fff}
.primary:hover{background:#1e293b}
.ghost{background:#edf1f5;color:#111827}
.danger{background:#7f1d1d;color:#fff}
.full{width:100%;margin-top:12px}
.form-msg{margin-top:10px;font-size:13px}
.text-btn,.link-btn,.icon-btn{border:0;background:transparent}
.link-btn.dark{color:#111827;font-size:22px}
.eyebrow{font-size:10px;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em}

.app{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:100vh}
.sidebar{background:linear-gradient(180deg,#0f172a,#111827 62%,#0b1220);color:#fff;padding:17px 14px;min-height:100vh;height:100vh;position:sticky;top:0;overflow:auto;display:flex;flex-direction:column}
.sidebar-brand{display:flex;gap:11px;align-items:center;padding:7px 8px 12px}
.sidebar-brand b{font-size:20px}
.sidebar-brand span{display:block;color:#94a3b8;font-size:12px;margin-top:3px}
.workspace-mini{margin:4px 5px 13px;padding:11px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:14px;display:flex;align-items:center;gap:9px}
.workspace-mini .status-dot{width:9px;height:9px;background:#34d399;border-radius:50%;box-shadow:0 0 0 4px rgba(52,211,153,.10)}
.workspace-mini small{display:block;color:#94a3b8;font-size:10px}
.workspace-mini b{font-size:13px}
.side-nav{display:grid;gap:3px}
.nav-title{color:#64748b;font-size:10px;font-weight:800;padding:13px 11px 5px}
.side-nav button{border:0;background:transparent;color:#cbd5e1;text-align:right;padding:10px 11px;border-radius:10px;display:flex;align-items:center;gap:10px}
.side-nav button span{width:22px;text-align:center;color:#94a3b8}
.side-nav button.active,.side-nav button:hover{background:rgba(255,255,255,.08);color:#fff}
.side-nav button.active span{color:#fff}
.sidebar-footer{margin-top:auto;padding:14px 8px 4px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#86efac}
.sidebar-footer .link-btn{color:#fff}

.main{min-width:0;padding:22px 24px 100px}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}
.top-left,.top-actions{display:flex;align-items:center;gap:10px}
.topbar h2{margin:1px 0 0;font-size:24px}
.topbar small{color:var(--muted)}
.smart-bar{background:#fff;border:1px solid #dfe5ed;border-radius:18px;padding:13px 14px;margin-bottom:15px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;box-shadow:0 8px 22px rgba(37,99,235,.04)}
.smart-label b{font-size:14px}
.smart-label small{display:block;color:var(--muted);margin-top:3px}

.hero{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;border-radius:24px;padding:28px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 16px 34px rgba(15,23,42,.14)}
.hero span,.hero p{color:#cbd5e1}
.hero h2{font-size:30px;margin:7px 0}
.hero-chip{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.08)}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}
.stats article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:19px;box-shadow:0 6px 20px rgba(15,23,42,.03)}
.stats span{display:block;color:var(--muted);font-size:12px}
.stats b{display:block;font-size:23px;margin-top:9px}
.stats small{display:block;color:#94a3b8;margin-top:5px}

.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:0 0 14px}
.quick-grid button{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-align:right}
.quick-grid button span{font-size:20px;display:block;margin-bottom:8px}
.quick-grid button b{display:block}
.quick-grid button small{display:block;color:var(--muted);margin-top:4px}
.quick-grid button:hover{transform:translateY(-1px);box-shadow:var(--shadow)}

.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;margin-top:14px;box-shadow:0 6px 20px rgba(15,23,42,.03)}
.panel h3{margin-top:0}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.grid2,.page-grid,.settings-grid{display:grid;grid-template-columns:1fr 1.55fr;gap:14px}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cols4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.row{display:grid;grid-template-columns:minmax(150px,1.6fr) 1fr 1fr;gap:12px;padding:13px 5px;border-bottom:1px solid #edf0f3;align-items:center}
.row:last-child{border-bottom:0}
.row small{color:var(--muted)}
.badge{display:inline-block;padding:4px 8px;background:#eef2f7;border-radius:999px;font-size:11px}
.empty-state{padding:34px;text-align:center;color:#94a3b8;background:#fafbfd;border:1px dashed #dbe2ea;border-radius:14px}
.health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.health-grid div{background:#f8fafc;border:1px solid #eef2f7;border-radius:14px;padding:14px}
.health-grid span{display:block;color:var(--muted);font-size:11px}
.health-grid b{display:block;margin-top:6px}
.invoice-lines{display:grid;gap:8px;margin:12px 0}
.invoice-line{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:7px;align-items:center}
.invoice-line select,.invoice-line input{width:100%;padding:10px;border:1px solid #d9dee6;border-radius:10px}
.remove-line{border:0;background:#fee2e2;color:#991b1b;border-radius:10px;padding:10px}
.tab-strip,.report-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.tab-strip button,.report-tabs button{border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:10px}
.tab-strip button.active,.report-tabs button.active{background:var(--nav);color:#fff}
.report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.report-summary div{background:#f8fafc;border:1px solid #eef2f7;border-radius:14px;padding:15px}
.settings-list>div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #eee}
.narrow{max-width:620px}

.smart-center{text-align:center;padding:42px}
.smart-hero-icon{width:64px;height:64px;border-radius:20px;background:#eef2ff;display:grid;place-items:center;margin:auto;font-size:28px}
.smart-center h2{margin:14px 0 5px}
.smart-center p{color:var(--muted)}
.smart-examples{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.smart-examples button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px}

.pos-layout{display:grid;grid-template-columns:1.8fr .9fr;gap:14px}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.cart-panel{position:sticky;top:20px;height:max-content}
.cart-total{display:flex;justify-content:space-between;padding:16px 0;font-size:18px}

.smart-review{position:fixed;left:22px;bottom:22px;z-index:90;width:min(470px,calc(100vw - 44px));background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 25px 70px rgba(15,23,42,.16)}
.smart-review-head{display:flex;justify-content:space-between;align-items:center}
.smart-review-head h3{margin:0 0 10px}
.smart-reply{font-weight:700;margin:6px 0 12px}
.smart-details{background:#f8fafc;border-radius:12px;padding:12px;font-size:13px;line-height:1.8}
.smart-missing{margin-top:10px;color:var(--orange)}
.smart-result{margin-top:10px;color:var(--green);white-space:pre-wrap}
.smart-actions{display:flex;gap:8px;margin-top:14px}
.smart-actions .btn{flex:1}
.smart-bar.loading{opacity:.65;pointer-events:none}

.drawer{position:fixed;inset:0;z-index:100;background:rgba(15,23,42,.35);display:grid;place-items:center;padding:20px}
.drawer-card{width:min(520px,100%);background:#fff;border-radius:22px;padding:20px}
.quick-create-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.quick-create-grid button{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px;text-align:right}

.mobile-nav{display:none}
.toast{position:fixed;left:20px;bottom:20px;z-index:120;background:#111827;color:#fff;padding:12px 16px;border-radius:12px;display:none;max-width:360px}
.search{max-width:260px}

@media(max-width:1100px){
  .grid2,.page-grid,.settings-grid,.pos-layout{grid-template-columns:1fr}
  .stats,.quick-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:850px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;right:-295px;width:276px;z-index:70;transition:.2s}
  .sidebar.open{right:0}
  .mobile-only{display:block}
  .main{padding:14px 14px 92px}
  .top-actions{gap:4px}
  .top-actions .btn{padding:9px}
  .cols4{grid-template-columns:1fr 1fr}
  .mobile-nav{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:60;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.96);border-top:1px solid var(--line);backdrop-filter:blur(12px);padding:6px 8px calc(6px + env(safe-area-inset-bottom))}
  .mobile-nav button{border:0;background:transparent;color:#64748b;display:grid;place-items:center;gap:2px;padding:5px}
  .mobile-nav button span{font-size:18px}
  .mobile-nav button small{font-size:9px}
}
@media(max-width:620px){
  .stats,.quick-grid{grid-template-columns:1fr 1fr}
  .hero{padding:18px}
  .hero-chip{display:none}
  .panel-head,.screen-head,.page-actions{align-items:stretch;flex-direction:column}
  .search{max-width:none}
  .invoice-line{grid-template-columns:1fr 1fr}
  .health-grid{grid-template-columns:1fr}
  .cols2,.cols4{grid-template-columns:1fr}
  .row{grid-template-columns:1.4fr 1fr}
  .smart-bar{grid-template-columns:1fr}
  .smart-bar .btn{width:100%}
  .smart-review{left:10px;bottom:75px;width:calc(100vw - 20px)}
  .topbar{align-items:flex-start}
  .top-actions{flex-wrap:wrap;justify-content:flex-end}
}

.module-hidden{display:none!important}
