:root{--surface-background:#f8fafc;--card-background:hsla(0,0%,100%,.94);--card-border:rgba(148,163,184,.4);--text-primary:#0f172a;--text-secondary:#475569;--input-background:hsla(0,0%,100%,.9);--input-focus-background:hsla(0,0%,100%,.98);--input-border:rgba(148,163,184,.6);--input-border-strong:#2563eb;--input-placeholder:rgba(100,116,139,.7);--danger:#ef4444;--danger-surface:rgba(239,68,68,.12);--success:#16a34a;--info:#2563eb;--shadow-sm:0 10px 30px -12px rgba(15,23,42,.18);--shadow-inner:0 1px 0 hsla(0,0%,100%,.3);--field-helper-height:18px;--recipient-selected-bg:rgba(37,99,235,.12);--response-background:rgba(15,23,42,.08);--response-text:#0f172a;--table-border:rgba(148,163,184,.45);--table-cell-background:hsla(0,0%,100%,.96);--table-header-background:rgba(37,99,235,.12);--table-header-text:rgba(30,41,59,.85)}html.theme-light{color-scheme:light}html.theme-dark{color-scheme:dark;--surface-background:#0f172a;--card-background:rgba(15,23,42,.92);--card-border:rgba(71,85,105,.65);--text-primary:rgba(248,250,252,.95);--text-secondary:rgba(226,232,240,.72);--input-background:rgba(15,23,42,.85);--input-focus-background:rgba(15,23,42,.95);--input-border:rgba(100,116,139,.6);--input-border-strong:rgba(96,165,250,.9);--input-placeholder:rgba(148,163,184,.7);--shadow-sm:0 16px 36px -18px rgba(15,23,42,.7);--shadow-inner:0 1px 0 hsla(0,0%,100%,.06);--recipient-selected-bg:rgba(96,165,250,.18);--response-background:rgba(15,23,42,.86);--response-text:rgba(226,232,240,.96);--table-border:rgba(71,85,105,.65);--table-cell-background:rgba(15,23,42,.9);--table-header-background:rgba(59,130,246,.2);--table-header-text:rgba(226,232,240,.92)}@media (prefers-color-scheme:dark){html:not(.theme-light){color-scheme:dark;--surface-background:#0f172a;--card-background:rgba(15,23,42,.92);--card-border:rgba(71,85,105,.65);--text-primary:rgba(248,250,252,.95);--text-secondary:rgba(226,232,240,.72);--input-background:rgba(15,23,42,.85);--input-focus-background:rgba(15,23,42,.95);--input-border:rgba(100,116,139,.6);--input-border-strong:rgba(96,165,250,.9);--input-placeholder:rgba(148,163,184,.7);--shadow-sm:0 16px 36px -18px rgba(15,23,42,.7);--shadow-inner:0 1px 0 hsla(0,0%,100%,.06);--recipient-selected-bg:rgba(96,165,250,.18);--response-background:rgba(15,23,42,.86);--response-text:rgba(226,232,240,.96);--table-border:rgba(71,85,105,.65);--table-cell-background:rgba(15,23,42,.9);--table-header-background:rgba(59,130,246,.2);--table-header-text:rgba(226,232,240,.92)}}.rolodex-page{min-height:calc(100vh - 48px);display:flex;justify-content:center;padding:48px 24px 64px;background:radial-gradient(circle at 0 0,rgba(59,130,246,.08),transparent 55%),radial-gradient(circle at 100% 0,rgba(236,72,153,.08),transparent 55%),var(--surface-background)}.rolodex-card{width:100%;max-width:1024px;background:var(--card-background);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:28px;border:1px solid var(--card-border);box-shadow:var(--shadow-sm);padding:28px;display:flex;flex-direction:column;gap:20px;position:relative}@media (max-width:768px){.rolodex-page{padding:32px 16px 48px}.rolodex-card{border-radius:24px;padding:22px;gap:20px}}.rolodex-header{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;flex-wrap:wrap}.theme-toggle{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:9999px;border:1px solid var(--card-border);background:var(--surface-background);color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm);transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .2s ease}.theme-toggle:focus-visible,.theme-toggle:hover{background:rgba(148,163,184,.16);color:var(--text-primary);outline:none}.theme-toggle:active{transform:translateY(1px)}.theme-toggle svg{width:16px;height:16px}.rolodex-heading{display:flex;flex-direction:column;gap:8px;color:var(--text-primary);flex:1 1 auto}.rolodex-heading h1{margin:0;font-size:clamp(1.5rem,2vw + 1rem,1.75rem);font-weight:600}.rolodex-heading p{margin:0;color:var(--text-secondary);font-size:.95rem}.header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.header-actions .header-link{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:9999px;border:1px solid rgba(148,163,184,.35);font-weight:600;font-size:.95rem;text-decoration:none;background:rgba(148,163,184,.08);color:inherit;transition:transform .15s ease,box-shadow .2s ease}.header-actions .header-link:focus-visible,.header-actions .header-link:hover{transform:translateY(-1px);box-shadow:0 8px 18px -12px rgba(37,99,235,.6)}.header-actions .gmail-button{flex:0 1 auto}.header-actions .theme-toggle{flex:0 0 auto}@media (max-width:768px){.header-actions{width:100%;justify-content:flex-end}.header-actions .gmail-button{flex:1 1 auto;min-width:180px}}.gmail-button{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:9999px;border:none;font-weight:600;font-size:.95rem;color:#fff;background:linear-gradient(120deg,#2563eb,#1d4ed8);box-shadow:0 10px 20px -12px rgba(37,99,235,.8);cursor:pointer;position:relative;transition:transform .15s ease,box-shadow .2s ease}.gmail-button:active{transform:translateY(1px) scale(.99)}.gmail-button[disabled]{cursor:default;opacity:.75;box-shadow:none}.gmail-button.connected{background:rgba(22,163,74,.18);color:#16a34a;border:1px solid rgba(22,163,74,.5);box-shadow:none}.gmail-button .icon{display:inline-flex;align-items:center;justify-content:center}.gmail-tooltip{position:absolute;top:100%;right:0;margin-top:8px;padding:8px 10px;border-radius:8px;background:rgba(15,23,42,.92);color:#fff;font-size:.8rem;white-space:nowrap;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:10}.gmail-button:focus-visible .gmail-tooltip,.gmail-button:hover .gmail-tooltip{opacity:1;transform:translateY(0)}.rolodex-form{display:flex;flex-direction:column;gap:14px}.rolodex-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 16px;gap:12px 16px}@media (max-width:768px){.rolodex-form-grid{grid-template-columns:1fr}}.context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px 16px;gap:14px 16px}@media (max-width:768px){.context-grid{grid-template-columns:1fr}}.visually-hidden{clip:rect(0,0,0,0)}.rolodex-tabs{display:flex;flex-wrap:wrap;gap:8px}.tab-button{padding:9px 16px;border-radius:9999px;border:1px solid rgba(148,163,184,.45);background:transparent;color:var(--text-secondary);font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.tab-button:focus-visible,.tab-button:hover{background:rgba(37,99,235,.08);border-color:rgba(37,99,235,.35);color:var(--text-primary);outline:none}.tab-button.active{background:rgba(37,99,235,.16);border-color:rgba(37,99,235,.45);color:var(--text-primary)}.simple-form,.tab-panel{display:flex;flex-direction:column;gap:16px}.view-helper{margin:0;color:var(--text-secondary);font-size:.9rem}.recipients-block{display:flex;flex-direction:column;gap:10px}.recipients-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.recipients-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.recipient-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-left:auto}.select-all-control{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:.82rem;font-weight:500;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:4px 8px;border-radius:9999px;background:var(--surface-subtle)}.select-all-control input{width:16px;height:16px;cursor:pointer}.select-all-label{font-weight:600;color:var(--text-primary)}.load-contacts-button{min-width:150px}.recipient-placeholder{margin:4px 0 0;color:var(--text-secondary);font-size:.85rem}.import-form,.import-search-form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.import-search-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.import-search-row .text-input{flex:1 1 240px}.import-results-form{margin-top:16px}.import-results-section,.import-results-toolbar{gap:16px}.import-results-title{font-weight:600;color:var(--text-secondary)}.import-table-scroll{overflow:auto}.import-table{min-width:960px}.import-table td.editable-cell{padding:0;transition:box-shadow .2s ease}.import-table-input{display:block;width:100%;height:100%;padding:14px 20px;border:none;border-radius:0;background:transparent;color:inherit;font:inherit;line-height:inherit;cursor:text}.import-table-input:focus-visible{outline:none}.import-table td.editable-cell:focus-within{box-shadow:inset 0 0 0 2px rgba(37,99,235,.35)}.import-table-footer{align-items:center}.import-footer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-left:auto}.import-submit-button{display:inline-flex;align-items:center;gap:6px}.import-selection-helper{color:var(--text-secondary);font-size:.85rem}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);overflow:hidden;white-space:nowrap}.import-upload{display:flex;flex-direction:column;gap:8px}.import-upload-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.import-upload-button{cursor:pointer}.import-file-name{color:var(--text-secondary);font-size:.9rem}.import-file-name.empty{opacity:.7}.import-submit-row,.recipient-table-scroll{margin-top:4px}.recipient-table{min-width:960px}.table-section{display:flex;flex-direction:column;gap:12px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.table-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.table-search{flex:1 1 240px}.table-search-input{width:100%;padding:8px 12px;border-radius:10px;border:1px solid rgba(148,163,184,.4);background:var(--input-background);color:var(--text-primary);font-size:.95rem}.table-search-input:focus-visible{outline:2px solid rgba(37,99,235,.4);outline-offset:2px}.table-page-size{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.9rem}.table-page-size select{padding:6px 10px;border-radius:8px;border:1px solid rgba(148,163,184,.45);background:var(--input-background);color:var(--text-primary)}.table-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.table-summary{color:var(--text-secondary);font-size:.9rem}.pagination-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.page-button{padding:6px 12px;border-radius:8px;border:1px solid rgba(148,163,184,.45);background:var(--input-background);color:var(--text-secondary);font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.page-button:focus-visible,.page-button:hover{background:rgba(37,99,235,.1);border-color:rgba(37,99,235,.55);color:var(--text-primary);outline:none}.page-button.active{background:rgba(37,99,235,.16);border-color:rgba(37,99,235,.6);color:var(--text-primary)}.page-button:disabled{opacity:.5;cursor:not-allowed}.sort-button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:transparent;border:none;color:inherit;font-weight:600;cursor:pointer;padding:0}.sort-button:focus-visible,.sort-button:hover{color:var(--text-primary);outline:none}.sort-button .sort-indicator{font-size:.75rem;color:var(--text-secondary)}.sort-button.active .sort-indicator{color:var(--text-primary)}.empty-state-cell{text-align:center;padding:24px 16px;color:var(--text-secondary);font-size:.9rem}.import-table .select-header,.recipient-table .select-header{width:110px;text-align:center;color:var(--text-secondary)}.import-table .select-cell,.recipient-table .select-cell{text-align:center;padding-left:6px;padding-right:6px}.select-toggle{width:24px;height:24px;border-radius:6px;border:1px solid rgba(148,163,184,.45);background:var(--input-background);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.select-toggle:focus-visible,.select-toggle:hover{outline:none;border-color:rgba(37,99,235,.55);box-shadow:0 6px 16px -14px rgba(37,99,235,.8)}.select-toggle .select-indicator{width:10px;height:10px;border-radius:50%;background:transparent;border:2px solid rgba(148,163,184,.6);transition:background .2s ease,border-color .2s ease}.select-toggle.selected{border-color:rgba(37,99,235,.65);background:rgba(37,99,235,.12)}.select-toggle.selected .select-indicator{background:rgba(37,99,235,.9);border-color:rgba(37,99,235,.9)}.import-table tbody tr.selected,.recipient-table tbody tr.selected{background:var(--recipient-selected-bg)}.import-table tbody tr.selected .select-toggle,.recipient-table tbody tr.selected .select-toggle{border-color:rgba(37,99,235,.65)}.recipients-helper{margin-top:-4px;color:var(--text-secondary);font-size:.85rem}.email-composer-card{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid var(--card-border);border-radius:18px;background:var(--surface-background);box-shadow:var(--shadow-inner)}.composer-context{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.chip-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px;border-radius:12px;border:1px solid var(--card-border);background:var(--input-background);min-height:48px;transition:border-color .2s ease,box-shadow .2s ease}.chip-input.error{border-color:rgba(239,68,68,.7)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:9999px;background:rgba(148,163,184,.16);color:var(--text-secondary);font-size:.85rem;border:1px solid rgba(148,163,184,.4)}.chip.token{background:rgba(37,99,235,.1);color:var(--info);border-color:rgba(37,99,235,.4)}.chip.invalid{color:var(--danger);border-color:rgba(239,68,68,.7);background:var(--danger-surface)}.chip-remove{border:none;background:transparent;color:inherit;font-weight:600;cursor:pointer;padding:0;line-height:1}.chip-remove:focus-visible,.chip-remove:hover{color:var(--text-primary)}.chip-input-field{flex:1 1 160px;min-width:140px;border:none;outline:none;background:transparent;font-size:.95rem;color:var(--text-primary)}.chip-input-field::placeholder{color:var(--text-secondary)}.placeholder-toolbar{display:flex;flex-direction:column;gap:8px}.placeholder-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.placeholder-chip-row{display:flex;flex-wrap:wrap;gap:8px}.placeholder-chip{padding:6px 12px;border-radius:9999px;border:1px solid rgba(148,163,184,.45);background:var(--input-background);color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.placeholder-chip:focus-visible,.placeholder-chip:hover{outline:none;background:rgba(37,99,235,.12);border-color:rgba(37,99,235,.4);color:var(--text-primary)}.placeholder-chip.add{border-style:dashed;border-color:rgba(148,163,184,.5)}.composer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px}.composer-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.composer-actions-left,.composer-actions-right{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.preview-selector{display:flex;flex-direction:column;gap:4px;min-width:200px}.preview-selector label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.select-input{border-radius:12px;border:1px solid var(--card-border);background:var(--input-background);padding:10px 12px;color:var(--text-primary);font-size:.95rem}.preview-panel{border:1px solid var(--card-border);border-radius:14px;background:rgba(148,163,184,.08);padding:16px;display:flex;flex-direction:column;gap:12px}.preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-header h3{margin:0;font-size:1rem;font-weight:600}.preview-contact-name{font-size:.85rem;color:var(--text-secondary)}.preview-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:10px;gap:10px}.preview-meta-label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.preview-meta-value{font-size:.9rem;color:var(--text-primary)}.preview-body{margin:0;font-size:.95rem;line-height:1.5;white-space:pre-wrap;color:var(--text-primary)}.preview-response-email,.preview-response-subject{word-break:break-word;color:var(--text-primary)}.preview-response{margin-top:16px;display:flex;flex-direction:column;gap:12px}.preview-response-toolbar{display:flex;align-items:center;justify-content:space-between}.preview-response-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.preview-response-scroll{margin-top:4px}.preview-response-table{min-width:640px}.preview-response-actions-header,.preview-response-index-header{text-align:center}.preview-response-index{width:56px;text-align:center;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.preview-response-body{vertical-align:top;width:48%;min-width:320px}.preview-response-body-input{width:100%;min-height:160px;padding:10px 12px;border-radius:12px;border:1px solid var(--card-border);background:var(--input-background);color:var(--text-primary);font:inherit;font-size:.9rem;line-height:1.5;resize:vertical;box-shadow:inset var(--shadow-inner)}.preview-response-body-input:focus-visible{outline:none;border-color:var(--input-border-strong);background:var(--input-focus-background);box-shadow:0 0 0 3px rgba(37,99,235,.18)}.preview-response-actions-header{width:140px}.preview-response-send-cell{width:140px;text-align:center;vertical-align:middle}.preview-response-send-button{justify-content:center;gap:6px;padding:8px 14px;min-width:0}.preview-response-send-button .loader,.preview-response-send-icon{width:14px;height:14px}.preview-response-empty{padding:18px;text-align:center;border:1px dashed var(--table-border);background:var(--table-cell-background);color:var(--text-secondary);font-size:.9rem}.ai-results-panel{margin-top:20px;display:flex;flex-direction:column;gap:16px}.ai-results-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-results-header h3{margin:0;font-size:1rem;font-weight:600}.ai-results-actions{display:flex;flex-wrap:wrap;gap:10px}.ai-results-list{gap:16px}.ai-result,.ai-results-list{display:flex;flex-direction:column}.ai-result{border:1px solid var(--card-border);border-radius:16px;padding:16px;background:var(--surface-background);gap:12px}.ai-result.excluded{opacity:.65}.ai-result-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-result-header h4{margin:0;font-size:.95rem;font-weight:600}.ai-result-buttons{display:flex;gap:8px;flex-wrap:wrap}.ai-result-field{display:flex;flex-direction:column;gap:4px}.ai-result-label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.ai-result-body-text,.ai-result-value{font-size:.95rem;color:var(--text-primary)}.ai-result-body-text{margin:0;padding:10px;border-radius:12px;background:rgba(148,163,184,.12);white-space:pre-wrap}.ai-result-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.send-status{display:flex;align-items:flex-start;gap:8px;color:var(--text-secondary);font-size:.85rem}.send-status.success{color:var(--success)}.send-status.error{color:var(--danger)}.send-status-dot{width:10px;height:10px;border-radius:9999px;background:currentColor;margin-top:4px;flex-shrink:0}.send-status-text{display:flex;flex-direction:column;gap:2px}.send-status-message{font-weight:600;font-size:.85rem}.send-status-subtext{font-size:.75rem;color:inherit;opacity:.85}@media (max-width:640px){.composer-actions{flex-direction:column;align-items:stretch}.composer-actions-left,.composer-actions-right{justify-content:center}.preview-selector{width:100%}.recipients-toolbar{align-items:stretch;gap:10px}.recipient-controls{margin-left:0}.load-contacts-button{width:100%}}.field{display:flex;flex-direction:column;gap:6px;min-height:calc(var(--field-helper-height) + 56px);position:relative}.field.double{grid-column:span 2}.field-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.text-area,.text-input{width:100%;padding:14px 16px;border-radius:14px;border:1px solid var(--input-border);background:var(--input-background);color:var(--text-primary);font-size:1rem;line-height:1.45;box-shadow:var(--shadow-inner);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.text-area::placeholder,.text-input::placeholder{color:var(--input-placeholder)}.text-area:hover,.text-input:hover{box-shadow:var(--shadow-inner),0 6px 18px -18px rgba(15,23,42,.6)}.text-area:focus,.text-input:focus{outline:3px solid rgba(37,99,235,.28);outline-offset:2px;border-color:var(--input-border-strong);background:var(--input-focus-background)}.field.error .text-area,.field.error .text-input{border-color:rgba(239,68,68,.85);outline-color:rgba(239,68,68,.35)}.field.success .text-area,.field.success .text-input{border-color:rgba(22,163,74,.7)}.helper-text,.validation-text{font-size:.78rem;min-height:var(--field-helper-height);color:var(--text-secondary)}.helper-text.error,.validation-text.error{color:var(--danger)}.success-indicator{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--success);pointer-events:none;opacity:0;transition:opacity .2s ease}.field.success .success-indicator{opacity:1}.copy-button{position:absolute;right:44px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:6px;transition:background .15s ease}.copy-button:focus-visible,.copy-button:hover{background:rgba(148,163,184,.16);outline:none}.text-area{resize:vertical;min-height:160px}.action-row{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}@media (max-width:640px){.action-row{flex-direction:column;align-items:stretch}.action-row .button{width:100%}}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:transform .15s ease,box-shadow .2s ease,border-color .2s ease;background:rgba(37,99,235,.9);color:#fff;box-shadow:0 12px 28px -16px rgba(37,99,235,.9)}.button .button-icon{width:16px;height:16px}.button.secondary{background:rgba(148,163,184,.16);color:var(--text-primary);border-color:rgba(148,163,184,.32);box-shadow:none}.button.tertiary{background:transparent;color:var(--text-secondary);border-color:rgba(148,163,184,.45);box-shadow:none}.button.tertiary:focus-visible,.button.tertiary:hover{background:rgba(148,163,184,.16);color:var(--text-primary);outline:none}.button.ghost{background:transparent;color:rgba(37,99,235,.95);border-color:rgba(37,99,235,.45);box-shadow:none}.button:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}.button:not(:disabled):active{transform:translateY(1px)}.button.small{padding:8px 14px;font-size:.85rem;border-radius:10px}.gmail-send-button{gap:6px}.gmail-send-icon{width:16px;height:16px}.loader{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.toast-stack{position:fixed;top:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:9999}.toast{min-width:240px;padding:12px 14px;border-radius:14px;border:1px solid transparent;display:flex;align-items:center;gap:10px;font-size:.9rem;box-shadow:var(--shadow-sm);background:#fff;color:var(--text-primary)}.toast-close{margin-left:auto;background:transparent;border:none;color:inherit;font-size:1rem;cursor:pointer;line-height:1;padding:4px 6px;border-radius:6px;transition:background .15s ease}.toast-close:focus-visible,.toast-close:hover{background:rgba(15,23,42,.08);outline:none}.toast.success{border-color:rgba(34,197,94,.45);background:rgba(34,197,94,.16);color:rgba(22,101,52,.95)}.toast.info{border-color:rgba(59,130,246,.4);background:rgba(59,130,246,.16);color:rgba(30,64,175,.95)}.toast.error{border-color:rgba(239,68,68,.45);background:rgba(239,68,68,.12);color:rgba(127,29,29,.96)}@media (prefers-color-scheme:dark){.toast{background:rgba(15,23,42,.92);color:rgba(226,232,240,.92)}.toast-close:focus-visible,.toast-close:hover{background:rgba(148,163,184,.16)}.toast.success{background:rgba(34,197,94,.14);color:rgba(187,247,208,.95)}.toast.info{background:rgba(59,130,246,.14);color:rgba(191,219,254,.95)}.toast.error{background:rgba(239,68,68,.16);color:hsla(0,93%,94%,.96)}}.result-area{display:flex;flex-direction:column;gap:14px}.table-scroll{border:1px solid var(--table-border);border-radius:0;background:var(--table-cell-background)}.view-table{width:100%;border-collapse:collapse;min-width:960px}.view-table caption{caption-side:top;padding:12px 16px;font-size:.85rem;color:var(--text-secondary);text-align:left}.view-table td,.view-table th{padding:14px 20px;text-align:left;border:1px solid var(--table-border);color:var(--text-primary);font-size:.9rem;background:var(--table-cell-background)}.view-table thead th{background:var(--table-header-background);font-weight:600;color:var(--table-header-text)}.view-table a{color:rgba(37,99,235,.95);text-decoration:none}.view-table a:focus-visible,.view-table a:hover{text-decoration:underline;outline:none}.recipient-table .id-column,.view-table .id-column{width:140px;white-space:nowrap}.recipient-table .id-cell,.view-table .id-cell{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-secondary)}.engagement-cell{display:flex;align-items:center;gap:10px}.status-dot{width:12px;height:12px;border-radius:50%;background:rgba(148,163,184,.6);box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.35)}.status-dot.green{background:#16a34a}.status-dot.yellow{background:#f59e0b}.status-dot.red{background:#ef4444}.status-dot.gray{background:rgba(148,163,184,.6)}.status-text{font-size:.8rem;color:var(--text-secondary)}.inline-result{font-size:.9rem;color:var(--text-secondary);background:rgba(148,163,184,.12);border-radius:12px;padding:12px 16px}.rolodex-legal{margin-top:36px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-size:.85rem;color:var(--text-secondary)}.rolodex-legal-link{color:inherit;font-weight:600;text-decoration:none;transition:color .2s ease,-webkit-text-decoration-color .2s ease;transition:color .2s ease,text-decoration-color .2s ease;transition:color .2s ease,text-decoration-color .2s ease,-webkit-text-decoration-color .2s ease}.rolodex-legal-link:focus-visible,.rolodex-legal-link:hover{color:var(--text-primary);text-decoration:underline;outline:none}.rolodex-legal-divider{color:inherit}@media (max-width:640px){.toast-stack{right:16px;left:16px;align-items:stretch}.toast{width:100%}}@media (max-width:480px){.rolodex-page{padding-bottom:96px}}.cover-letter-page{background:var(--surface-background)}.cover-letter-card{gap:24px}.cover-letter-embedded-heading{display:flex;flex-direction:column;gap:6px;color:var(--text-primary)}.cover-letter-embedded-heading h2{font-size:1.4rem;font-weight:700;margin:0}.cover-letter-embedded-heading p{margin:0;color:var(--text-secondary)}.cover-letter-layout{display:grid;grid-gap:20px;gap:20px}@media (min-width:1024px){.cover-letter-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}}.cover-letter-section{display:flex;flex-direction:column;gap:16px;border:1px solid var(--card-border);border-radius:20px;background:var(--surface-background);padding:20px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.45)}@media (max-width:768px){.cover-letter-section{border-radius:18px;padding:18px;gap:14px}}.section-heading{display:flex;flex-direction:column;gap:4px}.section-heading h3,.section-heading h4{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.section-heading p{margin:0;color:var(--text-secondary);font-size:.95rem}.cover-letter-info-grid{display:grid;grid-gap:12px;gap:12px}@media (min-width:720px){.cover-letter-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.cover-letter-draft-editor,.cover-letter-file,.cover-letter-info-grid label,.cover-letter-textarea{display:flex;flex-direction:column;gap:6px;color:var(--text-primary);font-weight:600}.cover-letter-draft-editor textarea,.cover-letter-info-grid input,.cover-letter-textarea textarea{border-radius:14px;border:1px solid var(--input-border);background:var(--input-background);color:var(--text-primary);padding:10px 12px;font:inherit;resize:vertical;min-height:44px}.cover-letter-draft-editor textarea,.cover-letter-textarea textarea{line-height:1.5}.cover-letter-draft-editor textarea:focus,.cover-letter-info-grid input:focus,.cover-letter-textarea textarea:focus{outline:none;border-color:var(--input-border-strong);background:var(--input-focus-background);box-shadow:0 0 0 2px rgba(37,99,235,.15)}.cover-letter-info-grid input::placeholder,.cover-letter-textarea textarea::placeholder{color:var(--input-placeholder)}.cover-letter-file-detail{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--text-secondary);font-size:.9rem}.cover-letter-actions{display:flex;flex-wrap:wrap;gap:10px}.cover-letter-actions .button,.cover-letter-actions .button.secondary,.cover-letter-actions .button.tertiary{min-width:0}.cover-letter-warning-list{margin:0;padding-left:20px;color:var(--danger);font-weight:600;font-size:.9rem}.draft-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}draft-toolbar label{display:flex;flex-direction:column;gap:4px;font-weight:600;color:var(--text-primary)}.draft-toolbar select{border-radius:12px;border:1px solid var(--input-border);background:var(--input-background);color:var(--text-primary);padding:8px 12px;font:inherit}.draft-toolbar select:focus{outline:none;border-color:var(--input-border-strong);background:var(--input-focus-background);box-shadow:0 0 0 2px rgba(37,99,235,.15)}.cover-letter-draft-editor textarea{min-height:260px}.draft-meta{display:flex;flex-wrap:wrap;gap:20px}.draft-meta .meta-label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:4px}draft-meta strong{font-size:1rem;color:var(--text-primary)}.cover-letter-result{border-top:1px solid var(--card-border);padding-top:14px;display:flex;flex-direction:column;gap:8px}.cover-letter-result pre{margin:0;padding:12px;border-radius:12px;background:rgba(148,163,184,.14);font-size:.85rem;overflow-x:auto}.cover-letter-result a{color:var(--info);font-weight:600}.table-scroll{overflow:auto;border-radius:16px}.cover-letter-page .view-table-caption{text-transform:none}.cover-letter-page .view-table td,.cover-letter-page .view-table th{font-size:.92rem}