.toast{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:space-between;z-index:9999;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-content{display:flex;align-items:center;gap:12px;flex:1}.toast-icon{font-size:24px;font-weight:700;flex-shrink:0}.toast-message{font-size:16px;line-height:1.5;color:#fff}.toast-close{background:none;border:none;color:#fff;font-size:28px;line-height:1;cursor:pointer;padding:0;margin-left:12px;opacity:.8;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-error{background-color:#dc3545;color:#fff}.toast-success{background-color:#28a745;color:#fff}.toast-warning{background-color:#ffc107;color:#212529}.toast-warning .toast-message,.toast-warning .toast-close{color:#212529}.toast-info{background-color:#17a2b8;color:#fff}@media (max-width: 768px){.toast{left:20px;right:20px;min-width:auto;top:16px;padding:14px 16px}.toast-content{gap:10px}.toast-icon{font-size:20px}.toast-message{font-size:14px}.toast-close{font-size:24px}}@media (max-width: 520px){.toast{top:auto;bottom:20px;left:16px;right:16px}.toast-message{font-size:13px}.toast-close{font-size:22px}}.inactivity-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.inactivity-modal{background:#fff;border-radius:16px;padding:40px;max-width:500px;width:90%;text-align:center;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.inactivity-modal-icon{color:#ffc107;margin-bottom:20px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.inactivity-modal-title{font-size:28px;font-weight:600;color:#212529;margin:0 0 16px}.inactivity-modal-message{font-size:18px;color:#495057;margin:0 0 8px;line-height:1.5}.inactivity-modal-message strong{color:#dc3545;font-weight:600}.inactivity-modal-submessage{font-size:16px;color:#6c757d;margin:0 0 32px}.inactivity-modal-countdown{display:flex;justify-content:center;margin-bottom:32px}.countdown-circle{position:relative;width:120px;height:120px}.countdown-circle-bg{stroke:#e9ecef}.countdown-circle-progress{stroke:#007bff;transition:stroke-dashoffset 1s linear}.countdown-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:36px;font-weight:700;color:#007bff}.inactivity-modal-button{background-color:#007bff;color:#fff;border:none;border-radius:8px;padding:16px 48px;font-size:20px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;max-width:300px}.inactivity-modal-button:hover{background-color:#0056b3;transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.inactivity-modal-button:active{transform:translateY(0)}@media (max-width: 768px){.inactivity-modal{padding:32px 24px}.inactivity-modal-title{font-size:24px}.inactivity-modal-message{font-size:16px}.inactivity-modal-button{font-size:18px;padding:14px 32px}}.version-display{position:fixed;bottom:8px;right:8px;padding:4px 8px;font-size:.75rem;color:#0000004d;background-color:#ffffffb3;border-radius:4px;z-index:9999;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:monospace}@media (prefers-color-scheme: dark){.version-display{color:#fff6;background-color:#0000004d}}.screen{display:flex;flex-direction:column;min-height:100vh;padding:var(--spacing-lg) var(--spacing-xl) var(--spacing-xl)}.screen-centered{justify-content:center;align-items:center}.form-content{flex:1;display:flex;flex-direction:column;max-width:800px;width:100%;margin:0 auto}.screen-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-base)}.screen-subtitle{font-size:var(--font-size-base);color:var(--color-gray-600);margin-bottom:var(--spacing-2xl)}@media (max-width: 768px){.screen{padding:var(--spacing-base) var(--spacing-lg) var(--spacing-lg)}.form-content{max-width:100%;margin:0 auto;gap:var(--spacing-base)}.screen-title{font-size:var(--font-size-xl)}.screen-subtitle{margin-bottom:var(--spacing-xl)}}@media (max-width: 520px){.screen{padding:var(--spacing-sm)}.form-content{gap:var(--spacing-sm)}.screen-title{font-size:var(--font-size-lg)}.screen-subtitle{font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}}.logo{text-align:center;margin-bottom:0}.logo-image{margin-bottom:var(--spacing-base);object-fit:contain;border-radius:50%;overflow:hidden;aspect-ratio:1 / 1;background-color:#fff}.logo-large .logo-image{height:400px;width:400px}.logo-medium .logo-image{height:80px;max-width:200px}.logo-small .logo-image{height:60px;max-width:150px}.logo-text{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.logo-medium .logo-text{font-size:var(--font-size-xl)}.logo-small .logo-text{font-size:var(--font-size-lg)}@media (max-width: 768px){.logo-large .logo-image{height:340px;width:340px}}@media (max-width: 520px){.logo-large .logo-image{margin-top:10px;height:300px;width:300px}}.btn{font-family:var(--font-family);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-lg);border:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.btn-primary{background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-base)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--color-white);color:var(--color-primary);border:2px solid var(--color-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-primary-light)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-large{min-height:var(--touch-target-elderly);width:100%;font-size:var(--font-size-xl)}@media (max-width: 768px){.btn{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base)}.btn-large{font-size:var(--font-size-lg);min-height:calc(var(--touch-target-elderly) - 6px);width:100%}}@media (max-width: 520px){.btn{padding:var(--spacing-base) var(--spacing-lg);gap:var(--spacing-xs)}.btn-large{width:100%}}.language-selector{margin-bottom:var(--spacing-2xl);text-align:center}.language-selector-label{font-size:var(--font-size-sm);color:var(--color-gray-600);margin-bottom:var(--spacing-base);font-weight:var(--font-weight-medium)}.language-buttons{display:flex;gap:var(--spacing-base);justify-content:center;flex-wrap:wrap;max-width:420px;margin:0 auto}.language-button{flex:1 1 160px;display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-base) var(--spacing-xl);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);background-color:var(--color-gray-50);color:var(--color-gray-700);cursor:pointer;transition:all var(--transition-base);min-width:140px;max-width:200px}.language-button:hover{background-color:var(--color-white);border-color:var(--color-gray-400);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.language-button:active{transform:translateY(0)}.language-button.active{background-color:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.language-button.active:hover{background-color:var(--color-primary-light);border-color:var(--color-primary-dark)}.language-button:focus-visible{outline:3px solid rgba(111,190,81,.35);outline-offset:2px}@media (max-width: 768px){.language-selector{margin-bottom:var(--spacing-xl)}.language-buttons{justify-content:center;flex-wrap:nowrap;gap:var(--spacing-sm);width:100%;max-width:360px}.language-button{flex:1 1 0;max-width:none;justify-content:center;min-width:0;padding:var(--spacing-md) var(--spacing-base);font-size:var(--font-size-base)}}@media (max-width: 520px){.language-selector{margin-bottom:var(--spacing-lg)}.language-buttons{justify-content:center;flex-wrap:nowrap;gap:var(--spacing-sm);max-width:350px}.language-button{flex:1 1 0;max-width:none;justify-content:center;padding:var(--spacing-sm) var(--spacing-base);min-width:0;border-width:1px;font-size:var(--font-size-sm)}}.welcome-screen{background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-white) 100%);gap:var(--spacing-2xl)}.welcome-header{display:flex;justify-content:center;width:100%}.welcome-content{text-align:center;max-width:600px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-base)}.welcome-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900)}.welcome-subtitle{font-size:var(--font-size-lg);color:var(--color-gray-600);margin-bottom:var(--spacing-2xl)}.welcome-actions{display:flex;flex-direction:column;gap:var(--spacing-base)}.welcome-content .btn{margin-bottom:0}@media (max-width: 768px){.welcome-screen{gap:var(--spacing-xl)}.welcome-screen.screen-centered{justify-content:flex-start}.welcome-header{justify-content:center}.welcome-header .logo{text-align:center}.welcome-content{align-items:center;text-align:center;margin:0 auto;max-width:100%;gap:var(--spacing-base);width:100%}.welcome-subtitle{margin-bottom:var(--spacing-xl)}.welcome-actions,.welcome-actions .btn{width:100%}.welcome-title{font-size:var(--font-size-2xl)}}@media (max-width: 520px){.welcome-screen{gap:var(--spacing-lg)}.welcome-content{gap:var(--spacing-sm)}.welcome-title{font-size:var(--font-size-2xl)}}.header{margin-bottom:var(--spacing-2xl)}.btn-back{background:transparent;border:none;font-size:var(--font-size-lg);color:var(--color-primary);padding:var(--spacing-base) var(--spacing-lg);cursor:pointer;font-weight:var(--font-weight-semibold);transition:var(--transition-base);margin-bottom:var(--spacing-base);display:flex;align-items:center;gap:var(--spacing-sm);font-family:var(--font-family)}.btn-back:hover{color:var(--color-primary-dark)}.btn-back:focus{outline:3px solid rgba(111,190,81,.4);outline-offset:2px}.progress-indicator{font-size:var(--font-size-base);color:var(--color-gray-600);margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-medium)}.progress-bar{height:8px;background:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;background:var(--color-primary);transition:width .3s ease}@media (max-width: 768px){.header{margin-bottom:var(--spacing-xl)}.btn-back{font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-base);gap:var(--spacing-xs)}.progress-indicator{font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.progress-bar{height:6px}}@media (max-width: 520px){.btn-back{padding:var(--spacing-xs) var(--spacing-sm)}.progress-bar{height:4px}}.guest-type-card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-base);padding:var(--spacing-xl);background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);min-height:180px;text-align:center;font-family:var(--font-family)}.guest-type-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.guest-type-card:active{transform:translateY(0)}.guest-type-card:focus{outline:3px solid rgba(111,190,81,.4);outline-offset:2px}.guest-type-icon{font-size:3rem;margin-bottom:var(--spacing-sm);color:var(--color-primary)}.guest-type-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.guest-type-desc{font-size:var(--font-size-base);color:var(--color-gray-600)}@media (max-width: 768px){.guest-type-card{padding:var(--spacing-lg);gap:var(--spacing-sm);min-height:150px;border-radius:var(--radius-md)}.guest-type-icon{font-size:2.4rem}.guest-type-title{font-size:var(--font-size-base)}.guest-type-desc{font-size:var(--font-size-sm)}}@media (max-width: 480px){.guest-type-card{padding:var(--spacing-base);min-height:140px}.guest-type-icon{font-size:2.1rem}}.guest-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-base);margin-bottom:var(--spacing-xl)}@media (max-width: 768px){.guest-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm)}}@media (max-width: 480px){.guest-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm)}}.form-group{margin-bottom:var(--spacing-xl)}.form-label{display:block;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:var(--spacing-sm)}.required{color:var(--color-error)}.form-input{width:100%;min-height:var(--touch-target-elderly);padding:var(--spacing-base) var(--spacing-lg);font-size:var(--font-size-lg);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);transition:border-color var(--transition-base);font-family:var(--font-family)}.form-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #6fbe5126}.form-input-error{border-color:var(--color-error);background-color:#fff5f5}.form-input-error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #ff6b6b26}.form-input-success{border-color:var(--color-primary);background-color:#f0fff4}.form-input-success:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #6fbe5126}.form-hint{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-gray-600)}.form-hint-success{color:var(--color-primary);font-weight:var(--font-weight-medium)}.form-error{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-error);font-weight:var(--font-weight-medium)}@media (max-width: 768px){.form-group{margin-bottom:var(--spacing-lg)}.form-label{font-size:var(--font-size-base);margin-bottom:var(--spacing-xs)}.form-input{padding:var(--spacing-sm) var(--spacing-base);font-size:var(--font-size-base);min-height:calc(var(--touch-target-elderly) - 6px)}}@media (max-width: 520px){.form-group{margin-bottom:var(--spacing-base)}.form-label{font-size:var(--font-size-base)}.form-input{padding:var(--spacing-sm) var(--spacing-base)}.form-hint,.form-error{font-size:.85rem}}.error-banner{background:linear-gradient(135deg,#ffe6e6,#fff5f5);border:2px solid var(--color-error);border-radius:var(--radius-md);padding:var(--spacing-base) var(--spacing-lg);margin-bottom:var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-base);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-banner-content{display:flex;align-items:center;gap:var(--spacing-base);flex:1}.error-banner-icon{color:var(--color-error);font-size:var(--font-size-xl);flex-shrink:0}.error-banner-message{color:var(--color-gray-900);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.error-banner-close{background:transparent;border:none;color:var(--color-error);font-size:var(--font-size-2xl);line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-base)}.error-banner-close:hover{background:#ff6b6b1a}.error-banner-close:focus{outline:2px solid var(--color-error);outline-offset:2px}@media (max-width: 768px){.error-banner{padding:var(--spacing-base);margin-bottom:var(--spacing-base);border-width:1.5px;gap:var(--spacing-sm)}.error-banner-content{gap:var(--spacing-sm)}.error-banner-icon{font-size:var(--font-size-lg)}.error-banner-message{font-size:var(--font-size-base)}.error-banner-close{font-size:var(--font-size-xl);width:28px;height:28px}}@media (max-width: 520px){.error-banner{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.error-banner-close{align-self:flex-end}.error-banner-message{font-size:var(--font-size-sm)}}.info-form{width:100%}@media (max-width: 768px){.info-form{gap:var(--spacing-base);padding-bottom:var(--spacing-xl)}.info-form .screen-title{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm)}.info-form .screen-subtitle{font-size:var(--font-size-base);margin-bottom:var(--spacing-base);line-height:1.4}.info-form .form-group{margin-bottom:var(--spacing-base)}.info-form .form-input{padding:var(--spacing-sm) var(--spacing-base)}.info-form .form-label{font-size:var(--font-size-base)}.info-form .form-hint,.info-form .form-error{font-size:var(--font-size-sm)}.info-form .btn{margin-top:var(--spacing-base)}}@media (max-width: 520px){.info-form{gap:var(--spacing-sm);padding-bottom:var(--spacing-xl)}.info-form .screen-title{font-size:var(--font-size-xl)}.info-form .screen-subtitle{font-size:var(--font-size-base)}.info-form .form-group{margin-bottom:var(--spacing-sm)}.info-form .form-input{padding:var(--spacing-sm) var(--spacing-base)}.info-form .form-label{font-size:var(--font-size-base)}.info-form .form-hint,.info-form .form-error{font-size:.85rem}.info-form .btn{width:100%;min-width:0;align-self:stretch;margin-top:var(--spacing-base)}}.choice-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-base);padding:var(--spacing-2xl);background:var(--color-white);border:3px solid var(--color-gray-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);min-height:200px;font-family:var(--font-family);width:100%}.choice-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.choice-card:active{transform:translateY(0)}.choice-card:focus{outline:3px solid rgba(111,190,81,.4);outline-offset:2px}.choice-icon{font-size:3.5rem;color:var(--color-primary)}.choice-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}@media (max-width: 768px){.choice-card{padding:var(--spacing-lg);min-height:170px;border-radius:var(--radius-md)}.choice-icon{font-size:3rem}.choice-title{font-size:var(--font-size-lg)}}@media (max-width: 520px){.choice-card{padding:var(--spacing-base);min-height:150px}.choice-icon{font-size:2.75rem}.choice-title{font-size:var(--font-size-base)}}.choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-base);margin-bottom:var(--spacing-xl);flex:1}@media (max-width: 768px){.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-base)}}@media (max-width: 520px){.choice-grid{gap:var(--spacing-sm)}}.radio-group{display:flex;flex-direction:column;gap:var(--spacing-base)}.radio-option{display:flex;align-items:center;gap:var(--spacing-base);padding:var(--spacing-lg);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base)}.radio-option:hover{border-color:var(--color-primary)}.radio-option:focus-within{outline:3px solid rgba(111,190,81,.4);outline-offset:2px}.radio-option input[type=radio]{width:24px;height:24px;cursor:pointer;accent-color:var(--color-primary)}.radio-label{flex:1}.radio-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.radio-desc{font-size:var(--font-size-base);color:var(--color-gray-600);margin-top:var(--spacing-xs)}.warning-text{color:var(--color-warning);font-weight:var(--font-weight-semibold)}@media (max-width: 768px){.radio-group{gap:var(--spacing-sm)}.radio-option{padding:var(--spacing-base);border-radius:var(--radius-md)}.radio-option input[type=radio]{width:20px;height:20px}.radio-title{font-size:var(--font-size-base)}.radio-desc{font-size:var(--font-size-sm)}}@media (max-width: 520px){.radio-option{padding:var(--spacing-base) var(--spacing-sm)}.radio-title{font-size:var(--font-size-base)}.radio-desc{font-size:.9rem}}.warning-card{background:#fff9e6;border:3px solid var(--color-warning);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);text-align:center}.warning-icon-large{font-size:4rem;margin-bottom:var(--spacing-base);color:var(--color-warning);display:flex;justify-content:center}.warning-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-lg)}.warning-content{margin-bottom:var(--spacing-base)}.warning-main{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-warning);margin-bottom:var(--spacing-base)}.warning-text{font-size:var(--font-size-base);color:var(--color-gray-800);margin-bottom:var(--spacing-sm)}.checkbox-label{display:flex;align-items:flex-start;gap:var(--spacing-base);padding:var(--spacing-lg);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;margin-bottom:var(--spacing-xl)}.checkbox-label input[type=checkbox]{width:24px;height:24px;cursor:pointer;margin-top:2px;accent-color:var(--color-primary)}.checkbox-text{font-size:var(--font-size-lg);color:var(--color-gray-900);line-height:1.5}@media (max-width: 768px){.warning-card{padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.warning-icon-large{font-size:3.25rem;margin-bottom:var(--spacing-sm)}.warning-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-base)}.warning-main{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.checkbox-label{padding:var(--spacing-base);margin-bottom:var(--spacing-lg);gap:var(--spacing-sm)}.checkbox-label input[type=checkbox]{width:20px;height:20px}.checkbox-text{font-size:var(--font-size-base)}}@media (max-width: 520px){.warning-card{padding:var(--spacing-base)}.warning-icon-large{font-size:2.75rem}.warning-title{font-size:var(--font-size-lg)}.warning-main{font-size:var(--font-size-base)}.warning-text{font-size:var(--font-size-sm)}.checkbox-label{padding:var(--spacing-base)}.checkbox-text{font-size:var(--font-size-sm)}}.confirmation-card{background:var(--color-gray-50);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.confirmation-section{margin-bottom:var(--spacing-lg)}.confirmation-section:last-child{margin-bottom:0}.confirmation-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--spacing-base);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary-light)}.confirmation-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-base) 0;border-bottom:1px solid var(--color-gray-200);gap:var(--spacing-base)}.confirmation-row:last-child{border-bottom:none}.confirmation-label{font-size:var(--font-size-base);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.confirmation-value{font-size:var(--font-size-lg);color:var(--color-gray-900);font-weight:var(--font-weight-semibold);text-align:right}@media (max-width: 600px){.confirmation-row{flex-direction:column;align-items:flex-start}.confirmation-value{text-align:left}}@media (max-width: 768px){.confirmation-card{padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.confirmation-section{margin-bottom:var(--spacing-base)}.confirmation-section-title{font-size:var(--font-size-base);margin-bottom:var(--spacing-sm)}.confirmation-row{padding:var(--spacing-sm) 0;gap:var(--spacing-sm)}.confirmation-label,.confirmation-value{font-size:var(--font-size-base)}}@media (max-width: 520px){.confirmation-card{padding:var(--spacing-base)}.confirmation-section-title{font-size:var(--font-size-base)}.confirmation-label,.confirmation-value{font-size:var(--font-size-sm)}}.success-screen{background:linear-gradient(135deg,#E6F7EA 0%,var(--color-white) 100%)}.success-content{text-align:center;max-width:600px;width:100%}.success-icon-wrapper{width:120px;height:120px;background:var(--color-success);color:var(--color-white);font-size:4rem;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto var(--spacing-xl);box-shadow:var(--shadow-lg)}.success-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-base)}.success-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-primary);margin-bottom:var(--spacing-base)}.success-message{font-size:var(--font-size-xl);color:var(--color-gray-600);margin-bottom:var(--spacing-2xl)}.success-details{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-base);text-align:left}.success-details p{font-size:var(--font-size-lg);color:var(--color-gray-700);margin-bottom:var(--spacing-base)}.success-type{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.success-time{color:var(--color-gray-600)}.success-divider{height:1px;background:var(--color-gray-200);margin:var(--spacing-base) 0}.success-vehicle-title{font-weight:var(--font-weight-bold);color:var(--color-gray-900);display:flex;align-items:center}.vehicle-icon{display:inline;margin-right:8px}.success-warning{background:#fff9e6;border:2px solid var(--color-warning);border-radius:var(--radius-md);padding:var(--spacing-base);margin-top:var(--spacing-base)}.warning-reminder{color:var(--color-warning);font-weight:var(--font-weight-bold);margin:0}.success-footer{font-size:var(--font-size-base);color:var(--color-gray-600);margin-bottom:var(--spacing-lg)}.done-button{margin-top:80px}@media (max-width: 768px){.success-content{max-width:100%}.success-icon-wrapper{width:96px;height:96px;font-size:3rem;margin-bottom:var(--spacing-lg)}.success-title{font-size:var(--font-size-2xl)}.success-name{font-size:var(--font-size-xl)}.success-message{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl)}.success-details{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.success-details p{font-size:var(--font-size-base)}.success-footer{font-size:var(--font-size-sm)}.redirect-text{font-size:1rem}.done-button{margin-top:56px}}@media (max-width: 520px){.success-icon-wrapper{width:80px;height:80px;font-size:2.5rem}.success-title{font-size:var(--font-size-xl)}.success-name{font-size:var(--font-size-lg)}.success-message{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}.success-details{padding:var(--spacing-base)}.success-details p{font-size:var(--font-size-sm)}.success-warning{padding:var(--spacing-sm)}.redirect-info{margin-top:var(--spacing-lg)}.redirect-text{font-size:.95rem}.done-button{margin-top:40px}}.checkout-results{margin-top:var(--spacing-xl)}.result-card{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-top:15px;margin-bottom:var(--spacing-base)}.result-card.success-card{border-color:var(--color-success);background:linear-gradient(135deg,#E6F7EA 0%,var(--color-white) 100%)}.result-card.error-card{border-color:var(--color-error);background:linear-gradient(135deg,#FFE6E6 0%,var(--color-white) 100%)}.result-card.info-card{border-color:var(--color-info);background:linear-gradient(135deg,#E6F0FF 0%,var(--color-white) 100%)}.result-card.warning-card{border-color:orange;background:linear-gradient(135deg,#FFF4E6 0%,var(--color-white) 100%)}.result-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-base)}.result-text{font-size:var(--font-size-lg);color:var(--color-gray-700);margin-bottom:var(--spacing-sm)}.result-text.fuzzy-hint{font-size:var(--font-size-base);color:var(--color-gray-600);font-style:italic;margin-top:var(--spacing-base)}.result-actions{display:flex;gap:var(--spacing-base);margin-top:var(--spacing-lg);flex-direction:column}@media (min-width: 600px){.result-actions{flex-direction:row}}@media (max-width: 768px){.checkout-results{margin-top:var(--spacing-lg)}.result-card{padding:var(--spacing-lg);margin-top:var(--spacing-sm)}.result-title{font-size:var(--font-size-lg)}.result-text{font-size:var(--font-size-base)}.result-actions{gap:var(--spacing-sm);margin-top:var(--spacing-base)}}@media (max-width: 520px){.result-card{padding:var(--spacing-base)}.result-title{font-size:var(--font-size-base)}.result-text{font-size:var(--font-size-sm)}.result-text.fuzzy-hint{font-size:.9rem}}.checkout-success-screen{background:linear-gradient(135deg,#E8F5E3 0%,var(--color-white) 100%)}.checkout-success-content{text-align:center;max-width:600px;width:100%}.checkout-success-icon-wrapper{width:120px;height:120px;background:var(--color-primary);color:var(--color-white);font-size:4rem;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto var(--spacing-xl);box-shadow:var(--shadow-lg);animation:scaleIn .5s ease-out}.checkout-success-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-base)}.checkout-success-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-primary);margin-bottom:var(--spacing-base)}.checkout-success-message{font-size:var(--font-size-xl);color:var(--color-gray-600);margin-bottom:var(--spacing-2xl)}.checkout-success-details{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-base);text-align:left}.checkout-success-details p{font-size:var(--font-size-lg);color:var(--color-gray-700);margin-bottom:var(--spacing-base)}.checkout-success-details p:last-child{margin-bottom:0}.checkout-success-type{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.checkout-success-time{color:var(--color-gray-600)}.checkout-success-divider{height:1px;background:var(--color-gray-200);margin:var(--spacing-base) 0}.checkout-success-duration{font-weight:var(--font-weight-semibold);color:var(--color-primary-dark)}.checkout-success-footer{font-size:var(--font-size-base);color:var(--color-gray-600);margin-bottom:var(--spacing-lg)}.done-button{margin-top:80px;background:var(--color-primary);border-color:var(--color-primary)}.done-button:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.done-button:active{background:var(--color-primary-dark);border-color:var(--color-primary-dark);opacity:.9}@media (max-width: 768px){.checkout-success-content{max-width:100%}.checkout-success-icon-wrapper{width:96px;height:96px;font-size:3rem;margin-bottom:var(--spacing-lg)}.checkout-success-title{font-size:var(--font-size-2xl)}.checkout-success-name{font-size:var(--font-size-xl)}.checkout-success-message{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl)}.checkout-success-details{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.checkout-success-details p{font-size:var(--font-size-base)}.checkout-success-footer{font-size:var(--font-size-sm)}.redirect-text{font-size:1rem}.done-button{margin-top:56px}}@media (max-width: 520px){.checkout-success-icon-wrapper{width:80px;height:80px;font-size:2.5rem}.checkout-success-title{font-size:var(--font-size-xl)}.checkout-success-name{font-size:var(--font-size-lg)}.checkout-success-message{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}.checkout-success-details{padding:var(--spacing-base)}.checkout-success-details p{font-size:var(--font-size-sm)}.redirect-info{margin-top:var(--spacing-lg)}.redirect-text{font-size:.95rem}.done-button{margin-top:40px}}.feedback-container{margin-top:5%;display:flex;flex-direction:column;gap:var(--spacing-xl);padding-bottom:var(--spacing-2xl)}.feedback-hero{display:flex;flex-direction:column;gap:var(--spacing-md);background:linear-gradient(135deg,var(--color-primary-light) 0%,rgba(255,255,255,.95) 100%);border-radius:calc(var(--radius-lg) * 1.1);padding:var(--spacing-lg);border:1px solid rgba(111,190,81,.2);box-shadow:0 8px 16px #6fbe5126}.feedback-hero-card{display:flex;align-items:center;gap:var(--spacing-md)}.feedback-hero-icon{width:72px;height:72px;display:grid;place-items:center;border-radius:var(--radius-full);background:#6fbe512e;color:var(--color-primary-dark);font-size:2.5rem}.feedback-hero-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-xs)}.feedback-hero-subtitle{font-size:var(--font-size-base);color:var(--color-gray-700);line-height:1.5;max-width:36ch}.feedback-section{background:var(--color-white);border-radius:calc(var(--radius-lg) * 1.05);padding:var(--spacing-lg);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-md)}.feedback-section-heading{display:flex;flex-direction:column;gap:var(--spacing-xs)}.feedback-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.feedback-hint{font-size:var(--font-size-sm);color:var(--color-gray-600)}.rating-grid{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);width:100%}.rating-star{border:none;background:transparent;padding:var(--spacing-md);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:1;min-width:0;color:var(--color-gray-300);transition:transform .15s ease,color .15s ease}.rating-star:focus-visible{outline:none;box-shadow:0 0 0 4px #6fbe5140;border-radius:var(--radius-full);color:var(--color-gray-400)}.rating-star:hover{transform:scale(1.08);color:var(--color-gray-400)}.rating-star-icon{font-size:3rem;line-height:1;transition:color .15s ease;color:inherit}.rating-star.filled .rating-star-icon{color:var(--color-warning, #facc15)}.feedback-textarea{width:100%;min-height:150px;border-radius:calc(var(--radius-lg) * 1.05);border:2px solid var(--color-gray-200);padding:var(--spacing-base);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-gray-800);resize:none;background:var(--color-gray-50);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.feedback-textarea:focus{outline:none;border-color:var(--color-primary);background:var(--color-white);box-shadow:0 0 0 4px #6fbe512e}.feedback-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:auto}@media (min-width: 720px){.feedback-actions{flex-direction:row;justify-content:center}}@media (max-width: 720px){.feedback-hero-card{flex-direction:column;text-align:center}.feedback-hero-icon{width:68px;height:68px;font-size:2.25rem}}.already-checked-in-screen{background:linear-gradient(135deg,#FFF4E6 0%,var(--color-white) 100%)}.already-checked-in-content{text-align:center;max-width:600px;width:100%}.already-checked-in-icon-wrapper{width:120px;height:120px;background:var(--color-warning);color:var(--color-white);font-size:4rem;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto var(--spacing-xl);box-shadow:var(--shadow-lg);animation:scaleIn .5s ease-out}.already-checked-in-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-base)}.already-checked-in-message{font-size:var(--font-size-xl);color:var(--color-gray-600);margin-bottom:var(--spacing-2xl)}.already-checked-in-details{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-base);text-align:left}.already-checked-in-details p{font-size:var(--font-size-lg);color:var(--color-gray-700);margin-bottom:var(--spacing-base)}.already-checked-in-details p:last-child{margin-bottom:0}.already-checked-in-room{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.already-checked-in-time{color:var(--color-gray-600)}.already-checked-in-divider{height:1px;background:var(--color-gray-200);margin:var(--spacing-base) 0}.already-checked-in-subtitle{font-weight:var(--font-weight-semibold);color:var(--color-warning)}.redirect-info{width:100%;max-width:400px;margin:0 auto;margin-top:2rem}.redirect-text{font-size:1.125rem;color:var(--color-text-secondary);margin-bottom:1rem}.progress-bar-container{width:100%;height:8px;background-color:var(--color-border);border-radius:4px;overflow:hidden;margin-bottom:15px}.progress-bar-fill{height:100%;background-color:var(--color-primary);transition:width .1s linear;border-radius:4px}.return-home-button{margin-top:80px}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width: 768px){.already-checked-in-content{max-width:100%}.already-checked-in-icon-wrapper{width:96px;height:96px;font-size:3rem;margin-bottom:var(--spacing-lg)}.already-checked-in-title{font-size:var(--font-size-2xl)}.already-checked-in-message{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl)}.already-checked-in-details{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.already-checked-in-details p{font-size:var(--font-size-base)}.redirect-text{font-size:1rem}.return-home-button{margin-top:56px}}@media (max-width: 520px){.already-checked-in-icon-wrapper{width:80px;height:80px;font-size:2.5rem}.already-checked-in-title{font-size:var(--font-size-xl)}.already-checked-in-message{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}.already-checked-in-details{padding:var(--spacing-base)}.already-checked-in-details p{font-size:var(--font-size-sm)}.redirect-info{margin-top:var(--spacing-lg)}.redirect-text{font-size:.95rem}.return-home-button{margin-top:40px}}.kiosk-container{max-width:800px;margin:0 auto;min-height:100vh;background:var(--color-white);box-shadow:var(--shadow-lg)}@media (max-width: 800px){.kiosk-container{box-shadow:none}}:root{--color-primary: #6FBE51;--color-primary-dark: #5BA73F;--color-primary-light: #E8F5E3;--color-success: #6BCF7F;--color-warning: #FFB547;--color-error: #FF6B6B;--color-info: #5B9AF5;--color-white: #FFFFFF;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-400: #9CA3AF;--color-gray-600: #6B7280;--color-gray-700: #4B5563;--color-gray-800: #1F2937;--color-gray-900: #111827;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-sm: 1rem;--font-size-base: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.75rem;--font-size-2xl: 2.25rem;--font-size-3xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-base: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-base: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .15);--touch-target-elderly: 64px;--transition-base: .2s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;background:var(--color-gray-50);color:var(--color-gray-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}@media (max-width: 768px){:root{--font-size-sm: .95rem;--font-size-base: 1.05rem;--font-size-lg: 1.2rem;--font-size-xl: 1.6rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--spacing-sm: .4rem;--spacing-md: .6rem;--spacing-base: .9rem;--spacing-lg: 1.25rem;--spacing-xl: 1.5rem;--spacing-2xl: 2.25rem;--spacing-3xl: 3rem;--radius-md: .6rem;--touch-target-elderly: 58px}body{line-height:1.5}.screen{padding:var(--spacing-lg)}}@media (max-width: 520px){:root{--font-size-sm: .9rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.4rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.25rem;--spacing-sm: .35rem;--spacing-md: .5rem;--spacing-base: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.25rem;--spacing-2xl: 1.75rem;--spacing-3xl: 2.25rem;--radius-md: .55rem;--touch-target-elderly: 52px}.screen{padding:var(--spacing-base)}.btn{padding:var(--spacing-md) var(--spacing-xl)}.btn-large{min-height:var(--touch-target-elderly);font-size:var(--font-size-lg)}.form-group{margin-bottom:var(--spacing-lg)}.welcome-content{max-width:100%}}
