.nexarank-tool{--nr-blue:#2563eb;--nr-ink:#172033;--nr-muted:#5e6878;--nr-border:#dbe3ef;--nr-soft:#f5f8fc;background:#fff;border:1px solid var(--nr-border);border-radius:20px;box-shadow:0 16px 40px rgba(22,36,60,.08);color:var(--nr-ink);margin:1.5rem 0;overflow:hidden}
.nexarank-tool *{box-sizing:border-box}
.nexarank-tool-header{align-items:flex-start;background:linear-gradient(135deg,#eff6ff,#f5f3ff);display:flex;gap:1rem;justify-content:space-between;padding:1.35rem clamp(1rem,3vw,2rem)}
.nexarank-tool-header h2{font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.2;margin:.15rem 0 0}
.nexarank-eyebrow{color:var(--nr-blue);font-size:.75rem;font-weight:800;letter-spacing:.09em;margin:0;text-transform:uppercase}
.nexarank-tool-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.65rem}.nexarank-tool-meta span{background:#fff;border:1px solid var(--nr-border);border-radius:999px;color:#475569;font-size:.72rem;font-weight:700;padding:.3rem .55rem}
.nexarank-private-badge{background:#dcfce7;border:1px solid #a7f3d0;border-radius:999px;color:#166534;font-size:.75rem;font-weight:700;padding:.45rem .7rem;white-space:nowrap}
.nexarank-form{padding:clamp(1rem,3vw,2rem)}
.nexarank-fields{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.nexarank-field:has(textarea){grid-column:1/-1}
.nexarank-field label{display:block;font-size:.91rem;font-weight:700;margin:0 0 .42rem}
.nexarank-optional{color:var(--nr-muted);font-size:.8rem;font-weight:500}
.nexarank-input-wrap{align-items:stretch;background:#fff;border:1px solid #cbd5e1;border-radius:10px;display:flex;min-height:46px;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.nexarank-input-wrap:focus-within{border-color:var(--nr-blue);box-shadow:0 0 0 3px rgba(37,99,235,.14)}
.nexarank-input-wrap input,.nexarank-input-wrap select,.nexarank-input-wrap textarea{background:transparent;border:0;border-radius:0;color:var(--nr-ink);font:inherit;min-width:0;outline:0;padding:.72rem .8rem;width:100%}
.nexarank-input-wrap textarea{line-height:1.55;min-height:118px;resize:vertical}
.nexarank-input-affix{align-items:center;background:#f1f5f9;color:#475569;display:flex;font-size:.86rem;padding:0 .7rem}
.nexarank-field-error{color:#b91c1c;font-size:.82rem;margin:.35rem 0 0}
.nexarank-field.is-invalid .nexarank-input-wrap{border-color:#dc2626}
.nexarank-actions,.nexarank-result-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.15rem}
.nexarank-button,.nexarank-copy-button,.nexarank-download-button{border:0;border-radius:10px;cursor:pointer;font:inherit;font-weight:750;padding:.76rem 1rem}
.nexarank-button-primary{background:var(--nr-blue);color:#fff}
.nexarank-button-primary:hover{background:#1d4ed8}
.nexarank-button-secondary,.nexarank-copy-button,.nexarank-download-button{background:#eaf0f8;color:#1e3a5f}
.nexarank-button:focus-visible,.nexarank-copy-button:focus-visible,.nexarank-download-button:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}
.nexarank-error-summary{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;margin-bottom:1rem;padding:.8rem 1rem}
.nexarank-results{background:var(--nr-soft);border-top:1px solid var(--nr-border);padding:clamp(1rem,3vw,2rem)}
.nexarank-result-primary{background:#fff;border-left:4px solid var(--nr-blue);border-radius:12px;padding:1rem 1.1rem}
.nexarank-result-label,.nexarank-output-label{color:var(--nr-muted);font-size:.78rem;font-weight:800;letter-spacing:.06em;margin:0;text-transform:uppercase}
.nexarank-result-value{font-size:clamp(1.35rem,4vw,2.1rem);font-weight:850;line-height:1.2;margin:.25rem 0 0;overflow-wrap:anywhere}
.nexarank-result-metrics{display:grid;gap:.7rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.8rem}
.nexarank-metric{background:#fff;border:1px solid var(--nr-border);border-radius:10px;padding:.75rem}
.nexarank-metric-label{color:var(--nr-muted);display:block;font-size:.76rem;font-weight:700}
.nexarank-metric-value{display:block;font-weight:800;margin-top:.2rem;overflow-wrap:anywhere}
.nexarank-result-list{background:#fff;border:1px solid var(--nr-border);border-radius:10px;margin:.8rem 0 0;padding:1rem 1rem 1rem 2rem}
.nexarank-result-list li+li{margin-top:.45rem}
.nexarank-output-wrap{margin-top:.9rem}
.nexarank-output{background:#111827;border-radius:12px;color:#e5edf8;font-size:.84rem;line-height:1.55;margin:.4rem 0 0;max-height:360px;overflow:auto;padding:1rem;white-space:pre-wrap;word-break:break-word}
.nexarank-result-note,.nexarank-action-status{color:var(--nr-muted);font-size:.86rem;margin:.8rem 0 0}
.nexarank-privacy-note{border-top:1px solid var(--nr-border);color:var(--nr-muted);font-size:.78rem;margin:0;padding:.75rem clamp(1rem,3vw,2rem)}
.nexarank-notice{background:#fff7ed;border-left:4px solid #f97316;padding:.8rem 1rem}
.nexarank-notice-error{background:#fef2f2;border-color:#dc2626;color:#991b1b}
.nexarank-education{margin:2rem 0}
.nexarank-method{background:#f8fafc;border-left:4px solid var(--nr-blue);padding:1rem}
.nexarank-opportunity-note{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;color:#713f12;padding:.8rem 1rem}
.nexarank-faq-item{border-bottom:1px solid var(--nr-border);padding:.8rem 0}
.nexarank-faq-item summary{cursor:pointer;font-weight:750}
@media (max-width:720px){.nexarank-fields,.nexarank-result-metrics{grid-template-columns:1fr}.nexarank-tool-header{display:block}.nexarank-private-badge{display:inline-block;margin-top:.8rem}.nexarank-button,.nexarank-copy-button,.nexarank-download-button{flex:1 1 auto}.nexarank-field:has(textarea){grid-column:auto}}
@media (prefers-reduced-motion:reduce){.nexarank-input-wrap{transition:none}}
