.queue-overlay{position:fixed;inset:0;background-image:url(/waitroom.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .3s ease-in}.queue-overlay:before{content:"";position:absolute;inset:0;background:#000000b3;backdrop-filter:blur(8px);z-index:-1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.queue-modal{background:#fffffff2;backdrop-filter:blur(20px);border-radius:24px;padding:48px 40px;max-width:500px;width:90%;text-align:center;box-shadow:0 20px 60px #00000080,0 0 0 1px #fff3;animation:slideUp .4s ease-out;position:relative;z-index:1}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.queue-icon{font-size:72px;margin-bottom:20px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.queue-modal h2{font-size:28px;font-weight:700;color:#1a1a2e;margin-bottom:12px;letter-spacing:-.5px}.queue-message{font-size:16px;color:#666;margin-bottom:32px;line-height:1.6}.queue-position-container{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:24px;margin:24px 0;box-shadow:0 8px 24px #667eea4d}.queue-position-number{font-size:64px;font-weight:900;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.2);line-height:1}.queue-position-label{font-size:14px;color:#ffffffe6;margin-top:8px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.queue-estimated-wait{font-size:16px;color:#444;margin:16px 0}.queue-estimated-wait strong{color:#667eea;font-weight:700}.queue-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.queue-stat-item{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}.queue-stat-value{font-size:24px;font-weight:800;color:#1a1a2e}.queue-stat-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px}.queue-spinner{width:60px;height:60px;border:4px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.queue-spinner-small{width:24px;height:24px;border:3px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:24px auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.queue-info-text{font-size:13px;color:#888;line-height:1.6;margin-top:16px}.queue-retry-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;padding:14px 32px;font-size:16px;font-weight:600;cursor:pointer;margin-top:20px;transition:all .3s ease;box-shadow:0 4px 12px #667eea66}.queue-retry-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}.queue-retry-btn:active{transform:translateY(0)}.queue-error{border:2px solid #ff6b6b}.queue-error .queue-icon{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@media (max-width: 600px){.queue-modal{padding:32px 24px;border-radius:16px}.queue-modal h2{font-size:24px}.queue-icon{font-size:56px}.queue-position-number{font-size:48px}.queue-stats{grid-template-columns:1fr}}.queue-waiting{animation:slideUp .5s ease-out}html,body{margin:0;padding:0;padding-bottom:env(safe-area-inset-bottom,0);width:100%;min-height:100%;overflow-x:hidden;overflow-y:auto;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;-webkit-overflow-scrolling:touch;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input,textarea,[contenteditable]{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}#root{width:100%;min-height:100%;overflow-x:hidden;overflow-y:auto}.app{width:100%;min-height:100%;overflow-x:hidden;overflow-y:auto;position:relative;display:flex;flex-direction:column}.main-content{width:100%;height:auto;position:relative;flex:1;min-height:calc(100vh - 300px)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}input,select,textarea{font-size:16px!important}@supports (height: 100dvh){html,body,#root,.app{height:100dvh}}*{-webkit-overflow-scrolling:touch}*,*:before,*:after{-webkit-box-sizing:border-box;box-sizing:border-box}
