:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172a42;background:#fff;font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,textarea{font:inherit}button{cursor:pointer}button:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #7a69ef;outline-offset:3px}a{color:inherit;text-decoration:none}
.shell{min-height:100vh;display:flex;flex-direction:column}.site-header{width:100%;max-width:1240px;padding:26px 30px;margin:auto auto 0;display:flex;align-items:center;gap:20px}.brand-mini{font-size:24px;font-weight:800;letter-spacing:-1.3px}.brand-mini strong{color:#396df2}.brand-mini span{color:#755bec}.top-note{color:#8892a2;font-size:13px;margin:auto}.text-button{background:none;border:0;font-weight:600;color:#263957;padding:10px 8px}.text-button:hover{color:#3466cf}
main{flex:1}.hero{max-width:830px;padding:40px 28px 60px;margin:8vh auto 0;text-align:center}.logo{width:min(580px,95%);height:auto;display:block;margin:auto;mix-blend-mode:multiply}.hero h1{font-size:clamp(28px,4.5vw,39px);font-weight:650;margin:4px 0 9px;letter-spacing:-1.25px}.subheading{color:#748092;font-size:16px;margin:0 0 29px}.search-box{border:1.5px solid #dce3ee;border-radius:23px;box-shadow:0 12px 35px #1b3a6120,0 2px 8px #23364a0a;text-align:left;overflow:hidden;transition:border-color .2s}.search-box:focus-within{border-color:#799aeb}.search-box textarea{display:block;width:100%;border:0;outline:0!important;resize:vertical;min-height:83px;max-height:300px;padding:23px 24px 6px;background:#fff;color:#1e3047;line-height:1.5;font-size:16px}.search-box textarea::placeholder{color:#a0a8b8}.search-controls{display:flex;justify-content:space-between;align-items:center;padding:6px 11px 12px 22px}.privacy-hint{font-size:12px;color:#9ba4b0}.search-controls button,.dialog-action{display:flex;align-items:center;gap:8px;border:0;border-radius:14px;padding:12px 18px;font-weight:650;color:#fff;background:linear-gradient(130deg,#336ee8,#5b4ad8);box-shadow:0 4px 15px #5368d833}.search-controls button:hover,.dialog-action:hover{filter:brightness(1.07)}.search-controls button:disabled{opacity:.55;cursor:wait}.search-caption{font-size:12px;color:#a4abb7;margin-top:22px}
.results{width:min(1060px,calc(100% - 36px));margin:6px auto 72px;animation:arrive .23s ease both}.results-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.6px;color:#7e8da1}.results-heading h2{font-size:21px;font-weight:650;overflow-wrap:anywhere;margin:7px 0 0}.dev-pill{background:#f3f1ff;border-radius:100px;color:#6b54b4;padding:7px 13px;font-size:12px;white-space:nowrap}.two-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.result-card{border:1px solid #e4e8f0;border-radius:20px;padding:24px 25px;min-height:240px;display:flex;flex-direction:column;box-shadow:0 5px 22px #202d4510}.card-title{display:flex;gap:12px;align-items:center}.card-title h3{font-size:19px;letter-spacing:-.45px;margin:0}.symbol{width:35px;height:35px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:21px}.symbol.medical{background:#eaf1ff;color:#376bea}.symbol.natural{background:#e4f6ef;color:#219f7b}.status{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:600;color:#606f80;margin-top:20px}.dot{width:8px;height:8px;background:#c49d4c;border-radius:50%}.description{font-size:14px;line-height:1.65;color:#6e7a8a;margin:10px 0 25px}.footnote{margin-top:auto;padding-top:15px;border-top:1px solid #eff1f5;font-size:11px;color:#99a3b1}.community-card{border-radius:18px;background:#f8fafc;margin-top:18px;padding:22px 24px}.community-title{font-weight:650}.community-card p{margin:8px 0 0;color:#728091;font-size:14px}.prototype-note{font-size:12px;color:#8894a3;text-align:center;margin-top:20px}.error{margin:18px auto;max-width:800px;padding:15px;border-radius:12px;background:#fff0f0;color:#a2222f}footer{max-width:1240px;width:100%;padding:24px 30px 25px;margin:0 auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #edf0f4;font-size:12px;color:#98a0ad}
dialog{padding:0;border:none;border-radius:18px;box-shadow:0 14px 70px #11204038;max-width:440px;width:calc(100% - 36px)}dialog::backdrop{background:#111b3366}.modal{padding:24px}.modal-header{display:flex;align-items:center;justify-content:space-between}.modal p{font-size:14px;color:#687688;line-height:1.65}.dialog-action{margin-left:auto}.sr-only{position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}
@keyframes arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(max-width:660px){.site-header{padding:18px 18px}.top-note{display:none}.site-header .text-button{margin-left:auto}.hero{padding:15px 16px 35px;margin-top:9vh}.logo{width:95%}.hero h1{font-size:29px}.subheading{font-size:14px}.search-box textarea{padding:19px 18px 5px}.two-panels{grid-template-columns:1fr}.results-heading h2{font-size:19px}.results{width:calc(100% - 28px)}.result-card{min-height:205px}footer{flex-direction:column;padding:16px 20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* v0.02 safe sourced-result layout */
.finding-list{display:grid;gap:10px;margin-bottom:12px}.finding{border:1px solid #edf0f5;border-radius:12px;background:#fbfcff;padding:13px}.finding p{margin:0 0 7px;color:#43536b;font-size:13px;line-height:1.55}.finding a{color:#2859c4;overflow-wrap:anywhere;font-size:12px;font-weight:650}.evidence-tag{display:inline-block;background:#f0f3fa;color:#58708c;border-radius:99px;padding:3px 8px;margin-bottom:8px;font-size:11px}.community-list{display:grid;gap:10px;margin-top:14px}.community-entry{border:1px solid #e8edf5;background:white;border-radius:13px;padding:14px 16px}.community-entry strong{display:block;font-size:13px;color:#26384f;margin-bottom:5px}.community-entry p{font-size:13px;margin:0 0 5px;line-height:1.55}.community-entry small{font-size:11px;color:#7d8ca0}.no-diagnosis{font-size:12px;color:#8090a5;margin-top:10px}
/* v0.03 community and accounts */
.member-nav{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}.community-workspace{max-width:1060px;width:calc(100% - 36px);margin:18px auto 80px;padding-top:28px;border-top:1px solid #e5eaf2}.workspace-header{display:flex;justify-content:space-between;align-items:start;gap:15px}.workspace-header h2{font-size:25px;letter-spacing:-.65px;margin:5px 0}.workspace-header .subheading{font-size:13px;margin:7px 0 18px}.primary-button{background:#315ee4;color:#fff;border:0;border-radius:13px;padding:12px 17px;font-size:13px;font-weight:650;cursor:pointer}.primary-button:hover{background:#244bc1}.discussion-list{display:grid;gap:11px}.discussion-card{padding:17px 19px;border:1px solid #e1e8f2;border-radius:14px;background:#fff;text-align:left;width:100%;cursor:pointer;color:#26384f}.discussion-card:hover{border-color:#9fb7f4;box-shadow:0 3px 12px #25356b11}.discussion-card strong{display:block;font-size:16px;margin-bottom:6px}.discussion-card p{line-height:1.55;font-size:13px;margin:0 0 8px;color:#66758b}.byline,.discussion-card small{color:#8391a2;font-size:12px}.detail-pane{border:1px solid #e2e8f2;background:#fff;border-radius:18px;padding:24px;margin:20px 0}.detail-pane h3{font-size:22px}.detail-pane h4{margin-top:24px}.long-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;color:#40506a;font-size:14px}.comment-card{padding:15px 0;border-bottom:1px solid #eef1f6}.comment-card strong{font-size:13px}.comment-card p{white-space:pre-wrap;font-size:13px;line-height:1.6}.detail-pane form{display:grid;gap:10px;margin-top:18px}.detail-pane textarea,.detail-pane input,.account-form input:not([type=checkbox]){font:inherit;width:100%;border:1px solid #cdd8e9;border-radius:12px;padding:12px;color:#1e3047;background:#fff}.detail-pane label,.account-form label{font-size:13px;font-weight:600}.checkline{display:flex;gap:8px;align-items:flex-start;font-size:12px!important;line-height:1.5;color:#556579}.checkline input{width:auto!important;flex-shrink:0}.profile-stats{display:flex;gap:15px;background:#f4f7fc;padding:15px;border-radius:12px}.activity-line{border-bottom:1px solid #e7ecf4;padding:12px 0}.activity-line button{border:0;background:none;color:#2859c4;cursor:pointer;text-align:left}.inline-status{color:#3f6385;font-size:13px;line-height:1.55;margin:12px 0}.account-tabs{display:flex;gap:8px;margin:15px 0}.account-tabs button{border:1px solid #d8e2f1;background:#f6f8fc;border-radius:10px;padding:8px 14px;cursor:pointer}.account-tabs button.selected{background:#e8efff;border-color:#97b2ef;color:#2353bc}.account-form{display:grid;gap:14px}.account-form label{display:grid;gap:6px}.recovery-output{padding:13px;border:1px solid #e9c97d;border-radius:12px;background:#fff9e8;margin-top:15px}.recovery-output code{display:block;overflow-wrap:anywhere;padding:8px 0;font-size:12px}.recovery-output p{font-size:12px}.error[hidden], [hidden]{display:none!important}@media(max-width:660px){.workspace-header{display:block}.member-nav{gap:1px}.member-nav button{font-size:12px;padding:7px}.detail-pane{padding:15px}.community-workspace{width:calc(100% - 24px)}}

/* v0.04 community navigation, suggestions and directory */
.site-header .member-nav{flex-wrap:wrap;justify-content:flex-end}
.member-nav .primary-button{font-size:13px;padding:9px 12px}
.community-search-form{display:grid;grid-template-columns:1fr 1fr;gap:9px;align-items:center;margin:15px 0}
.community-search-form label{grid-column:span 1;font-size:13px;font-weight:600}
.community-search-form input,.community-search-form select,.detail-pane select,.account-form select{width:100%;background:#fff;border:1px solid #cdd8e9;border-radius:10px;padding:12px;color:#182d46;font:inherit}
.community-search-form button{justify-self:start}
.category-directory{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 24px}
.category-directory button{border:1px solid #d7dfef;color:#24447c;background:#f5f8ff;border-radius:18px;padding:8px 11px;cursor:pointer;font-size:12px}
.similar-questions{padding:5px 0}
.similar-questions button{display:block;margin:7px 0;width:100%;text-align:left;border:1px solid #d9e6f4;border-radius:10px;background:#f5f9ff;padding:10px;color:#184c93;cursor:pointer}
.similar-questions p{font-size:13px;color:#526880}
.helpful-tag{font-size:12px;font-weight:700;color:#205c49;background:#eaf8f1;padding:4px 8px;border-radius:8px}
#outcomes-list .comment-card{margin:8px 0}
#outcome-form{border-top:1px solid #e5ebf5;padding-top:16px}
#report-dialog .modal{padding:22px;width:min(92vw,440px)}
@media(max-width:760px){.site-header .member-nav{justify-content:center}.community-search-form{grid-template-columns:1fr}.community-search-form label{grid-column:span 1}}

/* Ailmeo v0.05: accessible, mobile-first identity and navigation */
:root {--ailmeo-ink:#182a47;--ailmeo-blue:#2c5cdd;--ailmeo-stroke:#dce5f1;--ailmeo-soft:#f5f8ff}
.site-header{position:relative;z-index:20;max-width:1180px}
.brand-mini{flex-shrink:0;text-decoration:none}.brand-mini:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #5688f3;outline-offset:3px}
.top-note{margin:auto;font-size:12px;letter-spacing:.03em;white-space:nowrap;color:#708098}
.brand-tagline{font-weight:700;letter-spacing:.2em;font-size:clamp(10px,1.5vw,15px);color:#34435c;margin:0 0 26px}
.brand-tagline span{padding:0 .2em;color:#466ce2}
.logo{width:min(560px,96%);mix-blend-mode:multiply}
.mobile-menu-toggle{display:none}
.member-nav{flex-wrap:nowrap;gap:10px}.member-nav button{white-space:nowrap}
.explore-launch{display:flex;gap:15px;align-items:center;text-align:left;width:min(640px,100%);margin:22px auto 0;padding:16px 20px;border:1px solid #d4dfee;border-radius:16px;color:#58708d;background:#fff;box-shadow:0 4px 15px #192f4d0b;font:inherit;font-size:15px;cursor:pointer}
.explore-launch span:first-child{font-size:25px;color:#3969e9;line-height:1}.explore-launch span:last-child{margin-left:auto;color:#3969e9}.explore-launch:hover{border-color:#8eacee;background:#f8faff}
.explore-mode .hero,.explore-mode .results,.explore-mode .workspace-header,.explore-mode .prototype-note{display:none!important}
.explore-mode .community-workspace{border:0;padding-top:6px;margin-top:15px}
.explore-mode #community-search-view{margin-top:0;padding:clamp(16px,3vw,34px);min-height:60vh;border:0;background:transparent}
.explore-mode #community-search-view h3{font-size:clamp(25px,4vw,36px);letter-spacing:-.05em;margin:10px 0}
.explore-mode .community-search-form{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:14px;border:1px solid var(--ailmeo-stroke);border-radius:20px;padding:18px;background:white}
.explore-mode .community-search-form label{display:block;font-weight:650;margin-bottom:4px;grid-column:auto}
.explore-mode .community-search-form input,.explore-mode .community-search-form select{height:46px;border-radius:12px;min-width:0}
.explore-mode .community-search-form button{height:46px;align-self:end}
.explore-mode .category-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.explore-mode .category-directory button{border-radius:14px;background:white;text-align:left;padding:13px;font-size:13px;font-weight:600;border-color:var(--ailmeo-stroke);min-height:54px}
.explore-mode .category-directory button:hover{background:#f1f5ff;border-color:#7799ea}
.results-count{color:#5a6c83;font-size:13px;margin:20px 0 12px}
.explore-mode #existing-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.explore-mode #existing-results .discussion-card{min-height:130px}
.medical-reference{display:grid;gap:12px;margin-top:16px}.medical-reference h4{margin:0}.medical-source-note{font-size:12px;color:#67778b;line-height:1.6}
.medical-match{border:1px solid #dfe8f2;border-radius:14px;padding:15px;background:#fbfcff}.medical-match strong{display:block;font-size:15px;color:#173251}.medical-match p{font-size:13px;color:#56677c;line-height:1.65;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}.medical-match a,.regional-link{font-size:13px;font-weight:650;color:#2455c6}
#sign-in-dialog{width:min(95vw,470px);max-height:min(90dvh,850px);overflow-y:auto;border-radius:26px;background:#fff;box-shadow:0 28px 100px #0d1f4055}
#sign-in-dialog::backdrop{background:rgba(16,29,54,.6);backdrop-filter:blur(3px)}
#sign-in-dialog .modal{padding:clamp(22px,5vw,36px)}
#sign-in-dialog .modal-header{align-items:flex-start;margin-bottom:20px}
.auth-title{display:grid;gap:5px}.auth-title strong{font-size:24px;letter-spacing:-.8px;color:var(--ailmeo-ink)}.auth-title small{font-size:13px;font-weight:450;color:#697b90}
#close-dialog{font-size:20px;border-radius:12px;background:#f1f5fb;width:38px;height:38px;padding:0;flex-shrink:0}
#sign-in-dialog .account-tabs{display:grid;grid-template-columns:1fr 1fr;padding:5px;background:#f1f5fb;border-radius:15px;margin-bottom:23px}
#sign-in-dialog .account-tabs button{background:transparent;border:0;border-radius:11px;font-size:14px;font-weight:700;padding:12px;color:#60728c}
#sign-in-dialog .account-tabs button.selected{background:white;color:#2055d2;box-shadow:0 2px 8px #1b31521b}
#sign-in-dialog .account-form{gap:16px}
#sign-in-dialog .account-form label{font-size:13px;color:#29405e;gap:8px}
#sign-in-dialog .account-form input:not([type=checkbox]){height:50px;border-radius:13px;background:#fcfdff;border:1px solid #ccd9e8;padding:0 15px;font-size:16px}
#sign-in-dialog .account-form h3{font-size:22px;letter-spacing:-.04em;margin:0}
#sign-in-dialog .account-form p{margin:0 0 6px}
#sign-in-dialog .account-form .dialog-action,#sign-in-dialog .auth-state .dialog-action{width:100%;justify-content:center;border-radius:13px;min-height:49px;margin:6px 0 0;font-size:15px}
#sign-in-dialog .account-form .checkline{display:flex;align-items:flex-start;gap:9px}
#sign-in-dialog .account-form .checkline input{height:18px;width:18px!important;margin:0;flex-shrink:0}
.auth-links{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:-2px}
.auth-links button{background:none;border:0;color:#2454c6;font-size:13px;font-weight:650;cursor:pointer;padding:5px 0}
#account-message:not(:empty){border-radius:12px;background:#ecf8f3;border:1px solid #b6e3d0;color:#165940;padding:13px 15px;font-weight:600;margin-top:20px}
#account-message.is-error:not(:empty){background:#fff0f0;border-color:#f3c4cc;color:#a12d40}
.auth-state{text-align:center;padding:16px 8px 8px}.auth-state-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#e4f2eb;color:#247b52;font-size:32px;margin:0 auto 15px}
.auth-state h3{font-size:25px;color:var(--ailmeo-ink);margin:12px 0}.auth-state p{font-size:14px;line-height:1.65;margin-bottom:25px}
@media(max-width:1050px){.top-note{display:none}.member-nav{gap:5px}.site-header{padding:18px 20px}}
@media(max-width:760px){
 .site-header{padding:14px 17px;justify-content:space-between;gap:12px;min-height:70px}
 .brand-mini{font-size:26px}.mobile-menu-toggle{display:flex;align-items:center;gap:8px;background:#eff4fd;border:1px solid #d8e4f6;border-radius:12px;padding:9px 13px;font-weight:700;color:#1c3c78;cursor:pointer}
 .member-nav{position:absolute;top:calc(100% - 2px);left:12px;right:12px;display:none;flex-direction:column;align-items:stretch;gap:7px;box-shadow:0 18px 34px #11244329;border:1px solid #dce5f1;border-radius:18px;background:white;padding:13px;z-index:21}
 .member-nav.is-open{display:flex}.member-nav button{text-align:left!important;width:100%;font-size:15px!important;padding:13px 14px!important;border-radius:11px}
 .member-nav .primary-button{text-align:center!important}
 .hero{margin-top:3vh}.hero h1{font-size:clamp(26px,7.5vw,33px)}.brand-tagline{margin-bottom:30px;font-size:clamp(9px,2.8vw,12px);letter-spacing:.09em}
 .explore-mode #community-search-view{padding:0 4px}
 .explore-mode .community-search-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;border-radius:16px}
 .explore-mode .community-search-form label:first-child,.explore-mode .community-search-form input,.explore-mode .community-search-form button{grid-column:1/-1}
 .explore-mode .community-search-form label:nth-of-type(2){grid-column:1}.explore-mode .community-search-form label:nth-of-type(3){grid-column:2}
 .explore-mode .category-directory{grid-template-columns:repeat(2,minmax(0,1fr))}
 .explore-mode #existing-results{grid-template-columns:1fr}
 #sign-in-dialog{width:calc(100% - 20px);border-radius:22px;max-height:93dvh}
 #sign-in-dialog .modal{padding:22px}
}
@media(max-width:360px){.brand-tagline{letter-spacing:0}.explore-mode .category-directory{grid-template-columns:1fr}}

/* v0.05 Explorer field layout (labels and inputs stay together on iPhone) */
.explore-mode .community-search-form .explore-field{display:grid;gap:7px;min-width:0}
.explore-mode .community-search-form .explore-field label{font-size:13px;font-weight:650;min-height:18px;margin:0}
.explore-mode .community-search-form .explore-field input,.explore-mode .community-search-form .explore-field select{min-width:0;width:100%;box-sizing:border-box}
@media(max-width:760px){.explore-mode .community-search-form .explore-query{grid-column:1/-1}.explore-mode .community-search-form .explore-field:not(.explore-query){grid-column:auto}.explore-mode .community-search-form > button{grid-column:1/-1;width:100%}}

.mobile-submit-question{display:none}
@media(max-width:760px){.mobile-submit-question{display:block;width:min(640px,100%);margin:12px auto 0;min-height:48px;font-size:15px}}

.medical-safety-note{padding:10px 12px;border-left:3px solid #ba7444;background:#fff8f0;color:#74482f;font-size:13px;line-height:1.5;border-radius:0 8px 8px 0}
