:root{--black:#101010;--panel:#191919;--panel2:#222;--yellow:#ffb800;--yellow2:#ffc928;--white:#f8f8f8;--muted:#aaa;--line:#ffffff1c;--red:#ff6b57;--shadow:0 16px 42px #0008}*{box-sizing:border-box}body{margin:0;background:var(--black);color:var(--white);font:16px/1.45 system-ui,-apple-system,sans-serif;background-image:radial-gradient(circle at 80% -10%,#ffb80016,transparent 32rem)}header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:10px max(18px,env(safe-area-inset-left));background:#101010ed;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;color:var(--white);font-weight:850;text-decoration:none;letter-spacing:-.03em;min-width:0}.brand img{width:52px;height:38px;object-fit:cover;object-position:center 55%;border-radius:6px}.brand span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}nav{display:flex;align-items:center;gap:14px}nav a,.link{color:var(--yellow);background:none;border:0;font:inherit;text-decoration:none;padding:0}nav form{margin:0}main{width:min(1040px,100%);margin:auto;padding:28px 18px 70px}.eyebrow{margin:0;color:var(--yellow);text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:850}h1{font:900 clamp(2.2rem,7vw,4.4rem)/.95 system-ui,-apple-system,sans-serif;letter-spacing:-.065em;margin:.18em 0}h2{margin:.1em 0 .7em;font-size:1.15rem}.top{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.top label{font-size:.78rem;font-weight:750}input{width:100%;border:1px solid var(--line);background:#0e0e0e;border-radius:10px;padding:12px;font:inherit;color:var(--white)}input:focus{outline:2px solid var(--yellow);border-color:transparent}.top input{margin-top:5px}.summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.summary div{background:var(--yellow);color:var(--black);border-radius:14px;padding:18px}.summary div:last-child{background:var(--panel);color:var(--white);border:1px solid #ffb80055}.summary strong{display:block;font:900 2rem/1 system-ui,sans-serif}.summary span{font-size:.8rem;font-weight:700}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.card,.panel{background:linear-gradient(145deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.cardhead{display:flex;justify-content:space-between;gap:10px;align-items:start}.status{font-size:.72rem;font-weight:850;padding:5px 8px;border-radius:5px;text-transform:uppercase;letter-spacing:.06em}.status.paid{background:var(--yellow);color:var(--black)}.status.open{background:#ff6b5726;color:#ff8b78;border:1px solid #ff6b5755}.counts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.counts label,.panel label{display:block;font-size:.78rem;font-weight:750;color:#ddd}.counts input{font-size:1.5rem;font-weight:850;text-align:center;margin-top:5px}.note{margin:12px 0}.primary{width:100%;border:0;border-radius:9px;background:var(--yellow);color:var(--black);padding:13px 16px;font:850 1rem system-ui;cursor:pointer}.primary:hover{background:var(--yellow2)}.primary:active{transform:translateY(1px)}.login{max-width:500px;margin:4vh auto}.hero-logo{display:block;width:100%;max-height:255px;object-fit:cover;object-position:center 55%;margin-bottom:26px;border:1px solid #ffb80033;border-radius:14px}.login>p:not(.eyebrow){color:var(--muted)}.panel{margin-top:14px}.panel label{margin:12px 0}.flash{padding:12px 14px;border-radius:9px;margin-bottom:14px;background:#ffb80022;border:1px solid #ffb80055}.flash.error{background:#ff6b571a;color:#ff9a8a;border-color:#ff6b5755}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.people{list-style:none;padding:0;margin:0}.people li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}.people small{color:var(--muted)}@media(max-width:620px){main{padding-top:20px}.brand span{display:none}.top{align-items:start;flex-direction:column}.top form{width:100%}.card{padding:16px}.summary strong{font-size:1.7rem}nav{gap:10px}.hero-logo{max-height:210px}}
