:root{--green:#092f2c;--pink:#f080a7;--paper:#fbf6ea;--text:#16332f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:Inter,system-ui,sans-serif}a{text-decoration:none;color:inherit}button,input{font:inherit}.hidden{display:none!important}.topbar{height:74px;max-width:1180px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:900}.brand span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--pink);color:white;font:24px Georgia}.pill{border:1px solid #b8c5bf;border-radius:999px;padding:10px 16px;background:transparent;font-weight:800}.hero{min-height:650px;background:var(--green);color:#faefd9;display:grid;grid-template-columns:1fr minmax(360px,520px);overflow:hidden}.hero>div{padding:90px max(7vw,24px);align-self:center}.eyebrow{color:var(--pink);font-size:.74rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.hero h1{font:500 clamp(3.2rem,6.5vw,6.4rem)/.92 Georgia;margin:14px 0 24px;letter-spacing:-.055em}.hero h1 em{color:var(--pink)}.lead{max-width:620px;color:#d5ded8;line-height:1.7;font-size:1.12rem}.cta,.primary{display:inline-block;border:0;border-radius:12px;background:var(--pink);color:#35151e;padding:14px 20px;font-weight:900;cursor:pointer}.hero .cta{margin-top:24px}.hero figure{height:650px;margin:0;overflow:hidden}.hero img{width:100%;height:790px;object-fit:cover;object-position:top}.facts{max-width:1180px;margin:-28px auto 0;position:relative;background:white;border:1px solid #ded8ca;border-radius:18px;padding:20px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 20px 45px #1e3a3218}.facts div{display:grid;gap:4px;padding:6px 20px;border-right:1px solid #e6e0d5}.facts div:last-child{border:0}.facts small,.stats small{text-transform:uppercase;letter-spacing:.1em;color:#78877f;font-weight:800;font-size:.68rem}.numbers{max-width:1180px;margin:90px auto 140px;padding:0 24px}.heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.heading h2,.admin h1{font:500 clamp(2.4rem,5vw,4.6rem) Georgia;margin:7px 0}.heading label,.modal label,.login label{display:grid;gap:7px;font-size:.76rem;font-weight:800}.heading input,.modal input,.login input{border:1px solid #cbd4cf;border-radius:11px;padding:12px 14px;background:white}.legend{margin:28px 0 14px;color:#72817b;font-size:.82rem}.legend b{color:#9d365d}.grid{display:grid;grid-template-columns:repeat(10,1fr);gap:8px;max-height:480px;overflow:auto}.number{min-height:47px;border:1px solid #d2dcd6;border-radius:9px;background:white;font-weight:750;color:var(--green);cursor:pointer}.number.active{background:var(--pink);border-color:var(--pink)}.number.blocked{background:#e8ece9;color:#a2aaa6;text-decoration:line-through}.selection{position:fixed;z-index:20;bottom:18px;left:50%;transform:translateX(-50%);width:min(640px,calc(100% - 28px));background:#082f2cef;color:white;border-radius:18px;padding:12px 14px 12px 22px;display:flex;align-items:center;justify-content:space-between}.selection div{display:grid}.selection button{border:0;border-radius:11px;padding:14px 18px;background:var(--pink);font-weight:900}.overlay{position:fixed;z-index:30;inset:0;background:#041b19cc;display:grid;place-items:center;padding:18px}.modal{position:relative;width:min(470px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fffaf0;border-radius:24px;padding:34px}.close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:2rem}.modal h3{font:500 2.1rem Georgia;margin:8px 0 12px}.modal form label{margin-top:16px}.modal .primary{width:100%;margin-top:20px}.error{color:#952d3b}.timer{float:right;background:#e3eee8;padding:7px 10px;border-radius:999px;font-weight:900}.key{width:100%;display:grid;text-align:left;border:1px dashed #81968c;border-radius:14px;background:#edf4ef;padding:16px}.key b{font-size:1.8rem}.key span,.key small,.reference small{color:#71827a;text-transform:uppercase;font-size:.7rem}.reference{display:flex;justify-content:space-between;margin:16px 0;padding:13px 0;border-block:1px solid #dfe5e1}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choices .primary{margin:0}.debt{border:1px solid #d6b452;border-radius:12px;background:#fff0ba;font-weight:900}.success{margin:auto;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#d8efdf;color:#17603d;font-size:2rem}.share{width:100%;text-align:center;margin-top:18px}.admin-body{background:#f2f0e8}.admin{max-width:1280px;margin:auto;padding:45px 24px 90px}.login{max-width:420px;margin:12vh auto;background:white;padding:34px;border-radius:20px}.login form{display:grid;gap:14px}.admin header{display:flex;align-items:end;justify-content:space-between;gap:20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:35px 0 20px}.stats article{background:white;border:1px solid #dfe3df;border-radius:16px;padding:21px;display:grid;gap:7px}.stats b{font-size:1.7rem}.stats span{color:#7c8983;font-size:.8rem}.card{background:white;border:1px solid #dfe3df;border-radius:18px;overflow:hidden}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:20px}.toolbar h2{margin:0}.toolbar button{border:0;border-radius:999px;padding:8px 11px;margin:3px;background:#eef1ef}.toolbar button.active{background:var(--green);color:white}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.83rem}th{text-align:left;background:#f8f8f4;padding:11px 16px;color:#74817b}td{padding:15px 16px;border-top:1px solid #eceeeb;vertical-align:top}td:first-child{display:grid;gap:3px}td a{color:#147254}.status{white-space:nowrap;padding:6px 8px;border-radius:999px;font-weight:800}.reported_paid{background:#fff0bd}.confirmed_paid{background:#d8efdf}.status.debt{background:#ffe0e3}
.release{border-color:#e1a9af!important;color:#9a2f3b;background:#fff5f6!important}
@media(max-width:850px){.hero{grid-template-columns:1fr}.hero figure{height:450px}.hero img{height:580px}.facts{margin:0;border-radius:0;grid-template-columns:1fr 1fr}.heading,.admin header,.toolbar{align-items:stretch;flex-direction:column}.grid{grid-template-columns:repeat(6,1fr)}.stats{grid-template-columns:1fr 1fr}}@media(max-width:480px){.hero>div{padding:45px 22px}.hero h1{font-size:3.2rem}.hero figure{height:350px}.hero img{height:450px}.facts{grid-template-columns:1fr}.grid{grid-template-columns:repeat(5,1fr);gap:6px}.choices,.stats{grid-template-columns:1fr}.numbers{padding:0 16px}.modal{padding:28px 22px}}
.toast{position:fixed;z-index:50;left:50%;bottom:24px;transform:translateX(-50%);width:min(620px,calc(100% - 32px));padding:16px 20px;border-radius:14px;background:#092f2c;color:white;text-align:center;font-weight:800;box-shadow:0 14px 40px #041b1950}.table-wrap{-webkit-overflow-scrolling:touch}.table-wrap table{min-width:800px}
@media(max-width:480px){.topbar{height:64px;padding:0 16px}.pill{padding:10px 12px}.number{min-height:46px}.choices button,.primary,.debt{min-height:48px}.modal{width:100%;padding:28px 20px;border-radius:18px}.modal h3{font-size:1.85rem}.key b{font-size:1.5rem}.selection{bottom:8px;width:calc(100% - 16px);padding:10px 10px 10px 14px;gap:8px}.selection button{min-height:46px;padding:10px 12px;font-size:.78rem}.selection b{font-size:.92rem}.toast{bottom:12px;width:calc(100% - 24px);padding:14px 16px}.admin{padding:28px 14px 70px}.toolbar{padding:16px}}
.admin-body{background:radial-gradient(circle at 15% 15%,#f5bfd2 0,transparent 28%),radial-gradient(circle at 85% 85%,#b9d7ca 0,transparent 30%),#f2f0e8}.login{position:relative;max-width:460px;margin:7vh auto;padding:34px 38px 30px;border:1px solid #ffffffcc;box-shadow:0 28px 80px #173a3020}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:34px;color:var(--green)}.login-brand span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--pink);color:white;font:24px Georgia}.login-lock{position:absolute;right:38px;top:34px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#e5f1eb;color:var(--green);font-size:1.5rem}.login h1{font-size:clamp(2.8rem,6vw,4rem);margin:6px 0 10px}.login-copy{margin:0 0 24px;color:#6e7d77;line-height:1.55}.password-field{position:relative}.password-field input{width:100%;padding-right:74px}.password-field button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;border-radius:8px;background:#edf2ef;padding:7px 10px;color:var(--green);font-size:.75rem;font-weight:900}.login .primary{width:100%;min-height:50px}.login .primary:disabled{opacity:.65}.back-home{display:block;margin-top:22px;text-align:center;color:#66766f;font-size:.82rem;font-weight:800}.table-wrap table{min-width:1050px}td:nth-child(3){display:grid;gap:4px;white-space:nowrap}td:nth-child(3) small{color:#7c8983}.balance{font-weight:800;color:#9a4c2e!important}.payment-editor{display:flex;gap:6px;margin-bottom:8px}.payment-editor input{width:130px;border:1px solid #cbd4cf;border-radius:8px;padding:8px}.payment-editor button,.admin-actions button{border:1px solid #ccd5d0;border-radius:8px;background:white;padding:8px 10px;white-space:nowrap;font-weight:750;cursor:pointer}.payment-editor button{background:var(--green);color:white;border-color:var(--green)}.admin-actions{display:flex;flex-wrap:wrap;gap:6px}
@media(max-width:480px){.login{margin:2vh auto;padding:28px 22px 24px}.login-lock{right:22px;top:28px}.login-brand{margin-bottom:28px}}
.hero figure{background:#f7d9e3}.hero img{height:100%;object-fit:contain;object-position:center}
.hero{background:linear-gradient(135deg,#fff3f6 0%,#f8d2df 48%,#ead7f2 100%);color:#59336f}.hero h1{color:#59336f}.hero h1 em{color:#dc3f78}.hero .eyebrow{color:#bd2f68}.hero .lead{color:#65506e}.hero figure{background:#f7d9e3;border-left:1px solid #eab9ca}.hero .cta{box-shadow:0 7px 0 #b84d78}.facts{border-color:#ead0d9}.brand{color:#59336f}
.admin-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.export-button{background:#70428c;color:white;border-color:#70428c}.export-button:hover{background:#59336f}@media(max-width:850px){.admin-header-actions{width:100%}.admin-header-actions .pill{flex:1;text-align:center}}
