:root{font-family:SUITE Variable,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#333;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{max-width:100%;height:auto;display:block}button{cursor:pointer;border:none;background:none;font:inherit}input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;width:100%}:root{--color-primary: #f27f4d;--color-primary-dark: rgb(0, 118, 128);--color-primary-darker: rgb(0, 98, 108);--color-primary-darkest: #404e67;--color-primary-light: rgba(0, 148, 160, .1);--color-white: #ffffff;--color-black: #000000;--color-success: #22c55e;--color-success-dark: #16a34a;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-error: #dc2626;--color-error-dark: #b91c1c;--color-info: #3b82f6;--color-info-dark: #2563eb;--color-teal:#02b59e;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--font-family-primary: "SUITE Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-mono: "Fira Code", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .25rem;--radius-base: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--container-max-width: 1280px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--gradient-brand: linear-gradient(135deg, rgb(242 127 77), #ce5231);--gradient-brand-soft: linear-gradient(135deg, rgba(0,148,160,.08), rgba(0,118,128,.08))}.btn.btn-kakao{background-color:#fee500;border-color:#fee500;color:#191600}.btn.btn-kakao:hover,.btn.btn-kakao:focus{filter:brightness(.95)}.btn.btn-kakao img{vertical-align:middle}.text-gradient-brand{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.surface-soft{background:var(--gradient-brand-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.card.surface-soft{box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-base);font-weight:var(--font-weight-medium);text-decoration:none;cursor:pointer;font-size:var(--font-size-base);padding:var(--space-3) var(--space-4);line-height:1}.choice-btn{padding:.45rem .75rem;border-radius:var(--radius-full);border:1px solid var(--color-primary-darkest);background:#fff;cursor:pointer;color:var(--color-primary-darkest);font-weight:var(--font-weight-medium)}.choice-btn:hover:not(:disabled){color:var(--color-teal);border-color:var(--color-teal)}.choice-btn.active{background:var(--color-teal);color:#fff;border-color:var(--color-teal)}.choice-btn.active:hover:not(:disabled){color:#fff;box-shadow:2px 4px 10px #0000002e}.btn-primary{background:var(--color-primary-darkest);color:var(--color-white);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background:var(--color-primary-darkest);box-shadow:var(--shadow-lg)}.btn-secondary{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-primary);color:var(--color-white)}.btn-large{padding:var(--space-4) var(--space-6);font-size:var(--font-size-lg);border-radius:var(--radius-xl)}.btn-small{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.form-group{margin-bottom:var(--space-4)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-label{display:block;color:var(--color-gray-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.form-input{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--color-gray-300);border-radius:var(--radius-base);font-size:var(--font-size-base);transition:all var(--transition-base);background:var(--color-white)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input.error{border-color:var(--color-error);box-shadow:0 0 0 3px #dc35451a}.form-input:disabled{background:var(--color-gray-50);cursor:not-allowed;opacity:.7}.error-text{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--space-1);display:block}.error-message{background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);color:var(--color-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-base);margin-bottom:var(--space-5);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.success-message{background-color:var(--color-primary-light);border:1px solid rgba(0,148,160,.3);color:var(--color-primary-dark);padding:var(--space-3) var(--space-4);border-radius:var(--radius-base);margin-bottom:var(--space-5);font-size:var(--font-size-sm);text-align:center;font-weight:var(--font-weight-medium)}.card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-base);overflow:hidden;padding:var(--space-4)}.card-header{padding:var(--space-6);border-bottom:1px solid var(--color-gray-200)}.admin-card .card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-card .card-body{padding:.85rem}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-6);border-top:1px solid var(--color-gray-200);background:var(--color-gray-50)}.chip,.criteria-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:999px;background:var(--color-gray-100);color:var(--color-gray-700);letter-spacing:.5px;line-height:1}.criteria-chip.days{background:var(--color-primary-light);color:var(--color-primary-dark)}.criteria-chip.warning{background:#f59e0b26;color:var(--color-warning-dark)}.badge{display:inline-block;background:var(--gradient-brand);color:#fff;font-size:var(--font-size-xs);padding:.3rem .55rem;border-radius:.75rem;font-weight:var(--font-weight-semibold);letter-spacing:.5px}.skeleton .skeleton-item{display:flex;gap:1rem;padding:1rem 0}.skeleton-block{background:var(--color-gray-200);width:120px;height:72px;border-radius:var(--radius-base);position:relative;overflow:hidden}.skeleton-line{height:12px;background:var(--color-gray-200);border-radius:4px;margin:.4rem 0;position:relative;overflow:hidden}.skeleton-line.short{width:40%}.skeleton-line:after,.skeleton-block:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.4) 45%,transparent 90%);animation:skeleton-shine 1.2s linear infinite}@keyframes skeleton-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.glass-panel{background:#ffffff8c;-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);border:1px solid rgba(255,255,255,.4);box-shadow:0 8px 24px -8px #00000026}.interactive-card{transition:transform .4s var(--transition-base),box-shadow var(--transition-base)}.interactive-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}.location-card{border:1px solid var(--color-gray-200)}.location-details .card-body{padding:var(--space-5)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-2{margin-bottom:var(--space-2)}.mb-10{margin-bottom:var(--space-10)}.loading-container{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:var(--space-10)}.spinner{width:50px;height:50px;border:4px solid var(--color-gray-200);border-top:4px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin:0 auto var(--space-5)}.loading-message{color:var(--color-gray-600);font-size:var(--font-size-base);margin:0}.icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-sm{width:16px;height:16px}.icon-base{width:20px;height:20px}.icon-lg{width:24px;height:24px}.icon-xl{width:32px;height:32px}.menu-icon{display:flex;align-items:center;justify-content:center;margin-right:var(--space-3);width:20px;height:20px;flex-shrink:0}.menu-icon svg{width:16px;height:16px;color:var(--color-gray-600);transition:color var(--transition-base)}.profile-menu-item:hover .menu-icon svg{color:var(--color-primary)}.profile-menu-item.logout:hover .menu-icon svg{color:var(--color-error)}.profile-arrow{display:flex;align-items:center;justify-content:center;margin-left:var(--space-2);transition:transform var(--transition-base)}.modal-backdrop{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-base)}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(calc(100vw - 2rem),860px);max-height:min(calc(100vh - 2rem),90vh);background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);z-index:var(--z-modal);display:flex;flex-direction:column;overflow:hidden;animation:modalIn var(--transition-base)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-200);background:#ffffffd9}.modal--responsive{width:calc(100vw - 1rem);left:50%;transform:translate(-50%);top:auto;bottom:1rem;max-height:calc(100vh - 2rem);border-radius:12px}@media (min-width: 640px){.modal--responsive{width:min(calc(100vw - 2rem),760px);top:50%;transform:translate(-50%,-50%);bottom:auto}}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:1.5rem;background:#000000d9;color:#fff;padding:.6rem 1rem;border-radius:8px;z-index:99999;font-size:.95rem}.admin-filters{align-items:center}.admin-sidebar nav .nav-section{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0 1rem}.admin-sidebar nav .nav-section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-600);margin:.25rem 0}.admin-wrapper--mobile nav .nav-section{display:inline-flex;flex-direction:column;gap:.25rem;padding:4px 8px;border:1px solid var(--color-gray-100);border-radius:8px;background:#fff}.admin-wrapper--mobile nav .nav-section-title{font-size:.7rem;color:var(--color-gray-600)}.admin-filters select,.admin-filters input[type=date],.admin-filters input[type=search]{min-width:140px}@media (max-width: 720px){.admin-filters{gap:.6rem;align-items:stretch}.admin-filters select,.admin-filters input[type=date],.admin-filters input[type=search]{width:100%;min-width:0}}.admin-filters{display:flex;gap:.75rem;padding:.75rem;background:var(--color-white);border:1px solid var(--color-gray-100);border-radius:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 6px 18px #1018280a}.admin-filters .controls{display:flex;flex-direction:column;gap:.5rem}.admin-filters .controls>*{min-width:140px}.admin-filters .actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.filter-group{display:flex;flex-direction:column;gap:.35rem}.controls-row{display:flex;gap:.75rem;align-items:center}.controls-row-top{justify-content:flex-start}.controls-row-bottom{justify-content:space-between;align-items:end}.filter-dates{flex:1 1 60%}.filter-actions-inline{display:flex;gap:.5rem;align-items:center}.filter-search,.filter-status,.filter-location{flex:1 1 20%}.daterange{display:flex;gap:.4rem;align-items:center}.admin-filters select,.admin-filters input[type=date],.admin-filters input[type=search]{padding:.5rem .65rem;border:1px solid var(--color-gray-200);background:var(--color-white);border-radius:8px;color:var(--color-gray-800);font-size:.95rem}.admin-filters input[type=search]{min-width:240px}@media (max-width: 720px){.admin-filters{flex-direction:column;align-items:stretch;gap:.5rem}.admin-filters .controls{width:100%}.controls-row{flex-direction:column;gap:.5rem}.filter-actions-inline{width:100%;display:flex;justify-content:space-between}.filter-actions-inline .btn{flex:1}}@media (max-width: 420px){.admin-filters{padding:.6rem}.admin-filters .controls{grid-template-columns:1fr;gap:.5rem}.filter-dates .daterange{flex-direction:column;align-items:stretch}.filter-dates .daterange .date-sep{display:none}.filter-dates .daterange input{width:100%}.filter-actions-inline{display:flex;flex-direction:column;gap:.5rem}.filter-actions-inline .btn{width:100%}.admin-card .card-header{flex-direction:column;align-items:flex-start;gap:.5rem}.admin-card .card-header>div:last-child{width:100%;display:flex;justify-content:space-between}.admin-card .card-header button{flex:0}.admin-card .card-body{padding:.6rem}.form-label{font-size:.85rem}.form-input{font-size:.95rem;padding:.45rem .6rem}}@media (max-width: 360px){.admin-filters{padding:.4rem;gap:.35rem}.admin-filters .controls{gap:.4rem}.filter-group{gap:.2rem}.form-label{font-size:.78rem;color:var(--color-gray-600)}.form-input{font-size:.92rem;padding:.35rem .45rem}.filter-dates .daterange{gap:.25rem}.admin-filters .actions{gap:.35rem}.admin-filters .actions .btn{padding:.45rem .6rem;font-size:.92rem}.admin-card .card-header{padding:.5rem}.admin-card .card-header>div:last-child{margin-top:.25rem}}.reservation-card{border:1px solid var(--color-gray-150);border-radius:10px;padding:.75rem;background:var(--color-white);box-shadow:0 6px 18px #1018280a}.reservation-list{list-style:none;padding:0;margin:0}.date-sep{align-self:center;margin:0 .35rem;color:var(--color-gray-600)}.reservation-meta{color:var(--color-gray-600)}.card-title{font-weight:600}.reservation-empty{padding:.75rem}.pagination-left{display:flex;gap:.5rem;align-items:center}.rows-label{margin-right:.35rem}.reservation-card .card-top{display:flex;justify-content:space-between;gap:.5rem;align-items:center;margin-bottom:.5rem}.reservation-card .card-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.5rem}.reservation-actions{display:flex;gap:.5rem}.reservation-actions .btn{flex:1}.table-responsive{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.95rem}.admin-table th,.admin-table td{padding:.6rem .75rem;border-bottom:1px solid var(--color-gray-100);text-align:left}@media (max-width: 920px){.admin-table th,.admin-table td{padding:.5rem;font-size:.9rem}}@media (max-width: 640px){.responsive-table thead{display:none}.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}.responsive-table tr{margin-bottom:.65rem;border:1px solid var(--color-gray-100);border-radius:10px;overflow:hidden;box-shadow:0 4px 10px #1018280a;background:#fff}.responsive-table td{border-bottom:1px solid var(--color-gray-100);padding:.55rem .75rem}.responsive-table td:last-child{border-bottom:0}.responsive-table td:before{content:attr(data-label);display:block;font-weight:700;color:var(--color-gray-600);margin-bottom:.25rem}.responsive-table .table-empty{text-align:center}}@media (max-width: 640px){.employees-toolbar{gap:.5rem!important;flex-direction:column;align-items:stretch}.employees-toolbar .form-input{flex:1 1 100%;min-width:0}.employees-toolbar .btn,.employees-toolbar .btn-secondary{width:100%}.employees-pagination{flex-direction:column;align-items:stretch!important}.employees-pagination>div:last-child{display:flex;gap:.5rem}.employees-pagination .btn{flex:1;min-width:0}}.report-controls{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:.5rem}.report-controls .date-range{display:flex;gap:.5rem;align-items:center}.report-controls .report-actions{display:flex;gap:.5rem}.report-controls .date-separator{color:var(--color-gray-600)}.usage-report-card{display:flex;flex-direction:column;gap:.25rem}.ticket-code{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}@media (max-width: 640px){.report-controls{flex-direction:column;align-items:stretch;gap:.5rem}.report-controls .date-range{width:100%;justify-content:space-between}.report-controls .report-actions{width:100%}.report-controls .report-actions .btn{flex:1}.report-controls input[type=date]{flex:1;min-width:0}.usage-report-card{padding:.65rem!important}}.admin-pagination{gap:.5rem}@media (max-width: 720px){.admin-pagination{flex-direction:column;align-items:stretch;gap:.5rem}.admin-pagination>div{display:flex;justify-content:space-between}}.toast-container{position:fixed;right:1rem;top:1rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem}.toast{padding:.6rem .9rem;border-radius:8px;box-shadow:var(--shadow-md);font-weight:600}.toast.info{background:#0094a014;color:var(--color-primary-dark);border:1px solid rgba(0,148,160,.12)}.toast.success{background:#22c55e14;color:#166534;border:1px solid rgba(34,197,94,.12)}.toast.error{background:#dc354514;color:#8b1b1b;border:1px solid rgba(220,53,69,.12)}.modal-body{padding:var(--space-5);overflow:auto}.modal-fullscreen{top:12%;left:50%;transform:translate(-50%);width:calc(100vw - 2rem);max-height:calc(100vh - 3rem);border-radius:12px;animation:none!important}@media (max-width: 640px){.modal-fullscreen{position:fixed;inset:0;transform:none;width:100vw;height:100vh;max-height:none;border-radius:0;margin:0;animation:none!important;box-shadow:none;background:#fff}}@keyframes modalIn{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px))}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}th.sortable:hover{text-decoration:underline}@media (max-width: 640px){.modal{width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);border-radius:var(--radius-xl)}.modal-body{padding:var(--space-4)}}.auth-page{min-height:calc(100vh - 160px);display:flex;flex-direction:column;background:#f5f7fb}.auth-page.auth-bg-light{background:#f5f7fb}.auth-main-content{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.auth-container{width:100%;max-width:450px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto}.auth-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);padding:var(--space-10);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:450px}.auth-card.employee-update{width:550px}.auth-card.sign-in{width:100%}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-header h2{color:var(--color-primary-darkest);font-size:var(--font-size-3xl);font-weight:var(--font-weight-black);margin-bottom:var(--space-2)}.auth-header p{color:var(--color-gray-600);font-size:var(--font-size-base);margin:0}.auth-form{margin-bottom:var(--space-8)}.auth-link-btn{background:none;border:none;color:var(--color-primary);font-weight:var(--font-weight-medium);cursor:pointer;text-decoration:underline}.auth-link-btn:hover{color:var(--color-primary-dark)}.auth-submit-btn{width:100%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:var(--color-white);border:none;padding:var(--space-4);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.auth-submit-btn:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.profile-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);margin-right:var(--space-2)}.profile-avatar.large{width:60px;height:60px;font-size:var(--font-size-xl)}.profile-name{font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.profile-menu{position:absolute;top:100%;right:0;background:var(--color-white);border-radius:var(--radius-base);box-shadow:var(--shadow-lg);min-width:250px;z-index:var(--z-dropdown);overflow:hidden}@media (max-width: 640px){.profile-menu{position:absolute;top:50%;right:0;background:var(--color-white);border-radius:var(--radius-base);box-shadow:var(--shadow-lg);min-width:250px;z-index:var(--z-dropdown);overflow:hidden}.profile-menu-header,.profile-menu-item{padding:var(--space-3)}.profile-menu-item input.form-input{width:100%;min-width:0!important;font-size:16px}.profile-menu-item>div{flex-direction:column!important;align-items:stretch!important;gap:var(--space-2)!important}.profile-menu-item button{width:100%}}.profile-menu-header{padding:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.profile-info{display:flex;align-items:center;gap:var(--space-3)}.profile-display-name{font-weight:var(--font-weight-semibold);color:var(--color-gray-400)}.profile-email{font-size:var(--font-size-sm);color:var(--color-gray-600)}.profile-menu-divider{height:1px;background:var(--color-gray-200)}.profile-menu-items{padding:var(--space-2) 0}.profile-menu-item{width:100%;display:flex;align-items:center;padding:var(--space-3) var(--space-4);background:none;border:none;text-align:left;cursor:pointer;transition:background var(--transition-base);color:var(--color-gray-700)}.profile-menu-item:hover{background:var(--color-gray-50)}.profile-menu-item.logout{color:var(--color-error)}.profile-menu-item.logout:hover{background:#fef2f2}.password-toggle{background:none;border:none;position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);cursor:pointer;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:all var(--transition-base);text-transform:uppercase;letter-spacing:.5px}.password-toggle:hover{background-color:#0094a01a;color:var(--color-primary-dark)}.search-page{max-width:1200px;margin:0 auto;padding:var(--space-8) var(--space-4) var(--space-16)}.search-header{text-align:center;margin-bottom:var(--space-8)}.brand-logo-wrap{display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--space-4);text-decoration:none}.brand-logo{width:120px;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.12));transition:transform .5s var(--transition-base)}.brand-logo:hover{transform:scale(1.05) rotate(-1deg)}@media (max-width:640px){.brand-logo{width:96px}}.search-title{margin:0 0 .75rem;font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-weight-extrabold);letter-spacing:-1px;color:var(--color-primary-darkest)}.search-subtitle{margin:0;font-size:var(--font-size-lg);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.search-form .form-row{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.search-form .form-group{position:relative;display:flex;flex-direction:column;gap:.25rem}.search-form label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.5px;color:var(--color-gray-500)}.search-form input,.search-form select{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-base);padding:.625rem .875rem;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background .4s}.search-form input:disabled,.search-form select:disabled{background:var(--color-gray-50);border-color:var(--color-gray-200);color:var(--color-gray-200);cursor:not-allowed}.search-form input:focus,.search-form select:focus{outline:none;border-color:var(--color-primary-darkest)}.search-form input:hover,.search-form select:hover{border-color:var( --color-primary-darkest)}.search-form input:hover:disabled,.search-form select:hover:disabled{border-color:var(--color-gray-200)}.search-form .input-compact{padding:.55rem .8rem;font-size:var(--font-size-sm);border-radius:var(--radius-md)}.search-form .input-compact::-webkit-calendar-picker-indicator{filter:grayscale(1) opacity(.8)}.search-form .input-compact::-ms-expand{display:none}.search-form .input-compact:focus{box-shadow:0 0 0 2px var(--color-primary-light)}.search-form .suggestions{position:absolute;z-index:6;top:100%;left:0;right:0;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);margin-top:.35rem;box-shadow:var(--shadow-lg);max-height:40vh;overflow:auto;padding:.25rem}.search-form .suggestion-item{width:100%;text-align:left;padding:.65rem .75rem;border-radius:var(--radius-md);border:0;background:transparent;cursor:pointer;font-size:var(--font-size-sm)}.search-form .suggestion-item:hover,.search-form .suggestion-item:focus{background:var(--color-gray-100);outline:none}.form-actions{display:flex;justify-content:flex-end}.search-btn{background:var(--color-primary-darkest);border:none;border-radius:var(--radius-full);padding:var(--space-2) var(--space-6);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#fff;letter-spacing:1px;text-transform:uppercase;cursor:pointer}.search-btn:hover:not(:disabled){box-shadow:2px 4px 10px #0000002e}.search-summary{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-2xl);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-8);box-shadow:var(--shadow-lg);position:relative}.summary-info{display:flex;flex-direction:column;gap:var(--space-3)}.checkbox-label{font-size:var(--font-size-md)}@media (min-width:700px){.summary-info{flex-direction:row;justify-content:space-between;align-items:center}}.summary-actions{display:flex;gap:.75rem}.summary-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.location-notice{display:flex;background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border:1px solid rgba(245,158,11,.4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-xl);gap:var(--space-4);margin-bottom:var(--space-8);box-shadow:var(--shadow-md)}.notice-icon{font-size:1.35rem;line-height:1}.notice-text strong{display:block;font-size:var(--font-size-sm);letter-spacing:.5px;margin-bottom:.35rem;color:var(--color-warning-dark)}.notice-text p{margin:0;font-size:var(--font-size-sm);color:#7a5a10}.results{margin-top:var(--space-10)}.results-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-4);display:flex;align-items:center;gap:.75rem}.results-title .count{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-primary-dark)}.car-results-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.car-card{position:relative;display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-gray-200);padding:var(--space-5);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);transition:transform .5s cubic-bezier(.22,.68,.37,1),box-shadow var(--transition-base);overflow:hidden}.car-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.car-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}.car-card:before{content:"";position:absolute;inset:0;background:inherit;opacity:.4;z-index:-1}.card-media{position:relative;margin:-1rem -1rem var(--space-4);padding:1rem 1rem 0}.car-image{width:100%;height:180px;object-fit:cover;border-radius:var(--radius-xl);box-shadow:0 6px 16px -6px #00000040}.feature-badges{position:absolute;top:1.25rem;left:1.25rem;display:flex;gap:.4rem;flex-wrap:wrap}.car-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.car-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin:0;color:var(--color-gray-800);letter-spacing:-.25px}.car-type-tag{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.35rem .6rem;background:var(--color-gray-200);color:var(--color-gray-600);border-radius:var(--radius-full);letter-spacing:.5px}.car-pricing{display:flex;flex-direction:column;gap:.4rem;margin:.75rem 0 1rem}.rate-line{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--color-gray-600)}.rate-line .value{font-weight:var(--font-weight-semibold);color:var(--color-gray-800)}.rate-line.total{padding-top:.4rem;border-top:1px dashed var(--color-gray-300)}.rate-note{font-size:var(--font-size-xs);color:var(--color-warning-dark);font-weight:var(--font-weight-medium)}.car-description{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin:.25rem 0 .75rem}.car-features{display:flex;flex-wrap:wrap;gap:.4rem .75rem;list-style:none;padding:0;margin:0 0 1rem;font-size:var(--font-size-xs);color:var(--color-gray-500)}.car-features li{position:relative;padding-left:.85rem}.car-features li:before{content:"•";position:absolute;left:0;color:var(--color-primary-dark)}.card-actions{display:flex;justify-content:flex-end;margin-top:auto}.reserve-btn{background:var(--gradient-brand);color:#fff;border:none;border-radius:var(--radius-full);padding:.7rem 1.4rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;letter-spacing:.5px;box-shadow:0 8px 20px -6px #0094a066;transition:transform var(--transition-base),box-shadow var(--transition-base)}.reserve-btn:hover{box-shadow:0 14px 32px -10px #0094a080}.loading-message{margin-top:var(--space-10)}.empty-results{margin-top:var(--space-10);text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-600)}.summary-info{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.search-criteria{color:var(--color-gray-600);font-size:var(--font-size-md);line-height:var(--line-height-relaxed)}.search-criteria strong{color:var(--color-gray-800);margin-right:var(--space-1)}.additional-notice{color:var(--color-warning);font-weight:var(--font-weight-medium)}.modify-search-btn{background:var(--color-primary-darkest);color:var(--color-white);border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap}.modify-search-btn:hover{background:var(--color-primary-darkest);box-shadow:var(--shadow-md)}.search-form.minimized{display:none}.notice-content h4{margin:0 0 var(--space-2) 0;color:#8b6914;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.notice-content p{margin:0;color:#6c5914;font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.results ul{list-style:none;padding:0}.search-summary.sticky{position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#ffffffd9,#ffffffa6);margin-bottom:var(--space-6);box-shadow:0 4px 16px -6px #0000001f;animation:fadeSlide .5s ease}@keyframes fadeSlide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.search-page{padding:var(--space-6) var(--space-3) var(--space-14)}.search-header{margin-bottom:var(--space-6)}.search-form{padding:var(--space-5)}.search-form .form-row{grid-template-columns:1fr}.form-actions{justify-content:stretch}.search-btn{width:100%;padding:1rem 1.25rem;font-size:var(--font-size-base)}.search-form .suggestions{max-height:50vh}.car-results-list{grid-template-columns:1fr}.car-card{padding:var(--space-4)}.card-media{margin:-.5rem -.5rem var(--space-4);padding:.5rem .5rem 0}.car-image{height:160px;border-radius:var(--radius-lg)}.car-header{margin-bottom:.35rem}.car-name{font-size:var(--font-size-base)}.car-description{margin:.25rem 0 .5rem;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.car-features{max-height:3.25rem;overflow:hidden}.card-actions{margin-top:.5rem}.reserve-btn{width:100%;padding:.9rem 1.1rem;font-size:var(--font-size-base)}.summary-info{gap:var(--space-2)}.summary-actions{width:100%}.modify-search-btn{width:100%;text-align:center;padding:.6rem 1rem}}@media (max-width:480px){.search-form{padding:var(--space-2)}}.user-info-form{max-width:700px;margin:0 auto}@media (min-width: 960px){.user-info-form.wizard-wide{max-width:1100px}}.user-info-form h2{text-align:center;margin-bottom:var(--space-6);color:var(--color-gray-800)}.form-section.step-section{margin-bottom:var(--space-10);padding:var(--space-8) var(--space-7);border-radius:var(--radius-2xl);position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffffe6,#ffffffa6);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-lg)}.form-section.step-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(0,148,160,.15),transparent 60%),radial-gradient(circle at 10% 90%,rgba(0,118,128,.18),transparent 65%);pointer-events:none;mix-blend-mode:overlay}.step-header{margin:0 0 var(--space-6);display:flex;flex-direction:column;gap:.75rem}.step-title{margin:0;font-size:clamp(1.35rem,2.6vw,1.85rem);font-weight:var(--font-weight-bold);letter-spacing:-.5px}.step-subtitle{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.form-grid{display:grid;gap:var(--space-6)}.form-grid.two-col{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.form-grid .full-span{grid-column:1 / -1}.form-section .form-input{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:.85rem 1rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background .4s}.form-section .form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-section .form-input:hover{border-color:var(--color-gray-300)}.form-section .form-input.error{border-color:var(--color-error);box-shadow:0 0 0 3px #dc354540}.form-section .form-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.5px;text-transform:uppercase;color:var(--color-gray-600);display:block;margin:0 0 .45rem}.form-section .form-label.required:after{content:"*";margin-left:.25rem;color:var(--color-error)}.input-help{display:block;margin-top:.4rem;font-size:var(--font-size-xs);color:var(--color-gray-500)}.file-uploader .file-input{padding:.7rem 1rem;cursor:pointer}.file-selected{display:inline-block;margin-top:.45rem;font-size:var(--font-size-xs);background:var(--color-gray-100);padding:.35rem .7rem;border-radius:var(--radius-full);color:var(--color-gray-700)}.form-section.step-section{animation:stepFade .55s ease}@keyframes stepFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.form-row{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.benefit-banner{display:flex;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-xl);background:linear-gradient(135deg,#0094a01a,#0076800d);border:1px solid var(--color-primary-light);margin-bottom:var(--space-6);align-items:flex-start}.benefit-icon{font-size:1.8rem;line-height:1}.benefit-text{font-size:var(--font-size-sm);color:var(--color-gray-700)}.benefit-text .free-highlight{color:var(--color-primary-dark);font-weight:var(--font-weight-semibold)}.benefit-hint{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-top:.35rem}.drivers-list .driver-wrapper{margin-bottom:var(--space-6)}.empty-drivers{text-align:center;padding:var(--space-6) var(--space-4);border:2px dashed var(--color-gray-300);border-radius:var(--radius-xl);background:var(--color-gray-50)}.empty-text{margin:0 0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-600)}.add-more-wrapper{margin-top:var(--space-4);text-align:center}.driver-entry{background:var(--color-white);border:1px solid var(--color-gray-200);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);position:relative}.driver-entry .driver-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.driver-entry h6{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.remove-driver-btn{background:none;border:none;color:var(--color-error);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;padding:.4rem .7rem;border-radius:var(--radius-full);transition:background var(--transition-fast)}.remove-driver-btn:hover{background:#dc35451a}.driver-entry input[type=text],.driver-entry input[type=email],.driver-entry input[type=tel],.driver-entry input[type=date]{background:var(--color-gray-50);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:.75rem .9rem;font-size:var(--font-size-sm)}.driver-entry input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.file-input-group{display:flex;align-items:center}.file-input-label{display:inline-flex;align-items:center;justify-content:center;background:var(--gradient-brand);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.65rem 1rem;border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-md)}.file-input-label:hover{opacity:.9}.insurance-info-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-6)}.insurance-info-box{display:flex;gap:var(--space-4);background:var(--color-white);border:1px solid var(--color-gray-200);padding:var(--space-5);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.insurance-info-box .info-icon{width:36px;height:36px;border-radius:var(--radius-full);background:var(--gradient-brand);color:#fff;display:grid;place-items:center;box-shadow:var(--shadow-sm)}.insurance-info-box .info-circle-icon{font-weight:var(--font-weight-bold)}.insurance-info-box .info-content h4{margin:0 0 .35rem;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.insurance-info-box .info-subtitle{color:var(--color-gray-600);font-size:var(--font-size-sm);margin-bottom:.5rem}.insurance-info-box .info-list{margin:0;padding-left:1.05rem;display:flex;flex-direction:column;gap:.35rem}.insurance-info-box .info-description{margin-top:.5rem;color:var(--color-gray-600);font-size:var(--font-size-sm)}.insurance-choice .insurance-option{background:var(--color-white);border:1px solid var(--color-gray-200);padding:var(--space-5);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);position:relative;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform .2s}.insurance-choice .insurance-option:hover{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);transform:translateY(-2px)}.insurance-choice .insurance-option.selected{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.insurance-option input[type=radio]{margin-right:var(--space-3)}.insurance-option .option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.insurance-option .option-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.insurance-option .option-price{background:var(--color-primary-dark);color:#fff;font-size:var(--font-size-xs);padding:.35rem .6rem;border-radius:var(--radius-full)}.insurance-option .option-description{font-size:var(--font-size-xs);color:var(--color-gray-600);line-height:1.4}.checkbox-option.rich{display:flex;gap:.75rem;align-items:flex-start;font-size:var(--font-size-md);color:var(--color-gray-700)}.checkbox-option.rich input{margin-top:.3rem}.coverage-card{background:var(--color-white);border:1px solid var(--color-gray-200);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm)}.coverage-title{margin:0 0 .35rem;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.coverage-desc{margin:0 0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-600)}.badge-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:var(--space-3)}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border:1px solid var(--color-gray-300);color:var(--color-gray-700);background:var(--color-gray-50)}.badge.included{border-color:var(--color-success-dark);color:var(--color-success-dark);background:#10b98114}.badge.optional{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.coverage-legend{margin:0 0 var(--space-2);padding-left:1.1rem;display:flex;flex-direction:column;gap:.25rem;font-size:var(--font-size-sm);color:var(--color-gray-700)}.coverage-note{font-size:var(--font-size-xs);color:var(--color-gray-500)}.option-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.option-grid.small{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.select-option{position:relative;display:flex;gap:.75rem;padding:var(--space-4);border:2px solid var(--color-gray-200);border-radius:var(--radius-xl);cursor:pointer;background:var(--color-white);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform .35s}.select-option:hover{border-color:var(--color-primary)}.select-option.selected{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.select-option input{position:absolute;opacity:0;inset:0;cursor:pointer}.option-body{display:flex;flex-direction:column;gap:.35rem}.option-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-800)}.option-desc{font-size:var(--font-size-xs);color:var(--color-gray-600);line-height:1.4}.terms-box{margin-top:var(--space-4);padding:var(--space-6);border-radius:var(--radius-2xl);border:1px solid var(--color-gray-200);background:var(--color-white);box-shadow:var(--shadow-sm)}.terms-header-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.terms-title{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.terms-link-btn{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.55rem .9rem;background:var(--gradient-brand);color:#fff;border-radius:var(--radius-full);text-decoration:none;box-shadow:var(--shadow-sm)}.terms-link-btn:hover{opacity:.9}.terms-list{margin:0;padding-left:1.1rem;font-size:var(--font-size-xs);color:var(--color-gray-600);line-height:1.5}.terms-list li{margin-bottom:.35rem}.checkbox-option.accept{margin-top:var(--space-4)}@media (prefers-color-scheme: dark){.select-option{background:#1e293b8c;border-color:#ffffff14}.select-option.selected{border-color:var(--color-primary)}.option-title{color:var(--color-gray-200)}.option-desc{color:var(--color-gray-400)}.terms-box{background:#1e293b8c;border-color:#ffffff14}.terms-list{color:var(--color-gray-400)}}.review-grid{display:grid;gap:var(--space-6);grid-template-columns:1fr}.review-grid.enhanced{gap:var(--space-7)}.review-overview{margin-bottom:var(--space-5)}.review-block{background:var(--color-white);border:1px solid var(--color-gray-200);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast),transform .15s}.review-block:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.review-block.full-span{grid-column:1 / -1}.review-title{margin:0 0 var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.5px;text-transform:uppercase;color:var(--color-gray-600)}.admin-wrapper{display:grid;grid-template-columns:220px 1fr;gap:var(--space-6);min-height:60vh}.admin-sidebar{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-5);position:sticky;top:var(--space-5);height:fit-content}.admin-brand{margin-top:0;font-size:var(--font-size-base)}.admin-sidebar nav{display:flex;flex-direction:column;gap:.5rem;margin-top:var(--space-3)}.admin-sidebar a{color:var(--color-gray-700);text-decoration:none;padding:.4rem .6rem;border-radius:var(--radius-lg)}.admin-sidebar a:hover{background:var(--color-gray-100)}.admin-sidebar a.active{background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary)}.admin-content{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-6)}.admin-section .admin-header h2{margin:0 0 .25rem}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.admin-card{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--space-5)}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.6rem .5rem;border-bottom:1px solid var(--color-gray-200);text-align:left;font-size:var(--font-size-sm)}.table-responsive{overflow:auto}@media (max-width: 800px){.admin-wrapper{grid-template-columns:1fr}}@media (max-width: 800px){.admin-sidebar{position:static;display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:.5rem;overflow-x:auto;white-space:nowrap}.admin-sidebar .admin-brand{flex:0 0 auto;margin-right:.5rem;font-size:1rem}.admin-sidebar nav{display:flex;flex-direction:row;gap:.5rem;margin-top:0}.admin-sidebar a{padding:.5rem .65rem;white-space:nowrap;border-radius:var(--radius-lg)}.admin-sidebar a.active{border:1px solid var(--color-primary);box-shadow:none}.admin-content{padding-top:.5rem}}.car-summary-card{border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);background:var(--color-white);box-shadow:var(--shadow-sm);overflow:hidden}.car-summary-card .car-card-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);align-items:stretch}.car-summary-card .car-media{position:relative;aspect-ratio:16/9;background:var(--color-gray-50);display:flex;align-items:center;justify-content:center}.car-summary-card .car-media img{width:100%;height:100%;object-fit:cover}.car-summary-card .cs-badge.days{position:absolute;left:.75rem;bottom:.75rem;background:var(--color-primary-dark);color:#fff;font-size:var(--font-size-xs);padding:.25rem .5rem;border-radius:var(--radius-full);box-shadow:var(--shadow-sm)}.car-summary-card .car-body{padding:0 var(--space-5) var(--space-5)}.car-summary-card .car-header{display:flex;align-items:center;gap:.5rem;justify-content:space-between;margin-top:var(--space-4)}.car-summary-card .car-title{margin:0;font-size:clamp(1rem,2.2vw,1.15rem);font-weight:var(--font-weight-bold);color:var(--color-gray-900)}.car-summary-card .cs-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem;border-radius:var(--radius-full);font-size:11px;font-weight:var(--font-weight-semibold);border:1px solid var(--color-gray-300);color:var(--color-gray-700);background:var(--color-gray-50)}.car-summary-card .cs-chip.type{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.car-summary-card .car-specs{display:flex;flex-wrap:wrap;gap:.35rem .45rem;margin-top:.5rem}.car-summary-card .car-specs .cs-chip{background:var(--color-gray-100)}.car-summary-card .schedule{margin-top:var(--space-5)}.car-summary-card .schedule-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:.6rem}.car-summary-card .sch-label{font-size:var(--font-size-xs);text-transform:uppercase;color:var(--color-gray-600);letter-spacing:.4px}.car-summary-card .sch-date{font-size:var(--font-size-sm);color:var(--color-gray-800);font-weight:var(--font-weight-semibold)}.car-summary-card .sch-loc{font-size:var(--font-size-xs);color:var(--color-gray-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-summary-card .sch-sep{color:var(--color-gray-400);align-self:center;padding:0 .25rem}.car-summary-card .price-block{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px dashed var(--color-gray-200)}.car-summary-card .price-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.car-summary-card .price-main{display:flex;align-items:baseline;gap:.25rem}.car-summary-card .price{font-size:clamp(1.15rem,2.8vw,1.35rem);font-weight:var(--font-weight-extrabold);color:var(--color-gray-900)}.car-summary-card .per{font-size:var(--font-size-xs);color:var(--color-gray-600)}.car-summary-card .cs-chip.fee{border-color:var(--color-warning);color:var(--color-warning-dark, #b45309);background:#f59e0b1f}.car-summary-card .total-row{margin-top:.45rem;display:flex;align-items:center;gap:.35rem}.car-summary-card .total{font-size:var(--font-size-sm);color:var(--color-gray-900)}.car-summary-card .note{font-size:var(--font-size-xs);color:var(--color-gray-600)}.car-summary-card .fee-note{margin-top:.35rem;font-size:var(--font-size-xs);color:var(--color-warning-dark, #b45309)}@media (min-width: 800px){.car-summary-card .car-card-grid{grid-template-columns:360px 1fr;gap:var(--space-5)}.car-summary-card .car-body{padding:var(--space-5)}.car-summary-card .car-media{aspect-ratio:4/3;border-right:1px solid var(--color-gray-200)}}@media (max-width: 640px){.car-summary-card .car-card-grid{grid-template-columns:1fr;gap:var(--space-4)}.car-summary-card .car-body{padding:var(--space-4)}.car-summary-card .car-title{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.car-summary-card .schedule-row{grid-template-columns:1fr;grid-template-rows:auto auto;gap:.4rem}.car-summary-card .sch-sep{display:none}.car-summary-card .sch-loc{white-space:normal}.car-summary-card .price{font-size:1.1rem}.car-summary-card .cs-badge.days{left:.5rem;bottom:.5rem}}.rs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.rs-list.grid-2{display:grid;grid-template-columns:1fr;gap:.5rem;padding:.25rem}.rs-list.grid-2{column-gap:.85rem;row-gap:.5rem}.review-block.dense .rs-item{padding:.45rem .65rem .45rem .8rem}.review-block.dense .rs-label{font-size:11px}.review-block.dense .rs-value{font-size:13px}.rs-item{position:relative;display:flex;flex-direction:column;gap:.3rem;padding:.6rem .75rem .6rem .9rem;background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg)}.rs-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-gray-200);border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rs-item.success:before{background:var(--color-success)}.rs-item.warning:before{background:var(--color-warning)}.rs-item.danger:before{background:var(--color-error)}.rs-item.info:before{background:var(--color-primary)}.rs-item:hover{background:var(--color-gray-100);border-color:var(--color-gray-300)}.rs-label{font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-value{font-size:var(--font-size-sm);color:var(--color-gray-800);line-height:1.5;word-wrap:break-word;overflow-wrap:anywhere}.rs-value.muted{color:var(--color-gray-500);font-style:italic}.rs-value.tag{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:var(--radius-full);border:1px solid var(--color-gray-300);background:var(--color-gray-50);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-gray-700);width:fit-content}.rs-value.tag.success{border-color:#10b98159;background:#10b98114;color:var(--color-success-dark, #16a34a)}.rs-value.tag.warning{border-color:#f59e0b59;background:#f59e0b1a;color:var(--color-warning-dark, #d97706)}.rs-value.tag.danger{border-color:#f43f5e59;background:#f43f5e1a;color:var(--color-error-dark, #b91c1c)}.rs-value.tag.info{border-color:#0e749059;background:#0e749014;color:var(--color-primary-dark)}.rs-icon{font-size:12px;line-height:1;opacity:.85}@media (min-width: 680px){.rs-item{flex-direction:row;align-items:center;gap:.75rem;padding:.6rem .9rem .6rem 1rem}.rs-label{min-width:180px;max-width:260px}.rs-value{flex:1}.rs-list.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));column-gap:.9rem;row-gap:.55rem;padding:.35rem .45rem}.rs-list.grid-2 .rs-item{height:100%}}@media (min-width: 960px){.rs-item{gap:.9rem;padding:.7rem 1rem .7rem 1.1rem}.rs-label{min-width:200px;max-width:300px}.rs-list.grid-2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));column-gap:1rem;row-gap:.6rem;padding:.5rem}}.kv-list{display:flex;flex-direction:column;gap:.35rem}.kv-item{display:grid;grid-template-columns:minmax(140px,220px) 1fr;column-gap:.75rem;row-gap:.15rem;align-items:center;padding:.5rem .7rem;border-radius:var(--radius-lg);background:var(--color-gray-50);border:1px solid var(--color-gray-200);position:relative;overflow:hidden;transition:background var(--transition-fast),border-color var(--transition-fast)}.kv-item+.kv-item{margin-top:.25rem}.kv-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-gray-200)}.kv-item.success:before{background:var(--color-success)}.kv-item.warning:before{background:var(--color-warning)}.kv-item.danger:before{background:var(--color-error)}.kv-item.info:before{background:var(--color-primary)}.kv-item:hover{background:var(--color-gray-100);border-color:var(--color-gray-300)}.kv-label{font-size:var(--font-size-xs);color:var(--color-gray-600);font-weight:var(--font-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:.25rem}.kv-sep{display:none}.kv-value{font-size:var(--font-size-sm);color:var(--color-gray-800);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kv-value.muted{color:var(--color-gray-500);font-style:italic}.kv-value.success{color:var(--color-success-700, #0a7a4b)}.kv-value.warning{color:var(--color-warning-700, #9a6b00)}.kv-value.danger{color:var(--color-danger-700, #b42318)}.kv-value.info{color:var(--color-primary-700, #0e7490)}.kv-value.tag{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:var(--radius-full);border:1px solid var(--color-gray-300);background:var(--color-gray-50);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-gray-700);white-space:nowrap}.kv-value.tag .kv-icon{font-size:12px;line-height:1;opacity:.85}.kv-value.tag.success{border-color:#10b98159;background:#10b98114;color:var(--color-success-dark, #16a34a)}.kv-value.tag.warning{border-color:#f59e0b59;background:#f59e0b1a;color:var(--color-warning-dark, #d97706)}.kv-value.tag.danger{border-color:#f43f5e59;background:#f43f5e1a;color:var(--color-error-dark, #b91c1c)}.kv-value.tag.info{border-color:#0e749059;background:#0e749014;color:var(--color-primary-dark)}.review-block.dense .kv-item{padding:.35rem .55rem;grid-template-columns:minmax(130px,200px) 1fr}@media (max-width:640px){.form-section.step-section{padding:var(--space-7) var(--space-5)}.benefit-banner{flex-direction:column}.driver-entry{padding:var(--space-5)}.option-grid,.review-grid{grid-template-columns:1fr}.review-block{margin-bottom:var(--space-5)}}@media (min-width: 768px){.review-grid{grid-template-columns:repeat(2,minmax(320px,1fr))}}@media (min-width: 960px){.review-grid{grid-template-columns:repeat(2,minmax(420px,1fr));gap:var(--space-8)}.review-block{padding:var(--space-7)}.review-grid.enhanced{gap:var(--space-10)}}@media (max-width: 640px){.form-grid.two-col,.review-grid{grid-template-columns:1fr}.review-block.full-span{grid-column:auto}.form-section.step-section{padding:var(--space-6) var(--space-5)}.step-title{font-size:clamp(1.2rem,4.5vw,1.5rem)}.step-subtitle{font-size:var(--font-size-xs)}.kv-item{grid-template-columns:1fr;gap:.2rem;padding:.35rem .5rem}.kv-label{white-space:normal;overflow:visible;text-overflow:clip}.kv-sep{display:none}.kv-value{white-space:normal;overflow:visible;text-overflow:clip}.kv-item+.kv-item{border-top:1px dashed var(--color-gray-200)}.form-nav-bar{grid-template-columns:1fr;grid-template-areas:"left" "center" "right";row-gap:var(--space-3)}.form-nav-bar .nav-left,.form-nav-bar .nav-center,.form-nav-bar .nav-right{justify-self:stretch}.form-nav-bar .nav-right{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.form-nav-bar .nav-btn{width:100%;min-width:0}.back-link{width:100%;text-align:center}.input-help{font-size:11px}}@media (min-width: 768px){.form-section.step-section{padding:var(--space-10) var(--space-8)}}@media (min-width: 1024px){.form-section.step-section{padding:var(--space-12) var(--space-10)}}.form-actions{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-6)}.back-btn,.continue-btn{flex:1;padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-base)}.back-btn{background:var(--color-gray-500);color:var(--color-white)}.back-btn:hover{background:var(--color-gray-600)}.continue-btn{background:var(--color-success);color:var(--color-white)}.continue-btn:hover{background:var(--color-success-dark)}.form-nav-bar{position:sticky;bottom:0;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-4);background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--color-gray-200);padding:var(--space-4) var(--space-5);margin-top:var(--space-8)}.form-nav-bar .nav-left{justify-self:start}.form-nav-bar .nav-center{justify-self:center}.form-nav-bar .nav-right{justify-self:end;display:flex;gap:var(--space-3)}.back-link{color:var(--color-gray-700);border:1px solid var(--color-gray-300);padding:.6rem .9rem;border-radius:var(--radius-full);font-size:var(--font-size-sm);line-height:1.2}.back-link:hover{background:var(--color-gray-100)}.step-pill{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-gray-100);border:1px solid var(--color-gray-300);border-radius:var(--radius-full);padding:.4rem .8rem}.step-index,.step-total{font-weight:var(--font-weight-bold);color:var(--color-gray-800)}.step-sep{color:var(--color-gray-500)}.step-title-pill{color:var(--color-gray-700);font-weight:var(--font-weight-medium);margin-left:.25rem}.nav-btn{min-width:96px;padding:.65rem 1rem;border-radius:var(--radius-lg);font-size:var(--font-size-sm);line-height:1.2;min-height:40px;white-space:nowrap}@media (max-width: 640px){.form-nav-bar{grid-template-columns:1fr auto;grid-template-areas:"left right" "center center";row-gap:var(--space-3)}.form-nav-bar .nav-left{grid-area:left}.form-nav-bar .nav-right{grid-area:right}.form-nav-bar .nav-center{grid-area:center}.back-link{font-size:var(--font-size-sm)}.nav-btn{min-width:84px;padding:.6rem .9rem}}.form-nav-bar .nav-btn.btn-primary[type=button],.form-nav-bar .nav-btn.btn-primary[type=submit]{border-radius:var(--radius-full);padding:.65rem 1.1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));box-shadow:0 10px 24px -10px #0094a08c;position:relative;overflow:hidden;font-size:var(--font-size-sm);line-height:1.2;min-height:40px}.form-nav-bar .nav-btn.btn-primary[type=button]:after,.form-nav-bar .nav-btn.btn-primary[type=submit]:after{content:"→";display:inline-block;margin-left:.5rem;transform:translate(0);transition:transform var(--transition-base)}.form-nav-bar .nav-btn.btn-primary[type=button]:hover:not(:disabled),.form-nav-bar .nav-btn.btn-primary[type=submit]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 36px -12px #0094a099}.form-nav-bar .nav-btn.btn-primary[type=button]:hover:not(:disabled):after,.form-nav-bar .nav-btn.btn-primary[type=submit]:hover:not(:disabled):after{transform:translate(4px)}.form-nav-bar .nav-btn.btn-primary[type=button]:disabled,.form-nav-bar .nav-btn.btn-primary[type=submit]:disabled{opacity:.7;transform:none;box-shadow:none}.form-nav-bar .nav-btn.btn-secondary[type=button]{border-radius:var(--radius-full);padding:.65rem 1.1rem;font-size:var(--font-size-sm);line-height:1.2;min-height:40px;white-space:nowrap}.wizard-progress{margin-bottom:var(--space-8);padding:var(--space-5) 0}.progress-bar{display:flex;justify-content:space-between;align-items:center;position:relative;max-width:600px;margin:0 auto}.progress-bar:before{content:"";position:absolute;top:20px;left:0;right:0;height:2px;background-color:var(--color-gray-300);z-index:1}.progress-step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;flex:1;max-width:120px}.step-number{width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);background-color:var(--color-gray-300);color:var(--color-gray-500);border:2px solid var(--color-gray-300);transition:all var(--transition-base);margin-bottom:var(--space-2)}.step-title{font-size:var(--font-size-sm);text-align:center;color:var(--color-gray-500);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);transition:color var(--transition-base)}.progress-step.active .step-number{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light)}.progress-step.active .step-title{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.progress-step.completed .step-number{background-color:var(--color-primary-dark);color:var(--color-white);border-color:var(--color-primary-dark)}.progress-step.completed .step-title{color:var(--color-primary-dark);font-weight:var(--font-weight-semibold)}.progress-bar:after{content:"";position:absolute;top:20px;left:0;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-dark));z-index:1;transition:width .5s ease;width:0%}.wizard-progress[data-progress="1"] .progress-bar:after{width:25%}.wizard-progress[data-progress="2"] .progress-bar:after{width:50%}.wizard-progress[data-progress="3"] .progress-bar:after{width:75%}.wizard-progress[data-progress="4"] .progress-bar:after{width:100%}th,td{padding-left:var(--space-4);padding-right:var(--space-4)}.expedia-style{background:var(--color-gray-50);border-radius:var(--radius-base);padding:24px 20px 16px;box-shadow:var(--shadow-base);margin-bottom:var(--space-8)}.car-result{display:flex;align-items:center;background:var(--color-white);border-radius:var(--radius-base);box-shadow:var(--shadow-sm);margin-bottom:18px;padding:14px 18px;gap:18px}.car-image{width:80px;height:60px;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-gray-100)}.car-info{flex:1;display:flex;flex-direction:column;gap:2px}.car-type{color:var(--color-gray-600);font-size:var(--font-size-base)}.car-price{color:var(--color-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg)}.reserve-btn{background:var(--color-warning);color:var(--color-white);border:none;padding:var(--space-2) var(--space-6);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);cursor:pointer}.reserve-btn:hover{background:var(--color-warning-dark)}.app-container{font-family:var(--font-family-primary);max-width:600px;margin:40px auto;background:var(--color-white);border-radius:var(--radius-base);box-shadow:var(--shadow-base);padding:var(--space-8) var(--space-6);width:100%;box-sizing:border-box}.car-pricing{margin:var(--space-2) 0}.daily-rate{color:var(--color-gray-500);font-size:var(--font-size-sm);margin-bottom:var(--space-1)}.additional-cost{color:var(--color-warning);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1);font-style:italic}.total-cost{color:var(--color-primary);font-size:var(--font-size-base);margin-top:var(--space-1)}.total-cost strong{font-weight:var(--font-weight-bold)}.reservation-confirmation{text-align:center}.confirmation-details{text-align:left;margin:var(--space-6) 0}.car-details,.user-details{background:var(--color-gray-50);padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4)}.insurance-details{background:#f0f8ff;padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);border:1px solid #d0e7ff}.additional-drivers-details{background:#f0fff0;padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);border:1px solid #c8e6c8}.payment-details{background:#fff5f5;padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);border:1px solid #fed7d7}.confirmation-message{background:#e8f5e8;padding:var(--space-4);border-radius:var(--radius-sm);border-left:4px solid var(--color-success)}.back-home-btn{margin-top:var(--space-5);background:var(--color-primary);color:var(--color-white);border:none;padding:var(--space-3) var(--space-6);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-base);font-size:var(--font-size-base)}.back-home-btn:hover{background:var(--color-primary-dark)}@media (max-width: 768px){.container{padding:0 var(--space-4)}.form-row{grid-template-columns:1fr;gap:var(--space-3)}.grid-cols-4,.grid-cols-2{grid-template-columns:repeat(1,minmax(0,1fr))}.btn-large{width:100%;max-width:280px;padding:var(--space-3) var(--space-8);font-size:var(--font-size-base)}}@media (max-width: 480px){.btn-large{padding:var(--space-3) var(--space-6);font-size:var(--font-size-sm);border-radius:var(--radius-lg)}.form-group{margin-bottom:var(--space-3)}.auth-card{width:380px!important;min-width:380px!important;padding:var(--space-6) var(--space-4)!important}}@media (min-width: 769px) and (max-width: 1024px){.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1025px){.welcome-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(0,148,160,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,118,128,.1) 0%,transparent 50%);pointer-events:none;z-index:-1}}*{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;overflow-x:hidden;font-family:var(--font-family-primary);line-height:1.6}#root{width:100%;padding:0;text-align:initial}.app-container{position:relative;min-height:100vh;background:var(--color-white);transition:all var(--transition-base)}.app-container.canada-version{background:linear-gradient(135deg,#ff6b6b22,#ff8e8e22)}.app-container.us-version{background:linear-gradient(135deg,var(--color-gray-50) 0%,var(--color-gray-100) 100%)}.main-content-inner{padding:var(--space-8) var(--space-4);margin:0 auto;max-width:var(--container-max-width);align-items:center;justify-content:center}.app-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);background:var(--color-white);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-sticky);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2}.location-indicator{display:flex;align-items:center;gap:var(--space-4)}.country-display{font-weight:var(--font-weight-bold);color:var(--color-primary);padding:var(--space-2) var(--space-4);background:var(--color-primary-light);border-radius:var(--radius-base);font-size:var(--font-size-sm)}.country-selector{display:flex;align-items:center;gap:var(--space-2)}.country-selector label{font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.country-dropdown{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-base);font-size:var(--font-size-sm);background:var(--color-white);cursor:pointer;transition:border-color var(--transition-base)}.country-dropdown:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.user-section{display:flex;align-items:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.read-the-docs{color:#888}.auth-page{display:flex;flex-direction:column}.auth-main-content{flex:1;display:flex;align-items:center;justify-content:center;padding:1.25rem}.auth-container{width:100%;max-width:450px}.auth-header{color:var(--color-primary-darkest);text-align:center;margin-bottom:var(--space-4)}.auth-header p{color:#475569;font-size:1rem;margin:0}.message-container{background:#f1f5f9;border:1px solid #e2e8f0;padding:12px 14px;border-radius:6px;font-size:var(--font-size-base);line-height:1.4}.auth-form{margin-bottom:2rem}.auth-footer{text-align:center}.auth-footer .terms-link{font-weight:700!important;color:#646cff!important}.auth-footer .terms-link:hover{text-decoration:underline!important}.auth-link-btn{background:none;border:none;color:#0094a0;font-weight:500;cursor:pointer;text-decoration:underline}.auth-link-btn:hover{color:#007680}.auth-submit-btn{width:100%;background:linear-gradient(135deg,#0094a0,#007680);color:#fff;border:none;padding:1rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.auth-submit-btn:hover:not(:disabled){background:#007680;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-group{margin-bottom:1.25rem}.form-group input[type=checkbox]{width:1.5em;height:1.5em;cursor:pointer;vertical-align:middle;margin-right:var(--space-1);accent-color:var(--color-primary-darkest)}.form-group .checkbox-label{font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-label{display:block;color:#334155;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.form-input{width:100%;padding:.75rem 1rem;border:2px solid #cbd5e1;border-radius:.5rem;font-size:1rem;transition:all .3s ease;background:#fff}.form-input::placeholder,input::placeholder,select::placeholder,textarea::placeholder{color:#b0b9c6;opacity:1}.form-input:focus{outline:none;border-color:#0094a0;box-shadow:0 0 0 3px #0094a01a}.form-input.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc35451a}.form-input:disabled{background:#f8fafc;cursor:not-allowed;opacity:.7}.error-text{color:#dc2626;font-size:.875rem;margin-top:.25rem;display:block}.error-message{background-color:#dc35451a;border:1px solid rgba(220,53,69,.3);color:#dc2626;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1.25rem;font-size:.875rem;font-weight:500}.general-error{text-align:center}.success-message{background-color:#0094a01a;border:1px solid rgba(0,148,160,.3);color:#007680;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1.25rem;font-size:.875rem;text-align:center;font-weight:500}.password-input-container{position:relative}.password-toggle{background:none;border:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%);cursor:pointer;color:#0094a0;font-size:.875rem;font-weight:600;padding:.25rem .5rem;border-radius:.25rem;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.password-toggle:hover{background-color:#0094a01a;color:#007680}.password-toggle:focus{outline:2px solid rgba(0,148,160,.3);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:.5rem;font-weight:var(--font-weight-bold);text-decoration:none;cursor:pointer;font-size:1rem;padding:.75rem 1rem;line-height:1}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-primary-darkest);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-darkest);color:var(--color-white)}.btn-secondary{background:transparent;color:var(--color-primary-darkest);border:2px solid var(--color-primary-darkest)}.btn-secondary:hover:not(:disabled){background:var(--color-primary-darkest);color:#fff}.btn-large{padding:1rem 1.5rem;font-size:1.125rem}.btn-small{padding:.5rem .75rem;font-size:.875rem}.user-profile{position:relative}.profile-trigger{display:flex;align-items:center;background:none;border:none;cursor:pointer;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-base);transition:background var(--transition-base)}.profile-trigger:hover{background:var(--color-gray-100)}.profile-avatar{width:30px;height:30px;border-radius:var(--radius-full);background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:.5rem}.profile-avatar.large{width:50px;height:50px;font-size:1.25rem}.profile-name{font-weight:500;color:#334155}.profile-menu{position:absolute;top:100%;right:0;background:#fff;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:250px;z-index:1000;overflow:hidden}.profile-menu-header{padding:1rem;border-bottom:1px solid #e2e8f0}.profile-info{display:flex;align-items:center;gap:.75rem}.profile-details{flex:1}.profile-display-name{font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);color:var(--color-gray-700)}.profile-email{font-size:.875rem;color:#475569}.profile-menu-divider{height:1px;background:#e2e8f0}.profile-menu-items{padding:.5rem 0}.profile-menu-item{width:100%;display:flex;align-items:center;padding:.75rem 1rem;background:none;border:none;text-align:left;cursor:pointer;transition:background .3s ease;color:#334155;font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.profile-menu-item:hover{background:#f8fafc}.profile-menu-item.logout{color:#475569}.profile-menu-item.logout:hover{background:#f1f5f9;border-radius:0}.menu-icon{display:flex;align-items:center;justify-content:center;margin-right:.75rem;width:20px;height:20px;flex-shrink:0}.menu-icon svg{width:16px;height:16px;color:#475569;transition:color .3s ease}.profile-menu-item:hover .menu-icon svg{color:#0094a0}.profile-menu-item.logout:hover .menu-icon svg{color:#475569}.profile-arrow{display:flex;align-items:center;justify-content:center;margin-left:.5rem;transition:transform .3s ease}.profile-arrow.open{transform:rotate(180deg)}.profile-arrow svg{width:24px;color:var(--color-primary-darkest);transition:color .3s ease}.loading-container{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:2.5rem}.loading-spinner{text-align:center}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top:4px solid rgb(0,148,160);border-radius:9999px;animation:spin 1s linear infinite;margin:0 auto 1.25rem}.loading-message{color:#475569;font-size:1rem;margin:0}.page-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);margin-bottom:var(--space-4)}.animate-fade-in-up{animation:fadeInUp 1s ease-out}.animate-slide-in-up{animation:slideInUp .5s ease-out}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}th,td{padding-left:1rem;padding-right:1rem}@media (max-width: 768px){.welcome-section{padding:3rem 1rem;min-height:auto}.brand-logo{width:100px;margin-bottom:1.5rem}.brand-title{font-size:1.875rem;line-height:1.1;margin-bottom:1rem}.brand-subtitle{font-size:1rem;margin-bottom:2.5rem;padding:0 1rem}.nav-buttons{gap:1rem;margin-bottom:3rem}.feature-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,auto);gap:1rem;aspect-ratio:unset;padding-bottom:20px}.feature-item{padding:1rem;gap:.75rem}.feature-icon{width:60px;height:60px}.feature-icon svg{width:30px;height:30px}.feature-content h3{font-size:1rem}.feature-content p{font-size:.75rem}.features-title{font-size:1.5rem}.features-subtitle{font-size:1rem}.form-row{grid-template-columns:1fr;gap:.75rem}.btn-large{width:100%;max-width:280px;padding:.75rem 2rem;font-size:1rem}.profile-trigger{padding:.5em}}@media (max-width: 480px){.main-content-inner{padding:var(--space-4) var(--space-4)}.welcome-section{padding:2rem .75rem}.brand-logo{width:80px;margin-bottom:1rem}.brand-title{font-size:1.5rem;margin-bottom:.75rem}.brand-subtitle{font-size:.875rem;margin-bottom:2rem}.nav-buttons{flex-direction:column;align-items:center;gap:.75rem}.feature-item{text-align:center;padding:1.5rem}.feature-content{text-align:center}.features-title{font-size:1.25rem}.clients-section{margin-top:4rem;padding:3rem 0}.btn-large{padding:.75rem 1.5rem;font-size:.875rem}.form-group{margin-bottom:.75rem}.page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:0}}.main-form{max-width:400px;margin:0 auto;padding:2rem;background:#fff;border-radius:1rem;box-shadow:0 10px 25px #0000001a}.guest-access-btn{width:100%;background:#6b7280;color:#fff;border:none;padding:.75rem;border-radius:.5rem;font-size:.875rem;cursor:pointer;margin-top:1rem;transition:background .3s ease}.guest-access-btn:hover{background:#4b5563}.back-btn{background:#6b7280;color:#fff;border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;margin-bottom:1rem;transition:background .3s ease}.back-btn:hover{background:#4b5563}.oauth-btn-container{display:flex;flex-direction:column;gap:.8rem;width:100%;align-items:stretch}.oauth-btn{width:100%;display:flex;justify-content:space-between;align-items:center;font-weight:800;border:none;border-radius:var(--radius-full);padding:8px 12px;cursor:pointer;transition:box-shadow .25s cubic-bezier(.4,0,.2,1)}.oauth-btn:hover{box-shadow:0 4px 6px -1px #0003,0 2px 4px -1px #00000026}.oauth-btn img{width:22px;height:21px;margin-right:8px;flex-shrink:0}.oauth-btn .login-text{flex:1;text-align:center;font-weight:700}.mobile-nav-menu{position:absolute;top:100%;left:0;right:0;width:100%;border-radius:0 0 1rem 1rem;box-shadow:0 8px 18px -4px #00000026}.mobile-nav-menu .profile-menu-item{font-size:var(--font-size-md)}.mobile-nav-menu .menu-icon{margin-right:.65rem}@media (min-width: 768px){.mobile-nav-menu{display:none!important}}.clients-section{width:100%;padding:4rem 1.5rem 5rem;position:relative;overflow:hidden}.section-header{text-align:center;margin-bottom:2.5rem}.section-header h3{margin:0 0 .75rem;font-size:2rem;font-weight:800;background:linear-gradient(135deg,#0094a0,#007680);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-1px}.section-header p{margin:0;font-size:1rem;color:#475569;font-weight:500}.clients-carousel{position:relative;width:100%;max-width:1400px;margin:0 auto 3rem;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%)}.mode-switcher{display:flex;justify-content:center;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.mode-btn{background:#f1f5f9;border:1px solid #e2e8f0;padding:.4rem .9rem;border-radius:999px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.75px;color:#475569;cursor:pointer;transition:.25s background,.25s color,.25s box-shadow}.mode-btn:hover{background:#e2e8f0}.mode-btn.active{background:linear-gradient(135deg,#0094a0,#007680);color:#fff;box-shadow:0 4px 10px -4px #0094a066;border-color:transparent}.clients-carousel.ticker{cursor:grab}.clients-carousel.ticker:active{cursor:grabbing}.ticker-track{display:flex;gap:1rem;will-change:transform}.slideshow-track{display:flex;gap:1rem}.clients-carousel.fade{position:relative;min-height:180px}.fade-group{position:absolute;inset:0;display:flex;gap:1rem;opacity:0;pointer-events:none;transition:opacity .9s ease}.fade-group.active{opacity:1;pointer-events:auto}.clients-carousel.snap{position:relative}.snap-controls{position:absolute;top:50%;left:0;right:0;display:flex;justify-content:space-between;transform:translateY(-50%);pointer-events:none}.nav-btn{pointer-events:auto;background:#ffffffd9;border:1px solid #cbd5e1;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;line-height:1;font-weight:500;cursor:pointer;color:#0f172a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:.25s}.nav-btn:hover{background:#fff;box-shadow:0 6px 16px -6px #00000026}.snap-viewport{overflow-x:auto;scroll-snap-type:x mandatory;display:flex;gap:1rem;padding-bottom:.5rem;scrollbar-width:none;-ms-overflow-style:none}.snap-viewport::-webkit-scrollbar{display:none}.snap-viewport>.client-tile{scroll-snap-align:start}.snap-dots{display:flex;justify-content:center;gap:.4rem;margin-top:.5rem}.snap-dot{width:8px;height:8px;background:#cbd5e1;border-radius:50%}.snap-dot.active{background:linear-gradient(135deg,#0094a0,#007680)}.carousel-track.slideshow-track{transition-timing-function:cubic-bezier(.22,.61,.36,1)}.carousel-track{display:flex;width:max-content;gap:1rem;will-change:transform}.carousel-track.slideshow{display:flex;gap:1rem}.carousel-track.moving,.carousel-track.moving.dir-right,.clients-carousel:hover .carousel-track.moving{animation:none!important}.float-anim .tile-content{animation:floatY 6s ease-in-out infinite}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (prefers-reduced-motion: reduce){.carousel-track.moving,.float-anim .tile-content{animation:none}}.client-tile{flex:0 0 auto;width:240px;perspective:800px}.tile-content{position:relative;background:#fff;border-radius:1.25rem;padding:1rem 1rem 1rem 1.1rem;display:flex;align-items:center;gap:.85rem;box-shadow:0 4px 10px -2px #00000014,0 2px 4px -2px #0000000f;border:1px solid #e2e8f0;transition:transform .5s cubic-bezier(.22,.68,.37,1),box-shadow .3s ease,border-color .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.client-tile:hover .tile-content{transform:translateY(-6px) rotateX(6deg) rotateY(-3deg);box-shadow:0 18px 30px -8px #00000026,0 8px 12px -6px #00000014;border-color:#cbd5e1}.company-avatar{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#0094a0,#007680);color:#fff;font-weight:700;font-size:1.15rem;display:flex;align-items:center;justify-content:center;letter-spacing:.5px;box-shadow:0 6px 14px -4px #0094a066;flex-shrink:0;position:relative;overflow:hidden}.company-avatar:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.35),transparent 70%);pointer-events:none}.company-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.company-name{margin:0;font-size:.95rem;font-weight:700;color:#0f172a;letter-spacing:.25px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-type{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#64748b;background:#f1f5f9;padding:.25rem .5rem;border-radius:999px;line-height:1}.tile-badge{position:absolute;top:6px;right:6px;font-size:.55rem;font-weight:600;letter-spacing:.75px;text-transform:uppercase;background:linear-gradient(135deg,#0ea5e9,#0891b2);color:#fff;padding:.3rem .45rem;border-radius:6px;box-shadow:0 4px 10px -4px #0891b280;pointer-events:none}.carousel-stats{max-width:980px;margin:0 auto;display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;min-width:140px;padding:.75rem 0}.stat-number{font-size:2rem;font-weight:800;background:linear-gradient(135deg,#0094a0,#007680);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:-1px}.stat-label{font-size:.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#64748b;margin-top:.5rem}.clients-carousel.empty{display:flex;align-items:center;justify-content:center;height:160px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:1rem}.empty-message{font-size:.9rem;color:#64748b;font-weight:500}.partner-carousel{position:relative;width:100%;max-width:1400px;margin:0 auto 2rem;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%)}.partner-carousel.reduced{mask-image:none;-webkit-mask-image:none;overflow:auto;scroll-behavior:smooth}.partner-track{display:flex;align-items:center;will-change:transform;padding:.25rem 0}.partners-set{display:flex;align-items:center}.partner-logo-wrapper{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:.75rem 1.75rem;opacity:.92;transition:opacity .3s ease,transform .3s ease}.partner-logo-wrapper:focus-within,.partner-logo-wrapper:hover{opacity:1;transform:translateY(-4px)}.partner-logo{height:64px;width:auto;object-fit:contain;filter:grayscale(25%) brightness(.95);transition:filter .4s ease;max-width:160px}.partner-logo-wrapper:hover .partner-logo,.partner-logo-wrapper:focus-within .partner-logo{filter:grayscale(0) brightness(1)}.partner-name{display:inline-block;font-weight:700;font-size:1.05rem;letter-spacing:.5px;color:#0f172a;background:linear-gradient(135deg,#0094a0,#007680);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding:.25rem .4rem;white-space:nowrap}.partner-logo-wrapper:hover .partner-name,.partner-logo-wrapper:focus-within .partner-name{filter:none;transform:translateY(-1px)}.partner-controls{position:absolute;inset:0;pointer-events:none;display:flex;align-items:center;justify-content:space-between}.partner-nav{pointer-events:auto;border-radius:0;padding:.6em .6em .76em;background:#e6ebf2;width:42px;height:42px;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#0f172a;cursor:pointer}.partner-nav:hover{background:#fff}.partner-pause{position:absolute;left:50%;bottom:6px;transform:translate(-50%);pointer-events:auto;background:#0f172a;color:#fff;font-size:.7rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;padding:.45rem .9rem;border:none;border-radius:999px;cursor:pointer;box-shadow:0 6px 18px -6px #00000059;transition:background .3s}.partner-pause[aria-pressed=true]{background:#475569}.partner-pause:hover{background:#1e293b}.partner-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;color:#475569;background:linear-gradient(135deg,#f1f5f9,#eef2f5)}@media (max-width:900px){.partner-logo{height:54px;max-width:130px}.partner-logo-wrapper{padding:.6rem 1.25rem}}@media (max-width:640px){.partner-logo{height:46px;max-width:110px}.partner-pause{bottom:4px;font-size:.6rem}}@media (max-width:900px){.client-tile{width:200px}.company-avatar{width:46px;height:46px;font-size:1rem}.stat-number{font-size:1.6rem}}@media (max-width:640px){.clients-section{padding:3rem 1rem 4rem}.section-header h3{font-size:1.6rem}.client-tile{width:170px}.company-name{font-size:.85rem}.tile-content{padding:.85rem .85rem .85rem .95rem}.carousel-stats{gap:1.5rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-30px,0)}70%{transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{animation:fadeInUp .8s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .6s ease-out forwards}.animate-slide-in-up{animation:slideInUp .6s ease-out forwards}.animate-slide-in-right{animation:slideInRight .6s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-down{animation:slideDown .5s ease-out forwards}.animate-gradient-shift{animation:gradientShift 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 2s infinite}.animate-shake{animation:shake .5s ease-in-out}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-500{animation-delay:.5s}.animate-delay-700{animation-delay:.7s}.animate-delay-1000{animation-delay:1s}.hover-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.05)}.hover-rotate{transition:transform var(--transition-base)}.hover-rotate:hover{transform:rotate(5deg)}.app-container{position:relative;min-height:100vh;overflow-x:hidden}.main-content-wrapper{transition:all .3s ease-in-out;opacity:1;transform:translateY(0)}.main-content-wrapper.transitioning{opacity:0;transform:translateY(20px);pointer-events:none}.main-content-wrapper.active{animation:fadeIn .3s ease-out forwards}.app-header{opacity:0;transform:translateY(-20px)}.app-header.animate-slide-down{animation:slideDown .5s ease-out .2s forwards}.transition-overlay{position:fixed;inset:0;background:#fffc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.transition-spinner{text-align:center}.transition-overlay .spinner{width:40px;height:40px;border:3px solid var(--color-gray-200);border-top:3px solid var(--color-primary);border-radius:var(--radius-full);animation:spin .8s linear infinite;margin:0 auto 1rem}body{opacity:0;transition:opacity .5s ease-out}body.app-loaded{opacity:1}.page-enter{opacity:0;transform:translateY(30px) scale(.95)}.page-enter-active{opacity:1;transform:translateY(0) scale(1);transition:all .4s ease-out}.page-exit{opacity:1;transform:translateY(0) scale(1)}.page-exit-active{opacity:0;transform:translateY(-20px) scale(.95);transition:all .3s ease-in}.landing-page{animation:fadeInUp 1s ease-out}.auth-page{animation:slideInUp .6s ease-out}.search-page{animation:fadeInUp .8s ease-out}.user-info-form{animation:slideInRight .6s ease-out}.reservation-confirmation{animation:fadeInUp .8s ease-out}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-bounce,.animate-pulse,.animate-spin,.animate-gradient-shift{animation:none!important}.main-content-wrapper,.transition-overlay,.app-header{transition:none!important;animation:none!important}}.skip-link{position:absolute;top:-100px;left:0;background:var(--color-primary);color:#fff;padding:var(--space-3) var(--space-5);border-radius:0 0 var(--radius-md) 0;font-size:var(--font-size-sm);z-index:100;transition:top .2s ease}.skip-link:focus{top:0;outline:none;box-shadow:0 0 0 3px #ffffff80}.site-header{position:sticky;top:0;width:100%;background:#ffffffb3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20}.header-inner{max-width:var(--container-max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-8);gap:var(--space-8)}.brand{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);letter-spacing:-.5px}.brand-logo-sm{width:40px;height:auto}.brand-logo-md{width:120px;height:auto}.brand-name{background:var(--gradient-brand);-webkit-background-clip:text;color:transparent;background-clip:text;font-size:var(--font-size-2xl);font-weight:var(--font-weight-black);line-height:1}.main-nav ul{list-style:none;display:flex;gap:var(--space-3);margin:0;padding:0}.main-nav .link-btn{background:none;border:0;padding:var(--space-3) var(--space-4);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);cursor:pointer;color:var(--color-gray-700);position:relative;display:inline-flex;align-items:center;gap:.275rem;white-space:nowrap;line-height:1;border-radius:.5rem}.main-nav .link-btn img{width:16px;height:16px;flex:0 0 16px}.main-nav .link-btn:hover{background:#f1f5f9}.main-nav .link-btn:focus-visible{outline:none;color:var(--color-primary-dark)}.main-nav .has-submenu{position:relative}.submenu-panel{position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-lg);box-shadow:0 12px 28px #0000001f;padding:var(--space-3);min-width:220px;z-index:25}.partners-list{list-style:none;margin:0;padding:0;max-height:280px;overflow:auto}.partner-item{display:block;padding:.5rem .75rem;border-radius:var(--radius-md);color:var(--color-gray-700)}.partner-item:hover,.partner-item:focus{background:var(--color-gray-100);outline:none}.header-actions{display:flex;gap:var(--space-3);align-items:center}.btn.btn-ghost{background:transparent;color:var(--color-primary-darkest);box-shadow:none}.btn.btn-ghost:hover{background:var(--color-primary-darkest);color:#fff}.theme-toggle-icon{display:inline-flex}.theme-toggle-text{display:inline-block;margin-left:.35rem}.mobile-nav-toggle{display:none}.hamburger{display:inline-flex;flex-direction:column;gap:4px}.hamburger span{width:20px;height:2px;background:currentColor;transition:transform .3s ease,opacity .3s ease}.main-nav.open{position:fixed;top:70px;left:0;right:0;background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:var(--space-8) var(--space-6);box-shadow:0 8px 24px -8px #00000026}.main-nav.open ul{flex-direction:column;gap:var(--space-6)}.main-nav.open .submenu-panel{position:static;background:transparent;border:0;box-shadow:none;padding:0}.main-nav.open .partners-list{max-height:40vh;border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-lg);background:#fff;padding:var(--space-2)}.nav-backdrop{position:fixed;inset:0;background:#00000059;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .25s ease}.layout-main{min-height:calc(100vh - 160px);background-color:#f5f7fb}.mobile-sticky-cta{display:none}@media (max-width: 768px){.brand{gap:var(--space-2);font-size:var(--font-size-base)}.brand-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.landing-main-inner{padding:var(--space-8) var(--space-8) var(--space-8);margin:0 auto;max-width:var(--container-max-width)}.hero-section,.features-section,.clients-wrapper{overflow:hidden}.hero-mobile,.features-mobile{display:none}.m-brand-title{font-size:clamp(1.5rem,8vw,2rem);font-weight:900;letter-spacing:-1px;background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 .5rem}.m-brand-subtitle{color:var(--color-gray-600);margin:0 0 1rem;font-size:clamp(.95rem,3.5vw,1.05rem)}.m-ctas{display:flex;gap:.5rem;margin:.75rem 0 1rem}.m-ctas .btn{flex:1}.m-benefits{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-template-columns:1fr;gap:.5rem}.m-benefits li{background:#fff;border:1px solid var(--color-gray-200);border-radius:.875rem;padding:.6rem .75rem;font-size:.9rem;display:flex;align-items:center;gap:.5rem;box-shadow:var(--shadow-xs)}.m-badge{background:var(--color-primary);color:#fff;border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.features-mobile .m-section-title{font-size:1.125rem;font-weight:800;margin:1.25rem 0 .75rem}.m-feature-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:.6rem}.m-feature-list li{display:flex;gap:.6rem;background:#fff;border:1px solid var(--color-gray-200);border-radius:.875rem;padding:.7rem .8rem;align-items:flex-start;box-shadow:var(--shadow-xs)}.m-feature-list strong{display:block;font-size:.95rem;color:var(--color-gray-900)}.m-feature-list p{margin:.15rem 0 0;color:var(--color-gray-600);font-size:.85rem}.m-icon{width:36px;height:36px;border-radius:.75rem;display:inline-grid;place-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;font-size:1rem;flex:0 0 36px}.hero-section{padding:var(--space-8) 0 var(--space-12)}.hero-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(var(--space-10),4vw,var(--space-20));align-items:stretch}.hero-left{display:flex;flex-direction:column;justify-content:center;gap:var(--space-4)}.hero-right{display:flex;align-items:center;justify-content:center}.hero-card{flex:1;padding:var(--space-8) var(--space-8) var(--space-10);border-radius:var(--radius-xl);position:relative;display:flex;flex-direction:column;gap:var(--space-6);background:#fff9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-lg)}.hero-card-title{margin:0 0 var(--space-2);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.benefit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.benefit-list li{background:#404e671f;padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);display:flex;gap:var(--space-2);align-items:center}.benefit-badge{background:var(--color-primary-darkest);color:var(--color-white);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;display:inline-block}.hero-inline-actions{display:flex;gap:var(--space-4)}.hero-card-note{font-size:var(--font-size-xs);color:var(--color-gray-500);margin:0}.hero-ctas{display:flex;flex-wrap:wrap;gap:var(--space-4)}.hero-ctas .btn{border-radius:var(--radius-full);padding:var(--space-4) var(--space-16)}.features-section{margin-top:var(--space-12);padding-bottom:var(--space-12)}.feature-grid{grid-auto-rows:auto}.feature-item{background:var(--surface-raised, #fff)}.site-footer{display:flex;padding:var(--space-8) var(--space-10);text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-500);margin:0 auto;max-width:var(--container-max-width);align-items:center;justify-content:center}.footer-text{margin:0}.clients-wrapper{margin-top:var(--space-24)}.partners-page{max-width:1200px;margin:0 auto;padding:var(--space-12) var(--space-6)}.page-header{text-align:center;margin-bottom:var(--space-8)}.page-subtitle{color:var(--color-gray-600);margin-top:var(--space-2)}.partners-toolbar{margin-top:var(--space-6);display:flex;gap:var(--space-4);align-items:center;justify-content:center;flex-wrap:wrap}.search-field{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);padding:.5rem .75rem;min-width:280px;box-shadow:var(--shadow-xs)}.search-input{border:0;outline:none;background:transparent;width:220px;color:var(--color-gray-800)}.search-input::placeholder{color:var(--color-gray-400)}.partners-count{color:var(--color-gray-500);font-size:var(--font-size-sm)}.empty-state{text-align:center;color:var(--color-gray-500);padding:var(--space-16) 0}.partners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-5);margin-top:var(--space-8)}.partner-card{background:var(--surface-raised, #fff);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:var(--space-4);transition:transform .2s ease,box-shadow .2s ease}.partner-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.partner-initial{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;font-weight:700}.partner-meta{display:flex;flex-direction:column}.partner-name{font-weight:700;color:var(--color-gray-800)}@media (max-width: 480px){.search-field{min-width:220px}.partner-name{color:var(--color-gray-100)}.submenu-panel{background:#111518;border-color:#ffffff14;box-shadow:0 12px 28px #0009}.partner-item{color:var(--color-gray-200)}.partner-item:hover,.partner-item:focus{background:#ffffff0f}.main-nav.open .partners-list{background:#111518;border-color:#ffffff14}}.landing-page{min-height:100vh;position:relative;overflow-x:hidden;width:100%}.welcome-section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-16) var(--space-10);position:relative}.hero-content{max-width:1400px;width:100%;text-align:center;animation:fadeInUp 1s ease-out}.logo-section{margin-bottom:var(--space-20);position:relative}.brand-logo{width:140px;height:auto;margin-bottom:var(--space-8);filter:drop-shadow(0 6px 12px rgba(0,148,160,.2));transition:all .4s ease}.brand-logo:hover{transform:scale(1.08) rotate(2deg);filter:drop-shadow(0 8px 16px rgba(0,148,160,.3))}.hero-title{color:var(--color-primary-darkest);font-size:var(--font-size-5xl);font-weight:var(--font-weight-black);-webkit-background-clip:text;background-clip:text;margin:0;animation:gradientShift 3s ease-in-out infinite;letter-spacing:-2px}.brand-title{color:var(--color-primary-darkest);font-size:var(--font-size-5xl);font-weight:var(--font-weight-black);background:var(--gradient-brand);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;animation:gradientShift 3s ease-in-out infinite;letter-spacing:-2px}.brand-subtitle{font-size:var(--font-size-xl);color:var(--color-gray-500);font-weight:var(--font-weight-medium);margin:0 0 var(--space-12) 0;max-width:700px;margin-right:auto;line-height:1.6}.nav-buttons{display:flex;gap:var(--space-6);justify-content:center;flex-wrap:wrap;margin-bottom:var(--space-16)}.hero-features{width:100%;margin-top:var(--space-16)}.features-header{text-align:center;margin-bottom:var(--space-12)}.features-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);color:var(--color-gray-800);margin-bottom:var(--space-4);background:var(--color-primary-darkest);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.features-subtitle{font-size:var(--font-size-lg);color:var(--color-gray-600);max-width:600px;margin:0 auto}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-6);max-width:var(--container-max-width);margin:0 auto}.feature-item{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);transition:all var(--transition-base);position:relative;overflow:hidden}.feature-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.feature-item:nth-child(1){animation:slideInLeft .6s ease-out .2s both}.feature-item:nth-child(2){animation:slideInRight .6s ease-out .4s both}.feature-item:nth-child(3){animation:slideInLeft .6s ease-out .6s both}.feature-item:nth-child(4){animation:slideInRight .6s ease-out .8s both}.feature-icon{width:80px;height:80px;border-radius:var(--radius-xl);background:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-lg)}.feature-icon svg{width:40px;height:40px;color:var(--color-white)}.feature-content{flex:1;text-align:center}.feature-content h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-gray-800);margin:0 0 var(--space-2) 0}.feature-content p{font-size:var(--font-size-md);color:var(--color-gray-600);margin:0 0 var(--space-3) 0;text-align:left}.feature-badge{background:var(--color-primary);color:var(--color-white);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;display:inline-block}.welcome-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(0,148,160,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(0,118,128,.1) 0%,transparent 50%);pointer-events:none;z-index:-1}@media (max-width: 768px){.hero-mobile{display:block;padding:var(--space-6) var(--space-1)}.features-mobile{display:block;padding:0 var(--space-1)}.header-inner{padding:var(--space-3) var(--space-4);gap:var(--space-2)}.main-nav{display:none}.main-nav.open{display:flex}.mobile-nav-toggle{display:inline-flex}.landing-main{padding:var(--space-4) var(--space-4) calc(var(--space-20) + 76px)}.hero-section{padding-top:var(--space-4)}.hero-left{gap:var(--space-6)}.hero-right{order:2}.hero-card{padding:var(--space-6)}.hero-layout{grid-template-columns:1fr}.brand-title{font-size:min(10vw,var(--font-size-3xl))}.brand-subtitle{font-size:var(--font-size-base)}.hero-ctas{width:100%}.hero-ctas .btn{flex:1;min-width:0}.features-section{margin-top:var(--space-20)}.clients-wrapper{margin-top:var(--space-16)}.welcome-section{padding:var(--space-12) var(--space-4);min-height:auto}.brand-logo{width:100px;margin-bottom:var(--space-6)}.brand-title{font-size:var(--font-size-3xl);line-height:1.1;margin-bottom:var(--space-4)}.brand-subtitle{font-size:var(--font-size-lg);margin-bottom:var(--space-10);padding:0}.nav-buttons{gap:var(--space-4);margin-bottom:var(--space-12)}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,auto);gap:var(--space-4);aspect-ratio:unset}.feature-item{padding:var(--space-4);gap:var(--space-3)}.feature-icon{width:60px;height:60px;border-radius:var(--radius-md)}.feature-icon svg{width:30px;height:30px}.feature-content h3{font-size:var(--font-size-lg)}.feature-content p{font-size:var(--font-size-sm)}.features-title{font-size:var(--font-size-2xl)}.features-subtitle{font-size:var(--font-size-base)}}@media (max-width: 480px){.feature-grid{grid-template-columns:1fr}.hero-title{font-size:var(--font-size-3xl)}.header-actions .btn{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm)}.hero-layout{grid-template-columns:1fr;gap:var(--space-8)}.landing-main{padding:var(--space-4) var(--space-4) calc(var(--space-16) + 20px)}.brand-title{font-size:clamp(1.75rem,9vw,2rem);letter-spacing:-1px}.brand-subtitle{font-size:var(--font-size-md);padding:0;margin-bottom:var(--space-2)}.header-actions{gap:var(--space-2)}.header-actions .btn.btn-primary{padding:var(--space-2) var(--space-4)}.hero-card{order:2;padding:var(--space-6)}.hero-left{order:1}.features-section{margin-top:var(--space-6);padding-bottom:0}.welcome-section{padding:var(--space-8) var(--space-3)}.brand-logo{width:80px;margin-bottom:var(--space-4)}.nav-buttons{flex-direction:column;align-items:center;gap:var(--space-3)}.hero-ctas{flex-direction:column}.hero-ctas .btn{width:100%}.feature-item{flex-direction:column;text-align:center;padding:var(--space-6)}.feature-content{text-align:center}.features-title{font-size:var(--font-size-xl)}.clients-section{margin-top:var(--space-16);padding:var(--space-12) 0}.theme-toggle-text{display:none}}@media (max-width: 360px){.hero-card{padding:var(--space-5)}.benefit-list li{padding:var(--space-2) var(--space-3);font-size:.7rem}.partner-carousel{mask-image:none;-webkit-mask-image:none}}@media (max-width: 768px){.mobile-sticky-cta{position:fixed;left:0;right:0;bottom:0;display:flex;gap:.75rem;padding:.75rem 1rem calc(env(safe-area-inset-bottom) + .75rem);background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 -4px 16px -6px #00000026;z-index:60}.mobile-sticky-cta .btn{flex:1}}@media (max-width: 1100px){.main-nav ul{gap:var(--space-4)}.main-nav .link-btn{padding:var(--space-2) var(--space-4);font-size:var(--font-size-base)}}@media (max-width: 980px){.header-inner{gap:var(--space-4)}.brand-name{font-size:var(--font-size-xl)}.main-nav .link-btn{font-size:calc(var(--font-size-base) * .95)}}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--space-4)}.container-sm{max-width:var(--container-sm)}.container-md{max-width:var(--container-md)}.container-lg{max-width:var(--container-lg)}.container-xl{max-width:var(--container-xl)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:var(--font-weight-bold)}.font-medium{font-weight:var(--font-weight-medium)}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.hidden{display:none}.site-header{background:var(--color-white);box-shadow:var(--shadow-sm)}.header-inner{max-width:var(--container-max-width);margin:0 auto;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--color-gray-900)}.brand-logo-sm{width:40px;height:auto;object-fit:contain}.brand-name{font-weight:var(--font-weight-black);font-size:var(--font-size-2xl);letter-spacing:.4px}.header-actions,.auth-bar{display:flex;align-items:center;gap:.75rem}.btn-ghost{background:transparent;color:var(--color-gray-800);border:1px solid transparent}.btn.active{background:var(--color-primary);color:var(--color-white);border-color:transparent}.btn-ghost.active{background:var(--color-primary-light);color:var(--color-primary-darker);border-color:#0000000a}.dropdown-menu{min-width:160px;border-radius:var(--radius-md);overflow:hidden}.dropdown-menu-right{right:0}.dropdown-item{text-align:left;padding:.5rem .75rem;border:none;background:transparent;width:100%}.dropdown-item:hover,.dropdown-item:focus{background:var(--color-gray-100)}.btn-ghost:hover,.btn-ghost:focus{background:#0000000a;border-color:#0000000f;outline:none}.btn-primary:hover,.btn-primary:focus{box-shadow:var(--shadow-md)}.icon-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .6rem}.icon-only{padding:.5rem;width:40px;height:40px;justify-content:center}.icon-label{display:inline-block;vertical-align:middle}.tickets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.ticket-card{border:1px solid var(--color-gray-100);padding:1rem;border-radius:var(--radius-md);background:linear-gradient(180deg,#fff,#fafafa);box-shadow:var(--shadow-sm);text-align:center}.ticket-id{margin-top:.5rem;font-family:var(--font-family-mono);color:var(--color-gray-700)}.ticket-status{margin-top:.25rem;color:var(--color-success);font-weight:var(--font-weight-medium)}.ticket-status.used{color:var(--color-gray-500)}.ticket-actions{margin-top:.5rem;display:flex;justify-content:center;gap:.5rem}.ticket-badge{position:absolute;top:-6px;right:-6px;background:var(--color-teal);color:var(--color-white, #fff);border-radius:var(--radius-full);padding:3px 6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:1;min-width:20px;text-align:center;border:1px solid var(--color-white, #fff)}.profile-role-badge{display:inline-block;background:var(--color-gray-300);color:var(--color-gray-800);font-size:12px;padding:0 var(--space-2);border-radius:999px;margin-left:0;text-transform:capitalize}.profile-role{font-size:13px;color:var(--color-gray-600);margin-top:4px;text-transform:capitalize}.scanner-card{padding:.75rem;margin-bottom:.75rem}.scanner-input-row{display:flex;gap:.5rem;align-items:center}.scanner-controls-row{margin-top:.5rem;display:flex;gap:.5rem;align-items:center}.scanner-upload-label{display:inline-block;padding:.5rem .75rem;cursor:pointer}.scanner-video-wrapper{margin-top:.5rem}.scanner-video-outer{position:relative;width:100%;max-height:360px}.scanner-video{width:100%;max-height:360px;border-radius:8px;display:block}.scanner-overlay-container{pointer-events:none;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.scanner-overlay{width:60%;height:40%;border:2px dashed rgba(255,255,255,.8);border-radius:8px;box-shadow:0 0 0 9999px #00000026 inset;transition:all .35s ease}.scanner-overlay.detected{transform:scale(1.02);border-color:#0f0}.scanner-muted{margin-top:.25rem}.scanner-pending{display:flex;gap:.5rem;align-items:center;background:#fff8dc;padding:.5rem;border-radius:6px}.scanner-pending .muted-auto{margin-left:auto}.scanner-table{width:100%}@media (max-width: 640px){.scanner-card{padding:.5rem}.scanner-input-row{flex-direction:column;align-items:stretch}.scanner-input-row .form-input{width:100%;box-sizing:border-box}.scanner-input-row .btn{width:100%;margin-top:.375rem}.scanner-controls-row{flex-direction:column;align-items:stretch}.scanner-controls-row .btn,.scanner-controls-row .scanner-upload-label{width:100%;text-align:center}.scanner-video-outer,.scanner-video{max-height:260px}.scanner-overlay{width:80%;height:50%}.scanner-pending{flex-direction:column;align-items:stretch}.scanner-pending .muted-auto{margin-left:0;margin-top:.25rem}}.html5-scanner-wrapper,.html5-scanner-container{width:100%}@media (max-width: 640px){.btn,.btn-secondary,.scanner-upload-label{padding:.75rem 1rem;font-size:1rem}.scanner-controls-row,.scanner-input-row{gap:.5rem}.form-input{padding:.5rem .75rem;font-size:1rem}}.html5-scanner-wrapper .qr-reader,.html5-scanner-wrapper .html5-qrcode,.html5-scanner-wrapper .qr-reader__dashboard{width:100%!important;box-sizing:border-box}.html5-scanner-wrapper .qr-reader__camera__viewport,.html5-scanner-wrapper video{width:100%!important;height:auto!important;max-height:320px;border-radius:8px}.html5-scanner-wrapper .qr-reader__dashboard{background:#0009!important;color:#fff!important}@media (max-width: 640px){.html5-scanner-wrapper .qr-button,.html5-scanner-wrapper button{padding:.6rem .9rem!important;font-size:1rem!important}.html5-scanner-wrapper .qr-reader__dashboard{padding:.5rem!important}}.scanner-result{padding:.5rem;border-radius:6px}.scanner-result-success{background:#e6ffed;border:1px solid #8ee08a;color:#0b6b20}.scanner-result-warning{background:#fff7e6;border:1px solid #ffd27a;color:#6b4f00}.scanner-result-error{background:#fff0f0;border:1px solid #ff8a8a;color:#7a0b0b}.scanner-badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.8rem;font-weight:600;margin-left:.35rem}.badge-success{background:#0b6b20;color:#fff}.badge-warning{background:#6b4f00;color:#fff}.badge-error{background:#7a0b0b;color:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.owed-form-card{padding:12px;display:flex;gap:8px;align-items:end;flex-wrap:wrap}.owed-form-card--small{padding:12px;display:flex;flex-direction:column;gap:8px;align-items:stretch}.owed-form-row--full{width:100%}.owed-form-left{flex:1 1 240px}.owed-form-checkbox{display:flex;gap:6px;align-items:center}.owed-form-actions{margin-left:auto;display:flex;gap:8px}.owed-form-actions--small{display:flex;gap:8px;flex-direction:column;width:100%}.owed-form-actions--small .btn-primary,.owed-form-actions--small .btn-secondary{width:100%}.owed-ticket-cards{display:flex;flex-direction:column;gap:8px}.owed-ticket-card{padding:10px}.owed-form-actions .btn-secondary{margin-left:8px}.dl-view-toggle{display:flex;align-items:center;gap:12px;margin-top:8px}.dl-card{padding:12px}.dl-label{display:block;margin-bottom:8px}.dl-label input[type=date],.dl-label input[type=number]{margin-left:8px}.dl-number-input{margin-left:8px;width:120px}.dl-actions{display:flex;gap:8px;justify-content:flex-end}.dl-no-history{padding:12px;color:var(--color-gray-600)}.admin-table{width:100%}.dl-for-date{white-space:nowrap}.dl-details{width:120px}.dl-expanded{background:var(--bg-white);padding:12px}.dl-expanded pre{margin:0;white-space:pre-wrap;word-break:break-word}@media print{@page{size:A4 portrait;margin:12mm}body *{visibility:hidden}#print-root,#print-root *{visibility:visible}#print-root{position:absolute;left:0;top:0;width:100%}.ticket-card{page-break-inside:avoid;break-inside:avoid}.ticket-card canvas{width:320px!important;height:320px!important}.ticket-card{box-shadow:none!important;border:none!important;background:#fff!important}.ticket-id,.ticket-status{font-size:18px!important}.ticket-actions{display:none!important}}
