.diagnosis-shell{--diagnosis-reply:color-mix(in srgb, var(--primary) 8%, var(--background));--diagnosis-selected:color-mix(in srgb, var(--primary) 10%, var(--background));--diagnosis-error:#8e291d;--diagnosis-error-background:color-mix(in srgb, var(--diagnosis-error) 6%, var(--background));--diagnosis-shadow:color-mix(in srgb, var(--foreground) 4%, transparent);--input:color-mix(in srgb, var(--foreground) 55%, var(--background));overflow-wrap:anywhere;height:var(--diagnosis-height,100dvh);background:var(--background);flex-direction:column;min-height:0;display:flex;position:relative}.diagnosis-header{padding:max(.85rem, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) .85rem max(1.25rem, env(safe-area-inset-left));border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:1.25rem;display:flex}.diagnosis-brand{letter-spacing:-.07em;min-height:44px;color:var(--primary);align-items:center;font-size:1.65rem;font-weight:800;display:inline-flex}.diagnosis-brand span{color:var(--brand-coral)}.diagnosis-header h1{font-size:.85rem;font-weight:700}.diagnosis-header div>span{color:var(--muted-foreground);margin-top:.15rem;font-size:.7rem;display:block}.diagnosis-exit{align-items:center;min-height:44px;margin-left:auto;padding:.65rem;font-size:.8rem;text-decoration:underline;display:inline-flex}.diagnosis-progress{text-align:center;color:var(--muted-foreground);flex-shrink:0;padding-bottom:.4rem;font-size:.7rem}.diagnosis-progress progress{appearance:none;background:var(--border);border:0;width:100%;height:2px;margin-bottom:.4rem;display:block}.diagnosis-progress progress::-webkit-progress-bar{background:var(--border)}.diagnosis-progress progress::-webkit-progress-value{background:var(--brand-coral);transition:width .2s ease-out}.diagnosis-progress progress::-moz-progress-bar{background:var(--brand-coral)}.diagnosis-conversation{overscroll-behavior:contain;overflow-anchor:none;flex:1;min-height:0;overflow-y:auto}.diagnosis-content{overflow-wrap:anywhere;max-width:720px;margin:auto;padding:1.5rem 1.25rem 2rem}.diagnosis-welcome{margin:1rem 0 1.75rem}.diagnosis-welcome h2{letter-spacing:-.05em;margin:1rem 0;font-size:clamp(1.8rem,5vw,2.3rem);font-weight:650;line-height:1.25}.diagnosis-welcome p{color:var(--muted-foreground);max-width:32rem;font-size:.9rem;line-height:1.7}.diagnosis-avatar{background:var(--primary);width:30px;height:30px;color:var(--primary-foreground);border-radius:calc(var(--radius) - 4px);flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:800;display:inline-flex}.diagnosis-transcript{margin:0;padding:0;list-style:none}.diagnosis-transcript>li{margin-bottom:1.75rem}.diagnosis-section{color:var(--muted-foreground);align-items:center;gap:1rem;margin:1.5rem 0;font-size:.7rem;display:flex}.diagnosis-section:after{content:"";background:var(--border);flex:1;height:1px}.diagnosis-message{gap:.8rem;display:flex}.diagnosis-message-body{flex:1;min-width:0}.diagnosis-speaker{color:var(--primary);margin:.25rem 0 .65rem;font-size:.75rem;font-weight:700;display:block}.diagnosis-speaker span{color:var(--muted-foreground);font-weight:400}.diagnosis-message h2{letter-spacing:-.015em;font-size:1rem;font-weight:500;line-height:1.65}.diagnosis-message[data-active=true] h2{font-weight:650}.diagnosis-text{display:grid;position:relative}.diagnosis-text-space,.diagnosis-text-visible{white-space:pre-wrap;grid-area:1/1}.diagnosis-text-space{visibility:hidden}.diagnosis-caret{background:var(--brand-coral);vertical-align:baseline;width:2px;height:.9em;margin-left:2px;display:inline-block}.diagnosis-reply{border-radius:var(--radius) .25rem var(--radius) var(--radius);background:var(--diagnosis-reply);width:fit-content;max-width:85%;margin:1rem 0 0 auto;padding:.8rem 1rem;font-size:.9rem;line-height:1.6}.diagnosis-reply p{white-space:pre-wrap}.diagnosis-reply button{color:var(--primary);min-height:44px;margin-left:auto;font-size:.7rem;text-decoration:underline;display:block}.diagnosis-composer{background:var(--background);border-top:1px solid var(--border);box-shadow:0 -8px 24px var(--diagnosis-shadow);max-height:calc(var(--diagnosis-height,100dvh) * .58);flex-shrink:0;padding:.85rem 1.25rem .35rem;overflow-y:auto}.diagnosis-composer fieldset{min-width:0}.diagnosis-composer:focus{outline:none}.diagnosis-composer-inner{max-width:680px;margin:auto}.diagnosis-composer-title{justify-content:space-between;gap:.5rem;margin-bottom:.8rem;font-size:.75rem;font-weight:700;display:flex}.diagnosis-composer-title span span,.diagnosis-composer-title>span+span{color:var(--muted-foreground);font-size:.7rem;font-weight:400}.diagnosis-answer-area{max-height:calc(var(--diagnosis-height,100dvh) * .28);margin:-.25rem;padding:.25rem;scroll-padding-block:1rem;overflow-y:auto}.diagnosis-lead-form{max-width:540px;margin-bottom:1rem}.diagnosis-lead-form h3{margin-bottom:1rem;font-size:.9rem;font-weight:700}.diagnosis-lead-form label,.diagnosis-composer label{margin-bottom:1rem;font-size:.85rem;font-weight:600;display:block}.diagnosis-lead-form input,.diagnosis-composer input:not([type=radio]):not([type=checkbox]),.diagnosis-composer textarea{border:1px solid var(--input);border-radius:var(--radius);background:var(--muted);width:100%;font:inherit;min-width:0;margin-top:.4rem;padding:.75rem;font-size:16px;display:block}.diagnosis-composer textarea{resize:vertical;min-height:70px;max-height:calc(var(--diagnosis-height,100dvh) * .2);margin-top:0}.diagnosis-hint{color:var(--muted-foreground);font-size:.7rem;font-weight:400;line-height:1.6}.diagnosis-primary{background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:.8rem;min-height:44px;padding:.75rem 1rem;font-size:.8rem;font-weight:700;display:flex}.diagnosis-lead-form>.diagnosis-primary{width:100%;margin-top:1.25rem}.diagnosis-shell button{cursor:pointer}.diagnosis-shell button:disabled,.diagnosis-shell fieldset:disabled{opacity:.6;cursor:default}.diagnosis-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin:.85rem 0 .25rem;display:flex}.diagnosis-actions>.diagnosis-primary{margin-left:auto}.diagnosis-actions>button:not(.diagnosis-primary){min-height:44px;font-size:.75rem}.diagnosis-skip{color:var(--muted-foreground);text-decoration:underline}.diagnosis-options{flex-wrap:wrap;gap:.5rem;display:flex}.diagnosis-options label{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:.65rem;min-width:0;max-width:100%;min-height:44px;margin:0;padding:.65rem .85rem;transition:background-color .12s ease-out,border-color .12s ease-out;display:flex}.diagnosis-options label[data-selected=true]{border-color:var(--primary);background:var(--diagnosis-selected);color:var(--primary)}.diagnosis-option-text{min-width:0}.diagnosis-options input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0}.diagnosis-options .diagnosis-hint{flex-basis:100%}.diagnosis-distribution label{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.diagnosis-distribution-label{flex:8rem;min-width:0}.diagnosis-distribution-value{flex-shrink:0;align-items:center;gap:.5rem;width:110px;display:flex}.diagnosis-distribution input{margin-top:0!important}.diagnosis-jump{border:1px solid var(--border);background:var(--background);box-shadow:0 2px 8px var(--diagnosis-shadow);border-radius:20px;align-self:center;min-height:44px;margin:.25rem 0;padding:.5rem .9rem;font-size:.75rem}.diagnosis-complete{line-height:1.7}.diagnosis-complete h2{font-size:1.3rem;font-weight:650}.diagnosis-complete p{color:var(--muted-foreground);margin-top:.75rem;font-size:.9rem}.diagnosis-review-link{min-height:44px;color:var(--primary);font-size:.75rem;text-decoration:underline}.diagnosis-complete>.diagnosis-primary{margin-top:1rem}.diagnosis-review{margin-top:1.5rem}.diagnosis-review h3{font-weight:700}.diagnosis-review button{text-align:left;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem 0;font-size:.8rem;display:flex}.diagnosis-review small{color:var(--primary);white-space:nowrap}.diagnosis-error{border-left:3px solid var(--diagnosis-error);background:var(--diagnosis-error-background);color:var(--diagnosis-error);margin-top:.75rem;padding:.75rem;font-size:.8rem;line-height:1.6}.diagnosis-error a{align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.diagnosis-error button{min-height:44px;font-weight:700;text-decoration:underline}.diagnosis-footer{padding:.4rem 1rem max(.4rem, env(safe-area-inset-bottom));text-align:center;color:var(--muted-foreground);flex-shrink:0;font-size:.6rem}@media (width>=768px){.diagnosis-content{padding-top:2rem}.diagnosis-header{padding-inline:2.5rem}}@media (height<=500px){.diagnosis-header{padding-block:.4rem}.diagnosis-header div>span,.diagnosis-footer,.diagnosis-save-hint{display:none}.diagnosis-composer{max-height:calc(var(--diagnosis-height,100dvh) * .65)}}@media (prefers-reduced-motion:reduce){.diagnosis-shell *{scroll-behavior:auto!important;transition:none!important}.diagnosis-progress progress::-webkit-progress-value{scroll-behavior:auto!important;transition:none!important}}.diagnosis-discard-dialog{border-radius:var(--radius);background:var(--background);max-width:min(30rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--foreground);border:0;margin:auto;padding:1.5rem;overflow-y:auto}.diagnosis-discard-dialog::backdrop{background:#00000073}.diagnosis-discard-dialog p{margin:1rem 0}.diagnosis-discard-dialog button{border:1px solid;border-radius:.5rem;min-height:44px;margin:.25rem;padding:.75rem}.diagnosis-review h4{margin-top:1rem;font-weight:600}.diagnosis-review-answer{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:.5rem;display:block}.diagnosis-review button>span{min-width:0}
