.modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:2rem;max-width:450px;width:100%;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--color-text-dim);font-size:32px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.modal-close:hover{color:var(--color-text)}.modal-title{font-size:24px;font-weight:700;color:var(--color-text);margin-bottom:.5rem;font-family:var(--font-sans);letter-spacing:-.02em}.modal-description{font-size:15px;color:var(--color-text-dim);margin-bottom:2rem;font-family:var(--font-sans);line-height:1.5}.modal-input{width:100%;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:.875rem 1rem;color:var(--color-text);font-family:var(--font-sans);font-size:15px;outline:none;transition:border-color .2s ease;margin-bottom:1rem}.modal-input:focus{border-color:var(--color-accent-ai)}.modal-input:disabled{opacity:.5;cursor:not-allowed}.modal-input::placeholder{color:var(--color-text-dim)}.modal-section{margin-bottom:1.75rem}.modal-section-label{display:block;font-family:var(--font-sans);font-size:.95rem;font-weight:600;color:var(--color-text);margin-bottom:.85rem}.modal-assistant-options{display:flex;flex-wrap:wrap;gap:.6rem}.assistant-choice{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border:1px solid var(--color-border);border-radius:999px;font-family:var(--font-sans);font-size:.9rem;color:var(--color-text);cursor:pointer;transition:border-color .2s ease,background .2s ease}.assistant-choice input{accent-color:var(--color-accent-ai)}.assistant-choice--selected{background:#10a37f1f;border-color:#10a37f59}.assistant-tier{margin-top:.9rem;padding-left:.5rem;border-left:2px solid rgba(16,163,127,.35);display:flex;flex-direction:column;gap:.6rem}.assistant-tier-label{font-family:var(--font-sans);font-size:.9rem;color:var(--color-text-dim)}.assistant-tier-options{display:flex;flex-wrap:wrap;gap:.5rem}.assistant-tier-option{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .75rem;border:1px solid var(--color-border);border-radius:999px;font-family:var(--font-sans);font-size:.85rem;color:var(--color-text);cursor:pointer;transition:border-color .2s ease,background .2s ease}.assistant-tier-option input{accent-color:var(--color-accent-ai)}.assistant-tier-option--active{border-color:#10a37f73;background:#10a37f24}.assistant-other-input{width:100%;margin-top:.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:.65rem .9rem;color:var(--color-text);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:border-color .2s ease}.assistant-other-input:focus{border-color:var(--color-accent-ai)}.modal-error{color:#ef4444;font-size:13px;margin-bottom:1rem;font-family:var(--font-sans)}.modal-button{width:100%;background:var(--color-accent);color:var(--color-bg);border:none;padding:.875rem 1.5rem;font-size:15px;font-weight:600;border-radius:8px;cursor:pointer;font-family:var(--font-sans);letter-spacing:-.01em;transition:opacity .2s ease}.modal-button:hover:not(:disabled){opacity:.9}.modal-button:disabled{opacity:.6;cursor:not-allowed}.modal-success{text-align:center;padding:2rem 1rem}.success-icon{width:64px;height:64px;border-radius:50%;background:var(--color-accent-ai);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 1.5rem;animation:scaleIn .4s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.modal-success h2{font-size:24px;font-weight:700;color:var(--color-text);margin-bottom:.5rem;font-family:var(--font-sans)}.modal-success p{font-size:15px;color:var(--color-text-dim);font-family:var(--font-sans)}@media (max-width: 640px){.modal-content{padding:1.5rem}.modal-title{font-size:20px}.modal-description{font-size:14px}.assistant-tier{padding-left:0;border-left:none}}
