*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:linear-gradient(155deg,#fff7ed,#fdf2f8 45%,#eef2ff);color:#292524;min-height:100vh}.hidden{display:none!important}.login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center}.logo{font-size:64px}.login h1{font-size:38px;margin:6px}.login p{color:#78716c}.who{width:min(380px,100%);border:0;border-radius:22px;padding:20px;margin:8px;font-size:21px;font-weight:900;box-shadow:0 10px 25px #0002}.michael{background:#60a5fa}.bianca{background:#f472b6}header{padding:calc(18px + env(safe-area-inset-top)) 20px 16px;display:flex;justify-content:space-between;align-items:center}header h1{margin:0;font-size:26px}header small{color:#7c3aed;font-weight:900}header button{border:0;background:#fff;border-radius:50%;width:42px;height:42px;font-size:20px}main{max-width:650px;margin:auto;padding:0 16px 50px}.hero{background:linear-gradient(135deg,#7c3aed,#ec4899,#f59e0b);color:#fff;border-radius:28px;padding:24px;box-shadow:0 16px 40px #7c3aed33}.hero>strong{font-size:42px;display:block;margin:4px 0 18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.split div{background:#ffffff2c;border-radius:16px;padding:12px}.split b{display:block;font-size:20px}.bar{height:10px;background:#f9a8d4;border-radius:10px;margin-top:18px;overflow:hidden}.bar i{display:block;height:100%;background:#93c5fd;width:50%}.settle{margin:14px 0;background:#fff;border-radius:18px;padding:16px;text-align:center;font-weight:900;box-shadow:0 5px 18px #0001}.add{width:100%;border:0;border-radius:18px;padding:17px;background:#22c55e;color:#fff;font-size:19px;font-weight:900;box-shadow:0 8px 20px #22c55e44}.item{background:#fff;border-radius:18px;padding:14px;margin:9px 0;display:grid;grid-template-columns:1fr auto;gap:4px 10px;box-shadow:0 4px 14px #0001}.amt{font-size:20px;font-weight:900}.item small{color:#78716c}.actions{grid-column:1/-1;text-align:right}.actions button{border:0;background:#f5f3ff;border-radius:10px;padding:7px 10px;margin-left:4px}dialog{border:0;border-radius:26px;width:min(92%,500px);padding:0;box-shadow:0 25px 70px #0005}dialog::backdrop{background:#312e8155;backdrop-filter:blur(4px)}form{padding:24px;position:relative}form label{display:block;font-weight:800;margin:14px 0 6px}input{width:100%;font:inherit;border:2px solid #e7e5e4;border-radius:14px;padding:13px}.money{position:relative}.money input{font-size:28px;font-weight:900;padding-right:45px}.money span{position:absolute;right:16px;top:12px;font-size:25px}.receipt{background:#ede9fe;padding:15px;border-radius:15px;text-align:center}.receipt input{margin-top:8px}.save{width:100%;margin-top:18px;padding:16px;border:0;border-radius:16px;background:linear-gradient(90deg,#7c3aed,#ec4899);color:white;font-weight:900;font-size:18px}.x{position:absolute;right:15px;top:12px;border:0;background:none;font-size:28px}
.scanbox{margin:14px 0;padding:14px;border-radius:18px;background:#f7f3ff;border:2px dashed #c4b5fd}.scanbtn{display:block;width:100%;border:0;border-radius:15px;padding:14px;font-weight:800;font-size:16px;background:linear-gradient(90deg,#7c3aed,#ec4899);color:#fff;cursor:pointer}.scanstatus{display:block;margin-top:9px;color:#6b7280;line-height:1.35}.scanstatus.ok{color:#15803d;font-weight:700}.scanstatus.err{color:#b91c1c}.scanpreview{display:none;width:100%;max-height:180px;object-fit:contain;margin-top:10px;border-radius:12px;background:#fff}
