/* ADMIN 4 — Corporate Blue (demo4 style) */
:root{--bg:#f4f6f9;--sb:#0f2a52;--card:#fff;--line:#e2e8f0;--ink:#0f172a;--mut:#475569;--c1:#1d4ed8;--c2:#2563eb;--grad:linear-gradient(120deg,#1d4ed8,#3b82f6);--r:10px}
html[data-theme="dark"]{--bg:#0b1526;--sb:#0a1220;--card:#14233d;--line:#243756;--ink:#e8edf7;--mut:#9db0cc}
*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Inter','Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--ink);min-height:100vh;transition:background .3s}
a{color:inherit;text-decoration:none}ul{list-style:none}
.sb{position:fixed;left:0;top:0;bottom:0;width:230px;background:var(--sb);padding:1.2rem .8rem;display:flex;flex-direction:column;z-index:100;color:#dbe4f5}
.sb-logo{display:flex;align-items:center;gap:.6rem;padding:.4rem .6rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:.8rem}
.mk{width:38px;height:38px;border-radius:9px;background:var(--c2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.15rem}
.sb-logo b{font-size:.95rem;line-height:1.1;color:#fff}.sb-logo i{display:block;font-style:normal;font-size:.65rem;color:#9db5dd;letter-spacing:2px}
.sb-nav{flex:1;overflow-y:auto}.sb-sec{display:block;font-size:.62rem;letter-spacing:2px;text-transform:uppercase;color:#7fa2d9;padding:.9rem .6rem .35rem;font-weight:700}
.sb-nav a{display:block;padding:.55rem .7rem;border-radius:7px;font-size:.89rem;font-weight:600;color:#b9c9e6;transition:.15s}
.sb-nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.sb-nav a.on{background:var(--c2);color:#fff}
.sb-out{padding:.6rem .7rem;color:#9db5dd;font-size:.85rem;font-weight:600}.sb-out:hover{color:#f87171}
.tb{position:fixed;top:0;left:230px;right:0;height:60px;background:var(--card);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:1rem;padding:0 1.4rem;z-index:90}
.tb-tgl{display:none;background:none;border:1px solid var(--line);border-radius:7px;color:var(--ink);font-size:1rem;cursor:pointer;padding:.3rem .55rem}
.tb-search{flex:1;max-width:340px}.tb-search input{width:100%;padding:.55rem .9rem;border-radius:7px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:.85rem}
.tb-right{margin-left:auto;display:flex;align-items:center;gap:.7rem}
.tb-ic,.tt{position:relative;width:36px;height:36px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--mut);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.85rem}
.dot{position:absolute;top:7px;right:8px;width:7px;height:7px;border-radius:50%;background:#ef4444}
.tb-user{display:flex;align-items:center;gap:.55rem}.tb-user small{display:block;font-size:.68rem;color:var(--mut)}
.av{width:34px;height:34px;border-radius:8px;background:var(--c1);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem}
.av.big{width:72px;height:72px;font-size:1.8rem;border-radius:16px}
.wrap{margin-left:230px;padding:78px 1.6rem 2rem}
.ph{margin-bottom:1.6rem;display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}
.ph h1{font-size:1.55rem;font-weight:700}.ph p{color:var(--mut);font-size:.88rem}.ph .btn{margin-left:auto}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-bottom:1.4rem}
.c{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 2px 8px rgba(15,23,42,.04)}
.stat{padding:1.2rem;border-left:3px solid var(--c1)}.stat span{font-size:.75rem;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.stat b{display:block;font-size:1.7rem;font-weight:800;margin:.2rem 0}
.up{color:#059669}.dn{color:#dc2626}.up,.dn{font-size:.75rem;font-style:normal;font-weight:700}
.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:1.1rem;margin-bottom:1.4rem}
.panel{padding:1.3rem}.panel h3{font-size:.95rem;margin-bottom:1rem;font-weight:700}
.bars{display:flex;align-items:flex-end;gap:8px;height:160px}.bar{flex:1;background:var(--grad);border-radius:6px 6px 0 0;opacity:.9;transition:height .8s ease;height:0}
.bars-x{display:flex;gap:8px;margin-top:.5rem}.bars-x span{flex:1;text-align:center;font-size:.7rem;color:var(--mut)}
.act b{font-weight:600}.act span{color:var(--mut);font-size:.82rem}.act em{font-style:normal;font-weight:700;color:var(--c1)}
.msgs .unread b{color:var(--c1)}.msgs em{color:var(--mut);font-size:.75rem}
.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:1px;color:var(--mut);padding:.6rem .8rem;border-bottom:2px solid var(--line);background:var(--bg)}
.tbl td{padding:.7rem .8rem;font-size:.87rem;border-bottom:1px solid var(--line)}.tbl tr:hover td{background:rgba(29,78,216,.03)}
.tbl.striped tr:nth-child(even) td{background:rgba(0,0,0,.02)}
.bd{display:inline-block;padding:.18rem .65rem;border-radius:5px;font-size:.72rem;font-weight:700}
.ok{background:rgba(5,150,105,.12);color:#059669}.warn{background:rgba(217,119,6,.12);color:#b45309}.bad{background:rgba(220,38,38,.1);color:#dc2626}.info{background:rgba(29,78,216,.1);color:var(--c1)}
.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.2rem;border-radius:7px;font-weight:600;font-size:.85rem;border:0;cursor:pointer;transition:.15s}
.primary{background:var(--c1);color:#fff}.primary:hover{background:var(--c2)}
.ghost{border:1px solid var(--line);background:transparent;color:var(--ink)}.ghost:hover{border-color:var(--c1);color:var(--c1)}
.danger{background:#dc2626;color:#fff}.sm{padding:.3rem .8rem;font-size:.78rem}.blk{width:100%;justify-content:center}
.prod{padding:1.2rem;text-align:center}.pimg{height:90px;border-radius:10px;background:var(--grad);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.4rem;margin-bottom:.8rem}
.prod p{color:var(--mut);font-size:.82rem;margin:.3rem 0 .8rem}
.cust{padding:1.3rem;text-align:center}.cust h3{margin-top:.7rem;font-size:.95rem}.cust p{color:var(--mut);font-size:.8rem}.cust em{display:block;margin-top:.5rem;font-style:normal;font-size:.8rem;color:var(--c1);font-weight:700}
.frm .f{margin-bottom:1rem}.fr{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.f label{display:block;font-size:.78rem;color:var(--mut);margin-bottom:.35rem;font-weight:600}
.f input,.f select,.f textarea{width:100%;padding:.65rem .9rem;border-radius:7px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-family:inherit;font-size:.88rem}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--c1);box-shadow:0 0 0 3px rgba(29,78,216,.12)}
.chk{display:flex!important;align-items:center;gap:.5rem;color:var(--ink)!important}.chk input{width:auto!important}
.prog{height:8px;background:var(--line);border-radius:99px;overflow:hidden;min-width:140px}.prog i{display:block;height:100%;background:var(--grad);border-radius:99px}
.rv{opacity:0;transform:translateY(18px);transition:.5s}.rv.in{opacity:1;transform:none}
.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f2a52,#1d4ed8)}
.auth-box{width:min(400px,92%);background:var(--card);border-radius:14px;padding:2.2rem;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.auth-logo .mk{width:52px;height:52px;font-size:1.4rem;margin-bottom:1rem}
.auth-box h1{font-size:1.4rem}.auth-box p{color:var(--mut);font-size:.88rem;margin:.3rem 0 1.4rem}
.auth-box label{display:block;font-size:.78rem;color:var(--mut);margin-bottom:.3rem;font-weight:600}
.auth-box input{width:100%;padding:.7rem .9rem;border-radius:7px;border:1px solid var(--line);background:var(--bg);color:var(--ink);margin-bottom:1rem}
.auth-row{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;margin-bottom:1rem}
.auth-row a{color:var(--c1)}
.auth-row .chk{display:flex;align-items:center;gap:.4rem;color:var(--mut)}
.auth-row input{width:auto;margin:0}
.auth-ft{text-align:center;font-size:.75rem;color:var(--mut);margin-top:1.2rem}
@media(max-width:900px){.sb{transform:translateX(-100%);transition:.25s}.sb-open .sb{transform:none}.tb{left:0}.wrap{margin-left:0}.tb-tgl{display:block}.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}
@media(max-width:560px){.cards{grid-template-columns:1fr}}
