.signup-panel{display:grid;grid-template-columns:minmax(260px,.42fr) minmax(0,.58fr);gap:22px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow-soft)}
.signup-copy{display:grid;gap:12px;align-content:start}
.signup-copy h2{margin-bottom:0}
.signup-copy p{color:var(--muted);font-size:16px;line-height:1.65}
.signup-form{display:grid;gap:18px;background:linear-gradient(180deg,#fbfdff,#fff);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 18px 46px rgba(7,27,54,.07)}
.signup-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.form-wide{grid-column:1/-1}
.form-field{display:grid;gap:8px;min-width:0;color:#30435b;font-size:13px;font-weight:900}
.form-field>span{display:flex;align-items:center;gap:7px}
.form-field input,.form-field select{width:100%;min-height:48px;border:1px solid var(--line-strong);border-radius:14px;background:#fff;color:var(--ink);padding:12px 14px;outline:0;box-shadow:0 1px 0 rgba(7,27,54,.03);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.form-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#65748a 50%),linear-gradient(135deg,#65748a 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 12px) 20px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:38px}
.form-field input:focus,.form-field select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(18,99,255,.12)}
.signup-check{display:flex;align-items:flex-start;gap:11px;color:#40516a;font-weight:760;line-height:1.55}
.signup-check input{width:20px;height:20px;flex:0 0 20px;margin-top:2px;accent-color:var(--blue)}
.signup-check a{color:var(--blue);font-weight:900}
.addon-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.addon-choice{position:relative;display:grid;gap:6px;min-height:144px;border:1px solid var(--line);border-radius:18px;background:#fff;padding:16px;cursor:pointer;box-shadow:0 10px 26px rgba(7,27,54,.045);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.addon-choice:hover{transform:translateY(-1px);border-color:#bed0e7;box-shadow:0 16px 34px rgba(7,27,54,.09)}
.addon-choice input{position:absolute;opacity:0;pointer-events:none}
.addon-choice b{color:var(--navy);font-size:15px}
.addon-choice small{color:var(--muted);font-size:13px;line-height:1.45}
.addon-choice strong{align-self:end;color:var(--blue);font-size:14px}
.addon-choice.is-selected,.addon-choice:has(input:checked){border-color:rgba(18,99,255,.52);background:#f7fbff;box-shadow:0 0 0 4px rgba(18,99,255,.08),0 16px 34px rgba(7,27,54,.08)}
.addon-choice.is-disabled{opacity:.58;cursor:not-allowed;transform:none}
.addon-choice.is-disabled:hover{transform:none;border-color:var(--line);box-shadow:0 10px 26px rgba(7,27,54,.045)}
.signup-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px}
.signup-actions p{margin:0;flex:1 1 320px;font-size:14px}
.signup-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.signup-summary span{display:grid;gap:2px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;color:#40516a}
.signup-summary b{color:var(--navy)}
.signup-disabled .btn{justify-self:start}
@media(max-width:980px){.signup-panel{grid-template-columns:1fr}.addon-choice-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.signup-panel{padding:18px;border-radius:22px}.signup-form-grid,.addon-choice-grid,.signup-summary{grid-template-columns:1fr}.signup-actions .btn{width:100%}}
