:root{
  color-scheme:light;
  --ink:#18303d;--muted:#667a84;--navy:#123b54;--navy-dark:#0b2d40;--teal:#0f766e;
  --teal-soft:#e8f5f2;--blue-soft:#edf5f8;--line:#d7e2e7;--soft:#f4f7f8;--paper:#fff;
  --warning:#8a5a05;--warning-bg:#fff8e7;--danger:#9b3535;--danger-bg:#fff1f0;
  --low:#24745b;--moderate:#9b6a0d;--high:#b85331;--very-high:#913141;
  --shadow:0 18px 45px rgba(18,59,84,.10);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:#edf3f5;color:var(--ink);font-size:16px;line-height:1.45}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #59b8cf;outline-offset:2px}
[hidden]{display:none!important}
.topbar{height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,54px);background:var(--navy);color:#fff}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.01em}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:8px;color:#bce8e2;font-size:.78rem}
.top-actions{display:flex;gap:8px}.header-button{border:0;background:transparent;color:#e6f1f5;padding:8px 10px;border-radius:7px;font-weight:700;font-size:.875rem}.header-button:hover{background:rgba(255,255,255,.1)}
.page{width:min(880px,100%);margin:auto;padding:24px clamp(12px,3vw,30px) 48px}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.page-heading h1{margin:0;color:var(--navy);font-size:clamp(1.65rem,3vw,2rem);letter-spacing:-.025em;line-height:1.12}.page-heading p{margin:6px 0 0;color:var(--muted)}.privacy-note{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#dfeaec;color:#49626e;font-size:.76rem;font-weight:700}
.clinical-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.flow-column{min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:visible}.flow-column:has(.inline-help[open]){position:relative;z-index:30}
.flow-section{position:relative;z-index:0;display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:22px 22px 22px 18px;border-bottom:1px solid var(--line)}.flow-section:has(.inline-help[open]){z-index:25}.flow-section:last-child{border-bottom:0}.flow-section.reveal{animation:reveal .22s ease both}@keyframes reveal{from{opacity:.15;transform:translateY(-5px)}}
.section-index{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;font-size:.84rem;margin-top:2px}.section-body{min-width:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.section-title h2{margin:0;color:var(--navy);font-size:1.15rem}.section-title>span{font-size:.76rem;color:var(--muted);font-weight:700}
  .field-grid{display:grid;gap:12px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.core-grid{row-gap:14px}.align-inputs>label{justify-content:flex-end}.compact-top{margin-top:12px}
label:not(.plain-check):not(.chip-grid label):not(.segmented label):not(.unit-switch label){display:flex;flex-direction:column;gap:6px;font-size:.84rem;color:#3d5561;font-weight:700}
input[type=number],select{width:100%;min-height:43px;border:1px solid #bdccd3;border-radius:8px;background:#fff;color:var(--ink);padding:8px 10px}input[type=number]:hover,select:hover{border-color:#7e9aa6}input.invalid,select.invalid{border-color:var(--danger);box-shadow:0 0 0 2px rgba(155,53,53,.1)}
.single-select,.single-input{max-width:285px;margin-top:13px}.continue-hint{margin:14px 0 0;padding:10px 12px;border-left:3px solid #9db5be;background:var(--soft);color:var(--muted);font-size:.82rem}
  .question-row{display:grid;grid-template-columns:minmax(0,1fr) 138px;align-items:center;gap:20px;margin:14px 0;padding:0}.question-row>span{display:flex;flex-direction:column;color:#334d5a;font-size:.9rem}.question-row .segmented{width:138px}.question-row .segmented label{flex:1}.question-row small{margin-top:3px;color:var(--muted);font-size:.78rem}.primary-question{margin:0}.primary-question>span{max-width:none}.emphasis-question{margin:16px 0;padding:12px 14px;border:1px solid #c7d9df;border-left:4px solid var(--teal);border-radius:10px;background:var(--blue-soft)}.emphasis-question>span{font-weight:800;color:var(--navy)}
  .question-title{display:flex;align-items:center;gap:7px}.inline-help{position:relative;display:inline-block;flex:0 0 auto}.inline-help summary{width:20px;height:20px;display:grid;place-items:center;border:1px solid #8aa6b2;border-radius:50%;background:#fff;color:var(--navy);font-size:.75rem;font-weight:900;cursor:pointer;list-style:none}.inline-help summary::-webkit-details-marker{display:none}.inline-help[open] summary{background:var(--navy);color:#fff}.help-popover{position:absolute;z-index:12;top:27px;left:-8px;width:min(430px,calc(100vw - 48px));padding:12px 13px;border:1px solid #b8cbd3;border-radius:9px;background:#fff;color:#334d5a;font-size:.78rem;font-weight:500;line-height:1.45;box-shadow:0 12px 34px rgba(18,59,84,.2)}.help-wide{width:min(520px,calc(100vw - 48px))}.help-close{position:sticky;top:0;float:right;width:36px;height:36px;margin:-3px -3px 8px 12px;padding:0;border:1px solid #9eb3bc;border-radius:50%;background:#fff;color:var(--navy);font-size:1.55rem;font-weight:500;line-height:1}.help-close:hover{background:var(--soft)}.modifier-box{margin-top:0}
.segmented,.unit-switch{display:inline-flex;flex:0 0 auto;padding:3px;border-radius:9px;background:#e9eff1}.segmented label,.unit-switch label{position:relative}.segmented input,.unit-switch input{position:absolute;opacity:0}.segmented span,.unit-switch span{display:block;min-width:66px;padding:7px 12px;border-radius:7px;text-align:center;color:#536b76;font-size:.82rem;font-weight:800}.segmented input:checked+span,.unit-switch input:checked+span{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(17,52,70,.16)}
.unit-switch span{min-width:auto;padding:5px 9px}.conditional-box{margin-top:15px;padding:15px;border:1px solid #c9d9df;border-radius:11px;background:#f7fafb}.box-label{margin:0 0 10px;color:var(--muted);font-size:.78rem;font-weight:750}
.chip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.chip-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.chip-grid label,.plain-check{display:flex;align-items:flex-start;gap:8px;min-height:40px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#344e5a;font-size:.8rem;font-weight:650;cursor:pointer}.chip-grid input,.plain-check input{width:17px;height:17px;flex:0 0 auto;margin:1px 0 0;accent-color:var(--teal)}.chip-grid label:has(input:checked),.plain-check:has(input:checked){border-color:var(--teal);background:var(--teal-soft)}.align-end{align-self:end}
.compact-details{margin-top:13px;border-top:1px dashed #c8d6dc;padding-top:10px}.compact-details summary{color:var(--navy);font-size:.82rem;font-weight:800;cursor:pointer}.details-grid{margin-top:11px}
.auto-score{display:flex;align-items:center;gap:18px;margin-top:16px;padding:14px 16px;border-radius:11px;background:var(--navy);color:#fff}.auto-score>div{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:9px;white-space:nowrap}.auto-score span{color:#c7dce5;font-size:.8rem;font-weight:800}.auto-score strong{font-size:1.55rem}.auto-score p{margin:0;color:#d9e7ec;font-size:.8rem}
.dlcn-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px 14px;border-radius:9px;background:var(--navy);color:#fff}.dlcn-head>div{display:flex;align-items:baseline;gap:5px}.dlcn-head span{color:#bad3dd;font-size:.75rem}.dlcn-head strong{font-size:1.65rem}.dlcn-head small{color:#bad3dd;font-size:.72rem}.dlcn-head b{font-size:.87rem}
.section-note{margin:-4px 0 15px;color:var(--muted);font-size:.84rem}
.modifier-group-title{margin:0 0 10px;color:var(--navy);font-size:.86rem;font-weight:850}.modifier-group-title.spaced{margin-top:18px}
.result-panel{position:static;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:22px;border:1px solid #c8d7dd;border-radius:16px;background:#fff;box-shadow:var(--shadow)}.result-topline{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;margin-bottom:2px;color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.result-topline span:last-child{text-transform:none;letter-spacing:0;text-align:right;font-weight:650}
.risk-card{padding:18px;border-radius:12px;background:var(--navy);color:#fff;border-left:6px solid #7c98a5}.risk-card span,.risk-card small{display:block;color:#cbdde4}.risk-card strong{display:block;margin:4px 0;font-size:1.55rem;line-height:1.12}.risk-card.low{border-left-color:#49bd91}.risk-card.moderate{border-left-color:#efba4b}.risk-card.high{border-left-color:#ef835e}.risk-card.very-high{border-left-color:#ff7887}
.risk-card,.score-card,.key-results{grid-column:span 2}.score-card{display:grid;grid-template-columns:1fr auto;align-content:center;gap:2px 12px;margin:0;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:var(--blue-soft)}.score-card span{font-size:.82rem;font-weight:850;color:var(--navy)}.score-card strong{grid-row:1/3;grid-column:2;font-size:1.45rem;color:var(--navy)}.score-card small{color:var(--muted);font-size:.72rem}.score-card.inactive{opacity:.58}
.key-results{display:flex;align-items:center;margin:0;padding:13px 15px;border:1px solid var(--line);border-radius:10px}.key-results>div{display:grid;width:100%;grid-template-columns:82px minmax(0,1fr);gap:10px}.key-results dt{color:var(--muted);font-size:.78rem}.key-results dd{margin:0;text-align:right;font-size:.9rem;font-weight:800}
.recommendation{grid-column:1/-1;padding:12px 13px;border-radius:9px;background:var(--teal-soft);color:#27534f;font-size:.84rem}.result-list{grid-column:span 3;padding:2px 4px}.result-list h3{margin:0 0 7px;color:var(--muted);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em}.result-list ul{margin:0;padding-left:18px;font-size:.82rem}.result-list li{margin:5px 0}.warning-list{padding:11px 12px;border-radius:9px;background:var(--warning-bg);color:#6f4900}.action-list{grid-column:1/-1;padding:13px 15px;border-radius:9px;background:#edf5f8}.action-list h3{color:var(--navy)}
.reclassify-box{grid-column:1/-1;padding:14px;border:1px solid #e7c979;border-radius:10px;background:#fff9e9}.reclassify-box>strong{font-size:.9rem}.reclassify-box>p{margin:4px 0 12px;color:#73551c;font-size:.8rem}.scenario-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:9px}.scenario-grid>div{display:flex;flex-direction:column;gap:4px;padding:11px;border:1px solid #ead8a8;border-radius:8px;background:#fff}.scenario-grid span{color:#73551c;font-size:.76rem;font-weight:750}.scenario-grid b{color:var(--navy);font-size:.86rem}.scenario-grid small{color:var(--muted);font-size:.75rem}.decision-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}.decision-buttons button{min-height:36px;border:1px solid #c9ad69;border-radius:7px;background:#fff;color:#684b0f;font-size:.76rem;font-weight:800}.decision-buttons button.active{background:#6f5315;color:#fff;border-color:#6f5315}
.result-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.result-actions button,.dialog-actions button,.primary-button,.danger-button{min-height:39px;border:1px solid #aebfc7;border-radius:8px;background:#fff;color:var(--navy);font-weight:800;font-size:.82rem}.result-actions button:hover{background:var(--soft)}
.site-footer{display:grid;gap:10px;margin-top:16px}.sources{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:7px 4px;color:var(--muted);font-size:.78rem}.sources div{display:flex;gap:13px}.sources a{color:#236a88;font-weight:750}.feedback{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f6fafb;color:var(--muted);font-size:.8rem}.feedback>div{display:flex;flex-direction:column;gap:3px}.feedback-label{color:var(--navy);font-size:.88rem;font-weight:850}.feedback a{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border-radius:8px;background:var(--teal-soft);color:#176b67;font-weight:850;text-decoration:none}.feedback a:hover{text-decoration:underline}
dialog{width:min(590px,calc(100% - 28px));border:0;border-radius:14px;padding:23px;color:var(--ink);box-shadow:0 24px 80px rgba(6,31,44,.35)}dialog::backdrop{background:rgba(8,31,43,.58)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.dialog-head h2{margin:0;color:var(--navy)}.icon-button{width:33px;height:33px;border:0;border-radius:50%;background:#edf3f5;font-size:1.35rem}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.primary-button{padding:8px 15px;background:var(--navy);border-color:var(--navy);color:#fff}.danger-button{padding:8px 15px;background:var(--danger);border-color:var(--danger);color:#fff}.fine-print{color:var(--muted);font-size:.82rem}.disclaimer-dialog{width:min(620px,calc(100% - 28px));border-top:5px solid var(--teal);padding:26px}.disclaimer-dialog h2{margin:5px 0 10px;color:var(--navy);font-size:1.45rem}.disclaimer-dialog p{margin:0;color:#334d5a;line-height:1.65}.disclaimer-mark{width:44px;height:30px;display:grid;place-items:center;border-radius:7px;background:var(--teal-soft);color:var(--teal);font-size:.78rem;font-weight:900;letter-spacing:.06em}.disclaimer-accept{width:100%;margin-top:20px}.toast{position:fixed;z-index:30;left:50%;bottom:22px;transform:translateX(-50%);padding:10px 15px;border-radius:8px;background:#102f41;color:#fff;box-shadow:var(--shadow)}
  @media(max-width:980px){.chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.result-panel{grid-template-columns:1fr}.result-topline,.risk-card,.score-card,.key-results,.recommendation,.result-list,.action-list,.reclassify-box,.result-actions{grid-column:1}.page-heading{align-items:flex-start;flex-direction:column;gap:9px}.privacy-note{display:none}.sources,.feedback{align-items:flex-start;flex-direction:column}.feedback a{width:100%;justify-content:center}.result-actions{grid-template-columns:1fr 1fr!important}}
  @media(min-width:561px) and (hover:hover) and (pointer:fine){.help-close{display:none}}
  @media(max-width:560px){.page{padding:16px 8px 34px}.topbar{padding:0 10px}.brand>span:last-child{font-size:.88rem}.header-button{font-size:.76rem;padding:7px 6px}.page-heading{padding:0 4px}.page-heading h1{font-size:1.55rem}.page-heading p{font-size:.87rem}.flow-section{grid-template-columns:28px minmax(0,1fr);gap:9px;padding:19px 12px 19px 9px}.section-index{width:26px;height:26px}.field-grid.two,.field-grid.three,.field-grid.four,.chip-grid,.chip-grid.two-col,.scenario-grid{grid-template-columns:1fr}.question-row{grid-template-columns:1fr;align-items:flex-start;gap:10px}.question-row .segmented{width:100%}.question-row .segmented label{flex:1}.segmented span{min-width:0}.single-select,.single-input{max-width:none}.auto-score{align-items:flex-start;flex-direction:column}.result-panel{padding:15px}.sources div{flex-wrap:wrap}.inline-help[open]::before{content:"";position:fixed;z-index:40;inset:0;background:rgba(8,31,43,.5);pointer-events:none}.help-popover{position:fixed;z-index:41;top:50%;left:50%;width:calc(100vw - 32px);max-width:520px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;transform:translate(-50%,-50%);padding:12px 14px 18px;font-size:.82rem}}
@media print{body{background:#fff}.topbar,.page-heading,.flow-column,.site-footer,.result-actions,.reclassify-box{display:none!important}.page{padding:0}.clinical-layout{display:block}.result-panel{position:static;box-shadow:none;border:0}.result-panel .result-list,.result-panel .recommendation,.result-panel .key-results{display:block!important}dialog,.toast{display:none!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
