:root{--et-brand-navy:#142b4a;--et-brand-orange:#f26b21;--et-surface-muted:#f5f7fa;--et-text-secondary:#4b5563;color:var(--et-brand-navy);background:var(--et-surface-muted);font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:2rem 1rem}header{padding:1.5rem 0 2rem}.mark{color:var(--et-brand-navy);letter-spacing:.08em;font-weight:800}.mark span{font-weight:500}h1{margin:.8rem 0;font-size:clamp(2rem,5vw,3rem)}section{background:#fff;border:1px solid #ccd5df;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 3px 12px #0f27470a}.form{flex-wrap:wrap;align-items:end;gap:1rem;display:flex}label{flex:1;min-width:220px;font-weight:600;display:block}input,select{width:100%;font:inherit;background:#fff;border:1px solid #9caaba;border-radius:6px;margin-top:.4rem;padding:.65rem;display:block}button{background:var(--et-brand-orange);color:#171717;font:inherit;cursor:pointer;border:0;border-radius:6px;padding:.7rem 1.1rem;font-weight:700}button:disabled{opacity:.5;cursor:wait}.secondary{color:var(--et-brand-navy);border:1px solid var(--et-brand-navy);background:#fff}details{margin-top:1rem}summary{cursor:pointer;color:var(--et-brand-navy)}.stats{flex-wrap:wrap;gap:.8rem;display:flex}.stats span{background:var(--et-surface-muted);border-radius:6px;padding:.6rem}.stats strong{font-size:1.2rem;display:block}.table{margin-top:1.3rem;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{vertical-align:top;border-bottom:1px solid #d6e2e4;padding:.65rem}td div{white-space:nowrap}.actions{flex-wrap:wrap;gap:.7rem;margin-top:1.2rem;display:flex}.error{color:#7c1f18;background:#fff0ee;padding:1rem}.notice{background:#fff5d7;padding:1rem}.nav{background:var(--et-brand-navy);color:#fff}.nav-inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1100px;margin:auto;padding:1rem;display:flex}.nav a{color:#fff;text-decoration:none}.nav .mark{color:#fff}.nav-inner>div{gap:1.3rem;display:flex}.heading,.card-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.heading{margin:1rem 0 2rem}.heading h1{margin:0}.button{background:var(--et-brand-orange);color:#171717;white-space:nowrap;border-radius:6px;padding:.7rem 1.1rem;font-weight:700;text-decoration:none;display:inline-block}.filters{flex-wrap:wrap;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.filters label{max-width:360px}.cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;display:grid}.card{background:#fff;border:1px solid #ccd5df;border-radius:12px;padding:1.5rem}.card h2{margin:0}.badge{background:#e9eef4;border-radius:1rem;padding:.4rem .6rem;font-size:.8rem}.balance-list{gap:.5rem;margin:1rem 0;display:grid}.balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.balance-grid span{background:var(--et-surface-muted);border-radius:6px;padding:.7rem;font-size:.85rem}.balance-grid b{font-size:1rem;display:block}.number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.strong{font-weight:700}.pager{flex-wrap:wrap;align-items:center;gap:.7rem;margin:1rem 0;display:flex}.pager span{margin-right:auto}.crumb{color:var(--et-text-secondary)}.card a,.crumb a,section a,td a{color:var(--et-brand-navy)}a:hover{text-decoration:underline}@media (width<=700px){main{padding:1rem}.nav-inner,.heading{flex-direction:column}.nav-inner>div{flex-wrap:wrap}.balance-grid{grid-template-columns:1fr}section,.card{padding:1rem}.table{max-width:calc(100vw - 2rem)}}.form textarea{width:100%;min-height:5rem;font:inherit;border:1px solid #9caaba;border-radius:6px;margin-top:.4rem;padding:.65rem;display:block}.form .check{align-items:center;gap:.6rem;min-width:100%;font-weight:600;display:flex}.form .check input{width:auto;margin:0}.form input[readonly]{background:var(--et-surface-muted)}.cards{grid-template-columns:minmax(0,1fr)}.card{grid-template-columns:minmax(200px,1fr) minmax(0,2fr);align-items:center;gap:1rem 1.5rem;display:grid}.card .balance-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card .portfolio-actions{border-top:1px solid #ccd5df;grid-column:1/-1;margin:0;padding-top:1rem}.card .button.secondary{background:#fff}.card .button{color:var(--et-brand-navy)}.card .balance-grid span{overflow-wrap:anywhere}.steps{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0;padding:0;list-style:none;display:flex}.steps li{flex:1;min-width:150px}.steps button{text-align:left;width:100%;height:100%}.steps button[aria-current=step]{background:var(--et-brand-navy);color:#fff}.steps span{border:1px solid;border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;margin-right:.25rem;display:inline-grid}.steps button:disabled{cursor:default;opacity:.65}.context{border-left:4px solid var(--et-brand-orange);overflow-wrap:anywhere;background:#fff;padding:1rem}.lookup{background:var(--et-surface-muted);flex-basis:100%;padding:1rem}.lookup button{margin:.5rem 0 0 .5rem}.check{align-items:center;gap:.7rem;min-width:0;display:flex}.check input{width:auto}.sample{overflow-wrap:anywhere;max-width:300px}.sample div{white-space:normal}.button.secondary{border:1px solid var(--et-brand-navy);background:#fff}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--et-brand-orange);outline-offset:3px}@media (width<=900px){.card{grid-template-columns:1fr}.card .balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=500px){label{flex-basis:100%;width:100%;min-width:0}.card .balance-grid{grid-template-columns:1fr}.portfolio-actions{flex-direction:column}.portfolio-actions .button,.portfolio-actions button{text-align:center;white-space:normal;width:100%}.steps li{min-width:125px}.heading .actions{width:100%}.nav-inner>div{gap:.8rem}.form{min-width:0}.card-top{flex-wrap:wrap}}.portfolio-info{overflow-wrap:anywhere;min-width:0}.card .balance-list{min-width:0}.table{max-width:100%}section>.table td select{min-width:190px}.check{font-weight:500}.stats span{overflow-wrap:anywhere;max-width:100%}.heading>div{min-width:0}.heading h1{overflow-wrap:anywhere}:root{--et-brand-navy:#142b4a;--et-brand-orange:#f26b21;--et-accent:#142b4a;--et-surface-muted:#f5f7fa;--et-text-secondary:#586777;color:#172d43;background:#f5f7fa}body{font-size:14px;line-height:1.45}h1{letter-spacing:-.025em;font-size:clamp(1.65rem,3vw,2.2rem)}h2{font-size:1.1rem}h3{font-size:1rem}section,.card{border-color:#dce4ea;box-shadow:0 4px 16px #0f274708}button,.button{background:var(--et-accent);color:#fff}button:hover:not(:disabled),.button:hover{filter:brightness(.94)}.secondary,.button.secondary{color:var(--et-brand-navy);background:#fff}.button.secondary{color:var(--et-brand-navy)!important}a{color:var(--et-brand-navy)}.app-layout{grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--et-brand-navy);color:#fff;flex-direction:column;gap:1.8rem;min-height:100vh;padding:1.2rem;display:flex}.brand-link{color:#fff;gap:.35rem;font-size:.9rem;font-weight:650;text-decoration:none;display:grid}.brand-link img{width:100%;max-width:190px;height:auto;display:block}.sidebar nav{gap:.35rem;display:grid}.sidebar nav a{color:#d8e4ed;border-radius:8px;padding:.75rem .9rem;font-weight:600;text-decoration:none}.sidebar nav a:hover,.sidebar nav a[aria-current=page]{color:#fff;background:#ffffff1b;border-left:3px solid #f26b21}.sidebar-foot{color:#d8e4ed;gap:.7rem;margin-top:auto;font-size:.85rem;display:grid}.sidebar-foot .secondary{color:#fff;background:0 0;border-color:#9aafc0}.app-main{min-width:0}.app-main main{max-width:1320px;padding:1.5rem 2rem}.topbar{color:#586777;letter-spacing:.06em;background:#fff;border-bottom:1px solid #dce4ea;justify-content:space-between;padding:1rem 2rem;font-size:.83rem;font-weight:700;display:flex}.overview{box-shadow:none;background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;padding:0;display:grid}.overview>div{background:#fff;border:1px solid #dce4ea;border-radius:10px;min-width:0;padding:1rem}.overview small{color:#586777;font-size:.78rem;display:block}.overview strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin-top:.25rem;font-size:1.35rem;display:block}.overview>div:last-child strong{color:#142b4a}.card{border-left:4px solid var(--et-accent)}.card .balance-grid span{background:#f5f7fa}.badge{border-radius:5px}.table{background:#fff;border:1px solid #dce4ea;border-radius:8px}table{font-size:.9rem}th{color:#314960;text-transform:uppercase;letter-spacing:.03em;background:#eaf0f4;font-size:.8rem}td{background:#fff}tr:hover td{background:#f8fafb}input,select,textarea{border-color:#adbcc9}input:focus,select:focus,textarea:focus{border-color:#142b4a}.text-button{color:#142b4a;background:0 0;padding:.15rem 0;font-weight:600;text-decoration:underline;display:block}.receipt-form{gap:.4rem;min-width:230px;display:grid}.receipt-form label{min-width:0}.receipt-form textarea{width:100%;min-height:4rem}.user-controls{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.user-controls label{min-width:145px}.user-controls button{white-space:nowrap}.login-page{background:linear-gradient(145deg,#eaf0f4,#fff);place-items:center;max-width:none;min-height:100vh;display:grid}.login{width:min(100%,430px);margin:1rem;padding:2rem}.login img{width:220px;max-width:100%;height:auto}.login .form{align-items:stretch;display:grid}.login label,.login button{width:100%}.eyebrow{letter-spacing:.12em;color:#142b4a;font-size:.75rem;font-weight:800}.login h1{margin:.2rem 0}.steps button{font-size:.9rem}.notice{color:#142b4a;background:#fff0e5}.error{border-left:4px solid #a53b30}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #f26b21}@media (width<=900px){.app-layout{grid-template-columns:1fr}.sidebar{gap:.5rem;min-height:0;padding:.75rem 1rem}.brand-link{align-items:center;gap:.8rem;display:flex}.brand-link img{width:135px}.sidebar nav{gap:.3rem;display:flex;overflow-x:auto}.sidebar nav a{white-space:nowrap;padding:.55rem .7rem}.sidebar-foot{justify-content:space-between;align-items:center;display:flex}.sidebar-foot button{padding:.4rem .7rem}.topbar{display:none}.app-main main{padding:1rem}.overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.overview{grid-template-columns:1fr}.sidebar nav a{font-size:.85rem}.user-controls{display:grid}.user-controls label{width:100%}.login{padding:1.2rem}.app-main main{padding:.8rem}}.sidebar{min-width:0}.import-result{overflow-wrap:anywhere;min-width:0}
