:root{--asthara-primary: #1e40af;--asthara-primary-hover: #1e3a8a;--asthara-secondary: #64748b;--asthara-sidebar-bg: #0f172a;--asthara-sidebar-text: #94a3b8;--asthara-sidebar-active: #1e293b;--asthara-sidebar-active-text: #f8fafc;--asthara-border: #e2e8f0;--asthara-bg: #f8fafc}body{background:var(--asthara-bg);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:#334155;margin:0;padding:0}.app-shell{display:flex;height:100vh;overflow:hidden}.app-sidebar{width:260px;background:var(--asthara-sidebar-bg);color:var(--asthara-sidebar-text);padding:0;flex-shrink:0;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1),margin-left .3s cubic-bezier(.4,0,.2,1);z-index:1050}.app-shell.sidebar-collapsed .app-sidebar{margin-left:-260px}.app-sidebar .brand{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.05);font-weight:700;color:#fff;font-size:18px;letter-spacing:.3px}.app-sidebar a{display:flex;align-items:center;padding:12px 16px;color:var(--asthara-sidebar-text);text-decoration:none;font-size:14px;border-radius:6px;margin-bottom:4px;font-weight:500;transition:all .2s}.app-sidebar a:hover{background:#ffffff0d;color:#fff}.app-sidebar a.active{background:var(--asthara-sidebar-active);color:var(--asthara-sidebar-active-text)}.app-sidebar a i{width:24px;margin-right:8px;font-size:16px;text-align:center}.app-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--asthara-bg);transition:all .3s ease}.hamburger-btn{background:transparent;border:none;color:#64748b;font-size:18px;padding:8px;margin-right:12px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.hamburger-btn:hover{background:#f1f5f9;color:#1e293b}.environment-switcher select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;background-size:12px;padding-right:16px!important}.app-sidebar .brand i{transition:transform .3s ease}.app-sidebar a i{width:20px;margin-right:12px;font-size:14px;text-align:center;opacity:.7}.app-sidebar a.active i{opacity:1}.app-topbar{background:#fff;border-bottom:1px solid var(--asthara-border);border-top:3px solid var(--asthara-primary);padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;box-shadow:0 1px 2px #00000008}.auth-fullscreen{height:100vh;width:100vw;display:flex;flex-direction:column;background:#f1f5f9}body.swal2-height-auto{height:100vh!important}.app-content{flex:1;padding:24px 32px;overflow-y:auto}.app-topbar .topbar-actions{display:flex;align-items:center;gap:16px}.app-topbar .bell-btn{position:relative;background:transparent;border:none;color:#64748b;font-size:20px;padding:4px 8px;display:flex;align-items:center;justify-content:center;transition:color .2s}.app-topbar .bell-btn:hover{color:#1e293b}.app-topbar .bell-btn:focus{outline:none}.panel{background:#fff;border:1px solid var(--asthara-border);border-radius:12px;margin-bottom:24px;box-shadow:0 1px 3px #0000000d,0 1px 2px #00000008}.panel-head{padding:16px 24px;border-bottom:1px solid var(--asthara-border);display:flex;align-items:center;justify-content:space-between}.panel-head h5{margin:0;font-size:16px;font-weight:600;color:#1e293b}.panel-body{padding:24px}.panel-footer{padding:16px 24px;border-top:1px solid var(--asthara-border);background:#f8fafc;border-radius:0 0 12px 12px}.nav-tabs-custom{border-bottom:1px solid var(--asthara-border);display:flex;gap:24px;padding:0 24px}.nav-tabs-custom .nav-link{color:#64748b;padding:16px 0;border:none;background:transparent;font-weight:500;font-size:14px;position:relative;cursor:pointer;text-decoration:none}.nav-tabs-custom .nav-link:hover{color:#1e293b}.nav-tabs-custom .nav-link.active{color:var(--asthara-primary)}.nav-tabs-custom .nav-link.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--asthara-primary);border-radius:2px 2px 0 0}.table-modern{width:100%;border-collapse:separate;border-spacing:0}.table-modern th{background:#f8fafc;padding:12px 16px;font-weight:600;font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--asthara-border);text-align:left}.table-modern td{padding:16px;border-bottom:1px solid #f1f5f9;vertical-align:middle;font-size:14px}.table-modern tbody tr:hover td{background:#f8fafc;cursor:pointer}.badge-soft-success{background:#dcfce7;color:#166534;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.badge-soft-warning{background:#fef9c3;color:#854d0e;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.badge-soft-danger{background:#fee2e2;color:#991b1b;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.badge-soft-info{background:#e0f2fe;color:#075985;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.badge-soft-secondary{background:#f1f5f9;color:#475569;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:500}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px}.kpi-widget{padding:24px;border:1px solid var(--asthara-border);border-radius:12px;background:#fff;box-shadow:0 1px 2px #00000005;display:flex;align-items:center}.kpi-widget .kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;margin-right:16px}.kpi-widget .kpi-content{flex:1}.kpi-widget .kpi-label{font-size:13px;color:#64748b;font-weight:500;margin-bottom:4px}.kpi-widget .kpi-value{font-size:24px;font-weight:700;color:#0f172a;margin-bottom:0;line-height:1.2}.kpi-widget .kpi-delta{font-size:12px;display:flex;align-items:center;gap:4px;margin-top:4px}.profile-header{display:flex;align-items:flex-start;gap:24px;margin-bottom:24px}.profile-avatar{width:80px;height:80px;border-radius:16px;background:#e0f2fe;color:#0284c7;font-size:32px;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.profile-info h2{font-size:24px;font-weight:700;margin:0 0 8px;color:#0f172a}.btn-primary{background:var(--asthara-primary);border-color:var(--asthara-primary)}.btn-primary:hover{background:var(--asthara-primary-hover);border-color:var(--asthara-primary-hover)}.text-primary{color:var(--asthara-primary)!important}.bg-primary{background-color:var(--asthara-primary)!important}.border-primary{border-color:var(--asthara-primary)!important}.mockup-section,.section-head,.section-body{display:none!important}.bg-white{transition:all .2s ease!important}.btn.bg-white:hover,.btn.bg-white.show,.btn.bg-white:active,.btn.bg-white:focus{background-color:#f1f5f9!important;color:var(--asthara-primary)!important;border-color:var(--asthara-primary)!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f!important}.bg-white:not(.btn):hover{background-color:#fff!important;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d!important}.dropdown-menu{background-color:#fff!important;border:1px solid var(--asthara-border)!important;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d!important;padding:.5rem 0}.dropdown-item{color:#334155!important;transition:all .2s ease;font-weight:500;padding:.5rem 1rem}.dropdown-item:hover,.dropdown-item:focus{background-color:var(--asthara-primary)!important;color:#fff!important}.dropdown-item.active{background-color:var(--asthara-primary)!important;color:#fff!important}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:1040}@media(max-width:768px){.app-sidebar{position:fixed;top:0;left:0;bottom:0;height:100vh;transform:translate(-100%);margin-left:0!important}.app-shell.mobile-sidebar-open .app-sidebar{transform:translate(0);box-shadow:0 0 40px #00000040}.app-shell.mobile-sidebar-open .sidebar-backdrop{display:block}.app-topbar{padding:0 12px}.app-content{padding:16px}.app-topbar .topbar-actions{gap:8px}}
