:root{--n:#142a46;--i:#1b2a3b;--m:#6c7886;--p:#f7f8fb;--l:#e7e9ef;--g:#54c7ab;--r:#ef766d}*{box-sizing:border-box}body{margin:0;background:var(--p);color:var(--i);font:16px system-ui,sans-serif}.shell{max-width:1240px;margin:auto;padding:0 32px 48px}.topbar,.intro,.panel-head,.year-callout{display:flex;align-items:center;justify-content:space-between}.topbar{height:82px}.brand{display:flex;gap:10px;align-items:center;background:none;color:var(--i);font-size:1.2rem;font-weight:750}.brand-mark{font-size:29px;color:var(--g);transform:rotate(90deg)}button{font:inherit;cursor:pointer;border:0}.month-picker{display:flex;gap:16px;align-items:center}.month-picker button{background:none;font-size:25px;color:#506073}#next{opacity:.32;pointer-events:none;cursor:not-allowed}.profile{width:35px;height:35px;border-radius:50%;background:#f5c96e}.intro{padding:45px 0 28px}.eyebrow{font-size:.71rem;letter-spacing:.13em;color:#768294;font-weight:800;margin:0 0 8px}.intro h1{margin:0;font-size:2.12rem}.sub{color:var(--m)}.add-button,.save-button{background:var(--n);color:#fff;padding:13px 18px;border-radius:10px;font-weight:700}.summary-grid,.dashboard-grid{display:grid;gap:18px}.summary-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1.37fr 1fr;margin-top:18px}.summary-card,.panel{background:#fff;border:1px solid var(--l);border-radius:15px;padding:22px}.summary-label{font-size:.86rem;color:#586677;font-weight:700}.dot{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:8px;margin-right:7px;background:#e7f7f2}.summary-card strong{display:block;margin:16px 0 6px;font-size:1.76rem}.summary-card small{font-size:.78rem;color:#82909d}.panel h2,.year-callout h2{margin:0;font-size:1.28rem}.quiet-select,.period-chip{border:1px solid var(--l);padding:7px;border-radius:8px;background:#fff}.legend{margin:25px 0 9px;font-size:.78rem;color:#647182}.legend i,.c-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.legend-income{background:var(--g)}.legend-expense{background:var(--r)}.chart{height:260px;position:relative;padding-left:48px}.chart svg{width:100%;height:218px}.gridline{stroke:#edf0f4}.income-line,.expense-line{fill:none;stroke-width:3.5}.income-line{stroke:var(--g)}.expense-line{stroke:var(--r)}.y-labels{position:absolute;left:0;top:9px;height:194px;display:flex;flex-direction:column;justify-content:space-between;font-size:.69rem;color:#97a1ad}.x-labels{display:flex;justify-content:space-between;font-size:.7rem;color:#97a1ad}.donut-wrap{display:flex;gap:25px;align-items:center;margin:25px 0}.donut{width:148px;height:148px;border-radius:50%;display:grid;place-items:center}.donut:before{content:"";position:absolute;width:105px;height:105px;border-radius:50%;background:#fff}.donut div{z-index:1;text-align:center}.category-list{list-style:none;padding:0;flex:1;font-size:.76rem}.category-list li{display:grid;grid-template-columns:9px 1fr auto;gap:7px;margin:10px}.text-button,.delete-button{background:none;color:#3e5a78}.activity{margin-top:18px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--l)}.positive{color:#279d7f}.negative{color:#dc625b}.year-callout{margin-top:18px;padding:28px 30px;border-radius:15px;background:var(--n);color:#fff}.outline-button{background:none;color:white;border:1px solid #68809b;padding:10px;border-radius:9px}dialog{border:0;border-radius:16px;max-width:540px;width:calc(100% - 32px)}dialog form,.dialog-content{padding:26px}.modal-head{display:flex;justify-content:space-between}.type-switch,.two-fields,.analysis-stats,.year-months{display:grid;gap:10px}.type-switch,.two-fields,.analysis-stats{grid-template-columns:1fr 1fr}.year-months{grid-template-columns:repeat(3,1fr)}input,select{padding:10px;border:1px solid var(--l);border-radius:8px}@media(max-width:790px){.shell{padding:0 16px}.summary-grid,.dashboard-grid{grid-template-columns:1fr}.intro,.year-callout{align-items:start;flex-direction:column;gap:18px}}
