@tailwind base;@tailwind components;@tailwind utilities;:root{--vh:1vh;--safe-area-inset-top:env(safe-area-inset-top);--safe-area-inset-right:env(safe-area-inset-right);--safe-area-inset-bottom:env(safe-area-inset-bottom);--safe-area-inset-left:env(safe-area-inset-left)}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{color:rgb(var(--foreground-rgb));background:rgb(var(--background-start-rgb));min-height:100vh;min-height:calc(var(--vh, 1vh) * 100);padding:var(--safe-area-inset-top) var(--safe-area-inset-right) var(--safe-area-inset-bottom) var(--safe-area-inset-left);position:fixed;overflow:hidden;width:100%;height:100%}#__next{height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.emergency-gradient{background:linear-gradient(135deg,#dc2626,#991b1b)}.emergency-pulse{animation:emergencyPulse 1.5s infinite}@keyframes emergencyPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.voice-listening{animation:voiceListening 1s infinite}@keyframes voiceListening{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}.voice-processing{animation:voiceProcessing .5s infinite}@keyframes voiceProcessing{0%,to{transform:rotate(0deg)}50%{transform:rotate(180deg)}}.voice-responding{animation:voiceResponding 2s infinite}@keyframes voiceResponding{0%,to{opacity:.8}50%{opacity:1}}.touch-target{position:relative;cursor:pointer}.touch-target:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:max(44px,100%);height:max(44px,100%);z-index:-1}@media (prefers-contrast:high){.facility-card{border:2px solid #000}.emergency-button{border:3px solid #fff}.text-high-contrast{color:#000;background-color:#fff;font-weight:700;text-shadow:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.emergency-pulse,.voice-listening,.voice-processing,.voice-responding{animation:none}}@media (prefers-color-scheme:dark){:root{--foreground-rgb:255,255,255;--background-start-rgb:17,24,39;--background-end-rgb:0,0,0}body{background:#111827;color:#fff}.facility-card{background-color:#1f2937;border-color:#4b5563;color:#fff}}.focus\:ring-emergency:focus{--tw-ring-color:rgba(220,38,38,.5)}.focus\:ring-voice:focus{--tw-ring-color:rgba(59,130,246,.5)}.one-handed-layout{padding-bottom:calc(var(--safe-area-inset-bottom) + 100px)}.one-handed-buttons{position:fixed;bottom:var(--safe-area-inset-bottom);left:var(--safe-area-inset-left);right:var(--safe-area-inset-right);padding:16px;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(0,0,0,.1)}.debug .thumb-zone-primary{background:rgba(34,197,94,.2);border:2px dashed #22c55e}.debug .thumb-zone-secondary{background:rgba(251,191,36,.2);border:2px dashed #fbbf24}.debug .thumb-zone-critical{background:rgba(239,68,68,.2);border:2px dashed #ef4444}.loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.emergency-mode{*{animation-duration:.1s!important;transition-duration:.1s!important}transform:translateZ(0);will-change:transform}.voice-command-recognized{background-color:rgba(34,197,94,.1);border:2px solid #22c55e;animation:commandRecognized .5s ease-out}@keyframes commandRecognized{0%{transform:scale(1);background-color:rgba(34,197,94,.3)}to{transform:scale(1.02);background-color:rgba(34,197,94,.1)}}.offline-indicator{position:fixed;top:var(--safe-area-inset-top);left:0;right:0;background:#f59e0b;color:#fff;text-align:center;padding:8px;font-size:14px;font-weight:500;z-index:1000}@media print{.emergency-button,.floating-action-button,.voice-interface{display:none!important}.facility-card{page-break-inside:avoid;break-inside:avoid;margin-bottom:16px}}@media screen and (orientation:landscape) and (max-height:500px){.emergency-button{height:60px;font-size:1.25rem}.facility-card{padding:12px}.voice-interface{bottom:16px;right:16px}.voice-interface button{width:60px;height:60px}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(156,163,175,.5);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:rgba(156,163,175,.7)}::selection{background:rgba(59,130,246,.3);color:inherit}@supports (-webkit-touch-callout:none){.ios-bottom-fix{padding-bottom:calc(var(--safe-area-inset-bottom) + 34px)}}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;padding:32px;text-align:center}.error-boundary h2{color:#ef4444;font-size:1.5rem;font-weight:700;margin-bottom:16px}.error-boundary p{color:#6b7280;margin-bottom:24px;max-width:400px}.message-success{background:rgba(34,197,94,.1);border:1px solid #22c55e;color:#166534}.message-error{background:rgba(239,68,68,.1);border:1px solid #ef4444;color:#991b1b}.message-warning{background:rgba(245,158,11,.1);border:1px solid #f59e0b;color:#92400e}