.toast-viewport{position:fixed;top:var(--space-lg, 1.5rem);right:var(--space-lg, 1.5rem);z-index:9999;display:flex;flex-direction:column;gap:var(--space-sm, .5rem);width:min(380px,calc(100vw - 2 * var(--space-lg, 1.5rem)));pointer-events:none}.toast-viewport[data-position=top-left]{right:auto;left:var(--space-lg, 1.5rem)}.toast-viewport[data-position=bottom-right]{top:auto;bottom:var(--space-lg, 1.5rem)}.toast-viewport[data-position=bottom-left]{top:auto;bottom:var(--space-lg, 1.5rem);right:auto;left:var(--space-lg, 1.5rem)}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-sm, .5rem);padding:var(--space-md, 1rem);background:#efebdf;background:color-mix(in srgb,var(--beige, #fffdf4) 90%,#000);border:1px solid #c2beb0;border:1px solid color-mix(in srgb,var(--beige, #fffdf4) 74%,#000);border-radius:6px;box-shadow:var(--shadow-card-hover, 0 18px 36px -20px rgba(0, 0, 0, .18));font-family:var(--font-workhorse, var(--font-sans, system-ui, sans-serif));color:var(--text-primary, rgba(0, 0, 0, .88));animation:toast-in var(--transition-base, .24s ease);transform-origin:top right}.toast[data-state=exit]{animation:toast-out var(--transition-fast, .18s ease) forwards}.toast[data-variant=success]{border-left-color:var(--status-success, var(--success, #257a3e))}.toast[data-variant=error]{border-left-color:var(--status-danger, var(--accent, #e02021))}.toast[data-variant=warning]{border-left-color:var(--status-warning, var(--warning, #8a5b00))}.toast[data-variant=info]{border-left-color:var(--status-info, var(--info, #2f6675))}.toast-icon{flex-shrink:0;width:20px;height:20px;display:grid;place-items:center;margin-top:2px}.toast[data-variant=success] .toast-icon{color:var(--status-success, var(--success, #257a3e))}.toast[data-variant=error] .toast-icon{color:var(--status-danger, var(--accent, #e02021))}.toast[data-variant=warning] .toast-icon{color:var(--status-warning, var(--warning, #8a5b00))}.toast[data-variant=info] .toast-icon{color:var(--status-info, var(--info, #2f6675))}.toast-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.toast-title{font-size:var(--text-sm, .875rem);font-weight:600;line-height:1.35;color:var(--text-primary, rgba(0, 0, 0, .88))}.toast-description{font-size:var(--text-sm, .875rem);line-height:1.45;color:var(--text-secondary, rgba(0, 0, 0, .68));word-wrap:break-word}.toast-action{margin-top:var(--space-sm, .5rem);align-self:flex-start;background:transparent;border:1px solid var(--border-medium, rgba(0, 0, 0, .14));color:var(--text-primary, rgba(0, 0, 0, .88));font-family:inherit;font-size:var(--text-sm, .875rem);font-weight:500;padding:6px 12px;border-radius:var(--radius-sm, 8px);cursor:pointer;transition:background .18s ease,border-color .18s ease}.toast-action:hover{background:var(--bg-hover, rgba(0, 0, 0, .035));border-color:var(--text-primary, rgba(0, 0, 0, .88))}.toast-close{flex-shrink:0;background:transparent;border:none;padding:4px;margin:-4px -4px 0 0;border-radius:var(--radius-sm, 8px);color:var(--text-muted, rgba(0, 0, 0, .5));cursor:pointer;display:grid;place-items:center;transition:color .18s ease,background .18s ease}.toast-close:hover{color:var(--text-primary, rgba(0, 0, 0, .88));background:var(--bg-hover, rgba(0, 0, 0, .035))}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}.stryde-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:3rem}.stryde-loading--fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;min-height:100vh;background:var(--beige, var(--surface, #fffdf4));z-index:9998}.stryde-loading__mark{position:relative;display:grid;place-items:center}.stryde-loading__ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;animation:stryde-loading-spin 1.4s linear infinite}.stryde-loading__track{fill:none;stroke:var(--border-soft, rgba(0, 0, 0, .08));stroke-width:5}.stryde-loading__arc{fill:none;stroke:var(--accent, #e02021);stroke-width:5;stroke-linecap:round;stroke-dasharray:1 282.7;stroke-dashoffset:0;animation:stryde-loading-dash 1.6s ease-in-out infinite}.stryde-loading__logo{position:relative;width:56%;height:56%;object-fit:contain;animation:stryde-loading-pulse 1.6s ease-in-out infinite}.stryde-loading__text{margin:0;font-family:var(--font-workhorse, var(--font-sans, system-ui, sans-serif));font-size:var(--text-sm, .9rem);font-weight:600;letter-spacing:.04em;color:var(--text-secondary, rgba(0, 0, 0, .6))}.stryde-loading__text:after{content:"";display:inline-block;width:1.2em;text-align:left;animation:stryde-loading-dots 1.4s steps(1,end) infinite}.stryde-loading__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes stryde-loading-spin{to{transform:rotate(360deg)}}@keyframes stryde-loading-dash{0%{stroke-dasharray:1 282.7;stroke-dashoffset:0}50%{stroke-dasharray:140 282.7;stroke-dashoffset:-40}to{stroke-dasharray:1 282.7;stroke-dashoffset:-282.7}}@keyframes stryde-loading-pulse{0%,to{transform:scale(.93);opacity:.85}50%{transform:scale(1);opacity:1}}@keyframes stryde-loading-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@media(prefers-reduced-motion:reduce){.stryde-loading__ring,.stryde-loading__arc,.stryde-loading__logo,.stryde-loading__text:after{animation:none}.stryde-loading__arc{stroke-dasharray:70 282.7}}:root{--beige: #fffdf4;--surface: #fdfcf8;--accent: #e02021;--accent-hover: #c11b1c;--accent-on-dark: #ff4747;--accent-muted: rgba(224, 32, 33, .12);--black: #000000;--white: #ffffff;--primary: var(--accent);--primary-hover: var(--accent-hover);--primary-light: rgba(224, 32, 33, .18);--primary-lighter: rgba(224, 32, 33, .07);--primary-50: rgba(224, 32, 33, .06);--primary-100: rgba(224, 32, 33, .1);--primary-200: rgba(224, 32, 33, .16);--primary-300: rgba(224, 32, 33, .28);--primary-400: var(--accent);--primary-500: var(--accent);--primary-600: var(--accent-hover);--primary-700: #971516;--primary-800: #741112;--primary-900: #540b0c;--gray-50: #fafaf7;--gray-100: #f1eee4;--gray-200: #e4dfd2;--gray-300: #d5ccbc;--gray-400: #b6ac9d;--gray-500: #8f8577;--gray-600: #665f55;--gray-700: #454039;--gray-800: #27231f;--gray-900: #11100e;--neutral-50: var(--gray-50);--neutral-100: var(--gray-100);--neutral-200: var(--gray-200);--neutral-300: var(--gray-300);--neutral-400: var(--gray-400);--neutral-500: var(--gray-500);--neutral-600: var(--gray-600);--neutral-700: var(--gray-700);--neutral-800: var(--gray-800);--neutral-900: var(--gray-900);--bg-primary: var(--beige);--bg-secondary: var(--surface);--bg-card: var(--beige);--bg-hover: rgba(224, 32, 33, .045);--bg-app: var(--beige);--bg-muted: var(--surface);--text-primary: rgba(0, 0, 0, .92);--text-secondary: rgba(0, 0, 0, .7);--text-muted: rgba(0, 0, 0, .48);--text-on-primary: var(--white);--border-color: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .16);--border-accent: rgba(224, 32, 33, .25);--success: #2f7d4f;--success-bg: #edf7ef;--warning: #9d6b1f;--warning-bg: #fff5de;--error: var(--accent);--error-bg: var(--primary-lighter);--info: #456f7b;--info-bg: #edf6f7;--accent-pink-bg: var(--primary-lighter);--accent-pink-fg: var(--accent);--accent-green-bg: #edf7ef;--accent-green-fg: #2f7d4f;--accent-blue-bg: #edf6f7;--accent-blue-fg: #456f7b;--accent-beige-bg: #f1eee4;--accent-beige-fg: #665f55;--accent-blue: var(--accent-blue-fg);--accent-green: var(--accent-green-fg);--accent-amber: var(--warning);--accent-purple: #5f5578;--accent-purple-bg: #f2eef7;--shadow-sm: none;--shadow-md: 0 10px 24px -18px rgba(0, 0, 0, .2);--shadow-lg: 0 18px 36px -24px rgba(0, 0, 0, .22);--shadow-card: none;--shadow-card-hover: 0 18px 36px -20px rgba(0, 0, 0, .18);--shadow-xl: 0 24px 44px -30px rgba(0, 0, 0, .25);--shadow-2xl: 0 32px 60px -36px rgba(0, 0, 0, .3);--shadow-primary: 0 10px 24px -8px rgba(224, 32, 33, .5), 0 4px 10px rgba(0, 0, 0, .15);--gradient-primary: var(--accent);--gradient-primary-strong: var(--accent-hover);--gradient-dark: var(--gray-900);--gradient-light: var(--surface);--radius-sm: 6px;--radius-md: 999px;--radius-lg: 999px;--radius-xl: 20px;--radius-card: 20px;--radius-full: 999px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: var(--font-sans);--font-serif-accent: "Source Serif Pro", Georgia, serif;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 32px;--text-4xl: 40px;--transition-fast: color .15s ease, background-color .15s ease, border-color .15s ease, transform .15s ease;--transition-base: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;--transition-slow: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;--transition-smooth: var(--transition-slow);--transition-bounce: var(--transition-slow);--focus-ring: 0 0 0 2px var(--accent), 0 0 0 5px rgba(224, 32, 33, .16);--hover-translate: -3px;--hover-border: var(--border-accent);--hover-shadow: var(--shadow-card-hover);--hover-bg: var(--bg-hover);--shadow-card-rest: 0 1px 2px rgba(0, 0, 0, .04), 0 4px 12px -8px rgba(0, 0, 0, .08)}[data-theme=high-contrast]{--beige: #ffffff;--surface: #ffffff;--accent: #971516;--accent-hover: #741112;--accent-muted: rgba(151, 21, 22, .16);--primary: var(--accent);--primary-hover: var(--accent-hover);--primary-400: var(--accent);--primary-500: var(--accent);--primary-600: var(--accent-hover);--gray-900: #000000;--gray-800: #111111;--gray-700: #222222;--gray-600: #333333;--gray-500: #444444;--gray-400: #555555;--gray-300: #666666;--gray-200: #777777;--gray-100: #000000;--gray-50: #ffffff;--neutral-900: var(--gray-900);--neutral-800: var(--gray-800);--neutral-700: var(--gray-700);--neutral-600: var(--gray-600);--neutral-500: var(--gray-500);--neutral-400: var(--gray-400);--neutral-300: var(--gray-300);--neutral-200: var(--gray-200);--neutral-100: #000000;--neutral-50: #ffffff;--bg-primary: #ffffff;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #f0f0f0;--bg-app: #ffffff;--bg-muted: #ffffff;--text-primary: #000000;--text-secondary: #111111;--text-muted: #333333;--border-color: #000000;--border-strong: #000000;--border-accent: #000000;--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-card: none;--shadow-card-hover: none;--shadow-card-rest: none;--shadow-xl: none;--shadow-2xl: none;--shadow-primary: none;--focus-ring: 0 0 0 3px #000000, 0 0 0 6px var(--accent)}html{background:var(--beige)}body{background:var(--beige);color:var(--text-primary);font-family:var(--font-sans)}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:none;border-radius:4px}[data-theme=high-contrast] a,[data-theme=high-contrast] .auth-link{text-decoration:underline}[data-theme=high-contrast] button,[data-theme=high-contrast] .btn,[data-theme=high-contrast] input,[data-theme=high-contrast] select,[data-theme=high-contrast] textarea,[data-theme=high-contrast] .form-input{border:2px solid var(--border-color)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.btn,.onboard-btn,.modal-btn,.test-action-btn,.test-view-btn,.resend-btn,.assign-test-btn,.detailed-view-btn,.question-action-btn,.sign-out-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.75rem 1.5rem;border:1.5px solid transparent;border-radius:999px;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--text-base);font-weight:600;line-height:1.2;letter-spacing:.01em;cursor:pointer;text-decoration:none;white-space:nowrap;transition:var(--transition-base)}.btn:disabled,.btn[aria-disabled=true],.onboard-btn:disabled,.modal-btn:disabled,.test-action-btn:disabled,.test-view-btn:disabled,.resend-btn:disabled,.assign-test-btn:disabled,.detailed-view-btn:disabled,.question-action-btn:disabled,.sign-out-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-sm{min-height:38px;padding:.55rem 1rem;font-size:var(--text-sm)}.btn-lg,.btn-get-started{min-height:52px;padding:1rem 1.875rem;font-size:var(--text-base)}.btn-primary,.onboard-btn,.modal-btn.primary-btn,.modal-btn.send-btn,.test-action-btn.primary,.assign-test-btn{background:var(--accent);color:var(--white);border-color:var(--accent)}.btn-primary:hover:not(:disabled),.onboard-btn:hover:not(:disabled),.modal-btn.primary-btn:hover:not(:disabled),.modal-btn.send-btn:hover:not(:disabled),.test-action-btn.primary:hover:not(:disabled),.assign-test-btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--white);transform:translateY(-1px)}.btn-secondary,.modal-btn.cancel-btn,.test-action-btn.secondary,.test-view-btn,.resend-btn,.detailed-view-btn,.question-action-btn,.sign-out-btn{background:transparent;color:var(--accent);border-color:var(--accent)}.btn-secondary:hover:not(:disabled),.modal-btn.cancel-btn:hover:not(:disabled),.test-action-btn.secondary:hover:not(:disabled),.test-view-btn:hover:not(:disabled),.resend-btn:hover:not(:disabled),.detailed-view-btn:hover:not(:disabled),.question-action-btn:hover:not(:disabled),.sign-out-btn:hover:not(:disabled){background:var(--accent);color:var(--white);border-color:var(--accent);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--accent);border-color:var(--accent)}.btn-outline:hover:not(:disabled){background:var(--accent);color:var(--white);border-color:var(--accent);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){color:var(--accent);background:var(--primary-lighter)}.btn-icon,.modal-close-btn,.clear-search-btn,.theme-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:1.5px solid var(--border-color);border-radius:999px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:var(--transition-base)}.btn-icon:hover:not(:disabled),.modal-close-btn:hover:not(:disabled),.clear-search-btn:hover:not(:disabled),.theme-toggle-btn:hover:not(:disabled){color:var(--accent);border-color:var(--border-accent);background:var(--primary-lighter);transform:translateY(-1px)}.btn-icon.btn-sm{width:38px;height:38px;min-width:38px;min-height:38px}.question-action-btn.remove-btn{color:var(--accent-hover);border-color:var(--border-accent);background:transparent}.question-action-btn.remove-btn:hover:not(:disabled){color:var(--white);border-color:var(--accent-hover);background:var(--accent-hover)}.theme-toggle-btn[aria-pressed=true]{color:var(--white);background:var(--accent);border-color:var(--accent)}[data-theme=high-contrast] .btn,[data-theme=high-contrast] .onboard-btn,[data-theme=high-contrast] .modal-btn,[data-theme=high-contrast] .test-action-btn,[data-theme=high-contrast] .test-view-btn,[data-theme=high-contrast] .resend-btn,[data-theme=high-contrast] .assign-test-btn,[data-theme=high-contrast] .detailed-view-btn,[data-theme=high-contrast] .question-action-btn,[data-theme=high-contrast] .sign-out-btn,[data-theme=high-contrast] .btn-icon,[data-theme=high-contrast] .modal-close-btn,[data-theme=high-contrast] .clear-search-btn,[data-theme=high-contrast] .theme-toggle-btn{border:2px solid #000000;box-shadow:none}:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=high-contrast] .theme-toggle-btn{border-width:2px}.stryde-logo{display:inline-flex;align-items:center;line-height:0;border:none;background:none;padding:0}.stryde-logo--clickable{cursor:pointer}.stryde-logo img{width:auto;object-fit:contain;display:block}.stryde-logo--sm img{height:24px}.stryde-logo--md img{height:36px}.stryde-logo--lg img{height:40px}.stryde-logo--xl img{height:56px}@media(max-width:768px){.stryde-logo--md img{height:30px}.stryde-logo--xl img{height:44px}}.header{background:var(--beige);border-bottom:1px solid var(--border-color);height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;position:sticky;top:0;z-index:1000;box-shadow:none}.header-logo{flex-shrink:0;margin-right:auto}.nav-links{display:flex;gap:1rem;align-items:center}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:var(--text-base);transition:var(--transition-base);padding:.5rem 1rem;border-radius:var(--radius-full)}.nav-link:hover{color:var(--text-primary);background:transparent}.nav-link-auth{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1.25rem!important;min-height:44px;border:1.5px solid var(--accent);border-radius:var(--radius-full)!important;background:var(--accent)!important;color:var(--white)!important;font-weight:600!important;font-size:var(--text-base);text-decoration:none;cursor:pointer;white-space:nowrap;transition:var(--transition-base);box-shadow:none}.nav-link-auth:hover{background:var(--accent-hover)!important;border-color:var(--accent-hover);color:var(--white)!important;transform:translateY(-1px);box-shadow:none}@media(max-width:768px){.header{padding:0 1rem}.nav-links{gap:.5rem}}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--beige)}.landing-page{flex:1;overflow:hidden;background:var(--beige)}.hero{min-height:calc(100svh - 64px);position:relative;background:var(--beige);display:flex;align-items:center;justify-content:center;padding:72px clamp(1rem,4vw,3rem)}.hero-content{max-width:1180px;width:100%;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:clamp(2rem,6vw,5rem);align-items:center;position:relative;z-index:2}.hero-left{max-width:660px}.hero-logo{margin-bottom:1.25rem}.hero-title{margin:0 0 1.25rem;color:var(--text-primary);font-size:clamp(3rem,7vw,5.75rem);font-weight:300;line-height:.98;letter-spacing:-.045em}.hero-description{max-width:62ch;margin-bottom:2rem;color:var(--text-secondary);font-size:18px;font-weight:300;line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:.875rem;align-items:center}.btn-get-started{border-radius:999px;box-shadow:var(--shadow-primary)}.btn-get-started:hover{transform:translateY(-2px);box-shadow:0 14px 30px -8px #e020218c,0 6px 14px #00000024}.hero-right{display:flex;justify-content:center;align-items:stretch}.clinician-panel{width:100%;max-width:540px;padding:clamp(1.25rem,3vw,1.75rem);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-card)}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.panel-eyebrow,.eyebrow{margin:0 0 .5rem;color:var(--accent);font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.panel-header h2{margin:0;color:var(--text-primary);font-size:var(--text-2xl);font-weight:500;letter-spacing:-.01em}.panel-status,.row-action{display:inline-flex;align-items:center;min-height:34px;padding:.35rem .8rem;color:var(--accent);background:var(--primary-lighter);border:1px solid var(--border-accent);border-radius:999px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.panel-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:1rem 0}.panel-metric{min-height:116px;padding:1rem;border:1px solid var(--border-color);border-radius:16px;display:flex;flex-direction:column;justify-content:flex-end}.panel-metric-value{color:var(--text-primary);font-size:40px;font-weight:300;line-height:1;letter-spacing:-.03em}.panel-metric-label{margin-top:.5rem;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.3}.panel-list{display:flex;flex-direction:column;border-top:1px solid var(--border-color)}.panel-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border-color)}.panel-row:last-child{border-bottom:0;padding-bottom:0}.panel-row strong,.panel-row span{display:block}.panel-row strong{color:var(--text-primary);font-size:var(--text-base);font-weight:600}.panel-row div>span{margin-top:.2rem;color:var(--text-secondary);font-size:var(--text-sm)}.feature-list{width:100%;max-width:440px;display:flex;flex-direction:column;gap:1rem}.feature-item{display:flex;gap:1rem;align-items:flex-start;background:var(--bg-card);padding:1.5rem;border-radius:var(--radius-card);border:1px solid var(--border-color);box-shadow:none;transition:var(--transition-slow)}.feature-item:hover{transform:translateY(-3px);border-color:var(--border-accent);box-shadow:var(--shadow-card-hover)}.feature-icon{background:var(--primary-lighter);color:var(--accent);width:48px;height:48px;border-radius:999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-content{flex:1}.feature-title{margin:0 0 .35rem;color:var(--text-primary);font-size:var(--text-lg);font-weight:600}.feature-description{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.55}.hero-background,.gradient-circle{display:none}.clinician-priorities{background:var(--surface);padding:clamp(3.5rem,8vw,6rem) clamp(1rem,4vw,3rem)}.section-intro{max-width:1180px;margin:0 auto 2rem}.section-intro h2{max-width:780px;margin:0 0 1rem;color:var(--text-primary);font-size:clamp(2rem,5vw,3.5rem);font-weight:300;letter-spacing:-.035em;line-height:1.05}.section-intro>p:last-child{max-width:68ch;color:var(--text-secondary);font-size:18px;font-weight:300;line-height:1.55}.clinician-priorities .feature-list{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.clinician-priorities .feature-item{min-height:220px;flex-direction:column}.auth-page{flex:1;display:flex;justify-content:center;align-items:center;min-height:calc(100svh - 64px);padding:clamp(2rem,6vw,4rem) 1rem;background:var(--surface)}.auth-container{width:100%;max-width:520px;padding:clamp(1.5rem,5vw,2.5rem);background:var(--beige);border:1px solid var(--border-color);border-radius:var(--radius-card);box-shadow:none}.auth-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.auth-toggle{display:flex;gap:.35rem;padding:.3rem;margin-bottom:2rem;background:var(--surface);border:1px solid var(--border-color);border-radius:999px}.toggle-btn{flex:1;min-height:44px;padding:.625rem 1rem;border:1.5px solid transparent;background:transparent;color:var(--text-secondary);font:inherit;font-size:var(--text-sm);font-weight:600;border-radius:999px;cursor:pointer;transition:var(--transition-base)}.toggle-btn.active{background:var(--accent);color:var(--white);border-color:var(--accent);box-shadow:none}.toggle-btn:hover:not(.active){color:var(--accent);background:var(--primary-lighter)}.auth-title{margin-bottom:.75rem;color:var(--text-primary);font-size:var(--text-3xl);font-weight:300;letter-spacing:-.02em;line-height:1.15;text-align:center}.auth-subtitle{max-width:42ch;margin:0 auto 1.75rem;color:var(--text-secondary);font-size:var(--text-base);font-weight:300;line-height:1.55;text-align:center}.auth-form{display:flex;flex-direction:column;gap:1.1rem;width:100%}.name-group{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-label{color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.form-input{width:100%;min-height:48px;padding:.85rem 1rem;border:1.5px solid var(--border-color);border-radius:12px;background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-base);transition:var(--transition-base)}.form-input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.form-input:hover:not(:focus){border-color:var(--border-strong)}.form-input::placeholder{color:var(--text-muted)}.auth-footer{margin-top:1.5rem;color:var(--text-secondary);font-size:var(--text-sm);text-align:center}.auth-link{color:var(--accent);border-radius:4px;font:inherit;font-weight:600;text-decoration:none;transition:var(--transition-base)}.auth-link:hover{color:var(--accent-hover);text-decoration:underline}.error-message{line-height:1.45}@media(max-width:900px){.hero-content{grid-template-columns:1fr}.hero-right{justify-content:flex-start}.clinician-panel,.feature-list{max-width:none}.clinician-priorities .feature-list{grid-template-columns:1fr}}@media(max-width:640px){.hero{padding-block:48px}.hero-title{font-size:clamp(2.45rem,14vw,3.4rem)}.hero-description{font-size:16px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .btn{width:100%}.panel-header,.panel-row{align-items:flex-start;flex-direction:column}.panel-metrics{grid-template-columns:1fr}.panel-metric{min-height:96px}.panel-status,.row-action{width:fit-content}.feature-item{padding:1rem}.name-group{grid-template-columns:1fr}.auth-page{align-items:flex-start}.auth-toggle{margin-bottom:1.5rem}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-app);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--text-primary)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}.dashboard{min-height:100vh;background:var(--bg-primary);display:flex;flex-direction:column}.dashboard-navbar{background:var(--bg-primary);border-bottom:1px solid #FFE0E0;height:64px;display:flex;align-items:center;position:sticky;top:0;z-index:1000;box-shadow:0 2px 4px #e53e3e0d}.navbar-content{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;width:100%}.navbar-left{display:flex;align-items:center;gap:3rem}.navbar-logo{display:flex;align-items:center;flex-shrink:0}.navbar-nav{display:flex;gap:.5rem}.nav-item{position:relative;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;background:transparent;color:var(--text-secondary);font-size:var(--text-base);font-weight:500;cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-base)}.nav-item:hover{color:var(--text-primary);background:transparent}.nav-item.active{color:#fff;background:var(--primary);box-shadow:var(--shadow-primary)}.nav-item.active .nav-icon{transform:scale(1.1)}.nav-icon{transition:var(--transition-base)}.navbar-right{display:flex;align-items:center;gap:.75rem}.dashboard-main{position:relative;z-index:10}.dashboard-content{width:100%}.welcome-section{text-align:left;margin-bottom:3rem;padding:2rem 0;position:relative}.welcome-title{font-size:var(--text-4xl);font-weight:700;color:var(--text-primary);background:none;-webkit-text-fill-color:currentColor;margin-bottom:.5rem}.welcome-hospital{color:var(--text-secondary);font-size:var(--text-lg);font-weight:400}.section-header{margin-bottom:2rem}.section-title-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-title{font-size:var(--text-3xl);font-weight:700;color:var(--text-primary)}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--bg-card);border-radius:var(--radius-card);padding:2rem;box-shadow:var(--shadow-card);border:1px solid var(--gray-100);cursor:pointer;transition:var(--transition-base);position:relative;min-height:210px;display:flex;flex-direction:column;justify-content:space-between}.stat-card:before{content:none}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.stat-number{font-size:3rem;font-weight:600;color:var(--text-primary);background:none;-webkit-text-fill-color:currentColor;line-height:1;margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:var(--text-base);font-weight:500}.patients-table{background:var(--bg-card);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);border:1px solid var(--gray-100)}.table-header{background:var(--bg-card);border-bottom:1px solid var(--gray-100)}.table-row{display:grid;grid-template-columns:1fr 1fr 2fr;padding:1.25rem 1.5rem;align-items:center;transition:var(--transition-base)}.table-body .table-row{border-bottom:1px solid var(--gray-100)}.table-body .table-row:last-child{border-bottom:none}.table-body .table-row:hover{background:var(--gray-50)}.table-cell{font-size:var(--text-base);color:var(--text-primary)}.table-cell.header{font-weight:600;color:var(--text-secondary);text-transform:uppercase;font-size:var(--text-sm);letter-spacing:.05em}.patient-actions{display:flex;gap:.75rem;justify-content:flex-end}.empty-state{text-align:center;padding:4rem 2rem}.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:var(--primary-100);color:var(--primary-500);border-radius:20px;margin-bottom:1.5rem}.empty-state h3{font-size:1.5rem;color:var(--neutral-900);margin-bottom:.5rem}.empty-state p{color:var(--neutral-600);max-width:400px;margin:0 auto}.tests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.test-card{background:var(--bg-card);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);border:1px solid var(--gray-100);transition:var(--transition-base);position:relative}.test-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.test-card-header{padding:1.5rem;background:transparent;border-bottom:1px solid var(--gray-100);display:flex;justify-content:space-between;align-items:center}.test-icon{width:48px;height:48px;background:var(--accent-pink-bg);color:var(--accent-pink-fg);border-radius:50%;display:flex;align-items:center;justify-content:center}.test-status-badge{padding:.375rem .875rem;background:var(--accent-green-bg);color:var(--accent-green-fg);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600}.test-card-content{padding:1.5rem}.test-title{font-size:1.25rem;font-weight:700;color:var(--neutral-900);margin-bottom:.5rem}.test-description{color:var(--neutral-600);font-size:.9375rem;line-height:1.6;margin-bottom:1.5rem}.test-stats{display:flex;gap:2rem;margin-bottom:1.5rem}.test-stat{text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:var(--neutral-900);line-height:1}.test-stat .stat-label{font-size:.8125rem;margin-top:.25rem}.test-card-actions{padding:0 1.5rem 1.5rem}.test-action-btn{width:100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@media(max-width:1024px){.dashboard-content{padding:1.5rem}.stats-cards{grid-template-columns:1fr 1fr}.section-title{font-size:1.75rem}}@media(max-width:768px){.navbar-content{padding:0 1rem}.navbar-nav{display:none}.welcome-title{font-size:2rem}.stats-cards{grid-template-columns:1fr}.table-row{grid-template-columns:1fr;gap:.5rem}.patient-actions{margin-top:1rem}.tests-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease-out;padding:2rem}.modal-content{background:var(--bg-card);border-radius:var(--radius-card);box-shadow:var(--shadow-card-hover);max-width:600px;width:100%;max-height:85vh;position:relative;animation:scaleIn .3s cubic-bezier(.68,-.55,.265,1.55);overflow:hidden;border:1px solid var(--gray-100)}.modal-content.glass{background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2)}.modal-header{padding:2rem 2rem 1.5rem;border-bottom:1px solid var(--neutral-100);position:relative}.modal-header h3{font-size:1.75rem;font-weight:700;color:var(--neutral-900);padding-right:3rem}.modal-close-btn{position:absolute;top:1.25rem;right:1.25rem}.modal-body{padding:2rem;max-height:calc(85vh - 180px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--neutral-300) transparent}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:transparent}.modal-body::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--neutral-400)}.modal-footer{padding:1.5rem 2rem 2rem;border-top:1px solid var(--neutral-100);display:flex;justify-content:flex-end;gap:1rem;background:var(--neutral-50)}.modal-btn{min-width:120px}.input-group{margin-bottom:1.5rem}.input-label{display:block;margin-bottom:.5rem;font-size:.9375rem;font-weight:600;color:var(--neutral-700)}.email-input,input[type=text],input[type=email],input[type=date],textarea,select{width:100%;padding:.875rem 1.25rem;border:2px solid var(--neutral-200);border-radius:12px;font-size:1rem;background:#fff;transition:var(--transition-base);font-family:var(--font-sans)}.email-input:focus,input[type=text]:focus,input[type=email]:focus,input[type=date]:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px #ef44441a}.email-input::placeholder,input::placeholder,textarea::placeholder{color:var(--neutral-400)}.notification-overlay{z-index:1200!important}.notification-modal{max-width:450px}.notification-header{display:flex;align-items:center;gap:1rem;flex:1}.notification-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-icon.success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#16a34a}.notification-icon.error{background:linear-gradient(135deg,var(--primary-100) 0%,var(--primary-200) 100%);color:var(--primary-600)}.notification-icon.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.notification-icon.info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.notification-title{font-size:1.25rem;font-weight:700;color:var(--neutral-900)}.notification-message{font-size:1rem;color:var(--neutral-600);line-height:1.6;margin-bottom:1rem}.notification-details{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:12px;padding:1rem;margin-top:1rem}.notification-details pre{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:.875rem;color:var(--neutral-700);white-space:pre-wrap;word-break:break-word;margin:0}.test-modal{max-width:950px}.test-modal .modal-header{background:linear-gradient(135deg,var(--primary-50) 0%,white 100%);border-bottom:2px solid var(--primary-100)}.test-modal .modal-body{background:var(--neutral-50);padding:2.5rem}.ai-test-badge-container{display:flex;justify-content:center;margin-bottom:2rem}.ai-test-badge{display:inline-flex;align-items:center;gap:.75rem;background:var(--gradient-primary);color:#fff;padding:.75rem 1.5rem;border-radius:24px;font-size:.9375rem;font-weight:700;box-shadow:var(--shadow-primary);letter-spacing:.02em}.ai-test-badge svg{width:20px;height:20px}.test-info{margin-bottom:2.5rem}.test-description{font-size:1.125rem;color:var(--neutral-700);line-height:1.8;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:16px;border-left:4px solid var(--primary-500);box-shadow:var(--shadow-sm)}.test-meta{display:flex;gap:2.5rem;flex-wrap:wrap;justify-content:center}.test-meta-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#fff;border-radius:12px;box-shadow:var(--shadow-sm);transition:var(--transition-base)}.test-meta-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.test-meta-item svg{color:var(--primary-500);flex-shrink:0;width:20px;height:20px}.test-meta-item span{font-weight:600;color:var(--neutral-700)}.test-instructions,.generation-rationale-details{margin:2rem 0;padding:2rem;border-radius:16px;position:relative;overflow:hidden}.test-instructions{background:linear-gradient(135deg,#dbeafe,#e0f2fe);border:1px solid #bfdbfe}.generation-rationale-details{background:linear-gradient(135deg,#fef3c7,#fef9c3);border:1px solid #fde047}.instructions-header,.rationale-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.instructions-header svg{color:#1e40af;width:24px;height:24px}.rationale-header svg{color:#d97706;width:24px;height:24px}.test-instructions h4,.generation-rationale-details h4{margin:0;font-size:1.25rem;font-weight:700}.test-instructions h4{color:#1e3a8a}.generation-rationale-details h4{color:#92400e}.test-instructions p,.generation-rationale-details p{font-size:1rem;line-height:1.7;margin:0}.test-instructions p{color:#1e40af}.generation-rationale-details p{color:#78350f}.test-questions{margin-top:3rem}.test-questions h4{font-size:1.5rem;font-weight:700;color:var(--neutral-900);margin-bottom:2rem;text-align:center;position:relative;padding-bottom:1rem}.test-questions h4:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:4px;background:var(--gradient-primary);border-radius:2px}.questions-list{display:flex;flex-direction:column;gap:2rem}.question-item{background:#fff;border-radius:16px;padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--neutral-100);transition:var(--transition-smooth)}.question-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.question-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.question-number{background:var(--gradient-primary);color:#fff;padding:.5rem 1rem;border-radius:10px;font-size:.875rem;font-weight:700;box-shadow:var(--shadow-primary);letter-spacing:.02em}.question-type{background:var(--neutral-100);color:var(--neutral-700);padding:.375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:600}.question-points{background:var(--accent-green);color:#fff;padding:.375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:600}.question-actions{display:flex;gap:.75rem;margin-left:auto}.question-action-btn svg{width:18px;height:18px}.question-text{font-size:1.125rem;color:var(--neutral-800);font-weight:500;margin-bottom:1.5rem;line-height:1.6}.question-detail-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:0 0 1.5rem}.question-detail-item{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:10px;padding:.875rem 1rem}.question-detail-item dt{color:var(--neutral-500);font-size:.75rem;font-weight:700;margin-bottom:.25rem;text-transform:uppercase}.question-detail-item dd{color:var(--neutral-800);font-size:.9375rem;line-height:1.4;margin:0;overflow-wrap:anywhere}.no-options-message{color:var(--neutral-600);font-size:.9375rem;line-height:1.5;margin:0;padding:1rem 1.25rem;background:var(--neutral-50);border:1px dashed var(--neutral-300);border-radius:10px}.question-options{display:flex;flex-direction:column;gap:.875rem}.option-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--neutral-50);border:2px solid var(--neutral-200);border-radius:12px;transition:var(--transition-base);position:relative;min-height:3rem;flex-wrap:wrap}.option-item:hover{background:#fff;border-color:var(--neutral-300);transform:translate(4px)}.option-id{width:32px;height:32px;background:#fff;border:2px solid var(--neutral-300);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--neutral-700);flex-shrink:0}.option-text{flex:1;color:var(--neutral-700);font-size:.9375rem}.option-item .correct-indicator{background:var(--success);color:#fff;padding:.375rem .875rem;border-radius:16px;font-size:.8125rem;font-weight:600;margin-left:auto;position:static!important;top:auto!important;right:auto!important;display:inline-flex;align-items:center;box-shadow:0 2px 4px #22c55e33}.subjective-indicator{background:var(--accent-amber);color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.patient-summary-modal{max-width:850px}.patient-summary-content{padding:1.5rem}.summary-metadata{background:linear-gradient(135deg,var(--neutral-50) 0%,white 100%);padding:1.5rem;border-radius:16px;margin-bottom:2rem;border:1px solid var(--neutral-200)}.summary-metadata p{margin:.375rem 0;font-size:1rem;color:var(--neutral-700)}.summary-metadata strong{color:var(--neutral-900);font-weight:600}.summary-divider{height:2px;background:var(--gradient-primary);margin:2rem 0;border-radius:1px;opacity:.2}.summary-text{line-height:1.8}.summary-text p{margin-bottom:1.25rem;color:var(--neutral-700);font-size:1rem}.pending-invitation-item{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--neutral-50);border-radius:12px;margin-bottom:1rem;border:1px solid var(--neutral-200);transition:var(--transition-base)}.pending-invitation-item:hover{background:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.invitation-info{flex:1}.invitation-name{font-size:1.125rem;font-weight:700;color:var(--neutral-900);margin-bottom:.25rem}.invitation-email{color:var(--neutral-600);font-size:.9375rem;margin-bottom:.5rem}.invitation-ohip,.invitation-date,.invitation-expires{font-size:.875rem;color:var(--neutral-500);margin:.25rem 0}.invitation-delivery-status{display:inline-flex;align-items:center;min-height:28px;margin-top:.5rem;padding:.25rem .7rem;border:1px solid var(--neutral-200);border-radius:999px;color:var(--neutral-700);background:var(--surface);font-size:.75rem;font-weight:600;text-transform:capitalize}.invitation-delivery-status.sent{color:var(--success);border-color:var(--success);background:var(--success-bg)}.invitation-delivery-status.failed{color:var(--error);border-color:var(--error);background:var(--error-bg)}.invitation-delivery-error{max-width:44ch;margin-top:.45rem;color:var(--error);font-size:.8rem;line-height:1.4}.test-selection .section-header{margin-bottom:1.5rem}.test-selection .section-header h4{font-size:1.25rem;font-weight:700;color:var(--neutral-900);margin-bottom:.5rem}.section-subtitle{color:var(--neutral-600);font-size:.9375rem}.test-selection-item{background:#fff;border:2px solid var(--neutral-200);border-radius:16px;padding:1.5rem;cursor:pointer;transition:var(--transition-base)}.test-selection-item:hover{border-color:var(--primary-300);background:var(--primary-50);transform:translateY(-2px);box-shadow:var(--shadow-md)}.test-selection-item.selected{border-color:var(--primary-500);background:var(--primary-50);box-shadow:0 0 0 3px #ef44441a}.test-selection-header h5{font-size:1.125rem;font-weight:700;color:var(--neutral-900);margin:0}.test-selection-meta{display:flex;gap:1rem;margin-top:.25rem}.test-duration,.test-questions{background:var(--neutral-100);color:var(--neutral-700);padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.test-selection-description{color:var(--neutral-600);font-size:.9375rem;line-height:1.5}.selected-indicator{display:flex;align-items:center;gap:.5rem;color:var(--primary-600);font-size:.875rem;font-weight:600;margin-top:1rem}.no-questions-message{text-align:center;padding:3rem;color:var(--neutral-500);font-size:1rem}body::-webkit-scrollbar{width:12px}body::-webkit-scrollbar-track{background:var(--neutral-100)}body::-webkit-scrollbar-thumb{background:var(--neutral-400);border-radius:6px;border:3px solid var(--neutral-100)}body::-webkit-scrollbar-thumb:hover{background:var(--neutral-500)}.test-details-overlay{z-index:1100}.test-results-modal{max-width:900px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.test-results-modal .modal-header{background:linear-gradient(135deg,#dc26260d,#dc262605);border-bottom:1px solid rgba(220,38,38,.1);padding:1.5rem 2rem;flex-shrink:0}.test-results-modal .modal-body{flex:1;overflow-y:auto;padding:2rem;background:#f9fafb80}.test-detail-modal{max-width:850px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.test-detail-modal .modal-header{background:linear-gradient(135deg,#dc262614,#dc262608);border-bottom:1px solid rgba(220,38,38,.15);padding:1.5rem 2rem;flex-shrink:0}.test-detail-modal .modal-body{flex:1;overflow-y:auto;padding:2rem;background:#fff}.test-modal .modal-header h3,.test-results-modal .modal-header h3,.test-detail-modal .modal-header h3{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.test-result-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#dc26260d,#dc262605);border-radius:12px;border:1px solid rgba(220,38,38,.1)}.test-result-summary-item{text-align:center;padding:1rem;background:#fff;border-radius:8px;box-shadow:var(--shadow-sm)}.test-result-summary-item .label{font-size:.875rem;color:var(--neutral-600);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.test-result-summary-item .value{font-size:1.75rem;font-weight:700;color:var(--primary-600)}.test-questions{display:flex;flex-direction:column;gap:1.5rem}.question-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:var(--transition-base)}.question-card:hover{box-shadow:var(--shadow-md);border-color:#dc262633}.question-card.correct{border-left:4px solid var(--success)}.question-card.incorrect{border-left:4px solid #ef4444}.question-card.subjective{border-left:4px solid #3b82f6}.patient-summary-modal{max-width:800px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.patient-summary-modal .modal-header{background:linear-gradient(135deg,#dc262614,#dc262608);border-bottom:1px solid rgba(220,38,38,.15);padding:1.5rem 2rem;flex-shrink:0}.patient-summary-modal .modal-body{flex:1;overflow-y:auto;padding:2rem;background:#f9fafbcc}.patient-summary-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);line-height:1.8;font-size:1.0625rem;color:var(--text-secondary)}.patient-summary-content h4{color:var(--primary-600);font-size:1.25rem;margin-top:1.5rem;margin-bottom:1rem;font-weight:600}.patient-summary-content p{margin-bottom:1rem}.patient-summary-content ul{margin-left:1.5rem;margin-bottom:1rem}.patient-summary-content li{margin-bottom:.5rem}.summary-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;text-align:center}.summary-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--neutral-200);border-top-color:var(--primary-500);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1.5rem}.summary-loading .loading-text{font-size:1.125rem;color:var(--neutral-600);font-weight:500}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:var(--neutral-100);border-radius:4px}.modal-body::-webkit-scrollbar-thumb{background:var(--neutral-400);border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--neutral-500)}.test-results-list{display:flex;flex-direction:column;gap:1.25rem;padding:.5rem}.test-result-item{background:linear-gradient(135deg,#fff,#f9fafb80);border:2px solid transparent;background-clip:padding-box;border-radius:16px;padding:1.5rem;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #0000000a,0 4px 16px #00000014,inset 0 1px #fffc;outline:1px solid rgba(220,38,38,.1);outline-offset:-1px}.test-result-item:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:16px;padding:2px;background:linear-gradient(135deg,#dc262633,#dc26260d);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease}.test-result-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #dc26261a,0 8px 24px #0000001f,inset 0 1px #ffffffe6;outline-color:#dc26264d}.test-result-item:hover:before{opacity:1}.test-result-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px dashed rgba(220,38,38,.15)}.test-result-header h4{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}.test-result-header h4:before{content:"📋";font-size:1.125rem;opacity:.8}.test-result-meta{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.performance-badge{padding:.375rem .875rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:1px solid;position:relative;overflow:hidden}.performance-badge.excellent{background:#22c55e1a;color:#16a34a;border-color:#22c55e33}.performance-badge.good{background:#3b82f61a;color:#2563eb;border-color:#3b82f633}.performance-badge.needs_improvement{background:#f59e0b1a;color:#d97706;border-color:#f59e0b33}.performance-badge.poor{background:#ef44441a;color:var(--primary-600);border-color:#ef444433}.test-score-badge{padding:.375rem .875rem;background:#dc26261a;color:var(--primary-600);border:1px solid rgba(220,38,38,.2);border-radius:20px;font-size:.875rem;font-weight:600}.test-result-details{background:#f9fafb80;padding:1rem;border-radius:12px;margin-top:1rem;border:1px solid rgba(220,38,38,.08);display:flex;gap:1.5rem;flex-wrap:wrap;align-items:center}.test-result-stat{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;border:1px solid rgba(220,38,38,.08)}.test-result-stat .stat-label{font-size:.8125rem;color:var(--neutral-500);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.test-result-stat .stat-value{font-size:.9375rem;font-weight:700;color:var(--primary-600)}.test-result-stat:first-child .stat-label:before{content:"📅";margin-right:.25rem;font-size:1rem}.test-result-stat:nth-child(2) .stat-label:before{content:"✅";margin-right:.25rem;font-size:1rem}.test-result-stat:nth-child(3) .stat-label:before{content:"⏱️";margin-right:.25rem;font-size:1rem}.modal-content .modal-description{font-size:1.0625rem;color:var(--neutral-600);margin-bottom:2rem;line-height:1.6}.test-selection{margin-bottom:2rem}.test-selection .section-header{margin-bottom:1.5rem;padding:1.25rem;background:linear-gradient(135deg,#dc26260d,#dc262605);border-radius:12px;border:1px solid rgba(220,38,38,.1);position:relative;overflow:hidden}.test-selection .section-header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary)}.test-selection .section-header h4{font-size:1.375rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem;display:flex;align-items:center;gap:.75rem}.section-subtitle{font-size:.9375rem;color:var(--neutral-600);display:block;font-weight:500;line-height:1.5}.test-selection-list{display:flex;flex-direction:column;gap:1rem}.test-selection-item{background:linear-gradient(135deg,#fff,#f9fafb80);border:2px solid transparent;background-clip:padding-box;border-radius:16px;padding:1.5rem;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #0000000a,0 4px 16px #00000014,inset 0 1px #fffc;outline:1px solid rgba(220,38,38,.1);outline-offset:-1px}.test-selection-item:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:16px;padding:2px;background:linear-gradient(135deg,#dc262633,#dc26260d);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease}.test-selection-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #dc26261a,0 8px 24px #0000001f,inset 0 1px #ffffffe6;outline-color:#dc26264d}.test-selection-item:hover:before{opacity:1}.test-selection-item.selected{background:linear-gradient(135deg,#dc262614,#dc262608);outline:2px solid var(--primary-500);outline-offset:-2px;box-shadow:0 4px 12px #dc262626,0 8px 24px #0000001a,inset 0 1px #ffffffe6}.test-selection-item.generated-test{background:linear-gradient(135deg,#fff,#8b5cf60d);outline-color:#8b5cf626;position:relative}.test-selection-item .test-selection-footer{position:relative;z-index:5}.test-selection-item.generated-test:before{background:linear-gradient(135deg,#8b5cf640,#8b5cf614)}.test-selection-item.generated-test:hover{outline-color:#8b5cf64d;box-shadow:0 4px 12px #8b5cf626,0 8px 24px #0000001f,inset 0 1px #ffffffe6}.test-selection-item.generated-test.selected{background:linear-gradient(135deg,#8b5cf61a,#8b5cf60d);outline:2px solid #8b5cf6;outline-offset:-2px;box-shadow:0 4px 12px #8b5cf633,0 8px 24px #0000001a,inset 0 1px #ffffffe6}.test-selection-header{margin-bottom:.75rem}.test-title-with-badge{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.test-selection-header h5{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0}.ai-badge{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;padding:.375rem .875rem;border-radius:16px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.75px;box-shadow:0 2px 6px #8b5cf64d,inset 0 1px #fff3;border:1px solid rgba(255,255,255,.15);position:relative;overflow:hidden}.ai-badge:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,transparent 100%);pointer-events:none}.test-selection-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:var(--neutral-600)}.test-selection-meta span{display:flex;align-items:center;gap:.25rem}.test-duration:before,.test-questions:before{content:"•";margin-right:.25rem;color:var(--neutral-400)}.test-duration:first-child:before{display:none}.confidence-score{background:#8b5cf61a;color:#7c3aed;padding:.25rem .5rem;border-radius:8px;font-weight:600}.test-selection-description{font-size:.9375rem;color:var(--neutral-700);line-height:1.6;margin:.75rem 0}.generation-rationale{background:#8b5cf60d;border-left:3px solid #8b5cf6;padding:.75rem 1rem;border-radius:0 8px 8px 0;margin-top:.75rem;font-size:.875rem;color:var(--neutral-700)}.generation-rationale strong{color:#7c3aed;font-weight:600}.test-selection-actions{display:flex;gap:.75rem;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.selected-indicator{display:flex;align-items:center;gap:.5rem;color:var(--primary-600);font-weight:600;font-size:.875rem;margin-left:auto}.selected-indicator svg{color:var(--success)}.modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem;background:var(--neutral-50);border-radius:0 0 1rem 1rem}.modal-footer .btn{padding:.75rem 1.5rem;border-radius:10px;font-weight:600;transition:var(--transition-base)}.modal-footer .btn-secondary{background:#fff;border:2px solid var(--neutral-300);color:var(--neutral-700)}.modal-footer .btn-secondary:hover{background:var(--neutral-50);border-color:var(--neutral-400)}.modal-footer .btn-primary{background:var(--gradient-primary);color:#fff;border:none;box-shadow:var(--shadow-primary)}.modal-footer .btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px #dc26264d}.modal-footer .btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.test-summary{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.test-summary h4{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.summary-stat{display:flex;align-items:center;gap:1rem;padding:1rem;background:linear-gradient(135deg,#dc26260d,#dc262605);border-radius:10px;border:1px solid rgba(220,38,38,.1);transition:var(--transition-base)}.summary-stat:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#dc262633}.stat-icon{font-size:1.5rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:12px;box-shadow:var(--shadow-sm)}.stat-content{flex:1}.stat-number{font-size:1.75rem;font-weight:700;color:var(--primary-600);line-height:1}.stat-label{font-size:.875rem;color:var(--neutral-600);margin-top:.25rem}.test-questions-detailed{background:#fff;border-radius:12px;padding:2rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.test-questions-detailed h4{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.questions-detailed-list{display:flex;flex-direction:column;gap:1.5rem}.question-detailed-item{background:var(--neutral-50);border-radius:12px;padding:1.5rem;border:1px solid var(--border-color);transition:var(--transition-base)}.question-detailed-item:hover{box-shadow:var(--shadow-sm);border-color:#dc262633}.question-detailed-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.question-number{background:var(--gradient-primary);color:#fff;padding:.375rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.answer-status{padding:.375rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:.375rem}.answer-status.correct{background:linear-gradient(135deg,var(--success) 0%,#16a34a 100%);color:#fff}.answer-status.incorrect{background:var(--gradient-primary);color:var(--text-on-primary)}.answer-status.subjective{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.answer-status.unanswered{background:var(--neutral-200);color:var(--neutral-600)}.time-spent{margin-left:auto;padding:.375rem .75rem;background:var(--neutral-100);border-radius:20px;font-size:.875rem;color:var(--neutral-600);font-weight:500}.question-text{font-size:1.0625rem;color:var(--text-primary);line-height:1.6;margin-bottom:1rem;font-weight:500}.question-answers{display:flex;flex-direction:column;gap:.75rem}.answer-option{padding:1rem 1.25rem;background:#fff;border:2px solid var(--border-color);border-radius:10px;display:flex;align-items:flex-start;gap:.75rem;position:relative;transition:var(--transition-base)}.answer-option.patient-selected{border-color:var(--primary-400);background:linear-gradient(135deg,#dc26260d,#dc262605)}.answer-option.correct-answer{border-color:var(--success);background:linear-gradient(135deg,#22c55e0d,#22c55e05)}.answer-option.patient-selected.correct-answer{border-color:var(--success);background:linear-gradient(135deg,#22c55e1a,#22c55e0d);box-shadow:0 0 0 3px #22c55e33}.option-id{font-weight:700;color:var(--primary-600);flex-shrink:0}.option-text{flex:1;color:var(--text-secondary);line-height:1.5}.option-image{width:100%;max-width:200px;margin:.5rem 0}.test-option-img{width:100%;max-width:150px;height:auto;border-radius:8px;border:1px solid var(--border-color);margin-top:8px}.result-option-img{width:100%;height:auto;border-radius:8px;border:1px solid var(--border-color)}.selection-indicator,.correct-indicator{position:absolute;top:.5rem;right:.5rem;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:600}.selection-indicator{background:var(--primary-100);color:var(--primary-700)}.correct-indicator{background:#dcfce7;color:#166534}.test-meta{display:none}.search-container{margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#dc262608,#dc262603);border-radius:16px;border:1px solid rgba(220,38,38,.08)}.search-bar{position:relative;max-width:500px}.search-input{width:100%;padding:1rem 3.5rem 1rem 1.5rem;background:#fff;border:2px solid transparent;border-radius:14px;font-size:1rem;color:var(--text-primary);transition:all .3s ease;box-shadow:0 2px 8px #0000000a,0 4px 16px #00000014,inset 0 1px #fffc;outline:1px solid rgba(220,38,38,.1);outline-offset:-1px}.search-input:hover{outline-color:#dc262633;box-shadow:0 4px 12px #00000014,0 8px 24px #0000001f,inset 0 1px #ffffffe6}.search-input:focus{outline:2px solid var(--primary-400);outline-offset:-2px;box-shadow:0 4px 12px #dc262626,0 8px 24px #0000001a,inset 0 1px #ffffffe6;background:#fff}.search-input::placeholder{color:var(--neutral-400);font-weight:400}.clear-search-btn{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:32px;height:32px}.clear-search-btn:hover{transform:translateY(-50%)}.clear-search-btn svg{width:14px;height:14px}.test-selection-footer{display:flex;justify-content:flex-end;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(220,38,38,.08)}.test-view-btn{position:relative;z-index:10}.test-view-btn svg{width:16px;height:16px;pointer-events:none}.selected-overlay{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #dc26264d}.selected-overlay svg{color:#fff;width:20px;height:20px}.test-selection-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.confidence-score{background:#8b5cf61a;color:#7c3aed;padding:.25rem .5rem;border-radius:8px;font-weight:600;font-size:.8125rem}.test-detail-modal .modal-footer,.test-modal .modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem;background:var(--neutral-50)}.test-results-modal .modal-body{padding:2rem}.test-results-modal .modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem;background:var(--neutral-50);border-radius:0 0 1rem 1rem}.layout-with-sidebar{display:flex;flex:1}.sidebar{width:80px;background:var(--bg-card);border-right:1px solid #FFE0E0;display:flex;flex-direction:column;position:sticky;top:64px;height:calc(100vh - 64px);z-index:100;justify-content:space-between}.sidebar-nav{display:flex;flex-direction:column;padding:2rem 0;gap:.5rem;flex:1;justify-content:center;align-items:center}.sidebar-bottom{display:flex;flex-direction:column;padding:1.5rem 0;align-items:center}.sidebar-item{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:none;background:none;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-base);position:relative}.sidebar-item:hover{background:var(--primary-lighter);color:var(--primary)}.sidebar-item.active{background:var(--primary);color:#fff;box-shadow:var(--shadow-primary)}.sidebar-item.active:after{content:"";position:absolute;right:-1px;top:50%;transform:translateY(-50%);width:3px;height:24px;background:var(--primary);border-radius:2px 0 0 2px}.sidebar-logout{opacity:.7}.sidebar-logout:hover{opacity:1;background:var(--primary-light);color:var(--primary-hover)}.layout-with-sidebar .main-content{flex:1;overflow-x:auto}.dashboard-container{max-width:1400px;margin:0 auto;padding:2rem;width:100%}.dashboard-top-section{display:flex;gap:2rem;align-items:flex-start;margin-bottom:2rem}.dashboard-bottom-section{display:flex;gap:2rem;align-items:flex-start}.dashboard-top-section .metric-cards{flex:2;margin:0}.dashboard-bottom-section .tests-widget{flex:2;margin-top:0}.metric-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:2rem 0}.metric-card{background:var(--bg-card);border-radius:var(--radius-card);padding:2rem;box-shadow:var(--shadow-card);border:1px solid var(--gray-100);transition:var(--transition-base);position:relative;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;cursor:default}.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.metric-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.metric-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--accent-pink-bg);color:var(--accent-pink-fg)}.metric-card.incomplete-tests .metric-icon,.metric-card.patients-active .metric-icon{background:var(--accent-pink-bg);color:var(--accent-pink-fg)}.metric-card.completed-tests .metric-icon,.metric-card.invitations-pending .metric-icon{background:var(--accent-green-bg);color:var(--accent-green-fg)}.metric-card.latest-assessment .metric-icon,.metric-card.assessments .metric-icon{background:var(--accent-blue-bg);color:var(--accent-blue-fg)}.metric-card.upcoming-appointment .metric-icon,.metric-card.tests-issued .metric-icon{background:var(--accent-beige-bg);color:var(--accent-beige-fg)}.metric-label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.metric-main{display:flex;align-items:baseline;gap:.75rem}.metric-value{font-size:3rem;font-weight:600;color:var(--text-primary);line-height:1;letter-spacing:-.02em}.metric-status{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);text-transform:lowercase}.tests-widget,.resources-widget,.upcoming-appointment-widget{background:var(--bg-card);border-radius:var(--radius-card);padding:2rem;box-shadow:var(--shadow-card);border:1px solid var(--gray-100)}.upcoming-appointment-widget,.resources-widget{flex:1;height:auto}.tests-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.tests-icon{width:48px;height:48px;background:var(--accent-beige-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent-beige-fg);flex-shrink:0}.tests-title h3{font-size:var(--text-xl);font-weight:700;color:var(--text-primary);margin:0}.tests-subtitle{font-size:var(--text-sm);color:var(--text-secondary)}.upcoming-appointment-widget .widget-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.upcoming-appointment-widget .header-icon{background-color:var(--accent-beige-bg);color:var(--accent-beige-fg);border-radius:50%;padding:.5rem;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.upcoming-appointment-widget .header-text h3{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.upcoming-appointment-widget .header-subtitle{margin:.25rem 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.no-appointment{padding-top:1rem;color:var(--text-secondary)}@media(max-width:1024px){.dashboard-top-section,.dashboard-bottom-section{flex-direction:column}.dashboard-top-section .metric-cards,.dashboard-bottom-section .tests-widget,.upcoming-appointment-widget,.resources-widget{flex:none;width:100%}}.dashboard{background:var(--beige);color:var(--text-primary)}.dashboard-navbar{background:var(--beige);border-bottom:1px solid var(--border-color);box-shadow:none}.navbar-logo{flex-shrink:0}.nav-item svg,.test-meta-item svg{color:var(--accent)}.nav-item{min-height:44px;border:1.5px solid transparent;border-radius:999px;font-weight:600}.nav-item:hover{color:var(--accent);background:var(--primary-lighter)}.nav-item.active{color:var(--white);background:var(--accent);border-color:var(--accent);box-shadow:none}.nav-item.active svg{color:var(--white)}.dashboard-main{background:var(--beige)}.dashboard-container{padding-block:clamp(1.5rem,4vw,3rem)}.welcome-section{margin-bottom:2rem;padding:1.25rem 0 0}.welcome-title{color:var(--text-primary);font-size:var(--text-4xl);font-weight:300;letter-spacing:-.02em}.welcome-hospital{color:var(--text-secondary)}.section-title-container{gap:1rem;padding-bottom:.875rem;border-bottom:1px solid var(--border-color)}.section-title{color:var(--text-primary);font-size:var(--text-2xl);font-weight:500;letter-spacing:-.01em}.metric-card,.stat-card,.patients-table,.test-card,.tests-widget,.resources-widget,.upcoming-appointment-widget,.modal-content,.test-summary,.test-questions-detailed,.question-item,.question-detailed-item,.test-selection-item,.pending-invitation-item,.test-result-item{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:none}.metric-card,.stat-card,.test-card,.tests-widget,.resources-widget,.upcoming-appointment-widget{border-radius:var(--radius-card)}.metric-card:hover,.stat-card:hover,.test-card:hover,.question-item:hover,.question-detailed-item:hover,.test-selection-item:hover,.pending-invitation-item:hover,.test-result-item:hover{transform:translateY(-3px);border-color:var(--border-accent);box-shadow:var(--shadow-card-hover)}.test-card{box-shadow:var(--shadow-card-rest)}.test-card:hover,.test-card:focus-within{transform:translateY(var(--hover-translate));border-color:var(--hover-border);box-shadow:var(--hover-shadow)}.test-card:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--hover-shadow)}.test-card .test-card-header{background:var(--surface)}.metric-value,.stat-number,.stat-value{color:var(--text-primary);font-weight:500}.metric-label,.test-title,.tests-title h3,.upcoming-appointment-widget .header-text h3,.modal-header h3,.notification-title{color:var(--text-primary);font-weight:600}.metric-status,.stat-label,.test-description,.tests-subtitle,.upcoming-appointment-widget .header-subtitle,.no-appointment,.modal-description,.notification-message,.test-selection-description,.option-text{color:var(--text-secondary)}.metric-icon,.test-icon,.tests-icon,.empty-icon,.upcoming-appointment-widget .header-icon{background:var(--primary-lighter);color:var(--accent);border-radius:999px}.metric-card.completed-tests .metric-icon,.metric-card.invitations-pending .metric-icon,.metric-card.latest-assessment .metric-icon,.metric-card.assessments .metric-icon,.metric-card.upcoming-appointment .metric-icon,.metric-card.tests-issued .metric-icon{background:var(--primary-lighter);color:var(--accent)}.patients-table{overflow:clip}.table-header,.table-body .table-row{background:transparent;border-color:var(--border-color)}.table-body .table-row:hover{background:var(--bg-hover)}.table-cell.header{color:var(--text-secondary);letter-spacing:.12em}.search-container,.test-modal .modal-body,.modal-footer,.test-results-modal .modal-footer,.test-detail-modal .modal-footer,.test-modal .modal-footer,.notification-details,.summary-stat,.question-detailed-item,.test-selection,.generation-rationale,.test-instructions,.generation-rationale-details{background:var(--surface);border-color:var(--border-color);box-shadow:none}.test-instructions h4,.generation-rationale-details h4,.instructions-header svg,.rationale-header svg{color:var(--text-primary)}.test-instructions p,.generation-rationale-details p{color:var(--text-secondary)}.search-input,.email-input,input[type=text],input[type=email],input[type=date],textarea,select{min-height:48px;background:var(--surface);color:var(--text-primary);border:1.5px solid var(--border-color);border-radius:12px;box-shadow:none;outline:none}.search-input:hover,.email-input:hover,input[type=text]:hover,input[type=email]:hover,input[type=date]:hover,textarea:hover,select:hover{border-color:var(--border-strong);box-shadow:none}.search-input:focus,.email-input:focus,input[type=text]:focus,input[type=email]:focus,input[type=date]:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none;background:var(--surface)}.modal-overlay{background:#00000075}.modal-content{border-radius:var(--radius-card);animation:scaleIn .2s ease-out}.modal-content.glass{background:#00000080;border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 28px #00000047}.modal-header,.test-modal .modal-header{background:var(--bg-card);border-bottom:1px solid var(--border-color)}.modal-body{background:var(--bg-card)}.test-card-header,.table-header,.test-selection-actions,.test-selection-footer{border-color:var(--border-color)}.ai-test-badge,.ai-badge,.question-number,.selected-overlay,.answer-status.incorrect{background:var(--accent);color:var(--white);border:1px solid var(--accent);box-shadow:none}.test-status-badge.active{background:var(--success-bg);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 30%,transparent);box-shadow:none}.ai-test-badge,.ai-badge{border-radius:999px;letter-spacing:.08em}.ai-badge:before,.test-selection-item:before{content:none}.test-selection-item.generated-test,.test-selection-item.generated-test.selected{background:var(--bg-card);outline:none;border-color:var(--border-color);box-shadow:none}.test-selection-item.selected,.test-selection-item.generated-test.selected{border-color:var(--accent);background:var(--primary-lighter)}.confidence-score,.generation-rationale strong{color:var(--accent);background:var(--primary-lighter)}.generation-rationale{border-left:3px solid var(--accent)}.test-description,.test-meta-item,.question-item,.option-item,.answer-option,.summary-stat,.test-summary,.test-questions-detailed{background:var(--surface);border-color:var(--border-color);box-shadow:none}.test-questions h4:after{background:var(--accent)}.test-questions:before{content:none}.question-type,.answer-status.unanswered,.time-spent{background:var(--bg-card);color:var(--text-secondary)}.question-points,.answer-status.correct{background:var(--success-bg);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 30%,transparent)}.answer-status.subjective{background:var(--info-bg);color:var(--info);border:1px solid color-mix(in srgb,var(--info) 30%,transparent)}.answer-option.patient-selected,.answer-option.correct-answer,.answer-option.patient-selected.correct-answer{background:var(--primary-lighter);border-color:var(--border-accent);box-shadow:none}.correct-indicator{background:var(--success-bg);color:var(--success)}.selection-indicator{background:var(--primary-lighter);color:var(--accent-hover)}.notification-icon{border-radius:999px}.notification-icon.success,.notification-icon.warning,.notification-icon.info,.notification-icon.error{background:var(--primary-lighter);color:var(--accent)}.performance-badge,.test-score-badge{border-radius:999px}.sidebar{background:var(--beige);border-right:1px solid var(--border-color)}.sidebar-item{border-radius:999px}.sidebar-item:hover{background:var(--primary-lighter);color:var(--accent)}.sidebar-item.active{background:var(--accent);color:var(--white);box-shadow:none}.generated-review-panel,.domain-metrics-panel,.recalculation-panel,.recalculation-preview,.result-review-banner{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-card)}.generated-review-panel,.recalculation-panel{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg);margin:var(--space-lg) 0}.generated-review-panel h4,.recalculation-panel h4,.domain-metrics-panel h4{margin:0 0 var(--space-xs);color:var(--text-primary)}.generated-review-panel p,.recalculation-panel p{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.result-review-banner{margin-bottom:var(--space-md);padding:var(--space-md) var(--space-lg);border-color:var(--warning);background:var(--warning-bg);color:var(--text-primary);line-height:1.5}.domain-metrics-panel{padding:var(--space-lg);margin:var(--space-lg) 0}.domain-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-md);margin-top:var(--space-md)}.domain-metric-item{display:grid;gap:var(--space-xs);padding:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-card);background:var(--beige)}.domain-name{color:var(--text-secondary);font-size:var(--text-sm);text-transform:capitalize}.domain-metric-item strong{color:var(--accent);font-size:var(--text-2xl)}.domain-metric-item span:last-child{color:var(--text-muted);font-size:var(--text-xs)}.recalculation-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;justify-content:flex-end}.recalculation-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);padding:var(--space-lg);margin:var(--space-md) 0 var(--space-lg)}.recalculation-preview div{display:grid;gap:var(--space-xs)}.recalculation-preview span,.recalculation-preview small{color:var(--text-secondary)}.recalculation-preview strong{color:var(--text-primary);font-size:var(--text-2xl)}@media(max-width:768px){.dashboard-navbar{min-height:64px;height:auto}.navbar-logo .stryde-logo--md img{height:28px}.navbar-right{gap:.5rem}.section-title-container{align-items:flex-start;flex-direction:column}.table-row{padding:1rem;border-bottom:1px solid var(--border-color)}.table-header,.table-cell.header{display:none}.table-cell:before{content:attr(data-label);display:block;color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.patient-actions{justify-content:flex-start;flex-wrap:wrap}.generated-review-panel,.recalculation-panel{align-items:stretch;flex-direction:column}.recalculation-actions{justify-content:stretch}.recalculation-actions .modal-btn,.generated-review-panel .modal-btn{width:100%}.recalculation-preview{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--beige);color:var(--text-primary);line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}
