
  :root{
    --teal:#0d9488; --teal2:#14b8a6; --cyan:#06b6d4;
    --co:#0284c7; --rx:#0d9488; --inv:#2563eb; --adv:#64748b;
    --ink:#1e293b; --muted:#64748b; --line:#e2e8f0; --bg:#f1f5f9;
  }
  *{box-sizing:border-box;}
  body{margin:0;background:var(--bg);color:var(--ink);
    font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;}
  .sheet, .sheet *{ -webkit-print-color-adjust:exact; print-color-adjust:exact; color-adjust:exact; }

  /* top bar */
  .topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.9);
    backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
  .topbar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;
    justify-content:space-between;gap:12px;padding:10px 16px;flex-wrap:wrap;}
  .brand{display:flex;align-items:center;gap:10px;}
  .logo{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;
    justify-content:center;color:#fff;background:linear-gradient(135deg,var(--teal2),var(--cyan));}
  .brand b{font-size:15px;} .brand span{font-size:12px;color:var(--muted);}
  .actions{display:flex;gap:8px;}
  button{font-family:inherit;cursor:pointer;border-radius:9px;font-weight:600;font-size:13px;
    border:1px solid var(--line);background:#fff;color:var(--muted);padding:9px 14px;}
  button.primary{border:none;color:#fff;background:linear-gradient(90deg,var(--teal2),var(--cyan));}
  button:active{transform:translateY(1px);}

  /* layout */
  .wrap{max-width:1200px;margin:0 auto;padding:16px;display:grid;gap:20px;
    grid-template-columns:1fr;}
  @media(min-width:960px){ .wrap{grid-template-columns:minmax(320px,380px) 1fr;align-items:start;} }

  /* form */
  .card{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden;margin-bottom:16px;}
  .card-h{display:flex;align-items:center;gap:8px;padding:10px 14px;}
  .dot{width:10px;height:10px;border-radius:50%;}
  .card-h b{font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;}
  .card-b{padding:14px;}
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .col2{grid-column:span 2;}
  label{display:block;font-size:11.5px;font-weight:600;text-transform:uppercase;
    letter-spacing:.03em;color:var(--muted);margin-bottom:4px;}
  input,textarea,select{width:100%;font-family:inherit;font-size:15px;color:var(--ink);
    border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff;}
  input:focus,textarea:focus,select:focus{outline:none;border-color:var(--teal);
    box-shadow:0 0 0 3px rgba(13,148,136,.15);}
  textarea{resize:vertical;}
  .medrow{border:1px solid var(--line);background:#f8fafc;border-radius:9px;padding:8px;margin-bottom:8px;}
  .medgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;}
  .span12{grid-column:span 12;} .span4{grid-column:span 4;} .span3{grid-column:span 3;}
  .del{grid-column:span 1;display:flex;align-items:center;justify-content:center;border:none;
    background:none;color:#ef4444;padding:0;font-size:18px;}
  .invrow{display:flex;gap:8px;margin-bottom:8px;}
  .invrow .del{width:40px;border:none;}
  .addbtn{display:flex;align-items:center;gap:6px;border:1px dashed;background:#fff;
    border-radius:9px;padding:9px 12px;font-size:13px;font-weight:600;width:100%;justify-content:center;}

/* Prescription workflow. Patient data is kept only in memory. */
[hidden]{display:none!important}
a{color:#0f766e} .back-link{align-self:center;text-decoration:none;font-size:13px;font-weight:600}
/* The how-to video, on YouTube. */
.how-link{align-self:center;display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;
  background:#e11d2e;color:#fff;text-decoration:none;font-size:13px;font-weight:700;box-shadow:0 2px 8px rgba(225,29,46,.3)}
.how-link:hover{background:#c8101f} .how-link span{font-size:10px}
button:disabled{opacity:.48;cursor:not-allowed} input[type=checkbox]{width:18px;height:18px;flex:none;accent-color:#0f766e}
.access-panel{max-width:720px;margin:52px auto;padding:28px;background:white;border:1px solid var(--line);border-radius:18px}
h1{font-size:25px;letter-spacing:-.03em;margin:8px 0}h2{font-size:23px;margin:6px 0}.access-panel p{line-height:1.65;color:#475569}
.full{width:100%;margin-top:14px}.small{font-size:12px;line-height:1.6;color:#64748b}.spaced{margin-top:12px}
.card-h{background:rgba(13,148,136,.055)} summary{cursor:pointer;font-weight:600}
.patient-context{margin-top:16px}.patient-context summary{font-size:13px;margin-bottom:12px}.patient-context input{font-size:13px}
.draft-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.eyebrow{color:#0f766e;font-weight:700;font-size:10px;letter-spacing:.12em}.badge{background:#e2e8f0;border-radius:30px;padding:5px 12px;font-size:11px;color:#475569;white-space:nowrap}
.rx-row{border:1px solid #dbe5e6;border-radius:12px;padding:14px;margin-bottom:12px;background:#fbfdfd}
.rx-row-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.check-label{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;text-transform:none;letter-spacing:0;color:#334155}
.remove-item{border:0;color:#b91c1c;background:transparent;font-size:12px;padding:3px 6px}.item-issues{font-size:11px;line-height:1.6;color:#92400e;padding:9px;background:#fffbeb;border-radius:8px}
.item-evidence{font-size:12px;line-height:1.6}.item-evidence summary{color:#0f766e}.item-evidence blockquote{margin:8px 0;border-left:2px solid #14b8a6;padding-left:10px;white-space:pre-wrap;color:#475569}
.sources-panel{padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:18px}.sources-panel details{border-top:1px solid var(--line);padding:12px 0;font-size:12px}.source-quote{white-space:pre-wrap;line-height:1.6}
.notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:9px;padding:12px;font-size:12px;color:#9a3412;line-height:1.6}.empty-state{font-size:13px;color:#64748b;margin:0 0 14px}
.approval{border-color:#99d7ce}.approval .check-label{font-size:13px}.final-panel{max-width:1000px;margin:20px auto 48px;padding:16px}.final-advice{padding:0 40px 26px}.vitals-line{margin:8px 0}.keep{break-inside:avoid;overflow-wrap:anywhere}
#printSurface{display:none}
@media(max-width:600px){.access-panel{margin:22px 12px;padding:20px}.topbar-inner{gap:6px}.actions{flex-wrap:wrap;gap:5px}.actions button{padding:7px}.draft-heading{align-items:flex-start}.sheetWrap{border-radius:10px}.wrap{padding:12px}.draft-column{min-width:0}}
@media print{body>*{display:none!important}body.can-print #printSurface{display:block!important}}

/* Version 2: compact review form and measured A4 pages. */
body{font-family:Arial,"Helvetica Neue",sans-serif;line-height:1.45}
.wrap{max-width:1260px;gap:24px}@media(min-width:1000px){.wrap{grid-template-columns:330px minmax(0,1fr)}}
.grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}input,textarea,select{min-width:0}textarea{field-sizing:content;min-height:60px;max-height:220px;font-size:14px;line-height:1.5}
.selection-summary{font-size:13px;border-left:3px solid #0f766e;padding:9px 12px;background:#eaf6f3;border-radius:0 7px 7px 0}
.rx-row{background:#fff}.rx-row:has([data-select]:checked){border-color:#77b9ac;background:#f8fcfb}.item-evidence{border-top:1px solid var(--line);padding-top:10px;margin-top:13px}.move-item{margin-top:12px;font-size:12px}
.dose-calculator{margin-top:13px;padding:13px;background:#edf7f5;border:1px solid #bddbd3;border-radius:8px;font-size:13px}.dose-calculator button{margin-top:9px}.dose-calculator select{font-size:12px}.dose-calculator .check-label{margin-top:10px}.calculation-result{font-family:ui-monospace,monospace;color:#095e4c;font-weight:700}.approval .check-label{margin-bottom:12px}
.sheetWrap{padding:14px}.sheet{width:190mm;height:276mm;min-height:0;margin:0 auto 18px;display:flex;flex-direction:column;border-radius:0;overflow:visible;background:#fff;font-size:10.5pt;line-height:1.4;color:#182832}.sheet:last-child{margin-bottom:0}.sheet,.sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
.paper-head{flex:none;border-top:5px solid #0f766e;padding:18px 25px 14px;display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #a5c4bd}.docname{font-size:23px;font-weight:750;color:#0c6258;line-height:1.15}.docsub{font-size:11.5px;margin-top:4px;color:#455d68}.registration{font-size:10px;white-space:nowrap;padding-top:3px}
.patient-strip{padding:12px 25px;background:#f5f8f8;border-bottom:1px solid #e3ebea;flex:none;font-size:11.5px}.patient-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:5px 22px}.patient-grid span{color:#5a707b;display:inline-block;min-width:61px;margin-right:5px}.patient-vitals{padding-top:6px;font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}
.paper-content{flex:1;min-height:0;margin:13px 25px 5px;overflow:visible}.paper-block{break-inside:avoid;overflow-wrap:anywhere;margin:0 0 9px}.sheet h3{font-size:11.5pt;line-height:1.2;color:#0b6257;margin:13px 0 7px;font-weight:750}.sheet h3.rx-title{font-size:14pt}.sheet p{margin:4px 0}
.clinical-summary{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-bottom:1px solid #d4e2de;padding-bottom:10px;font-size:10pt}.clinical-summary h3{margin-top:0}.clinical-summary ul{margin:0;padding-left:16px}.clinical-summary li{margin-bottom:3px}.medicine-line{display:grid;grid-template-columns:20px 1fr;gap:6px}.medicine-number{font-weight:700;color:#0d6558}.medicine-line b{font-size:11pt}.medicine-note{font-size:10pt;color:#3e535c;margin-top:3px}.advice-line{font-size:10pt;line-height:1.4}
.paper-end{flex:none;margin:0 25px;padding-top:6px;break-inside:avoid}.signature{height:42px;display:flex;justify-content:flex-end;align-items:flex-end;padding-bottom:5px}.signature>div{width:160px;border-top:1px solid #496f67;padding-top:4px;text-align:center;font-size:9pt;color:#48645e}.chamber{border-top:2px solid #0c7162;padding:8px 0 5px;text-align:center;font-size:9pt;font-weight:600;color:#285f54;overflow-wrap:anywhere}.page-number{text-align:center;font-size:8pt;color:#637b73;min-height:11px}
.compact{font-size:10pt;line-height:1.33}.compact .paper-block{margin-bottom:6px}.compact .medicine-line b{font-size:10.5pt}.compact .medicine-note,.compact .advice-line{font-size:9.5pt}.compact h3{margin-top:10px;margin-bottom:5px}.compact .paper-head{padding-top:14px;padding-bottom:12px}.compact .patient-strip{padding-top:9px;padding-bottom:9px}.compact .clinical-summary{font-size:9.5pt}
@media(max-width:600px){input,textarea,select{font-size:16px}.sheetWrap{padding:8px}}
@media print{
  @page{size:A4 portrait;margin:10mm}
  html,body{margin:0!important;padding:0!important;background:white!important}
  body.can-print #printSurface{margin:0;padding:0}
  #printSurface .sheet{display:flex;flex-direction:column;width:190mm;height:276mm;min-height:0;margin:0;padding:0;box-shadow:none;break-after:page;break-inside:avoid}
  #printSurface .sheet:last-child{break-after:auto}
}


/* Keep source choices next to the diagnosis heading at every screen size. */
.diagnosis-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}
.source-picker{margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(2,auto);gap:6px;min-width:0}
.source-picker legend{font-size:11px;padding:0;margin-bottom:6px}
.source-picker label{display:flex;align-items:center;gap:5px;margin:0;padding:6px 8px;border:1px solid #bbd8d6;border-radius:7px;background:#fff;font-size:12px;text-transform:none;letter-spacing:0;cursor:pointer}
.source-picker input{width:15px;height:15px;margin:0;accent-color:#157b78}
.source-picker label:has(input:checked){background:#e6f5f3;border-color:#157b78}
.source-picker label:has(input:disabled){opacity:.5;cursor:default}
.item-source{font-size:12px;font-weight:600;color:#156b69;margin:2px 0 12px}
#contextNotice[hidden]{display:none}
