:root{--bg-canvas:#F4F6F4;--bg-surface:#FFFFFF;--bg-hover:#EEF3EE;--primary:#2D6A4F;--primary-dark:#1B4D39;--border:#E1E7E1;--border-strong:#C4CEBD;--text-primary:#1A2421;--text-inverse:#FFFFFF;--status-success-bg:#E8F5E9;--status-success-text:#2E7D32;--status-success-border:#A5D6A7;--status-success-dot:#43A047;--status-pending-bg:#FEF3C7;--status-pending-text:#B45309;--status-pending-border:#FDE68A;--status-pending-dot:#D97706;--status-critical-bg:#FFF1F2;--status-critical-text:#E11D48;--status-critical-border:#FECDD3;--status-critical-accent:#E11D48;--cap-general-bg:#F0FDF4;--cap-general-text:#15803D;--cap-oxygen-bg:#EFF6FF;--cap-oxygen-text:#1D4ED8;--cap-icu-bg:#FFF1F2;--cap-icu-text:#BE123C;--cap-ventilator-bg:#FAF5FF;--cap-ventilator-text:#7E22CE;--freshness-fresh:#43A047;--freshness-recent:#D97706;--freshness-stale:#E11D48;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--touch-min:44px;--touch-lg:56px;--text-xs:0.75rem;--text-sm:0.85rem;--text-base:0.95rem;--text-lg:1.1rem;--text-xl:1.35rem;--text-2xl:1.75rem;--bg-app:var(--bg-canvas);--bg-card:var(--bg-surface);--bg-subtle:var(--bg-hover);--border-app:var(--border);--border-color:var(--border);--border-focus:#2D6A4F;--text-app:var(--text-primary);--text-main:var(--text-primary);--text-muted:#5C6B64;--primary-soft:#E8F5E9;--status-available-bg:var(--status-success-bg);--status-available-text:var(--status-success-text);--status-available-border:var(--status-success-border);--status-available-dot:var(--status-success-dot);--status-held-bg:var(--status-pending-bg);--status-held-text:var(--status-pending-text);--status-held-border:var(--status-pending-border);--status-held-dot:var(--status-pending-dot);--status-occupied-bg:#F1F5F9;--status-occupied-text:#334155;--status-occupied-border:#CBD5E1;--status-occupied-dot:#64748B;--status-maint-bg:#FFFBEB;--status-maint-text:#92400E;--status-maint-border:#FDE68A;--status-maint-dot:#F59E0B}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-canvas);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;min-height:100%}body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;letter-spacing:-.01em}p{color:var(--text-muted)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}input,select,textarea{background-color:var(--bg-surface);border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);padding:.75rem 1rem;font-size:var(--text-base);width:100%;transition:border-color .15s ease;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--border-focus)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:.7}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.pill{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;font-size:var(--text-xs);font-weight:600;letter-spacing:.03em;line-height:1.4}.pill-success{background-color:var(--status-success-bg);color:var(--status-success-text);border:1px solid var(--status-success-border)}.pill-pending{background-color:var(--status-pending-bg);color:var(--status-pending-text);border:1px solid var(--status-pending-border)}.pill-critical{background-color:var(--status-critical-bg);color:var(--status-critical-accent);border:1px solid var(--status-critical-border)}.pill-neutral{background-color:var(--status-occupied-bg);color:var(--status-occupied-text);border:1px solid var(--status-occupied-border)}.cap-general{background:var(--cap-general-bg);color:var(--cap-general-text)}.cap-oxygen{background:var(--cap-oxygen-bg);color:var(--cap-oxygen-text)}.cap-icu{background:var(--cap-icu-bg);color:var(--cap-icu-text)}.cap-ventilator{background:var(--cap-ventilator-bg);color:var(--cap-ventilator-text)}.card{background-color:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem}.card-hover{transition:border-color .15s,background-color .15s;cursor:pointer}.card-hover:hover{border-color:var(--border-strong);background-color:var(--bg-hover)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background-color:var(--primary);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:700;cursor:pointer;transition:background-color .15s;min-height:var(--touch-min);letter-spacing:.01em}.btn-primary:hover:not(:disabled){background-color:var(--primary-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;background-color:transparent;color:var(--text-primary);border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background-color .15s,border-color .15s;min-height:var(--touch-min)}.btn-ghost:hover:not(:disabled){background-color:var(--bg-hover);border-color:var(--border-strong)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background-color:var(--status-critical-accent);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:700;cursor:pointer;transition:opacity .15s;min-height:var(--touch-min)}.btn-danger:hover:not(:disabled){opacity:.88}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes countdown-pulse{0%,to{box-shadow:0 0 0 0 rgba(225,29,72,.3)}50%{box-shadow:0 0 0 8px rgba(225,29,72,0)}}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}.animate-fade-in{animation:fade-in .2s ease}@media (prefers-reduced-motion:reduce){.animate-fade-in,.animate-pulse,.animate-spin{animation:none}*{transition-duration:.01ms!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--tab-bar-height:56px;--header-height-mobile:48px}body,html{overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}.app-screen-root{height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}[data-scroll-region]{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}[role=button],[role=tab],a,button,input,select,textarea{touch-action:manipulation}.keypad-btn,.no-select,.stepper-btn,.tab-item{-moz-user-select:none;user-select:none;-webkit-user-select:none}@media (max-width:639px){input,select,textarea{font-size:16px!important}}@media (pointer:coarse){.touch-target,a[role=button],button{min-height:44px}.primary-action-btn{min-height:56px!important}}@media (hover:hover) and (pointer:fine){.hover-elevate:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.08)}.hover-bg:hover{background-color:var(--bg-hover)!important}}@media (min-width:1024px){.mobile-only{display:none!important}}@media (max-width:1023px){.desktop-only{display:none!important}}.mobile-bottom-tabs{position:fixed;bottom:0;left:0;right:0;height:calc(var(--tab-bar-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background-color:#FFFFFF;border-top:1px solid #e1e7e1;display:flex;align-items:center;justify-content:space-around;z-index:50;box-shadow:0 -2px 10px rgba(0,0,0,.04)}.mobile-tab-btn{flex:1 1;height:var(--tab-bar-height);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:none;border:none;color:#5C6B64;font-size:.7rem;font-weight:600;cursor:pointer;position:relative;touch-action:manipulation}.mobile-tab-btn.active{color:#2D6A4F;font-weight:700}.mobile-tab-btn.active:after{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background-color:#2D6A4F;border-radius:0 0 3px 3px}.mobile-live-banner{position:fixed;bottom:calc(var(--tab-bar-height) + var(--safe-bottom));left:0;right:0;height:40px;background-color:#1B4D39;color:#FFFFFF;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;font-size:.8rem;font-weight:600;z-index:49;cursor:pointer;box-shadow:0 -2px 6px rgba(0,0,0,.1)}.lite-mode{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.lite-mode *{box-shadow:none!important;text-shadow:none!important}.hospital-stats-fab{transition:all .2s cubic-bezier(.16,1,.3,1)}@media (max-width:1023px){.hospital-stats-fab{bottom:calc(var(--tab-bar-height) + var(--safe-bottom) + 12px)!important;right:12px!important;padding:10px 14px!important;font-size:.8rem!important}}