:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f7f7f2;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#090a09;--surface:#10120f;--surface-2:#161914;--text:#f7f7f2;--muted:#8f9689;--border:#ffffff14;--accent:#ce4489;--danger:#ff6d6d;--cyan:#d36099;--glass-bg:#16191466;--glass-hover:#ffffff08;--shadow-light:#0003;--shadow-heavy:#00000073;background:#090a09;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell--light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f0;--surface:#fff;--surface-2:#eff2e8;--text:#11140e;--muted:#000;--border:#10140e1f;--accent:#b10e60;--danger:#d94141;--glass-bg:#fff9;--glass-hover:#00000008;--shadow-light:#0000000d;--shadow-heavy:#00000026}*{box-sizing:border-box}body{margin:0}button{font:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}::selection{color:inherit;background:#c1f4294d}.app-shell{background:var(--bg);min-height:100vh;color:var(--text);background-image:radial-gradient(circle at 10% 0,#c1f42914,#0000 40%),radial-gradient(circle at 90% 100%,#18ffc80d,#0000 40%);background-attachment:fixed;grid-template-columns:72px 1fr;transition:background .3s,color .3s;display:grid}.sidebar{background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);border-right:1px solid var(--border);z-index:50;flex-direction:column;align-items:center;height:100vh;padding:24px 0;transition:background .3s,border-color .3s;display:flex;position:sticky;top:0;overflow:visible}.brand{margin-bottom:32px}.brand-mark{background:var(--accent);color:#0a0c08;border-radius:12px;place-items:center;width:40px;height:40px;font-size:20px;font-weight:800;display:grid;box-shadow:0 0 20px #c1f4294d}.nav-list{flex-direction:column;gap:12px;width:100%;padding:0 12px;display:flex}.sidebar-bottom{flex-direction:column;gap:12px;width:100%;margin-top:auto;padding:0 12px;display:flex}.nav-item{width:48px;height:48px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.nav-icon{justify-content:center;align-items:center;display:flex}.nav-item:hover{color:var(--text);background:var(--glass-hover)}.nav-item.is-active{color:var(--accent);background:linear-gradient(90deg,#c1f4291a 0%,#0000 100%)}.nav-item.is-active:before{content:"";background:var(--accent);border-radius:0 4px 4px 0;width:4px;height:24px;position:absolute;top:50%;left:-12px;transform:translateY(-50%);box-shadow:0 0 10px #c1f42980}.nav-item--logout:hover{color:var(--danger);background:#ff6d6d1a}.nav-tooltip{background:var(--surface);color:var(--text);white-space:nowrap;pointer-events:none;opacity:0;border:1px solid var(--border);box-shadow:0 4px 12px var(--shadow-light);z-index:100;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);position:absolute;top:50%;left:64px;transform:translateY(-50%)translate(-10px)}.nav-item:hover .nav-tooltip{opacity:1;transform:translateY(-50%)translate(0)}.workspace{min-width:0;padding:0 32px 32px}.topbar{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);z-index:40;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:80px;margin:0 -32px 24px;padding:0 32px;transition:background .3s,border-color .3s;display:flex;position:sticky;top:0}.topbar-greeting{flex-direction:column;line-height:1.2;display:flex}.greeting-text{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.greeting-name{color:var(--text);font-size:16px;font-weight:700}.topbar-actions{align-items:center;gap:16px;display:flex}.theme-toggle{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--muted);cursor:pointer;border-radius:50%;place-items:center;transition:all .2s;display:grid}.theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.topbar-status{background:var(--glass-hover);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:500;display:flex}.status-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:2s infinite pulseGlow;box-shadow:0 0 12px #c1f429cc}@keyframes pulseGlow{0%{box-shadow:0 0 #c1f42966}70%{box-shadow:0 0 0 6px #c1f42900}to{box-shadow:0 0 #c1f42900}}main{max-width:1400px;margin:0 auto}.page-stack{flex-direction:column;gap:24px;animation:.4s ease-out fadeInUp;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dash-header{justify-content:space-between;align-items:flex-end;margin-bottom:8px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:1px;margin:0 0 4px;font-size:12px;font-weight:700}h1{letter-spacing:-.5px;margin:0;font-size:32px;font-weight:800;line-height:1.1}h2{letter-spacing:-.2px;margin:0;font-size:18px;font-weight:600}.dash-subtitle,.page-desc{color:var(--muted);margin:6px 0 0;font-size:15px}.dash-date-pill{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;display:flex}.bento-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(180px,auto);gap:16px;display:grid}.bento-revenue{grid-area:span 2/span 2}.bento-recurring{grid-area:span 2/span 1}.bento-stat-tile{grid-area:span 1/span 1}.bento-followup{grid-area:span 2/span 2}.bento-contacts,.bento-rev-details,.bento-retention{grid-area:span 1/span 1}.dashboard-bottom-grid{grid-template-columns:2fr 1fr;gap:16px;display:grid}.bento-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:20px;flex-direction:column;padding:24px;transition:background .3s,border-color .3s;display:flex;position:relative;overflow:hidden}.bento-revenue:before,.bento-recurring:before{content:"";pointer-events:none;z-index:0;background:repeating-linear-gradient(45deg,#80808008,#80808008 2px,#0000 2px 8px);position:absolute;inset:0}.bento-card>*{z-index:1}.bento-card-head{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.bento-card-head p{color:var(--muted);margin:4px 0 0;font-size:13px}.pill-active{background:var(--glass-hover);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:12px}.bento-link-btn{border:1px solid var(--border);background:var(--glass-hover);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:50%;place-items:center;transition:all .2s;display:grid}.bento-link-btn:hover{background:var(--accent);color:#000;border-color:var(--accent)}.revenue-figure{align-items:baseline;gap:8px;margin-bottom:32px;display:flex}.revenue-currency{color:var(--muted);font-size:24px;font-weight:500}.revenue-figure strong{letter-spacing:-1px;font-size:48px;font-weight:800}.revenue-chart{justify-content:space-between;align-items:flex-end;gap:12px;height:180px;margin-top:auto;display:flex}.chart-bar-wrap{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.chart-pct{color:var(--muted);font-size:11px}.chart-bar{background:linear-gradient(180deg, var(--accent) 0%, #c1f42933 100%);transform-origin:bottom;opacity:0;border-radius:8px 8px 4px 4px;width:100%;max-width:40px;animation:1s cubic-bezier(.16,1,.3,1) forwards barGrow;box-shadow:0 -4px 16px #c1f42933}.chart-bar--skeleton{background:var(--surface-2);opacity:.5;box-shadow:none;animation:none}@keyframes barGrow{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}.chart-label{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:500}.recurring-ring{justify-content:center;align-items:center;width:160px;height:160px;margin:auto;display:flex;position:relative}.donut-svg{width:100%;height:100%;position:absolute;inset:0}.donut-progress{filter:drop-shadow(0 0 8px #c1f42966);transition:stroke-dasharray 1s ease-out}.recurring-info{z-index:1;flex-direction:column;align-items:center;display:flex}.recurring-currency{color:var(--muted);font-size:14px}.recurring-info strong{font-size:24px;font-weight:700}.recurring-labels{color:var(--muted);justify-content:center;align-items:center;gap:8px;margin-top:24px;font-size:12px;display:flex}.label-dot{border-radius:50%;width:8px;height:8px}.label-dot--accent{background:var(--accent)}.label-dot--muted{background:var(--glass-hover)}.stat-tile-head{margin-bottom:auto}.stat-tile-head h2{color:var(--text);font-size:16px}.stat-tile-head p{color:var(--muted);margin-top:4px;font-size:12px}.stat-tile-value{justify-content:space-between;align-items:flex-end;margin-top:24px;display:flex}.stat-tile-value strong{font-size:36px;font-weight:700;line-height:1}.badge-count{background:var(--danger);color:#fff;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;margin-left:8px;font-size:11px;font-weight:700;display:inline-flex}.followup-list{flex-direction:column;gap:12px;display:flex}.followup-item{background:var(--glass-hover);border:1px solid var(--border);border-radius:12px;align-items:center;gap:16px;padding:12px 16px;transition:background .2s;display:flex}.followup-item:hover{background:var(--surface-2)}.followup-check{background:var(--border);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;font-size:12px;display:grid}.followup-info{flex-direction:column;flex:1;display:flex}.followup-info strong{font-size:14px}.followup-info small{color:var(--muted);margin-top:2px;font-size:12px}.followup-arrow{color:var(--accent);font-weight:700}.followup-skeleton{background:var(--surface-2);border-radius:12px;height:52px}.contacts-stack{align-items:center;gap:24px;margin-top:auto;display:flex}.avatar-stack{display:flex}.avatar-circle{background:var(--surface-2);border:2px solid var(--surface);border-radius:50%;place-items:center;width:48px;height:48px;margin-left:-12px;font-size:16px;font-weight:600;display:grid}.avatar-circle:first-child{margin-left:0}.avatar-more{background:var(--accent);color:#000;border-color:var(--surface)}.contacts-total{flex-direction:column;display:flex}.contacts-total strong{font-size:24px;font-weight:700}.contacts-total span{color:var(--muted);font-size:12px}.rev-detail-row{border-top:1px solid var(--border);justify-content:space-between;margin-top:auto;padding-top:16px;display:flex}.rev-detail-item{flex-direction:column;gap:4px;display:flex}.rev-detail-item span{color:var(--muted);font-size:12px}.rev-detail-item strong{font-size:16px;font-weight:600}.rev-danger{color:var(--danger)}.overdue-stats{justify-content:space-between;margin-top:auto;display:flex}.overdue-stat-item{flex-direction:column;align-items:center;gap:8px;display:flex}.overdue-stat-item strong{font-size:32px;font-weight:700}.overdue-stat-item span{color:var(--muted);font-size:13px}.overdue-stat--danger strong{color:var(--danger)}.profile-grid{grid-template-columns:minmax(280px,.9fr) minmax(360px,1.4fr);align-items:stretch;gap:20px;display:grid}.profile-card{background:var(--glass-bg);border:1px solid var(--border);box-shadow:0 18px 50px var(--shadow-light);border-radius:18px;padding:24px;position:relative;overflow:hidden}.profile-card:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ce448929,#0000 48%);position:absolute;inset:0}.profile-identity,.profile-meta-grid,.profile-access-meter{position:relative}.profile-identity{align-items:center;gap:18px;margin-bottom:24px;display:flex}.profile-identity h2{margin:0 0 6px;font-size:24px;line-height:1.1}.profile-identity p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:14px}.profile-avatar{object-fit:cover;border:1px solid var(--border);width:88px;height:88px;box-shadow:0 14px 32px var(--shadow-light);border-radius:18px;flex:none}.profile-avatar--initial{background:var(--surface-2);color:var(--text);place-items:center;font-size:36px;font-weight:800;display:grid}.profile-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-meta-item{background:var(--glass-hover);border:1px solid var(--border);border-radius:12px;flex-direction:column;justify-content:space-between;min-height:76px;padding:14px;display:flex}.profile-meta-item span,.profile-section-head p,.profile-permission-module-head p{color:var(--muted)}.profile-meta-item span{font-size:12px}.profile-meta-item strong{font-size:16px}.profile-status{color:var(--danger)}.profile-status.is-active{color:var(--accent)}.profile-access-meter{background:var(--glass-hover);border:1px solid var(--border);border-radius:999px;height:8px;margin-top:18px;overflow:hidden}.profile-access-meter span{background:var(--accent);border-radius:inherit;height:100%;transition:width .25s;display:block}.profile-security{flex-direction:column;justify-content:space-between;display:flex}.profile-section-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.profile-section-head h2{margin:0 0 6px;font-size:20px}.profile-section-head p{margin:0;font-size:14px}.profile-password-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:16px;display:grid}.profile-password-form button{justify-self:start;min-width:180px}.profile-permissions-panel{overflow:hidden}.profile-permission-count{border:1px solid var(--border);color:var(--text);background:var(--glass-hover);border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:700}.profile-permission-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.profile-permission-module{border:1px solid var(--border);background:var(--glass-hover);border-radius:14px;padding:16px}.profile-permission-module-head{justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.profile-permission-module-head h3{margin:0 0 4px;font-size:15px}.profile-permission-module-head p{margin:0;font-size:12px}.profile-permission-module-head span{color:var(--accent);font-size:13px;font-weight:800}.profile-permission-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.profile-permission-pill{border:1px solid var(--border);min-height:34px;color:var(--muted);text-align:center;background:#ffffff05;border-radius:8px;place-items:center;font-size:11px;font-weight:700;display:grid}.profile-permission-pill.is-granted{color:#000;background:var(--accent);border-color:#0000}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.stat-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s,background .3s,border-color .3s;display:flex}.stat-card:hover{box-shadow:0 8px 24px var(--shadow-light);transform:translateY(-2px)}.stat-card-top{justify-content:space-between;align-items:center;display:flex}.stat-label{color:var(--muted);font-size:14px;font-weight:500}.stat-arrow{color:var(--accent);opacity:.5}.stat-value{font-size:20px;font-weight:700;line-height:1}.stat-hint{color:var(--muted);font-size:13px}.stat-card--accent{background:linear-gradient(135deg, #c1f4291a, var(--glass-bg));border-color:#c1f42933}.stat-card--danger{background:linear-gradient(135deg, #ff6d6d1a, var(--glass-bg));border-color:#ff6d6d33}.table-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.table-list article{background:var(--glass-hover);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.table-list article span{color:var(--muted);font-size:14px}.table-list article strong{font-size:15px;font-weight:600}.empty-state{color:var(--muted);font-size:14px;font-style:italic}.alert{border-radius:12px;padding:12px 16px;font-size:14px;font-weight:500}.alert-error{color:var(--danger);background:#ff6d6d1a;border:1px solid #ff6d6d33}.login-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);width:min(900px,100%);min-height:540px;box-shadow:0 30px 90px var(--shadow-heavy);border-radius:24px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.login-art{background:var(--surface-2);position:relative;overflow:hidden}.login-art span{background:linear-gradient(180deg, var(--accent), transparent);filter:drop-shadow(0 0 20px #c1f42933);border-radius:8px;width:40px;height:300px;position:absolute;transform:rotate(45deg)}.login-art span:first-child{top:-50px;left:50px}.login-art span:nth-child(2){top:100px;left:200px}.login-art span:nth-child(3){bottom:-100px;left:100px}.login-form{flex-direction:column;justify-content:center;gap:20px;padding:48px;display:flex}.login-form h1{margin-bottom:8px;font-size:28px}.login-form p{color:var(--muted);margin:0;font-size:14px}label{color:var(--muted);flex-direction:column;gap:8px;font-size:13px;font-weight:500;display:flex;position:relative}input,select{background:var(--glass-hover);border:1px solid var(--border);height:44px;color:var(--text);border-radius:10px;padding:0 16px;font-size:14px;transition:border-color .2s,background-color .3s}option{background-color:var(--surface);color:var(--text)}input:focus,select:focus{border-color:var(--accent);outline:none}.readonly-field{background:var(--glass-hover);border:1px solid var(--border);min-height:44px;color:var(--text);border-radius:10px;align-items:center;padding:0 16px;line-height:1.35;display:flex}.primary-button{background:var(--accent);color:#000;cursor:pointer;border:none;border-radius:10px;height:44px;margin-top:8px;font-weight:600;transition:transform .1s,opacity .2s}.primary-button:active{transform:scale(.98)}.primary-button:disabled{opacity:.6;cursor:not-allowed}.ghost-button{height:36px;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:0 16px;font-size:13px}.ghost-button:hover{background:var(--glass-hover)}.form-error,.field-error{color:var(--danger);font-size:13px}.searchable-dropdown,.searchable-dropdown-input-wrapper{width:100%;position:relative}.searchable-dropdown-input-wrapper input{width:100%;padding-right:40px}.searchable-dropdown-icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.searchable-dropdown-list{background:var(--surface);border:1px solid var(--border);z-index:100;width:100%;max-height:200px;box-shadow:0 10px 30px var(--shadow-light);border-radius:10px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.searchable-dropdown-list li{cursor:pointer;border-radius:6px;padding:10px 12px;font-size:14px;transition:background .1s}.searchable-dropdown-list li:hover{background:var(--glass-hover)}.searchable-dropdown-list li.is-selected{background:var(--accent);color:#000;font-weight:600}.searchable-dropdown-empty{color:var(--muted);padding:10px 12px;font-size:13px;font-style:italic}@media (width<=1200px){.bento-grid{grid-template-columns:repeat(2,1fr)}.profile-grid{grid-template-columns:1fr}}@media (width<=768px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.workspace{padding:0 16px 16px}.topbar{margin:0 -16px 16px;padding:0 16px}.bento-grid{grid-template-columns:1fr}.bento-revenue,.bento-recurring,.bento-followup{grid-column:span 1}.dashboard-bottom-grid{grid-template-columns:1fr}.profile-identity,.profile-section-head{flex-direction:column}.profile-meta-grid,.profile-password-form,.profile-permission-grid{grid-template-columns:1fr}.profile-password-form button{width:100%}}.toolbar,.search-bar,.pagination,.row-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar{margin-bottom:20px}.search-bar{flex:1}.search-bar input{min-width:200px}.data-table-wrap{background:var(--glass-bg);border:1px solid var(--border);border-radius:16px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--border);text-align:left;padding:16px;font-size:14px}.data-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.data-table tr:last-child td{border-bottom:none}.pagination{color:var(--muted);justify-content:flex-end;margin-top:20px;font-size:14px}.payment-amount-cell{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.payment-amount-cell strong{font-size:14px;font-weight:700}.payment-amount-cell small{color:var(--muted);font-size:11px;line-height:1.25}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#0009;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-panel{background:var(--surface);border:1px solid var(--border);border-radius:20px;width:100%;max-width:800px;max-height:90vh;padding:24px;overflow-y:auto}.panel-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.panel-header h2{margin:0;font-size:20px}.close-modal-btn{border:1px solid var(--border);background:var(--glass-hover);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:all .2s;display:grid}.close-modal-btn:hover{color:var(--danger);background:#ff6d6d1a;border-color:#ff6d6d33}.detail-grid{gap:16px;margin-top:16px;display:grid}.entity-form{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}.col-span-2,.entity-form button[type=submit]{grid-column:1/-1}.import-panel{gap:24px;display:grid}.import-guidelines h2{margin:0 0 8px;font-size:18px}.import-guidelines p{color:var(--muted);margin:0 0 12px}.import-column-tags{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.import-tag{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:6px 10px;font-size:12px}.import-rules{color:var(--muted);gap:6px;margin:0;padding-left:18px;font-size:14px;display:grid}.import-dropzone{border:1px dashed var(--border);background:var(--surface-2);text-align:center;cursor:pointer;border-radius:18px;justify-items:center;gap:8px;padding:32px 24px;transition:border-color .2s,background .2s,transform .2s;display:grid}.import-dropzone:hover,.import-dropzone--active{border-color:var(--accent);background:var(--glass-hover)}.import-dropzone--filled{border-style:solid}.import-dropzone strong{font-size:16px}.import-dropzone span{color:var(--muted);font-size:13px}.import-dropzone-icon{width:48px;height:48px;color:var(--accent);background:#ce44891f;border-radius:14px;place-items:center;font-size:22px;font-weight:700;display:grid}.import-file-input{display:none}.import-actions{flex-wrap:wrap;gap:12px;display:flex}.import-file-meta{color:var(--muted);font-size:13px}.dash-page{flex-direction:column;gap:12px;min-height:100%;padding:20px;display:flex}.dash-header2{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.dash-title-block .dash-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:2px;font-size:10px}.dash-title-block .dash-h1{color:var(--text);margin:0;font-size:20px;font-weight:600;line-height:1.2}.dash-title-block .dash-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.dash-header-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dash-date-pill2{color:var(--text-muted);border:1px solid var(--border);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;display:flex}.bento2-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:auto;gap:10px;display:grid}.bento2-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:0;padding:14px 16px}.bento2-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.bento2-head h2{color:var(--text);align-items:center;gap:5px;margin:0;font-size:12px;font-weight:600;display:flex}.bento2-head p{color:var(--text-muted);margin:2px 0 0;font-size:11px}.bento2-head-right{align-items:center;gap:6px;display:flex}.bento2-arr-btn{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;width:22px;height:22px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:background .15s;display:flex}.bento2-arr-btn:hover{background:var(--accent-dim);color:var(--accent);border-color:var(--accent-border)}.bento2-pill{background:var(--accent-dim);color:var(--accent-text);border:1px solid var(--accent-border);white-space:nowrap;border-radius:20px;padding:2px 8px;font-size:10px}.bento2-badge{background:var(--accent);color:#1a1a00;border-radius:20px;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:700}.bento2-revenue{grid-area:span 2/span 2}.bento2-revenue-num{margin:0 0 12px}.bento2-cur{color:var(--text-muted);vertical-align:super;margin-right:2px;font-size:11px}.bento2-revenue-num strong{color:var(--text);letter-spacing:-.5px;font-size:28px;font-weight:700}.bento2-bar-chart{align-items:flex-end;gap:4px;width:100%;height:90px;display:flex}.bento2-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:3px;min-width:0;height:100%;display:flex}.bento2-bar{background:#c8ff002e;border-radius:3px 3px 0 0;width:100%;transition:height .5s cubic-bezier(.34,1.56,.64,1);animation:.5s both barRise}.bento2-bar--active{background:var(--accent)}.bento2-bar--skeleton{background:var(--surface-2);animation:1.4s ease-in-out infinite pulse}.bento2-bar-lbl{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;text-align:center;width:100%;font-size:8px;overflow:hidden}@keyframes barRise{0%{transform-origin:bottom;transform:scaleY(0)}to{transform-origin:bottom;transform:scaleY(1)}}.bento2-stat-val{margin-top:4px}.bento2-stat-val strong{color:var(--text);letter-spacing:-.5px;font-size:26px;font-weight:700}.bento2-donut-wrap{align-items:center;gap:14px;margin-top:6px;display:flex}.bento2-donut-svg{flex-shrink:0;width:76px;height:76px}.donut2-progress{transition:stroke-dasharray .8s}.bento2-donut-info{flex-direction:column;gap:2px;display:flex}.bento2-donut-cur{color:var(--text-muted);font-size:10px}.bento2-donut-info strong{color:var(--text);font-size:18px;font-weight:700;line-height:1}.bento2-donut-info small{color:var(--text-muted);font-size:10px}.bento2-donut-legend{color:var(--text-muted);align-items:center;gap:10px;margin-top:10px;font-size:10px;display:flex}.bento2-leg-dot{border-radius:50%;width:7px;height:7px;margin-right:3px;display:inline-block}.bento2-leg-dot--active{background:var(--accent)}.bento2-leg-dot--muted{background:var(--border)}.bento2-followup2{grid-column:span 2}.bento2-fu-list{flex-direction:column;gap:5px;max-height:200px;padding-right:4px;display:flex;overflow-y:auto}.bento2-fu-item{border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;transition:border-color .15s;display:flex}.bento2-fu-item:hover{border-color:var(--accent-border)}.bento2-fu-av{background:var(--accent-dim);border:1px solid var(--accent-border);width:28px;height:28px;color:var(--accent-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;overflow:hidden}.bento2-fu-text{flex:1;min-width:0}.bento2-fu-text strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;display:block;overflow:hidden}.bento2-fu-text small{color:var(--text-muted);font-size:10px}.bento2-fu-arr{color:var(--text-muted);flex-shrink:0;font-size:14px}.bento2-fu-skeleton{background:var(--surface-2);border-radius:8px;height:40px;animation:1.4s ease-in-out infinite pulse}.bento2-avatar-stack{margin:6px 0 10px;display:flex}.bento2-av-circle{background:var(--accent-dim);border:2px solid var(--surface);width:32px;height:32px;color:var(--accent-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:-8px;font-size:11px;font-weight:700;display:flex;overflow:hidden}.bento2-av-circle:first-child{margin-left:0}.bento2-av-more{background:var(--surface-2);color:var(--text-muted);font-size:10px}.bento2-members-total strong{color:var(--text);font-size:20px;font-weight:700;line-height:1.1;display:block}.bento2-members-total span{color:var(--text-muted);font-size:10px}.bento2-rev-details2{grid-column:span 2}.bento2-rev-row{flex-wrap:wrap;gap:8px;display:flex}.bento2-rev-item{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;flex:1;min-width:80px;padding:8px 10px}.bento2-rev-item span{color:var(--text-muted);margin-bottom:3px;font-size:10px;display:block}.bento2-rev-item strong{color:var(--text);font-size:13px;font-weight:600}.bento2-rev-item--danger strong{color:var(--danger,#e85c5c)}.bento2-bottom{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bento2-payments{flex-direction:column;gap:0;margin-top:6px;display:flex}.bento2-pay-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:7px 0;display:flex}.bento2-pay-item:last-child{border-bottom:none}.bento2-pay-av{background:var(--accent-dim);border:1px solid var(--accent-border);width:28px;height:28px;color:var(--accent-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;overflow:hidden}.bento2-pay-name{color:var(--text);flex:1;font-size:12px}.bento2-pay-amt{color:var(--text);font-size:12px;font-weight:600}.bento2-ov-stats{gap:8px;margin-top:10px;display:flex}.bento2-ov-item{text-align:center;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;flex:1;padding:10px 6px}.bento2-ov-item strong{color:var(--text);font-size:22px;font-weight:700;line-height:1.1;display:block}.bento2-ov-item span{color:var(--text-muted);font-size:10px}.bento2-ov-item--danger strong{color:var(--danger,#e85c5c)}.bento2-empty{color:var(--text-muted);padding:6px 0;font-size:11px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@media (width<=900px){.bento2-grid{grid-template-columns:repeat(2,1fr)}.bento2-revenue{grid-area:span 1/span 2}.bento2-bar-chart{height:70px}}@media (width<=580px){.bento2-grid,.bento2-bottom{grid-template-columns:1fr}.bento2-revenue,.bento2-followup2,.bento2-rev-details2{grid-column:span 1}}
