:root{--color-primary:#fff;--color-primary-hover:#f2f2f2;--color-primary-active:#dedede;--color-primary-dark:#b8b8b8;--color-primary-rgb:255, 255, 255;--color-bg:#090909;--color-bg-deep:#050505;--color-surface:#111;--color-surface-2:#161616;--color-surface-3:#1d1d1d;--color-panel:#111111f0;--color-panel-solid:#111;--color-overlay:#000000c2;--color-text:#f5f5f5;--color-text-secondary:#c4c4c4;--color-text-muted:#858585;--color-text-faint:#575757;--color-border:#ffffff1a;--color-border-soft:#fff1;--color-border-strong:#ffffff2e;--color-input-bg:#0c0c0c;--color-input-border:#ffffff1c;--color-input-placeholder:#5f5f5f;--color-input-focus:#ffffff59;--color-success:#5ee6a8;--color-success-soft:#5ee6a81a;--color-danger:#ff6b7d;--color-danger-soft:#ff6b7d1a;--color-warning:#f4c95d;--color-warning-soft:#f4c95d1a;--color-info:#8cbcff;--color-info-soft:#8cbcff1a;--font-family:"Manrope", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-size-xs:11px;--font-size-sm:12px;--font-size-md:13px;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:20px;--font-size-2xl:27px;--font-size-3xl:36px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:5px;--radius-sm:7px;--radius-md:9px;--radius-lg:12px;--radius-xl:15px;--radius-2xl:18px;--radius-card:16px;--radius-pill:999px;--shadow-sm:0 2px 8px #00000047;--shadow-md:0 10px 30px #00000057;--shadow-lg:0 24px 70px #0000006b;--shadow-card:0 18px 50px #00000042, inset 0 1px 0 #ffffff09;--shadow-primary:0 10px 30px #ffffff0f;--sidebar-width:260px;--sidebar-collapsed-width:76px;--topbar-height:70px;--page-max-width:1600px;--page-padding-x:28px;--page-padding-y:26px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--z-sidebar:100;--z-topbar:200;--z-dropdown:500;--z-modal:1000;--z-toast:1500}*,:before,:after{box-sizing:border-box}html{background:var(--color-bg);min-height:100%;margin:0;padding:0}body{background:radial-gradient(circle at 12% 10%, rgba(var(--color-primary-rgb), .04), transparent 30%), var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}#app{min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-weight:var(--font-weight-bold);letter-spacing:-.025em;margin:0}p{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}::selection{background:rgba(var(--color-primary-rgb), .25);color:var(--color-text)}*{scrollbar-width:thin;scrollbar-color:var(--color-surface-3) var(--color-bg)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-surface-3);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:#29415c}.app-page{width:100%;min-height:100%;padding:var(--page-padding-y) var(--page-padding-x)}.app-page__container{width:100%;max-width:var(--page-max-width);margin:0 auto}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-7);display:flex}.page-header__content{min-width:0}.page-header__eyebrow{color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.page-header__title{color:var(--color-text);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.035em}.page-header__description{max-width:700px;color:var(--color-text-secondary);font-size:var(--font-size-md);margin-top:7px;line-height:1.6}.app-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:linear-gradient(145deg, #ffffff06, #ffffff03), var(--color-panel);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-card__header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);display:flex}.app-card__body{padding:var(--space-6)}.form-label{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:7px;display:block}.form-control{border:1px solid var(--color-input-border);border-radius:var(--radius-lg);background:var(--color-input-bg);width:100%;height:46px;color:var(--color-text);font-size:var(--font-size-md);transition:border-color var(--transition-base), box-shadow var(--transition-base), background var(--transition-base);outline:none;padding:0 14px}.form-control::placeholder{color:var(--color-input-placeholder)}.form-control:hover{border-color:var(--color-border-strong)}.form-control:focus{border-color:var(--color-input-focus);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb), .08);background:#030a12b8}.form-control:disabled{cursor:not-allowed;opacity:.55}.btn{border-radius:var(--radius-lg);min-height:42px;font-family:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:transform var(--transition-base), background var(--transition-base), border-color var(--transition-base), color var(--transition-base), box-shadow var(--transition-base);border:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-active));color:#032219;box-shadow:var(--shadow-primary)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--color-primary-hover), var(--color-primary));transform:translateY(-1px)}.btn-secondary{border:1px solid var(--color-border);color:var(--color-text-secondary);background:#ffffff09}.btn-secondary:hover:not(:disabled){color:var(--color-text);background:#fff1}.status-badge{border-radius:var(--radius-pill);min-height:25px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);align-items:center;gap:6px;padding:0 9px;display:inline-flex}.status-badge--success{background:var(--color-success-soft);color:var(--color-success)}.status-badge--danger{background:var(--color-danger-soft);color:var(--color-danger)}.status-badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.status-badge--info{background:var(--color-info-soft);color:var(--color-info)}.app-table-wrapper{overflow-x:auto}.app-table{border-collapse:collapse;width:100%}.app-table th{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-align:left;text-transform:uppercase;letter-spacing:.06em;padding:13px 16px}.app-table td{border-bottom:1px solid var(--color-border-soft);color:var(--color-text-secondary);font-size:var(--font-size-md);padding:15px 16px}.app-table tbody tr{transition:background var(--transition-fast)}.app-table tbody tr:hover{background:#ffffff06}.amount{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold)}.amount--positive{color:var(--color-success)}.amount--negative{color:var(--color-danger)}.amount--neutral{color:var(--color-text)}.app-divider{background:var(--color-border);width:100%;height:1px}@media (width<=768px){:root{--page-padding-x:16px;--page-padding-y:20px}.page-header{flex-direction:column;align-items:stretch}.page-header__title{font-size:23px}.app-card__header,.app-card__body{padding-left:18px;padding-right:18px}}.app-route-stage{background:var(--color-bg);min-height:100dvh;position:relative;overflow-x:hidden}.app-route-stage{background:var(--color-bg);width:100%;min-height:100dvh;position:relative;overflow-x:hidden}.app-route-view{width:100%;min-height:100dvh}.app-route-enter-active{transition:opacity .22s}.app-route-enter-from{opacity:0}.app-route-enter-to{opacity:1}.app-route-leave-active{transition:opacity .14s}.app-route-leave-from{opacity:1}.app-route-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){.app-route-enter-active,.app-route-leave-active{transition:none}}
