:root{--blue:#427fbe;--dark-blue:#28669f;--ink:#263645;--muted:#71808d;--line:#e4e9ee;--bg:#f3f5f7;--red:#b74643}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.65}.wrap{max-width:900px;margin:24px auto;padding:0 18px}h1,h2,h3,p{margin-top:0}h1{font-size:25px;font-weight:650;line-height:1.4;margin-bottom:6px}h2{font-size:18px;font-weight:650;margin-bottom:16px}h3{font-size:15px;margin-bottom:7px}p{margin-bottom:10px}a{color:var(--dark-blue)}.hero{background:var(--blue);color:#fff;text-align:center;padding:22px 18px;border-radius:10px;margin-bottom:16px}.hero p{font-size:13px;opacity:.92;margin:0}.form-intro{font-size:13px;color:var(--muted);margin:0;padding:15px 25px 2px}#clinical-form{border-radius:10px;background:#fff;box-shadow:0 2px 10px #20374a08;overflow:hidden}.form-section{padding:18px 25px 9px;border-bottom:1px solid var(--line)}.form-section h2{padding-bottom:9px;border-bottom:1px solid var(--line);color:var(--dark-blue);margin-bottom:14px}.field{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px;align-items:center;margin-bottom:12px;min-width:0}.field-label{display:flex;align-items:center;gap:6px;min-width:0}.field label{font-size:15px;font-weight:500}.field-control{min-width:0}select,input{font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid #cbd5df;border-radius:6px;min-height:43px;padding:9px 11px;width:100%;min-width:0}select{padding-right:28px}input[type=number]{max-width:220px}select.changed,input.changed{color:var(--red);font-weight:600;border-color:#cfaaa6}input::placeholder{color:#9ca7b0;font-weight:400}button,.button-link{font:inherit;line-height:1.45;cursor:pointer;border-radius:6px;padding:10px 17px;font-size:15px;border:1px solid transparent;text-align:center;text-decoration:none}.primary{background:var(--blue);color:#fff}.primary:hover{background:var(--dark-blue)}.secondary,.button-link{background:#fff;border-color:#cdd7e1;color:#4a647c}.secondary:hover,.button-link:hover{background:#f4f7fa}.actions{display:grid;grid-template-columns:2fr 1fr;gap:14px;padding:22px 25px}.actions button{min-height:46px;font-size:17px}.actions .secondary{background:#eff2f5;color:#647280}.extra-fields,.conditional-fields{background:#f7f9fb;padding:16px 16px 4px;border:1px solid #e1e8ee;border-radius:7px;margin:6px 0 14px}.extra-fields .field{grid-template-columns:194px minmax(0,1fr)}.conditional-fields .field{grid-template-columns:194px minmax(0,1fr)}.fold-section{margin:0 25px;border-bottom:1px solid var(--line)}.fold-section>summary{display:flex;align-items:center;gap:12px;cursor:pointer;padding:16px 0;font-size:14px;list-style:none}.fold-section>summary::-webkit-details-marker{display:none}.fold-section>summary:before{content:'›';color:#8798a7;font-size:18px;transition:transform .15s}.fold-section[open]>summary:before{transform:rotate(90deg)}.fold-section>summary>span:first-of-type{font-weight:600;white-space:nowrap}.fold-value{color:var(--muted);font-size:12px;line-height:1.5}.fold-edit{color:var(--blue);font-size:12px;margin-left:auto;flex:none}.fold-section.has-change>summary .fold-value{color:var(--red)}.fold-body{padding:3px 0 10px}.node-helper{font-size:12px;color:var(--muted);margin:0 0 8px}.node-helper>summary{color:#7890a3;cursor:pointer;display:list-item;list-style:revert}.node-helper p{margin:10px 0}.helper-controls{display:flex;gap:10px;align-items:flex-end}.helper-controls label{flex:1}.helper-controls input{display:block;font-size:14px;margin-top:5px}.helper-controls button{font-size:13px;min-height:43px}.help,.empty-supplement{font-size:13px;color:var(--muted)}[hidden]{display:none!important}:focus-visible{outline:2px solid #5d9dd8;outline-offset:3px}.result-actions{display:flex;gap:9px;align-items:center;margin-bottom:17px}.result-actions form{margin:0}.result-actions .button-link{margin-left:auto}.case-brief{font-size:14px;font-weight:500;margin-bottom:5px}.case-extent{font-size:12px;color:var(--muted);margin-bottom:14px}.clinical-notes{border-left:2px solid #bf9b62;padding-left:12px;font-size:13px;color:#806136;margin:10px 0 14px}.clinical-notes p{margin:0 0 4px}.stage-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:start}.stage{background:#fff;border-radius:9px;padding:21px 22px;border-top:3px solid var(--blue);min-width:0}.stage-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.stage-top h2{font-size:16px;color:#657a8e;font-weight:500;margin:0}.stage-code{font-size:38px;font-weight:650;color:var(--dark-blue);margin:7px 0;line-height:1.45;overflow-wrap:anywhere}.mol{font-size:19px;font-weight:500;margin-left:4px}.mol sub{font-size:16px;margin-left:2px}.stage-caption{font-size:11px;color:#87929d;margin:9px 0 0}.stage-caption+.stage-code{margin-top:0}.molecular-line{font-size:14px;margin-bottom:9px}.stage-reason{font-size:13px;color:#617384;line-height:1.65;margin:0}.stage-notes{font-size:12px;border-top:1px solid var(--line);padding-top:8px;margin-top:12px}.stage-notes p{margin:9px 0}.stage-notes>summary,.provenance>summary,.systemic>summary,.input-summary>summary,.export-tools>summary{font-size:12px;color:#728da4;cursor:pointer;font-weight:400}.tag{font-size:11px;color:#647f96;background:#f0f5f9;padding:2px 7px;border-radius:4px;line-height:1.5;flex:none}.muted-tag{background:#f4f3ef;color:#8a7a61}.guide-caption{font-size:12px;color:var(--muted);margin:11px 0 17px}.guideline{border-radius:9px;background:#fff;padding:20px 24px;margin-bottom:15px}.guide-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.guide-head h2{font-size:18px;color:var(--dark-blue);margin:0}.risk{font-size:12px;padding:3px 10px;border-radius:5px;line-height:1.6;white-space:nowrap;font-weight:500}.low{color:#3b6742;background:#e8f1e8}.intermediate{color:#7a6520;background:#fcf3d8}.hir{color:#98602a;background:#fff0df}.high{color:#a04446;background:#fae9e9}.neutral{color:#6b7a85;background:#edf1f4}.option{padding:8px 0;border-bottom:1px solid #f0f3f5}.option:last-child{border:0}.option-heading{display:flex;gap:15px;justify-content:space-between;align-items:baseline}.option-text{font-size:16px}.level{font-size:12px;color:#7a8995;white-space:nowrap;text-align:right;flex:none;max-width:45%}.condition{font-size:12px;color:#7a8691;margin:3px 0 0;line-height:1.7}.recommendation{font-size:15px;margin:7px 0 10px}.review-text{color:#786448;font-size:14px}.provenance{border-top:1px solid var(--line);padding-top:9px;margin-top:12px;font-size:13px;color:#627383}.provenance>p{margin:10px 0}.provenance .options{margin:10px 0}.provenance .option-text{font-size:14px}.sources{margin-top:12px}.sources h3{font-size:12px;font-weight:500;margin:8px 0;color:#708799}.sources p{font-size:11px;line-height:1.7;margin:5px 0;color:#82909d;overflow-wrap:anywhere}.sources a{font-size:11px}.systemic{margin:12px 0 0;font-size:13px}.systemic>summary{font-size:13px;color:var(--dark-blue)}.systemic-list{margin-top:12px}.drug{padding:12px 0;border-top:1px solid var(--line)}.drug-head{display:flex;gap:10px;align-items:baseline;justify-content:space-between}.drug h3{font-size:14px;font-weight:500;margin:0}.drug p{font-size:12px;color:#758593;margin:5px 0 0}.drug-level{font-size:11px!important}.input-summary{background:#fff;border-radius:9px;padding:15px 22px;font-size:13px}.input-summary>summary{font-size:13px}.input-summary dl{margin:10px 0 0}.input-summary dl>div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:10px;padding:7px 0;border-top:1px solid var(--line)}dt{color:#7a8995;font-size:12px}dd{margin:0;font-size:12px}.export-tools{margin:14px 0}.export-tools button{font-size:12px;margin-top:9px}.notice{padding:20px 24px;background:#fff;border-radius:8px;margin:18px 0}.error{border-left:3px solid var(--red)}.error h2{font-size:17px;color:var(--red)}.error p{font-size:14px}footer{padding:18px 0 10px;text-align:center;color:#8a97a2;font-size:12px}footer p{margin:3px 0}.fine-print{font-size:11px}.qr{width:110px;margin-top:7px}.app-version{color:#a2acb5}
@media(max-width:620px){.wrap{margin:10px auto;padding:0 10px}.hero{padding:20px 10px;margin-bottom:12px}h1{font-size:21px}.hero p{font-size:11px}.form-intro{padding:13px 16px 0;font-size:12px}.form-section{padding:17px 16px 7px}.field{grid-template-columns:1fr;gap:5px;margin-bottom:14px}.field label{font-size:14px}.field-control select,.field-control input{font-size:16px;min-height:44px}.extra-fields,.conditional-fields{padding:14px 12px 2px}.extra-fields .field,.conditional-fields .field{grid-template-columns:1fr}.fold-section{margin:0 16px}.fold-section>summary{gap:7px;align-items:flex-start}.fold-value{font-size:11px}.fold-edit{font-size:11px}.actions{grid-template-columns:1fr;padding:20px 16px;gap:10px}.actions button{min-height:45px}.node-helper{font-size:11px}.helper-controls{flex-wrap:wrap}.helper-controls label{flex-basis:38%}.stage-grid{grid-template-columns:1fr;gap:11px}.stage{padding:17px 19px}.stage-code{font-size:35px}.stage-top h2{font-size:15px}.stage-reason{font-size:12px}.guide-head{gap:7px;flex-wrap:wrap}.guide-head h2{font-size:16px}.guideline{padding:18px 17px}.risk{font-size:11px}.option-text{font-size:15px}.level{font-size:11px;white-space:normal;max-width:29%;min-width:35px}.option-heading{gap:9px}.condition{font-size:12px}.result-actions{gap:6px}.result-actions button,.result-actions a{font-size:13px;padding:9px 11px}.case-brief{font-size:13px}.case-extent{font-size:11px}.input-summary{padding:15px 17px}.input-summary dl>div{grid-template-columns:1fr;gap:2px}.drug-head{flex-direction:column;gap:5px}.drug-head .tag{align-self:flex-start}.guide-caption{font-size:11px}.provenance .option-text{font-size:13px}}
@media print{body{background:#fff;color:#111}.wrap{max-width:none;padding:0;margin:0}.hero{background:none;color:#111;border-bottom:1px solid #bbb;border-radius:0;padding:0 0 12px}.hero p{color:#555}.result-actions,.export-tools,#clinical-form,.qr{display:none}.stage-grid{grid-template-columns:1fr 1fr}.stage{border:1px solid #bbb;break-inside:avoid}.stage-code{font-size:30px}.guideline{border:1px solid #ccc;break-inside:avoid;padding:16px}.risk,.tag{print-color-adjust:exact;-webkit-print-color-adjust:exact}.input-summary{border:1px solid #ccc}footer{font-size:10px}.sources p{font-size:10px}.case-extent{color:#555}}

.stage-grid + .guideline { margin-top:16px; }

.molecular-context{font-size:13px;color:var(--muted);margin:0 0 16px;line-height:1.7}

/* Form sections share the original form, without extra cards or steps. */
.form-basics{padding:18px 25px 6px;border-bottom:1px solid var(--line)}
.case-overview{margin:0 0 17px;overflow-wrap:anywhere}
.case-overview p{margin:0 0 6px;line-height:1.7}
.case-overview .case-brief{font-size:14px;font-weight:600;color:var(--ink)}
.case-overview .case-findings{font-size:13px;color:#415567}
.case-overview .case-extent,.case-overview .case-pending{font-size:12px;color:#617384}
.case-overview p:last-child{margin-bottom:0}
@media(max-width:620px){.form-basics{padding:16px 16px 2px}.case-overview .case-brief{font-size:13px}.case-overview .case-findings{font-size:13px}}
@media print{.case-overview{break-inside:avoid}.case-overview .case-findings,.case-overview .case-extent,.case-overview .case-pending{color:#333}}

/* Field explanations stay in the document flow at every screen width. */
.help-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border:1px solid #cbd4dc;border-radius:50%;background:transparent;color:#8193a3;font-size:13px;line-height:1;touch-action:manipulation}
.help-toggle:hover,.help-toggle[aria-expanded="true"]{color:var(--dark-blue);border-color:var(--blue);background:#f0f6fb}
.field-help{grid-column:1 / -1;min-width:0;max-width:100%;margin:0;line-height:1.75;overflow-wrap:anywhere;word-break:normal}
.field-help>summary{font-size:13px;color:var(--dark-blue);cursor:pointer}
.field-help.has-help-control:not([open]){display:none}
.field-help>p{position:static;width:auto;max-width:100%;margin:0;padding:12px 14px;border:1px solid #dce6ef;border-radius:6px;background:#f5f8fb;color:#425b70;font-size:13px;font-weight:400;line-height:1.8;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.field-help:not(.has-help-control)>p{margin-top:8px}
.field-label label{min-width:0;overflow-wrap:anywhere}
@media(max-width:620px){.field-help>p{padding:11px 12px;font-size:14px}.field-help[open]{margin-top:3px}}
@media print{.help-toggle{display:none}}
