.generator-tools { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin:18px 0; }
.generator-tools .generator-mode-switch { margin:0; }
.vault-shortcut { text-decoration:none; white-space:normal; }
.generator-share-actions { display:flex; align-items:center; gap:14px; margin-top:16px; flex-wrap:wrap; }
.generator-share-actions p { flex:1; min-width:180px; margin:0; font-size:12px; line-height:1.65; color:var(--text-soft); }
.partner-mail-modal { display:flex; flex-direction:column; width:min(680px,100%); max-height:calc(100dvh - 48px); overflow:hidden; }
.partner-mail-modal .modal-head { flex:0 0 auto; align-items:flex-start; gap:20px; padding:24px; text-align:left; }
.partner-mail-modal .modal-head > div { min-width:0; flex:1; }
.partner-mail-modal .modal-head h2 { font-size:18px; line-height:1.4; }
.partner-mail-modal .modal-head p { margin:8px 0 0; font-size:12px; line-height:1.7; }
.partner-mail-modal .modal-close { position:static; flex:0 0 40px; width:40px; min-width:40px; height:40px; padding:0; transform:none; }
.partner-mail-modal .modal-body { min-height:0; max-height:none; flex:1 1 auto; overflow-y:auto; padding:24px; }
.partner-mail-context { margin:0 0 20px; overflow-wrap:anywhere; font-weight:600; }
.partner-mail-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.partner-mail-fields .field { min-width:0; margin:0; }
.partner-mail-fields .input, .partner-mail-fields .select { width:100%; min-width:0; }
.partner-mail-fields :is(.input,.select,.custom-select-trigger) { min-height:44px; font-size:12px; }
.partner-mail-test { margin:18px 0; padding:12px 14px; border:1px solid var(--border); border-radius:10px; background:var(--surface-soft); font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.partner-mail-copy { display:flex; gap:12px; align-items:flex-start; margin:18px 0; padding:12px 14px; border:1px solid var(--border); border-radius:10px; background:var(--surface-soft); font-size:12px; line-height:1.7; cursor:pointer; }
.partner-mail-copy input { flex:0 0 18px; width:18px; height:18px; margin:2px 0 0; accent-color:var(--accent); }
.partner-mail-copy input:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.partner-mail-copy > span { min-width:0; }
.partner-mail-copy strong { display:block; overflow-wrap:anywhere; font-weight:400; color:var(--text-soft); }
.partner-mail-preview-wrap { border:1px solid var(--border); border-radius:12px; padding:16px; background:var(--surface-soft); }
.partner-mail-preview-wrap h3 { margin:0 0 8px; font-size:13px; }
.partner-mail-preview-wrap strong { display:block; font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.partner-mail-preview { white-space:pre-wrap; overflow-wrap:anywhere; max-height:260px; overflow-y:auto; margin:12px 0 0; padding-right:6px; font:inherit; font-size:12px; line-height:1.8; color:var(--text-soft); }
.partner-mail-modal .security-feedback { margin-top:16px; overflow-wrap:anywhere; }
.partner-mail-modal .modal-actions { margin-top:20px; padding:18px 0 0; }
.batch-result-actions { flex-wrap:wrap; }
.partner-mail-state { display:block; margin-top:5px; font-size:11px; color:var(--text-soft); line-height:1.5; }
.partner-mail-state.is-warning { color:var(--warning,#e9bb78); }
#partner-view #partner-code-form { width:100%; min-width:0; display:grid; gap:12px; }
#partner-view #partner-code-form.hidden { display:none; }
#partner-view #partner-code-form label { color:#c3c8ce; font-size:12px; line-height:1.6; }
#partner-view #partner-code { width:100%; min-width:0; height:48px; padding:10px 14px; background:#111419; color:#fff; border:1px solid #545a61; border-radius:10px; text-align:center; font-size:22px; letter-spacing:.16em; }
#partner-view #partner-code:focus-visible { outline:2px solid #c3c8ce; outline-offset:3px; }
#partner-view #partner-code-submit { width:100%; min-height:46px; border:1px solid #e2e5e8; border-radius:10px; background:#e2e5e8; color:#171b1f; padding:12px 18px; white-space:normal; font-size:13px; }
#partner-view.is-awaiting-access #partner-reveal-btn.partner-code-resend { min-height:34px; background:transparent!important; border-color:#545a61!important; color:#c3c8ce!important; font-size:12px; }
@media(max-width:560px) { .partner-mail-fields { grid-template-columns:1fr; gap:16px; } .generator-tools { align-items:stretch; } .generator-share-actions .btn { width:100%; } .partner-mail-modal { max-height:calc(100dvh - 24px); } .partner-mail-modal .modal-head, .partner-mail-modal .modal-body { padding:20px 18px; } .partner-mail-modal .modal-actions { flex-wrap:wrap; } .partner-mail-preview-wrap { padding:14px; } }
