:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-page:#eef3f1;--bg-surface:#fff;--bg-surface-alt:#f8fbfa;--bg-input:#fff;--bg-hover:#f1f5f3;--bg-accent:#eef8fb;--bg-sidebar:#fff;--border:#d8e0dc;--border-input:#cbd7d2;--border-focus:#146c94;--text:#17211d;--text-secondary:#53635c;--text-tertiary:#63736c;--text-label:#33413b;--accent:#146c94;--accent-hover:#0f5578;--accent-text:#146c94;--success:#05603a;--success-bg:#ecfdf3;--success-border:#9bd2b2;--error:#b42318;--error-bg:#fff1f0;--error-border:#f3b6ad;--warning:#8a5a00;--warning-bg:#fffbeb;--warning-border:#f2d28b;--info:#146c94;--info-bg:#eef8fb;--info-border:#93c5d4;--shadow-sm:0 1px 3px #17211d0f, 0 1px 2px #17211d0a;--shadow-md:0 4px 16px #17211d14, 0 2px 6px #17211d0d;--shadow-lg:0 12px 40px #17211d21, 0 4px 12px #17211d12;--shadow-xl:0 24px 64px #17211d2e;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--transition:.15s ease}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-page:#0d1117;--bg-surface:#161b22;--bg-surface-alt:#1c2128;--bg-input:#1c2128;--bg-hover:#21262d;--bg-accent:#1a2d40;--bg-sidebar:#161b22;--border:#30363d;--border-input:#3a424a;--border-focus:#4f8ef7;--text:#e6edf3;--text-secondary:#8b949e;--text-tertiary:#6e7681;--text-label:#adbac7;--accent:#4f8ef7;--accent-hover:#6aa0f8;--accent-text:#79b8ff;--success:#3fb950;--success-bg:#0d1f14;--success-border:#1a7f37;--error:#f85149;--error-bg:#2d0f0e;--error-border:#b62324;--warning:#d29922;--warning-bg:#2a1f00;--warning-border:#9a6700;--info:#4f8ef7;--info-bg:#1a2d40;--info-border:#1f6feb;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 12px 40px #0000008c;--shadow-xl:0 24px 64px #000000b3}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg-page);color:var(--text);transition:background var(--transition), color var(--transition);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}body,button,input,select,textarea{font-family:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}.auth-page,.app-shell{min-height:100vh;padding:28px 32px}.auth-page{background:linear-gradient(135deg, #146c9424, #f2b0411a), var(--bg-page);place-items:center;display:grid}.app-shell{background:var(--bg-page)}.auth-panel{grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:48px;width:min(1040px,100%);display:grid}.auth-panel h1,.topbar h1{margin:0}.auth-panel h1{letter-spacing:-.02em;max-width:650px;color:var(--text);font-size:clamp(32px,5vw,60px);line-height:1.1}.topbar,.workspace,.main-grid,.metric-grid,.section-heading,.topbar-actions,.quick-actions,.inline-form,.filters,.tools-grid{gap:16px;display:grid}.topbar{border-bottom:1px solid var(--border);z-index:40;background:var(--bg-page);grid-template-columns:1fr auto;align-items:center;margin-bottom:24px;margin-left:-32px;margin-right:-32px;padding:20px 32px;position:sticky;top:0}.topbar-actions,.section-heading,.quick-actions,.inline-form,.filters{grid-auto-flow:column;align-items:center}.topbar h1{letter-spacing:-.01em;color:var(--text);font-size:clamp(20px,3vw,28px)}.workspace{grid-template-columns:268px minmax(0,1fr);align-items:start;max-width:1440px;margin:0 auto}.sidebar,.stack,.form-stack{flex-direction:column;gap:10px;display:flex}.main-grid{grid-template-columns:minmax(0,1fr)}.quick-actions{grid-template-columns:repeat(3,minmax(160px,max-content));justify-content:start}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.tools-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.tools-tab-panel{gap:16px;display:grid}.metric,.metric-card,.panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition), border-color var(--transition), background var(--transition)}.metric:hover,.metric-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-focus)}.panel{padding:20px;position:relative}.metric,.metric-card{flex-direction:column;justify-content:space-between;gap:6px;min-height:100px;padding:16px 18px;display:flex}.metric-label{color:var(--text-tertiary);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.metric span,.metric-card span{color:var(--text-tertiary);font-size:12px}.metric strong,.metric-card strong{letter-spacing:-.01em;color:var(--text);margin-top:6px;font-size:19px;font-weight:700;line-height:1.2;display:block}.value-positive{color:var(--success)}.value-negative{color:var(--error)}.value-neutral{color:var(--accent-text)}.eyebrow{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:700}.muted{color:var(--text-secondary);line-height:1.7}small{color:var(--text-tertiary);font-size:12px}.panel h2{letter-spacing:-.01em;color:var(--text);margin:0 0 16px;font-size:16px;font-weight:700}.form-panel h2{margin-bottom:16px}label{color:var(--text-label);gap:6px;font-size:13px;font-weight:600;display:grid}input,select,textarea{border:1px solid var(--border-input);border-radius:var(--radius);background:var(--bg-input);width:100%;min-height:40px;color:var(--text);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);outline:none;padding:8px 11px}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #4f8ef726}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{box-shadow:0 0 0 3px #4f8ef733}input[type=checkbox]{width:auto;min-height:auto}input::placeholder,textarea::placeholder{color:var(--text-tertiary);opacity:.7}.primary,.secondary,.text-button,.segmented button,.portfolio-button{border-radius:var(--radius);min-height:40px;transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition), opacity var(--transition);border:1px solid #0000;padding:8px 14px;font-size:13px;font-weight:600}.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow-sm)}.secondary,.link-button{border-color:var(--border);background:var(--bg-surface);color:var(--text)}.secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-input)}.link-button{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-surface);min-height:40px;color:var(--text);transition:background var(--transition), border-color var(--transition);place-items:center;padding:8px 14px;font-weight:600;display:inline-grid}.link-button:hover{background:var(--bg-hover);border-color:var(--border-input)}.text-button{min-height:auto;color:var(--error);background:0 0;border:0;padding:4px 6px;font-size:12px}.text-button:hover:not(:disabled){opacity:.75}.icon-button{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);min-height:32px;color:var(--text);transition:background var(--transition), border-color var(--transition);padding:4px 8px;font-size:12px;font-weight:600}.icon-button:hover:not(:disabled){background:var(--bg-hover)}.table-input{border-radius:var(--radius-sm);min-width:110px;min-height:34px;padding:5px 8px;font-size:13px}.wide-input{min-width:180px}.danger-action{justify-self:start}.user-pill{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);transition:border-color var(--transition);align-items:center;gap:0;display:flex;overflow:hidden}.user-pill:focus-within{border-color:var(--border-focus)}.user-pill-name{color:var(--text-secondary);white-space:nowrap;padding:0 10px;font-size:13px;font-weight:600}.user-pill-theme{border:none;border-left:1px solid var(--border);background:var(--bg-surface);min-width:36px;min-height:36px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition), color var(--transition);border-radius:0;place-items:center;font-size:15px;display:grid}.user-pill-theme:hover{background:var(--bg-hover);color:var(--accent-text)}.icon-btn{border-radius:var(--radius);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.icon-btn.danger:hover{color:var(--error);background:#ef44441f}.icon-btn.confirm{color:var(--success,#16a34a)}.icon-btn.confirm:hover{color:var(--success,#16a34a);background:#16a34a1f}.icon-btn:disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.btn-dots{align-items:center;gap:3px;display:inline-flex}.btn-dots span{background:currentColor;border-radius:50%;width:4px;height:4px;animation:.9s ease-in-out infinite both dot-bounce;display:inline-block}.btn-dots span:nth-child(2){animation-delay:.18s}.btn-dots span:nth-child(3){animation-delay:.36s}@keyframes dot-bounce{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.upgrade-hint{border-radius:var(--radius);border:1px dashed var(--warning-border);background:var(--warning-bg);color:var(--text-secondary);align-items:center;gap:6px;margin-top:6px;padding:7px 10px;font-size:12px;line-height:1.4;display:flex}.upgrade-hint strong{color:var(--warning,#b45309);font-weight:700}.plan-badge{border-radius:var(--radius-pill);letter-spacing:0;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;min-height:24px;padding:3px 9px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.plan-badge.free{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning)}.plan-badge.premium{color:#0f766e;background:linear-gradient(135deg,#14b8a62e,#0ea5e929);border-color:#14b8a659}:root[data-theme=dark] .plan-badge.premium{color:#5eead4}.plan-badge.compact{min-height:22px;padding:3px 7px;font-size:10px}.user-pill .plan-badge{margin-left:4px}.plan-limits-note{border:1px solid var(--warning-border);border-radius:var(--radius);background:var(--warning-bg);color:var(--text-secondary);margin:0;padding:8px 10px;font-size:12px;line-height:1.4}.plan-limits-note.premium{background:#14b8a61a;border-color:#14b8a652}.sidebar-plan-heading,.profile-plan-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.sidebar-plan-heading h2,.profile-plan-title h2{margin:0}.notifications-menu{position:relative}.notifications-trigger{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.notification-badge{border-radius:var(--radius-pill);background:var(--warning-bg);min-width:20px;min-height:20px;color:var(--warning);border:1px solid var(--warning-border);place-items:center;padding:0 6px;font-size:11px;font-weight:800;line-height:1;display:inline-grid}.notifications-popover{z-index:55;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);width:min(360px,100vw - 32px);box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.notifications-header{border-bottom:1px solid var(--border);background:var(--bg-surface-alt);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.notifications-header h2{margin:0 0 2px;font-size:14px}.notification-refresh{color:var(--accent-text);padding:2px 0}.notifications-list{max-height:360px;display:grid;overflow-y:auto}.notification-item{border-bottom:1px solid var(--border);border-left:3px solid var(--info-border);background:var(--bg-surface);gap:5px;padding:12px 14px;display:grid}.notification-item:last-child{border-bottom:0}.notification-item.severity-warning{border-left-color:var(--warning)}.notification-item.severity-danger{border-left-color:var(--error)}.notification-item strong{color:var(--text);font-size:13px}.notification-item p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.45}.notification-kind{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-surface-alt);width:fit-content;color:var(--text-tertiary);text-transform:uppercase;padding:2px 7px;font-size:10px;font-weight:800}.notification-empty{margin:0;padding:16px 14px}.theme-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);min-width:36px;min-height:36px;color:var(--text-secondary);transition:background var(--transition), border-color var(--transition), color var(--transition);place-items:center;padding:6px 9px;font-size:16px;line-height:1;display:grid}.theme-toggle:hover:not(:disabled){background:var(--bg-hover);color:var(--accent);border-color:var(--border-focus)}.success-message,.error-message{border-radius:var(--radius);max-width:1440px;margin:0 auto 14px;padding:10px 14px;font-size:13px;font-weight:600}.success-message{border:1px solid var(--success-border);background:var(--success-bg);color:var(--success)}.error-message{border:1px solid var(--error-border);background:var(--error-bg);color:var(--error)}.notice{border-radius:var(--radius);max-width:1440px;margin:0 auto 16px;padding:11px 14px;font-size:13px;font-weight:600}.notice.success{border:1px solid var(--success-border);background:var(--success-bg);color:var(--success)}.notice.error,.field-error{color:var(--error)}.notice.error{border:1px solid var(--error-border);background:var(--error-bg)}.field-error{font-size:12px;font-weight:600}.segmented{border-radius:var(--radius);background:var(--bg-surface-alt);border:1px solid var(--border);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.segmented button{color:var(--text-secondary);background:0 0;border-color:#0000}.segmented button.active{background:var(--bg-surface);color:var(--text);box-shadow:var(--shadow-sm);border-color:var(--border)}.segmented button:hover:not(.active):not(:disabled){background:var(--bg-hover)}.payout-chip{cursor:pointer;transition:border-color var(--transition), background var(--transition), box-shadow var(--transition)}.payout-chip-clear{border:1px solid var(--error-border);border-radius:var(--radius-pill);background:var(--error-bg);color:var(--error);cursor:pointer;transition:background var(--transition), opacity var(--transition);align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.payout-chip-clear:hover{opacity:.8}.payout-chip.active{border-color:var(--accent);background:var(--bg-accent);box-shadow:0 0 0 2px var(--accent)}.payout-chip:hover:not(.active){border-color:var(--border-input);background:var(--bg-hover)}.portfolio-row{border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);display:flex;position:relative}.portfolio-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.portfolio-row:has(.portfolio-button.active){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.portfolio-row .portfolio-button{border-radius:calc(var(--radius) - 1px) 0 0 calc(var(--radius) - 1px);background:var(--bg-surface);box-shadow:none;border:none;flex:1}.portfolio-row .portfolio-button.active{background:var(--bg-accent);box-shadow:none;border:none}.portfolio-row .portfolio-button:hover:not(:disabled){background:var(--bg-hover)}.portfolio-row .portfolio-button.active:hover{background:var(--bg-accent)}.portfolio-row .portfolio-menu-trigger{border:none;border-left:1px solid var(--border);border-radius:0 calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0;background:var(--bg-surface);width:34px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition), color var(--transition);flex-shrink:0;place-items:center;padding:0;font-size:13px;font-weight:800;display:grid}.portfolio-row .portfolio-menu-trigger:hover{background:var(--bg-hover);color:var(--text)}.portfolio-row .portfolio-menu-wrapper{display:flex;position:relative}.portfolio-menu-wrapper .portfolio-menu-dropdown{z-index:25;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);min-width:148px;box-shadow:var(--shadow-lg);padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0}.portfolio-menu-dropdown button{border-radius:var(--radius-sm);color:var(--text);text-align:left;background:0 0;border:0;width:100%;padding:8px 10px;font-size:13px;font-weight:500}.portfolio-menu-dropdown button:hover:not(:disabled){background:var(--bg-hover)}.portfolio-button{border-color:var(--border);background:var(--bg-surface);width:100%;color:var(--text);text-align:left;transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.portfolio-button:hover{background:var(--bg-hover);border-color:var(--border-input)}.portfolio-button.active{border-color:var(--accent);background:var(--bg-accent);box-shadow:0 0 0 1px var(--accent);border-left:3px solid var(--accent);padding-left:10px}.portfolio-row{align-items:start;padding:0}.portfolio-select-button{min-height:42px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:9px 12px;display:grid}.portfolio-menu{position:relative}.portfolio-menu summary{border:0;border-left:1px solid var(--border);border-radius:0 var(--radius) var(--radius) 0;min-width:34px;min-height:42px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition), border-color var(--transition);background:0 0;place-items:center;font-weight:700;list-style:none;display:grid}.portfolio-menu summary:hover{background:var(--bg-hover)}.portfolio-menu summary::-webkit-details-marker{display:none}.portfolio-menu div{z-index:20;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);min-width:140px;box-shadow:var(--shadow-lg);padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0}.portfolio-menu button{border-radius:var(--radius-sm);color:var(--text);text-align:left;background:0 0;border:0;padding:8px 10px;font-size:13px}.portfolio-menu button:hover:not(:disabled){background:var(--bg-hover)}.sort-header{min-height:auto;color:inherit;text-align:left;font:inherit;background:0 0;border:0;padding:0;font-weight:700}.portfolio-badge{color:var(--accent-text);margin-left:6px;font-size:11px;font-weight:700;display:inline-block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.symbol-with-badge{align-items:center;gap:6px;display:inline-flex}.shariah-badge{border-radius:var(--radius-pill);color:#059669;white-space:nowrap;background:linear-gradient(135deg,#10b9812e,#2dd4bf29);border:1px solid #14b8a661;align-items:center;gap:5px;width:fit-content;padding:2px 6px;font-size:11px;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 0 0 1px #14b8a614}.shariah-badge svg{fill:currentColor;flex:none;width:15px;height:15px}.shariah-compliant{color:#047857;background:linear-gradient(135deg,#10b98133,#2dd4bf2e);border-color:#14b8a675}:root[data-theme=dark] .shariah-badge,:root[data-theme=dark] .shariah-compliant{color:#5eead4;background:linear-gradient(135deg,#10b98147,#2dd4bf2e);border-color:#2dd4bf8c;box-shadow:0 0 0 1px #2dd4bf1f,0 0 14px #14b8a629}.tour-reminder{border-color:var(--accent);color:var(--accent-text);animation:2s ease-in-out infinite tour-pulse}@keyframes tour-pulse{0%,to{box-shadow:0 0 #4f8ef74d}50%{box-shadow:0 0 0 4px #4f8ef71a}}.onboarding-panel{gap:18px;display:grid}.onboarding-options{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.onboarding-option{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);min-height:120px;color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--transition), background var(--transition), box-shadow var(--transition);grid-template-columns:auto 1fr;gap:8px 10px;padding:14px;display:grid}.onboarding-option input{align-self:start;width:auto;min-height:auto;margin-top:3px}.onboarding-option strong,.onboarding-option span,.onboarding-option small{grid-column:2}.onboarding-option:hover:not(.active){border-color:var(--border-input);background:var(--bg-hover)}.onboarding-option.active{border-color:var(--accent);background:var(--bg-accent);box-shadow:0 0 0 2px var(--accent)}.onboarding-option span,.onboarding-option small{line-height:1.4}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);background:#00000080;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-panel{border-radius:var(--radius-xl);width:min(980px,100%);max-height:calc(100vh - 48px);box-shadow:var(--shadow-xl);overflow:visible}.modal-panel form{max-height:calc(100vh - 150px);overflow-y:auto}.tools-modal-panel{flex-direction:column;width:min(90vw,1440px);height:min(90vh,980px);display:flex;overflow:hidden}.tools-modal-panel>.section-heading,.tools-modal-panel>.tab-bar{flex:none}.tools-modal-body{flex:auto;min-height:0;padding-right:2px;overflow:hidden auto}.tools-modal-body>.form-stack,.tools-modal-body>.import-preview,.tools-modal-body>.portfolio-report{min-width:0}.tools-modal-body .table-wrap{max-width:100%}.modal-actions,.tour-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.tour-backdrop{z-index:60;pointer-events:none;position:fixed;inset:0}.tour-spotlight-overlay{z-index:58;pointer-events:auto;background:#0000008c;transition:opacity .3s;position:fixed;inset:0}.tour-card{z-index:62;border:2px solid var(--accent);border-radius:var(--radius-xl);background:var(--bg-surface);width:min(380px,100vw - 32px);box-shadow:var(--shadow-xl);pointer-events:auto;padding:20px;transition:opacity .2s;position:fixed;bottom:24px;right:24px}.tour-card h2{letter-spacing:-.01em;color:var(--text);margin:0 0 8px;font-size:18px;font-weight:700}.tour-card p{color:var(--text-secondary);margin:0 0 16px;font-size:13px;line-height:1.6}.tour-dots{gap:6px;margin-bottom:16px;display:flex}.tour-dot{background:var(--border);width:7px;height:7px;transition:background var(--transition), transform var(--transition);border-radius:50%}.tour-dot.active{background:var(--accent);transform:scale(1.3)}.tour-placement-left{place-items:center start}.tour-placement-top{place-items:start center}.tour-placement-center{place-items:center}.tour-placement-right{place-items:center end}.tour-placement-bottom{place-items:end center}.tour-target-active{z-index:61;border-radius:var(--radius);outline:3px solid var(--accent);outline-offset:4px;position:relative;box-shadow:0 0 0 6px #4f8ef724}.tooltip-wrapper{vertical-align:middle;display:inline-flex;position:relative}.tooltip-content{z-index:100;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);width:max-content;max-width:260px;box-shadow:var(--shadow-lg);color:var(--text);pointer-events:none;padding:8px 11px;font-size:12px;line-height:1.5;animation:.12s tooltip-in;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tooltip-bottom{top:calc(100% + 8px);bottom:auto}@keyframes tooltip-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.tooltip-help{background:var(--bg-surface-alt);border:1px solid var(--border);width:14px;height:14px;color:var(--text-tertiary);cursor:default;transition:border-color var(--transition), color var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex}.tooltip-help:hover{border-color:var(--accent);color:var(--accent-text)}.section-heading{grid-auto-flow:column;align-items:center;margin-bottom:4px}.tab-bar{border-bottom:2px solid var(--border);gap:2px;margin:-4px 0 18px;display:flex}.tab-btn{min-height:auto;color:var(--text-tertiary);transition:color var(--transition), border-color var(--transition), background var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-2px;padding:8px 14px;font-size:13px;font-weight:600}.tab-btn.active{color:var(--accent-text);border-bottom-color:var(--accent)}.tab-btn:hover:not(.active){color:var(--text);background:var(--bg-hover);border-radius:6px 6px 0 0}@keyframes tab-fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.tab-panel-enter{animation:.18s tab-fade}.metric .metric-trend.value-positive{color:var(--success)}.metric .metric-trend.value-negative{color:var(--error)}.metric .metric-trend.value-neutral{color:var(--accent-text)}.metric-trend{letter-spacing:.01em;margin-top:2px;font-size:11px;font-weight:700;display:inline-block}.tab-badge{border-radius:var(--radius-pill,999px);background:var(--border);min-width:18px;height:17px;color:var(--text-secondary);vertical-align:middle;transition:background var(--transition), color var(--transition);justify-content:center;align-items:center;margin-left:5px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.tab-btn.active .tab-badge{background:var(--accent);color:#fff}.symbol-search{z-index:5;position:relative}.symbol-suggestions{z-index:40;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);width:min(360px,100%);max-height:240px;box-shadow:var(--shadow-lg);gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.symbol-suggestions button{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);min-height:36px;color:var(--text);text-align:left;transition:border-color var(--transition), background var(--transition);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.symbol-suggestions span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.symbol-suggestions button:hover,.symbol-suggestions button:focus{border-color:var(--accent);background:var(--bg-accent)}.allocation-bar{border-radius:var(--radius-pill);background:var(--bg-surface-alt);border:1px solid var(--border);width:100%;height:16px;display:flex;overflow:hidden}.allocation-segment{min-width:8px;transition:opacity var(--transition)}.allocation-segment:hover{opacity:.8}.segment-0{background:#3b82f6}.segment-1{background:#22c55e}.segment-2{background:#f59e0b}.segment-3{background:#a855f7}.segment-4{background:#ef4444}.legend{color:var(--text-secondary);flex-wrap:wrap;gap:10px;margin-top:12px;font-size:12px;display:flex}.allocation-list{gap:12px;display:grid}.allocation-row{grid-template-columns:minmax(160px,1fr) minmax(180px,2fr) auto;align-items:center;gap:12px;display:grid}.allocation-mini{border-radius:var(--radius-pill);background:var(--bg-surface-alt);height:8px;overflow:hidden}.allocation-fill{min-width:8px;height:100%;display:block}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:780px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:11px 10px}th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-surface-alt);font-size:11px;font-weight:700;position:sticky;top:0}tr:hover td{background:var(--bg-hover);transition:background .1s}td small{margin-top:3px;display:block}.empty-cell{color:var(--text-tertiary);font-size:13px;text-align:center!important;padding:32px 16px!important}.empty-cell strong{color:var(--text-secondary);margin-bottom:4px;font-size:15px;display:block}.table-pager{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;padding:12px 2px 2px;font-size:13px;display:flex}.table-pager>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-pager button{min-height:34px;padding:7px 12px}.pager-size-select{border-radius:var(--radius-sm,6px);width:auto;min-height:34px;padding:5px 8px;font-size:13px}.column-toggle{position:relative}.column-toggle-panel{z-index:30;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);min-width:160px;box-shadow:var(--shadow-md);padding:8px 0;position:absolute;top:calc(100% + 6px);right:0}.column-toggle-item{cursor:pointer;align-items:center;gap:8px;width:100%;padding:6px 14px;font-size:13px;font-weight:500;display:flex}.column-toggle-item:hover{background:var(--bg-hover)}.column-toggle-item input{width:auto;min-height:auto}.table-search{border-radius:var(--radius,8px);max-width:280px;min-height:36px;padding:7px 10px;font-size:13px}.transaction-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:14px;display:grid}.wide{grid-column:span 2}.inline-form{grid-template-columns:170px 150px 120px auto}.filters{grid-template-columns:180px 180px auto;justify-content:start;margin-bottom:14px}.inline-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row-actions:not(td){align-items:center;gap:8px;min-height:40px;display:flex}td.row-actions{vertical-align:middle;white-space:nowrap;height:1px;display:table-cell}td.row-actions>*+*{margin-left:8px}td.row-actions .text-button,td.row-actions .secondary{vertical-align:middle;justify-content:center;align-items:center;min-height:40px;display:inline-flex}td.row-actions .text-button{padding-top:8px;padding-bottom:8px}.alert-list{gap:10px;margin-top:14px;display:grid}.alert-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);transition:border-color var(--transition);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.alert-row:hover{border-color:var(--border-input)}.insights-stack,.insight-list{gap:12px;display:grid}.insight-list,.insight-list--grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.insight-list--row{grid-template-columns:1fr}.insight-card--row{gap:8px;padding:15px 15px 12px}.insight-clamp{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.insight-clamp--1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.insight-see-more{min-height:auto;color:var(--accent-text);text-align:left;cursor:pointer;transition:opacity var(--transition);background:0 0;border:none;align-self:start;padding:0;font-size:12px;font-weight:700}.insight-see-more:hover{opacity:.75}.insight-view-toggle{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface-alt);gap:2px;padding:2px;display:flex}.insight-view-toggle button{border-radius:calc(var(--radius-sm) - 2px);width:28px;height:26px;min-height:auto;color:var(--text-tertiary);transition:background var(--transition), color var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.insight-view-toggle button:hover{background:var(--bg-hover);color:var(--text)}.insight-view-toggle button.active{background:var(--bg-surface);color:var(--accent);box-shadow:var(--shadow-sm)}.insight-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);transition:box-shadow var(--transition);border-left-width:4px;gap:8px;padding:14px;display:grid}.insight-card:hover{box-shadow:var(--shadow-sm)}.insight-card div{grid-template-columns:1fr auto;align-items:start;gap:10px;display:grid}.insight-card p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.severity-info{border-left-color:var(--info)}.severity-watch{border-left-color:#f2b041}.severity-risk{border-left-color:var(--error)}.payout-summary{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.payout-chip{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);min-width:130px;transition:border-color var(--transition), background var(--transition);gap:3px;padding:10px 12px;display:grid}.payout-chip:hover{border-color:var(--accent);background:var(--bg-accent)}.timeline-list{gap:10px;display:grid}.timeline-row{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);transition:border-color var(--transition);gap:10px;padding:14px;display:grid}.timeline-row:hover{border-color:var(--border-input)}.timeline-row-header{grid-template-columns:minmax(130px,1fr) minmax(260px,2fr);align-items:start;gap:12px;display:grid}.timeline-date{gap:3px;display:grid}.timeline-date strong{color:var(--text);font-size:15px;font-weight:700}.timeline-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.timeline-totals span{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);gap:2px;padding:7px 10px;display:grid}.timeline-totals small{color:var(--text-tertiary)}.timeline-entry-list{gap:6px;max-height:360px;padding-right:4px;display:grid;overflow-y:auto}.timeline-entry{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);transition:border-color var(--transition), background var(--transition);grid-template-columns:110px 90px minmax(70px,.7fr) minmax(100px,1fr) minmax(90px,.8fr) minmax(180px,2fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.timeline-entry:hover{background:var(--bg-hover)}.timeline-entry small{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-type{border-radius:var(--radius-pill);background:var(--info-bg);color:var(--info);justify-self:start;padding:3px 8px;font-size:11px;font-weight:700}.timeline-type-buy,.timeline-type-cash_withdrawal{background:var(--error-bg);color:var(--error)}.timeline-type-sell,.timeline-type-dividend,.timeline-type-cash_deposit{background:var(--success-bg);color:var(--success)}.profile-page{gap:20px;display:grid}.profile-page>.metric-grid,.profile-page>.panel{width:min(1440px,100%);margin:0 auto}.profile-portfolio-list{gap:14px;display:grid}.profile-portfolio-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface-alt);transition:border-color var(--transition);gap:14px;padding:16px;display:grid}.profile-portfolio-card:hover{border-color:var(--border-input)}.profile-portfolio-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.profile-portfolio-header h3{color:var(--text);margin:0;font-size:17px;font-weight:700}.profile-portfolio-header p{margin:4px 0 0}.profile-number-grid,.profile-estimate-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.profile-number-grid span,.profile-estimate-grid span{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);gap:3px;padding:9px 11px;display:grid}.profile-tax-grid{grid-template-columns:minmax(160px,1fr) auto minmax(220px,1.4fr);align-items:end;gap:10px;display:grid}.admin-page{gap:20px;display:grid}.admin-page>.metric-grid,.admin-page>.panel,.admin-page>.admin-grid{width:min(1440px,100%);margin:0 auto}.admin-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);align-items:start;gap:16px;display:grid}.block-text{margin-top:3px;display:block}.badge-row,.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-detail-list{gap:10px;display:grid}.admin-detail-list span{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);gap:4px;padding:10px;display:grid}.admin-detail-list small{color:var(--text-secondary)}.admin-detail-list strong{word-break:break-word}.admin-status-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.admin-status-grid span{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);gap:4px;padding:11px 12px;display:grid}.admin-status-grid small{color:var(--text-secondary);word-break:break-word}.positive{color:var(--success)}.negative{color:var(--error)}.admin-inline-fields{grid-template-columns:72px 92px;gap:8px;display:grid}.admin-check-list{gap:6px;display:grid}.admin-check-list label{color:var(--text-secondary);align-items:center;gap:6px;font-weight:700;display:inline-flex}.admin-check-list input{width:auto}.role-matrix-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.role-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);gap:12px;padding:14px;display:grid}.role-card-heading{text-transform:capitalize;justify-content:space-between;align-items:start;gap:12px;display:flex}.role-card-heading small{color:var(--text-secondary);white-space:nowrap}.permission-chip-list{flex-wrap:wrap;gap:6px;display:flex}.permission-chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-surface);color:var(--text-secondary);text-transform:capitalize;padding:4px 8px;font-size:12px;font-weight:700}.admin-permission-check-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;max-height:min(420px,52vh);display:grid;overflow:auto}.admin-permission-check-grid label{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);min-height:36px;color:var(--text-secondary);text-transform:capitalize;align-items:center;gap:8px;padding:7px 9px;font-size:12px;font-weight:700;display:inline-flex}.admin-permission-check-grid input{width:auto}.admin-permission-check-grid .required-permission{border-color:var(--border-focus);color:var(--accent-text)}.admin-create-grid{grid-template-columns:110px minmax(180px,1fr) 140px minmax(160px,1fr) 80px 150px auto;align-items:end;gap:8px;display:grid}.admin-user-create-grid{grid-template-columns:minmax(150px,1fr) minmax(180px,1.2fr) minmax(150px,1fr) 70px 110px minmax(190px,1.2fr) auto;align-items:start;gap:8px;display:grid}.admin-portfolio-create-grid{grid-template-columns:minmax(180px,1.2fr) minmax(180px,1.2fr) 130px 70px 90px 110px 95px auto;align-items:start;gap:8px;display:grid}.admin-transaction-create-grid{grid-template-columns:minmax(190px,1.5fr) 130px 110px minmax(160px,1fr) 90px 100px 130px 70px 100px 100px 100px minmax(300px,1.6fr) minmax(90px,auto);align-items:start;gap:8px;display:grid}.admin-transaction-create-grid .admin-charge-grid{margin-top:0}.admin-transaction-notes-input{min-width:220px}.admin-create-role-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);flex-wrap:wrap;align-items:center;gap:6px 10px;min-height:38px;padding:7px 9px;display:flex}.admin-create-role-list label{color:var(--text-secondary);text-transform:capitalize;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.admin-create-role-list input{width:auto}.admin-shariah-fields{grid-template-columns:130px 140px minmax(180px,1fr);gap:8px;display:grid}.admin-charge-grid{grid-template-columns:repeat(5,minmax(58px,1fr));gap:4px;margin-top:6px;display:grid}.admin-charge-grid input{min-width:58px;padding:7px 8px;font-size:12px}.checkbox-row{align-items:center;gap:8px;min-height:38px;font-weight:700;display:inline-flex}.checkbox-row input{width:auto}.admin-output{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface-alt);max-height:180px;color:var(--text-secondary);white-space:pre-wrap;padding:10px;font-size:12px;overflow:auto}.admin-log-output{max-height:320px;line-height:1.55}.import-preview{gap:14px;margin-top:18px;display:grid}.import-summary{flex-wrap:wrap;gap:8px;display:flex}.import-summary span,.status-pill{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-surface-alt);color:var(--text-secondary);padding:4px 9px;font-size:12px;font-weight:600}.portfolio-report{gap:18px;display:grid}.report-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.report-header h2{margin:2px 0 4px}.report-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.report-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.report-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface-alt);gap:6px;min-height:112px;padding:12px;display:grid}.report-card span,.report-card small{color:var(--text-secondary)}.report-card span{text-transform:uppercase;font-size:11px;font-weight:700}.report-card strong{font-size:19px}.report-card small{font-size:12px;line-height:1.4}.report-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-section{gap:10px;display:grid}.status-valid{border-color:var(--success-border);background:var(--success-bg);color:var(--success)}.status-error{border-color:var(--error-border);background:var(--error-bg);color:var(--error)}.status-matched,.status-refresh,.status-created{border-color:var(--success-border);background:var(--success-bg);color:var(--success)}.status-updated{border-color:var(--info-border);background:var(--info-bg);color:var(--info)}.status-deleted{border-color:var(--error-border);background:var(--error-bg);color:var(--error)}.status-duplicate,.status-mismatch,.status-missing_detail,.status-missing_summary{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning)}.status-conflict{color:#5b3bb0;background:#f5f2ff;border-color:#c7b9f4}[data-theme=dark] .status-conflict{color:#c4b5fd;background:#2a1f40;border-color:#7c3aed}.compact-table table{min-width:620px}.conflict-group-row td{background:var(--bg-surface-alt)}.conflict-group-row td:last-child{align-items:center;gap:10px;display:flex}.sub-row.old-row td{background:var(--warning-bg)}.sub-row.new-row td{background:var(--info-bg)}.metadata-refresh-field{border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--warning);font-weight:700}td.metadata-refresh-field{box-shadow:inset 3px 0 #f2b041}.version-badge{border-radius:var(--radius-pill);padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.version-badge.old{background:var(--warning-bg);color:var(--warning)}.version-badge.new{background:var(--info-bg);color:var(--info)}.reconciliation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.toast-container{z-index:999;pointer-events:none;flex-direction:column;gap:10px;max-width:360px;display:flex;position:fixed;top:80px;right:24px}.toast{border-radius:var(--radius);box-shadow:var(--shadow-lg);pointer-events:all;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13px;font-weight:600;animation:.2s tab-fade;display:flex}.toast-success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success)}.toast-error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error)}.toast-info{background:var(--info-bg);border:1px solid var(--info-border);color:var(--info)}.toast-close{min-height:auto;color:inherit;opacity:.6;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:12px}.toast-close:hover{opacity:1}.page-loader{background:linear-gradient(90deg, var(--accent), #22c55e, var(--accent));z-index:999;background-size:200% 100%;border-radius:0 0 2px 2px;height:3px;animation:1.4s ease-in-out infinite page-loader-sweep;position:fixed;top:0;left:0;right:0}@keyframes page-loader-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}.is-refreshing{pointer-events:none}.is-refreshing td,.is-refreshing th,.is-refreshing h2,.is-refreshing strong,.is-refreshing small,.is-refreshing p,.is-refreshing span:not(.btn-spinner):not(.portfolio-badge):not(.sort-indicator),.is-refreshing label,.is-refreshing .timeline-type,.is-refreshing .eyebrow{border-radius:3px;color:#0000!important;background:linear-gradient(90deg, var(--bg-surface-alt) 25%, var(--bg-hover) 50%, var(--bg-surface-alt) 75%)!important;background-size:200% 100%!important;animation:1.5s ease-in-out infinite shimmer!important}.is-refreshing button,.is-refreshing input,.is-refreshing select{opacity:.2}.btn-spinner{vertical-align:middle;opacity:.75;border:2px solid;border-top-color:#0000;border-radius:50%;width:12px;height:12px;margin-left:7px;animation:.65s linear infinite btn-spin;display:inline-block}@keyframes btn-spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--bg-surface-alt) 25%, var(--bg-hover) 50%, var(--bg-surface-alt) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.sk-eyebrow{width:100px;height:11px;margin-bottom:10px}.sk-title{width:55%;height:28px}.sk-h{border-radius:4px;height:14px}.sk-metric-val{border-radius:4px;height:22px;margin-top:10px}.sk-bar{border-radius:999px;height:16px;margin-bottom:14px}.sk-row{border-radius:7px;height:40px;margin-bottom:8px}.ss-root{width:100%;position:relative}.ss-trigger{border:1px solid var(--border-input);border-radius:var(--radius);background:var(--bg-input);width:100%;min-height:40px;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition);align-items:center;gap:6px;padding:8px 11px;font-size:14px;display:flex}.ss-trigger:hover:not(:disabled){border-color:var(--border-focus)}.ss-open .ss-trigger,.ss-trigger:focus{border-color:var(--border-focus);outline:none;box-shadow:0 0 0 3px #4f8ef726}.ss-disabled .ss-trigger{opacity:.5;cursor:not-allowed}.ss-trigger-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ss-placeholder{color:var(--text-tertiary)}.ss-trigger-sub{color:var(--text-tertiary);flex-shrink:0;font-size:11px}.ss-chevron{color:var(--text-tertiary);transition:color var(--transition);flex-shrink:0;font-size:9px}.ss-open .ss-chevron{color:var(--accent-text)}.ss-dropdown{z-index:45;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);min-width:220px;box-shadow:var(--shadow-lg);flex-direction:column;max-height:300px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.ss-search-wrap{border-bottom:1px solid var(--border);flex-shrink:0;padding:8px}.ss-search{border:1px solid var(--border-input)!important;border-radius:var(--radius-sm)!important;background:var(--bg-surface-alt)!important;width:100%!important;min-height:34px!important;color:var(--text)!important;box-shadow:none!important;transition:border-color var(--transition)!important;outline:none!important;padding:6px 10px!important;font-size:13px!important}.ss-search:focus{border-color:var(--border-focus)!important;box-shadow:0 0 0 2px #4f8ef71f!important}.ss-list{flex:1;margin:0;padding:4px;list-style:none;overflow-y:auto}.ss-option{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition);align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.ss-option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ss-option-sub{color:var(--text-tertiary);flex-shrink:0;font-size:11px}.ss-check{color:var(--accent-text);flex-shrink:0;font-size:12px}.ss-option.ss-focused,.ss-option:hover{background:var(--bg-hover)}.ss-option.ss-selected{background:var(--bg-accent);color:var(--accent-text)}.ss-option.ss-selected.ss-focused{background:var(--bg-accent)}.ss-empty{color:var(--text-tertiary);text-align:center;padding:12px 10px;font-size:13px}.sort-header{min-height:auto;color:inherit;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:0;align-items:center;gap:2px;margin:0;padding:0;font-weight:700;display:inline-flex}.sort-header:hover{color:var(--accent-text)}.sort-indicator{color:var(--text-tertiary);transition:color var(--transition);font-size:10px}.sort-indicator.active{color:var(--accent-text)}.sidebar-mobile-nav{display:none}.desktop-nav{grid-auto-flow:column;align-items:center;gap:12px;display:grid!important}.page-sidebar{display:none!important}.page-nav-active{box-shadow:0 0 0 1px var(--accent);border-color:var(--accent)!important;background:var(--bg-accent)!important}@media (max-width:860px){.page-sidebar{flex-direction:column;display:flex!important}}.hamburger-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);width:38px;height:38px;color:var(--text);transition:background var(--transition), border-color var(--transition);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.hamburger-btn:hover{background:var(--bg-hover)}.hamburger-icon{flex-direction:column;gap:4px;width:18px;display:flex}.hamburger-icon span{transform-origin:50%;background:currentColor;border-radius:2px;height:2px;transition:transform .2s,opacity .2s,width .2s;display:block}.hamburger-icon.open span:first-child{transform:translateY(6px)rotate(45deg)}.hamburger-icon.open span:nth-child(2){opacity:0;width:0}.hamburger-icon.open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.sidebar-overlay{z-index:39;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;display:none;position:fixed;inset:0}.theme-toggle-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);min-height:40px;color:var(--text);transition:border-color var(--transition), background var(--transition);cursor:pointer;text-align:left;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.theme-toggle-row:hover:not(:disabled){border-color:var(--border-focus);background:var(--bg-hover)}.theme-toggle-track{border-radius:var(--radius-pill);background:var(--border-input);flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.theme-toggle-track.dark{background:var(--accent)}.theme-toggle-thumb{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.theme-toggle-track.dark .theme-toggle-thumb{transform:translate(16px)}@media (max-width:1180px){.transaction-form,.admin-user-create-grid,.admin-portfolio-create-grid,.admin-transaction-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.auth-page,.app-shell{padding:18px 16px}.topbar{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.auth-panel,.workspace,.topbar{grid-template-columns:1fr}.hamburger-btn{display:flex}.desktop-nav{display:none!important}.sidebar-mobile-nav{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:auto;padding-top:16px;display:flex}.sidebar-mobile-nav-user{color:var(--text-tertiary);justify-content:space-between;align-items:center;gap:8px;padding:4px 0;font-size:12px;font-weight:600;display:flex}.sidebar-mobile-nav-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);min-height:40px;color:var(--text);text-align:left;transition:background var(--transition), border-color var(--transition);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.sidebar-mobile-nav-btn:hover{background:var(--bg-hover);border-color:var(--border-input)}.sidebar-mobile-nav-btn.danger{color:var(--error);border-color:var(--error-border)}.notifications-menu-sidebar{width:100%}.notifications-menu-sidebar .notifications-trigger{justify-content:flex-start;width:100%}.notifications-menu-sidebar .notifications-popover{width:min(248px,100vw - 42px);left:0;right:auto}.workspace{position:relative}.sidebar{z-index:40;background:var(--bg-surface);width:280px;max-height:100vh;box-shadow:var(--shadow-xl);flex-direction:column;padding:16px;transition:left .28s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;left:-100%;overflow-y:auto;display:flex!important}.sidebar.mobile-open{left:0}.sidebar-overlay.visible{display:block}.metric-grid,.transaction-form,.tools-grid,.profile-portfolio-header,.profile-tax-grid,.onboarding-options,.reconciliation-grid,.allocation-row,.timeline-row,.timeline-row-header,.report-two-column,.admin-grid,.timeline-totals,.timeline-entry{grid-template-columns:1fr}.wide{grid-column:auto}.topbar-actions,.section-heading,.quick-actions,.inline-form,.filters{grid-auto-flow:row;justify-items:stretch}.quick-actions,.inline-form,.filters,.admin-user-create-grid,.admin-portfolio-create-grid,.admin-transaction-create-grid{grid-template-columns:1fr}.quick-actions{z-index:38;background:var(--bg-surface);border-top:1px solid var(--border);padding:8px 12px env(safe-area-inset-bottom,0px);grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;justify-content:stretch;gap:6px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #00000014}.quick-actions button,.quick-actions a{white-space:nowrap;text-overflow:ellipsis;min-height:44px;padding:6px 4px;font-size:12px;overflow:hidden}.main-grid{padding-bottom:72px}}@media print{body{color:#111;background:#fff}body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{color:#111;background:#fff;padding:20px;position:absolute;inset:0}.no-print,.modal-backdrop:before{display:none!important}.modal-backdrop,.modal-panel,.tools-modal-panel,.tools-modal-body{width:100%;height:auto;max-height:none;box-shadow:none;background:#fff;border:0;padding:0;display:block;position:static;overflow:visible}.report-grid,.report-two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card,.panel,.table-wrap{break-inside:avoid}}
