:root{--p:#6f55d9;--bg:#f6f6fb;--card:#fff;--ink:#1c1c28;--mut:#6b6b7b;--line:#e6e6ef}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);margin:0;font-family:system-ui,Segoe UI,Tahoma,Arial}.muted{color:var(--mut)}.center{place-items:center;height:100vh;display:grid}.grow{flex:1}.shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--card);border-inline-end:1px solid var(--line);padding:14px}.brand{color:var(--p);padding:8px 6px 14px;font-weight:800}.navitem{color:var(--mut);border-radius:10px;align-items:center;gap:8px;padding:10px 12px;text-decoration:none;display:flex}.navitem:hover{background:#f0eefb}.navitem.active{color:var(--p);background:#efeafe;font-weight:700}.dot{opacity:.6;background:currentColor;border-radius:50%;width:8px;height:8px}.content{flex-direction:column;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--line);z-index:10;align-items:center;gap:10px;padding:12px 18px;display:flex;position:sticky;top:0}.pill{border:1px solid var(--line);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:7px 12px}.search{cursor:text}.page{max-width:1100px;padding:22px}h1{margin:0 0 6px;font-size:22px}.grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:14px;display:grid}.kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}.kpi b{font-size:22px;display:block}.kpi span{color:var(--mut);font-size:13px}.state{border:1px dashed var(--line);color:var(--mut);background:#fafaff;border-radius:12px;margin-top:12px;padding:14px}.authwrap{place-items:center;min-height:100vh;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px}.auth{flex-direction:column;gap:12px;width:360px;max-width:92vw;display:flex}.auth label{flex-direction:column;gap:6px;font-size:14px;display:flex}.auth input{border:1px solid var(--line);font:inherit;border-radius:10px;padding:10px}.btn{background:var(--p);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:10px;padding:11px 14px}.link{color:var(--p);cursor:pointer;font:inherit;background:0 0;border:0;text-decoration:underline}.note{color:var(--mut);font-size:13px}.switchrow{font-size:14px}@media (width<=820px){.shell{grid-template-columns:1fr}.sidebar{width:78%;position:fixed;inset-block:0;inset-inline-start:0;transform:translate(0)}}.listrow{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 4px;display:flex}.listrow:last-child{border-bottom:0}.row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.pill.active{border-color:var(--p);color:var(--p);background:#efeafe;font-weight:700}.badgeAD{color:#fff;background:#111;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:700}.formgrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--mut);font-size:12px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:10px;padding:10px 12px}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.totalbox{border:1px solid var(--line);background:#fafaff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding:14px 16px;display:flex}.totalbox .tval{color:var(--p);font-size:20px;font-weight:800}.totalbox .tmeta{color:var(--mut);font-size:13px}.filefield{border:1px dashed var(--line);color:var(--mut);text-align:center;cursor:pointer;background:#fff;border-radius:10px;padding:10px 12px;font-size:13px;position:relative;overflow:hidden}.filefield input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}
