*{box-sizing:border-box}.form-control{border:1px solid #dee2e6;border-radius:6px;padding:.625rem;margin-top:1rem;transition:all .2s ease;width:100%}.form-control:focus{border-color:#4dabf7;box-shadow:0 0 0 3px rgba(77,171,247,.15)}.plan-name-input{width:100%}.buttons-container{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;padding-left:0;background-color:#fff;border-top:1px solid #e5e7eb}.p-outline-calendar-export,.save-button-offcanvas{width:100%;padding:.75rem;font-size:1rem;font-weight:700;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .3s ease-in-out}.save-button-offcanvas{background-color:#3b82f6;color:#fff;border:none}.save-button-offcanvas:hover{background-color:#2563eb}.p-outline-calendar-export{background-color:#65c995;color:#fff;border:none}.p-outline-calendar-export:hover{background-color:#4fa97c}.share-buttons-container{display:flex;align-items:center;gap:.5rem;margin-top:1rem;margin-bottom:1rem}.share-label{color:#495057;font-size:1.3rem;font-weight:600}.share-buttons{display:flex;gap:.5rem}.p-outline-email-icon-only,.p-outline-whatsapp-icon-only{background:none;border:none;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:inherit;transition:color .2s ease}.p-outline-whatsapp-icon-only .pi-whatsapp{color:#25d366}.p-outline-email-icon-only .pi-envelope{color:#6c757d}.p-outline-whatsapp-icon-only:hover .pi-whatsapp{color:#128c7e}.p-outline-email-icon-only:hover .pi-envelope{color:#495057}.button-icon-text i{margin-right:6px}@keyframes fadeIn{to{opacity:1}}@media (max-width:768px){.offcanvas{height:100vh;overflow-y:auto}.offcanvas,.two-column-layout{display:flex;flex-direction:column}.two-column-layout{gap:1rem;padding:1rem}.fixed-section{max-width:100%}.form-control{width:100%}.buttons-container{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:3rem;background-color:#fff}.import-buttons,.p-outline-calendar-export,.save-button-offcanvas,.save-buttons{width:100%}.share-buttons-container{width:100%;justify-content:center}}.vacation-plan-list{padding:0;margin-top:2.5rem;list-style:none}.vacation-period-title{font-size:.8rem;color:#555;font-weight:700;padding:0;margin:0}.logged-in-welcome{background:#d1fae5;border:1px solid #10b981;color:#065f46;padding:12px 16px;border-radius:8px;margin-bottom:20px}.welcome-content{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:500}.welcome-content i{color:#10b981;font-size:1.1rem}.auth-recommendation-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 24px;border-radius:16px;margin-bottom:24px;box-shadow:0 8px 25px rgba(102,126,234,.2);border:3px solid hsla(0,0%,100%,.2)}.recommendation-content{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.recommendation-icon{background:hsla(0,0%,100%,.2);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.recommendation-icon i{font-size:1.5rem;color:#fbbf24}.recommendation-text{flex:1;min-width:200px}.recommendation-title{margin:0 0 8px;font-size:1.125rem;font-weight:700;line-height:1.3}.recommendation-subtitle{margin:0 0 12px;font-size:.95rem;opacity:.9;line-height:1.4}.recommendation-benefits{display:flex;gap:16px;flex-wrap:wrap}.benefit{font-size:.85rem;opacity:.95;font-weight:500}.recommendation-actions{display:flex;gap:10px;flex-shrink:0;align-items:flex-start}.alternative-option{border-top:1px solid hsla(0,0%,100%,.2);padding-top:16px;text-align:center}.continue-as-guest-btn{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);color:#fff;padding:8px 16px;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.continue-as-guest-btn:hover{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.3)}.continue-as-guest-btn i{font-size:.75rem;opacity:.8}.guest-mode-notice{background:#fef3c7;border:1px solid #f59e0b;color:#92400e;padding:12px 16px;border-radius:8px;margin-bottom:20px;animation:slideDown .3s ease-out}.notice-content{display:flex;align-items:center;gap:12px;font-size:.875rem}.notice-content i{color:#f59e0b;flex-shrink:0}.create-account-link{background:none;border:none;color:#1d4ed8;text-decoration:underline;cursor:pointer;font-weight:600;margin-left:8px}.create-account-link:hover{color:#1e40af}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.save-status{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;margin-bottom:16px}.save-status.logged-in{background:#d1fae5;border:1px solid #10b981}.save-status.guest{background:#fef3c7;border:1px solid #f59e0b}.status-icon i{font-size:1.2rem}.save-status.logged-in .status-icon i{color:#10b981}.save-status.guest .status-icon i{color:#f59e0b}.status-title{margin:0 0 2px;font-size:.9rem;font-weight:600;color:#1f2937}.status-subtitle{margin:0;font-size:.8rem;color:#6b7280;line-height:1.3}@media (max-width:768px){.recommendation-content{flex-direction:column;text-align:center;gap:16px}.recommendation-actions{justify-content:center;width:100%}.recommendation-actions .p-button{flex:1;max-width:140px}.recommendation-benefits{justify-content:center}.benefit{font-size:.8rem}.continue-as-guest-btn{padding:10px 16px}}.save-options-dialog .p-dialog-content{padding:0}.save-options-content{padding:24px}.save-options-header{text-align:center;margin-bottom:32px}.save-success-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;margin-bottom:16px}.save-success-icon i{font-size:2rem;color:#fff}.save-options-header h3{margin:0 0 8px;font-size:1.5rem;font-weight:600;color:#1a202c}.save-options-header p{margin:0;color:#4a5568;font-size:1rem}.save-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.save-option-card{position:relative;padding:24px;border:2px solid #e2e8f0;border-radius:16px;background:#fff;transition:all .3s ease}.save-option-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.1)}.save-option-card.primary{border-color:#667eea;background:linear-gradient(135deg,#f7fafc,#edf2f7)}.save-option-card.primary:hover{border-color:#5a67d8;box-shadow:0 8px 25px rgba(102,126,234,.2)}.save-option-badge{position:absolute;top:-12px;right:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:4px}.save-option-badge i{font-size:.75rem}.save-option-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;margin-bottom:16px}.save-option-icon.secondary-icon{background:linear-gradient(135deg,#4a5568,#2d3748)}.save-option-icon i{font-size:1.5rem;color:#fff}.save-option-card h4{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#1a202c}.save-option-card p{margin:0 0 16px;color:#4a5568;font-size:.875rem;line-height:1.5}.save-option-benefits{list-style:none;padding:0;margin:0 0 20px}.save-option-benefits li{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:.875rem;color:#4a5568}.save-option-benefits.secondary-benefits li{color:#6b7280}.save-option-benefits i{font-size:.75rem;color:#10b981}.save-option-benefits.secondary-benefits i{color:#f59e0b}.save-option-buttons{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.save-option-buttons .p-button{width:100%;justify-content:center;font-weight:500}.save-option-note{display:flex;align-items:center;gap:6px;padding:8px 12px;background:rgba(102,126,234,.1);border-radius:8px;font-size:.75rem;color:#4c51bf}.save-option-note.secondary-note{background:rgba(74,85,104,.1);color:#4a5568}.save-option-note i{font-size:.75rem}.save-options-footer{text-align:center;padding-top:16px;border-top:1px solid #e2e8f0}.inline-save-options-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.inline-save-options-container{background:#fff;border-radius:20px;padding:32px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px rgba(0,0,0,.25)}.inline-save-header{text-align:center;margin-bottom:32px}.inline-save-title{margin:0 0 8px;font-size:1.75rem;font-weight:700;color:#1a202c}.inline-save-subtitle{margin:0;color:#4a5568;font-size:1.125rem}.inline-save-footer{text-align:center;padding-top:24px;border-top:1px solid #e2e8f0}.cancel-save-button{background:none;border:none;color:#6b7280;font-size:.875rem;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.cancel-save-button:hover{background:#f3f4f6;color:#374151}.cancel-save-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width:768px){.save-options-grid{grid-template-columns:1fr}.inline-save-options-container{margin:20px;padding:24px}.inline-save-title{font-size:1.5rem}.save-option-card{padding:20px}}.vacation-plans-sidebar{width:100vw!important;max-width:1200px}@media (min-width:769px){.vacation-plans-sidebar{width:1200px!important}}@media (max-width:768px){.vacation-plans-sidebar{width:100vw!important;max-width:100vw!important;left:0!important;right:0!important}.vacation-plans-sidebar .p-sidebar{width:100%!important}.vacation-plans-sidebar .sidebar-body{padding:1rem;width:100%;box-sizing:border-box}.vacation-plans-sidebar .sidebar-header{padding:.5rem .5rem 0;width:100%;box-sizing:border-box}}