.car-rental-modal-overlay{position:fixed;inset:0;z-index:10020;background:rgba(15,23,42,.45);display:flex;justify-content:center;align-items:flex-start;padding:max(16px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.car-rental-modal{width:100%;max-width:760px;margin:auto 0;flex-shrink:0;border-radius:16px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 25px 50px -12px rgba(15,23,42,.18);color:#0f172a;padding:0;position:relative;max-height:min(92vh,900px);display:flex;flex-direction:column;min-height:0}.car-rental-modal-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:20px 20px 24px;touch-action:pan-y}.car-rental-close{position:absolute;left:12px;top:12px;z-index:2;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.car-rental-close:hover{background:#f1f5f9;color:#0f172a}.car-rental-head{margin-bottom:14px;padding-top:8px;padding-inline-end:44px}.car-rental-title{font-size:22px;font-weight:800;color:#0f172a}.car-rental-sub{font-size:13px;color:#64748b;margin-top:4px}.car-rental-summary{display:flex;gap:14px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px;margin-bottom:14px}.car-rental-image{width:120px;height:72px;object-fit:cover;border-radius:10px;border:1px solid #e2e8f0}.car-rental-image-placeholder{width:120px;height:72px;border-radius:10px;background:#e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center}.car-rental-summary-main{display:flex;flex-direction:column;gap:4px}.car-rental-summary-main span{color:#0d9488;font-weight:700}.car-rental-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.car-field{display:flex;flex-direction:column;gap:6px}.car-field span{font-size:12px;color:#475569;display:inline-flex;align-items:center;gap:6px}.car-field input{background:#fff;border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;padding:10px 12px;font-size:14px}.car-field input:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.15)}.car-field small{color:#dc2626;font-size:12px}.car-rental-section-title{margin:16px 0 8px;color:#0f172a;font-size:13px;font-weight:700}.car-rental-loading{color:#64748b;display:inline-flex;align-items:center;gap:8px}.car-rental-payment-options{display:flex;flex-wrap:wrap;gap:8px}.pay-opt{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:10px;padding:10px 12px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}.pay-opt:hover{border-color:#94a3b8;background:#f8fafc}.pay-opt.active{border-color:#0d9488;background:#ecfdf5;color:#0f766e}.car-rental-total{margin-top:14px;border:1px solid #ccfbf1;background:#f0fdfa;border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;color:#0f172a}.car-rental-total strong{color:#0d9488}.car-rental-terms{margin-top:12px;display:flex;gap:8px;align-items:center;color:#475569;font-size:13px}.car-rental-error-inline{color:#dc2626;margin-top:6px;font-size:12px}.car-rental-submit{margin-top:16px;width:100%;border:none;border-radius:12px;padding:13px;background:linear-gradient(135deg,#0d9488,#14b8a6);color:#fff;font-size:15px;font-weight:800;cursor:pointer}.car-rental-submit:hover:not(:disabled){filter:brightness(1.05)}.car-rental-submit:disabled{opacity:.55;cursor:not-allowed}.car-rental-success{min-height:260px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;text-align:center;color:#0f172a}.car-rental-success svg{color:#0d9488}.car-rental-success h3{margin:0;font-size:1.25rem}.car-rental-success p{margin:0;color:#64748b}@media (max-width:640px){.car-rental-form-grid{grid-template-columns:1fr}.car-rental-modal{max-height:min(96vh,900px)}}@media (max-width:768px){.car-rental-modal-overlay{padding-bottom:max(28px,calc(env(safe-area-inset-bottom, 0px) + 88px))}.car-rental-modal-body{padding-bottom:max(32px,calc(24px + env(safe-area-inset-bottom, 0px) + 80px))}}.table-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:99999;padding:16px;animation:tableModalFadeIn .3s ease}@keyframes tableModalFadeIn{0%{opacity:0}to{opacity:1}}.table-modal-container{background:#fff;border-radius:24px;width:100%;max-width:420px;max-height:90vh;overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,.4);animation:tableModalSlideUp .4s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column}@keyframes tableModalSlideUp{0%{transform:translateY(50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.table-modal-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:20px 24px;display:flex;align-items:center;justify-content:space-between}.table-modal-header-info{display:flex;align-items:center;gap:14px}.table-modal-header-icon{width:48px;height:48px;background:hsla(0,0%,100%,.2);border-radius:14px;display:flex;align-items:center;justify-content:center}.table-modal-header-text h2{margin:0;font-size:18px;font-weight:700}.table-modal-badge{display:inline-block;background:hsla(0,0%,100%,.25);padding:4px 14px;border-radius:20px;font-size:13px;margin-top:4px;font-weight:500}.table-modal-close-btn{background:hsla(0,0%,100%,.2);border:none;color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.table-modal-close-btn:hover{background:hsla(0,0%,100%,.3);transform:scale(1.05)}.table-modal-restaurant-bar{display:flex;align-items:center;gap:10px;padding:14px 24px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#047857;font-weight:600;font-size:15px;border-bottom:1px solid #bbf7d0}.table-modal-body{padding:24px;overflow-y:auto;flex:1;max-height:calc(90vh - 280px)}.table-modal-order-summary{background:#fff;border-radius:16px;overflow:hidden;margin-bottom:20px;border:2px solid #e5e7eb;box-shadow:0 4px 12px rgba(0,0,0,.05)}.table-modal-order-summary h3{margin:0;font-size:16px;color:#1e293b;font-weight:700;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:14px 18px;border-bottom:2px dashed #e5e7eb;display:flex;align-items:center;gap:8px}.table-modal-items-list{display:flex;flex-direction:column;gap:0;padding:0}.table-modal-item-row{display:flex;align-items:center;gap:12px;font-size:14px;padding:12px 18px;border-bottom:1px solid #f1f5f9;transition:background .2s}.table-modal-item-row:last-child{border-bottom:none}.table-modal-item-row:hover{background:#fefce8}.table-modal-item-qty{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-weight:700;min-width:36px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;box-shadow:0 2px 6px rgba(16,185,129,.3)}.table-modal-item-name{flex:1;color:#1e293b;font-weight:600;font-size:15px}.table-modal-item-price{color:#f59e0b;font-weight:700;font-size:15px}.table-modal-total-row{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-top:2px dashed #e5e7eb;font-weight:700}.table-modal-total-label{font-size:16px;color:#1e293b}.table-modal-total-price{color:#10b981;font-size:24px;font-weight:800}.table-modal-form-group{margin-bottom:18px}.table-modal-form-label{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;color:#475569;font-weight:500}.table-modal-form-label.optional{color:#94a3b8}.table-modal-form-label .optional-tag{font-size:11px;background:#f1f5f9;padding:2px 8px;border-radius:10px;color:#94a3b8}.table-modal-input{width:100%;padding:14px 18px;border:2px solid #e2e8f0;border-radius:14px;font-size:16px;font-family:inherit;background:#fff;color:#1e293b;transition:all .2s;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.table-modal-input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.15)}.table-modal-input::placeholder{color:#94a3b8}.table-modal-textarea{width:100%;padding:14px 18px;border:2px solid #e2e8f0;border-radius:14px;font-size:16px;font-family:inherit;background:#fff;color:#1e293b;transition:all .2s;resize:vertical;min-height:80px;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.table-modal-textarea:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.15)}.table-modal-textarea::placeholder{color:#94a3b8}.table-modal-payment-info{background:linear-gradient(135deg,#fef3c7,#fde68a);padding:14px 18px;border-radius:14px;text-align:center;color:#92400e;font-weight:600;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #f59e0b}.table-modal-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#dc2626;padding:14px 18px;border-radius:12px;margin-top:16px;text-align:center;font-weight:500;border:1px solid #fca5a5}.table-modal-footer{padding:20px 24px;border-top:1px solid #e2e8f0;background:#fafafa}.table-modal-submit-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:18px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:16px;font-size:17px;font-weight:700;cursor:pointer;transition:all .3s;font-family:inherit}.table-modal-submit-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 30px rgba(16,185,129,.4)}.table-modal-submit-btn:active:not(:disabled){transform:translateY(-1px)}.table-modal-submit-btn:disabled{opacity:.7;cursor:not-allowed}.table-modal-spinning{animation:tableModalSpin 1s linear infinite}@keyframes tableModalSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.table-modal-success{padding:0!important;overflow-y:auto}.table-modal-success-content{display:flex;flex-direction:column;align-items:center;padding:40px 24px 30px;text-align:center}.table-modal-success-icon{width:100px;height:100px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:20px;animation:tableModalSuccessPop .6s cubic-bezier(.34,1.56,.64,1);box-shadow:0 15px 40px rgba(16,185,129,.4)}@keyframes tableModalSuccessPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.table-modal-success-content h2{margin:0 0 12px;font-size:24px;color:#1e293b;font-weight:800}.table-modal-order-number{font-size:16px;color:#64748b;margin:0 0 8px}.table-modal-order-number strong{color:#10b981;font-size:22px;font-weight:800}.table-modal-table-info{background:linear-gradient(135deg,#f0fdf4,#dcfce7);padding:10px 24px;border-radius:25px;color:#047857;font-weight:600;margin-bottom:16px;font-size:15px}.table-modal-success-message{display:flex;align-items:center;gap:10px;padding:14px 24px;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:14px;color:#047857;font-weight:600;margin-bottom:24px;font-size:15px}.table-modal-platform-promo{background:linear-gradient(135deg,#667eea,#764ba2);padding:28px;border-radius:24px;color:#fff;width:100%;max-width:380px;text-align:right;box-shadow:0 20px 50px rgba(102,126,234,.4)}.table-modal-promo-header{display:flex;align-items:center;gap:14px;margin-bottom:24px}.table-modal-promo-icon{width:56px;height:56px;background:hsla(0,0%,100%,.2);border-radius:16px;display:flex;align-items:center;justify-content:center}.table-modal-promo-title h3{margin:0;font-size:22px;font-weight:800}.table-modal-promo-subtitle{margin:6px 0 0;font-size:14px;opacity:.9}.table-modal-features-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.table-modal-feature-item{display:flex;align-items:flex-start;gap:14px;background:hsla(0,0%,100%,.12);padding:14px 16px;border-radius:14px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s}.table-modal-feature-item:hover{background:hsla(0,0%,100%,.18);transform:translateX(-4px)}.table-modal-feature-emoji{font-size:28px;flex-shrink:0}.table-modal-feature-text strong{display:block;font-size:15px;margin-bottom:3px;font-weight:700}.table-modal-feature-text p{margin:0;font-size:13px;opacity:.85;line-height:1.4}.table-modal-promo-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.table-modal-promo-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border-radius:14px;font-weight:700;text-decoration:none;font-size:16px;transition:all .3s;cursor:pointer;border:none;font-family:inherit}.table-modal-promo-btn.primary{background:#fff;color:#667eea}.table-modal-promo-btn.primary:hover{transform:scale(1.03);box-shadow:0 8px 25px rgba(0,0,0,.2)}.table-modal-promo-btn.android{background:linear-gradient(135deg,#34d399,#10b981);color:#fff}.table-modal-promo-btn.android:hover{transform:scale(1.03);box-shadow:0 8px 25px rgba(16,185,129,.4)}.table-modal-promo-btn.ios{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff}.table-modal-promo-btn.ios:hover{transform:scale(1.03);box-shadow:0 8px 25px rgba(59,130,246,.4)}.table-modal-app-btns-row{display:flex;gap:12px}.table-modal-app-btns-row .table-modal-promo-btn{flex:1;padding:14px 16px;font-size:14px}.table-modal-web-note{text-align:center;font-size:13px;color:hsla(0,0%,100%,.8);margin:0}.table-modal-web-note a{color:#fff;font-weight:700;text-decoration:underline}.table-modal-done-btn{margin-top:24px;padding:16px 50px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:14px;font-size:17px;font-weight:700;cursor:pointer;transition:all .3s;font-family:inherit}.table-modal-done-btn:hover{transform:scale(1.05);box-shadow:0 10px 30px rgba(16,185,129,.4)}@media (max-width:480px){.table-modal-overlay{padding:8px}.table-modal-container{border-radius:16px;max-height:96vh}.table-modal-header{padding:10px 12px}.table-modal-header-icon{display:none}.table-modal-header-text h2{font-size:14px}.table-modal-badge{padding:2px 8px;font-size:11px}.table-modal-close-btn{width:32px;height:32px;background:#ef4444!important;color:#fff!important}.table-modal-close-btn:hover{background:#dc2626!important}.table-modal-restaurant-bar{display:none}.table-modal-body{padding:12px}.table-modal-success-content{padding:16px 12px}.table-modal-platform-promo{padding:10px;border-radius:12px}.table-modal-promo-header{flex-direction:column;text-align:center}.table-modal-features-list{gap:6px}.table-modal-feature-item{padding:8px 10px}.table-modal-app-btns-row{flex-direction:column}.table-modal-order-summary{padding:10px;margin-bottom:10px}.table-modal-order-summary h3{font-size:12px;margin-bottom:8px}.table-modal-form-group{margin-bottom:10px}.table-modal-form-label{font-size:12px;margin-bottom:4px}.table-modal-input,.table-modal-textarea{padding:10px 12px;font-size:14px;border-radius:8px}.table-modal-footer{padding:10px 12px}.table-modal-submit-btn{padding:12px 16px;font-size:14px;border-radius:10px}}.table-modal-success-simple{max-width:360px}.table-modal-success-simple .table-modal-success-content{padding:40px 30px;text-align:center}.table-modal-success-simple .table-modal-success-icon{width:90px;height:90px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#fff;animation:successPulse .6s ease}@keyframes successPulse{0%{transform:scale(0)}50%{transform:scale(1.15)}to{transform:scale(1)}}.table-modal-success-simple h2{font-size:22px;color:#10b981;margin-bottom:12px}.table-modal-success-simple .table-modal-order-number{font-size:15px;color:#6b7280;margin-bottom:10px}.table-modal-success-simple .table-modal-order-number strong{color:#374151;font-family:monospace;font-size:17px}.table-modal-success-simple .table-modal-table-info{font-size:16px;color:#374151;margin-bottom:16px}.table-modal-success-simple .table-modal-table-info strong{color:#10b981;font-size:18px}.table-modal-success-simple .table-modal-success-message{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;background:#f0fdf4;border-radius:12px;color:#059669;margin-bottom:24px}.table-modal-success-simple .table-modal-done-btn{width:100%;padding:14px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.table-modal-success-simple .table-modal-done-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(16,185,129,.35)}.table-modal-mobile-close-footer{display:none}@media (max-width:768px){.table-modal-mobile-close-footer{display:none}}