@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);body{margin:0}:root{--primary:#5b5bf0;--primary-600:#4646d8;--primary-50:#eef0ff;--primary-100:#e0e3ff;--accent:#14b8a6;--bg:#f4f5fa;--surface:#fff;--surface-2:#f8f9fc;--border:#e8eaf2;--border-strong:#d5d9e6;--text:#171a2e;--text-2:#3d4259;--text-muted:#6b7190;--text-faint:#9aa0bb;--success:#12a56b;--success-50:#e6f7f0;--warning:#e59a0b;--warning-50:#fff5df;--danger:#e5484d;--danger-600:#c93338;--danger-50:#fdecec;--radius-sm:8px;--radius:12px;--radius-lg:16px;--shadow-sm:0 1px 2px #171a2e0d;--shadow:0 1px 3px #171a2e0f,0 8px 24px -8px #171a2e14;--shadow-lg:0 20px 50px -12px #171a2e40;--sidebar-w:264px;--font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}body,html{-webkit-font-smoothing:antialiased;background:#f4f5fa;background:var(--bg);color:#171a2e;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font);font-size:14px;line-height:1.5;margin:0}h1,h2,h3,h4{letter-spacing:-.015em}::selection{background:#e0e3ff;background:var(--primary-100)}:focus-visible{outline:2px solid #5b5bf0;outline:2px solid var(--primary);outline-offset:2px}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{background:#fff;background:var(--surface);border:1px solid #d5d9e6!important;border:1px solid var(--border-strong)!important;border-radius:8px!important;border-radius:var(--radius-sm)!important;color:#171a2e;color:var(--text);font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,select:focus,textarea:focus{border-color:#5b5bf0!important;border-color:var(--primary)!important;box-shadow:0 0 0 4px #eef0ff;box-shadow:0 0 0 4px var(--primary-50);outline:none}input::placeholder,textarea::placeholder{color:#9aa0bb;color:var(--text-faint)}label{color:#3d4259;color:var(--text-2);font-weight:500}button{font-family:inherit}.create-btn,.download-btn,.export-excel-btn,.export-pdf-btn,.filter-toggle-btn,.login-button,.report-btn,.submit-btn,.upload-btn{border-radius:8px!important;border-radius:var(--radius-sm)!important;font-weight:600;letter-spacing:-.005em;transition:transform .12s,box-shadow .15s,background .15s}.create-btn,.login-button,.submit-btn{background:#5b5bf0!important;background:var(--primary)!important;background-image:linear-gradient(180deg,#6a6af5,#4646d8)!important;background-image:linear-gradient(180deg,#6a6af5,var(--primary-600))!important;border:none!important;box-shadow:0 1px 2px #4646d866,inset 0 1px 0 #ffffff2e;color:#fff!important}.create-btn:hover:not(:disabled),.login-button:hover:not(:disabled),.submit-btn:hover:not(:disabled){box-shadow:0 6px 16px -4px #4646d880,inset 0 1px 0 #ffffff2e;transform:translateY(-1px)}.cancel-btn{background:#fff!important;background:var(--surface)!important;border:1px solid #d5d9e6!important;border:1px solid var(--border-strong)!important;border-radius:8px!important;border-radius:var(--radius-sm)!important;color:#3d4259!important;color:var(--text-2)!important}.cancel-btn:hover{background:#f8f9fc!important;background:var(--surface-2)!important}.edit-btn{background:#eef0ff!important;background:var(--primary-50)!important;border:none!important;border-radius:6px!important;color:#4646d8!important;color:var(--primary-600)!important}.edit-btn:hover{background:#e0e3ff!important;background:var(--primary-100)!important}.delete-btn,.delete-logo-btn,.remove-image-btn,.remove-item-btn{background:#fdecec!important;background:var(--danger-50)!important;border:none!important;border-radius:6px!important;color:#c93338!important;color:var(--danger-600)!important}.delete-btn:hover,.delete-logo-btn:hover,.remove-image-btn:hover,.remove-item-btn:hover{background:#e5484d!important;background:var(--danger)!important;color:#fff!important}.account-card,.profile-card,.profile-form-card,.report-card,.setting-item,.settings-card,.stat-card,.welcome-section{background:#fff;background:var(--surface);border:1px solid #e8eaf2;border:1px solid var(--border);border-radius:12px!important;border-radius:var(--radius)!important;box-shadow:0 1px 3px #171a2e0f,0 8px 24px -8px #171a2e14!important;box-shadow:var(--shadow)!important}table{border-collapse:collapse;width:100%}thead th{background:#f8f9fc!important;background:var(--surface-2)!important;color:#6b7190!important;color:var(--text-muted)!important;font-size:11.5px!important;font-weight:600!important;letter-spacing:.06em;text-transform:uppercase}tbody td,thead th{border-bottom:1px solid #e8eaf2!important;border-bottom:1px solid var(--border)!important}tbody td{color:#3d4259;color:var(--text-2)}tbody tr{transition:background .12s}tbody tr:hover{background:#f8f9fc!important;background:var(--surface-2)!important}.invoices-table,.portfolio-table,.report-table,.reports-table{border-radius:12px;border-radius:var(--radius);overflow:hidden}.default-badge,.status-badge{border-radius:999px!important;font-weight:600}.page-title{color:#171a2e!important;color:var(--text)!important;font-size:26px!important;font-weight:700!important;letter-spacing:-.025em}.empty-state,.loading{color:#6b7190!important;color:var(--text-muted)!important}*{scrollbar-color:#d5d9e6 #0000;scrollbar-color:var(--border-strong) #0000;scrollbar-width:thin}.cancel-btn,.create-btn,.download-btn,.report-btn,.submit-btn,.upload-btn{cursor:pointer;font-size:14px;padding:10px 18px}.delete-btn,.edit-btn{font-size:13px;padding:6px 12px}.loading{font-size:15px;padding:56px 20px}.empty-state{background:var(--surface);border:1px dashed #d5d9e6;border:1px dashed var(--border-strong);border-radius:12px;border-radius:var(--radius);padding:56px 20px}.empty-state p{font-size:15px;margin-bottom:18px}.login-container{background:var(--surface);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh}.login-aside{background:#101328;background-image:radial-gradient(90% 60% at 10% 0,#5b5bf08c,#0000 60%),radial-gradient(70% 50% at 100% 100%,#14b8a659,#0000 60%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:40px 56px;position:relative}.login-aside:after{background-image:radial-gradient(#ffffff17 1px,#0000 0);background-size:22px 22px;content:"";inset:0;mask-image:linear-gradient(180deg,#0000,#000 40%,#0000);-webkit-mask-image:linear-gradient(180deg,#0000,#000 40%,#0000);pointer-events:none;position:absolute}.login-aside>*{position:relative;z-index:1}.login-brand{align-items:center;display:flex;font-size:17px;font-weight:650;gap:12px}.login-brand .brand-mark{background:linear-gradient(135deg,#7c7cff,#5b5bf0 55%,#14b8a6);border-radius:12px;display:grid;font-weight:700;height:40px;place-items:center;width:40px}.login-aside-copy h2{font-size:38px;font-weight:700;letter-spacing:-.03em;line-height:1.15;margin:0 0 14px;max-width:460px}.login-aside-copy p{color:#ffffffb3;font-size:16px;margin:0;max-width:440px}.login-aside-foot{color:#ffffff73;font-size:13px}.login-main{align-items:center;background:var(--bg);display:flex;justify-content:center;padding:32px}.login-box{max-width:400px;width:100%}.login-box h1{color:var(--text);font-size:28px;font-weight:700;letter-spacing:-.03em;margin:0 0 6px}.login-subtitle{color:var(--text-muted);font-size:15px;margin:0 0 28px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:13px;margin-bottom:6px}.form-group input{padding:12px 14px;width:100%}.form-group input:disabled{background:var(--surface-2);cursor:not-allowed}.login-button{cursor:pointer;font-size:15px;margin-top:6px;padding:13px;width:100%}.login-button:disabled{cursor:not-allowed;opacity:.7}.error-message{background:var(--danger-50);border:1px solid #f7c7c9;border-radius:var(--radius-sm);color:var(--danger-600);font-size:13.5px;margin-bottom:18px;padding:11px 14px}@media (max-width:860px){.login-container{grid-template-columns:1fr}.login-aside{display:none}}.sidebar{background:#101328;background-image:radial-gradient(120% 60% at 0 0,#5b5bf047,#0000 60%),radial-gradient(80% 40% at 100% 100%,#14b8a61f,#0000 60%);color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:transform .25s ease;width:var(--sidebar-w);z-index:200}.sidebar-header{align-items:center;display:flex;gap:12px;padding:22px 20px 18px}.brand-mark{background:linear-gradient(135deg,#7c7cff,#5b5bf0 55%,#14b8a6);border-radius:11px;box-shadow:0 6px 18px -4px #5b5bf0b3;display:grid;font-size:18px;font-weight:700;height:38px;place-items:center;width:38px}.brand-name{font-size:15px;font-weight:650;letter-spacing:-.01em}.brand-sub{color:#ffffff80;font-size:11.5px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:6px 12px 12px}.nav-section{margin-bottom:14px}.nav-section-title{color:#ffffff61;font-size:10.5px;font-weight:600;letter-spacing:.1em;padding:10px 10px 6px;text-transform:uppercase}.nav-item{align-items:center;border-radius:10px;color:#ffffffad;display:flex;gap:12px;margin-bottom:2px;padding:9px 12px;position:relative;text-decoration:none;transition:background .15s,color .15s}.nav-item:hover{background:#ffffff12;color:#fff}.nav-item.active{background:#ffffff1c;box-shadow:inset 0 0 0 1px #ffffff0f;color:#fff}.nav-item.active:before{background:#8b8bff;border-radius:0 3px 3px 0;bottom:9px;content:"";left:-12px;position:absolute;top:9px;width:3px}.nav-item.active .nav-icon{color:#a5a5ff}.nav-icon{flex-shrink:0}.nav-label{font-size:14px;font-weight:500}.sidebar-footer{border-top:1px solid #ffffff14;padding:12px}.sidebar-user{align-items:center;background:#ffffff0d;border-radius:12px;display:flex;gap:10px;padding:8px}.avatar{background:linear-gradient(135deg,#5b5bf0,#14b8a6);border-radius:10px;display:grid;flex-shrink:0;font-weight:650;height:36px;place-items:center;width:36px}.sidebar-user-text{flex:1 1;min-width:0}.sidebar-user-name{font-size:13px;font-weight:600}.sidebar-user-email,.sidebar-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-email{color:#ffffff80;font-size:11.5px}.sidebar-logout{background:#0000;border:none;border-radius:8px;color:#fff9;cursor:pointer;display:grid;padding:8px;place-items:center}.sidebar-logout:hover{background:#e5484d33;color:#ff8a8e}@media (max-width:900px){.sidebar{transform:translateX(-100%)}.sidebar.open{box-shadow:var(--shadow-lg);transform:translateX(0)}}.header{backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);background:#f4f5fad1;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;gap:14px;padding:14px 32px}.header-title{align-items:baseline;display:flex;flex:1 1;gap:8px;min-width:0}.header-title h1{color:var(--text);font-size:16px;font-weight:650;margin:0}.crumb{color:var(--text-faint);font-size:13px}.crumb-sep{color:var(--border-strong)}.header-date{background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-size:12.5px;padding:6px 12px}.menu-button{background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);cursor:pointer;display:none;padding:8px}@media (max-width:900px){.menu-button{display:grid;place-items:center}.header-content{padding:12px 16px}.header-date{display:none}}.page-container{max-width:1200px}.page-title{margin:0 0 24px}.hero{align-items:center;background:#101328;background-image:radial-gradient(80% 140% at 0 0,#5b5bf0b3,#0000 60%),radial-gradient(60% 120% at 100% 100%,#14b8a673,#0000 60%);border-radius:var(--radius-lg);box-shadow:var(--shadow);color:#fff;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px;padding:28px 32px}.hero-eyebrow{color:#ffffffb3;font-size:13px;margin:0}.hero-title{font-size:28px;font-weight:700;letter-spacing:-.03em;margin:2px 0 6px}.hero-sub{color:#ffffffbf;margin:0}.hero-cta{align-items:center;background:#fff;border-radius:10px;color:var(--primary-600);display:inline-flex;font-weight:600;gap:8px;padding:11px 18px;text-decoration:none;transition:transform .12s,box-shadow .15s;white-space:nowrap}.hero-cta:hover{box-shadow:0 8px 20px -6px #0006;transform:translateY(-1px)}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-bottom:24px}.stat-card{align-items:center;border-top:none;display:flex;gap:16px;padding:20px}.stat-icon{border-radius:12px;display:grid;flex-shrink:0;height:48px;place-items:center;width:48px}.tone-indigo{background:var(--primary-50);color:var(--primary-600)}.tone-teal{background:#dcf6f2;color:#0d8f81}.tone-green{background:var(--success-50);color:var(--success)}.tone-red{background:var(--danger-50);color:var(--danger-600)}.stat-content h3{color:var(--text-muted);font-size:13px;font-weight:500;letter-spacing:0;margin:0 0 2px}.stat-value{color:var(--text);font-size:24px;font-weight:700;letter-spacing:-.03em;margin:0}.stat-hint{color:var(--text-faint);font-size:12px}.home-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1.3fr 1fr;margin-bottom:24px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px}.panel-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.panel-head h3{font-size:15px;font-weight:650;margin:0}.panel-link{align-items:center;color:var(--primary-600);display:inline-flex;font-size:13px;font-weight:500;gap:4px;text-decoration:none}.panel-link:hover{text-decoration:underline}.panel-empty{color:var(--text-muted);margin:8px 0}.bars{align-items:flex-end;display:flex;gap:12px;height:220px}.bar-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:6px;height:100%;justify-content:flex-end;min-width:0}.bar-val{color:var(--text-muted);font-size:11px;height:14px;white-space:nowrap}.bar-track{align-items:flex-end;background:var(--surface-2);display:flex;flex:1 1;max-width:44px;overflow:hidden}.bar-fill,.bar-track{border-radius:8px;width:100%}.bar-fill{background:linear-gradient(180deg,#7c7cff,var(--primary));min-height:3px;transition:height .4s ease}.bar-label{color:var(--text-muted);font-size:12px}.recent-list{list-style:none;margin:0;padding:0}.recent-list li{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;padding:12px 0}.recent-list li:last-child{border-bottom:none}.recent-main{display:flex;flex-direction:column;min-width:0}.recent-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-meta{color:var(--text-muted);font-size:12px}.pill{border-radius:999px;font-size:12.5px;font-weight:600;padding:4px 10px;white-space:nowrap}.pill-green{background:var(--success-50);color:var(--success)}.pill-red{background:var(--danger-50);color:var(--danger-600)}.quick-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.quick-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);display:flex;font-weight:500;gap:12px;padding:16px 18px;text-decoration:none;transition:border-color .15s,transform .12s,box-shadow .15s}.quick-card span{flex:1 1}.quick-card svg:first-child{color:var(--primary)}.quick-card svg:last-child{color:var(--text-faint)}.quick-card:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-1px)}@media (max-width:900px){.home-grid{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column;padding:22px}}.profile-card{overflow:hidden}.profile-header{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--primary-600) 100%);display:flex;gap:20px;padding:40px}.profile-avatar{align-items:center;background:#fff;border-radius:50%;color:var(--primary);display:flex;font-size:36px;font-weight:700;height:80px;justify-content:center;width:80px}.profile-info h3{color:#fff;font-size:24px;margin:0 0 5px}.profile-info p{color:#ffffffe6;margin:0}.profile-details{grid-gap:20px;display:grid;gap:20px;padding:30px 40px}.detail-item label{color:var(--text-muted);display:block;font-size:12px;font-weight:600;margin-bottom:5px;text-transform:uppercase}.detail-item p{color:var(--text);font-size:16px;margin:0}.settings-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:30px}.settings-card h3{color:var(--text);font-size:20px;margin:0 0 20px}.setting-item{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px 0}.setting-item:last-child{border-bottom:none}.setting-info h4{color:var(--text);font-size:16px;margin:0 0 5px}.setting-info p{color:var(--text-muted);font-size:14px;margin:0}.switch{display:inline-block;height:24px;position:relative;width:50px}.switch input{height:0;opacity:0;width:0}.slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background-color:var(--primary)}input:checked+.slider:before{transform:translateX(26px)}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.analytics-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:25px}.analytics-card h3{color:var(--text-muted);font-size:14px;font-weight:500;margin:0 0 15px}.analytics-value{color:var(--text);font-size:32px;font-weight:700;margin:0 0 10px}.analytics-change{font-size:13px;font-weight:500}.analytics-change.positive{color:#2ecc71}.analytics-change.negative{color:var(--danger)}.reports-table{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.reports-table table{border-collapse:collapse;width:100%}.reports-table th{background:var(--surface-2);color:var(--text);font-size:14px;font-weight:600;padding:15px;text-align:left;text-transform:uppercase}.reports-table td{border-top:1px solid var(--border);color:var(--text);padding:15px}.status{border-radius:15px;font-size:12px;font-weight:600;padding:5px 12px}.status.ready{background-color:#d4edda;color:#155724}.status.processing{background-color:#fff3cd;color:#856404}.action-btn{background-color:var(--primary);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:background-color .3s}.action-btn:hover{background-color:#5568d3}.invoices-container{max-width:1280px}.inv-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:22px}.inv-title{font-size:26px;font-weight:700;letter-spacing:-.025em;margin:0}.inv-sub{color:var(--text-muted);margin:4px 0 0}.inv-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.ghost-btn,.inv-create{align-items:center;display:inline-flex;gap:8px}.ghost-btn{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;font-size:13.5px;font-weight:600;padding:9px 14px;transition:background .15s,border-color .15s}.ghost-btn:hover{background:var(--surface-2)}.ghost-btn.on{background:var(--primary-50);border-color:var(--primary);color:var(--primary-600)}.inv-summary{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:20px}.inv-sum-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:2px;padding:14px 18px}.inv-sum-card span{color:var(--text-muted);font-size:12px;font-weight:500}.inv-sum-card strong{font-size:21px;font-weight:700;letter-spacing:-.03em}.inv-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.inv-search{flex:1 1;min-width:240px;position:relative}.inv-search svg{color:var(--text-faint);left:13px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.inv-search input{padding:10px 14px 10px 38px;width:100%}.inv-tabs{background:var(--border);border-radius:10px;display:inline-flex;gap:2px;padding:3px}.inv-tab{background:#0000;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:all .15s}.inv-tab.on,.inv-tab:hover{color:var(--text)}.inv-tab.on{background:var(--surface);box-shadow:var(--shadow-sm)}.filter-count{align-items:center;background:var(--primary);border-radius:999px;color:#fff;display:inline-flex;font-size:11px;height:18px;justify-content:center;min-width:18px;padding:0 5px}.inv-error{background:var(--danger-50);border:1px solid #f7c7c9;border-radius:var(--radius-sm);color:var(--danger-600);margin-bottom:16px;padding:12px 16px}.filter-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px;padding:20px}.filter-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{color:var(--text-muted);font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.filter-group input,.filter-group select{padding:9px 11px}.filter-range{grid-column:span 2}.range-inputs{align-items:center;display:flex;gap:8px}.range-inputs input{flex:1 1;min-width:0}.range-inputs span{color:var(--text-faint)}.filter-footer{align-items:center;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:18px;padding-top:14px}.filter-result-count{color:var(--text-muted);font-size:13px}.clear-filters-btn{background:#0000;border:1px solid #f1b8ba;border-radius:var(--radius-sm);color:var(--danger-600);cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all .15s}.clear-filters-btn:hover{background:var(--danger);border-color:var(--danger);color:#fff}.invoices-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.table-scroll{overflow-x:auto}.invoices-table table{min-width:860px}.invoices-table th{padding:13px 18px;text-align:left;white-space:nowrap}.invoices-table td{padding:14px 18px;vertical-align:middle}.invoices-table .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.invoices-table td.strong{color:var(--text);font-weight:650}.invoices-table th.num:last-child{padding-right:18px}.inv-no{color:var(--text);font-weight:650}.inv-date{color:var(--text-muted);font-size:12px}.cust{align-items:center;display:flex;gap:10px}.cust-avatar{background:var(--primary-50);border-radius:9px;color:var(--primary-600);display:grid;flex-shrink:0;font-size:13px;font-weight:650;height:30px;place-items:center;width:30px}.cust-name{color:var(--text);font-weight:500}.row-cancelled td{opacity:.55}.row-cancelled td:last-child,.row-cancelled td:nth-last-child(2){opacity:1}.action-buttons{display:flex;gap:4px;justify-content:flex-end}.icon-btn{background:#0000;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;display:grid;height:32px;place-items:center;transition:all .15s;width:32px}.icon-btn:hover{background:var(--primary-50);color:var(--primary-600)}.icon-btn.danger:hover{background:var(--danger-50);color:var(--danger-600)}.table-foot{background:var(--surface-2);border-top:1px solid var(--border);color:var(--text-muted);font-size:12.5px;gap:12px;justify-content:space-between;padding:12px 18px}.pg-controls,.table-foot{align-items:center;display:flex;flex-wrap:wrap}.pg-controls{gap:16px}.pg-size{align-items:center;display:inline-flex;font-weight:500;gap:8px}.pg-size select{font-size:13px;padding:5px 8px}.pg-nav{align-items:center;display:inline-flex;gap:4px}.pg-btn{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;color:var(--text-2);cursor:pointer;font-size:13px;font-weight:600;height:32px;min-width:32px;padding:0 8px;transition:all .15s}.pg-btn:hover:not(:disabled):not(.on){background:var(--primary-50);border-color:var(--primary);color:var(--primary-600)}.pg-btn.on{background:var(--primary);border-color:var(--primary);color:#fff}.pg-btn:disabled{cursor:not-allowed;opacity:.4}.pg-gap{color:var(--text-faint);padding:0 4px}.status-active,.status-cancelled{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:3px 10px}.status-active{background:var(--success-50);color:var(--success)}.status-active:before,.status-cancelled:before{background:currentColor;border-radius:50%;content:"";height:6px;width:6px}.status-cancelled{background:var(--border);color:var(--text-muted)}.report-btn{background:var(--primary-50);border:none;color:var(--primary-600);font-size:13px;padding:8px 14px}.report-btn:hover{background:var(--primary-100)}.report-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden;padding:24px;position:relative}.report-panel:before{background:linear-gradient(180deg,#7c7cff,var(--accent));bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.report-panel-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.report-panel-header h3{font-size:18px;margin:0 0 4px}.report-subtitle{color:var(--text-muted);font-size:13px;margin:0}.print-report-btn{background:var(--text);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:9px 16px;white-space:nowrap}.print-report-btn:hover{background:#2a2f4c}.report-section{margin-bottom:24px}.report-section-title{border-bottom:1px solid var(--border);color:var(--text-muted);font-size:11.5px;font-weight:700;letter-spacing:.08em;margin:0 0 12px;padding-bottom:8px;text-transform:uppercase}.report-row-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.report-card{background:var(--surface-2);border-radius:10px;box-shadow:none!important;padding:14px 16px}.report-card .card-label{color:var(--text-muted);font-size:11px;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.report-card .card-value{font-size:22px;font-weight:700;letter-spacing:-.02em}.report-card .card-value.green{color:var(--success)}.report-card .card-value.red{color:var(--danger)}.report-card .card-value.blue{color:var(--primary-600)}.report-table{font-size:13px}.report-table td,.report-table th{padding:11px 12px;text-align:left}.report-table .text-right{text-align:right}.report-table .cancelled-row td{color:var(--text-muted)}.report-table .total-row td{background:var(--primary-50);color:var(--text);font-weight:700}@media (max-width:700px){.filter-range{grid-column:span 1}.inv-search{min-width:100%}}.invoice-form-container{counter-reset:sec;margin:0 auto;max-width:1000px}.form-header{align-items:flex-end;display:flex;gap:16px;justify-content:space-between;margin-bottom:22px}.form-header h2{color:var(--text);font-size:26px;font-weight:700;letter-spacing:-.025em;margin:0}.form-header:after{content:none}.back-btn{align-items:center;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;display:inline-flex;font-size:13.5px;font-weight:600;gap:6px;padding:9px 14px;transition:background .15s}.back-btn:hover{background:var(--surface-2)}.error-alert{background:var(--danger-50);border:1px solid #f7c7c9;border-radius:var(--radius-sm);color:var(--danger-600);margin-bottom:18px;padding:12px 16px}.form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);counter-increment:sec;margin-bottom:18px;padding:22px 24px 20px}.form-section>h3,.section-header h3,.section-header-with-action h3{align-items:center;color:var(--text);display:flex;font-size:16px;font-weight:650;gap:10px;margin:0 0 18px}.form-section>h3:before,.section-header h3:before,.section-header-with-action h3:before{background:var(--primary-50);border-radius:8px;color:var(--primary-600);content:counter(sec);display:grid;flex-shrink:0;font-size:12px;font-weight:700;height:24px;place-items:center;width:24px}.section-header,.section-header-with-action{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.section-header h3,.section-header-with-action h3{margin:0}.manage-profiles-btn{background:var(--surface);border:1px solid var(--primary-100);border-radius:var(--radius-sm);color:var(--primary-600);cursor:pointer;font-size:13px;font-weight:600;padding:7px 13px;transition:all .15s}.manage-profiles-btn:hover{background:var(--primary-50);border-color:var(--primary)}.profile-selector{background:var(--primary-50)!important;border-color:var(--primary-100)!important;font-weight:500;padding:10px 12px;width:100%}.profile-selector:focus{background:var(--surface)!important}.form-row{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:16px}.form-row:last-child{margin-bottom:0}.form-field{min-width:0}.form-field label{color:var(--text-2);margin-bottom:6px}.form-field input,.form-field select,.form-field textarea{width:100%}.form-field textarea{min-height:44px;resize:vertical}.form-field input[readonly]{background:var(--surface-2)!important}.form-field small{color:var(--text-muted)!important}.add-item-btn{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:7px 14px;transition:background .15s}.add-item-btn:hover{background:var(--primary-600)}.item-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;padding:18px 20px}.item-card:last-child{margin-bottom:0}.item-header{align-items:center;border-bottom:1px dashed var(--border-strong);display:flex;justify-content:space-between;margin-bottom:14px;padding-bottom:10px}.item-header h4{color:var(--primary-600);font-size:13px;font-weight:700;letter-spacing:.06em;margin:0;text-transform:uppercase}.remove-item-btn{cursor:pointer;font-size:12.5px;padding:5px 11px}.item-total{border-top:1px solid var(--border);color:var(--text);font-size:15px;font-weight:700;margin-top:16px;padding-top:14px;text-align:right}.total-section{align-items:center;background:#101328;background-image:radial-gradient(90% 200% at 0 0,#5b5bf0a6,#0000 60%),radial-gradient(60% 160% at 100% 100%,#14b8a666,#0000 60%);border-radius:var(--radius);box-shadow:var(--shadow);color:#fff;display:flex;justify-content:flex-end;margin-bottom:18px;padding:20px 26px}.total-section h3{font-feature-settings:"tnum";font-size:24px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.02em;margin:0}.form-actions{background:linear-gradient(180deg,#f4f5fa00,var(--bg) 40%);bottom:0;margin:0 -8px;padding:14px 8px;position:-webkit-sticky;position:sticky;z-index:20}.form-actions .cancel-btn,.form-actions .submit-btn{font-size:14.5px;padding:11px 26px}.submit-btn:disabled{opacity:.7}@media (max-width:700px){.form-section{padding:18px 16px}.form-header{align-items:flex-start;flex-direction:column}.section-header-with-action{flex-wrap:wrap}}.customer-profiles-container,.seller-profiles-container{max-width:1200px}.profiles-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.profiles-header h2{color:var(--text);font-size:28px;margin:0}.profile-form-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}.profile-form-card h3{color:var(--text);margin:0 0 20px}.profiles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.profile-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:25px;position:relative;transition:transform .2s,box-shadow .2s}.profile-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.profile-card h3{color:var(--text);font-size:20px;margin:0 0 15px}.profile-details{margin-bottom:20px}.profile-details p{color:#555;font-size:14px;margin:8px 0}.profile-details p.address{color:#666;line-height:1.5}.profile-details strong{color:var(--text);font-size:16px}.profile-actions{border-top:1px solid var(--border);display:flex;gap:10px;padding-top:15px}.bank-accounts-container{max-width:1200px}.accounts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.accounts-header h2{color:var(--text);font-size:28px;margin:0}.account-form-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}.account-form-card h3{color:var(--text);margin:0 0 20px}.accounts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.account-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:25px;position:relative;transition:transform .2s,box-shadow .2s}.account-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.default-badge{background:linear-gradient(135deg,var(--primary) 0,var(--primary-600) 100%);border-radius:12px;color:#fff;font-size:11px;font-weight:600;padding:4px 12px;position:absolute;right:15px;top:15px}.account-card h3{color:var(--text);font-size:20px;margin:0 0 15px}.account-details{margin-bottom:20px}.account-details p{color:#555;font-size:14px;margin:8px 0}.account-details strong{color:var(--text);font-size:16px}.account-actions{border-top:1px solid var(--border);display:flex;gap:10px;padding-top:15px}.delete-btn,.edit-btn{border:none;border-radius:5px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:8px;transition:all .2s}.edit-btn{background-color:var(--primary)}.edit-btn:hover{background-color:var(--primary-600)}.delete-btn{background-color:var(--danger)}.delete-btn:hover{background-color:var(--danger-600)}.empty-state{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;grid-column:1/-1}.portfolio-container{max-width:1300px}.portfolio-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.portfolio-header h2{color:var(--text);font-size:28px;margin:0}.portfolio-form-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}.portfolio-form-card h3{color:var(--text);font-size:20px;margin:0 0 24px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field.full-width{grid-column:1/-1}.form-field.checkbox-field{justify-content:center}.form-field label{color:#555;font-size:13px;font-weight:600}.form-field .hint{color:#999;font-size:11px;font-weight:400}.form-field input,.form-field select,.form-field textarea{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;font-size:14px;padding:10px 12px;transition:border-color .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--primary);outline:none}.color-preview{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;height:8px;margin-top:4px}.form-actions{border-top:1px solid var(--border);display:flex;gap:12px;justify-content:flex-end;margin-top:8px;padding-top:16px}.portfolio-table-wrapper{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;overflow:hidden}.portfolio-table{border-collapse:collapse;font-size:14px;width:100%}.portfolio-table thead tr{background:var(--surface-2);border-bottom:2px solid #e9ecef}.portfolio-table th{color:#6c757d;font-size:12px;font-weight:700;letter-spacing:.05em;padding:14px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.portfolio-table td.center,.portfolio-table th.center{text-align:center}.portfolio-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background .15s}.portfolio-table tbody tr:hover{background:#fafafa}.portfolio-table tbody tr:last-child{border-bottom:none}.portfolio-table td{color:#333;padding:14px 16px;vertical-align:middle}.portfolio-table td.muted{color:#999;font-size:13px}.project-title-cell{align-items:flex-start;display:flex;gap:10px}.color-dot{border-radius:3px;flex-shrink:0;height:12px;margin-top:4px;width:12px}.project-title-cell strong{color:var(--text);display:block;margin-bottom:2px}.result-text{color:var(--success);font-size:11px;margin:0}.category-badge{background:#f0f0f5;color:#555;font-weight:500;white-space:nowrap}.category-badge,.status-badge{border-radius:20px;display:inline-block;font-size:12px;padding:3px 10px}.status-badge{font-weight:600}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.tech-tags{display:flex;flex-wrap:wrap;gap:4px}.tech-tag{background:#e8f4fd;border-radius:4px;color:var(--primary-600);font-size:11px;font-weight:500;padding:2px 8px}.action-btns{display:flex;gap:8px}.create-btn{background:var(--primary);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background .2s}.create-btn:hover{background:var(--primary-600)}.cancel-btn,.delete-btn,.edit-btn,.submit-btn{border:none;border-radius:5px;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:all .2s;white-space:nowrap}.edit-btn{background:var(--primary);color:#fff}.edit-btn:hover{background:var(--primary-600)}.delete-btn{background:var(--danger);color:#fff}.delete-btn:hover{background:var(--danger-600)}.submit-btn{background:var(--primary);color:#fff;padding:10px 24px}.submit-btn:hover:not(:disabled){background:var(--primary-600)}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.cancel-btn{padding:10px 24px}.cancel-btn:hover{color:var(--text)}.file-input{padding:8px 0}.image-preview-box{align-items:flex-start;background:var(--surface-2);border:1px dashed #ddd;border-radius:8px;display:flex;gap:14px;margin-bottom:12px;padding:12px}.image-preview-box img{border:1px solid #ddd;border-radius:6px;flex-shrink:0;height:70px;object-fit:cover;width:100px}.image-preview-actions{display:flex;flex-direction:column;gap:8px;justify-content:center}.image-preview-label{color:#666;font-size:12px}.remove-image-btn{background:#fee2e2;border:1px solid #fca5a5;border-radius:5px;color:#b91c1c;cursor:pointer;font-size:12px;font-weight:600;padding:4px 10px;transition:all .2s;width:-webkit-fit-content;width:fit-content}.remove-image-btn:hover{background:#fca5a5}.remove-notice{background:#fee2e2;border-radius:6px;color:#b91c1c;font-size:12px;margin-bottom:10px;padding:8px 12px}.table-thumbnail{border:1px solid #e0e0e0;border-radius:5px;display:block;height:42px;object-fit:cover;width:60px}.no-image{align-items:center;background:#f0f0f0;border-radius:5px;color:#aaa;display:flex;font-size:10px;height:42px;justify-content:center;width:60px}.empty-state{padding:60px 20px;text-align:center}.empty-state p{color:var(--text-muted);font-size:16px}@media (max-width:768px){.form-row{grid-template-columns:1fr}.portfolio-table-wrapper{overflow-x:auto}}.site-settings-container{max-width:900px}.settings-header{margin-bottom:32px}.settings-header h2{color:var(--text);font-size:28px;margin:0 0 6px}.settings-subtitle{color:var(--text-muted);font-size:15px;margin:0}.settings-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:28px}.section-title{color:var(--text);font-size:16px;font-weight:700;letter-spacing:.05em;margin:0 0 6px;text-transform:uppercase}.section-desc{color:var(--text-muted);font-size:14px;margin:0 0 24px}.logo-uploaders-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:28px}@media (max-width:640px){.logo-uploaders-grid{grid-template-columns:1fr}}.logo-uploader-card{background:#fafafa;border:1px solid #e9ecef;border-radius:10px;display:flex;flex-direction:column;gap:16px;padding:20px}.logo-uploader-header h3{color:var(--text);font-size:15px;font-weight:700;margin:0 0 4px}.logo-hint{color:var(--text-faint);font-size:12px;line-height:1.5;margin:0}.logo-preview-area{align-items:center;background:#fff;border:1px dashed #ddd;border-radius:8px;display:flex;justify-content:center;min-height:100px;overflow:hidden;position:relative}.logo-preview-area.empty{background:var(--surface-2)}.logo-preview-img{max-height:120px;max-width:100%;object-fit:contain;padding:12px}.logo-no-image{color:var(--text-faint);font-size:13px;padding:20px;text-align:center}.preview-badge{background:#f59e0b;border-radius:20px;color:#fff;font-size:10px;font-weight:700;padding:2px 8px;position:absolute;right:6px;text-transform:uppercase;top:6px}.logo-actions{display:flex;flex-direction:column;gap:10px}.file-input{color:#555;cursor:pointer;font-size:13px;width:100%}.upload-row{display:flex;gap:8px}.cancel-btn,.delete-logo-btn,.upload-btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.upload-btn{background:var(--primary);color:#fff;flex:1 1}.upload-btn:hover:not(:disabled){background:var(--primary-600)}.upload-btn:disabled{cursor:not-allowed;opacity:.6}.cancel-btn{background:var(--border);color:var(--text-muted)}.cancel-btn:hover{background:var(--text-faint)}.delete-logo-btn{background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c;width:100%}.delete-logo-btn:hover:not(:disabled){background:#fca5a5}.delete-logo-btn:disabled{cursor:not-allowed;opacity:.6}.preview-strip{grid-gap:12px;border-top:1px solid var(--border);display:grid;gap:12px;grid-template-columns:1fr 1fr;padding-top:20px}@media (max-width:640px){.preview-strip{grid-template-columns:1fr}}.preview-strip-dark,.preview-strip-light{align-items:center;border-radius:8px;display:flex;gap:12px;padding:16px 20px}.preview-strip-light{background:#fff;border:1px solid #e9ecef}.preview-strip-dark{background:#1a000f;border:1px solid #3d0022}.preview-label{color:#aaa;font-size:11px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.strip-logo{height:32px;max-width:160px;object-fit:contain}.no-logo-text{color:var(--text-faint);font-size:13px}.loading{color:var(--text-muted);padding:40px;text-align:center}.ctl-page{max-width:1200px}.ctl-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:22px}.ctl-head h1{font-size:26px;font-weight:700;letter-spacing:-.025em;margin:0}.ctl-head p{color:var(--text-muted);margin:4px 0 0}.ctl-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.ctl-stats{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:20px}.ctl-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:14px 18px}.ctl-stat span{color:var(--text-muted);display:block;font-size:12px;font-weight:500}.ctl-stat strong{font-size:22px;font-weight:700;letter-spacing:-.03em}.ctl-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));margin-bottom:20px}.ctl-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:18px 20px}.ctl-grid .ctl-panel{margin-bottom:0}.ctl-panel h3{font-size:15px;font-weight:650;margin:0 0 12px}.ctl-empty{color:var(--text-muted);font-size:14px;margin:4px 0}.ctl-list{list-style:none;margin:0;padding:0}.ctl-list li{border-bottom:1px solid var(--border);display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:9px 0}.ctl-list li:last-child{border-bottom:none}.ctl-list a{color:var(--text);font-weight:600;text-decoration:none}.ctl-list a:hover{color:var(--primary-600)}.ctl-sub{color:var(--text-muted);font-size:12px}.ctl-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.ctl-toolbar input[type=search],.ctl-toolbar input[type=text]{flex:1 1;min-width:220px;padding:10px 14px}.ctl-tabs{background:var(--border);border-radius:10px;display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px}.ctl-tab{background:#0000;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px}.ctl-tab.on{box-shadow:var(--shadow-sm);color:var(--text)}.ctl-tab.on,.ctl-table{background:var(--surface)}.ctl-table{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}.ctl-table table{min-width:760px}.ctl-table td,.ctl-table th{padding:13px 16px;text-align:left;vertical-align:middle}.ctl-table tr.click{cursor:pointer}.ctl-table .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.ctl-name{color:var(--text);font-weight:650}.ctl-pill{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;color:var(--text-2);display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;white-space:nowrap}.ctl-pill.ok{background:var(--success-50);border-color:#0000;color:var(--success)}.ctl-pill.warn{background:var(--warning-50);border-color:#0000;color:var(--warning)}.ctl-pill.bad{background:var(--danger-50);border-color:#0000;color:var(--danger-600)}.ctl-pill.info{background:var(--primary-50);border-color:#0000;color:var(--primary-600)}.ctl-banner{border-radius:var(--radius-sm);font-size:14px;margin-bottom:16px;padding:12px 14px}.ctl-banner.error{background:var(--danger-50);color:var(--danger-600)}.ctl-banner.warn{background:var(--warning-50);color:#8a5a00}.ctl-banner.ok{background:var(--success-50);color:var(--success)}.ctl-banner a{color:inherit;font-weight:600}.ctl-linkbtn{background:none;border:none;color:var(--primary-600);cursor:pointer;font-size:inherit;font-weight:600;padding:0}.ctl-linkbtn:hover{text-decoration:underline}.ctl-overlay{background:#171a2e80;display:grid;inset:0;padding:16px;place-items:center;position:fixed;z-index:100}.ctl-modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:92vh;max-width:620px;width:100%}.ctl-modal.narrow{max-width:440px}.ctl-modal header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:18px 22px}.ctl-modal header h3{font-size:17px;margin:0}.ctl-modal .body{overflow-y:auto;padding:20px 22px}.ctl-modal footer{background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:14px 22px}.ctl-x{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:22px;line-height:1}.ctl-form{grid-gap:14px 16px;display:grid;gap:14px 16px;grid-template-columns:1fr 1fr}.ctl-form .full{grid-column:1/-1}.ctl-field label{display:block;font-size:13px;margin-bottom:5px}.ctl-field input,.ctl-field select,.ctl-field textarea{padding:9px 12px;width:100%}.ctl-field .err{color:var(--danger-600);font-size:12px;margin-top:4px}.ctl-field .hint{color:var(--text-muted);font-size:12px;margin-top:4px}.ctl-checks{grid-gap:6px 14px;display:grid;gap:6px 14px;grid-template-columns:1fr 1fr}.ctl-checks label{align-items:center;display:flex;font-size:14px;font-weight:400;gap:8px}@media (max-width:640px){.ctl-checks,.ctl-form{grid-template-columns:1fr}}.ctl-secret{align-items:center;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:flex;gap:8px;margin:6px 0 12px;padding:8px 10px}.ctl-secret code{flex:1 1;font-size:13px;word-break:break-all}.ctl-dl{grid-gap:14px 24px;display:grid;gap:14px 24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0}.ctl-dl dt{color:var(--text-muted);font-size:12px;margin-bottom:2px}.ctl-dl dd{font-weight:600;margin:0;word-break:break-word}.ctl-codes{grid-gap:6px 18px;background:var(--surface-2);display:grid;font-family:ui-monospace,Menlo,monospace;gap:6px 18px;grid-template-columns:1fr 1fr;margin:10px 0;padding:12px 14px}.ctl-codes,.ctl-qr{border:1px solid var(--border);border-radius:var(--radius-sm)}.ctl-qr{background:#fff;display:inline-block;padding:12px}.dashboard-layout{background-color:var(--bg);display:flex;min-height:100vh}.main-content{display:flex;flex:1 1;flex-direction:column;margin-left:var(--sidebar-w);min-width:0}.content-area{flex:1 1;min-width:0;padding:28px 32px 48px}.sidebar-backdrop{display:none}@media (max-width:900px){.main-content{margin-left:0}.content-area{padding:20px 16px 40px}.sidebar-backdrop.show{background:#10132880;display:block;inset:0;position:fixed;z-index:150}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.43e7f4c0.css.map*/