*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}:root{--bg-primary: #ffffff;--bg-secondary: #fafafa;--bg-tertiary: #f5f5f5;--border-color: #f0f0f0;--border-color-hover: #e5e5e5;--text-primary: #1a1a1a;--text-secondary: #4b5563;--text-tertiary: #6b7280;--text-muted: #9ca3af;--accent-primary: #14b8a6;--accent-primary-hover: #0d9488;--accent-light: #ccfbf1;--shadow-sm: rgba(0, 0, 0, .03);--shadow-md: rgba(0, 0, 0, .05);--shadow-lg: rgba(0, 0, 0, .08);--overlay: rgba(0, 0, 0, .3)}:root[data-theme=dark],:root.dark{--bg-primary: #1a1a1a;--bg-secondary: #242424;--bg-tertiary: #2a2a2a;--border-color: #333333;--border-color-hover: #404040;--text-primary: #f5f5f5;--text-secondary: #d4d4d4;--text-tertiary: #a3a3a3;--text-muted: #737373;--accent-primary: #14b8a6;--accent-primary-hover: #0d9488;--accent-light: #0f766e;--shadow-sm: rgba(0, 0, 0, .2);--shadow-md: rgba(0, 0, 0, .3);--shadow-lg: rgba(0, 0, 0, .4);--overlay: rgba(0, 0, 0, .5)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--text-primary);background:var(--bg-secondary);transition:background-color .3s ease,color .3s ease}a{text-decoration:none;color:inherit}button,input,textarea,select{font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 20px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media (max-width: 768px){button,.btn,a.btn,input[type=button],input[type=submit]{min-height:44px;min-width:44px;padding:.75rem 1.5rem;font-size:1rem;-webkit-tap-highlight-color:rgba(0,0,0,.1)}input[type=checkbox],input[type=radio]{width:24px;height:24px;min-width:24px;min-height:24px}.form-group{margin-bottom:1.5rem}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=date],input[type=time],textarea,select{font-size:16px;padding:.875rem;min-height:44px}label{margin-bottom:.5rem;font-size:.9375rem}body{-webkit-overflow-scrolling:touch}button:active,.btn:active,a:active{opacity:.8;transform:scale(.98)}button,.btn{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}}@media (max-width: 640px){.btn-block,button.btn-block{width:100%;display:block}.card,.business-card,.room-card{padding:1.25rem;margin-bottom:1rem}.modal-content{margin:1rem;max-height:calc(100vh - 2rem);overflow-y:auto}.form-row{flex-direction:column;gap:1rem}select{padding:.875rem;min-height:44px}}button,.btn,a.btn{touch-action:manipulation}button:focus-visible,.btn:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}
