@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=IBM+Plex+Mono:wght@500&display=swap";html,body,#root{margin:0;padding:0}:root{--bg: #f4f7f9;--paper: #ffffff;--ink: #12263a;--muted: #53667a;--line: #d8e1e8;--brand: #0f766e;--brand-soft: #d1fae5;--warn: #b45309;--warn-soft: #fef3c7;--alert: #b91c1c;--alert-soft: #fee2e2}*{box-sizing:border-box}body{margin:0;font-family:Space Grotesk,Avenir Next,Trebuchet MS,sans-serif;color:var(--ink);background:radial-gradient(circle at 10% -15%,#cffafe 0%,transparent 45%),radial-gradient(circle at 100% 10%,#ffedd5 0%,transparent 38%),var(--bg)}#root{min-height:100dvh}.app-shell{width:min(960px,100%);margin:0 auto;padding:1rem;display:grid;gap:1rem}.app-header,.medication-section,.history-section{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:1rem;box-shadow:0 14px 28px -22px #0f172a59}.eyebrow{margin:0;color:var(--brand);text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.75rem}h1{margin:.35rem 0 0;font-size:1.75rem}h2{margin:0 0 .75rem;font-size:1.15rem}.subhead{margin:.5rem 0 .85rem;color:var(--muted);max-width:55ch}.app-meta{margin:0 0 .85rem;color:var(--muted);font-size:.82rem}.patient-picker{display:grid;gap:.35rem;margin-bottom:.85rem;width:min(320px,100%)}.patient-picker span{font-size:.85rem;font-weight:700;color:var(--muted)}.patient-picker select{width:100%;padding:.55rem .65rem;border-radius:10px;border:1px solid var(--line);font:inherit;background:#fff;color:var(--ink)}.notify-button,.dose-button{appearance:none;border:0;border-radius:999px;padding:.65rem .95rem;font:inherit;font-weight:700;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}.utility-button{appearance:none;border-radius:999px;border:1px solid var(--line);padding:.55rem .9rem;font:inherit;font-weight:700;background:#fff;color:var(--ink);cursor:pointer}.app-actions{margin-top:.65rem;display:flex;gap:.55rem;flex-wrap:wrap}.pwa-status{margin:.45rem 0 0;font-size:.82rem;color:var(--muted)}.view-tabs{margin-top:.65rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.view-tab{appearance:none;border:1px solid var(--line);border-radius:10px;padding:.5rem .45rem;font:inherit;font-weight:700;font-size:.85rem;color:var(--muted);background:#fff}.view-tab.is-active{color:#fff;background:var(--brand);border-color:var(--brand)}.workflow-section,.care-layout{display:grid;gap:1rem}.care-history-section{align-self:start}.compact-history-list{gap:.4rem}.compact-history-item{padding:.5rem;font-size:.8rem}.notify-button{background:var(--brand);color:#fff}.reminder-state{margin:.55rem 0 0;font-size:.85rem;color:var(--muted)}.notify-button:disabled{cursor:not-allowed;opacity:.6}.notify-button:not(:disabled):hover,.dose-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px -12px #0f766ecc}.medication-list{display:grid;gap:.75rem}.medication-section-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;flex-wrap:nowrap}.medication-section-header h2{margin:0;min-width:0}.medication-add-button{background:var(--brand-soft);color:var(--brand);border-color:transparent;min-width:44px;padding:.55rem .75rem}.med-list-empty{margin:0 0 .5rem;color:var(--muted);font-weight:600}.med-card{border:1px solid var(--line);border-radius:14px;padding:.85rem;background:#fbfdff}.med-card[data-status=due-now]{border-color:var(--alert);background:var(--alert-soft)}.med-card[data-status=due_soon],.med-card[data-status=too_early]{border-color:var(--warn);background:var(--warn-soft)}.med-card[data-status=overdue],.med-card[data-status=missed]{border-color:var(--alert);background:var(--alert-soft)}.med-card[data-status=eligible_now],.med-card[data-status=available_prn]{border-color:var(--brand)}.med-card-top{display:flex;align-items:start;justify-content:space-between;gap:.8rem}.med-card h3{margin:0}.schedule-label,.dose-label,.last-given,.instructions,.next-eligible{margin:.4rem 0;color:var(--muted)}.last-event-trust{margin:.15rem 0 .5rem;font-size:.78rem;color:var(--muted)}.status-pill{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;padding:.3rem .55rem;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-weight:700}.dose-button{margin-top:.4rem;background:#0f172a;color:#fff}.med-history-block{margin-top:.55rem}.med-history-block h4{margin:0 0 .4rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.med-history-empty{margin:0;color:var(--muted);font-size:.85rem}.med-history-list{margin:0;padding:0;list-style:none;display:grid;gap:.35rem}.med-history-item{border:1px solid var(--line);border-radius:8px;padding:.45rem .55rem;display:grid;gap:.2rem;font-size:.8rem;background:#fff}.med-history-item strong{font-size:.82rem}.med-history-item span{color:var(--muted)}.entry-tags,.history-tags{display:flex;gap:.35rem;flex-wrap:wrap}.entry-tag{display:inline-flex;align-items:center;border-radius:999px;padding:.1rem .45rem;font-size:.7rem;font-weight:700;letter-spacing:.02em;background:var(--brand-soft);color:var(--brand)}.entry-tag-muted{background:#eef2f7;color:#334155}.correction-actions{margin-top:.2rem}.correct-button,.correct-save-button,.correct-cancel-button{appearance:none;border-radius:999px;border:1px solid var(--line);padding:.35rem .7rem;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.correct-button,.correct-save-button{background:#0f172a;color:#fff;border-color:#0f172a}.correct-cancel-button{background:#fff;color:var(--ink)}.correction-form{margin-top:.45rem;display:grid;gap:.35rem}.correction-form label{display:grid;gap:.2rem;color:var(--muted)}.correction-helper{margin:0;font-size:.75rem;color:var(--muted)}.correction-form input{width:100%;border:1px solid var(--line);border-radius:8px;padding:.45rem;font:inherit;color:var(--ink);background:#fff}.correction-form-actions{display:flex;gap:.4rem;flex-wrap:wrap}.correction-error{margin:0;color:var(--alert);font-weight:600}.history-list{margin:0;padding:0;list-style:none;display:grid;gap:.45rem}.history-item{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.6rem;border:1px solid var(--line);border-radius:10px;font-family:IBM Plex Mono,Courier New,monospace;font-size:.84rem;background:#fff}.history-item-empty{justify-content:center;color:var(--muted)}.history-item strong{color:var(--ink)}.history-item span{color:var(--muted);text-align:right}.summary-section{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:1rem;box-shadow:0 14px 28px -22px #0f172a59}.admin-section{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:1rem;box-shadow:0 14px 28px -22px #0f172a59;display:grid;gap:.55rem}.admin-section label{display:grid;gap:.25rem;color:var(--muted);font-size:.9rem}.admin-section input,.admin-section textarea,.admin-section select{width:100%;border:1px solid var(--line);border-radius:10px;padding:.5rem .6rem;font:inherit;color:var(--ink);background:#fff}.admin-section textarea{min-height:72px}.form-actions{display:flex;gap:.45rem;flex-wrap:wrap}.duration-input-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(120px,1fr);gap:.75rem}.fixed-times-editor{display:grid;gap:.6rem;border:1px solid var(--line);border-radius:14px;padding:.75rem;background:#fbfdff}.fixed-times-editor-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;color:var(--muted);font-size:.9rem}.fixed-times-help{margin:0;color:var(--muted);font-size:.82rem}.fixed-times-list{display:grid;gap:.55rem}.fixed-time-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:end}.form-error{margin:0;color:var(--alert);font-weight:600}.form-success{margin:0;color:#17612f;font-weight:600}.checkbox-row{display:flex!important;align-items:center;gap:.5rem}.checkbox-row input{width:auto}.admin-list{margin:.35rem 0 0;padding:0;list-style:none;display:grid;gap:.5rem}.admin-item{border:1px solid var(--line);border-radius:10px;padding:.55rem;display:flex;justify-content:space-between;gap:.7rem;background:#fff}.admin-item p{margin:.15rem 0 0;color:var(--muted);font-size:.85rem}.admin-item-empty{justify-content:center;color:var(--muted);font-weight:600}.admin-item-actions{display:flex;gap:.4rem;flex-wrap:wrap}.danger-button{border-color:#ef4444;color:#991b1b}@media(max-width:520px){.app-shell{padding:.75rem;gap:.8rem}.app-header,.medication-section,.history-section,.summary-section,.admin-section{padding:.8rem;border-radius:16px}.notify-button,.dose-button,.utility-button{min-height:44px}.fixed-time-row,.duration-input-row{grid-template-columns:1fr}.admin-item{flex-direction:column;align-items:stretch}}.summary-meta{margin:.2rem 0;color:var(--muted)}.summary-list{margin:.8rem 0 0;padding:0;list-style:none;display:grid;gap:.65rem}.summary-item{border:1px solid var(--line);border-radius:12px;padding:.7rem;background:#fff}.summary-item h3{margin:0 0 .45rem;font-size:1rem}.summary-item p{margin:.2rem 0;color:var(--muted);font-size:.9rem}.print-summary{break-inside:avoid}.no-print{display:inherit}@media(min-width:740px){.app-shell{padding:1.5rem;grid-template-columns:1.2fr 1fr}.app-header,.summary-section,.admin-section,.workflow-section{grid-column:1 / -1}.care-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);align-items:start}.care-layout .medication-section,.care-layout .history-section{margin:0}.view-tabs{display:flex;gap:.5rem}.view-tab{padding:.52rem .8rem}}@media print{body{background:#fff;color:#000}.app-shell{width:100%;margin:0;padding:0;display:block}.app-header,.medication-section,.history-section,.admin-section,.no-print{display:none!important}.summary-section{border:0;box-shadow:none;border-radius:0;padding:0}.summary-item{break-inside:avoid;border-color:#bbb}}.layout-root{display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--bg)}.top-app-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem;padding:.75rem 1rem;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 4px 12px -8px #0f172a33;z-index:10}.top-app-bar-main{display:grid;gap:.55rem;flex:1 1 360px;min-width:min(100%,320px)}.patient-switcher-row{display:flex;align-items:center;gap:.4rem;flex-wrap:nowrap}.patient-selector-compact{display:flex;align-items:center;gap:.5rem;background:var(--bg);padding:.35rem .6rem;border-radius:999px;border:1px solid var(--line);flex:1 1 220px;min-width:0}.patient-selector-compact select{border:none;background:transparent;font-weight:700;font-size:.95rem;color:var(--ink);outline:none;cursor:pointer;min-width:0;width:100%}.patient-avatar{font-size:1.1rem}.patient-add-trigger{background:var(--brand-soft);color:var(--brand);border-color:transparent;min-width:44px;padding:.55rem .75rem}.button-label-mobile{display:inline;font-size:1.2rem;line-height:1;font-weight:700}.button-label-desktop{display:none}.quick-add-patient-form{display:grid;gap:.6rem;width:min(420px,100%);padding:.8rem;border-radius:16px;border:1px solid var(--line);background:#fff;box-shadow:0 14px 28px -22px #0f172a59}.quick-add-patient-field{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:700}.quick-add-patient-field input{width:100%;border:1px solid var(--line);border-radius:12px;padding:.7rem .8rem;font:inherit;color:var(--ink);background:#fff}.quick-add-patient-actions{display:flex;gap:.5rem;flex-wrap:wrap}.quick-add-patient-error{margin:0}.header-error{margin:0;color:var(--alert);font-size:.85rem;font-weight:700}.alarm-banner{width:100%;border:1px solid var(--alert);background:var(--alert-soft);border-radius:12px;padding:.55rem .7rem;display:grid;gap:.35rem}.alarm-banner-title{margin:0;font-weight:700;color:var(--alert)}.alarm-banner-meta{margin:0;font-size:.82rem;color:var(--muted)}.alarm-banner-actions{display:flex;gap:.5rem;flex-wrap:wrap}.main-content-scroll{flex:1;overflow-y:auto;padding:1rem 1rem calc(5rem + env(safe-area-inset-bottom,0px)) 1rem;width:100%;max-width:960px;margin:0 auto}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:4.8rem;background:var(--paper);border-top:1px solid var(--line);display:flex;justify-content:space-around;align-items:center;padding:.25rem .5rem calc(.25rem + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 16px -8px #0f172a26;z-index:20}.bottom-nav-item{appearance:none;background:transparent;border:none;display:flex;flex-direction:column;align-items:center;gap:.2rem;color:var(--muted);cursor:pointer;padding:.4rem;border-radius:12px;min-width:64px}.bottom-nav-item.is-active{color:var(--brand)}.bottom-nav-item.is-active .nav-icon{background:var(--brand-soft);color:var(--brand);transform:translateY(-2px)}.nav-icon{font-size:1.4rem;width:3.2rem;height:2.1rem;display:flex;align-items:center;justify-content:center;border-radius:999px;transition:all .2s cubic-bezier(.4,0,.2,1)}.nav-label{font-size:.72rem;font-weight:700;letter-spacing:.02em}.app-settings-section .app-actions{flex-direction:column;align-items:flex-start}@media(min-width:740px){.layout-root{flex-direction:row}.top-app-bar{position:absolute;top:0;left:80px;right:0;padding:1rem 1.5rem;box-shadow:none;border-bottom:1px solid var(--line)}.top-app-bar-main{max-width:520px}.patient-switcher-row{gap:.6rem}.medication-section-header{gap:.75rem}.patient-add-trigger,.medication-add-button{min-width:auto;padding:.55rem .9rem}.button-label-mobile{display:none}.button-label-desktop{display:inline}.main-content-scroll{padding-top:5.5rem;padding-bottom:2rem;max-width:1040px}.bottom-nav{position:relative;width:80px;height:100dvh;flex-direction:column;justify-content:flex-start;padding-top:1.5rem;gap:1.5rem;border-top:none;border-right:1px solid var(--line);box-shadow:2px 0 12px -8px #0f172a26}.bottom-nav-item{gap:.4rem}}
