@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap");:root{--ink:#202027;--muted:#8b8995;--line:#ecebf0;--purple:#7c68df;--deep:#29233b;--bg:#f7f7fa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:DM Sans,sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit}.brand{font-family:Space Grotesk;font-weight:700;font-size:21px;letter-spacing:2px;display:flex;align-items:center;gap:10px}.brand-mark{background:var(--purple);color:#fff;width:31px;height:31px;border-radius:10px;display:grid;place-items:center;font-size:16px}.light{color:#fff}.login-shell{min-height:100vh;display:grid;grid-template-columns:46% 54%}.login-art{background:#2d2642;color:#fff;padding:42px 8%;position:relative;overflow:hidden}.login-art:after{content:"";position:absolute;width:600px;height:600px;border:1px solid #ffffff12;border-radius:50%;right:-270px;bottom:-200px;box-shadow:0 0 0 80px #ffffff08,0 0 0 160px #ffffff05}.art-copy{position:absolute;top:32%;z-index:1}.eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--muted);font-weight:700;margin:0 0 12px}.login-art .eyebrow{color:#c9c3dd}.art-copy h1{font:600 65px/1.05 Space Grotesk;letter-spacing:-3px;margin:0 0 22px}.art-copy h1 em{font-style:normal;color:#a896f4}.art-copy>p:last-child{color:#c4bed2;max-width:300px;line-height:1.6}.art-orbit{position:absolute;right:18%;top:22%;font-size:100px;color:#927de9;transform:rotate(20deg)}.art-foot{position:absolute;bottom:40px;left:8%;font-size:10px;letter-spacing:2px;color:#858098}.login-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:50px}.login-box{width:min(390px,100%)}.mobile-brand{display:none}.login-box h2{font:600 38px Space Grotesk;letter-spacing:-1.5px;margin:0 0 8px}.muted{color:var(--muted);line-height:1.5}.login-box form{margin-top:35px}label{font-size:12px;font-weight:600;display:block;margin:0 0 20px;color:#575562}input,select{display:block;width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px 15px;margin-top:8px;outline:none;color:var(--ink)}input:focus,select:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7c68df18}.button{padding:13px 18px;border-radius:10px;font-weight:700;font-size:13px;transition:.2s}.button.primary{background:var(--purple);color:#fff;box-shadow:0 7px 18px #7c68df35}.button.primary:hover{background:#6955d0;transform:translateY(-1px)}.button.full{width:100%;display:flex;justify-content:space-between;align-items:center}.error{color:#b94444;background:#fff1f1;padding:10px;border-radius:8px;font-size:12px;margin:-5px 0 15px}.login-hint{font-size:11px;color:#aaa6b2;text-align:center;margin-top:30px}.copyright{position:fixed;bottom:25px;font-size:10px;color:#aaa6b2}.app-shell{display:flex;min-height:100vh}.sidebar{width:245px;background:#fff;border-right:1px solid var(--line);padding:30px 18px;display:flex;flex-direction:column;flex-shrink:0}.sidebar .brand{padding:0 12px 60px}.side-label{font-size:9px;color:#aaa7b0;letter-spacing:1.5px;margin:0 12px 14px}.sidebar nav{display:grid;grid-gap:5px;gap:5px}.side-bottom>button,.sidebar nav button{padding:12px;border-radius:9px;text-align:left;color:#9996a1;font-size:13px;display:flex;align-items:center;gap:13px}.sidebar nav button.active{background:#f0edff;color:var(--purple)}.icon{width:18px;height:18px}.side-bottom{margin-top:auto;display:grid;grid-gap:20px;gap:20px}.security-chip{font-size:10px;color:#817e89;background:#f7f7f9;border-radius:8px;padding:11px}.pulse{display:inline-block;width:6px;height:6px;border-radius:50%;background:#5ac18b;margin-right:7px}.main{flex:1 1;min-width:0}.topbar{height:112px;background:#fff;border-bottom:1px solid var(--line);padding:30px 5%;display:flex;align-items:center;justify-content:space-between}.topbar h1{font:600 25px Space Grotesk;margin:0;letter-spacing:-.7px}.top-actions{display:flex;align-items:center;gap:13px}.notification{font-size:25px;color:#aaa7b0;position:relative}.notification i{position:absolute;width:5px;height:5px;background:#ec6b72;border-radius:50%;right:0;top:3px}.avatar,.mini-avatar{background:#e8e1fa;color:#6c57ca;border-radius:10px;width:35px;height:35px;display:grid;place-items:center;font-size:11px;font-weight:700}.profile{display:grid;font-size:12px}.profile span{color:var(--muted);font-size:10px;margin-top:3px}.logout{font-size:20px;color:#999}.content{padding:37px 5%;max-width:1550px}.hero-row,.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;margin-bottom:25px}.stat-card{border-radius:14px;padding:21px;display:flex;gap:17px;align-items:flex-start}.stat-card.violet{background:#eeebfd}.stat-card.mint{background:#e3f5ef}.stat-card.peach{background:#fff0e7}.stat-icon{font-size:22px}.stat-card span{display:block;font-size:11px;color:#777381;margin-bottom:8px}.stat-card strong{display:block;font:600 25px Space Grotesk}.stat-card small{font-size:10px;color:#9995a0;display:block;margin-top:10px}.stat-card small b{color:#42a57a}.client-grid,.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:20px;gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.card-head{display:flex;justify-content:space-between;align-items:flex-start}.card-head h3{font:600 18px Space Grotesk;margin:0}.select{background:#f8f8fa;padding:9px 12px;border-radius:7px;color:#777}.link,.select{font-size:11px}.link{color:var(--purple);font-weight:700}.fake-chart{display:flex;height:220px;margin-top:22px}.chart-y{flex-direction:column;font-size:9px;color:#aaa;padding-bottom:24px}.chart-lines,.chart-y{display:flex;justify-content:space-between}.chart-lines{flex:1 1;margin-left:15px;position:relative;flex-direction:column}.chart-lines i{display:block;border-top:1px dashed #e9e7ee}.chart-lines svg{position:absolute;width:100%;height:90%;bottom:25px;left:0}.chart-labels{display:flex;justify-content:space-around;margin-left:40px;color:#aaa;font-size:9px}.row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #f0eff3}.row:last-child{border-bottom:0}.row-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#f0edff;color:var(--purple);font-size:16px}.row-main{display:grid;grid-gap:4px;gap:4px;flex:1 1}.row-main b{font-size:12px}.row-main span,.row-right span{font-size:10px;color:#a2a0a8}.row-right{text-align:right;display:grid;grid-gap:4px;gap:4px;font-size:12px}.badge{font-size:9px;border-radius:20px;padding:4px 8px;font-weight:700}.badge.success{background:#e6f7ef;color:#43a377}.empty{text-align:center;padding:35px 10px;color:#aaa;font-size:12px}.balance-card{background:#2d2642;border-radius:15px;color:#fff;padding:27px;position:relative;overflow:hidden;min-height:245px}.balance-card:after{content:"";position:absolute;bottom:-85px;right:-40px;width:300px;height:300px;border:1px solid #ffffff15;border-radius:50%;box-shadow:0 0 0 35px #ffffff08,0 0 0 70px #ffffff05}.balance-top{display:flex;justify-content:space-between;color:#a9a0c2;font-size:10px;letter-spacing:1.5px}.balance-card p{font-size:11px;color:#beb4d1;margin-top:42px}.balance-card h2{font:600 34px Space Grotesk;margin:0}.account-no{font-size:11px;color:#9d94b6;margin-top:20px;letter-spacing:1px}.card-decoration{position:absolute;right:43px;top:95px;font:700 90px Space Grotesk;color:#ffffff0d}.positive{color:#3da476}.table-card{overflow:auto;padding:0}.table-card table{width:100%;border-collapse:collapse;min-width:700px}.table-card td,.table-card th{text-align:left;padding:17px 22px;border-bottom:1px solid #f0eff3;font-size:11px;white-space:nowrap}.table-card th{font-size:9px;color:#aaa7b0;letter-spacing:1px}.person{display:flex;align-items:center;gap:10px}.mini-avatar{width:30px;height:30px;font-size:9px}.mono{font-family:monospace;font-size:10px!important;color:#787580}.section-head{margin-bottom:25px}.narrow{max-width:620px}.transfer-intro{text-align:center;margin-bottom:28px}.transfer-intro h2{font:600 28px Space Grotesk;margin:0}.transfer-icon{width:48px;height:48px;border-radius:14px;background:#e9e5ff;color:var(--purple);display:grid;place-items:center;font-size:25px;margin:0 auto 20px}.form-card{padding:32px}.swap-line{display:flex;justify-content:space-between;font-size:11px;color:#575562;font-weight:600;margin:5px 0 -10px}.secure{color:#46a37b;font-size:10px}.modal-backdrop{position:fixed;inset:0;background:#29233b80;display:grid;place-items:center;z-index:5;padding:20px}.modal{background:#fff;border-radius:16px;padding:30px;width:min(480px,100%);position:relative}.modal h2{font:600 25px Space Grotesk;margin:0 0 25px}.modal-close{position:absolute;right:20px;top:17px;font-size:24px;color:#999}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 14px;gap:0 14px}.form-grid .wide{grid-column:1/-1}.notice{margin:20px 5% -10px;padding:12px 15px;background:#e8f7ef;color:#378a66;border-radius:8px;font-size:12px}.loading{display:grid;place-items:center;height:100vh;color:#888;font-size:13px}@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.mobile-brand{display:flex;margin-bottom:45px}.login-panel{padding:35px}.sidebar{width:70px;padding:25px 10px}.sidebar .brand{padding:0 9px 50px}.sidebar .brand:not(.light){font-size:0}.side-bottom>button,.sidebar nav button{justify-content:center}.sidebar nav button{font-size:0}.sidebar nav button .icon{width:20px;height:20px}.security-chip,.side-bottom>button:not(:first-child),.side-label{display:none}.topbar{padding:22px 4%;height:95px}.profile{display:none}.content{padding:25px 4%}.client-grid,.dashboard-grid{grid-template-columns:1fr}.stats-grid{gap:10px}.stat-card{padding:15px;display:block}.stat-card strong{font-size:18px}.stat-card small{display:none}.stat-card span{font-size:9px}.stat-icon{margin-bottom:10px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}}.line-chart{height:230px;padding:25px 5px 0;border-bottom:1px solid var(--line)}.line-chart svg{display:block;width:100%;height:190px;overflow:visible;background:repeating-linear-gradient(180deg,transparent 0,transparent 37px,#ecebf0 38px)}.line-labels{display:flex;justify-content:space-between;padding:8px 4px 0;color:#aaa;font-size:9px}@media(max-width:520px){.topbar h1{font-size:20px}.top-actions{gap:7px}.hero-row,.section-head{align-items:flex-start;gap:12px}.hero-row .button,.section-head .button{font-size:11px;padding:10px}.stat-card strong{font-size:15px}.stat-card{min-width:0}.stat-card span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card{padding:16px}.content{padding-top:20px}.balance-card h2{font-size:29px}}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px;margin-top:12px}.quick-actions button{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 8px;color:var(--purple);font-size:18px;display:grid;place-items:center;grid-gap:5px;gap:5px}.quick-actions button span{font-size:10px;color:#777381;font-weight:600}.bill-providers{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px;margin:0 0 20px}.bill-providers button{border:1px solid var(--line);border-radius:10px;padding:13px 5px;color:#777381;display:grid;place-items:center;grid-gap:6px;gap:6px;font-size:20px}.bill-providers button span{font-size:10px}.bill-providers button.selected{border-color:var(--purple);background:#f0edff;color:var(--purple)}.action-layout{display:grid;grid-template-columns:minmax(500px,620px) minmax(330px,1fr);grid-gap:28px;gap:28px;align-items:start;padding-right:5%}.action-layout>.activity-card{margin-top:102px;min-height:290px}.activity-card{padding:24px}.activity-count{background:#f0edff;color:var(--purple);border-radius:20px;padding:5px 10px;font-size:11px;font-weight:700}.activity-list{margin-top:15px}.activity-item{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #f0eff3}.activity-item:last-child{border-bottom:0}.activity-icon{width:34px;height:34px;border-radius:10px;background:#f0edff;color:var(--purple);display:grid;place-items:center;font-size:17px}.activity-main{display:grid;grid-gap:4px;gap:4px;flex:1 1;min-width:0}.activity-main b{font-size:12px}.activity-main span{font-size:10px;color:#9c99a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-item>strong{font-size:12px;white-space:nowrap}.activity-empty{text-align:center;padding:40px 15px;color:#aaa7b0}.activity-empty span{font-size:30px;color:#c3bddf}.activity-empty p{font-size:12px;color:#777381;margin:12px 0 5px}.activity-empty small{font-size:10px;line-height:1.5;display:block}@media(max-width:1100px){.action-layout{grid-template-columns:1fr;padding-right:0}.action-layout>.activity-card{margin-top:0;max-width:620px;margin-left:4%;margin-right:4%}}.stat-card{background:#fff!important;box-shadow:0 8px 20px rgba(39,32,75,.08)}.card{box-shadow:0 8px 20px rgba(39,32,75,.06)}.system-control{display:flex;align-items:center;gap:28px;margin-bottom:25px;box-shadow:0 8px 20px rgba(39,32,75,.08)}.system-control h3{font:600 18px Space Grotesk;margin:0 0 8px}.system-control form{display:flex;align-items:center;gap:10px;min-width:360px}.system-control form input{margin:0}.success-message{color:#378a66;background:#e8f7ef;border-radius:8px;padding:10px;font-size:12px}.sidebar{background:linear-gradient(180deg,#302748,#5046a8);border-right-color:#453b7d}.sidebar,.sidebar .brand{color:#fff}.side-label{color:#d8d4f0}.side-bottom>button,.sidebar nav button{position:relative;color:#dedbf0;transition:background .2s,color .2s}.side-bottom>button:hover,.sidebar nav button:hover{background:#ffffff16;color:#fff}.sidebar nav button.active{background:#ffffff22;color:#fff;font-weight:700}.sidebar nav button.active:before{content:"";position:absolute;left:-18px;top:7px;bottom:7px;width:4px;border-radius:0 5px 5px 0;background:#b6a7ff;box-shadow:0 0 12px #b6a7ff}.sidebar nav button .icon{color:currentColor}