:root{--text-scale: 1;--bg: #f7f4ef;--surface: #ffffff;--ink: #2b2b2f;--ink-soft: #5f5f68;--line: #e6e0d6;--accent: #3f6f5b;--accent-soft: #e8f0eb;--warn: #b4642a;--warn-soft: #f6ead9;--good: #3f6f5b;--good-soft: #e8f0eb;--info: #3a5f86;--info-soft: #e6eef7;--radius: 14px;--gap: 1.15rem;--maxw: 720px;font-size:calc(17px * var(--text-scale));color-scheme:light}html[data-font=legible]{--font: "Atkinson Hyperlegible", "Verdana", "Tahoma", system-ui, sans-serif;letter-spacing:.01em}html[data-font=default]{--font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased}.app{max-width:var(--maxw);margin:0 auto;padding:1.25rem 1.15rem 3rem}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;background:var(--surface);padding:.5rem .9rem;border-radius:8px;z-index:10}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.brand{display:flex;align-items:center;gap:.5rem}.brand-mark{color:var(--accent);font-size:1.5rem}.brand-name{font-weight:700;font-size:1.2rem}.a11y-bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.a11y-group{display:flex;align-items:center;gap:.3rem}.a11y-label{font-size:.8rem;color:var(--ink-soft)}.a11y-bar button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:.35rem .7rem;font-size:.82rem;cursor:pointer}.a11y-toggle.on{background:var(--accent);color:#fff;border-color:var(--accent)}.quick{background:var(--accent-soft);border:1px solid var(--line);border-radius:var(--radius);padding:.85rem 1rem;margin:.75rem 0 1rem;color:var(--ink)}.tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.15rem}.tab{position:relative;border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:999px;padding:.5rem 1rem;font-size:.95rem;cursor:pointer}.tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.tab-badge{margin-left:.4rem;background:var(--warn);color:#fff;border-radius:999px;padding:0 .45rem;font-size:.75rem}.add-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;margin-bottom:1rem}.add-label{display:block;font-weight:600;margin-bottom:.5rem}.search,.dose{width:100%;border:1px solid var(--line);border-radius:10px;padding:.7rem .85rem;font-size:1rem;font-family:inherit;background:#fbfaf7}.search:focus,.dose:focus{outline:2px solid var(--accent);outline-offset:1px}.result-list{list-style:none;margin:.75rem 0 0;padding:0;max-height:320px;overflow:auto}.result{width:100%;display:flex;justify-content:space-between;align-items:center;background:transparent;border:none;border-bottom:1px solid var(--line);padding:.7rem .25rem;font-size:1rem;cursor:pointer;color:var(--ink)}.result:hover:not(:disabled){background:var(--accent-soft)}.result:disabled{color:var(--ink-soft);cursor:default}.result-add{color:var(--accent);font-weight:600;font-size:.9rem}.custom-add{margin-top:.75rem;width:100%;text-align:left;background:var(--warn-soft);border:1px dashed var(--warn);border-radius:10px;padding:.7rem .85rem;cursor:pointer;color:var(--ink);display:flex;flex-direction:column;gap:.2rem}.custom-note{font-size:.8rem;color:var(--ink-soft)}.my-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.my-list-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.85rem 1rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem}.my-list-main{display:flex;align-items:center;gap:.6rem}.my-list-name{font-weight:600}.my-list-controls{display:flex;align-items:center;gap:.5rem}.my-list-controls .dose{width:9rem;padding:.45rem .6rem;font-size:.9rem}.remove{border:none;background:none;color:var(--warn);cursor:pointer;font-size:.9rem}.chip{font-size:.78rem;background:var(--info-soft);color:var(--info);border-radius:999px;padding:.15rem .6rem}.chip-muted{background:#efeae1;color:var(--ink-soft)}.chip-dose{background:#efeae1;color:var(--ink)}.chip-info{background:var(--info-soft);color:var(--info)}.chip-soft{background:var(--warn-soft);color:var(--warn)}.empty{background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);padding:1.25rem;color:var(--ink-soft);text-align:center}.schedule{display:flex;flex-direction:column;gap:.9rem}.slot-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.slot-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.5rem}.slot-head h3{margin:0}.slot-hint{font-size:.82rem;color:var(--ink-soft)}.slot-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}.slot-entry{border-top:1px solid var(--line);padding-top:.7rem}.slot-entry:first-child{border-top:none;padding-top:0}.slot-entry-top{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.slot-entry-name{font-weight:600}.slot-entry-food{margin:.35rem 0 0;color:var(--ink-soft);font-size:.95rem}.alerts{display:flex;flex-direction:column;gap:1.1rem}.alert-group h3{margin:0 0 .5rem}.alert-group-note{margin:0 0 .6rem;font-size:.88rem;color:var(--ink-soft)}.alert-card{border:1px solid var(--line);border-left-width:5px;border-radius:10px;padding:.8rem .95rem;margin-bottom:.6rem;background:var(--surface)}.alert-card p{margin:.35rem 0 .5rem}.alert-title{font-weight:700}.alert-separate .alert-card{border-left-color:var(--warn)}.alert-synergy .alert-card{border-left-color:var(--good)}.alert-drug .alert-card{border-left-color:var(--info)}.alert-limit .alert-card{border-left-color:var(--ink-soft)}.source-link{font-size:.82rem;color:var(--accent);text-decoration:none}.source-link:hover{text-decoration:underline}.age-picker{margin-bottom:1rem}.age-picker-label{font-size:.9rem;color:var(--ink-soft);margin-bottom:.5rem}.age-chips{display:flex;flex-wrap:wrap;gap:.5rem}.age-chip{display:flex;flex-direction:column;align-items:center;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:.5rem .9rem;cursor:pointer;min-width:4.5rem}.age-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.age-chip-range{font-size:.72rem;opacity:.75;margin-top:.1rem}.rec-group{margin-bottom:1.25rem}.rec-group h3{margin:0 0 .25rem}.rec-group-note{margin:0 0 .7rem;font-size:.88rem;color:var(--ink-soft)}.rec-card{background:var(--surface);border:1px solid var(--line);border-left-width:5px;border-left-color:var(--good);border-radius:10px;padding:.8rem .95rem;margin-bottom:.6rem}.rec-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.rec-name{font-weight:700}.rec-add{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.3rem .85rem;font-size:.85rem;cursor:pointer;white-space:nowrap}.rec-add:disabled{border-color:var(--line);background:#efeae1;color:var(--ink-soft);cursor:default}.rec-subgroup{font-size:.8rem;color:var(--info);margin-top:.15rem}.rec-reason{margin:.4rem 0 .5rem}.rec-caution .rec-card{border-left-color:var(--warn)}.rec-expander{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.5rem .95rem;margin-bottom:1.25rem}.rec-expander summary{cursor:pointer;font-weight:600;padding:.35rem 0}.rec-expander[open] summary{margin-bottom:.6rem}.bf-toggle{display:inline-flex;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.95rem;cursor:pointer;color:var(--ink)}.bf-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.bf{margin-bottom:1.25rem}.bf-infant{background:var(--info-soft);border:1px solid var(--info);border-radius:var(--radius);padding:1rem;margin-bottom:1.1rem}.bf-infant-badge{display:inline-block;background:var(--info);color:#fff;font-size:.72rem;font-weight:700;padding:.15rem .6rem;border-radius:999px;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.04em}.bf-raised{list-style:none;margin:0;padding:0}.bf-raised li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.5rem 0;border-top:1px solid var(--line)}.bf-raised li:first-child{border-top:none}.bf-raised-name{font-weight:600;min-width:7rem}.bf-raised-nums{color:var(--accent);font-size:.92rem}.bf-raised-note{flex-basis:100%;font-size:.85rem;color:var(--ink-soft)}.safety-actions{margin-bottom:1rem}.print-btn{background:var(--accent);color:#fff;border:none;border-radius:10px;padding:.7rem 1.1rem;font-size:1rem;cursor:pointer}.safety-hint{font-size:.85rem;color:var(--ink-soft);margin:.5rem 0 0}.safety-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.safety-card h2{margin-top:0}.safety-meta{color:var(--ink-soft);font-size:.88rem;margin-top:-.25rem}.safety-table{width:100%;border-collapse:collapse;margin:.75rem 0 1rem}.safety-table th,.safety-table td{text-align:left;padding:.5rem .4rem;border-bottom:1px solid var(--line)}.safety-table th{font-size:.82rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.03em}.safety-block{margin-top:1rem}.safety-block h3{margin:0 0 .4rem}.safety-block ul{margin:0;padding-left:1.1rem}.safety-emergency{background:var(--warn-soft);border-radius:10px;padding:.85rem 1rem}.footer{margin-top:2rem}.disclaimer{font-size:.82rem;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:1rem}.app[data-focus=on] .quick,.app[data-focus=on] .footer{opacity:.35}.app[data-focus=on] .main{box-shadow:0 0 0 100vmax #f7f4ef00}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.no-print{display:none!important}body{background:#fff}.app{max-width:none;padding:0}.safety-card{border:none;padding:0}}
