
:root{--pink:#ff0878;--pink2:#be005a;--lime:#9cff00;--paper:#fff;--ink:#222;--muted:#6b7280;--line:#ddd;--ok:#16743a;--warn:#a65d00;--bad:#ad1f30}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(145deg,var(--pink),var(--pink2));min-height:100vh}
header{text-align:center;color:white;padding:24px 12px 10px}.brand{font-size:clamp(38px,7vw,68px);font-weight:900;color:var(--lime);letter-spacing:.05em}.bird{font-size:48px}header p{margin:4px}
.app{width:min(1100px,100%);margin:auto;padding:0 12px 48px}.tabs{display:flex;gap:8px;position:sticky;top:0;z-index:4;padding:10px 0;background:rgba(255,8,120,.93)}
button,.file-button{font:inherit;border:0;border-radius:11px;padding:12px 14px;font-weight:700;cursor:pointer;text-align:center}.tab{flex:1;background:#fff}.tab.active,.primary{background:var(--lime);color:#172000}.secondary{background:#ececec}.danger{background:#ffd8dd;color:#8e1324}.wide{width:100%;margin-top:12px}
.panel{display:none}.panel.active{display:block}.card,.dialog-card{background:var(--paper);border-radius:18px;padding:18px;margin:12px 0;box-shadow:0 10px 30px #0003}
h1,h2{margin-top:0}.grid{display:grid;gap:11px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.span2{grid-column:1/-1}
label{font-weight:700;font-size:14px}input,select{width:100%;margin-top:5px;padding:12px;border:1px solid #aaa;border-radius:10px;background:#fff;font:inherit}
.hidden{display:none!important}.notice,.status{padding:11px 13px;margin:10px 0;border-radius:11px;font-weight:700}.notice{background:#eef2f7}.ok{background:#def5e5;color:var(--ok)}.warn{background:#fff0d6;color:var(--warn)}.bad{background:#ffe0e4;color:var(--bad)}
.number{font-size:74px;font-weight:900;text-align:center;color:var(--lime);text-shadow:0 2px #333}.person-name{text-align:center;font-size:25px;font-weight:800}
.list{display:grid;gap:8px;margin-top:12px;max-height:620px;overflow:auto}.entry{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);padding:11px;border-radius:12px}
.badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700;margin:3px 3px 0 0}.paid{background:#def5e5;color:var(--ok)}.open{background:#fff0d6;color:var(--warn)}.band{background:#e9deff;color:#5e2a9a}
.toolbar{display:grid;grid-template-columns:140px minmax(180px,1fr) repeat(4,auto);gap:9px;align-items:end}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:10px 0}.stat{padding:13px;border-radius:12px;background:#f0f3f5;font-weight:800}
.cost-form{display:grid;grid-template-columns:2fr 1.3fr 1fr auto;gap:9px;align-items:end}.total{font-size:1.35rem;font-weight:900;background:#f1f3f4;padding:13px;border-radius:12px}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:9px;border-bottom:1px solid var(--line);text-align:left}
dialog{border:0;border-radius:18px;width:min(650px,calc(100% - 22px));padding:0}dialog::backdrop{background:#0009}.dialog-card{margin:0;box-shadow:none}.dialog-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.dialog-actions button{flex:1}
@media(max-width:760px){.tabs{overflow:auto}.tab{min-width:105px}.grid.two,.stats,.cost-form,.toolbar{grid-template-columns:1fr}.span2{grid-column:auto}.entry{grid-template-columns:58px 1fr}.entry button{grid-column:1/-1}.dialog-actions button{flex-basis:45%}}
