:root{--bg:#f6f0e4;--bg-strong:#efe4d2;--paper:#fffaf2d1;--paper-strong:#fff8eff0;--panel-border:#6f583b1f;--line-soft:#6f583b14;--text:#2e241b;--muted:#3e2e1fb8;--muted-soft:#3e2e1f8f;--accent:#b76a4c;--accent-soft:#d89a75;--sage:#768a76;--gold:#c79d52;--shadow-soft:0 18px 50px #745a3a14;--shadow-large:0 40px 100px #745a3a1f;--radius-xl:34px;--radius-lg:26px;--radius-md:20px;--grid-gap:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at 0 0,#d7ae8438,#0000 28%),radial-gradient(circle at 88% 8%,#768a7629,#0000 24%),linear-gradient(#f8f3ea 0%,#f3ebdd 52%,#f6f0e6 100%);margin:0;font-family:Manrope,sans-serif}.page-shell{max-width:1480px;margin:0 auto;padding:28px;position:relative;overflow:hidden}.paper-grain,.backdrop-blur{pointer-events:none;position:absolute}.paper-grain{opacity:.16;mix-blend-mode:multiply;background-image:radial-gradient(#4a352214 .6px,#0000 .6px),radial-gradient(#ffffffa6 .8px,#0000 .8px);background-position:0 0,11px 9px;background-size:18px 18px,23px 23px;inset:0}.backdrop-blur{filter:blur(90px);opacity:.42;border-radius:999px;width:36rem;height:36rem}.backdrop-blur-one{background:#d7ae846b;top:-14rem;left:-8rem}.backdrop-blur-two{background:#a0b7a142;top:10rem;right:-12rem}.panel{background:linear-gradient(180deg, var(--paper-strong), #fff8efc2);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.panel:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff73,#0000 36%);position:absolute;inset:0}.panel>*{z-index:1;position:relative}.hero{box-shadow:var(--shadow-large);grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);align-items:stretch;gap:28px;margin-bottom:24px;padding:36px;display:grid}.panel-hero{background:linear-gradient(125deg,#fffaf4f5,#f5ebdce6),linear-gradient(90deg,#d7ae8424,#0000 40%)}.hero-copy h1,.panel h2,.orb-amount,.balance-amount,.stat-value{font-family:Cormorant Garamond,serif}.hero-kicker,.hero-subtitle,.panel-intro,.orb-label,.orb-subtext,.balance-name,.balance-note,.stat-label,.stat-subtext,.control-field span,.subtle-counter,.expense-details,.meta-pill,.settlement-banner,.empty-state,.category-header,.chart-axis-label,.chart-point-label,.chart-value-label{color:var(--muted)}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#b76a4ce0;align-items:center;gap:10px;font-size:.76rem;font-weight:700;display:inline-flex}.hero-kicker{letter-spacing:.06em;text-transform:uppercase;margin:18px 0 0;font-size:1rem}.hero-copy h1{letter-spacing:-.03em;max-width:8ch;margin:10px 0 0;font-size:clamp(3.6rem,8vw,6.5rem);line-height:.88}.hero-subtitle{max-width:52rem;margin:18px 0 0;font-size:1.06rem;line-height:1.8}.hero-meta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.meta-pill{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff8c;border:1px solid #6f583b1a;border-radius:999px;align-items:center;min-height:44px;padding:10px 16px;font-size:.93rem;display:inline-flex}.meta-pill-soft{color:var(--muted-soft);background:#f5ebe0b8}.hero-balance-card{background:radial-gradient(circle at 100% 0,#d7ae842e,#0000 44%),linear-gradient(#ffffffd6,#f5ece1eb);border:1px solid #6f583b1a;border-radius:28px;flex-direction:column;justify-content:space-between;padding:22px;display:flex}.hero-balance-inner{min-height:250px;padding:8px 6px 20px}.orb-label{letter-spacing:.16em;text-transform:uppercase;font-size:.82rem}.orb-amount{color:var(--text);margin-top:8px;font-size:clamp(3rem,7vw,5rem);line-height:.92}.orb-subtext{max-width:24ch;margin-top:14px;line-height:1.65}.hero-balance-footnote{border-top:1px solid var(--line-soft);color:var(--muted-soft);padding-top:18px;font-size:.94rem;line-height:1.6}.dashboard-grid{gap:var(--grid-gap);grid-template-columns:repeat(12,1fr);display:grid}.controls-panel,.stats-panel,.ledger-balance-panel,.trend-panel,.category-panel,.recent-panel{padding:30px}.controls-panel,.stats-panel{grid-column:span 12}.ledger-balance-panel{grid-column:span 5}.trend-panel{grid-column:span 7}.category-panel{grid-column:span 4}.recent-panel{grid-column:span 8}.panel-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:24px;display:flex}.panel-heading-soft{border-bottom:1px solid var(--line-soft);padding-bottom:18px}.panel h2{letter-spacing:-.02em;margin:8px 0 0;font-size:clamp(2.1rem,4vw,3.2rem);line-height:.98}.panel-intro{text-align:right;max-width:34rem;margin:0;font-size:.97rem;line-height:1.7}.controls-grid{grid-template-columns:2fr repeat(3,1fr);gap:16px;display:grid}.control-field{flex-direction:column;gap:10px;display:flex}.control-field span{text-transform:uppercase;letter-spacing:.12em;font-size:.86rem}.control-field input,.control-field select{appearance:none;width:100%;min-height:54px;color:var(--text);font:inherit;background:#ffffffa6;border:1px solid #6f583b1f;border-radius:18px;outline:none;padding:15px 18px;box-shadow:inset 0 1px #ffffffb8}.control-field input::placeholder{color:#3e2e1f6b}.control-field input:focus,.control-field select:focus{border-color:#b76a4c6b;box-shadow:0 0 0 4px #b76a4c14,inset 0 1px #ffffffe6}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stat-card{background:linear-gradient(#ffffffa8,#f8f0e6d1);border:1px solid #6f583b14;border-radius:24px;flex-direction:column;justify-content:space-between;min-height:174px;padding:24px;display:flex}.stat-label{letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:700}.stat-value{color:var(--text);margin-top:18px;font-size:clamp(2.1rem,4vw,3rem);line-height:.94}.stat-subtext{margin-top:16px;font-size:.96rem;line-height:1.6}.balance-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.balance-card{background:#ffffff94;border:1px solid #6f583b14;border-radius:24px;padding:22px}.balance-card.ali-card{background:linear-gradient(#fff5f1eb,#fff8f4c7)}.balance-card.charlie-card{background:linear-gradient(#f2f8f2eb,#f7faf6c7)}.balance-name{letter-spacing:.14em;text-transform:uppercase;font-size:.84rem}.balance-amount{color:var(--text);margin-top:12px;font-size:clamp(2.2rem,4.5vw,3.3rem);line-height:.95}.balance-note{margin-top:12px;line-height:1.6}.settlement-banner{background:linear-gradient(#f5e9d7d6,#f9f2e6c7);border:1px solid #c79d5224;border-radius:20px;margin-top:18px;padding:18px 20px;line-height:1.65}.trend-chart{min-height:320px}.chart-svg{width:100%;height:320px;overflow:visible}.chart-axis-label,.chart-point-label,.chart-value-label{fill:#3e2e1f9e;font-family:Manrope,sans-serif;font-size:12px}.chart-path{fill:none;stroke:#b76a4ceb;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 10px 20px #b76a4c29)}.chart-area{fill:url(#chartAreaGradient)}.chart-dot{fill:#fffaf5;stroke:#b76a4cd1;stroke-width:3px}.chart-grid-line{stroke:#6f583b1f;stroke-dasharray:5 9}.category-bars{flex-direction:column;gap:16px;display:flex}.category-row{gap:10px;display:grid}.category-header,.expense-meta,.expense-details{justify-content:space-between;align-items:center;gap:14px;display:flex}.category-header{font-size:.96rem}.category-track{background:#6f583b14;border-radius:999px;height:12px;overflow:hidden}.category-fill{border-radius:inherit;background:linear-gradient(90deg,#d7a070eb,#768a76d6);height:100%}.expense-list{gap:14px;display:grid}.expense-card{background:linear-gradient(#ffffffa3,#f9f3ebc2);border:1px solid #6f583b14;border-radius:22px;padding:20px;transition:transform .18s,box-shadow .18s,border-color .18s}.expense-card:hover{border-color:#b76a4c1f;transform:translateY(-2px);box-shadow:0 18px 40px #745a3a14}.expense-title{color:var(--text);margin:0;font-size:1.08rem;font-weight:700}.expense-meta{margin-bottom:12px}.expense-amount{color:var(--text);font-family:Cormorant Garamond,serif;font-size:2rem;line-height:.95}.expense-pill{background:#ffffffb3;border:1px solid #6f583b14;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.88rem;display:inline-flex}.expense-pill.cancelled{color:#9c4c42;background:#ebcec694}.expense-pill.confirmed{color:#4d6850;background:#d6e4d6c7}.expense-details{flex-wrap:wrap;margin-top:12px;font-size:.94rem;line-height:1.6}.subtle-counter{background:#ffffff8f;border:1px solid #6f583b14;border-radius:999px;padding:10px 14px;font-size:.92rem}.hidden{display:none}.empty-state{background:#ffffff85;border:1px dashed #6f583b29;border-radius:18px;margin-bottom:14px;padding:20px;line-height:1.6}@media (width<=1180px){.hero,.controls-grid,.stats-grid,.balance-columns,.dashboard-grid{grid-template-columns:1fr}.panel-intro{text-align:left;max-width:none}.ledger-balance-panel,.trend-panel,.category-panel,.recent-panel,.controls-panel,.stats-panel{grid-column:span 12}}@media (width<=720px){.page-shell{padding:16px}.hero,.controls-panel,.stats-panel,.ledger-balance-panel,.trend-panel,.category-panel,.recent-panel{border-radius:26px;padding:22px}.hero-copy h1{font-size:3.9rem}.panel h2{font-size:2.25rem}.hero-balance-inner{min-height:190px}.expense-meta,.expense-details,.category-header,.panel-heading,.panel-heading-inline{flex-direction:column;align-items:flex-start}.expense-amount{font-size:1.8rem}}
