:root{--accent:#245d4d;--ink:#203c34;--soft:#edf4ed}.brand-mark,.button.primary{background:var(--accent)}body{background:#f5f7f4}.main-content{max-width:1600px}.page-header h1{letter-spacing:-1.3px}.pill{display:inline-flex;padding:7px 12px;border-radius:30px;background:#e9f2e8;color:#34624c;font-size:12px;font-weight:650;white-space:nowrap}.welcome{display:flex;justify-content:space-between;gap:32px;background:#e7eee2;padding:36px}.welcome h2{font-size:32px;letter-spacing:-1px;margin:10px 0}.welcome p{line-height:1.8}.receipt-art{width:230px;flex-shrink:0;background:#fffdf4;padding:25px;color:#5f6a5c;line-height:2.2;font:14px/2.2 monospace;transform:rotate(5deg);box-shadow:0 12px 32px #35563a18;border-bottom:6px dotted #e7eee2}.receipt-art span{letter-spacing:4px;font-weight:bold}.receipt-art hr{border:0;border-top:1px dashed #b9c4b3}.section-heading{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:16px}.section-heading h2{margin:0;font-size:20px}.bill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.bill-card{display:block;text-decoration:none;color:inherit;transition:transform .2s}.bill-card:hover{transform:translateY(-3px)}.bill-card h3{font-size:22px;margin:22px 0 8px}.card-bottom{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid #e5e9e3;margin-top:24px;color:var(--accent)}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}.workspace-grid>.panel,.workspace-grid>div>.panel{margin-bottom:22px}.workspace-grid aside{position:sticky;top:24px}.panel{border-radius:16px}.upload-box{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#f7f9f4;border:1px dashed #b7c7b5;border-radius:12px;padding:22px}.upload-box input{max-width:100%;font-size:13px}.settings-form{display:grid;gap:12px;margin:20px 0}.item-row{padding:20px 0;border-bottom:1px solid #e6ebe5}.item-row:last-child{border:0}.item-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:12px}.item-heading h3{font-size:16px;margin:4px 0}.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.chip{border:1px solid #d9e1d6;border-radius:24px;background:white;padding:9px 15px;cursor:pointer;font:inherit;font-size:13px;color:#556653}.chip.selected{background:#e0efdd;color:#255432;border-color:#72a36d;font-weight:650}.chip.selected:before{content:'✓ ';}.chip:disabled{cursor:default;opacity:.75}.pending-label{font-size:12px;color:#9a6b2f;background:#fff4de;border-radius:6px;padding:5px 8px}.sum-row{display:flex;justify-content:space-between;padding:10px 0}.grand{font-size:22px;border-top:1px solid #dbe5d9;padding:18px 0;margin-top:10px}.notice{background:#fff5df;padding:14px;border-radius:10px;font-size:13px;color:#806028;margin:10px 0 18px}.notice p{margin:7px 0}.person-total{display:flex;align-items:center;gap:10px;border-bottom:1px solid #e6ece3;padding:17px 0}.person-total>div{flex:1;min-width:0}.person-total>div strong{overflow-wrap:anywhere}.person-total small{display:block;line-height:1.7;font-size:11px;color:#74816f}.person-total>strong{font-size:16px;white-space:nowrap}.small{font-size:12px;line-height:1.8}.people-list>div{display:flex;align-items:center;gap:12px;margin:15px 0}.people-list strong{flex:1}.avatar{background:#e7eddf;color:var(--accent);flex-shrink:0}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:20px}.text-button{border:0;background:none;text-decoration:underline;font:inherit;font-size:12px;color:#567256;cursor:pointer;padding:5px}.danger{color:#a34636}details{margin-top:18px}summary{cursor:pointer;color:#47684a;font-size:13px;font-weight:600;line-height:1.8}.inline-form{align-items:end}.inline-form .short{max-width:130px}.share-link{overflow-wrap:anywhere}.empty{text-align:center;padding:45px}.empty-icon{font-size:42px;color:#98ae88}.guest{width:min(1200px,95vw);margin:35px auto}.guest .page-header h1{font-size:32px}.guest .workspace-grid{grid-template-columns:minmax(0,1fr) 350px}.print-button{margin-top:10px}.auth-story{background:#244b3c}.auth-main{max-width:none}input:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #96bd73;outline-offset:3px}input[type=number]{min-width:70px}table input{max-width:100%}button:disabled,input[type=submit]:disabled{opacity:.5;cursor:default}.add-product{padding:12px 0}.panel h2{letter-spacing:-.5px}
@media(max-width:1200px){.workspace-grid,.guest .workspace-grid{grid-template-columns:minmax(0,1fr) 300px}.welcome{padding:26px}.receipt-art{width:190px}}@media(max-width:950px){.workspace-grid,.guest .workspace-grid{grid-template-columns:1fr}.workspace-grid aside{position:static}.receipt-art{display:none}.upload-box{flex-direction:column;align-items:stretch}.section-heading{flex-wrap:wrap}.main-content{padding:24px}.people-list>div{flex-wrap:wrap}}@media print{.sidebar,.actions,details,.upload-box,.back-link,button,input[type=submit],.welcome,.print-button,footer{display:none!important}.main-content{margin:0!important;padding:0!important}.workspace-grid{display:block}.workspace-grid aside{position:static}.panel{break-inside:avoid;box-shadow:none}.guest{width:100%;margin:0}.item-row{break-inside:avoid}.chip{border:0;padding:3px}.chip:not(.selected){display:none!important}}
.person-summary{border-bottom:1px solid #e6ece3;padding-bottom:14px}.person-summary .person-total{border-bottom:0}.personal-breakdown{margin-top:0}.personal-breakdown summary{font-size:12px;margin-bottom:10px}.consumption-heading,.consumption-detail{display:grid;grid-template-columns:minmax(0,1fr) 48px 66px;gap:6px;padding:10px 0;align-items:start}.consumption-heading{font-size:11px;color:#74816f;border-bottom:1px solid #e6ece3}.consumption-detail{font-size:12px;border-bottom:1px solid #eef1eb}.consumption-detail small{display:block;font-size:10px;color:#74816f;line-height:1.6;margin-top:4px}.consumption-detail>span,.consumption-detail>strong,.consumption-heading>span:not(:first-child){text-align:right;white-space:nowrap}.consumption-detail>div>strong{overflow-wrap:anywhere}.personal-grand{font-size:14px;border-top:1px solid #dbe5d9;margin-top:5px}@media print{details.personal-breakdown{display:block!important}details.personal-breakdown>*{display:block}.consumption-detail,.consumption-heading{display:grid!important}}
