*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}body{color:#132033;background:#eef3f8;margin:0;font-family:Inter,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.login-page{background:radial-gradient(circle at 0 0,#4f71ff26,#0000 28%),linear-gradient(#f8fafc 0%,#eef3fb 100%);justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.login-shell{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffb8;border:1px solid #13203314;border-radius:28px;grid-template-columns:1.2fr .8fr;width:min(980px,100%);display:grid;overflow:hidden;box-shadow:0 28px 80px #0f172a14}.login-visual{background:linear-gradient(135deg,#111827d9,#2563ebb3),url(https://images.unsplash.com/photo-1554224155-8d04cb21cd6c?auto=format&fit=crop&w=1200&q=80) 50%/cover no-repeat;align-items:flex-end;min-height:700px;padding:40px;display:flex;position:relative}.login-visual-content{color:#fff;max-width:430px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;background:#ffffff1f;border:1px solid #ffffff24;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:700;display:inline-flex}.login-visual h2{margin:18px 0 10px;font-size:clamp(2rem,3vw,3.2rem);line-height:1.1}.login-visual p{color:#fffc;margin:0;font-size:1rem;line-height:1.6}.login-card{background:#fffffff5;flex-direction:column;justify-content:center;padding:38px 34px 26px;display:flex}.login-header{text-align:center;margin-bottom:22px}.logo{color:#fff;background:linear-gradient(135deg,#0f172a,#1d4ed8);border-radius:16px;place-items:center;width:56px;height:56px;margin:0 auto 14px;font-size:1.5rem;font-weight:800;display:grid}.login-header h1{margin:0;font-size:clamp(1.8rem,2vw,2.2rem)}.login-header p{color:#6b7280;margin:8px 0 0;font-size:.95rem}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-form label{letter-spacing:.02em;color:#374151;margin-top:4px;font-size:.76rem;font-weight:700}.auth-form input{background:#fff;border:1px solid #dfe7f1;border-radius:12px;outline:none;width:100%;height:46px;padding:0 14px;transition:border-color .2s,box-shadow .2s}.auth-form input:focus{border-color:#4f46e5;box-shadow:0 0 0 4px #4f46e517}.form-row{justify-content:space-between;align-items:center;gap:16px;margin-top:6px;display:flex}.checkbox-row{color:#4b5563;align-items:center;gap:8px;font-weight:500;display:inline-flex}.checkbox-row input{width:16px;height:16px}.primary-button,.secondary-button,.link-button{border:none;border-radius:12px;font-weight:700;transition:transform .15s,opacity .2s}.primary-button,.secondary-button{height:46px}.primary-button{color:#fff;background:linear-gradient(135deg,#111827,#1f2937);margin-top:10px}.secondary-button{color:#1f2a44;background:#f3f6ff;border:1px solid #dfe7fb}.link-button{color:#2563eb;text-align:center;background:0 0;padding:8px 0}.full-width{width:100%}button:disabled{opacity:.6;cursor:not-allowed}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.link-button:hover:not(:disabled){transform:translateY(-1px)}.message{border-radius:10px;margin-top:14px;padding:11px 12px;font-size:.9rem;line-height:1.5}.error-message{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.success-message{color:#166534;background:#ecfdf5;border:1px solid #bbf7d0}.pending-message{color:#9a5c00;background:#fff7ed;border:1px solid #fed7aa}.otp-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.login-footer{text-align:center;color:#8a94a6;margin-top:18px;font-size:.8rem}.dashboard-layout{background:#edf3f9;min-height:100vh;display:flex}.sidebar-panel{color:#e5edf8;background:linear-gradient(#0c1d33 0%,#182b46 100%);border-right:1px solid #ffffff14;flex-direction:column;width:250px;padding:18px 14px 12px;display:flex}.sidebar-header{border-bottom:1px solid #ffffff0d;align-items:center;gap:12px;padding:10px 10px 18px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#4fa8ff 0%,#3b82f6 100%);border-radius:10px;place-items:center;width:34px;height:34px;font-size:1.05rem;font-weight:800;display:grid}.app-name{color:#fff;font-size:1.05rem;font-weight:800}.tagline{color:#b5c5db;margin-top:4px;font-size:.68rem;line-height:1.5}.sidebar-nav{flex-direction:column;gap:8px;margin-top:18px;display:flex}.nav-item{color:#dfeafd;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;width:100%;padding:12px;font-weight:600;transition:background .2s,color .2s;display:flex}.nav-item.active{color:#fff;background:#5888ff33;box-shadow:inset 0 0 0 1px #91b1ff33}.nav-item:hover{background:#ffffff0a}.nav-icon{text-align:center;opacity:.9;width:16px}.sidebar-footer{color:#d8e5f8;border-top:1px solid #ffffff0f;margin-top:auto;padding:12px 10px 0;font-size:.8rem;font-weight:700}.content-panel{background:#edf3f9;flex:1;min-width:0;position:relative}.topbar{background:linear-gradient(#0b2d5a 0%,#123f73 100%);border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;height:78px;padding:0 28px 0 20px;display:flex;position:relative}.search-wrap{width:min(520px,100%);margin-right:18px;position:relative}.search-wrap input{color:#fff;background:#e6efff1f;border:1px solid #ffffff1f;border-radius:12px;outline:none;width:100%;height:42px;padding:0 16px 0 42px}.search-wrap input::placeholder{color:#ffffffb8}.search-icon{color:#fffc;font-size:1.05rem;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.topbar-actions{align-items:center;gap:14px;display:flex}.notification-button{color:#fff;background:#ffffff12;border:1px solid #ffffff1f;border-radius:10px;width:38px;height:38px;position:relative}.notification-dot{background:#ff4d6d;border-radius:50%;place-items:center;width:18px;height:18px;font-size:.7rem;font-weight:700;display:grid;position:absolute;top:-3px;right:-2px}.user-profile{color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff26;border-radius:12px;align-items:center;gap:12px;padding:6px 10px 6px 8px;display:flex}.profile-avatar,.user-avatar{color:#fff;background:linear-gradient(135deg,#6ed3ff,#5b7dff);border-radius:50%;place-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:grid}.profile-meta{flex-direction:column;line-height:1.2;display:flex}.profile-name{font-size:.92rem;font-weight:700}.profile-role{color:#ffffffb3;font-size:.72rem}.caret{opacity:.8;font-size:1.1rem}.profile-menu{color:#21314a;z-index:50;background:#fff;border:1px solid #dee8f5;border-radius:14px;width:260px;padding:14px;position:absolute;top:72px;right:26px;box-shadow:0 18px 40px #0f203726}.profile-menu-header{border-bottom:1px solid #edf2f9;margin-bottom:10px;padding-bottom:10px}.profile-detail-row{color:#54657e;justify-content:space-between;gap:8px;padding:6px 0;font-size:.86rem;display:flex}.profile-detail-row strong{color:#1c2d48;text-align:right}.logout-button{color:#214981;background:#e9f1ff;border:1px solid #d7e4ff;border-radius:10px;width:100%;margin-top:12px;padding:10px 12px;font-weight:700}.content-inner{padding:26px 24px 32px}.page-shell{flex-direction:column;gap:22px;display:flex}.page-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-title{color:#1d2c45;margin:0;font-size:clamp(2rem,2vw,2.3rem)}.page-subtitle{color:#66768f;margin:8px 0 0;font-size:1rem}.date-pill{color:#3c516f;background:#f3f6fb;border:1px solid #dfeaf8;border-radius:10px;padding:9px 14px;font-weight:700}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.summary-card{background:#fff;border:1px solid #e7eef9;border-radius:16px;padding:18px 18px 16px;box-shadow:0 10px 28px #0f172a0a}.summary-card.compact{padding:18px}.summary-label{color:#5b6b81;font-size:.82rem;font-weight:700}.summary-value{color:#1a2d48;margin-top:12px;font-size:1.9rem;font-weight:800;line-height:1.2}.summary-meta{color:#5d708a;margin-top:8px;font-size:.78rem}.content-grid,.bottom-grid{grid-template-columns:1.7fr 1fr;gap:18px;display:grid}.panel{background:#fff;border:1px solid #e7edf7;border-radius:16px;box-shadow:0 10px 28px #0f172a0a}.section-panel{padding:18px 18px 10px}.panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel-header h3{color:#1d2d46;margin:0;font-size:1.1rem}.text-link{color:#2d6cdf;background:0 0;border:none;padding:0;font-weight:700}.table-wrap{width:100%;overflow-x:auto}.empty-state-tier,.gst-empty{color:#697b90;text-align:center;background:#f4f7fb;border:1px dashed #d6e1ee;border-radius:10px;padding:28px 16px;font-weight:600}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #edf2f9;padding:12px 10px;font-size:.92rem}.data-table th{color:#5b6d85;background:#f8fbff;font-weight:700}.status-badge,.role-pill{letter-spacing:.02em;border-radius:999px;justify-content:center;align-items:center;padding:5px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.status-badge.success{color:#147d47;background:#e8f9ef}.status-badge.warning{color:#9d5d00;background:#fff2d9}.role-pill{color:#264d92;background:#edf4ff}.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:6px;display:grid}.action-card{color:#1d2d46;background:linear-gradient(#f7fbff 0%,#eef7f4 100%);border:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:110px;font-weight:700;display:flex;box-shadow:inset 0 0 0 1px #6c96dc14}.action-icon{color:#2f6fe8;font-size:1.5rem}.chart-panel,.status-panel{min-height:200px;padding:18px}.primary-action-button{color:#fff;background:linear-gradient(135deg,#0f4fd6,#1d7cf0);border:none;border-radius:10px;padding:10px 16px;font-weight:700}.users-header{margin-top:6px}.user-cell{color:#1d2d46;align-items:center;gap:10px;font-weight:700;display:flex}.user-avatar.small{width:28px;height:28px;font-size:.72rem}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.inline-action{color:#1d508d;background:#eef5ff;border:1px solid #dfeaff;border-radius:8px;padding:6px 8px}.inline-action.danger{color:#b32828;background:#fff2f2;border-color:#ffd8d8}.modal-backdrop{z-index:100;background:#0c17266b;place-items:center;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #e3ecf8;border-radius:18px;width:min(640px,100vw - 32px);padding:20px;box-shadow:0 30px 80px #121f3733}.confirmation-card{width:min(420px,100vw - 28px)}.modal-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.modal-header h3{color:#1d2d46;margin:0}.close-button{color:#355070;background:#f4f7fc;border:none;border-radius:50%;width:30px;height:30px;font-size:1.2rem}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.detail-grid div{background:#f7f9fc;border-radius:10px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.detail-grid span{color:#6380a1;text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.detail-grid strong{color:#1d2d46;font-size:.95rem}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.secondary-button.small-button,.primary-action-button.small-button,.danger-button.small-button{border:none;border-radius:10px;padding:9px 14px;font-weight:700}.secondary-button.small-button{color:#1e3659;background:#eef3fb}.danger-button{color:#a42b2b;background:#ffe3e3}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label{color:#53667d;flex-direction:column;gap:6px;font-size:.8rem;font-weight:700;display:flex}.form-grid input,.form-grid select{background:#f9fbff;border:1px solid #dfe9f6;border-radius:10px;width:100%;height:42px;padding:0 12px}@media (width<=1100px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.bottom-grid{grid-template-columns:1fr}}@media (width<=900px){.dashboard-layout{flex-direction:column}.sidebar-panel{width:100%}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (width<=720px){.topbar{flex-wrap:wrap;gap:12px;height:auto;padding-top:14px;padding-bottom:14px}.search-wrap{width:100%}.content-inner{padding:18px 16px 24px}.summary-grid{grid-template-columns:1fr}.page-header-row{flex-direction:column;align-items:flex-start}.form-grid,.detail-grid{grid-template-columns:1fr}}@media (width<=500px){.sidebar-nav,.quick-action-grid{grid-template-columns:1fr}}
