:root{--bg-deep: #0a2b46;--bg-mid: #16629d;--bg-glow: #1a6ea9;--surface: #f4f8fb;--surface-soft: #eef4f9;--text: #122334;--muted: #2e4660;--border: #d3e0ea;--primary: #0f4c81;--primary-strong: #083b66;--primary-soft: #e8f2f9;--primary-glow: #67add5;--accent: #2a8f8f;--accent-strong: #1f6b6b;--danger: #b43b3b;--font-display: "Cormorant Garamond", "Times New Roman", serif;--font-ui: "Source Sans 3", "Trebuchet MS", "Segoe UI", sans-serif;--radius-card: 18px;--radius-pill: 999px;--shadow-brand: 0 18px 38px rgba(10, 43, 70, .16);--shadow-brand-soft: 0 18px 36px rgba(18, 35, 52, .12);--motion-fast: .12s;--motion-in: .38s}*{box-sizing:border-box}body{margin:0;font-family:var(--font-ui);color:var(--text);background:radial-gradient(circle at 84% 12%,#1a6ea952,#1a6ea900 34%),radial-gradient(circle at 10% -12%,#67add52e,#67add500 38%),linear-gradient(140deg,var(--bg-deep) 0%,var(--bg-mid) 58%,var(--bg-glow) 100%);min-height:100vh}.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:18px;margin-bottom:16px;box-shadow:var(--shadow-brand-soft)}.shell{max-width:1280px;margin:0 auto;padding:22px 18px 28px}.hero{display:flex;gap:16px;padding:18px;margin-bottom:16px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-brand-soft)}.hero-badge{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(160deg,var(--primary) 0%,var(--bg-glow) 100%);color:#f5f1eb;border:1px solid rgba(245,241,235,.28);box-shadow:inset 0 0 0 1px #c8a96e33;font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:.04em;flex-shrink:0}.eyebrow{margin:0 0 4px;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}h1,h2{margin:0 0 8px;font-family:var(--font-display);letter-spacing:.02em}h1{font-size:clamp(1.7rem,3vw,2.3rem)}.muted{margin:0;color:var(--muted)}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.tab{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:var(--radius-pill);text-decoration:none;color:var(--primary);background:var(--primary-soft);border:1px solid var(--border);font-weight:700;transition:transform var(--motion-fast) ease,filter var(--motion-fast) ease}.tab:hover{transform:translateY(-1px);filter:brightness(1.03)}.tab.active{background:linear-gradient(145deg,var(--primary) 0%,var(--bg-glow) 100%);color:#f6f2ea}.embed-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-brand-soft);overflow:hidden}.admin-tool-card{display:grid;gap:18px;margin-bottom:14px;padding:18px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,#efe6d7db,#f8f3eae6),var(--surface);box-shadow:var(--shadow-brand-soft)}.admin-overview-card{display:grid;gap:18px;margin-bottom:14px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-brand-soft)}.dashboard-overview-card{display:grid;gap:16px;margin-bottom:14px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-brand-soft)}.dashboard-pill-row{display:flex;flex-wrap:wrap;gap:8px}.dashboard-login-grid,.dashboard-lookup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-report-card{display:grid;gap:12px;padding:14px;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5b8}.dashboard-report-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dashboard-report-header h3{margin:0 0 6px}.dashboard-summary-grid{display:grid;gap:6px}.dashboard-summary-row{margin:0;color:var(--text);line-height:1.5}.admin-fallback-card{display:grid;gap:12px;margin-bottom:14px;padding:16px 18px;border:1px solid rgba(200,169,110,.34);border-radius:18px;background:#fffbf5bd;box-shadow:var(--shadow-brand-soft)}.admin-toast-stack{display:grid;gap:8px}.admin-toast{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(200,169,110,.34);border-radius:12px;background:#fffbf5e6}.admin-toast p{margin:0;font-size:.9rem;line-height:1.4}.admin-toast-success{border-color:#2a7a526b;background:#e8f8eee0;color:#1d6040}.admin-toast-error{border-color:#b33a3a73;background:#fff1f1e6;color:#8e2929}.admin-toast-info{border-color:#c8a96e6b;background:#fffbf5e6;color:var(--primary)}.admin-toast-close{border:0;background:transparent;color:inherit;font:inherit;font-weight:700;line-height:1;cursor:pointer;padding:2px 4px}.admin-overview-header{display:flex;justify-content:space-between;gap:18px}.admin-session-box{min-width:min(320px,100%);padding:14px;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5b8}.admin-session-label{display:block;margin-bottom:6px;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.admin-session-text{margin:0 0 10px;color:var(--text)}.admin-login-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-practice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.admin-practice-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;padding:12px;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5b8}.admin-create-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5b8}.admin-practice-table-wrap{overflow-x:auto;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5b8}.admin-practice-table{width:100%;border-collapse:collapse;min-width:860px}.admin-practice-table th,.admin-practice-table td{padding:10px 12px;border-bottom:1px solid rgba(200,169,110,.22);text-align:left;font-size:.9rem;color:var(--text);vertical-align:middle}.admin-practice-table th{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.admin-practice-table tbody tr:hover{background:#efe6d76b}.admin-practice-table-input{width:100%;min-height:34px;padding:6px 8px;border:1px solid rgba(200,169,110,.34);border-radius:8px;background:#fffbf5eb;color:var(--text);font:inherit}.admin-practice-table-input-error{border-color:#b33a3a;background:#fff3f3eb}.admin-practice-table-error{display:block;margin-top:4px;color:#9d2f2f;font-size:.76rem;line-height:1.3}.admin-row-saved-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(42,122,82,.42);background:#e8f8eee0;color:#1d6040;font-size:.78rem;font-weight:700}.admin-practice-card{display:grid;gap:8px;padding:14px;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5b8}.admin-practice-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-status-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#efe6d7c7;color:var(--primary);border:1px solid rgba(200,169,110,.34);font-size:.78rem;font-weight:700}.admin-status-chip-success{border-color:#2a7a5266;background:#e8f8eee6;color:#1d6040}.admin-status-chip-error{border-color:#b33a3a6b;background:#fff1f1e6;color:#8e2929}.admin-status-chip-info{border-color:#c8a96e5c;background:#fffbf5e6;color:var(--primary)}.dashboard-status-box-success{border-color:#2a7a5252;background:#e8f8eec7}.dashboard-status-box-error{border-color:#b33a3a5c;background:#fff1f1d6}.dashboard-status-box-info{border-color:#c8a96e47;background:#fffbf5c7}.dashboard-status-box-neutral{border-color:#c8a96e33;background:#fffbf5ad}.admin-practice-meta{margin:0;color:var(--muted);font-size:.92rem}.admin-practice-link{margin:2px 0 0;color:var(--primary);font-family:var(--font-mono, "Courier New", monospace);font-size:.88rem;line-height:1.5;word-break:break-word}.admin-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-empty-state{padding:18px;border:1px dashed rgba(200,169,110,.4);border-radius:14px;color:var(--muted);background:#fffbf58c}.admin-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-field{display:grid;gap:6px;font-size:.92rem;color:var(--text)}.admin-field span,.admin-preview-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.admin-field input,.admin-field textarea,.admin-field select{width:100%;min-height:42px;padding:10px 12px;border:1px solid rgba(200,169,110,.34);border-radius:12px;background:#fffbf5e6;color:var(--text);font:inherit}.admin-field-error input,.admin-field-error select,.admin-field-error textarea{border-color:#b33a3a;background:#fff3f3eb}.admin-field-error-text{margin:0;color:#9d2f2f;font-size:.82rem;line-height:1.4}.admin-field-wide{grid-column:1 / -1}.admin-preview-card{display:grid;gap:10px;padding:14px;border:1px solid rgba(200,169,110,.28);border-radius:14px;background:#fffbf5c7}.admin-preview-link{margin:0;font-family:var(--font-mono, "Courier New", monospace);font-size:.95rem;line-height:1.5;color:var(--primary);word-break:break-word}.admin-preview-qr-wrap{margin-top:10px;display:inline-flex;padding:10px;border-radius:12px;border:1px solid rgba(200,169,110,.32);background:#fffbf5db}.admin-preview-qr{width:140px;height:140px;border-radius:8px;display:block}.admin-tool-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-action-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:0;border-radius:999px;background:linear-gradient(145deg,var(--primary) 0%,var(--bg-glow) 100%);color:#f6f2ea;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.admin-action-button-secondary{background:#efe6d7c7;color:var(--primary);border:1px solid rgba(200,169,110,.34)}.admin-action-button-danger{background:#fff1f1eb;color:#8e2929;border:1px solid rgba(179,58,58,.38)}.embed-header{padding:12px 16px;border-bottom:1px solid var(--border);background:#efe6d794}.embed-header h2{margin:0}.embed-frame{width:100%;height:min(78vh,920px);border:0;display:block;background:#fff}@media(max-width:860px){.hero,.admin-overview-header{flex-direction:column}.admin-login-grid,.dashboard-login-grid,.dashboard-lookup-grid{grid-template-columns:1fr}.dashboard-report-header{flex-direction:column}.admin-edit-grid,.admin-tool-grid,.admin-practice-toolbar,.admin-create-grid{grid-template-columns:1fr}.embed-frame{height:76vh}}.pill{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-strong);border:1px solid var(--border);font-size:.88rem;font-weight:600}.notice{padding:12px 16px;border-radius:14px;color:var(--primary-strong)}label{display:block;margin-bottom:14px;font-weight:600;color:var(--text)}input[type=text],input[type=datetime-local],select,textarea{width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}input[type=text]:focus,input[type=datetime-local]:focus,select:focus,textarea:focus{outline:2px solid var(--primary-glow);outline-offset:1px;border-color:var(--primary)}.checkbox-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;background:var(--surface-soft);border:1px solid var(--border);font-weight:500;cursor:pointer}.checkbox-row input[type=checkbox]{width:auto;margin-top:2px;flex-shrink:0}.option-grid{display:grid;gap:12px}.two-columns{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.chip-grid{display:flex;flex-wrap:wrap;gap:8px}.chip-option{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--primary-soft);border:1px solid var(--border);cursor:pointer;font-weight:500;color:var(--text)}.chip-option input{margin:0}.label-title{display:inline-block;margin-bottom:8px;font-weight:700}.primary-button,.secondary-button,.danger-button,.ghost-button{min-height:44px;padding:0 18px;border:none;border-radius:12px;font:inherit;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .12s ease,filter .12s ease}.primary-button{background:linear-gradient(145deg,var(--primary) 0%,var(--bg-glow) 100%);color:#f6f2ea;flex:1}.secondary-button{background:var(--primary-soft);color:var(--primary-strong);border:1px solid var(--border)}.danger-button{background:var(--danger);color:#fff}.ghost-button{background:var(--surface-soft);color:var(--primary-strong);border:1px solid var(--border)}.primary-button:hover,.secondary-button:hover,.danger-button:hover,.ghost-button:hover{transform:translateY(-1px);filter:brightness(1.04)}.patient-wizard{display:flex;flex-direction:column;gap:16px}.app-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px}.brand-wrap{display:flex;gap:14px;align-items:flex-start}.logo-badge{width:48px;height:48px;border-radius:12px;background:var(--primary, #a58c4b);color:#fff;font-size:1.1rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.progress-card .progress-meta{display:flex;justify-content:space-between;margin-bottom:8px}.progress-bar{height:6px;background:var(--border, #e8dfc8);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--primary, #a58c4b);border-radius:3px;transition:width .3s ease}.form-step{display:flex;flex-direction:column;gap:16px}.action-bar{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.success-button{padding:10px 20px;background:#1e7f4e;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer}.success-button:hover:not(:disabled){background:#166b41}.success-button:disabled{opacity:.5;cursor:not-allowed}.pain-map-svg{width:100%;max-width:520px;display:block;margin:0 auto}.pain-map-bg{fill:var(--surface-soft, #f8f5ee)}.pain-body-outline *{fill:var(--border, #e8dfc8);stroke:none}.pain-map-caption{font-size:28px;text-anchor:middle;fill:var(--muted, #8c7a5a)}.pain-region{fill:#c8a96e26;cursor:pointer;transition:fill .15s;outline:none}.pain-region:hover{fill:#c8a96e66}.pain-region:focus-visible{fill:#c8a96e73;outline:2px solid var(--primary, #a58c4b)}.pain-region.selected{fill:var(--primary, #a58c4b);opacity:.7}.pain-region-disabled{cursor:not-allowed;opacity:.25;pointer-events:none}.pain-map-hover-label{font-size:.85rem;color:var(--muted, #8c7a5a);padding:4px 0;min-height:1.4em;text-align:center}.pain-selection-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.pain-selection-chip{display:inline-flex;padding:2px 10px;background:#c8a96e33;border-radius:20px;font-size:.85rem}.pain-special-options{margin-bottom:8px}.question-stack{display:flex;flex-direction:column;gap:12px}.question-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border, #e8dfc8);border-radius:12px}.question-meta{display:flex;justify-content:space-between;align-items:center}.question-status{font-size:.75rem;color:var(--muted, #8c7a5a)}.summary-box{display:flex;flex-direction:column;gap:16px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.summary-item{display:flex;flex-direction:column;gap:2px;font-size:.9rem}.summary-item strong{color:var(--muted, #8c7a5a);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.completion-box{margin-top:16px;padding:20px;background:#eefaf3;border-radius:12px;text-align:center;display:flex;flex-direction:column;gap:8px}.code-box{font-size:1.8rem;font-weight:700;letter-spacing:.12em;padding:14px 22px;background:var(--surface-soft, #f8f5ee);border-radius:10px;text-align:center;margin:4px auto}.service-banner{font-size:.88rem;display:flex;flex-direction:column;gap:4px}.service-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted, #8c7a5a);margin:0}.service-text{margin:0}.service-contact{margin:0;color:var(--muted, #8c7a5a)}.pediatric-context-section,.pediatric-measurements,.pregnancy-details,.practice-specialty-info{margin-top:12px;display:flex;flex-direction:column;gap:10px}@media(max-width:600px){.summary-grid{grid-template-columns:1fr}.code-box{font-size:1.4rem}}
