/* AK Mobile Store - Premium Violet Glass UI */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#f5f3ff;
  --bg-2:#ede9fe;
  --surface:#ffffff;
  --surface-2:rgba(255,255,255,.7);
  --border:rgba(124,58,237,.12);
  --text:#1e1b4b;
  --muted:#6b7280;
  --primary:#7c3aed;
  --primary-2:#a78bfa;
  --primary-soft:#ede9fe;
  --success:#10b981;
  --warning:#f59e0b;
  --info:#3b82f6;
  --danger:#ef4444;
  --grad:linear-gradient(135deg,#7c3aed 0%,#a78bfa 50%,#c4b5fd 100%);
  --grad-soft:linear-gradient(135deg,#ede9fe 0%,#f5f3ff 100%);
  --shadow-sm:0 2px 8px -2px rgba(124,58,237,.12);
  --shadow:0 10px 30px -12px rgba(124,58,237,.25);
  --shadow-lg:0 20px 50px -20px rgba(124,58,237,.35);
}
html,body{font-family:'Tajawal',system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}
body{background:radial-gradient(1200px 600px at 100% -10%,#ddd6fe55,transparent),radial-gradient(900px 500px at -10% 110%,#c4b5fd44,transparent),var(--bg)}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
input,select,textarea{font-family:inherit}

.app{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.sidebar{background:linear-gradient(180deg,#fff 0%,#faf8ff 100%);border-left:1px solid var(--border);padding:20px 16px;display:flex;flex-direction:column;gap:18px;position:sticky;top:0;height:100vh;overflow-y:auto}
.brand{display:flex;align-items:center;gap:12px;padding:8px 6px 16px;border-bottom:1px solid var(--border)}
.logo{width:48px;height:48px;border-radius:14px;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px;box-shadow:var(--shadow)}
.brand-title{font-weight:900;font-size:16px}
.brand-sub{font-size:11px;color:var(--muted);font-weight:600}
.menu{display:flex;flex-direction:column;gap:4px;flex:1}
.menu a{padding:11px 14px;border-radius:12px;font-weight:700;font-size:14px;color:#475569;display:flex;align-items:center;gap:10px;transition:.2s}
.menu a:hover{background:var(--primary-soft);color:var(--primary)}
.menu a.active{background:var(--grad);color:#fff;box-shadow:var(--shadow)}
.sidebar-footer{padding-top:12px;border-top:1px solid var(--border)}
.logout{display:block;padding:11px 14px;border-radius:12px;background:#fee2e2;color:#b91c1c;font-weight:800;text-align:center;font-size:13px}
.logout:hover{background:#fecaca}

.main{display:flex;flex-direction:column;min-height:100vh}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;background:rgba(255,255,255,.6);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}
.topbar h1{font-size:22px;font-weight:900}
.crumb{font-size:12px;color:var(--muted);font-weight:600;margin-top:2px}
.topbar-right{display:flex;align-items:center;gap:14px}
.user-chip{display:flex;align-items:center;gap:10px;background:#fff;padding:6px 14px 6px 6px;border-radius:14px;border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.avatar{width:38px;height:38px;border-radius:11px;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:900}
.u-name{font-size:13px;font-weight:800}
.u-role{font-size:10px;color:var(--muted);font-weight:700}

.content{padding:24px 28px;flex:1}
.appfoot{padding:14px 28px;text-align:center;font-size:12px;color:var(--muted);font-weight:600}

/* Cards / Stats */
.grid{display:grid;gap:16px}
.cols-4{grid-template-columns:repeat(4,1fr)}
.cols-3{grid-template-columns:repeat(3,1fr)}
.cols-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px){.cols-4{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:1fr}}
@media(max-width:700px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto}.cols-4,.cols-2{grid-template-columns:1fr}}

.card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:var(--shadow-sm)}
.card-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.card-h h3{font-size:15px;font-weight:900}

.stat{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;position:relative;overflow:hidden;transition:.2s}
.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.stat::before{content:"";position:absolute;inset:0;background:var(--grad-soft);opacity:.4;z-index:0}
.stat>*{position:relative;z-index:1}
.stat .icon{width:46px;height:46px;border-radius:13px;background:var(--grad);color:#fff;display:grid;place-items:center;font-size:20px;margin-bottom:12px;box-shadow:var(--shadow-sm)}
.stat .label{font-size:12px;color:var(--muted);font-weight:700}
.stat .value{font-size:28px;font-weight:900;margin-top:4px}
.stat .delta{font-size:11px;font-weight:800;margin-top:6px;color:var(--success)}
.stat .delta.down{color:var(--danger)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:12px;font-weight:800;font-size:13px;transition:.2s;border:1px solid transparent}
.btn-primary{background:var(--grad);color:#fff;box-shadow:var(--shadow-sm)}
.btn-primary:hover{box-shadow:var(--shadow);transform:translateY(-1px)}
.btn-ghost{background:#fff;border-color:var(--border);color:var(--text)}
.btn-ghost:hover{background:var(--primary-soft);color:var(--primary)}
.btn-danger{background:#fee2e2;color:#b91c1c}
.btn-success{background:#d1fae5;color:#065f46}
.btn-sm{padding:6px 12px;font-size:12px}

/* Forms */
.form-row{display:grid;gap:14px;margin-bottom:14px}
.form-row.cols-2{grid-template-columns:1fr 1fr}
.form-row.cols-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.form-row.cols-2,.form-row.cols-3{grid-template-columns:1fr}}
label{display:block;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:6px}
.input,select,textarea{width:100%;padding:11px 14px;border:1.5px solid var(--border);border-radius:12px;background:#fff;font-size:14px;font-weight:600;color:var(--text);transition:.2s}
.input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}
textarea{min-height:90px;resize:vertical}

/* Tables */
.table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--border)}
.table th{background:var(--primary-soft);color:var(--primary);padding:12px 14px;text-align:right;font-size:12px;font-weight:900;letter-spacing:.3px}
.table td{padding:12px 14px;border-top:1px solid var(--border);font-size:13px;font-weight:600}
.table tbody tr:hover{background:#faf8ff}

/* Badge */
.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:800}
.b-success{background:#d1fae5;color:#065f46}
.b-warning{background:#fef3c7;color:#92400e}
.b-info{background:#dbeafe;color:#1e40af}
.b-primary{background:var(--primary-soft);color:var(--primary)}
.b-danger{background:#fee2e2;color:#b91c1c}
.b-muted{background:#f3f4f6;color:#374151}

/* Kanban */
.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:1100px){.kanban{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.kanban{grid-template-columns:1fr}}
.kcol{background:rgba(255,255,255,.7);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:18px;padding:14px;min-height:480px;display:flex;flex-direction:column;gap:10px}
.kcol-h{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--border)}
.kcol-h h4{font-size:13px;font-weight:900;display:flex;align-items:center;gap:8px}
.kcol-h .dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.kcol-h .count{background:var(--primary-soft);color:var(--primary);padding:3px 10px;border-radius:999px;font-size:11px;font-weight:900}
.klist{display:flex;flex-direction:column;gap:8px;min-height:200px}
.kcard{background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px;cursor:grab;transition:.2s;box-shadow:var(--shadow-sm)}
.kcard:active{cursor:grabbing}
.kcard:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.kcard .top{display:flex;justify-content:space-between;align-items:start;margin-bottom:8px;gap:8px}
.kcard .name{font-size:13px;font-weight:900}
.kcard .meta{font-size:11px;color:var(--muted);font-weight:700;display:flex;justify-content:space-between;margin-top:6px}
.sortable-ghost{opacity:.4}
.sortable-chosen{transform:rotate(2deg)}

/* Login */
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(1000px 600px at 50% -10%,#c4b5fd55,transparent),var(--bg)}
.login-card{background:#fff;padding:40px;border-radius:24px;width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}
.login-card .logo-big{width:72px;height:72px;border-radius:20px;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:900;font-size:26px;margin:0 auto 18px;box-shadow:var(--shadow)}
.login-card h2{text-align:center;font-size:22px;font-weight:900;margin-bottom:6px}
.login-card .sub{text-align:center;color:var(--muted);font-size:13px;font-weight:600;margin-bottom:24px}
.alert{padding:12px 14px;border-radius:12px;font-size:13px;font-weight:700;margin-bottom:14px}
.alert-error{background:#fee2e2;color:#b91c1c}
.alert-success{background:#d1fae5;color:#065f46}
.alert-info{background:#dbeafe;color:#1e40af}

/* Helpers */
.flex{display:flex}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}
.between{justify-content:space-between}.center{align-items:center}
.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}
.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}
.text-c{text-align:center}
.muted{color:var(--muted)}
.chart-box{height:280px;position:relative}

@media print{
  .sidebar,.topbar,.appfoot,.no-print{display:none!important}
  .main{display:block}
  .content{padding:0}
}
