.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.refer-section{padding:clamp(40px,5vw,80px) 0;background:var(--paper);min-height:70vh}.refer-wrap{width:100%;max-width:700px;margin:0 auto;padding:0 24px}.refer-head{margin-bottom:28px}.refer-back{display:inline-block;margin-bottom:16px;color:var(--ink-soft);font-size:14px;text-decoration:none;font-weight:600}.refer-back:hover{color:var(--ink)}.refer-head h1{font-size:clamp(28px,3vw,38px);margin:0 0 8px;letter-spacing:-.01em}.refer-head p{color:var(--ink-soft);margin:0;font-size:15px}.refer-steps{list-style:none;margin:0 0 32px;display:flex;gap:4px;flex-wrap:wrap;background:var(--white);border:1px solid var(--rule-soft);border-radius:var(--radius-md);padding:6px}.refer-steps li{flex:1;min-width:80px;display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:12px;font-weight:700;color:var(--ink-soft);border-radius:8px;text-transform:uppercase;letter-spacing:.06em}.refer-steps li span{width:22px;height:22px;border-radius:50%;background:var(--cream);color:var(--ink-soft);display:grid;place-items:center;font-size:11px;font-weight:800}.refer-steps li.active{background:var(--ink);color:var(--paper)}.refer-steps li.active span{background:var(--terracotta);color:var(--paper)}.refer-steps li.done{color:var(--ink)}.refer-steps li.done span{background:var(--ink);color:var(--paper)}.refer-form{background:var(--white);border:1px solid var(--rule-soft);border-radius:var(--radius-lg);padding:clamp(24px,4vw,40px);box-shadow:var(--shadow-card)}.refer-step{display:none}.refer-step.active{display:block}.refer-step h2{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0 0 6px}.refer-step .step-help{color:var(--ink-soft);font-size:14px;margin:0 0 24px}.field{display:block;margin-bottom:16px}.field>span{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:var(--ink)}.field .req{font-style:normal;color:var(--terracotta);font-weight:700;font-size:11px;margin-left:6px;letter-spacing:.06em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--white);font-family:var(--sans);font-size:15px;color:var(--ink)}.field textarea{resize:vertical;font-family:var(--sans)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink)}.field .hint{display:block;font-size:12px;color:var(--ink-soft);margin-top:6px}.grid-2{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 600px){.grid-2{grid-template-columns:1fr 1fr}}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;border:2px dashed var(--rule);border-radius:var(--radius-md);background:var(--cream);cursor:pointer;text-align:center;transition:border-color .15s,background .15s;color:var(--ink-soft)}.upload-zone:hover,.upload-zone.drag{border-color:var(--ink);background:var(--white)}.upload-zone.has-file{background:var(--white);border-style:solid;border-color:var(--ink);color:var(--ink)}.upload-zone-text{display:block;margin-top:12px;font-weight:700;font-size:15px;color:var(--ink)}.upload-zone-hint{display:block;margin-top:6px;font-size:12px;color:var(--ink-soft)}.review-card{background:var(--cream);border:1px solid var(--rule-soft);border-radius:var(--radius-md);padding:20px;margin-bottom:8px}.review-section{padding:12px 0;border-bottom:1px solid var(--rule-soft)}.review-section:last-child{border-bottom:0}.review-section h4{margin:0 0 8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.review-section p{margin:0;font-size:14px;line-height:1.5;color:var(--ink)}.refer-status{padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:16px;font-size:14px}.refer-status.error{background:#fff1ed;color:var(--terracotta);border:1px solid var(--terracotta)}.step-actions{margin-top:24px;display:flex;justify-content:space-between;align-items:center;gap:12px}.ghost-back{background:none;border:none;color:var(--ink-soft);font-size:14px;font-weight:600;cursor:pointer;padding:8px 0;font-family:var(--sans)}.ghost-back:hover{color:var(--ink)}.done-ico{width:56px;height:56px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-size:28px;font-weight:800;margin-bottom:18px}.magic-card{background:var(--cream);border:1px solid var(--rule-soft);border-radius:var(--radius-md);padding:24px;margin-top:16px}.magic-label{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);display:block;margin-bottom:8px}.magic-row{display:flex;gap:8px}.magic-row input{flex:1;padding:10px 14px;border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--white);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--ink)}.btn-mini{padding:10px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--ink);background:var(--white);color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;font-family:var(--sans);white-space:nowrap}.btn-mini:hover{background:var(--ink);color:var(--paper)}.magic-actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
