*{box-sizing:border-box}html,body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f5f8fb;color:#17202a}body.dark{background:#0b1218;color:#e8f0f6}.app-shell{display:flex;min-height:100vh}.sidebar{width:245px;background:#07141d;color:#fff;position:fixed;inset:0 auto 0 0;padding:18px 12px;display:flex;flex-direction:column;z-index:5}.brand{background:#fff;border-radius:12px;padding:10px;margin-bottom:18px}.brand img{width:100%;display:block}.sidebar nav{display:grid;gap:5px}.sidebar a{color:#cbd8df;text-decoration:none;padding:11px 12px;border-radius:9px;font-size:14px}.sidebar a:hover,.sidebar a.active{background:#007fd4;color:#fff}.sidebar-bottom{margin-top:auto}.main{margin-left:245px;width:calc(100% - 245px)}.topbar{height:66px;background:#fff;border-bottom:1px solid #e3e9ee;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:4}.dark .topbar{background:#111d26;border-color:#25333d}.top-actions{display:flex;align-items:center;gap:10px}.user-chip{font-size:12px;background:#eef5fa;padding:7px 10px;border-radius:20px}.content{padding:26px;max-width:1500px;margin:auto}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(5,minmax(0,1fr))}.card,.panel{background:#fff;border:1px solid #e1e8ee;border-radius:14px;padding:18px;box-shadow:0 3px 15px rgba(14,42,61,.04)}.dark .card,.dark .panel{background:#111d26;border-color:#263741}.metric .label{font-size:12px;color:#70808b}.metric .value{font-size:27px;font-weight:750;margin-top:8px}.blue{color:#0088dc}.green{color:#169c61}.yellow{color:#d98a00}.red{color:#d44747}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.btn{border:0;border-radius:9px;padding:10px 15px;background:#0787df;color:#fff;cursor:pointer;text-decoration:none;display:inline-block;font-weight:600}.btn.secondary{background:#edf3f7;color:#26333c}.btn.danger{background:#d94b4b}.btn.success{background:#18a368}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px;color:#64737d}.field input,.field select,.field textarea{width:100%;border:1px solid #d5dfe6;border-radius:8px;padding:10px 11px;background:#fff;color:#17202a}.dark .field input,.dark .field select,.dark .field textarea{background:#0c151c;color:#e8f0f6;border-color:#334650}.field textarea{min-height:92px;resize:vertical}.span-2{grid-column:span 2}.span-4{grid-column:1/-1}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{padding:10px;border-bottom:1px solid #e5ebef;text-align:left;white-space:nowrap}.dark .table th,.dark .table td{border-color:#283740}.badge{display:inline-flex;padding:5px 8px;border-radius:20px;font-size:11px;font-weight:700}.badge.green{background:#e3f7ed}.badge.yellow{background:#fff3d7}.badge.red{background:#fde8e8}.badge.blue{background:#e4f3fc}.dark .badge.green{background:#103927}.dark .badge.yellow{background:#45350e}.dark .badge.red{background:#481e1e}.dark .badge.blue{background:#10344b}.items-table input{min-width:95px}.inline{display:flex;gap:8px;align-items:center}.alert{padding:12px;border-radius:10px;margin-bottom:15px;background:#edf7ff;border:1px solid #cfeafa}.dark .alert{background:#0c2637;border-color:#19455e}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#f5f8fb,#e8f6ff)}.login-box{width:min(430px,92vw);background:#fff;border-radius:18px;padding:30px;box-shadow:0 15px 45px rgba(0,30,50,.12)}.login-box img{width:210px;display:block;margin:0 auto 25px}.login-box h1{font-size:21px;text-align:center}.theme-toggle{border:1px solid #d5e0e7;background:transparent;padding:8px 10px;border-radius:8px;cursor:pointer}.dark .theme-toggle{color:#fff;border-color:#334650}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.sidebar{width:70px}.sidebar span{display:none}.main{margin-left:70px;width:calc(100% - 70px)}.brand{padding:5px}.content{padding:15px}.cards,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.topbar{padding:0 14px}.user-chip{display:none}}
