:root{font-family:DM Sans,system-ui,sans-serif;color:#1b2b2e;background:#f3f5f2;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #17282b;--muted: #6e7b7d;--canvas: #f4f6f3;--surface: #ffffff;--surface-soft: #eef2ee;--line: #dfe6e1;--brand: #176b5b;--brand-dark: #114c43;--navy: #142a2d;--accent: #e9a74d;--danger: #c34b4b;--success: #2c8a6f;--warning: #b47626;--info: #397c92;--shadow: 0 16px 50px rgba(25, 44, 43, .08);--radius: 18px}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;min-width:320px;min-height:100vh;background:var(--canvas)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}::selection{background:#b8ded4;color:var(--navy)}.app{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:268px;padding:24px 16px;color:#edf5f1;background:var(--navy);overflow-y:auto;transition:transform .24s ease}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 22px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#f1b65f;color:var(--navy);box-shadow:inset 0 -4px 8px #5c360a1f}.brand-title{font:800 20px/1 Manrope,sans-serif;letter-spacing:-.5px}.brand-subtitle{margin-top:5px;color:#9eb2af;font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.branch-pill{display:flex;align-items:center;gap:10px;margin:0 6px 20px;padding:11px 12px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:#ffffff0e}.branch-pill span{display:block;color:#95aaa7;font-size:11px}.branch-pill strong{display:block;margin-top:2px;font-size:13px}.nav-section{margin:18px 10px 7px;color:#718a86;font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}.nav-list{display:grid;gap:3px}.nav-item{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 13px;border-radius:12px;color:#b8c9c5;font-size:14px;font-weight:600;transition:.16s ease}.nav-item:hover{color:#fff;background:#ffffff0f;transform:translate(2px)}.nav-item.active{color:#fff;background:linear-gradient(90deg,#30998057,#3099801f);box-shadow:inset 3px 0 #64c2a9}.nav-item svg{flex:0 0 auto}.sidebar-footer{margin-top:24px;padding:16px 12px 4px;border-top:1px solid rgba(255,255,255,.09);color:#8ca19e;font-size:11px}.workspace{width:calc(100% - 268px);min-width:0;margin-left:268px}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;height:74px;padding:0 30px;border-bottom:1px solid rgba(217,225,220,.86);background:#f7f8f6e0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-left,.topbar-actions,.user-menu,.inline{display:flex;align-items:center}.topbar-left{gap:14px}.topbar-actions{gap:9px}.menu-button{display:none}.breadcrumb{color:#7a8788;font-size:13px}.breadcrumb strong{color:var(--ink)}.topbar-button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:#536466}.user-menu{gap:11px;margin-left:3px;padding-left:12px;border-left:1px solid var(--line)}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#fff;background:linear-gradient(145deg,var(--brand),#24947c);font-weight:700}.user-copy strong,.user-copy small{display:block}.user-copy strong{font-size:13px}.user-copy small{margin-top:2px;color:var(--muted);font-size:11px}.main{padding:30px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{margin-bottom:7px;color:var(--brand);font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase}.page-head h1{margin:0;font:800 27px/1.2 Manrope,sans-serif;letter-spacing:-.8px;color:var(--ink)}.page-head p{max-width:650px;margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.6}.head-actions{display:flex;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:11px;font-size:13px;font-weight:700;transition:.16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:var(--brand);box-shadow:0 8px 20px #176b5b2e}.btn-primary:hover{background:var(--brand-dark)}.btn-secondary{color:var(--ink);border:1px solid var(--line);background:#fff}.btn-danger{color:#a43b3b;background:#fff1f0}.btn-ghost{color:var(--muted);background:transparent}.btn-icon{width:36px;height:36px;min-height:36px;padding:0}.grid{display:grid;gap:18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr)}.card{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 4px 16px #192c2b06}.card-pad{padding:21px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 21px 15px}.card-head h2{margin:0;font:700 16px/1.3 Manrope,sans-serif}.card-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.stat-card{position:relative;overflow:hidden;padding:20px}.stat-card:after{content:"";position:absolute;width:76px;height:76px;right:-22px;top:-24px;border-radius:50%;background:var(--stat-color, #cbe4dd);opacity:.42}.stat-top{display:flex;align-items:center;justify-content:space-between}.stat-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:var(--stat-ink, var(--brand));background:var(--stat-bg, #e6f3ef)}.stat-change{padding:5px 8px;border-radius:99px;color:var(--success);background:#edf8f4;font-size:11px;font-weight:700}.stat-label{margin-top:18px;color:var(--muted);font-size:12px;font-weight:600}.stat-value{margin-top:4px;font:800 25px/1.2 Manrope,sans-serif;letter-spacing:-.6px}.stat-meta{margin-top:7px;color:#91a09f;font-size:11px}.toolbar{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--line)}.search{position:relative;flex:1;max-width:370px}.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8b9999}.search input{width:100%;height:40px;padding:0 13px 0 40px;border:1px solid var(--line);border-radius:11px;outline:0;background:#fafbf9}.search input:focus{border-color:#7db7a9;box-shadow:0 0 0 3px #176b5b14}.filter-select{height:40px;padding:0 34px 0 12px;border:1px solid var(--line);border-radius:11px;color:#425255;background:#fff}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:11px 18px;color:#7e8b8c;background:#f8faf8;font-size:10px;font-weight:800;letter-spacing:.6px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{padding:14px 18px;border-top:1px solid #edf0ed;color:#354648;font-size:13px;vertical-align:middle}.data-table tbody tr{transition:background .14s}.data-table tbody tr:hover{background:#fbfcfa}.cell-main{font-weight:700;color:var(--ink)}.cell-sub{margin-top:3px;color:#8a9696;font-size:11px}.table-actions{display:flex;justify-content:flex-end;gap:4px}.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.page-buttons{display:flex;gap:6px}.page-buttons button{min-width:32px;height:32px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fff}.page-buttons button.active{border-color:var(--brand);color:#fff;background:var(--brand)}.badge{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 9px;border-radius:99px;font-size:10px;font-weight:800;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge-success{color:#24735e;background:#e8f5f0}.badge-warning{color:#99621e;background:#fff3df}.badge-danger{color:#a84141;background:#fff0ef}.badge-info{color:#2f7086;background:#e8f4f7}.badge-neutral{color:#687476;background:#eff2f1}.form-card{max-width:920px;padding:24px}.form-section+.form-section{margin-top:25px;padding-top:23px;border-top:1px solid var(--line)}.form-section h2{margin:0 0 5px;font:700 15px Manrope,sans-serif}.form-section>p{margin:0 0 18px;color:var(--muted);font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:7px}.field-full{grid-column:1 / -1}.field label{color:#405052;font-size:12px;font-weight:700}.field label span{color:var(--danger)}.field input,.field select,.field textarea{width:100%;min-height:43px;padding:10px 12px;border:1px solid #d9e1dc;border-radius:11px;outline:none;color:var(--ink);background:#fbfcfb;transition:.15s ease}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#79ad9f;background:#fff;box-shadow:0 0 0 3px #176b5b13}.field-error{color:var(--danger);font-size:11px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.checkbox-line{display:flex;align-items:center;gap:8px;color:#405052;font-size:13px}.checkbox-line input{accent-color:var(--brand)}.state{display:grid;place-items:center;min-height:270px;padding:40px;text-align:center}.state-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;color:var(--brand);background:#eaf4f0}.state h3{margin:14px 0 5px;font:700 15px Manrope,sans-serif}.state p{max-width:380px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.spinner{width:30px;height:30px;border:3px solid #dfe8e3;border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px;background:#0c1d1f8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{width:min(500px,100%);max-height:90vh;overflow:auto;border-radius:20px;background:#fff;box-shadow:0 28px 80px #0003}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:21px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font:700 18px Manrope,sans-serif}.modal-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.modal-body{padding:21px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px 21px 21px}.toast-region{position:fixed;z-index:120;right:22px;bottom:22px;display:grid;gap:9px;width:min(370px,calc(100% - 32px))}.toast{display:flex;gap:11px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow);animation:toast-in .22s ease}.toast-success{border-left:4px solid var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast strong{display:block;margin-bottom:2px;font-size:13px}.toast span{color:var(--muted);font-size:12px}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.9fr) minmax(520px,1.1fr);background:#f4f5f1}.login-panel{display:grid;align-content:center;width:min(480px,100%);margin:auto;padding:50px}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:44px}.login-panel h1{margin:0;font:800 34px/1.15 Manrope,sans-serif;letter-spacing:-1.2px}.login-lead{margin:12px 0 28px;color:var(--muted);line-height:1.65}.login-form{display:grid;gap:16px}.password-wrap{position:relative}.password-wrap input{padding-right:45px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:34px;height:34px;color:#748284;background:transparent}.login-extra{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.text-link{color:var(--brand);font-weight:700}.login-submit{width:100%;min-height:48px;margin-top:4px}.demo-box{margin-top:24px;padding:13px 15px;border:1px solid #dae8e2;border-radius:12px;color:#4d6262;background:#eef6f2;font-size:11px;line-height:1.6}.login-visual{position:relative;overflow:hidden;margin:18px;border-radius:28px;color:#fff;background:linear-gradient(145deg,#173639,#145d50 56%,#238c73)}.login-visual:before,.login-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.12)}.login-visual:before{width:560px;height:560px;right:-230px;top:-230px}.login-visual:after{width:330px;height:330px;left:-150px;bottom:-160px}.visual-copy{position:absolute;left:9%;right:9%;bottom:10%;z-index:2}.visual-copy .quote{max-width:550px;margin:0;font:700 30px/1.38 Manrope,sans-serif;letter-spacing:-.8px}.visual-copy .caption{margin-top:22px;color:#bcd7d0;font-size:13px}.visual-card{position:absolute;z-index:2;padding:18px;border:1px solid rgba(255,255,255,.17);border-radius:18px;background:#ffffff1c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.visual-card.one{top:15%;left:11%;width:210px}.visual-card.two{top:29%;right:11%;width:230px}.visual-card small{color:#c4dcd6;font-size:11px}.visual-card strong{display:block;margin-top:8px;font:800 25px Manrope,sans-serif}.mini-bars{display:flex;align-items:flex-end;gap:6px;height:45px;margin-top:13px}.mini-bars i{flex:1;border-radius:4px 4px 2px 2px;background:#f1b65f;opacity:.9}.quick-list{display:grid;gap:3px;padding:0 12px 15px}.quick-item{display:flex;align-items:center;gap:11px;padding:11px 9px;border-radius:10px}.quick-item:hover{background:#f7f9f7}.quick-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:var(--brand);background:#e9f3ef}.quick-copy{flex:1;min-width:0}.quick-copy strong{display:block;font-size:12px}.quick-copy span{display:block;margin-top:3px;color:var(--muted);font-size:10px}.chart-box{height:280px;padding:5px 12px 15px 0}.progress{height:7px;border-radius:99px;overflow:hidden;background:#e8eeea}.progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),#55af97)}.report-tabs{display:flex;gap:7px;padding:0 20px 16px;overflow-x:auto}.report-tab{min-height:34px;padding:0 12px;border-radius:9px;color:var(--muted);background:#f1f3f1;font-size:11px;font-weight:700;white-space:nowrap}.report-tab.active{color:#fff;background:var(--brand)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-item small{display:block;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.detail-item strong{display:block;margin-top:6px;font-size:13px}.tabs{display:flex;gap:20px;padding:0 21px;border-bottom:1px solid var(--line);overflow-x:auto}.tab{position:relative;padding:14px 0;color:var(--muted);background:transparent;font-size:12px;font-weight:700;white-space:nowrap}.tab.active{color:var(--brand)}.tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brand)}.error-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 50% 20%,#e6f1ed,#f5f6f3 58%);text-align:center}.error-code{font:800 100px/1 Manrope,sans-serif;letter-spacing:-7px;color:#c9dbd5}.error-page h1{margin:-7px 0 9px;font:800 25px Manrope,sans-serif}.error-page p{max-width:480px;margin:0 0 22px;color:var(--muted);line-height:1.6}.overlay{display:none}@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:900px){.sidebar{transform:translate(-100%);box-shadow:12px 0 35px #0000002e}.sidebar.open{transform:translate(0)}.overlay{position:fixed;inset:0;z-index:35;display:block;background:#0c1d1f80}.workspace{width:100%;margin-left:0}.menu-button{display:grid}.login-page{grid-template-columns:1fr}.login-visual{display:none}.detail-grid{grid-template-columns:1fr}}@media(max-width:650px){.topbar{height:66px;padding:0 16px}.main{padding:20px 15px}.user-copy,.breadcrumb{display:none}.page-head{display:grid}.head-actions{width:100%}.head-actions .btn{flex:1}.page-head h1{font-size:23px}.stats-grid{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-wrap:wrap}.search{max-width:none;flex-basis:100%}.form-grid,.detail-list{grid-template-columns:1fr}.field-full{grid-column:auto}.form-card{padding:18px}.login-panel{padding:28px 22px}.login-panel h1{font-size:29px}.toast-region{right:16px;bottom:16px}.pagination{align-items:flex-start;gap:10px;flex-direction:column}}
