/* HCP Assistant Styles */
body{font-family:Arial,Helvetica,sans-serif;margin:0;background:#f5f5f5;font-size:16px}
header{background:#2e7d32;color:#fff;padding:1.5rem;font-weight:bold;font-size:1.6rem;text-align: center;}
form{padding:1rem;background:#fff;margin:.5rem auto;border-radius:4px;max-width:1000px}
.inline-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}
.obsBlock{border:2px solid #ddd;padding:.8rem;margin:.5rem auto;border-radius:5px;background:#fafafa;max-width:980px}
.fast-row{display:flex;align-items:center;gap:1rem}
.fast-title{flex:0 0 120px}
.fast-check{flex:0 0 60px;text-align:center}
.fast-label{flex:1;text-align:right;font-weight:500}
.fast-check, .pupil-check { display:flex !important; align-items:center !important; justify-content:center !important }
.fast-check input, .pupil-check input, .inline-label input { margin:0 !important; padding:0 !important }
.pupil-row{display:flex;align-items:center;gap:1rem}
.pupil-title{flex:0 0 120px}
.pupil-check{flex:0 0 60px;text-align:center}
.pupil-label{flex:1;text-align:right;font-weight:500}
.fast-row, .pupil-row { display:grid; grid-template-columns: 120px 80px 1fr; align-items:center; column-gap:1rem }
.fast-title, .pupil-title { justify-self:start }
.fast-check, .pupil-check { justify-self:center }
.fast-label, .pupil-label { justify-self:end; font-weight:500 }
fieldset{border:2px solid #ccc;margin-bottom:1rem;padding:1rem;border-radius:5px}
legend{font-weight:bold;font-size:1.1rem;padding:0 .5rem;color:#2e7d32}
label{display:block;margin:.5rem 0 .2rem;font-size:1rem;font-weight:500}
.check-group, .inline-label { display:flex !important; align-items:center !important; gap:.5rem !important; }
input,select,textarea{width:100%;padding:.6rem;font-size:1rem;border:2px solid #bbb;border-radius:5px;box-sizing:border-box}
.row{display:flex;gap:.5rem;flex-wrap:wrap}
.row>div{flex:1;min-width:180px}
button{padding:.8rem 1.5rem;font-size:1.1rem;border:none;border-radius:5px;cursor:pointer;margin:.3rem;font-weight:bold}
.hidden{display:none}
.check-group{display:flex;flex-wrap:wrap;gap:1rem;margin:.5rem 0}
.check-group label{font-weight:normal;display:flex;align-items:center;gap:.5rem;font-size:1rem;padding:.3rem;border-radius:3px;cursor:pointer}
.check-group input[type="checkbox"], .check-group input[type="radio"]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border:3px solid #2e7d32;border-radius:4px;cursor:pointer;position:relative;background:#fff;flex-shrink:0}
.check-group input[type="checkbox"]:checked,.check-group input[type="radio"]:checked{background:#2e7d32;border-color:#2e7d32}
.check-group input[type="checkbox"]:checked::after{content:'✓';position:absolute;color:#fff;font-size:18px;font-weight:bold;left:50%;top:50%;transform:translate(-50%,-50%)}
.check-group input[type="radio"]{border-radius:50%}
.check-group input[type="radio"]:checked::after{content:'';position:absolute;width:10px;height:10px;background:#fff;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.check-group input{width:auto;min-width:20px;min-height:20px}
.related-block{margin-top:.5rem;margin-left:1.2rem;padding-left:.6rem;border-left:3px solid #efecec;border-radius:3px;background:#f5f2f5}
.related-block .check-group{margin:0}
.obsInner .inline-label{font-weight:600}
.related-block .related-caption{font-size:.95rem;color:#2e7d32;font-weight:600;margin-bottom:.25rem}
.pupil-option-label{font-size:0.95rem;margin-bottom:.25rem;font-weight:600;color:inherit}
.related-block, .related-block label, .related-block .check-group label, .related-block .pupil-option-label { font-size:0.95rem; color:inherit }
.related-block.related-active{background:#f1f8f1;border-left-color:#c8e6c9}
#copyBtn{background:#cc0000;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.2)}
#copyBtn:active{background:#aa0000}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:20px;background:rgba(0,0,0,0.85);color:#fff;padding:.6rem 1rem;border-radius:6px;z-index:2000;font-weight:600}
.obsInner{background:#f5f2f5;padding:.5rem;border-radius:3px}
.news2-display{background:#e3f2fd;border-left:3px solid #2196f3;padding:.5rem;margin:.5rem 0;font-weight:bold;color:#000}
.news2-obs-display{padding:.25rem .5rem;border-radius:4px;font-weight:bold;margin-bottom:.4rem;display:inline-block}
.news2-obs-display.news2-grey{background:#e0e0e0;border:1px solid #757575;color:#000}
.news2-obs-display.news2-orange{background:#ffd54f;border:1px solid #ff9800;color:#000}
.news2-obs-display.news2-red{background:#ef5350;border:1px solid #c62828;color:#fff}
.param-flag--grey{background:transparent}
.param-flag--orange{background:#fff8e1;border:1px solid #ffd54f;border-radius:4px;padding:.15rem}
.param-flag--red{background:#ffebee;border:1px solid #ef5350;border-radius:4px;padding:.15rem}
.drug-card{background:#fff;border:1px solid #cfcfcf;padding:.6rem;margin:.5rem 0;border-radius:6px}
.drug-card label{font-weight:600}
.drug-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.35rem}
.drug-row .col{flex:1;min-width:120px}
.drug-row .col--wide{flex:2;min-width:220px}
.drug-row .col--narrow{flex:0 0 120px}

/* Dark Mode Styles */
.dark-mode-enabled{background:#1a1a1a;color:#e0e0e0}
.dark-mode-enabled form{background:#2d2d2d}
.dark-mode-enabled fieldset{border-color:#555;background:#2d2d2d}
.dark-mode-enabled legend{color:#81c784}
.dark-mode-enabled input,.dark-mode-enabled select,.dark-mode-enabled textarea{background:#3d3d3d;color:#e0e0e0;border-color:#555}
.dark-mode-enabled input:focus,.dark-mode-enabled select:focus,.dark-mode-enabled textarea:focus{border-color:#f48fb1}
.dark-mode-enabled .obsBlock{background:#3d3d3d;border-color:#555}
.dark-mode-enabled .obsInner{background:#343434 !important;color:#e0e0e0}
.dark-mode-enabled .autocomplete-box{background:#3d3d3d;border-color:#f48fb1}
.dark-mode-enabled .autocomplete-item{border-bottom-color:#555}
.dark-mode-enabled .autocomplete-item:hover{background:#4d4d4d}
.dark-mode-enabled .check-group label, .dark-mode-enabled .inline-label, .dark-mode-enabled label { color: #e0e0e0 !important }
.dark-mode-enabled .related-block .related-caption { color: #c8e6c9 !important }
.dark-mode-enabled .check-group input[type="checkbox"], .dark-mode-enabled .check-group input[type="radio"]{border-color:#81c784}
.dark-mode-enabled .check-group input[type="checkbox"]:checked,.dark-mode-enabled .check-group input[type="radio"]:checked{background:#2e7d32;border-color:#2e7d32}
.dark-mode-enabled .obsBlock .check-group > div, .dark-mode-enabled .obsBlock .check-group > div > div, .dark-mode-enabled .obsBlock .pupil-row div, .dark-mode-enabled .obsBlock .pupil-title, .dark-mode-enabled .obsBlock .fast-title { color: #e0e0e0 !important }
.dark-mode-enabled .obsBlock .related-block .check-group > div > div { color: #e0e0e0 !important }
.dark-mode-enabled .related-block{ background: rgba(0,0,0,0.35) !important; border-left-color: rgba(100,140,100,0.18) !important }
.dark-mode-enabled .related-block.related-active{ background: rgba(0,0,0,0.45) !important }
.dark-mode-enabled .related-block .related-caption{ color: #cfead1 !important; font-weight:600 }
.dark-mode-enabled .check-group label, .dark-mode-enabled .inline-label { color: #e8f5e9 !important }
.dark-mode-enabled .check-group input[type="checkbox"], .dark-mode-enabled .check-group input[type="radio"]{ border-color: #9ccc65 !important }
.dark-mode-enabled .check-group input[type="checkbox"]:checked,.dark-mode-enabled .check-group input[type="radio"]:checked{ background:#66bb6a;border-color:#66bb6a }
.dark-mode-enabled .drug-card{ background:#2f2f2f !important; border-color:#2e7d32 !important; color:#e0e0e0 !important }
.dark-mode-enabled .drug-card label{ color:#e0e0e0 !important }
.dark-mode-enabled .obsInner{ background:#2b2b2b !important }
