:root{--ink:#172036;--muted:#7d879b;--line:#e8ebf2;--violet:#6757e8}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:#f3f5f9;color:var(--ink)}button,input,select{font:inherit}.auth{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 25% 20%,#d9d3ff,transparent 32%),#10162a}.auth form{width:min(100%,430px);background:#fff;padding:40px;border-radius:25px;display:grid;gap:14px;box-shadow:0 30px 80px #0005}.auth .brand,.logo b{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#765cff,#5688ff);color:#fff}.auth small{color:var(--violet);font-weight:800;letter-spacing:.15em}.auth h1{font-size:32px;margin:2px 0}.auth p{color:var(--muted);margin:0 0 8px;line-height:1.5}.auth input,.auth button,.modal input,.modal select{height:45px;border:1px solid #dfe3eb;border-radius:11px;padding:0 13px}.auth button,#modalSubmit{border:0;background:var(--violet);color:#fff;font-weight:700}#authError{color:#e24d67;font-size:12px}.logo{display:flex;align-items:center;gap:11px;color:#fff;font-size:18px}.logo i{color:#9285ff;font-style:normal}aside{position:fixed;inset:0 auto 0 0;width:240px;background:#11172b;padding:25px 15px;color:#adb6cd;display:flex;flex-direction:column;z-index:10}nav{display:grid;gap:6px;margin-top:38px}nav button,aside>button{border:0;background:none;color:inherit;border-radius:11px;padding:12px;display:flex;gap:12px;align-items:center;text-align:left}nav button.on{background:#282f4d;color:#fff}nav em{margin-left:auto;background:var(--violet);color:#fff;border-radius:8px;padding:3px 6px;font-size:8px}aside>button{margin-top:auto}main{margin-left:240px;padding:25px 32px 50px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}header small{color:var(--muted);text-transform:capitalize}header h1{font-size:24px;margin:5px 0}.avatar{width:40px;height:40px;border-radius:50%;background:var(--violet);color:#fff;display:grid;place-items:center;font-weight:800}#menu{display:none}.page{display:none}.page.on{display:block}.metrics{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:15px;margin-bottom:16px}.metrics article,.card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 5px 20px #25315b09}.metrics article{padding:21px}.metrics article small,.metrics article span{display:block;color:var(--muted);font-size:12px}.metrics strong{display:block;font-size:27px;margin:9px 0}.metrics .purple{background:linear-gradient(135deg,#5f50df,#786af0);color:#fff;border:0}.metrics .purple small,.metrics .purple span{color:#e1ddff}.green{color:#11a574!important}.red{color:#ea5971!important}.cols{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.card{padding:20px}.head,.newsbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.head h2{font-size:16px;margin:0}.head p{font-size:11px;color:var(--muted);margin:4px 0}.head button,.link,#cats button,.newsitem button,.account button{border:0;border-radius:9px;padding:8px 11px}.head button{background:var(--violet);color:#fff}.list>div{display:flex;align-items:center;gap:11px;border-top:1px solid #edf0f5;padding:13px 0}.list>div:first-child{border:0}.list .ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#f0edff;color:var(--violet)}.list .desc{flex:1;min-width:0}.list b{font-size:12px}.list p{font-size:10px;color:var(--muted);margin:4px 0}.list strong{font-size:12px}.list .actions button,.account .actions button{border:0;background:#f2f3f7;border-radius:8px;padding:6px 8px;margin-left:5px}.list .actions .danger,.account .danger{color:#e34e66;background:#fff0f2}.link{width:100%;background:none;color:var(--violet);border-top:1px solid var(--line);margin-top:5px}.newsbar{gap:15px}.newsbar input{height:38px;border:1px solid #e0e4ec;border-radius:10px;padding:0 12px}#cats{display:flex;gap:6px}#cats button{background:#f1f3f6;color:#6f788b}#cats button.on{background:var(--violet);color:#fff}.newsgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.newsitem{border:1px solid var(--line);border-radius:15px;padding:16px;display:flex;flex-direction:column;min-height:190px}.newsitem small{color:var(--violet);font-weight:700}.newsitem h3{font-size:14px;line-height:1.45}.newsitem p{font-size:10px;color:var(--muted);margin-top:auto}.newsitem button{background:#f0edff;color:var(--violet);align-self:flex-start}.accountgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.account{border:1px solid var(--line);border-top:3px solid var(--violet);border-radius:15px;padding:17px;display:grid;gap:6px}.account small{color:var(--muted)}.account strong{font-size:22px;margin:12px 0}.account .actions{display:flex;margin-top:5px}dialog{border:0;padding:0;border-radius:20px;box-shadow:0 30px 80px #1118;width:min(92vw,480px)}dialog::backdrop{background:#12172b99}.modal form,.article{padding:27px;display:grid;gap:14px;position:relative}.close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:25px}.modal label{display:grid;gap:7px;font-size:12px}.modal input,.modal select{width:100%}.article h2{font-size:24px;line-height:1.3}.article>span{color:var(--violet);font-size:12px;font-weight:700}.article button:not(.close){border:0;background:#efecff;color:#5646d8;padding:12px;border-radius:10px}.article a{background:var(--violet);color:#fff;text-align:center;text-decoration:none;padding:12px;border-radius:10px}#summaryBox{color:#616a7e;font-size:13px;line-height:1.6}.empty{color:var(--muted);justify-content:center;padding:35px!important}@media(max-width:980px){.metrics{grid-template-columns:1fr 1fr}.purple{grid-column:1/-1}.cols{grid-template-columns:1fr}.newsgrid{grid-template-columns:1fr 1fr}.accountgrid{grid-template-columns:1fr 1fr}}@media(max-width:680px){aside{transform:translateX(-100%);transition:.25s}aside.open{transform:none}main{margin:0;padding:18px 14px}#menu{display:block;border:0;background:#fff;border-radius:9px;padding:9px}.metrics{grid-template-columns:1fr 1fr}.newsgrid,.accountgrid{grid-template-columns:1fr}.newsbar{align-items:stretch;flex-direction:column}.newsbar input{width:100%}#cats{overflow:auto}.card{padding:15px}}
