@import"https://fonts.googleapis.com/css2?family=Syne:wght@700;800&family=DM+Sans:wght@400;500;600&display=swap";.app-wrapper{width:100%;min-height:100vh}:root{--brand: #E85D04;--brand-dark: #C44D00;--brand-light: #FF7A1A;--bg: #141414;--bg2: #1F1F1F;--bg3: #2A2A2A;--surface: #242424;--border: #333333;--text: #F0EDE8;--text-muted: #888888;--green: #22C55E;--red: #EF4444;--yellow: #F59E0B;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--font-display: "Syne", sans-serif;--font-body: "DM Sans", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{min-height:100%;width:100%;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}#app{width:100%}.scrollable{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s;white-space:nowrap;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.97);opacity:.85}.btn-brand{background:var(--brand);color:#fff}.btn-green{background:var(--green);color:#fff}.btn-red{background:var(--red);color:#fff}.btn-ghost{background:var(--bg3);color:var(--text)}.btn-lg{padding:16px 28px;font-size:17px;border-radius:var(--radius-md)}.btn-full{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px}.badge{display:inline-block;padding:4px 10px;border-radius:100px;font-size:12px;font-weight:600;letter-spacing:.03em}.badge-free{background:#1a3a1a;color:var(--green)}.badge-occupied{background:#3a1a00;color:var(--brand-light)}.badge-paying{background:#3a2a00;color:var(--yellow)}.price{font-variant-numeric:tabular-nums}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .2s ease forwards}@keyframes ripple{to{transform:scale(2.5);opacity:0}}.divider{height:1px;background:var(--border);margin:12px 0}@keyframes slideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}input,select,textarea{font-size:max(16px,1em)}@media (orientation: landscape) and (max-height: 600px){:root{--modal-padding: 14px 16px;--btn-height: 36px;--font-sm: 11px;--font-md: 13px;--font-lg: 16px}}@media (orientation: portrait) and (max-width: 800px){:root{--modal-padding: 20px 18px;--btn-height: 44px;--font-sm: 12px;--font-md: 14px;--font-lg: 18px}}@media (min-width: 1024px){:root{--modal-padding: 32px;--btn-height: 48px;--font-sm: 13px;--font-md: 15px;--font-lg: 20px}}
