:root{--ink:#0e1525;--sub:#5b6474;--line:#e7e3d8;--soft:#f7f5ef;--gold:#c9a227;--gold2:#e8c766;--accent:#8a6a12}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;
  background:radial-gradient(900px 500px at 50% -10%,#fff3cf 0,transparent 60%),linear-gradient(180deg,#faf8f2,#efebe0);min-height:100vh}
.wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.card{width:100%;max-width:400px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px 28px;box-shadow:0 20px 60px rgba(14,21,37,.12)}
.card.wide{max-width:760px;text-align:left}
.logo{width:170px;margin:0 auto 18px;display:block}
h1{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0;text-align:center}
.wide h1{text-align:left}
.sub{font-size:14px;color:var(--sub);margin:6px 0 18px;line-height:1.45;text-align:center}
.wide .sub{text-align:left}
label{display:block;font-size:12px;font-weight:600;color:var(--sub);margin:12px 0 0}
input,select{display:block;width:100%;margin-top:6px;font-size:16px;padding:12px 14px;border:1px solid #d9d4c7;border-radius:14px;background:#fffdf8;font-family:inherit;color:var(--ink)}
input:focus,select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 4px rgba(201,162,39,.2)}
button{font-family:inherit}
#go,.primary{border:none;cursor:pointer;width:100%;margin-top:14px;padding:14px;border-radius:14px;font-weight:600;font-size:16px;color:#fff;background:linear-gradient(135deg,#0e1525,#1c2740);box-shadow:0 8px 20px rgba(14,21,37,.18)}
#go:disabled,.primary:disabled{opacity:.5;cursor:not-allowed}
.link{display:block;margin:12px auto 0;background:none;border:none;cursor:pointer;font-size:13px;font-weight:600;color:var(--accent)}
.msg{min-height:20px;margin-top:10px;font-size:13px;font-weight:600;color:#b42318;line-height:1.4}
.msg.ok{color:var(--sub)}
.foot{margin-top:20px;font-size:11.5px;color:var(--sub);text-align:center}
.row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.row>*{flex:1 1 160px}
.people{margin-top:18px;border-top:1px solid var(--line)}
.person{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.person .who{min-width:0;flex:1 1 220px}
.person .who b{display:block;overflow-wrap:anywhere}
.person .who span{font-size:12px;color:var(--sub)}
.person select{width:auto;margin:0;padding:8px 10px;font-size:14px}
.small{font-size:12.5px;color:var(--sub);line-height:1.5}
.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.top a{font-size:14px;font-weight:600;color:var(--accent);text-decoration:none}
