/* eval.azref.com — same family as request.azref.com, the mentor site and the ROC (navy / gold, Oswald + Inter, light and dark) */
:root{ --navy:#1B2652; --navy-2:#2C3B74; --gold:#F2C230; --red:#A8242F; --bg:#EEF1F5; --surface:#fff; --ink:#16233F; --muted:#5B6472; --line:#DDE2EA;
       --field:#fff; --bad:#A8242F; --bad-wash:#FDE9E4; --good:#14603A; --good-wash:#E3F4EA; --note:#FFF6DB; --chip:#EFF1F6; }
@media (prefers-color-scheme: dark){ :root{ --bg:#0E1526; --surface:#16213B; --ink:#EDF1F8; --muted:#9AA5BD; --line:#2A3757; --field:#0F1830;
       --bad:#FF9AA2; --bad-wash:rgba(255,154,162,.12); --good:#7BE0A6; --good-wash:rgba(61,190,122,.14); --note:rgba(242,194,48,.12); --chip:#1C2847; } }
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{ margin:0; min-height:100vh; background:var(--bg); color:var(--ink); font:15px/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
      display:flex; flex-direction:column; align-items:center; padding:24px 16px 48px; }
.testbar{ width:100%; max-width:640px; margin:0 0 10px; background:var(--note); border:1px dashed var(--gold); border-radius:12px; padding:8px 12px; font-size:13px; }
.card{ width:100%; max-width:640px; background:var(--surface); border:1px solid var(--line); border-radius:20px; overflow:hidden;
       box-shadow:0 20px 50px -24px rgba(16,24,48,.45); }
.top{ background:linear-gradient(135deg,var(--navy),var(--navy-2)); color:#F3F6FC; padding:22px; display:flex; gap:14px; align-items:center; }
.top img{ width:64px; height:64px; flex:none; }
.eyebrow{ font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:#A9B7D6; }
h1, h2, legend, .oswald{ font-family:Oswald,"Arial Narrow",Inter,sans-serif; }
h1{ margin:2px 0 0; font-size:26px; line-height:1.15; font-weight:600; letter-spacing:.01em; }
.tag{ display:inline-block; margin-top:8px; font-size:11.5px; font-weight:800; letter-spacing:.08em; color:#1B2652; background:var(--gold); border-radius:999px; padding:2px 10px; }
.body{ padding:20px 22px 24px; }
.body > section > p{ margin:0 0 14px; }
.lead{ color:var(--muted); }
form{ display:grid; gap:18px; }
fieldset{ border:0; margin:0; padding:0; display:grid; gap:12px; min-width:0; }
legend{ font-size:15px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--ink); margin-bottom:8px; padding:0; }
legend .n{ display:inline-grid; place-items:center; width:24px; height:24px; border-radius:999px; background:var(--gold); color:#1B2652; font-size:13px; margin-right:6px; }
.sect{ border-top:1px solid var(--line); padding-top:18px; }
.two{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
label{ display:grid; gap:5px; font-weight:650; font-size:14px; min-width:0; }
.req::after{ content:" *"; color:var(--bad); }
.hint{ font-weight:400; font-size:12.5px; color:var(--muted); }
.qlabel{ font-weight:650; font-size:14px; margin-bottom:6px; }
input, select, textarea{ font:inherit; color:var(--ink); background:var(--field); border:1px solid var(--line); border-radius:10px; padding:11px 12px; width:100%; min-height:46px; min-width:0; }
textarea{ min-height:84px; resize:vertical; }
input:focus, select:focus, textarea:focus{ outline:3px solid rgba(242,194,48,.55); outline-offset:1px; border-color:var(--navy-2); }
[aria-invalid="true"]{ border-color:var(--bad) !important; }
.chips{ display:flex; flex-wrap:wrap; gap:8px; }
.chip{ display:inline-flex; align-items:center; gap:6px; border:1.5px solid var(--line); background:var(--chip); border-radius:999px; padding:8px 14px;
       font-weight:650; font-size:14px; cursor:pointer; min-height:42px; user-select:none; position:relative; }
.chip input{ position:absolute; opacity:0; width:1px; height:1px; pointer-events:none; }
.chip:has(input:checked){ background:var(--navy-2); border-color:var(--navy-2); color:#fff; }
@media (prefers-color-scheme: dark){ .chip:has(input:checked){ background:var(--gold); border-color:var(--gold); color:#1B2652; } }
.chip:has(input:focus-visible){ outline:3px solid rgba(242,194,48,.55); }
.chips.bad .chip{ border-color:var(--bad); }
.kinds{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.kind{ display:grid; gap:2px; border:1.5px solid var(--line); background:var(--chip); border-radius:14px; padding:12px 14px; cursor:pointer; position:relative; }
.kind input{ position:absolute; opacity:0; width:1px; height:1px; pointer-events:none; }
.kind b{ font-family:Oswald,Inter,sans-serif; font-size:18px; font-weight:600; letter-spacing:.02em; }
.kind span{ font-size:12.5px; color:var(--muted); font-weight:500; }
.kind:has(input:checked){ border-color:var(--navy-2); box-shadow:0 0 0 3px rgba(242,194,48,.45); background:var(--surface); }
.kind:has(input:focus-visible){ outline:3px solid rgba(242,194,48,.55); }
.other{ margin-top:8px; }
button{ font:inherit; font-weight:800; font-size:16px; border:0; border-radius:12px; padding:14px 16px; background:var(--gold); color:#1B2652; cursor:pointer; min-height:50px; }
button.ghost{ background:transparent; border:1.5px solid var(--line); color:var(--ink); font-size:14.5px; min-height:44px; padding:10px 14px; }
button[disabled]{ opacity:.6; cursor:progress; }
.check{ display:flex; gap:10px; align-items:flex-start; font-weight:600; }
.check input{ width:22px; height:22px; min-height:0; flex:none; margin-top:2px; accent-color:#2C3B74; }
.msg{ border-radius:12px; padding:11px 12px; font-size:14px; }
.msg.bad{ background:var(--bad-wash); color:var(--bad); }
.msg.good{ background:var(--good-wash); color:var(--good); }
.msg.note{ background:var(--note); color:var(--ink); }
[hidden]{ display:none !important; }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.foot{ margin-top:18px; font-size:12.5px; color:var(--muted); }
.foot a{ color:inherit; }
details.crew{ border:1px solid var(--line); border-radius:12px; padding:10px 12px; }
details.crew summary{ cursor:pointer; font-weight:650; font-size:14px; }
details.crew .two{ margin-top:10px; }
/* fees */
.fees{ width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; font-size:14px; }
.fees th, .fees td{ padding:8px 10px; text-align:left; border-bottom:1px solid var(--line); }
.fees tr:last-child td{ border-bottom:0; }
.fees th{ background:var(--chip); font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.fees td.num{ font-weight:800; font-variant-numeric:tabular-nums; }
/* review */
.review{ display:grid; gap:14px; }
.sum{ border:1px solid var(--line); border-radius:14px; padding:14px; display:grid; gap:6px; font-size:14px; }
.sum .row{ display:flex; gap:10px; justify-content:space-between; }
.sum .row span:first-child{ color:var(--muted); }
.sum .row span:last-child{ text-align:right; font-weight:600; overflow-wrap:anywhere; }
.total{ display:flex; justify-content:space-between; align-items:baseline; border-top:1px solid var(--line); padding-top:10px; margin-top:4px; }
.total b{ font-family:Oswald,Inter,sans-serif; font-size:30px; font-weight:600; }
.rate{ display:inline-block; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; border-radius:999px; padding:2px 10px; background:var(--chip); }
.paybtn{ display:block; text-align:center; text-decoration:none; font-weight:800; font-size:17px; border-radius:12px; padding:15px 16px; background:var(--gold); color:#1B2652; }
.done{ text-align:center; padding:8px 0 4px; }
.done .big{ font-size:44px; line-height:1; }
.done h2{ margin:8px 0 6px; font-size:24px; font-weight:600; }
.done .ref{ display:inline-block; font-weight:800; font-size:18px; letter-spacing:.04em; background:var(--chip); border-radius:10px; padding:4px 12px; margin:4px 0 10px; }
.steps{ text-align:left; margin:12px auto 0; max-width:440px; padding-left:20px; }
.steps li{ margin:4px 0; }
@media (max-width:480px){ .two, .kinds{ grid-template-columns:1fr; } h1{ font-size:22px; } .body{ padding:18px 16px 22px; } .top{ padding:18px 16px; } .top img{ width:52px; height:52px; } body{ padding:12px 10px 32px; } }
