:root{--nav:#312c82;--blue:#43bde8;--pink:#f35ee5;--ink:#181439;--muted:#716d91;--line:rgba(255,255,255,.68);--danger:#bf3970}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{padding:18px;background:radial-gradient(circle at 85% 5%,#63e6ec 0,transparent 30%),radial-gradient(circle at 18% 90%,#7b61e8 0,transparent 38%),linear-gradient(135deg,#9b6fdd,#87dff0);color:var(--ink);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}.app-frame{height:calc(100vh - 36px);max-width:1240px;margin:auto;display:grid;grid-template-columns:205px minmax(0,1fr);overflow:hidden;border:1px solid #ffffff6b;border-radius:28px;background:#dce0ff6b;box-shadow:0 25px 70px #261d6d47,inset 0 0 30px #ffffff38;backdrop-filter:blur(22px)}.sidebar{position:sticky;top:0;height:100%;overflow-y:auto;overscroll-behavior:contain;padding:27px 17px;background:linear-gradient(180deg,#8133b5f2,#2f2a80f5 38%,#2e2b76f5);color:#fff;display:flex;flex-direction:column;scrollbar-width:thin}.main{height:100%;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:28px 30px 38px;background:linear-gradient(135deg,#e0ddfbc2,#d3edfbad);scrollbar-color:#7567c955 transparent}.brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:900;font-size:17px;padding:2px 10px 26px}.brand-mark{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#fff,#72dff4);color:#5540a0;box-shadow:0 5px 18px #7de2f777}.nav{display:grid;gap:7px}.nav a,.logout{display:flex;align-items:center;gap:11px;border:0;color:#e9e5ff;background:transparent;text-decoration:none;padding:11px 12px;border-radius:9px;font:inherit;font-weight:650;cursor:pointer;width:100%;min-height:43px}.nav a:hover,.nav a.active{background:linear-gradient(90deg,#65b6ebaa,#4f91e6aa);color:#fff;box-shadow:inset 0 0 0 1px #a8eaff55}.ico{font-size:15px;width:19px;text-align:center}.aside-foot{margin-top:auto}.topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}.topline .hello{font-weight:750}.avatar{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#755be3,#ef65dc);color:#fff;font-weight:800;box-shadow:0 4px 14px #715cd966}a{color:inherit}h1{font-size:clamp(24px,3vw,28px);letter-spacing:-.045em;margin:0}h2{font-size:17px;margin:0}.sub{color:var(--muted);margin:4px 0 20px}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.card{min-width:0;background:linear-gradient(135deg,#f7f4ffad,#cfe5ff80);border:1px solid var(--line);border-radius:15px;padding:17px;box-shadow:inset 0 1px 0 #fff9,0 8px 20px #463c9614;backdrop-filter:blur(14px)}.metric-card{position:relative;overflow:hidden;min-height:122px}.metric-card:after{content:"";position:absolute;width:75px;height:75px;border-radius:50%;right:-16px;bottom:-26px;background:#ffffff5c;box-shadow:0 0 22px #fff}.metric-card:nth-child(4n+1){background:linear-gradient(140deg,#d1c4fbcc,#add7f3aa)}.metric-card:nth-child(4n+2){background:linear-gradient(140deg,#64d7efcc,#4dbcea99)}.metric-card:nth-child(4n+3){background:linear-gradient(140deg,#bbbdf8cc,#a9bcebaa)}.metric-card:nth-child(4n){background:linear-gradient(140deg,#f789eccc,#df68e3aa)}.span3{grid-column:span 3}.span4{grid-column:span 4}.span6{grid-column:span 6}.span8{grid-column:span 8}.span12{grid-column:span 12}.metric{font-size:clamp(23px,3vw,28px);font-weight:850;letter-spacing:-.04em;margin-top:17px}.label{color:var(--muted);font-size:12px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spread{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.stack>*+*{margin-top:12px}.badge{display:inline-flex;padding:4px 9px;border-radius:99px;background:#ffffff7a;border:1px solid #fff9;font-size:11px;font-weight:750;white-space:nowrap}.badge.hot{background:#f49ce5aa;color:#7e266f}.btn{display:inline-flex;min-height:40px;align-items:center;justify-content:center;border:1px solid #ffffff99;border-radius:9px;padding:9px 13px;font-weight:750;cursor:pointer;text-decoration:none;background:linear-gradient(135deg,#676be3,#b05ad8);color:#fff;box-shadow:0 5px 12px #665bd52e}.btn.alt{background:#ffffff82;color:var(--ink)}.btn.danger{background:linear-gradient(135deg,#df5a9b,#ad3975)}.btn.small{min-height:35px;padding:7px 10px;font-size:12px}input,select,textarea{width:100%;max-width:100%;border:1px solid #ffffffcc;border-radius:9px;padding:10px 11px;background:#ffffff78;color:var(--ink);font:inherit;outline:none;box-shadow:inset 0 1px 3px #5a4b9b12}input:focus,select:focus,textarea:focus{border-color:#6bc9ee;box-shadow:0 0 0 3px #54c9ee30}textarea{min-height:145px;resize:vertical}label{font-size:12px;font-weight:750;display:block;margin:10px 0 5px}.lead-title{font-weight:850;font-size:16px;overflow-wrap:anywhere}.meta{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.notice{padding:11px 14px;border:1px solid #bff8ea;border-radius:10px;background:#d8fff0aa;margin-bottom:15px}.error{color:var(--danger);font-size:12px}.empty{color:var(--muted);padding:20px;text-align:center}.section{margin-top:24px}.drop{border:2px dashed #9b91d1;padding:28px;border-radius:15px;text-align:center;background:#ffffff3c}.chart-card{padding:20px;min-height:245px}.chart-shell{height:170px;margin-top:12px;border-bottom:1px solid #8d86bd55;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 41px,#8d86bd22 42px)}.chart-shell svg{width:100%;height:100%;overflow:visible}.chart-labels,.legend{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px}.legend{justify-content:flex-end;flex-wrap:wrap;font-size:11px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:4px}.mobilebar{display:none}.desktop-only{display:block}.settings-hint{padding:10px;border-radius:9px;background:#fff7;border:1px solid #fff9;color:var(--muted);font-size:12px}.pagination{display:flex;gap:5px;flex-wrap:wrap}
@media(max-width:980px) and (min-width:641px){body{padding:10px}.app-frame{height:calc(100vh - 20px);grid-template-columns:164px minmax(0,1fr);border-radius:20px}.sidebar{padding:20px 10px}.brand{padding-inline:7px;font-size:15px}.nav a,.logout{padding:10px 8px;gap:7px}.main{padding:23px 20px 32px}.grid{gap:11px}.card{padding:14px}.metric-card{min-height:112px}.chart-card.span8{grid-column:span 7}.chart-card+aside.span4{grid-column:span 5}.span3{grid-column:span 6}.grid.metrics .span3{grid-column:span 3}.span4{grid-column:span 6}.span8{grid-column:span 6}}
@media(max-width:640px){html,body{overflow:auto}body{padding:0;background:#d8d8f6}.app-frame{display:block;height:auto;min-height:100vh;border:0;border-radius:0}.sidebar{display:none}.main{height:auto;min-height:100vh;overflow:visible;padding:18px 13px 88px}.topline{margin-bottom:17px}.topline .hello{font-size:12px}.desktop-only{display:none}.span3,.span4,.span6,.span8{grid-column:span 12}.grid.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.metrics .span3{grid-column:span 1}.metric-card{min-height:105px}.metric{font-size:23px}.card{padding:14px}.spread{gap:8px}.section{margin-top:18px}.chart-shell{height:145px}.chart-labels span:nth-child(even){display:none}.legend{justify-content:flex-start;margin-top:5px}.row>.btn,.row>form{flex-grow:1}.row>form>.btn{width:100%}.drop{padding:22px 12px}.mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;padding:8px 4px calc(8px + env(safe-area-inset-bottom));justify-content:space-around;z-index:20;background:#302d7af2;border-top:1px solid #9188df;box-shadow:0 -8px 24px #302d7a24}.mobilebar a{min-width:55px;color:#e9e5ff;text-decoration:none;text-align:center;font-size:10px;line-height:1.7}.main>.spread:first-of-type{align-items:center}}
@media(max-width:390px){.grid.metrics{grid-template-columns:1fr}.grid.metrics .span3{grid-column:span 1}.metric-card{min-height:96px}.topline .hello{max-width:180px}.btn{width:100%}.spread{flex-wrap:wrap}}
/* Full-bleed application shell and account controls. */
body{padding:0;background:#dce0ff}.app-frame{height:100vh;width:100%;max-width:none;margin:0;border:0;border-radius:0;box-shadow:inset 0 0 30px #ffffff38}.brand-mark{width:34px;height:34px;flex-basis:34px;background:#fff;overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:contain}.top-actions{display:flex;align-items:center;gap:10px}.icon-button{position:relative;width:38px;height:38px;display:grid;place-items:center;border:1px solid #ffffff99;border-radius:11px;background:#ffffff66;color:var(--ink);text-decoration:none;font-size:17px}.notification-count{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:99px;background:#ef5bca;color:#fff;font-size:10px;display:grid;place-items:center;font-weight:800}.avatar{width:38px;height:38px;flex-basis:38px;overflow:hidden;text-decoration:none}.avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar{width:96px;height:96px;border-radius:24px;object-fit:cover;background:#fff;border:2px solid #ffffffcc;box-shadow:0 8px 24px #5443a933}.notification-item{display:flex;gap:12px;align-items:flex-start;text-decoration:none}.notification-item.unread{background:linear-gradient(135deg,#ddf8ffcc,#e7dafacc)}.notification-dot{width:10px;height:10px;border-radius:50%;background:#6a63df;margin-top:6px;flex:0 0 auto}.notification-item:not(.unread) .notification-dot{background:#a5a1ba}@media(max-width:980px) and (min-width:641px){body{padding:0}.app-frame{height:100vh;border-radius:0}}
@media(max-width:640px){html,body{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}.app-frame{height:auto;min-height:100dvh;overflow:visible}.main{height:auto;min-height:100dvh;overflow:visible;overscroll-behavior:auto}}
