.callsign-dialog{box-sizing:border-box;margin:auto;inset:0;width:min(680px,94vw);max-height:94dvh;padding:0;border:1px solid #738064;border-radius:10px;background:linear-gradient(135deg,#1e3025,#101d18);color:#f1eed8;box-shadow:0 24px 90px #000b;font-family:'Chakra Petch',sans-serif;overflow:auto;touch-action:pan-y}.callsign-dialog::backdrop{background:#030b0ce8;backdrop-filter:blur(8px)}.callsign-dialog *{box-sizing:border-box;touch-action:pan-y}.callsign-form{padding:clamp(18px,3vw,30px);display:grid;gap:12px}.callsign-eyebrow{margin:0;color:#b9b583;font-size:11px;letter-spacing:2px}.callsign-form h2{font-family:'Barlow Condensed',sans-serif;font-size:clamp(28px,4vw,42px);margin:0;line-height:1}.callsign-copy,.callsign-help{margin:0;color:#aebbad;line-height:1.5;font-size:14px}.callsign-form label{font-size:12px;letter-spacing:1px;font-weight:700}.callsign-form input{font:700 22px 'Chakra Petch',sans-serif;color:#fff8d8;background:#09150f;border:1px solid #6e8067;border-radius:6px;padding:12px;min-height:48px;width:100%;touch-action:manipulation;user-select:text}.callsign-form input:focus{outline:2px solid #edbd57;outline-offset:2px}.callsign-help{font-size:12px}.callsign-status{min-height:22px;font-size:14px;margin:0;color:#c8cbb1}.callsign-status.is-error{color:#ffa99b}.callsign-status.is-available{color:#8ce9ac}.callsign-actions{display:flex;gap:12px;flex-wrap:wrap}.callsign-actions button{min-height:46px;padding:10px 18px;cursor:pointer;font:700 14px 'Chakra Petch',sans-serif;border-radius:5px;touch-action:manipulation}.callsign-primary{background:linear-gradient(#f6cc6a,#c8952d);color:#192419;border:1px solid #ffdf8c;flex:1}.callsign-solo{background:#1f3126;color:#c8d0b8;border:1px solid #62745b}.callsign-actions button:disabled{opacity:.5;cursor:wait}.callsign-dialog:focus-visible,.callsign-actions button:focus-visible{outline:2px solid #edbd57;outline-offset:3px}.match-ai-badge{position:fixed;top:clamp(48px,10vh,94px);left:50%;transform:translateX(-50%);z-index:40;pointer-events:none;background:#101b16e8;color:#f8cd66;border:1px solid #c89f42;border-radius:4px;padding:4px 10px;font:700 11px 'Chakra Petch',sans-serif;white-space:nowrap}.match-ai-badge[hidden]{display:none}@media(max-height:500px){.callsign-dialog{width:min(760px,94vw)}.callsign-form{gap:7px;padding:14px 22px}.callsign-form h2{font-size:30px}.callsign-copy{font-size:12px}.callsign-form input{font-size:19px;min-height:42px;padding:8px 12px}.callsign-actions button{min-height:42px}.callsign-help{font-size:11px}}

/* Typing: compact form pinned to the top, buttons beside the field (keyboard covers the bottom). */
.callsign-dialog.is-typing{margin:6px auto auto;max-height:none;width:min(900px,96vw)}
.callsign-dialog.is-typing .callsign-eyebrow,.callsign-dialog.is-typing .callsign-copy,.callsign-dialog.is-typing .callsign-help,.callsign-dialog.is-typing label{display:none}
.callsign-dialog.is-typing .callsign-form{grid-template-columns:minmax(0,1fr) auto auto;gap:6px 8px;padding:10px 14px;align-items:center}
.callsign-dialog.is-typing .callsign-form h2{grid-column:1/-1;grid-row:1;font-size:20px}
.callsign-dialog.is-typing .callsign-form input{grid-column:1;grid-row:2;min-height:44px;font-size:18px;padding:6px 10px}
.callsign-dialog.is-typing .callsign-actions{display:contents}
.callsign-dialog.is-typing .callsign-primary{grid-column:2;grid-row:2;flex:none;min-height:44px;padding:8px 14px}
.callsign-dialog.is-typing .callsign-solo{grid-column:3;grid-row:2;min-height:44px;padding:8px 12px}
.callsign-dialog.is-typing .callsign-status{grid-column:1/-1;grid-row:3;min-height:16px;font-size:12px}
.callsign-form:focus{outline:none}
