
*{box-sizing:border-box}body{margin:0;background:#f4f7f8;color:#1d3540;font:15px/1.8 Tahoma,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{min-height:100vh;display:flex}aside{width:235px;background:#123b4a;color:#e1edf0;padding:28px 18px;position:sticky;top:0;height:100vh;flex:none}.brand{display:flex;align-items:center;gap:12px;padding:2px 5px 26px;border-bottom:1px solid #ffffff27}.mark{background:#d5aa68;color:#153c4a;font-size:26px;font-weight:bold;width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.brand b,.brand small{display:block}.brand small{color:#adc8d0}aside nav{display:grid;gap:6px;margin-top:25px}aside nav button{border:0;color:#d5e5e9;background:none;text-align:right;padding:12px 14px;border-radius:11px}aside nav button.active,aside nav button:hover{background:#ffffff20;color:white}.aside-note{position:absolute;bottom:25px;color:#a9c3ca;font-size:12px}main{width:min(1120px,100%);padding:30px 40px 90px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}h1{font-size:27px;line-height:1.5;margin:2px 0}h2{font-size:18px}.eyebrow{color:#648c97;font-size:13px}.actions{display:flex;gap:9px}.primary,.secondary{border-radius:10px;padding:10px 16px;min-height:42px;font-size:14px;font-weight:bold;border:1px solid transparent}.primary{background:#147687;color:white}.primary:hover{background:#0d6473}.secondary{background:white;color:#3c6470;border-color:#dce7e9}.secondary:hover{background:#edf5f6}.notice{background:#fff6e6;border:1px solid #f1ddb4;border-radius:12px;padding:12px 17px;margin-bottom:19px;color:#785b32;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat,.card{background:white;border:1px solid #e0e9ec;border-radius:16px;padding:20px;box-shadow:0 4px 20px #163b4808}.stat span,.stat small{display:block;color:#68838e;font-size:13px}.stat strong{display:block;font-size:22px;margin:9px 0}.sectionhead{display:flex;align-items:center;justify-content:space-between;margin:27px 0 14px}.quick{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.quick button{border:1px solid #dce7e9;background:white;padding:16px 8px;border-radius:12px;font-size:14px;color:#285e6b;font-weight:bold}.quick button:hover{border-color:#147687}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.toolbar input,.toolbar select{background:white;border:1px solid #dce7e9;border-radius:10px;padding:10px 12px;min-height:44px;max-width:100%}.toolbar input{width:min(360px,100%)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.party-title{display:flex;gap:11px;align-items:center}.avatar{width:40px;height:40px;background:#e4f2f5;color:#24788a;display:grid;place-items:center;border-radius:11px;font-size:20px;font-weight:bold}.party-title small{display:block;color:#8097a0}.balance{border-top:1px solid #edf1f2;border-bottom:1px solid #edf1f2;margin:16px 0;padding:13px 0}.balance small{display:block;color:#82979e}.balance b{font-size:17px}.green{color:#177e77}.orange{color:#b36b42}.card-actions{display:flex;gap:7px}.card-actions button,.entry-actions button{border:0;background:#edf5f6;color:#286a78;padding:5px 9px;border-radius:7px;font-size:13px}.card-actions button:first-child{margin-left:auto}.card-actions button.danger,.entry-actions button.danger{color:#b45c50;background:#fff1ee}.list{border:1px solid #e1e9ec;background:white;border-radius:15px;overflow:hidden}.entry{padding:14px 17px;border-bottom:1px solid #edf1f2;display:flex;align-items:center;gap:12px}.entry:last-child{border:0}.entry-symbol{width:38px;height:38px;background:#e9f4f5;color:#167585;border-radius:10px;display:grid;place-items:center;font-size:20px;flex:none}.entry-body{flex:1;min-width:0}.entry-body b,.entry-body small{display:block}.entry-body small{font-size:12px;color:#748a94;overflow-wrap:anywhere}.entry-end{text-align:left}.entry-end b{white-space:nowrap}.entry-actions{display:flex;gap:5px;justify-content:flex-end;margin-top:5px}.empty{background:white;border:1px dashed #d8e5e8;border-radius:13px;padding:45px 15px;text-align:center;color:#7a949e}.account{padding:13px 17px;margin-bottom:16px;border-radius:11px;background:#e6f4f5;display:flex;justify-content:space-between}.tabs-mobile{display:none}.overlay{position:fixed;inset:0;background:#102f3daa;z-index:10;display:grid;place-items:center;padding:14px}.dialog{width:min(620px,100%);background:white;border-radius:17px;padding:23px;max-height:94vh;overflow:auto}.dialog-head{display:flex;justify-content:space-between;align-items:start}.dialog-head h2{margin:0 0 16px}.close{background:none;border:0;color:#77909a;font-size:24px}.form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:5px;position:relative}.field label{font-size:13px;font-weight:bold;color:#526e79}.field input,.field select,.field textarea,.field .datebtn{border:1px solid #d5e2e6;border-radius:9px;min-height:43px;padding:8px 11px;color:#243e49;background:white;width:100%;outline-color:#147687;text-align:right}.field textarea{min-height:76px;resize:vertical}.datebtn{cursor:pointer}.cal{position:absolute;z-index:15;background:white;top:74px;right:0;width:282px;padding:12px;border:1px solid #dce6e9;border-radius:12px;box-shadow:0 12px 35px #18374533}.cal-top{display:flex;justify-content:space-between;align-items:center}.cal-top button,.days button{border:0;background:none;border-radius:7px;padding:5px}.days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:1px}.days b{font-size:12px;color:#8197a0}.days button.selected{background:#147687;color:white}.days button:hover{background:#e6f4f5}.dialog-actions{display:flex;gap:9px;justify-content:flex-end;border-top:1px solid #edf1f2;padding-top:16px}.hint{font-size:12px;color:#718b95;margin:0}.error{background:#fff0e9;color:#a8503b;padding:9px 12px;border-radius:8px}.checkline{display:flex;gap:8px;align-items:center}.muted{color:#748c96}@media(max-width:950px){.grid{grid-template-columns:repeat(2,1fr)}.quick{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){aside{display:none}main{padding:20px 14px 88px}header h1{font-size:23px}.actions .secondary{font-size:12px}.stats{grid-template-columns:repeat(2,1fr);gap:9px}.stat{padding:14px}.stat strong{font-size:17px}.stat:last-child{grid-column:span 2}.quick{grid-template-columns:repeat(3,1fr)}.quick button{font-size:12px;padding:12px 5px}.grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.toolbar input{width:100%}.entry{padding:12px 9px;gap:8px}.entry-symbol{width:32px;height:32px}.entry-body b,.entry-end b{font-size:13px}.entry-end{max-width:135px}.entry-actions button{font-size:11px;padding:4px 6px}.tabs-mobile{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid #e0e9ec;z-index:5;padding:7px 0}.tabs-mobile button{background:none;border:0;color:#78919a;font-size:12px}.tabs-mobile button.active{color:#147687;font-weight:bold}.form-row{grid-template-columns:1fr}.dialog{padding:18px}}
.ledger-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:27px}.ledger-panel{background:white;border:1px solid #e0e9ec;border-radius:15px;overflow:hidden}.ledger-panel h2{margin:0;padding:14px 18px;border-bottom:1px solid #edf1f2}.ledger-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:white;border:0;border-bottom:1px solid #edf1f2;text-align:right;padding:11px 18px;color:#345963}.ledger-row:last-child{border:0}.ledger-row:hover{background:#eef7f8}.ledger-row b{color:#147687;white-space:nowrap}.ledger-empty{color:#83979d;margin:0;padding:18px}@media(max-width:760px){.ledger-panels{grid-template-columns:1fr}}.account-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-bottom:18px}.account-summary>div{background:white;border:1px solid #dce8eb;border-radius:14px;padding:17px 20px}.account-summary small,.account-summary strong{display:block}.account-summary small{color:#708b95}.account-summary strong{font-size:22px;margin-top:4px}.detail-list{display:grid;gap:13px}.detail-card{background:white;border:1px solid #dfe9ec;border-radius:15px;padding:18px}.detail-head{display:flex;justify-content:space-between;align-items:start;gap:12px;padding-bottom:13px;border-bottom:1px solid #edf1f2}.detail-head b,.detail-head small{display:block}.detail-head small{color:#8599a0;font-size:12px}.detail-head strong{font-size:19px;white-space:nowrap}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.detail-grid span,.detail-grid b{display:block}.detail-grid span{font-size:12px;color:#81959d}.detail-grid b{font-size:14px}.detail-notes{background:#f5f8f9;padding:9px 12px;border-radius:8px;color:#617d87;font-size:13px;margin:0 0 12px}.detail-card .card-actions{border-top:1px solid #edf1f2;padding-top:12px}.tabs-mobile button{line-height:1.5}@media(max-width:760px){main{padding-bottom:125px}.tabs-mobile{grid-template-columns:repeat(3,1fr)}.detail-grid{grid-template-columns:repeat(2,1fr)}.detail-head strong{font-size:16px}.account-summary strong{font-size:17px}}.account{align-items:center;gap:12px;flex-wrap:wrap}.account .secondary{margin-right:auto;white-space:nowrap}.card-actions{flex-wrap:wrap}@media(max-width:760px){.account .secondary{width:100%;margin-right:0}}.login-screen{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#123b4a 0%,#176b7a 52%,#e9f3f4 52%)}.login-card{background:white;border-radius:19px;padding:30px;width:min(430px,100%);box-shadow:0 24px 70px #0c334057}.login-brand{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e5edf0;padding-bottom:19px}.login-brand b,.login-brand small{display:block}.login-brand small{color:#77919a}.login-card h1{font-size:23px;margin:23px 0 4px}.login-card p{margin:0 0 21px;color:#6e8993;font-size:13px}.login-card .form{gap:15px}.login-card .primary{margin-top:5px}.login-note{margin-top:20px;border-radius:9px;background:#fff6e8;color:#806340;padding:12px;font-size:12px}.login-card .error{margin-bottom:14px}.login-card .field input{text-align:right}@media(max-width:760px){.login-card{padding:22px}.actions #logout{padding:9px 10px}}
.mark{width:54px;height:54px;background:white;overflow:hidden;flex:none;padding:2px}.mark img{width:100%;height:100%;object-fit:contain;display:block;border-radius:9px}
