*{box-sizing:border-box}:root{--teal:#226e77;--teal-dark:#1a5a62;--ink:#223032;--bg:#f5f7f5;--line:#e3e9e6;--muted:#6e7b7c}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,Segoe UI,Helvetica,Arial,sans-serif}main{max-width:640px;margin:0 auto;padding:24px 18px 60px}main.wide{max-width:1100px}h1{font-size:24px}h1,h2{font-weight:600}h2{font-size:18px;margin-top:28px}a{color:var(--teal)}.btn,button{font:inherit;border:0;border-radius:6px;cursor:pointer;background:var(--teal);color:#fff;padding:12px 18px;text-decoration:none;display:inline-block}.btn:hover,button:hover{background:var(--teal-dark)}button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}button.danger{background:#b4423a}.big-btn{width:100%;padding:34px;font-size:28px;border-radius:10px}.name-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.name-grid button{padding:26px 12px;font-size:19px;background:#fff;color:var(--ink);border:1px solid var(--line)}.pin-display{letter-spacing:12px;font-size:32px;text-align:center;min-height:44px}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;max-width:300px;margin:0 auto}.pin-pad button{padding:20px;font-size:22px;color:var(--ink)}.card,.pin-pad button{background:#fff;border:1px solid var(--line)}.card{border-radius:8px;padding:18px 20px;margin:14px 0}.muted{color:var(--muted);font-size:14px}.error{color:#b4423a}.error,.ok{font-weight:600}.ok{color:#2e7d4f}table{border-collapse:collapse;width:100%;background:#fff;font-size:14px}td,th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}th{background:#edf3f0;font-weight:600}input,select,textarea{font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:6px;width:100%;background:#fff}form.inline{display:flex;gap:8px;align-items:center}form.inline input,form.inline select{width:auto}label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.row>div{flex:1 1;min-width:130px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.badge{background:#edf3f0;border-radius:20px;padding:3px 12px;font-size:13px;color:var(--muted)}