@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600&display=swap";:root{font-family:DM Sans,sans-serif;color:#102b4e;background:#f6f3ea;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}main{max-width:1180px;margin:0 auto;padding:56px 24px 72px}header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}h1,h2,p{margin:0}h1{font-family:Playfair Display,serif;font-size:clamp(2.2rem,5vw,3.5rem);letter-spacing:-.04em}h2{font-size:1.13rem;letter-spacing:-.02em}.eyebrow{color:#60758d;font-size:.7rem;font-weight:700;letter-spacing:.13em;margin-bottom:7px}.subtle{color:#5c6f82;line-height:1.5;margin-top:7px}.total{background:#102b4e;padding:15px 20px;color:#a9bfd6;border-radius:14px;min-width:185px}.total span{display:block;font-size:.74rem}.total strong{color:#fff;font-size:1.4rem}.header-actions{display:flex;align-items:center;gap:12px}.auth-controls{display:flex;align-items:center;gap:8px}.auth-controls button{grid-column:auto;margin:0;padding:9px 12px;font-size:.82rem}.secondary-button{color:#275d96;background:#fff;border:1px solid #a9bfd6}.dashboard-grid,.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.actions{margin-top:20px;grid-template-columns:.9fr 1.1fr}.panel{min-width:0;background:#fff;border:1px solid #e1ddd2;border-radius:18px;padding:24px;box-shadow:0 8px 24px #102b4e0a}.panel-title{display:flex;justify-content:space-between;align-items:start;gap:10px}.panel-title>span{color:#5c6f82;font-size:.8rem}.chart{height:315px;width:100%;margin-top:8px}.empty{height:315px;display:grid;place-items:center;text-align:center;color:#71859a;padding:30px}.accounts-panel{margin-top:20px}.table-wrap{overflow-x:auto;margin-top:20px}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:14px 12px;border-bottom:1px solid #e7e3d9}th{color:#60758d;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}td{font-size:.92rem}.accounts-panel th:nth-child(n+5),.accounts-panel td:nth-child(n+5),.accounts-panel tfoot th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}tbody td:first-child{font-weight:600}tfoot th{color:#102b4e;font-size:.92rem;letter-spacing:0;text-transform:none;border-bottom:0;padding-top:18px}.type-pill{display:inline-block;padding:4px 8px;border-radius:999px;color:#365778;background:#e5edf5;font-size:.76rem;text-transform:capitalize}.table-empty{color:#71859a;padding:38px 0 14px;text-align:center}form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}label{display:grid;gap:7px;color:#435c75;font-size:.8rem;font-weight:600;margin-top:18px}form label{margin-top:0}input,select{width:100%;font:inherit;color:#102b4e;border:1px solid #d3dce6;padding:10px 11px;border-radius:9px;background:#fff}input:focus,select:focus{outline:2px solid #a9bfd6;border-color:#275d96}button{grid-column:span 2;border:0;border-radius:9px;background:#275d96;color:#fff;cursor:pointer;font:inherit;font-weight:700;padding:11px;margin-top:3px}.file-input{border:1px dashed #8faece;background:#f4f7fa;color:#275d96;padding:13px;border-radius:10px;cursor:pointer}.file-input input{border:0;padding:0;background:transparent}.sample{margin-top:22px;padding:13px;background:#f3f0e8;border-radius:9px;display:grid;gap:5px;color:#5c6f82;font-size:.75rem}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82em}.notice,.error{padding:11px 15px;border-radius:10px;margin-bottom:18px}.notice{color:#275d96;background:#e5edf5}.error{color:#aa2d2d;background:#fff0f0}@media(max-width:760px){main{padding:32px 16px 48px}header,.dashboard-grid,.actions{display:grid;grid-template-columns:1fr}header{align-items:start}.header-actions{justify-content:space-between}.total{width:max-content}.panel{padding:18px}form{grid-template-columns:1fr}button{grid-column:span 1}}.panel-title .filter-toggle{display:flex;align-items:center;gap:7px;margin:0;color:#435c75;font-size:.78rem;font-weight:600;white-space:nowrap}.panel-title .filter-toggle input{width:15px;height:15px;accent-color:#275d96}.adjustment-panel{margin-top:20px}.adjustment-preview{display:grid;gap:10px;margin-top:18px;padding:16px;color:#294968;background:#edf3f8;border:1px solid #d7e3ef;border-radius:11px;font-size:.9rem}.adjustment-preview button{width:max-content;margin-top:3px}.history-controls{display:grid;justify-items:end;gap:7px}.history-controls select{width:min(170px,38vw);padding:7px 26px 7px 9px;font-size:.78rem}.history-controls strong{font-size:.9rem}.overview-top-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.total-history-panel{margin-top:0}.range-controls{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.range-controls button{grid-column:auto;margin:0;padding:5px 8px;color:#435c75;background:#f6f3ea;border:1px solid #d3dce6;border-radius:7px;font-size:.72rem}.range-controls button.active{color:#fff;background:#275d96;border-color:#275d96}.app-tabs{display:flex;gap:6px;margin:0 0 20px;padding:5px;width:max-content;border-radius:11px;background:#dfe7ef}.app-tabs button{grid-column:auto;margin:0;padding:8px 12px;color:#526a82;background:transparent;border-radius:8px;font-size:.84rem}.app-tabs button.active{color:#102b4e;background:#fff;box-shadow:0 1px 3px #102b4e1f}.account-entry-panel{margin-top:20px}.account-link{grid-column:auto;margin:0;padding:0;color:#275d96;background:transparent;border:0;border-radius:0;font:inherit;font-weight:600;text-align:left}.account-link:hover{text-decoration:underline}.actions .adjustment-panel{margin-top:0}.data-tools{margin-top:20px}.data-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:20px}.data-tools h3{margin:0;font-size:.95rem}.export-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.export-actions button{grid-column:auto;margin:0;padding:9px 11px;font-size:.82rem}.account-import-form{margin-top:18px}.account-import-form button{margin-top:0}@media(max-width:760px){.data-tools-grid{grid-template-columns:1fr;gap:22px}}.transactions-panel{margin-top:20px}.transactions-panel th:last-child,.transactions-panel td:last-child{text-align:right;font-variant-numeric:tabular-nums}.positive-amount{color:#275d96}.negative-amount{color:#b42318}.show-earlier{display:block;grid-column:auto;margin:18px auto 0;padding:9px 13px;font-size:.82rem}.edit-account-panel{margin-top:20px}.danger-button{grid-column:auto;margin:0;padding:6px 9px;color:#b42318;background:#fff1f1;border:1px solid #f4c7c7;border-radius:7px;font-size:.76rem}.danger-button:disabled{cursor:not-allowed;opacity:.5}.transaction-actions{display:grid;justify-items:end;gap:7px;color:#5c6f82;font-size:.8rem}.details-panel{max-width:850px}.details-panel form{grid-template-columns:1fr}.details-panel fieldset{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0;padding:18px;border:1px solid #d8dfe7;border-radius:12px}.details-panel legend{padding:0 6px;color:#294968;font-size:.86rem;font-weight:700}.details-panel .wide-field{grid-column:span 2}.field-hint{color:#60758d;font-size:.72rem;font-weight:500}.details-panel button{grid-column:auto;width:max-content}.scenario-panel{margin-top:20px}.calculated-field,.locked-field{display:grid;gap:7px;color:#435c75;font-size:.8rem;font-weight:600}.calculated-field{padding:11px;border:1px solid #cfddea;border-radius:9px;background:#edf3f8}.calculated-field strong{color:#102b4e;font-size:.95rem}.locked-field>div{padding:10px 11px;color:#5c6f82;background:#f0eee8;border:1px solid #d8dfe7;border-radius:9px;font-weight:500}.field-badge{display:inline-block;margin-left:4px;padding:2px 5px;color:#365f88;background:#d8e5f1;border-radius:999px;font-size:.63rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.label-with-info{display:inline-flex;align-items:center;width:fit-content}.info-tip{position:relative;display:inline-flex;align-items:center;vertical-align:middle}.info-button{display:inline-grid;flex:0 0 18px;grid-column:auto;place-items:center;width:18px;height:18px;min-width:18px;min-height:18px;margin:0 0 0 3px;padding:0;color:#365f88;background:#dde8f3;border:1px solid #a9bfd6;border-radius:50%;font-size:.69rem;font-weight:700;line-height:1;aspect-ratio:1 / 1}.info-button:hover,.info-button:focus{color:#fff;background:#275d96;outline:0}.info-tooltip{position:absolute;z-index:10;bottom:calc(100% + 8px);left:50%;width:240px;padding:10px 11px;color:#fff;background:#102b4e;border-radius:8px;box-shadow:0 6px 18px #102b4e33;font-size:.76rem;font-weight:500;line-height:1.4;transform:translate(-50%)}.info-tooltip:after{position:absolute;top:100%;left:50%;border:5px solid transparent;border-top-color:#102b4e;content:"";transform:translate(-50%)}.calculation-guide-toggle{grid-column:auto;margin:18px 0 0;padding:0;color:#275d96;background:transparent;border-radius:0;font-size:.84rem;text-decoration:underline}.calculation-guide{display:grid;gap:8px;margin-top:12px;padding:14px;color:#365778;background:#f3f0e8;border-radius:10px;font-size:.83rem;line-height:1.45}.calculation-guide p{margin:0}.projection-values{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 0}.projection-values div{padding:14px;border-radius:10px;background:#f3f0e8}.projection-values dt{color:#5c6f82;font-size:.77rem;font-weight:600}.projection-values dd{margin:7px 0 0;color:#102b4e;font-size:1.1rem;font-weight:700}.projection-values dd.positive{color:#275d96}.projection-values dd.negative{color:#b42318}.upgrade-info{margin-top:20px;padding:14px 16px;color:#365778;background:#edf3f8;border:1px solid #cfddea;border-radius:10px;line-height:1.5;font-size:.88rem}@media(max-width:760px){.details-panel fieldset{grid-template-columns:1fr}.details-panel .wide-field{grid-column:auto}.details-panel button{width:100%}}@media(max-width:760px){.projection-values{grid-template-columns:1fr}}@media(max-width:760px){.overview-top-grid{grid-template-columns:1fr}.overview-top-grid .total-history-panel{margin-top:0}}.accounts-panel .owned-percentage{width:66px;min-width:66px;padding-left:6px;padding-right:6px;white-space:nowrap}.account-sort-button{display:inline-flex;align-items:center;gap:5px;grid-column:auto;margin:0;padding:0;color:inherit;background:transparent;border:0;border-radius:0;font:inherit;letter-spacing:inherit;text-transform:inherit}.account-sort-button:hover,.account-sort-button:focus{color:#275d96;outline:0}.account-sort-button span{color:#71859a;font-size:.8rem}.admin-users-panel{margin-top:20px}.admin-users-table .selected-user td{background:#edf3f8}.admin-users-table th,.admin-users-table td{white-space:nowrap}.admin-user-form{display:grid;gap:12px;margin-top:24px;padding:20px;border:1px solid #d5e0ea;border-radius:12px;background:#f8f6f0}.admin-user-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:2px 2px 10px}.admin-user-summary h3{margin:3px 0 0;color:#102b4e;font-size:1.05rem}.admin-user-summary .subtle{margin:5px 0 0}.admin-user-section{overflow:hidden;border:1px solid #d5e0ea;border-radius:10px;background:#fff}.admin-user-section h4{margin:0;padding:14px 16px;color:#102b4e;background:#f5f3ec;font-size:.92rem}.admin-user-section-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:16px}.admin-user-section-content .calculated-field{margin-top:0}.admin-form-actions{display:flex;gap:10px;margin-top:8px}.admin-form-actions button{width:max-content}.clerk-profile-image{display:grid;grid-row:span 2;place-items:center;min-height:112px;color:#5c6f82;background:#f0eee8;border:1px solid #d8dfe7;border-radius:10px;font-size:.8rem}.clerk-profile-image img{width:88px;height:88px;border-radius:50%;object-fit:cover}@media(max-width:760px){.admin-user-summary{align-items:start;flex-direction:column}.admin-user-section-content{grid-template-columns:1fr}.admin-form-actions{flex-direction:column}.admin-user-summary button,.admin-form-actions button{width:100%}}.account-details-layout{display:flex;flex-direction:column}.account-details-layout>.transactions-panel{order:1}.account-details-layout>.actions{order:2}.account-details-layout>.edit-account-panel{order:3}.expandable-panel{margin-top:20px;padding:0;overflow:hidden}.expandable-panel summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;cursor:pointer;list-style:none}.expandable-panel summary::-webkit-details-marker{display:none}.expandable-panel summary:hover{background:#f5f3ec}.expandable-panel summary .subtle{font-size:.84rem}.expandable-chevron{display:grid;flex:0 0 30px;place-items:center;width:30px;height:30px;color:#365f88;background:#dde8f3;border-radius:50%;font-size:1.25rem;line-height:1;transition:transform .18s ease}.expandable-panel[open] .expandable-chevron{transform:rotate(180deg)}.expandable-content{padding:0 24px 24px;border-top:1px solid #e7e3d9}@media(max-width:760px){.expandable-panel summary{padding:18px}.expandable-content{padding:0 18px 18px}}.dismissible-message{display:flex;align-items:center;justify-content:space-between;gap:12px}.message-close{flex:0 0 24px;width:24px;height:24px;min-height:24px;margin:0;padding:0;color:currentColor;background:transparent;border:1px solid currentColor;border-radius:50%;font-size:1.15rem;font-weight:500;line-height:1}.message-close:hover,.message-close:focus{color:#fff;background:currentColor;outline:0}.sample code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.sample-heading{display:flex;align-items:start;justify-content:space-between;gap:10px}.copy-example-button{flex:0 0 26px;grid-column:auto;width:26px;height:26px;min-height:26px;margin:0;padding:0;color:#365f88;background:#dde8f3;border:1px solid #a9bfd6;border-radius:7px;font-size:1rem;line-height:1}.copy-example-button:hover,.copy-example-button:focus{color:#fff;background:#275d96;outline:0}.total-history-actions{display:flex;align-items:center;gap:10px}.chart-zoom-button{display:grid;grid-column:auto;place-items:center;width:30px;height:30px;min-height:30px;margin:0;padding:0;color:#365f88;background:#dde8f3;border:1px solid #a9bfd6;border-radius:8px;font-size:1.05rem;line-height:1}.chart-zoom-button:hover,.chart-zoom-button:focus{color:#fff;background:#275d96;outline:0}.chart-modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:22px;background:#0f1f379e}.chart-modal{display:flex;flex-direction:column;width:min(1180px,100%);height:min(820px,100%);padding:26px;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 64px #0f1f3752}.chart-modal-header{display:flex;align-items:start;justify-content:space-between;gap:18px}.chart-modal-header h2{margin:3px 0 0}.chart-modal-header .subtle{margin:7px 0 0}.chart-modal-header button{grid-column:auto;width:max-content;margin:0}.chart-modal-filters{display:flex;flex-wrap:wrap;align-items:end;gap:18px;margin:20px 0 8px;padding:14px;background:#f3f0e8;border-radius:10px}.chart-modal-filters fieldset{margin:0;padding:0;border:0}.chart-modal-filters legend{margin-bottom:7px;color:#435c75;font-size:.8rem;font-weight:700}.account-type-checkboxes{display:flex;flex-wrap:wrap;gap:8px 14px}.account-type-checkboxes label{display:flex;align-items:center;gap:5px;margin:0;color:#365778;text-transform:capitalize}.account-type-checkboxes input{width:auto}.chart-modal .chart{flex:1;min-height:420px;height:auto}.chart-modal .empty{flex:1;min-height:420px}@media(max-width:760px){.chart-modal-backdrop{padding:0}.chart-modal{width:100%;height:100%;border-radius:0;padding:18px}.chart-modal-header{align-items:start;flex-direction:column}.chart-modal-header button{width:100%}.chart-modal .chart,.chart-modal .empty{min-height:320px}}.chart-modal-filters>.filter-toggle{display:flex;flex-direction:row-reverse;align-items:center;justify-content:flex-end;gap:8px;margin:0;padding:10px 14px;color:#365778;background:#fff;border:1px solid #d5e0ea;border-radius:9px;font-size:.84rem;font-weight:700;white-space:nowrap}.chart-modal-filters>.filter-toggle input{width:16px;height:16px;accent-color:#275d96}.chart-modal-filters>fieldset{padding-left:18px;border-left:1px solid #d2dbe5}@media(max-width:760px){.chart-modal-filters>fieldset{width:100%;padding:14px 0 0;border-top:1px solid #d2dbe5;border-left:0}}
