*{box-sizing:border-box}:root{--ink:#24111a;--plum:#4a2340;--mauve:#8e5d75;--blush:#d8b4c3;--cream:#f7f1f4;--text:var(--ink);--text-muted:#725465;--background:var(--cream);--surface:#fff;--surface-subtle:#fcf9fb;--surface-hover:#f1e8ee;--primary:var(--plum);--primary-hover:#381a30;--on-primary:#fff;--focus:var(--mauve);--border:#e4d9df;--control-border:var(--mauve);--accent-subtle:#f1e8ee;--shadow-subtle:#24111a05;--shadow-overlay:#24111a26;--success-text:#17352f;--success-accent:#176957;--success-border:#9abdb1;--success-background:#eef8f3;--info-background:#edf4fb;--info-border:#4c7195;--error-background:#fff2ef;--error-border:#a43726;--error-text:#802619;--validation-background:#fff1f1;--validation-text:#8b2525;--warning-background:#fff4d8;--warning-text:#7a5c12;--neutral-background:#eee;--neutral-text:#626262;color:var(--text);background:var(--background);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:var(--primary)}::selection{background:var(--blush);color:var(--ink)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}input[type=radio]{accent-color:var(--primary)}body{margin:0}button,input,textarea{font:inherit}button{border:1px solid var(--control-border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:7px;padding:.6rem .95rem}button:hover{background:var(--surface-hover)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}button.primary:hover{background:var(--primary-hover)}button.link{color:var(--primary);background:0 0;border:0;padding:.5rem 0;text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}header{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.brand{color:var(--primary);letter-spacing:.04em;font-size:1.2rem;font-weight:700;text-decoration:none}.brand span{letter-spacing:0;font-weight:400}.workspace{max-width:1280px;margin:2rem auto;padding:0 2rem}.auth{max-width:510px;margin:3.5rem auto;padding:0 1rem}.card{background:var(--surface);border:1px solid var(--border);box-shadow:0 3px 12px var(--shadow-subtle);border-radius:12px;padding:2rem}h1{letter-spacing:-.025em;margin:0 0 1.2rem;font-size:1.65rem}h2{margin:1.3rem 0 .8rem;font-size:1.1rem}p{line-height:1.6}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--mauve);margin-bottom:.7rem;font-size:.74rem}.muted,small{color:var(--text-muted);font-size:.85rem}small{font-weight:400}.field{flex-direction:column;gap:.45rem;margin:1rem 0;display:flex}.field>span{font-size:.9rem;font-weight:600}input,textarea{border:1px solid var(--control-border);background:var(--surface);width:100%;color:var(--text);border-radius:6px;padding:.7rem}textarea{resize:vertical}.check,.checks label{align-items:center;gap:.55rem;margin:.6rem 0;display:flex}input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--primary);flex-shrink:0}.app-fieldset{border:0;min-width:0;margin:0;padding:0}.checks{border:1px solid var(--border);border-radius:7px;margin:1rem 0;padding:1rem}.section-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.section-head h1{margin:0}.editor{background:var(--surface-subtle);border:1px solid var(--border);border-radius:8px;max-width:680px;margin:1.5rem 0;padding:1.4rem}.actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.95rem .7rem}th{color:var(--text-muted);background:var(--surface-subtle);font-size:.78rem}td button{padding:.4rem .65rem;font-size:.8rem}.badges{flex-wrap:wrap;gap:.5rem;display:flex}.badge{background:var(--accent-subtle);border-radius:30px;padding:.35rem .65rem;font-size:.8rem;display:inline-block}.badge.inactive{background:var(--neutral-background);color:var(--neutral-text)}.badge.invited{background:var(--warning-background);color:var(--warning-text)}.pager{justify-content:flex-end;align-items:center;gap:1rem;margin-top:1.3rem;display:flex}.pager span{font-size:.8rem}.role-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.role{border:1px solid var(--border);border-radius:8px;padding:1.2rem}.role h2{margin-top:0}.role ul{padding-left:1.2rem;font-size:.9rem;line-height:1.8}.settings-list{max-width:850px}.settings-list form{border-bottom:1px solid var(--border);grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:.5rem 0;display:grid}.session{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;font-size:.9rem;line-height:1.6;display:flex}.secret{background:var(--accent-subtle);overflow-wrap:anywhere;padding:1rem;display:block}.codes{grid-template-columns:1fr;gap:.7rem;margin:1.5rem 0;display:grid}.codes code{background:var(--background);overflow-wrap:anywhere;padding:.7rem}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:400px;font-size:.75rem}footer{text-align:center;color:var(--text-muted);padding:2rem;font-size:.75rem}@media (max-width:700px){header{flex-wrap:wrap;padding:1rem}.workspace{margin:1rem auto;padding:0 .8rem}.auth{margin:1.5rem auto}.card{padding:1.2rem}.section-head{flex-direction:column;align-items:flex-start}.settings-list form{grid-template-columns:1fr auto}.settings-list form .field{grid-column:1/-1}.session{flex-direction:column;align-items:flex-start}.pager{justify-content:space-between;gap:.4rem}.pager button{font-size:.8rem}}select{font:inherit;border:1px solid var(--control-border);background:var(--surface);width:100%;color:var(--text);border-radius:6px;padding:.7rem}.smtp-section{border-top:1px solid var(--border);margin-top:2rem;padding-top:1rem}.totp-qr{background:#fff;width:288px;max-width:100%;height:auto;margin:1.2rem auto;display:block}.totp-manual{margin:1.2rem 0}.totp-manual summary{cursor:pointer;color:var(--primary);font-weight:600}.totp-manual summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.toast-stack{z-index:1000;top:max(1rem, env(safe-area-inset-top));right:max(1rem, env(safe-area-inset-right));overscroll-behavior:contain;pointer-events:none;flex-direction:column;gap:.75rem;width:min(26rem,100vw - 2rem);max-height:calc(100dvh - 2rem);display:flex;position:fixed;overflow-y:auto}.toast{border:1px solid var(--success-border);border-left:4px solid var(--success-accent);background:var(--success-background);color:var(--success-text);box-shadow:0 4px 18px var(--shadow-overlay);pointer-events:auto;overflow-wrap:anywhere;border-radius:8px;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.toast-info{color:var(--text);background:var(--info-background);border-color:var(--info-border)}.toast-error{background:var(--error-background);border-color:var(--error-border);color:var(--error-text)}.toast>span{flex:1;min-width:0;line-height:1.5}.toast button{width:2.75rem;height:2.75rem;color:inherit;flex-shrink:0;padding:0;font-size:1.4rem}.smtp-state{color:var(--success-text)}.patient-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;display:grid}.patient-actions,.patient-tabs,.patient-search{flex-wrap:wrap;align-items:center;gap:.75rem;margin:1rem 0;display:flex}.patient-form .patient-actions{grid-column:1/-1}.patient-search .field{flex:16rem}.patient-tabs [aria-selected=true]{background:var(--primary);color:var(--on-primary)}.patient-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.patient-details dt{font-weight:600}.patient-details dd{overflow-wrap:anywhere;margin:.25rem 0}@media (max-width:600px){.patient-form,.patient-details{grid-template-columns:1fr}.patient-search .field{flex-basis:100%}}.main-nav{z-index:50;background:var(--surface);border-bottom:1px solid var(--border);padding:.65rem 2rem;position:relative;overflow:visible}.nav-panels,.nav-clinical,.nav-personal{align-items:center;gap:.35rem;min-width:0;display:flex}.nav-panels{gap:1rem;width:100%}.nav-personal{flex-shrink:0;gap:.65rem;margin-left:auto}.main-nav button{text-align:left;white-space:nowrap;border-color:#0000;align-items:center;gap:.5rem;min-height:44px;padding:.65rem .75rem;display:inline-flex}.main-nav button:hover,.main-nav button:focus-visible{background:var(--surface-hover)}.main-nav button[aria-current=page],.main-nav button.nav-active{background:var(--accent-subtle);color:var(--primary-hover);font-weight:700}.main-nav button[aria-expanded=true]{background:var(--surface-hover)}.main-nav button.nav-active[aria-expanded=true]{background:var(--accent-subtle)}.nav-icon{flex-shrink:0;width:20px;height:20px}.nav-planned small{font-size:.65rem;line-height:1.3;display:block}.main-nav button.nav-planned{opacity:1;color:var(--text-muted);background:0 0}.nav-disclosure{position:relative}.nav-dropdown{border:1px solid var(--border);background:var(--surface);width:max-content;min-width:245px;max-width:calc(100vw - 2rem);box-shadow:0 8px 28px var(--shadow-overlay);border-radius:10px;flex-direction:column;gap:.2rem;padding:.55rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.nav-dropdown[hidden]{display:none}.nav-dropdown button{white-space:normal;width:100%}.nav-user>button{border-color:var(--border);background:var(--surface-subtle)}.nav-user-name{text-overflow:ellipsis;max-width:160px;overflow:hidden}.main-nav .nav-mobile-toggle{display:none}@media (min-width:901px) and (max-width:1150px){.main-nav{padding-inline:1rem}.main-nav button{gap:.35rem;padding-inline:.5rem;font-size:.85rem}.nav-user-name{max-width:110px}.nav-panels{gap:.4rem}}@media (max-width:900px){.main-nav{padding:.65rem 1rem}.main-nav .nav-mobile-toggle{display:inline-flex}.nav-panels{display:none}.nav-panels.is-open{flex-direction:column;align-items:stretch;gap:.75rem;margin-top:.65rem;display:flex}.nav-clinical,.nav-personal{flex-direction:column;align-items:stretch;gap:.25rem;width:100%}.nav-personal{border-top:1px solid var(--border);margin-left:0;padding-top:.75rem}.nav-clinical>button,.nav-disclosure>button{width:100%}.nav-dropdown{width:100%;min-width:0;max-width:100%;box-shadow:none;background:var(--surface-subtle);margin-top:.25rem;position:static}.nav-user{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.5rem}.nav-user-name{white-space:normal;overflow-wrap:anywhere;max-width:none}.nav-disclosure>button>.nav-icon:last-child,.nav-mobile-toggle>.nav-icon:last-child{margin-left:auto}.nav-planned small{margin-left:.6rem;display:inline}}.q-workspace>.patient-tabs{margin-bottom:1rem}.q-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;display:grid}.q-question-editor,.q-preview-question,.q-patient-choices{border:1px solid var(--control-border);border-radius:8px;min-width:0;margin:1.5rem 0;padding:1.2rem}.q-question-editor legend,.q-preview-question legend{overflow-wrap:anywhere;max-width:100%;font-weight:600}.q-option-editor{border-bottom:1px solid var(--border);margin-bottom:1rem;padding-bottom:1rem}.q-options{border:0;min-width:0;margin:1rem 0;padding:0}.q-rules{background:var(--surface-subtle);border-radius:6px;margin:1.2rem 0;padding:1rem}.q-rules summary{cursor:pointer;padding:.25rem 0;font-weight:600}.q-notice{border-left:4px solid var(--mauve);background:var(--background);padding:1rem}.q-validation{color:var(--validation-text);background:var(--validation-background);padding:1rem 1rem 1rem 2rem}.q-prose{white-space:pre-wrap;overflow-wrap:anywhere}.q-answers>div{border-bottom:1px solid var(--border);padding:1rem 0}.q-answers dt{overflow-wrap:anywhere;font-weight:600}.q-answers dd{margin:.5rem 0}.q-hash{overflow-wrap:anywhere;font-size:.8rem}.q-detail h1{overflow-wrap:anywhere;margin-top:1rem}.q-workspace table td,.q-submissions table td{overflow-wrap:anywhere}.q-assignment{border-top:1px solid var(--border);margin-top:2rem}.q-patient-choices .check{overflow-wrap:anywhere;align-items:flex-start}.q-patient-choices input[type=radio],.q-preview input[type=checkbox]{flex-shrink:0;width:1.1rem;height:1.1rem}.q-workspace select,.q-assignment select{max-width:100%}select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.patient-tabs button[aria-pressed=true]{background:var(--accent-subtle);color:var(--primary-hover);font-weight:700}@media (max-width:600px){.q-grid{grid-template-columns:1fr}.q-question-editor,.q-preview-question{padding:.75rem}.q-workspace .section-head{flex-direction:column;align-items:stretch}}.public-questionnaire{max-width:800px;margin:1.5rem auto;padding:0 1rem}.public-questionnaire h1,.public-questionnaire legend{overflow-wrap:anywhere}.public-questionnaire input,.public-questionnaire select,.public-questionnaire textarea{font-size:1rem}.public-questionnaire .check{cursor:pointer;min-height:44px;padding:.5rem 0}.q-field-error{color:var(--validation-text);font-weight:600}.q-created-link{overflow-wrap:anywhere;margin:1rem 0}.q-created-link textarea{width:100%;min-height:5rem}@media (max-width:480px){.public-questionnaire{padding:0 .5rem}.public-questionnaire .card{padding:1rem}}.dev-diagnostics{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem 1rem;display:grid}.dev-diagnostics dt{font-weight:600}.dev-diagnostics dd{overflow-wrap:anywhere;margin:0}.development-settings .settings-list form{flex-wrap:wrap}.development-settings .settings-list form>p{overflow-wrap:anywhere;flex-basis:100%}@media (max-width:600px){.dev-diagnostics{grid-template-columns:minmax(0,1fr)}.dev-diagnostics dd{margin-bottom:.5rem}}.patient-next-step{white-space:pre-wrap;overflow-wrap:anywhere;min-width:12rem;max-width:24rem}.q-mode-selection{border:0;min-width:0;margin:1.5rem 0;padding:0}.q-mode-selection legend{margin-bottom:.8rem;font-weight:600}.q-mode-options{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:1rem;display:grid}.q-mode-card{border:2px solid var(--control-border);background:var(--surface-subtle);cursor:pointer;overflow-wrap:anywhere;border-radius:12px;align-content:start;gap:.65rem;min-width:0;padding:1.25rem;display:grid;position:relative}.q-mode-card:has(input:checked){background:var(--surface-hover);border-color:var(--primary)}.q-mode-card:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.q-mode-card:has(input:disabled){opacity:.5;cursor:default}.q-mode-radio{appearance:none;border:1px solid var(--control-border);width:1.5rem;height:1.5rem;cursor:inherit;border-radius:50%;margin:0;padding:0;position:absolute;top:1.25rem;right:1.25rem}.q-mode-radio:checked{background:var(--primary);border-color:var(--primary)}.q-mode-radio:focus-visible{outline:none}.q-mode-check{width:1.5rem;height:1.5rem;color:var(--on-primary);visibility:hidden;pointer-events:none;padding:.2rem;position:absolute;top:1.25rem;right:1.25rem}.q-mode-radio:checked+.q-mode-check{visibility:visible}.q-mode-icon{width:1.8rem;height:1.8rem;color:var(--primary)}.q-mode-title{padding-right:2rem;font-weight:600}.q-mode-description{color:var(--text-muted);line-height:1.5}@media (max-width:600px){.q-mode-options{grid-template-columns:minmax(0,1fr)}}.q-internal-drafts table{min-width:54rem}.q-internal-drafts .q-draft-state{white-space:nowrap;overflow-wrap:normal}.q-draft-actions{flex-wrap:nowrap;gap:.5rem;min-width:16rem;display:flex}.q-draft-actions button{white-space:nowrap}.q-internal-drafts .table-wrap:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
