.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;position:relative;padding-bottom:calc(var(--bottom-nav-height) + var(--action-bar-height) + env(safe-area-inset-bottom,0px))}.app.drafts-sheet-open{overflow:hidden}.app.drafts-sheet-open .sticky-action-bar{visibility:hidden;pointer-events:none}.app-header{background:color-mix(in srgb,var(--color-surface) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:var(--space-sm) var(--space-lg);padding-top:max(var(--space-sm),env(safe-area-inset-top));box-shadow:var(--shadow-sm);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto}.header-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:var(--header-height)}.brand-mark{display:flex;align-items:baseline;gap:var(--space-sm);min-width:0}.brand-wordmark{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text);line-height:1}.brand-badge{font-family:var(--font-body);font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-bg);background:var(--color-primary);padding:.2em .45em;border-radius:4px;line-height:1.2}.header-toolbar{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.header-resort-select{min-width:72px;max-width:96px;padding:var(--space-sm) var(--space-md);min-height:40px;font-size:.875rem;font-weight:600}.theme-switcher{display:flex;align-items:center;flex-shrink:0}.theme-toggle{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:40px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-light);color:var(--color-text-muted);cursor:pointer}.theme-toggle:hover{color:var(--color-text);border-color:var(--color-border-emerald)}.theme-toggle-icon{flex-shrink:0}.theme-toggle-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}@media (max-width: 380px){.theme-toggle-label{display:none}}.app-content{flex:1;display:flex;max-width:1600px;margin:0 auto;width:100%;padding:var(--space-lg);gap:var(--space-xl);position:relative}.sidebar.desktop-only{display:none;width:320px;flex-shrink:0;flex-direction:column;gap:var(--space-lg)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.sidebar-title{font-size:1.125rem;margin:0;font-weight:600}.main-content{flex:1;min-width:0;position:relative}.content-section{display:none;animation:fadeIn var(--transition-base)}.content-section.active{display:block}.section-header-mobile{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--color-border)}.section-header-mobile h2{font-size:1.75rem;color:var(--color-text);margin:0}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:color-mix(in srgb,var(--color-surface) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--color-border);display:flex;justify-content:space-around;align-items:stretch;padding:var(--space-xs) var(--space-sm) max(var(--space-xs),env(safe-area-inset-bottom));z-index:1000;box-shadow:0 -2px 12px #0003;min-height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px))}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--space-sm) var(--space-md);background:transparent;color:var(--color-text-muted);font-size:.75rem;font-weight:500;border-radius:var(--radius-md);transition:color var(--transition-fast),background var(--transition-fast);min-width:72px;position:relative;min-height:48px;flex:1}.nav-item:active{transform:scale(.96)}.nav-item.active{color:var(--color-primary)}.nav-icon{position:relative;display:flex;align-items:center;justify-content:center;width:28px;height:24px}.nav-badge{position:absolute;top:-6px;right:-10px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--color-primary);color:var(--color-bg);font-size:.625rem;font-weight:700;line-height:16px;text-align:center}.nav-label{font-size:.6875rem;font-weight:600;letter-spacing:.02em}.nav-indicator{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--color-primary);border-radius:2px}.drafts-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1100;opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.drafts-sheet-backdrop.open{opacity:1;pointer-events:auto}.drafts-sheet{position:fixed;left:0;right:0;bottom:0;z-index:1200;max-height:min(78vh,640px);background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border:1px solid var(--color-border);border-bottom:none;box-shadow:var(--shadow-lg);transform:translateY(110%);transition:transform var(--transition-base);display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0px)}.drafts-sheet.open{transform:translateY(0)}.drafts-sheet-handle{width:36px;height:4px;border-radius:2px;background:var(--color-border-light);margin:var(--space-sm) auto var(--space-xs);flex-shrink:0}.drafts-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-lg) var(--space-md);border-bottom:1px solid var(--color-border)}.drafts-sheet-header h2{margin:0;font-size:1.125rem}.drafts-sheet-actions{display:flex;align-items:center;gap:var(--space-sm)}.drafts-sheet-close{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-surface-light);color:var(--color-text-muted);font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center}.drafts-sheet-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-md) var(--space-lg) var(--space-xl);flex:1}.preview-empty{padding:var(--space-3xl);text-align:center;color:var(--color-text-muted);background:var(--color-surface);border-radius:var(--radius-lg);border:2px dashed var(--color-border)}.preview-empty p{font-size:1rem;margin:0 0 var(--space-lg)}.preview-empty .action-button{margin-top:var(--space-md)}.draft-manager{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;border:1px solid var(--color-border);position:relative}.draft-manager-sheet{background:transparent;border:none;box-shadow:none;border-radius:0}.draft-manager-sheet .draft-list{max-height:none}.draft-toggle-button{width:100%;padding:var(--space-lg);background:var(--color-surface-light);color:var(--color-text);font-weight:600;font-size:1rem;border-radius:var(--radius-lg);border:none;display:flex;align-items:center;justify-content:space-between;transition:all var(--transition-base);min-height:44px}.draft-toggle-button:hover{background:var(--color-surface-lighter);transform:translateY(-1px)}.draft-toggle-button:active{transform:translateY(0)}.draft-list{background:var(--color-surface);max-height:60vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.draft-list::-webkit-scrollbar{width:6px}.draft-list::-webkit-scrollbar-track{background:transparent}.draft-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.draft-item{padding:var(--space-lg);border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all var(--transition-base);min-height:44px}.draft-item:hover{background:var(--color-surface-light);padding-left:calc(var(--space-lg) + 4px);border-left:4px solid var(--color-primary)}.draft-item.active{background:var(--color-surface-light);border-left:4px solid var(--color-primary);box-shadow:inset 0 0 20px #10b9811a}.draft-info{flex:1;min-width:0}.draft-title{font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs);font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-date{font-size:.8125rem;color:var(--color-text-muted)}.draft-delete-button{background:transparent;color:var(--color-error);font-size:1.5rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;line-height:1;transition:all var(--transition-base);flex-shrink:0;margin-left:var(--space-md)}.draft-delete-button:hover{background:#ef444426;transform:scale(1.1)}.draft-delete-button:active{transform:scale(.95)}.draft-delete-confirm{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);padding:var(--space-xl);background:color-mix(in srgb,var(--color-surface) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center}.draft-delete-confirm p{margin:0;font-weight:600;color:var(--color-text)}.draft-delete-confirm-actions{display:flex;gap:var(--space-md)}.draft-confirm-cancel,.draft-confirm-delete{min-height:44px;padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-md);font-weight:600}.draft-confirm-cancel{background:var(--color-surface-light);color:var(--color-text);border:1px solid var(--color-border)}.draft-confirm-delete{background:var(--color-error);color:#fff}.no-drafts{padding:var(--space-3xl);text-align:center;color:var(--color-text-muted)}.new-message-button,.new-message-button-mobile{width:100%;padding:var(--space-md) var(--space-lg);background:var(--color-primary);color:var(--color-bg);font-weight:600;border-radius:var(--radius-md);border:none;box-shadow:var(--shadow-sm);transition:background var(--transition-fast),transform var(--transition-fast);min-height:40px;font-size:.875rem}.new-message-button:hover,.new-message-button-mobile:hover{background:var(--color-primary-light)}.new-message-button:active,.new-message-button-mobile:active{transform:scale(.98)}.new-message-button-mobile{width:auto;padding:var(--space-sm) var(--space-md);font-size:.8125rem}.sidebar-header .new-message-button{width:auto;flex-shrink:0}.object-form{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-md);padding-bottom:var(--space-xl)}.object-form>.object-card,.object-form>.villas-section{animation:fadeInUp var(--transition-slow) backwards}.object-form>.object-card:first-child{animation-delay:60ms}.object-form>.villas-section{animation-delay:.14s}.object-form>.object-card.unassigned-card{animation-delay:.2s}.object-card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border);overflow:hidden;transition:all var(--transition-base);animation:fadeInUp var(--transition-base);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.object-card:hover{border-color:var(--color-border-emerald);box-shadow:var(--shadow-emerald);transform:translateY(-2px)}.card-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xl) var(--space-lg);background:linear-gradient(135deg,var(--color-surface-light) 0%,var(--color-surface) 100%);border-bottom:1px solid var(--color-border);color:var(--color-text)}.card-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text);font-family:var(--font-heading)}.card-content{padding:var(--space-lg)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg)}.info-item{display:flex;flex-direction:column;gap:var(--space-sm)}.info-label{font-size:.8125rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.info-value{font-size:1rem;color:var(--color-text);font-weight:500}.info-value.editable{cursor:pointer;padding:var(--space-md);border-radius:var(--radius);transition:all var(--transition-base);min-height:44px;display:flex;align-items:center;border:2px solid transparent;background:var(--color-bg)}.info-value.editable:hover{background:var(--color-surface-light);border-color:var(--color-border-emerald);color:var(--color-primary);transform:translate(4px)}.info-value.editable:empty:before{content:"Click to edit";color:var(--color-text-muted);font-style:italic;font-weight:400}.inline-edit{padding:var(--space-xs) 0;border:none;border-bottom:2px solid transparent;border-radius:0;font-size:1rem;width:100%;background:transparent;color:var(--color-text);outline:none;font-family:inherit;transition:all var(--transition-base);box-shadow:none;animation:slideUnderline .3s forwards}@keyframes slideUnderline{0%{border-bottom-color:transparent}to{border-bottom-color:var(--color-primary)}}.inline-edit:focus{border-bottom-color:var(--color-primary-light);background:#00e6760d}.checkbox-label{display:flex;align-items:center;gap:var(--space-md);cursor:pointer;font-weight:500;color:var(--color-text);min-height:44px;padding:var(--space-sm);border-radius:var(--radius);transition:all var(--transition-base)}.checkbox-label:hover{background:var(--color-surface-light)}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary)}.resort-select{padding:var(--space-md) var(--space-lg);border:2px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-weight:500;cursor:pointer;transition:all var(--transition-base);font-size:.9375rem;min-height:44px}.resort-select:hover{border-color:var(--color-border-emerald)}.resort-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #10b9811a}.resort-select option{background:var(--color-surface);color:var(--color-text)}.villas-section{display:flex;flex-direction:column;gap:var(--space-lg)}.section-header{display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-sm);flex-wrap:wrap;gap:var(--space-md)}.section-header h2{font-size:1.75rem;font-weight:600;color:var(--color-text);margin:0;font-family:var(--font-heading)}.villas-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}.villa-card{background:var(--color-surface);border:2px solid var(--color-border);animation:cascadeUp .5s ease-out backwards}.villa-card:nth-child(1){animation-delay:.1s}.villa-card:nth-child(2){animation-delay:.2s}.villa-card:nth-child(3){animation-delay:.3s}.villa-card:nth-child(4){animation-delay:.4s}.villa-card:nth-child(5){animation-delay:.5s}.villa-card:nth-child(n+6){animation-delay:.6s}@keyframes cascadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.villa-card .card-header{background:linear-gradient(135deg,var(--color-surface-light) 0%,var(--color-surface) 100%);border-bottom:1px solid var(--color-border)}.collapse-toggle{background:transparent;color:var(--color-text-muted);padding:var(--space-xs);margin-right:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-base)}.collapse-toggle:hover{background:var(--color-surface-light);color:var(--color-primary)}.collapse-toggle.rotated svg{transform:rotate(-90deg)}.collapse-toggle svg{transition:transform var(--transition-base)}.villa-header-main{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.villa-number{font-size:1.75rem;font-weight:700;margin:0;color:var(--color-primary);cursor:pointer;padding:var(--space-sm) var(--space-md);border-radius:var(--radius);transition:all var(--transition-base);font-family:var(--font-heading)}.villa-number:hover{background:#10b9811a;color:var(--color-primary-light);transform:scale(1.05)}.villa-number-edit{font-size:1.75rem;font-weight:700;padding:var(--space-xs) 0;border:none;border-bottom:2px solid var(--color-primary);border-radius:0;background:transparent;color:var(--color-text);width:150px;font-family:var(--font-heading);animation:slideUnderline .3s forwards}.villa-number-edit:focus{outline:none;border-bottom-color:var(--color-primary-light)}.transfer-code-edit{font-size:.85rem;padding:var(--space-xs) 0;border:none;border-bottom:2px solid var(--color-primary);border-radius:0;background:transparent;color:var(--color-text);width:100px;font-family:var(--font-body);animation:slideUnderline .3s forwards}.transfer-code-edit:focus{outline:none;border-bottom-color:var(--color-primary-light)}.hotel-badge{padding:var(--space-xs) var(--space-md);background:var(--color-surface-light);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.8125rem;font-weight:500;color:var(--color-text-light)}.villa-meta{display:flex;gap:var(--space-lg);padding:var(--space-md);background:var(--color-bg);border-radius:var(--radius);margin-bottom:var(--space-lg);font-size:.8125rem;color:var(--color-text-muted);flex-wrap:wrap}.guests-list{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg);min-height:60px;transition:all var(--transition-base);border-radius:var(--radius);padding:var(--space-xs)}.guests-list.drag-over{background:#00e6761a;border:2px dashed var(--color-primary)}.drag-over-card{box-shadow:0 0 15px #00e67666!important;transform:scale(1.02)!important;border-color:var(--color-primary)!important}.guest-card{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--space-lg);background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition-base);gap:var(--space-md);-webkit-user-select:none;user-select:none}.guest-card.in-villa{flex-direction:row;align-items:flex-start}.guest-card.in-villa .guest-main{flex:1;min-width:0}.guest-card-layout{display:flex;align-items:flex-start;gap:var(--space-md);width:100%}.guest-card-main-column{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-md)}.guest-drag-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;margin:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-light);color:var(--color-text-muted);cursor:grab;touch-action:none;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.guest-drag-handle:hover{border-color:var(--color-border-emerald);color:var(--color-primary);background:var(--color-surface)}.guest-drag-handle:active{cursor:grabbing}.guest-drag-handle-bars{display:block;width:10px;height:16px;background:repeating-linear-gradient(to bottom,currentColor 0 2px,transparent 2px 5px);opacity:.85}.guest-drag-handle-static{cursor:default;touch-action:auto;pointer-events:none}.guest-drag-overlay{box-shadow:var(--shadow-lg),0 12px 40px #00000040;transform:scale(1.02);cursor:grabbing}.guest-card:active{cursor:default}.guest-card:hover{border-color:var(--color-border-emerald);box-shadow:var(--shadow-sm);transform:translate(4px)}.guest-card.dragging{opacity:.5;transform:scale(.95);cursor:grabbing;border-color:var(--color-primary);box-shadow:var(--shadow-emerald)}.guest-card.dragging:hover{transform:scale(.95)}.guest-card.unassigned{flex-direction:column;gap:0}.guest-main{flex:1;min-width:0}.guest-name{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap}.guest-name strong{font-size:1rem;color:var(--color-text);font-weight:600}.guest-clothing,.guest-age{font-size:.875rem;color:var(--color-text-muted);margin-top:var(--space-xs)}.guest-clothing.editable{cursor:pointer;padding:var(--space-sm) var(--space-md);border-radius:var(--radius);transition:all var(--transition-base);display:inline-block;border:2px solid transparent}.guest-clothing.editable:hover{background:var(--color-surface-light);border-color:var(--color-border-emerald);color:var(--color-primary)}.guest-clothing.placeholder{font-style:italic;opacity:.6}.guest-name .editable{cursor:pointer;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius);transition:all var(--transition-base);border:2px solid transparent}.guest-name .editable:hover{background:#10b9811a;border-color:var(--color-border-emerald);color:var(--color-primary)}.guest-actions{width:100%}.assign-select{width:100%;padding:var(--space-md) var(--space-lg);border:2px solid var(--color-border);border-radius:var(--radius);font-size:.9375rem;font-weight:500;background:var(--color-surface);color:var(--color-text);min-height:48px;transition:all var(--transition-base)}.assign-select:hover{border-color:var(--color-border-emerald)}.assign-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #10b9811a}.add-guest-button{padding:var(--space-lg);background:var(--color-bg);border:2px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-weight:500;cursor:pointer;transition:all var(--transition-base);width:100%;min-height:44px;font-size:1rem}.add-guest-button:hover{border-color:var(--color-primary);color:var(--color-primary);background:#10b9810d;transform:translateY(-2px)}.add-guest-button:active{transform:translateY(0)}.villa-details{display:flex;flex-direction:column;gap:var(--space-md);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.detail-item{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;padding:var(--space-sm) 0}.detail-label{font-weight:500;color:var(--color-text-muted)}.detail-value{color:var(--color-text);font-weight:500}.detail-value.editable{cursor:pointer;padding:var(--space-sm) var(--space-md);border-radius:var(--radius);transition:all var(--transition-base);border:2px solid transparent}.detail-value.editable:hover{background:var(--color-surface-light);border-color:var(--color-border-emerald);color:var(--color-primary)}.remove-guest-button{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:var(--color-error);font-size:1.25rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.remove-guest-button:hover{background:#ef444433;transform:scale(1.05)}.remove-guest-button:active{transform:scale(.95)}.delete-button{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:var(--color-error);font-size:1.25rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base)}.delete-button:hover{background:var(--color-error);border-color:var(--color-error);color:#fff;transform:scale(1.05)}.delete-button:active{transform:scale(.95)}.guests-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);min-height:100px;transition:all var(--transition-base);border-radius:var(--radius);padding:var(--space-xs)}.guests-grid.drag-over{background:#10b9811a;border:2px dashed var(--color-primary);box-shadow:inset 0 0 20px #10b98133}.upload-card .card-header,.unassigned-card .card-header,.boarding-card .card-header{background:var(--color-surface-light);border-bottom:1px solid var(--color-border)}.import-uploads{display:flex;flex-direction:column;gap:var(--space-lg)}.import-block{padding-bottom:0;border-bottom:none}.import-subtitle{margin:0 0 var(--space-xs);font-size:.9375rem;font-weight:600;color:var(--color-text)}.import-hint{margin:0 0 var(--space-md);font-size:.8125rem;color:var(--color-text-muted)}.import-legacy-details{border-top:1px solid var(--color-border);padding-top:var(--space-md)}.import-legacy-summary{cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--color-text-muted);list-style:none;min-height:44px;display:flex;align-items:center}.import-legacy-summary::-webkit-details-marker{display:none}.import-legacy-summary:before{content:"▸";display:inline-block;margin-right:var(--space-sm);transition:transform var(--transition-fast)}.import-legacy-details[open] .import-legacy-summary:before{transform:rotate(90deg)}.import-legacy-details[open] .import-block-legacy{margin-top:var(--space-md)}.import-block .pdf-uploader{margin-bottom:0}.upload-button-primary{border-style:solid;border-color:var(--color-primary);background:linear-gradient(135deg,rgba(16,185,129,.18) 0%,var(--color-surface-light) 100%)}.pdf-uploader{margin-bottom:var(--space-xl)}.upload-label{display:block;cursor:pointer}.upload-button{padding:var(--space-xl) var(--space-2xl);background:linear-gradient(135deg,var(--color-surface-light) 0%,var(--color-surface) 100%);color:var(--color-text);font-weight:600;border-radius:var(--radius-md);border:2px dashed var(--color-border);text-align:center;transition:all var(--transition-base);box-shadow:var(--shadow-sm);min-height:44px;display:flex;align-items:center;justify-content:center;font-size:1rem}.upload-button:hover{border-color:var(--color-primary);background:linear-gradient(135deg,rgba(16,185,129,.1) 0%,var(--color-surface-light) 100%);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-emerald)}.upload-button:active{transform:translateY(0)}.debug-section{margin-top:var(--space-lg);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-md)}.debug-toggle{width:100%;padding:var(--space-md);background:transparent;color:var(--color-text-muted);font-size:.875rem;text-align:left;border:none;cursor:pointer;transition:color var(--transition-fast);min-height:44px}.debug-toggle:hover{color:var(--color-text)}.debug-text{margin-top:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);font-family:var(--font-mono);font-size:.75rem;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;max-height:300px;overflow-y:auto;color:var(--color-text);scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.error-message{padding:var(--space-lg);background:#ef444426;color:var(--color-error);border-radius:var(--radius-md);margin-top:var(--space-lg);border-left:4px solid var(--color-error)}.error-indicator{color:var(--color-error);font-weight:600}.error-text{font-size:.75rem;color:var(--color-error);margin-top:var(--space-xs);display:block}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--color-error);box-shadow:0 0 0 4px #d4655a26}.no-data{color:var(--color-error);font-style:italic}.info-message{padding:var(--space-lg);background:var(--color-surface-light);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);margin-top:var(--space-lg)}.unassigned-guests-section{margin-top:var(--space-2xl);padding:var(--space-xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.unassigned-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-lg)}.unassigned-actions{display:flex;gap:var(--space-md);align-items:center}.bulk-action-button{padding:var(--space-md) var(--space-lg);background:var(--color-surface-light);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius);font-size:.875rem;font-weight:500;transition:all var(--transition-base);min-height:44px}.bulk-action-button:hover{background:var(--color-surface);border-color:var(--color-border-emerald);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.bulk-action-button:active{transform:translateY(0)}.bulk-assign-select{padding:var(--space-md) var(--space-lg);background:var(--color-surface-light);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius);font-size:.875rem;font-weight:500;transition:all var(--transition-base);min-height:44px;cursor:pointer}.bulk-assign-select:hover{border-color:var(--color-border-emerald);background:var(--color-surface)}.bulk-assign-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #10b9811a}.bulk-assign-select option{background:var(--color-surface);color:var(--color-text)}.unassigned-header h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin:0;font-family:var(--font-heading)}.toggle-button{padding:var(--space-md) var(--space-lg);background:var(--color-surface-light);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius);font-size:.875rem;font-weight:500;transition:all var(--transition-base);min-height:44px}.toggle-button:hover{background:var(--color-surface);border-color:var(--color-border-emerald)}.info-text{color:var(--color-text-muted);font-size:.875rem;margin-bottom:var(--space-lg)}.unassigned-guests-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}.unassigned-guest-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md);transition:all var(--transition-base)}.unassigned-guest-card:hover{border-color:var(--color-border-emerald);transform:translate(4px);box-shadow:var(--shadow-sm)}.guest-info{display:flex;flex-direction:column;gap:var(--space-sm)}.guest-info strong{display:block;font-size:1rem}.guest-badges{display:flex;gap:var(--space-sm);flex-wrap:wrap}.age-badge{padding:var(--space-xs) var(--space-md);background:var(--color-surface-light);color:var(--color-text-light);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.75rem;font-weight:500}.assign-actions{display:flex;gap:var(--space-sm)}.villa-groups{display:flex;flex-direction:column;gap:var(--space-2xl);margin-top:var(--space-xl)}.villa-group{background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl)}.villa-group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--color-border)}.villa-group-header h3{font-size:1.5rem;font-weight:600;color:var(--color-text);font-family:var(--font-heading)}.guests-section{margin-top:var(--space-xl)}.add-button,.add-villa-button{padding:var(--space-md) var(--space-xl);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;font-weight:500;border-radius:var(--radius);border:none;box-shadow:var(--shadow-emerald);transition:all var(--transition-base);min-height:44px;font-size:.9375rem}.add-button:hover,.add-villa-button:hover{transform:translateY(-2px);box-shadow:0 0 25px #10b98166,var(--shadow-lg)}.add-button:active,.add-villa-button:active{transform:translateY(0)}.guest-entry{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-lg)}.remove-button{padding:var(--space-md) var(--space-lg);background:transparent;color:var(--color-error);border:2px solid var(--color-error);font-size:.875rem;border-radius:var(--radius);align-self:flex-end;transition:all var(--transition-base);min-height:44px}.remove-button:hover{background:var(--color-error);color:#fff;transform:translateY(-2px)}.remove-button:active{transform:translateY(0)}.floating-action-pill,.sticky-action-bar{position:fixed;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px));left:0;right:0;display:flex;gap:var(--space-sm);justify-content:stretch;background:color-mix(in srgb,var(--color-surface) 96%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:var(--space-sm) var(--space-lg);border-top:1px solid var(--color-border);z-index:90}.pill-button,.action-bar-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:600;font-size:.875rem;min-height:44px;flex:1}.save-pill,.save-btn{background:var(--color-surface-light);color:var(--color-text);border:1px solid var(--color-border)}.save-pill:hover,.save-btn:hover{border-color:var(--color-border-emerald);color:var(--color-primary)}.preview-pill,.preview-btn{background:var(--color-primary);color:var(--color-bg)}.preview-pill:hover,.preview-btn:hover{background:var(--color-primary-light)}@media (min-width: 768px){.floating-action-pill,.sticky-action-bar{bottom:var(--space-xl);left:auto;right:var(--space-xl);width:auto;max-width:360px;border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md)}}.form-actions{display:none}.ticket-style{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-surface-light) 100%);border:1px solid var(--color-border-emerald);position:relative;overflow:hidden}.ticket-style:before,.ticket-style:after{content:"";position:absolute;top:50%;width:20px;height:20px;background:var(--color-bg);border-radius:50%;transform:translateY(-50%);border:1px solid var(--color-border-emerald)}.ticket-style:before{left:-11px;border-left-color:transparent;border-top-color:transparent;border-bottom-color:transparent}.ticket-style:after{right:-11px;border-right-color:transparent;border-top-color:transparent;border-bottom-color:transparent}.ticket-header{padding:var(--space-lg);border-bottom:2px dashed var(--color-border-emerald);display:flex;justify-content:space-between;align-items:center}.ticket-header h2{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:2px;font-size:1.1rem;color:var(--color-primary);margin:0}.ticket-icon{color:var(--color-primary);opacity:.8}.ticket-body{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-lg)}.ticket-row{display:flex;flex-direction:column;gap:var(--space-sm)}.ticket-row.split{flex-direction:row;justify-content:space-between;gap:var(--space-lg)}.ticket-field{display:flex;flex-direction:column;gap:var(--space-xs);flex:1}.ticket-label{font-family:var(--font-mono);font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.ticket-value{font-size:1.5rem;font-weight:600;color:var(--color-text);font-family:var(--font-body)}.ticket-input{background:transparent;border:none;border-bottom:2px solid var(--color-primary);color:var(--color-primary);font-size:1.5rem;font-weight:600;font-family:var(--font-body);padding:0;width:100%}.ticket-input:focus{outline:none}.save-button{padding:var(--space-lg) var(--space-2xl);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;font-weight:600;font-size:1rem;border-radius:var(--radius-md);border:none;box-shadow:var(--shadow-emerald);transition:all var(--transition-base);min-height:44px;width:100%}.save-button:hover{transform:translateY(-2px);box-shadow:0 0 25px #10b98166,var(--shadow-lg)}.save-button:active{transform:translateY(0)}.message-preview{margin-top:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);padding-bottom:calc(var(--space-lg) + var(--bottom-nav-height, 64px) + 2rem)}.preview-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:var(--space-md)}.preview-title-row{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);min-width:0}.preview-back{background:transparent;color:var(--color-primary);font-size:.8125rem;font-weight:600;padding:var(--space-xs) 0;min-height:32px}.preview-header h2{font-size:1.25rem;font-weight:600;color:var(--color-text);font-family:var(--font-heading);margin:0}.preview-actions{display:flex;gap:var(--space-md);flex-wrap:wrap;align-items:flex-end}.preview-copy-block{display:flex;flex-direction:column;gap:var(--space-xs);min-width:200px}.preview-copy-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase}.preview-copy-row{display:flex;gap:var(--space-sm);align-items:stretch;flex-wrap:wrap}.preview-copy-select{flex:1 1 160px;min-height:44px;padding:var(--space-sm) var(--space-md);font-size:.9375rem;font-weight:500;color:var(--color-text);background:var(--color-surface-light);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color var(--transition-base),background var(--transition-base)}.preview-copy-select:hover{border-color:var(--color-border-emerald);background:var(--color-surface)}.preview-toggle-button{background:var(--color-surface-light);color:var(--color-text);border:2px solid var(--color-border)}.preview-toggle-button:hover{background:var(--color-surface);border-color:var(--color-border-emerald)}.preview-toggle-button.is-active{border-color:var(--color-border-emerald);background:var(--color-surface);color:var(--color-primary)}.preview-status{min-height:1.25rem;margin:0 0 var(--space-md);font-size:.875rem;color:var(--color-primary);font-weight:500}.action-button{padding:var(--space-md) var(--space-xl);font-weight:500;border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:all var(--transition-base);min-height:44px;font-size:.9375rem}.copy-button{background:var(--color-surface-light);color:var(--color-text);border:2px solid var(--color-border)}.copy-button:hover{background:var(--color-surface);border-color:var(--color-border-emerald);transform:translateY(-2px);box-shadow:var(--shadow-md)}.copy-button:active{transform:translateY(0)}.download-button{background:var(--color-primary);color:var(--color-bg);border:none;box-shadow:var(--shadow-sm)}.download-button:hover{background:var(--color-primary-light)}.download-button:active{transform:scale(.98)}.preview-content{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);font-family:var(--font-mono);font-size:.8125rem;line-height:1.7;white-space:pre-wrap;word-wrap:break-word;max-height:none;overflow:visible;color:var(--color-text)}.preview-content::-webkit-scrollbar{width:6px}.preview-content::-webkit-scrollbar-track{background:transparent}.preview-content::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.parsing-results{margin-top:var(--space-xl);margin-bottom:var(--space-xl)}.parsing-results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-md)}.parsing-results-header h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin:0;font-family:var(--font-heading)}.parsing-summary{display:flex;gap:var(--space-lg);align-items:center;flex-wrap:wrap}.summary-item{font-size:.875rem;color:var(--color-text-muted)}.summary-item strong{color:var(--color-primary);font-weight:600}.parsing-result-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-lg);cursor:pointer;transition:all var(--transition-base);animation:fadeInUp var(--transition-base)}.parsing-result-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-emerald);transform:translateY(-2px)}.parsing-result-card.active{border-color:var(--color-primary);background:var(--color-surface-light);box-shadow:var(--shadow-emerald)}.parsing-result-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-md)}.flight-info{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.resort-badge,.time-badge{padding:var(--space-xs) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.75rem;font-weight:500;color:var(--color-text)}.round-trip-badge{padding:var(--space-xs) var(--space-md);background:var(--color-accent);color:#fff;border-radius:var(--radius);font-size:.75rem;font-weight:500}.confidence-badge{padding:var(--space-md) var(--space-lg);border-radius:var(--radius);font-size:.875rem;font-weight:600;min-width:60px;text-align:center}.confidence-high{background:#10b98126;color:var(--color-success);border:1px solid var(--color-success)}.confidence-medium{background:#f59e0b26;color:var(--color-warning);border:1px solid var(--color-warning)}.confidence-low{background:#ef444426;color:var(--color-error);border:1px solid var(--color-error)}.parsing-result-stats{display:flex;gap:var(--space-xl);margin-bottom:var(--space-md);flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:var(--space-sm)}.stat-label{font-size:.875rem;color:var(--color-text-muted)}.stat-value{font-weight:600;color:var(--color-text)}.unassigned-count{color:var(--color-accent);font-weight:500}.parsing-warnings{margin-top:var(--space-md);padding:var(--space-md);background:#f59e0b1a;border-left:3px solid var(--color-warning);border-radius:var(--radius)}.warning-item{font-size:.875rem;color:var(--color-text);margin-bottom:var(--space-xs)}.warning-item:last-child{margin-bottom:0}.parsing-result-details{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.detail-section{font-size:.875rem;color:var(--color-text);margin-bottom:var(--space-sm)}.detail-section strong{color:var(--color-text);margin-right:var(--space-sm)}.field-hint{font-size:.75rem;color:var(--color-text-muted);font-style:italic;margin-top:var(--space-xs)}.form-row{display:grid;grid-template-columns:1fr;gap:var(--space-lg);margin-bottom:var(--space-lg)}.form-group{display:flex;flex-direction:column;gap:var(--space-sm)}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text)}.form-group input,.form-group select,.form-group textarea{padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;background:var(--color-bg);color:var(--color-text);min-height:44px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 20%,transparent);background:var(--color-surface);outline:none}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 767px){.app-content{padding:var(--space-md)}.object-form{padding:var(--space-md);padding-bottom:calc(var(--space-3xl) + 120px)}button,a,input,select,textarea,[role=button]{min-height:44px;min-width:44px}.guest-drag-handle{min-width:44px;min-height:44px}*{-webkit-tap-highlight-color:rgba(16,185,129,.2)}.preview-header{flex-direction:column;align-items:stretch}.preview-actions{flex-direction:column;align-items:stretch;width:100%}.preview-copy-block{width:100%;min-width:0}.preview-copy-row{width:100%}.preview-copy-select{flex:1 1 auto;width:auto;min-width:0}.preview-copy-row .copy-button{flex:0 0 auto}.download-button{width:100%}.preview-content{font-size:clamp(.9rem,3.5vw,1rem);line-height:1.75;max-height:none;overflow:visible;padding:var(--space-lg);padding-bottom:calc(var(--space-lg) + 4.5rem)}.draft-list,.preview-content,.debug-text{-webkit-overflow-scrolling:touch}body{-webkit-text-size-adjust:100%}}@media (min-width: 768px){.app{padding-bottom:calc(var(--action-bar-height) + var(--space-xl))}.app-header{padding:var(--space-md) var(--space-xl);padding-top:max(var(--space-md),env(safe-area-inset-top))}.brand-wordmark{font-size:1.5rem}.app-content{padding:var(--space-2xl)}.sidebar.desktop-only{display:flex}.content-section{display:block!important}.section-header-mobile{display:none}.bottom-nav,.drafts-sheet,.drafts-sheet-backdrop,.preview-back{display:none!important}.villas-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.guests-grid,.unassigned-guests-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.preview-actions{flex-wrap:nowrap}.object-form{padding-bottom:var(--space-3xl)}}@media (min-width: 1024px){.app-content{gap:var(--space-2xl)}.sidebar.desktop-only{width:360px}}.mobile-only{display:block}.desktop-only{display:none}.drafts-sheet.mobile-only{display:flex}.drafts-sheet-backdrop.mobile-only{display:block}@media (min-width: 768px){.mobile-only{display:none!important}.desktop-only{display:block}.sidebar.desktop-only{display:flex}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #2a9b7a;--color-primary-dark: #1e7a5f;--color-primary-light: #3db892;--color-primary-lighter: #6ecfb0;--color-accent: #3a8f9c;--color-accent-light: #5aadb8;--color-mint: #6ecfb0;--color-bg: #0a1618;--color-bg-gradient: linear-gradient(160deg, #0a1618 0%, #0f2226 50%, #0a1618 100%);--color-surface: #122226;--color-surface-light: #1a2e33;--color-surface-lighter: #243a40;--color-text: #eef4f3;--color-text-light: #c5d4d1;--color-text-muted: #8fa3a0;--color-text-dim: #6a7d7a;--color-border: rgba(42, 155, 122, .18);--color-border-light: rgba(42, 155, 122, .28);--color-border-emerald: rgba(42, 155, 122, .35);--color-error: #d4655a;--color-success: #2a9b7a;--color-warning: #c9a227;--font-heading: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Consolas", "Monaco", monospace;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 28px rgba(0, 0, 0, .4);--shadow-emerald: 0 4px 16px rgba(0, 0, 0, .35);--radius: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--body-bg-image: radial-gradient(at 12% 8%, rgba(42, 155, 122, .07) 0px, transparent 42%), radial-gradient(at 88% 92%, rgba(58, 143, 156, .05) 0px, transparent 45%);--body-bg-size: 200% 200%;--header-height: 56px;--bottom-nav-height: 64px;--action-bar-height: 56px}@keyframes waterMesh{0%{background-position:0% 0%}50%{background-position:100% 100%}to{background-position:0% 0%}}body{font-family:var(--font-body);background:var(--color-bg);background-image:var(--body-bg-image);background-size:var(--body-bg-size, auto);animation:waterMesh 28s ease-in-out infinite;color:var(--color-text);line-height:1.6;min-height:100vh;min-height:100dvh;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}#root{min-height:100vh;min-height:100dvh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.25;color:var(--color-text);letter-spacing:-.015em}h1{font-size:2.5rem;font-weight:700}h2{font-size:1.75rem}h3{font-size:1.25rem}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base),transform var(--transition-fast),box-shadow var(--transition-base);font-size:inherit;-webkit-tap-highlight-color:transparent}input,select,textarea{font-family:inherit;outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base);font-size:16px}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-light)}:root,[data-theme=lagoon-night],[data-theme=emerald-dark],[data-theme=midnight-navy]{--color-primary: #2a9b7a;--color-primary-dark: #1e7a5f;--color-primary-light: #3db892;--color-primary-lighter: #6ecfb0;--color-accent: #3a8f9c;--color-accent-light: #5aadb8;--color-mint: #6ecfb0;--color-bg: #0a1618;--color-bg-gradient: linear-gradient(160deg, #0a1618 0%, #0f2226 50%, #0a1618 100%);--color-surface: #122226;--color-surface-light: #1a2e33;--color-surface-lighter: #243a40;--color-text: #eef4f3;--color-text-light: #c5d4d1;--color-text-muted: #8fa3a0;--color-text-dim: #6a7d7a;--color-border: rgba(42, 155, 122, .18);--color-border-light: rgba(42, 155, 122, .28);--color-border-emerald: rgba(42, 155, 122, .35);--color-error: #d4655a;--color-success: #2a9b7a;--color-warning: #c9a227;--font-heading: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", Consolas, monospace;--shadow-emerald: 0 4px 16px rgba(0, 0, 0, .35);--body-bg-image: radial-gradient(at 12% 8%, rgba(42, 155, 122, .07) 0px, transparent 42%), radial-gradient(at 88% 92%, rgba(58, 143, 156, .05) 0px, transparent 45%)}[data-theme=atoll-day],[data-theme=sand-sea],[data-theme=forest-dawn]{--color-primary: #1f7a66;--color-primary-dark: #165a4c;--color-primary-light: #2a9b7a;--color-primary-lighter: #5bb89a;--color-accent: #2d7a88;--color-accent-light: #4a9aa8;--color-mint: #7bc4ae;--color-bg: #eef5f3;--color-bg-gradient: linear-gradient(160deg, #eef5f3 0%, #e4efec 50%, #f2f7f5 100%);--color-surface: #ffffff;--color-surface-light: #f4f9f7;--color-surface-lighter: #e8f1ee;--color-text: #152421;--color-text-light: #2c3d39;--color-text-muted: #5a6e69;--color-text-dim: #7a8f89;--color-border: #d0e0db;--color-border-light: #bccfc9;--color-border-emerald: rgba(31, 122, 102, .35);--color-error: #c24b40;--color-success: #1f7a66;--color-warning: #b8891f;--font-heading: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", Consolas, monospace;--shadow-sm: 0 1px 2px rgba(21, 36, 33, .06);--shadow-md: 0 4px 12px rgba(21, 36, 33, .08);--shadow-lg: 0 12px 28px rgba(21, 36, 33, .1);--shadow-emerald: 0 4px 14px rgba(21, 36, 33, .08);--body-bg-image: radial-gradient(at 20% 80%, rgba(45, 122, 136, .06) 0px, transparent 45%), radial-gradient(at 80% 15%, rgba(31, 122, 102, .05) 0px, transparent 45%)}@media (prefers-reduced-motion: reduce){body{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width: 767px){body{font-size:16px;line-height:1.55}h1{font-size:1.35rem}h2{font-size:1.2rem}h3{font-size:1.05rem}}
