@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--orange:#f05a36;--orange2:#ff815d;--ink:#171b25;--navy:#111827;--navy2:#1c2638;--muted:#7e8796;--line:#e9edf2;--paper:#f5f7fa;--white:#fff;--green:#15966a}
*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;color:var(--ink);font:14px/1.55 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}
.login-page{min-height:100vh;background:#f4f6f9}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.02fr) minmax(480px,.98fr);max-width:1800px;margin:auto;background:#fff;box-shadow:0 20px 80px #1720330c}
.login-visual{position:relative;overflow:hidden;min-height:100vh;padding:42px clamp(34px,6vw,96px);background:radial-gradient(circle at 80% 20%,#293951 0,transparent 32%),linear-gradient(145deg,#111827,#182338 68%,#202b3d);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.visual-grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(#ffffff1a 1px,transparent 1px),linear-gradient(90deg,#ffffff1a 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(135deg,#000,transparent 78%);pointer-events:none}
.brand{position:relative;z-index:2;display:flex;align-items:center;gap:12px;width:max-content}.brand-mark{position:relative;width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#ff7954,#e94c2b);color:#fff;font:800 16px Manrope;letter-spacing:-1px;box-shadow:0 8px 24px #f05a3640}.brand-mark span{position:absolute;right:5px;top:3px;font-size:9px;color:#ffe1a8}.brand b{display:block;font:800 13px Manrope;letter-spacing:.09em}.brand small{display:block;margin-top:3px;font-size:9px;letter-spacing:.17em;color:#9ca9ba}.brand-light{color:#fff}
.visual-copy{position:relative;z-index:1;max-width:570px;margin:60px 0 80px}.kicker,.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em}.kicker{color:#ffad96;display:flex;align-items:center;gap:9px}.kicker i{width:7px;height:7px;border-radius:50%;background:#ff7655;box-shadow:0 0 0 5px #ff76551f}.visual-copy h1{font:800 clamp(48px,6.2vw,82px)/1.04 Manrope,sans-serif;letter-spacing:-.065em;margin:25px 0}.visual-copy h1 em{font-style:normal;color:#ff7958}.visual-copy p{max-width:420px;color:#aeb9c9;font-size:15px;line-height:1.9}.visual-stats{display:flex;gap:38px;margin-top:54px;padding-top:25px;border-top:1px solid #ffffff20}.visual-stats div{display:flex;flex-direction:column;gap:4px}.visual-stats strong{font:800 22px Manrope;color:#fff}.visual-stats span{font-size:10px;color:#93a0b2;letter-spacing:.04em}.visual-bottom{position:relative;z-index:1;display:flex;justify-content:space-between;gap:15px;color:#7f8da0;font-size:9px;letter-spacing:.12em}.orb{position:absolute;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.orb-one{width:450px;height:450px;right:-210px;top:18%}.orb-two{width:300px;height:300px;right:-135px;top:27%;border-color:#f05a3630}
.login-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px clamp(28px,6vw,90px);position:relative}.login-top{position:absolute;top:42px;right:clamp(28px,6vw,90px);font-size:9px;letter-spacing:.13em;color:#8993a1;font-weight:700;display:flex;align-items:center;gap:9px}.status-dot{width:7px;height:7px;background:#16a675;border-radius:50%;box-shadow:0 0 0 4px #16a67518}.login-panel{width:min(100%,430px)}.panel-icon{width:48px;height:48px;border-radius:15px;background:#fff0eb;color:var(--orange);display:grid;place-items:center;font-size:25px;margin-bottom:28px}.panel-heading .eyebrow{color:var(--orange)}.panel-heading h2{font:800 clamp(30px,3vw,38px)/1.2 Manrope;margin:10px 0 9px;letter-spacing:-.05em}.panel-heading p{color:#7f8998;margin:0;max-width:360px;line-height:1.8;font-size:13px}.login-form{margin-top:34px}.login-form label{display:block;margin:19px 0 8px;font-size:10px;font-weight:800;letter-spacing:.1em;color:#4e5868}.field{height:54px;display:flex;align-items:center;gap:12px;border:1px solid #e3e7ed;border-radius:12px;padding:0 15px;background:#fbfcfd;transition:.2s}.field:focus-within{border-color:#f17a5e;box-shadow:0 0 0 4px #f05a3612;background:#fff}.field>span{font-size:17px;color:#9ba4b1}.field input{border:0;outline:0;background:transparent;width:100%;height:100%;color:#202838;font-size:13px}.field input::placeholder{color:#aeb6c1}.primary{height:54px;border:0;border-radius:12px;background:linear-gradient(100deg,#f05a36,#e94d2e);color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em;cursor:pointer;box-shadow:0 10px 22px #f05a362c;transition:.2s}.primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px #f05a3640}.primary span{font-size:18px;margin-left:10px;vertical-align:-1px}.full{width:100%;margin-top:27px}.login-security{display:flex;align-items:center;gap:12px;margin-top:28px;padding:15px 16px;border:1px solid #edf0f4;border-radius:12px;background:#fbfcfd}.security-icon{width:34px;height:34px;border-radius:10px;background:#eaf7f2;color:#15966a;display:grid;place-items:center}.login-security b,.login-security small{display:block}.login-security b{font-size:11px;color:#394455}.login-security small{font-size:10px;color:#929baa;margin-top:2px}.login-footer{position:absolute;bottom:28px;font-size:9px;letter-spacing:.14em;color:#a1a9b5}.login-footer span{color:var(--orange);padding:0 6px}.mobile-brand{display:none}
.notice{background:#fff6ef;border:1px solid #ffdfd0;color:#8d513e;border-radius:11px;padding:12px 14px;font-size:12px;margin:18px 0}.notice a{text-decoration:underline;font-weight:700}.alert{background:#fff0f0;border:1px solid #f0cccc;color:#9b2929;border-radius:10px;padding:12px;font-size:12px;margin:18px 0}
.dashboard-page{min-height:100vh;background:var(--paper)}.sidebar{width:260px;position:fixed;inset:0 auto 0 0;background:var(--navy);padding:28px 18px 20px;color:#fff;display:flex;flex-direction:column;z-index:5}.sidebar .brand{padding:0 8px 31px;border-bottom:1px solid #ffffff14;width:100%}.sidebar .brand-mark{width:40px;height:40px;border-radius:12px}.sidebar .brand b{font-size:11px}.sidebar .brand small{font-size:8px}.side-label{margin:27px 11px 10px;color:#748197;font-size:9px;font-weight:800;letter-spacing:.15em}.side-label-spaced{margin-top:25px}.side-link{min-height:42px;display:flex;align-items:center;gap:12px;padding:0 12px;margin:2px 0;border-radius:9px;color:#aab5c5;font-size:11px;font-weight:600;transition:.18s}.side-link>span{width:20px;text-align:center;font-size:16px;color:#8290a4}.side-link:hover{background:#ffffff0b;color:#fff}.side-link.active{background:#f05a3620;color:#ff9479}.side-link.active>span{color:#ff8060}.sidebar-bottom{margin-top:auto}.side-help{display:flex;align-items:center;gap:10px;padding:13px 10px;border:1px solid #ffffff14;border-radius:11px;background:#ffffff08}.help-icon{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#ffffff12;color:#ff9b80;font-weight:800}.side-help b,.side-help small{display:block}.side-help b{font-size:10px}.side-help small{font-size:9px;color:#8e9bad;margin-top:3px}.side-version{display:flex;justify-content:space-between;margin:19px 3px 0;color:#637187;font-size:8px;letter-spacing:.1em}.side-version span{color:#8995a6}
.dashboard-content{margin-left:260px;min-height:100vh;display:flex;flex-direction:column}.dash-topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,4vw,58px);position:sticky;top:0;z-index:3}.breadcrumb{font-size:9px;letter-spacing:.12em;color:#a0a8b4;font-weight:700}.breadcrumb span{padding:0 10px;color:#d3d8df}.breadcrumb b{color:#4a5565}.top-actions{display:flex;align-items:center;gap:22px}.system-status{font-size:9px;letter-spacing:.08em;color:#7d8998;display:flex;align-items:center;gap:8px}.system-status i{width:7px;height:7px;border-radius:50%;background:#16a675;box-shadow:0 0 0 4px #16a67518}.top-user{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:700;color:#4a5565}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff0eb;color:var(--orange);font-weight:800}.logout{border:1px solid #e8ebf0;background:#fff;border-radius:8px;padding:8px 12px;color:#697486;font-size:10px;font-weight:700;cursor:pointer}.logout:hover{border-color:#f3b6a5;color:var(--orange)}
.dash-main{width:min(1260px,calc(100% - 80px));margin:0 auto;flex:1;padding:35px 0 55px}.dash-hero{position:relative;overflow:hidden;min-height:235px;border-radius:19px;background:linear-gradient(110deg,#182438,#202f45 70%,#29374b);padding:34px 40px;display:flex;align-items:center;justify-content:space-between;color:#fff;box-shadow:0 14px 30px #1a2a4114}.dash-hero .eyebrow{color:#ff9b80}.dash-hero h1{font:800 clamp(28px,3.4vw,40px)/1.2 Manrope;letter-spacing:-.05em;margin:13px 0 8px}.dash-hero h1 em{font-style:normal;color:#ff805f}.dash-hero p{margin:0;color:#aeb9c9;font-size:12px}.hero-art{position:relative;width:220px;height:180px;display:grid;place-items:center;margin-right:25px}.hero-ring{position:absolute;border:1px solid #ffffff18;border-radius:50%}.ring-a{width:170px;height:170px}.ring-b{width:125px;height:125px;border-color:#f078593d}.hero-monogram{width:78px;height:78px;display:grid;place-items:center;border-radius:23px;background:linear-gradient(145deg,#ff7954,#e94c2b);font:800 27px Manrope;box-shadow:0 12px 32px #f05a3650;position:relative}.hero-monogram span{position:absolute;right:10px;top:7px;font-size:10px;color:#ffe1a8}.hero-caption{position:absolute;bottom:-1px;right:-8px;font-size:8px;line-height:1.7;letter-spacing:.16em;color:#9aa9bc;text-align:right}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0 42px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px 19px;display:flex;align-items:center;gap:14px;min-height:94px}.metric-symbol{width:43px;height:43px;border-radius:12px;background:#fff1ec;color:var(--orange);display:grid;place-items:center;font-size:20px}.metric-card:nth-child(2) .metric-symbol{background:#eef3ff;color:#5374c9}.metric-card:nth-child(3) .metric-symbol{background:#eaf7f2;color:#15966a}.metric-card small,.metric-card strong,.metric-card div>span{display:block}.metric-card small{font-size:8px;font-weight:800;letter-spacing:.1em;color:#99a2af}.metric-card strong{font:800 20px Manrope;margin:2px 0;color:#273244}.metric-card div>span{font-size:9px;color:#9aa3b0}.metric-card .online-text{font-size:17px;color:#15966a;letter-spacing:.04em}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px}.section-heading .eyebrow{color:var(--orange);font-size:9px}.section-heading h2{font:800 23px Manrope;letter-spacing:-.04em;margin:5px 0 3px}.section-heading p{font-size:11px;color:#8b95a3;margin:0}.count-pill{border:1px solid #e5e9ef;border-radius:30px;background:#fff;padding:7px 11px;color:#7c8796;font-size:8px;font-weight:800;letter-spacing:.1em}
.app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;min-height:178px;display:flex;flex-direction:column;transition:.2s;position:relative;overflow:hidden}.app-card:after{content:"";position:absolute;top:0;left:0;width:0;height:3px;background:var(--orange);transition:.25s}.app-card:hover{transform:translateY(-3px);border-color:#f1c3b6;box-shadow:0 12px 25px #26364c0b}.app-card:hover:after{width:100%}.app-card-top{display:flex;justify-content:space-between;align-items:center}.app-icon{width:42px;height:42px;border-radius:12px;background:#fff0eb;color:var(--orange);display:grid;place-items:center;font-size:21px}.icon-1{background:#eef3ff;color:#5374c9}.icon-2{background:#eaf7f2;color:#15966a}.icon-3{background:#f3efff;color:#8762c7}.app-category{font-size:8px;letter-spacing:.12em;font-weight:800;color:#a1a9b5}.app-card h3{font:700 14px Manrope;margin:13px 0 4px;color:#293344}.app-card p{font-size:10px;color:#8c96a4;line-height:1.6;margin:0}.app-card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0f2f5;padding-top:11px;margin-top:auto;color:#a1a9b5;font-size:9px}.app-card-bottom b{font-size:17px;color:var(--orange)}
.security-note{display:flex;align-items:center;gap:13px;margin-top:22px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:11px;color:#8390a0}.security-note>span{width:31px;height:31px;flex:0 0 31px;border-radius:9px;background:#eef3ff;color:#5374c9;display:grid;place-items:center}.security-note p{font-size:10px;line-height:1.65;margin:0}.security-note b{color:#4a5668;margin-right:5px}.dash-footer{padding:18px clamp(24px,4vw,58px);border-top:1px solid var(--line);background:#fff;color:#a0a8b4;font-size:8px;letter-spacing:.12em}.dash-footer>span{color:var(--orange);padding:0 5px}.footer-right{float:right!important;color:#a0a8b4!important}
@media(max-width:1100px){.sidebar{width:225px}.dashboard-content{margin-left:225px}.dash-main{width:calc(100% - 48px)}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-topbar{padding:0 24px}.system-status{display:none}}
@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-main{min-height:100vh;padding:80px 24px 70px}.login-top{top:28px;right:24px;font-size:8px}.mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:45px;font:800 10px Manrope;letter-spacing:.08em}.mobile-brand .brand-mark{width:39px;height:39px}.login-panel{max-width:430px}.login-footer{bottom:24px;font-size:8px}.sidebar{position:relative;width:100%;height:auto;inset:auto;padding:15px 17px;display:block}.sidebar .brand{padding:0;border:0}.sidebar .brand-mark{width:37px;height:37px}.side-label,.sidebar .side-link,.sidebar-bottom{display:none}.dashboard-content{margin-left:0}.dash-topbar{height:58px;padding:0 18px}.dash-main{width:calc(100% - 32px);padding:20px 0 35px}.dash-hero{min-height:190px;padding:25px 23px}.hero-art{width:120px;height:130px;margin-right:0}.ring-a{width:120px;height:120px}.ring-b{width:90px;height:90px}.hero-monogram{width:59px;height:59px;border-radius:18px;font-size:21px}.hero-caption{font-size:6px;right:-5px}.metrics{gap:8px;margin:13px 0 30px}.metric-card{padding:12px 10px;gap:8px;min-height:82px}.metric-symbol{width:32px;height:32px;font-size:15px;border-radius:9px}.metric-card small{font-size:6px}.metric-card strong{font-size:16px}.metric-card div>span{font-size:7px}.app-grid{gap:10px}.app-card{padding:14px;min-height:165px}.app-card h3{font-size:12px}.app-card p{font-size:9px}.app-card-bottom{font-size:8px}.top-actions{gap:10px}.top-user{font-size:10px}.logout{padding:7px 9px;font-size:9px}.dash-footer{padding:15px 17px}.footer-right{display:none}}
@media(max-width:480px){.dash-hero{min-height:175px}.dash-hero h1{font-size:27px}.dash-hero p{max-width:230px;font-size:10px}.hero-art{width:85px;transform:scale(.78);transform-origin:center right;margin-left:-15px}.metrics{grid-template-columns:1fr}.metric-card{min-height:70px}.metric-card small{font-size:8px}.metric-card div>span{font-size:9px}.app-grid{grid-template-columns:1fr}.app-card{min-height:145px}.section-heading h2{font-size:20px}.section-heading p{max-width:245px;font-size:10px}.count-pill{font-size:7px;padding:6px 8px}.breadcrumb{font-size:8px}.top-user{gap:6px}.top-user .avatar{width:27px;height:27px}.security-note p{font-size:9px}}

/* FULL WIDTH VIEWPORT OVERRIDE */
html,
body.login-page {
    width: 100%;
    min-width: 320px;
    min-height: 100%;
    margin: 0;
}

.login-shell {
    width: 100%;
    max-width: none;
    min-height: 100vh;
    min-height: 100svh;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
}

.login-visual,
.login-main {
    min-width: 0;
}

@media (min-width: 761px) {
    .login-shell {
        grid-template-columns: 51% 49%;
    }
}



/* PORTAL SIDEBAR TYPOGRAPHY REFINEMENT */
.sidebar .side-link {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.45;
}

.sidebar .side-label {
    font-size: 10px;
}

.sidebar .side-help b {
    font-size: 11px;
}

.sidebar .side-help small {
    font-size: 10px;
}

.sidebar .side-version {
    font-size: 9px;
}

@media (max-width: 760px) {
    .sidebar .side-link,
    .sidebar .side-label {
        font-size: inherit;
    }
}
