:root{--ink:#17332c;--muted:#657873;--line:#dce7e2;--paper:#ffffff;--canvas:#f3f7f5;--green:#176c54;--green-dark:#104e3d;--green-soft:#e6f4ed;--yellow:#f4bd62;--yellow-soft:#fff6e7;--red:#b94d43;--red-soft:#fff0ed;--shadow:0 16px 45px rgba(23,51,44,0.08)}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{margin:0;min-height:100vh;background:radial-gradient(circle at 92% 2%,rgba(181,221,201,.24),transparent 25rem),var(--canvas)}button,input,select,textarea{color:inherit;font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,label:focus-within,select:focus-visible{outline:3px solid rgba(23,108,84,.22);outline-offset:2px}h1,h2,h3,p{margin:0}.loading-screen{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:14px;justify-content:center;min-height:100vh}.brand-mark,.loading-mark{align-items:center;background:var(--yellow);border-radius:13px;color:var(--green-dark);display:inline-flex;font-weight:900;height:46px;justify-content:center;width:46px}.simple-shell{min-height:100vh}.simple-header{align-items:center;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);display:grid;gap:20px;grid-template-columns:1fr auto 1fr;min-height:88px;padding:14px max(22px,calc((100vw - 1180px) / 2));position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.simple-brand{align-items:center;background:transparent;border:0;display:flex;gap:12px;justify-self:start;padding:0;text-align:left}.simple-brand>span:last-child{display:flex;flex-direction:column}.simple-brand strong{font-size:19px;letter-spacing:-.03em}.simple-brand small{color:var(--muted);font-size:12px;margin-top:2px}.month-switcher{align-items:stretch;background:white;border:1px solid var(--line);border-radius:14px;display:flex;min-width:310px;overflow:hidden}.month-switcher button{background:transparent;border:0;color:var(--green);font-size:30px;min-width:52px}.month-switcher button:hover{background:var(--green-soft)}.month-switcher div{align-items:center;border-inline:1px solid var(--line);display:flex;flex:1;flex-direction:column;justify-content:center;padding:8px 16px}.month-switcher small{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.month-switcher strong{font-size:14px;margin-top:2px}.settings-button{background:white;border:1px solid var(--line);border-radius:12px;font-weight:750;justify-self:end;min-height:46px;padding:0 18px}.settings-button:hover{background:var(--green-soft);border-color:#bcd7cb}.settings-content,.simple-content{margin:0 auto;max-width:1180px;padding:34px 22px 64px}.money-overview{display:grid;gap:20px;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr)}.balance-card,.panel,.rent-total-card,.settings-card{border-radius:22px;box-shadow:var(--shadow)}.balance-card{background:linear-gradient(135deg,var(--green-dark),#1c745a);color:white;min-height:285px;overflow:hidden;padding:34px 38px;position:relative}.balance-card:after{border:24px solid rgba(255,255,255,.06);border-radius:50%;content:"";height:180px;position:absolute;right:-52px;top:-68px;width:180px}.eyebrow{color:var(--green);display:block;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.eyebrow.light{color:#bce2d3}.balance-card h1{font-size:clamp(24px,3vw,34px);letter-spacing:-.04em;margin-top:8px}.balance-card>strong{display:block;font-size:clamp(42px,6vw,64px);letter-spacing:-.05em;line-height:1;margin:26px 0 10px}.balance-card>strong.negative-balance{color:#ffd4c9}.balance-card>p{color:rgba(255,255,255,.75);font-size:15px}.balance-breakdown{border-top:1px solid rgba(255,255,255,.18);display:flex;gap:34px;margin-top:28px;padding-top:20px}.balance-breakdown span{display:flex;flex-direction:column;gap:4px}.balance-breakdown small{color:rgba(255,255,255,.67);font-size:12px}.balance-breakdown b{font-size:16px}.rent-total-card{background:white;border:1px solid var(--line);padding:30px}.rent-total-card h2{font-size:20px;margin-top:8px}.rent-total-card>strong{display:block;font-size:34px;letter-spacing:-.04em;margin-top:22px}.rent-total-card>p{color:var(--muted);margin-top:3px}.rent-progress{background:#e8efec;border-radius:99px;height:12px;margin:25px 0 12px;overflow:hidden}.rent-progress span{background:linear-gradient(90deg,#2a9c79,var(--green));border-radius:inherit;display:block;height:100%;transition:width .25s ease}.rent-total-card>b{display:block;font-size:14px}.rent-total-card>small{color:var(--red);display:block;font-size:13px;font-weight:700;margin-top:6px}.rent-total-card>small.all-paid{color:var(--green)}.main-actions{display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin:22px 0}.action-button{align-items:center;background:white;border:1px solid var(--line);border-radius:18px;display:flex;gap:14px;min-height:88px;padding:14px 20px;text-align:left;transition:transform .15s ease,box-shadow .15s ease}.action-button:hover{box-shadow:0 12px 28px rgba(23,51,44,.09);transform:translateY(-2px)}.action-button>span{align-items:center;border-radius:14px;display:flex;flex:0 0 50px;font-size:19px;font-weight:900;height:50px;justify-content:center}.action-button>div{display:flex;flex-direction:column}.action-button strong{font-size:17px}.action-button small{color:var(--muted);font-size:12px;margin-top:4px}.rent-action>span{background:var(--yellow-soft);color:#8d5a0a}.income-action>span{background:var(--green-soft);color:var(--green);font-size:27px}.expense-action>span{background:var(--red-soft);color:var(--red);font-size:28px}.month-small-cards{display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:22px}.month-small-cards article{align-items:center;background:white;border:1px solid var(--line);border-radius:16px;display:flex;gap:14px;min-height:80px;padding:14px 20px}.small-icon{align-items:center;border-radius:12px;display:flex;flex:0 0 44px;font-size:23px;font-weight:900;height:44px;justify-content:center}.small-icon.plus{background:var(--green-soft);color:var(--green)}.small-icon.minus{background:var(--red-soft);color:var(--red)}.month-small-cards div{display:flex;flex-direction:column;gap:3px}.month-small-cards small{color:var(--muted);font-size:13px}.month-small-cards strong{font-size:21px}.daily-grid{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.panel{background:white;border:1px solid var(--line);padding:24px}.panel-heading{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:16px}.panel-heading h2{font-size:21px;margin-top:5px}.panel-heading>strong{color:var(--muted);font-size:13px}.movement-list,.rent-list{display:flex;flex-direction:column}.rent-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:44px minmax(0,1fr) auto auto;min-height:82px;padding:12px 0}.unit-badge{align-items:center;background:var(--green-soft);border-radius:12px;color:var(--green);display:flex;font-weight:900;height:42px;justify-content:center;width:42px}.rent-person,.rent-values{display:flex;flex-direction:column;min-width:0}.rent-person strong{font-size:15px}.rent-person span,.rent-values span{color:var(--muted);font-size:12px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rent-values{align-items:flex-end}.rent-values strong{font-size:15px}.rent-row>button{background:var(--yellow);border:0;border-radius:11px;color:#42300e;font-size:13px;font-weight:850;min-height:42px;padding:0 14px}.paid-badge{background:var(--green-soft);border-radius:99px;color:var(--green);font-size:12px;font-weight:850;padding:8px 11px}.movement-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:10px;grid-template-columns:40px minmax(0,1fr) auto 28px;min-height:73px;padding:10px 0}.movement-icon{align-items:center;border-radius:11px;display:flex;font-size:21px;font-weight:900;height:38px;justify-content:center;width:38px}.movement-icon.rent{background:var(--yellow-soft);color:#8d5a0a;font-size:14px}.movement-icon.income{background:var(--green-soft);color:var(--green)}.movement-icon.expense{background:var(--red-soft);color:var(--red)}.movement-row>div{display:flex;flex-direction:column;min-width:0}.movement-row>div strong{font-size:14px}.movement-row>div span,.movement-row>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.movement-row>div span{color:var(--muted);font-size:11px;margin-top:3px}.movement-row>b{font-size:13px;white-space:nowrap}.money-in{color:var(--green)}.money-out{color:var(--red)}.movement-row>button{background:transparent;border:0;border-radius:8px;color:#9ca9a5;font-size:21px;height:28px;padding:0;width:28px}.movement-row>button:hover{background:var(--red-soft);color:var(--red)}.empty-state{color:var(--muted);flex-direction:column;min-height:290px;text-align:center}.empty-state,.empty-state>span{align-items:center;display:flex;justify-content:center}.empty-state>span{background:var(--green-soft);border-radius:14px;color:var(--green);font-weight:900;height:52px;margin-bottom:14px;width:52px}.empty-state strong{color:var(--ink);font-size:16px}.empty-state p{font-size:13px;margin-top:5px}.settings-content{max-width:980px}.settings-title{margin-bottom:24px}.settings-title h1{font-size:36px;margin:6px 0}.danger-card p,.settings-card p,.settings-title p{color:var(--muted)}.settings-card{background:white;border:1px solid var(--line);padding:26px}.settings-card-heading{margin-bottom:10px}.settings-card h2{font-size:20px}.settings-card p{font-size:14px;margin-top:6px}.settings-unit{align-items:center;border-top:1px solid var(--line);display:grid;gap:16px;grid-template-columns:1fr auto 78px;min-height:76px}.settings-unit>div{display:flex;flex-direction:column}.settings-unit>div:nth-child(2){align-items:flex-end}.settings-unit span{color:var(--muted);font-size:12px;margin-top:3px}.file-button,.settings-actions button,.settings-unit button{background:var(--green);border:0;border-radius:11px;color:white;font-size:13px;font-weight:800;min-height:42px;padding:0 15px}.settings-grid{display:grid;gap:18px;grid-template-columns:1fr 1fr;margin-top:18px}.settings-card.compact{box-shadow:none}.settings-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.file-button.secondary,.settings-actions .secondary{align-items:center;background:var(--green-soft);color:var(--green);display:inline-flex;justify-content:center}.file-button input{display:none}.danger-card{align-items:center;background:var(--red-soft);border:1px solid #f2d4cf;border-radius:18px;display:flex;justify-content:space-between;margin-top:18px;padding:22px 26px}.danger-card p{font-size:13px;margin-top:4px}.danger-card button{background:white;border:1px solid #edc3bd;border-radius:11px;color:var(--red);font-weight:800;min-height:42px;padding:0 15px}.modal-backdrop{align-items:center;background:rgba(9,31,25,.57);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.modal-card{background:white;border-radius:22px;box-shadow:0 26px 80px rgba(0,0,0,.25);max-height:calc(100vh - 40px);max-width:510px;overflow:auto;padding:26px;width:100%}.modal-heading{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:22px}.modal-heading h2{font-size:24px;letter-spacing:-.03em}.modal-heading p{color:var(--muted);font-size:13px;margin-top:5px}.modal-heading>button{background:#edf3f0;border:0;border-radius:10px;color:var(--muted);flex:0 0 40px;font-size:24px;height:40px}.simple-form{gap:16px}.simple-form,.simple-form label{display:flex;flex-direction:column}.simple-form label{color:#38504a;font-size:13px;font-weight:800;gap:7px}.simple-form input,.simple-form select{background:white;border:1px solid #cddbd5;border-radius:11px;font-size:16px;min-height:50px;padding:0 13px;width:100%}.form-note{background:var(--yellow-soft);border-radius:12px;color:#6f4b14;font-size:13px;font-weight:750;padding:12px 14px}.form-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.check-label{align-items:center;background:var(--green-soft);border-radius:12px;flex-direction:row!important;padding:12px}.check-label input{min-height:auto;width:20px}.save-button{background:var(--green);border:0;border-radius:13px;color:white;font-size:15px;font-weight:850;min-height:54px;padding:0 18px}.save-button.expense-save{background:var(--red)}.chooser-list{display:flex;flex-direction:column;gap:10px}.chooser-list button{align-items:center;background:white;border:1px solid var(--line);border-radius:14px;display:flex;justify-content:space-between;min-height:68px;padding:10px 15px;text-align:left}.chooser-list button:hover:not(:disabled){background:var(--green-soft);border-color:#b8d4c7}.chooser-list button:disabled{cursor:default;opacity:.58}.chooser-list button>span{display:flex;flex-direction:column}.chooser-list small{color:var(--muted);margin-top:3px}.chooser-list b{color:var(--green)}.toast{background:#153f34;border-radius:12px;bottom:24px;box-shadow:0 14px 35px rgba(0,0,0,.2);color:white;font-size:14px;font-weight:750;left:50%;padding:14px 20px;position:fixed;transform:translateX(-50%);z-index:80}@media (max-width:850px){.simple-header{grid-template-columns:1fr auto}.month-switcher{grid-column:1/-1;grid-row:2;justify-self:stretch;min-width:0}.daily-grid,.main-actions,.money-overview{grid-template-columns:1fr}.action-button{min-height:78px}.settings-grid{grid-template-columns:1fr}}@media (max-width:600px){.simple-header{gap:12px;min-height:76px;padding:12px 15px}.brand-mark{height:42px;width:42px}.simple-brand strong{font-size:17px}.simple-brand small{display:none}.settings-button{min-height:42px;padding:0 12px}.month-switcher button{min-width:46px}.settings-content,.simple-content{padding:20px 14px 46px}.money-overview{gap:14px}.balance-card{min-height:268px;padding:27px 23px}.balance-card>strong{font-size:44px;margin-top:23px}.balance-breakdown{gap:20px;justify-content:space-between}.balance-breakdown b{font-size:14px}.rent-total-card{padding:23px}.main-actions{gap:10px;margin:14px 0}.month-small-cards{gap:10px}.month-small-cards article{align-items:flex-start;min-height:92px;padding:14px}.month-small-cards strong{font-size:17px}.month-small-cards small{line-height:1.25}.panel{border-radius:17px;padding:18px 15px}.rent-row{gap:8px;grid-template-columns:40px minmax(0,1fr) auto;padding:13px 0}.unit-badge{height:38px;width:38px}.rent-values{display:none}.paid-badge,.rent-row>button{grid-column:3;grid-row:1}.rent-row>button{min-height:40px;padding:0 11px}.movement-row{grid-template-columns:38px minmax(0,1fr) auto 24px}.movement-row>b{font-size:12px}.settings-unit{gap:10px;grid-template-columns:1fr auto;padding:12px 0}.settings-unit>div:nth-child(2){display:none}.settings-unit button{min-width:72px}.danger-card{align-items:flex-start;flex-direction:column;gap:16px}.modal-backdrop{align-items:flex-end;padding:0}.modal-card{border-radius:22px 22px 0 0;max-height:92vh;padding:23px 18px calc(24px + env(safe-area-inset-bottom))}.form-grid{grid-template-columns:1fr}.toast{bottom:16px;max-width:calc(100vw - 28px);text-align:center;white-space:nowrap}}