.booking-side-panel{background:var(--surface);border:1px solid var(--surface-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:20px}.booking-builder-layout,.booking-page-stack{flex-direction:column;gap:8px;display:flex}.booking-builder-summary{gap:18px;display:grid}.booking-builder-summary__actions{justify-content:flex-end;gap:10px;display:flex}.booking-builder-summary__actions .primary-button{min-width:200px;min-height:50px}.booking-side-panel .booking-builder-summary__actions .primary-button{border-radius:12px}.booking-builder-summary__vessel{grid-template-columns:92px minmax(0,1fr);align-items:start;gap:14px;display:grid}.booking-builder-summary__thumb{background-color:#0f6d7829;background-position:50%;background-size:cover;border-radius:5px;width:92px;height:70px}.booking-builder-summary__meta,.booking-builder-summary__lines,.booking-builder-summary__form{gap:10px;display:grid}.booking-builder-summary__joiners{gap:12px;display:grid}.booking-builder-summary__joiner-card{background:#ffffffa3;border:1px solid #10273614;border-radius:5px;gap:10px;padding:14px;display:grid}.booking-builder-summary__accordion-trigger{min-height:38px;color:var(--text);cursor:pointer;text-align:left;background:#ffffffc2;border:1px solid #10273624;border-radius:5px;padding:0 12px;font-weight:600}.booking-builder-summary__accordion-trigger--active{color:var(--accent-strong);background:#0f6d781f;border-color:#0f6d7852}.booking-builder-summary__accordion-panel{gap:10px;display:grid}.booking-builder-summary__line,.booking-builder-summary__total{justify-content:space-between;align-items:start;gap:16px;display:flex}.booking-builder-summary__line--document{align-items:center}.booking-builder-summary__line--stacked{grid-template-columns:1fr auto;gap:4px 16px;display:grid}.booking-builder-summary__line--stacked .meta-line{grid-column:1/-1}.booking-builder-summary__upload-button{justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.booking-builder-summary__total{border-top:1px solid #10273614;padding-top:12px;font-size:1.1rem}.booking-builder-summary__error{color:#b03124;font-weight:600}.booking-cabin-list{gap:8px;display:grid}.booking-cabin-card__hero .vessel-card-gallery__hero,.booking-cabin-card__hero .vessel-card-gallery__placeholder{height:165px}.booking-cabin-card__sharing-note{background:#0f6f790d;border:1px solid #1027361a;border-radius:6px;gap:8px;padding:10px 12px;display:grid}.booking-cabin-card__sharing-note p{color:var(--muted);margin:0;font-size:.8rem}.booking-cabin-card__grouping{background:var(--color-bg-card-soft,#0f6f790d)}.booking-cabin-card__grouping-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.booking-cabin-card__grouping-list li{border:1px solid var(--color-border-soft,#1027361a);background:#ffffffb8;border-radius:6px;justify-content:space-between;gap:12px;padding:8px 10px;font-size:.8rem;display:flex}.booking-cabin-card__grouping-list strong{color:var(--color-text-strong,var(--ink))}.booking-cabin-card__grouping-list span{color:var(--color-text-main,var(--muted));text-align:right}.booking-cabin-card__grouping-advice{font-weight:600;color:var(--color-warning,#b07a1a)!important}@media (max-width:640px){.booking-cabin-card__grouping-list li{flex-direction:column;gap:2px}.booking-cabin-card__grouping-list span{text-align:left}}.booking-cabin-card__sharing-toggle{align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:inline-flex}.booking-cabin-card__sharing-toggle input[type=checkbox]{width:16px;min-width:16px;height:16px;margin:0}.booking-cabin-card__amenities{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 12px;display:grid}.booking-cabin-card__hero{flex-direction:column;display:flex}.booking-cabin-card__hero .vessel-card-gallery__hero,.booking-cabin-card__hero .vessel-card-gallery__placeholder{height:165px}.booking-cabin-card__content-area{flex-direction:column;justify-content:space-between;gap:10px;display:flex}.booking-cabin-card__main-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.booking-cabin-card__info{flex-direction:column;flex:1;gap:4px;display:flex}.booking-cabin-card__info h2{margin:0;font-size:1rem}.booking-cabin-card__info p{color:var(--muted);margin:0;font-size:.86rem}.booking-cabin-card__stepper .ghost-button{justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:0;display:flex}.booking-cabin-card__stepper-value{background:#ffffffd6;border:1px solid #1027361f;border-radius:5px;justify-content:center;align-items:center;min-width:32px;min-height:32px;font-size:.9rem;font-weight:600;display:inline-flex}.booking-cabin-card__pricing{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;display:flex}.booking-cabin-card__price{flex-direction:column;gap:8px;display:flex}.booking-cabin-card__price-row{flex-direction:column;gap:2px;display:flex}.booking-cabin-card__availability{color:var(--muted);flex-direction:column;gap:2px;font-size:.75rem;display:flex}.booking-cabin-card__amenity{align-items:flex-end;gap:3px;font-size:.75rem;display:flex}.booking-cabin-card__amenity svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}.booking-cabin-card{background:#ffffffbd;border:1px solid #1027361a;border-radius:5px;grid-template-columns:180px minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.booking-cabin-card .vessel-card-gallery{flex-direction:column;display:flex}.booking-cabin-card .vessel-card-gallery__hero,.booking-cabin-card .vessel-card-gallery__placeholder{min-height:140px}.booking-cabin-card__content{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.booking-cabin-card__top{flex-direction:column;gap:8px;display:flex}.booking-cabin-card__top h2{margin:0 0 4px;font-size:1rem}.booking-cabin-card__top p{color:var(--muted);margin:0;font-size:.86rem}.booking-cabin-card__availability{font-size:.75rem}.booking-cabin-card__controls{flex-direction:column;grid-column:2;align-items:flex-end;gap:8px;display:flex}.booking-cabin-card__stepper{align-items:center;gap:4px;display:flex}.booking-cabin-card__stepper-value{background:#ffffffd6;border:1px solid #1027361f;border-radius:5px;justify-content:center;align-items:center;min-width:40px;min-height:32px;font-weight:600;display:inline-flex}.booking-cabin-card__sold-out{color:#d64532;font-size:.86rem;font-weight:600}.booking-builder-page{gap:10px}.booking-builder-breadcrumb{padding-top:10px}.booking-builder-page .booking-builder-overview{gap:var(--space-lg);grid-template-columns:minmax(260px,330px) minmax(0,1fr);align-items:stretch;display:grid}.booking-builder-overview__thumb{aspect-ratio:3/2;background-color:#0f6d7829;background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:0;min-height:0}.booking-builder-overview__content{gap:var(--space-md);min-width:0;display:grid}.booking-builder-overview__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.booking-builder-overview__grid>div{border-radius:var(--radius-md);background:#ffffffd1;border:1px solid #10273614;gap:4px;padding:12px;display:grid}.booking-builder-workspace{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:10px;display:grid}.booking-builder-main-column{gap:10px;min-width:0;display:grid}.booking-builder-main-column.section-stack{margin-top:0}.booking-builder-page .booking-cabin-list.section-stack{gap:10px;margin-top:0}.booking-builder-page .booking-builder-summary{align-self:start;gap:10px;display:grid;position:sticky;top:106px}.booking-builder-page .section-heading--compact{gap:6px}.booking-builder-page .booking-builder-summary__actions .primary-button{width:100%}.booking-builder-guests{gap:var(--space-md);display:grid}.booking-builder-guests__tabs{flex-wrap:wrap;gap:10px;display:flex}.booking-builder-guests__constellation{grid-template-columns:repeat(auto-fit,minmax(190px,240px));justify-content:start;gap:10px;width:min(100%,760px);margin-right:auto;display:grid}.booking-builder-guests__cabin{background:#ffffffd1;border:1px solid #2f8f5b61;border-radius:8px;gap:10px;min-height:104px;padding:12px;display:grid}.booking-builder-guests__cabin--shared{background:var(--color-warning-bg,#fff6df);border-color:#b07a1a59}.booking-builder-guests__cabin-header{text-align:center;gap:2px;display:grid}.booking-builder-guests__cabin-header strong{color:var(--color-text-strong,var(--ink));font-size:var(--font-size-sm,.875rem);overflow-wrap:anywhere}.booking-builder-guests__cabin-header span{color:var(--color-text-muted,var(--muted));font-size:var(--font-size-xs,.75rem)}.booking-builder-guests__bubble-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.booking-builder-guests__bubble{max-width:100%;min-height:34px;color:var(--color-text-main,var(--text));font-size:var(--font-size-xs,.75rem);cursor:pointer;background:#fff;border:1px solid #10273629;border-radius:6px;justify-content:center;align-items:center;padding:7px 12px;font-weight:600;display:inline-flex}.booking-builder-guests__bubble span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.booking-builder-guests__bubble--active{background:var(--color-primary,#0f6f79);color:var(--color-text-on-dark,#fff);border-color:#0f6d787a}.booking-builder-guests__bubble--complete:not(.booking-builder-guests__bubble--active){background:var(--color-success-bg,#2f8f5b1f);border-color:#2f8f5b61}.booking-builder-guests__tab{min-height:44px;color:var(--text);cursor:pointer;background:#ffffffd6;border:1px solid #1027361f;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;display:inline-flex}.booking-builder-guests__tab-text{gap:2px;min-width:0;display:grid}.booking-builder-guests__tab-room,.booking-builder-guests__tab-traveler{text-overflow:ellipsis;white-space:nowrap;max-width:210px;display:block;overflow:hidden}.booking-builder-guests__tab-room{color:var(--color-text-strong,var(--ink));font-size:var(--font-size-xs,.75rem)}.booking-builder-guests__tab-traveler{color:var(--color-text-muted,var(--muted));font-size:var(--font-size-xs,.75rem);font-weight:500}.booking-builder-guests__tab--active{color:var(--accent-strong);background:#0f6d781f;border-color:#0f6d7852}.booking-builder-guests__tab-status{border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:.78rem;font-weight:700;display:inline-flex}.booking-builder-guests__tab-status--complete{color:#2f8f5b;background:#2f8f5b24}.booking-builder-guests__tab-status--incomplete{color:#b54747;background:#b5474724}.booking-collection__status-icon,.booking-builder-guests__tab-status.booking-collection__status-icon,.booking-collection__profile-tab-status.booking-collection__status-icon{width:18px;min-width:18px;height:18px;box-shadow:none;background:0 0;border-radius:0;padding:0}.booking-collection__status-icon svg{stroke-width:2.2px;width:16px;height:16px;display:block}.booking-collection__status-icon.booking-builder-guests__tab-status--complete,.booking-collection__status-icon.is-complete{color:var(--color-success,#2f8f5b);background:0 0}.booking-collection__status-icon.booking-builder-guests__tab-status--incomplete,.booking-collection__status-icon.is-missing{color:var(--color-warning,#b07a1a);background:0 0}.booking-builder-guests__panel{display:grid}.booking-builder-guests__panel-grid{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.booking-builder-guests .field-label>span:not(.field-help-text){color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;text-transform:inherit;display:block}.booking-builder-guests .field-help-text{margin-top:10px;display:block}.booking-builder-guests__panel-grid-full{grid-column:1/-1}.booking-builder-collection-readiness{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.booking-builder-collection-readiness__item{background:#ffffffd1;border:1px solid #10273614;border-radius:14px;gap:4px;padding:12px 14px;display:grid}.booking-builder-collection-readiness__item.is-complete{background:#2f8f5b1a;border-color:#2f8f5b33}.booking-collection__progress{background:#10273614;border-radius:999px;width:100%;height:10px;overflow:hidden}.booking-collection__progress-bar{background:linear-gradient(90deg,#07969f 0%,#3bc0cd 100%);border-radius:999px;height:100%}.booking-collection__missing-list{flex-wrap:wrap;gap:8px;display:flex}.booking-collection__missing-list span,.booking-collection__complete-note{min-height:28px;font-size:var(--font-size-xs);border-radius:999px;align-items:center;padding:0 10px;display:inline-flex}.booking-collection__missing-list span{color:#9f2835;background:#b547471f}.booking-collection__complete-note{color:#2f8f5b;background:#2f8f5b1f}.booking-collection__title{font-size:var(--font-size-xl)}.booking-collection__intro{font-size:var(--font-size-sm)}.booking-collection__traveler-slicer{grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:8px;width:100%;display:grid}.booking-collection__traveler-slicer-button{border:1px solid var(--color-border,#dfe6ea);border-radius:var(--radius-sm,8px);background:var(--color-bg-card,#fff);min-width:36px;min-height:40px;color:var(--color-primary,#0f6f79);cursor:pointer;font-size:var(--font-size-md,.95rem);font-weight:var(--font-weight-bold,700);transition:border-color var(--transition-fast,.18s ease), background var(--transition-fast,.18s ease), color var(--transition-fast,.18s ease);justify-content:center;align-items:center;padding:0;display:inline-flex}.booking-collection__traveler-slicer-button:hover,.booking-collection__traveler-slicer-button:focus-visible{background:#0f6d7814;border-color:#0f6d786b;outline:none}.booking-builder-guests__tabs.booking-collection__traveler-strip{scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:thin;flex-wrap:nowrap;gap:8px;min-width:0;padding-bottom:2px;overflow:auto hidden}.booking-collection__traveler-strip .booking-builder-guests__tab{border-color:var(--color-border,#dfe6ea);border-radius:var(--radius-sm,8px);background:var(--color-bg-card,#fff);min-height:50px;color:var(--color-text-strong,#1c2b36);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);scroll-snap-align:start;transition:border-color var(--transition-fast,.18s ease), background var(--transition-fast,.18s ease), color var(--transition-fast,.18s ease);flex:0 0 min(172px,46vw);padding:7px 12px}.booking-collection__traveler-strip .booking-builder-guests__tab:hover,.booking-collection__traveler-strip .booking-builder-guests__tab:focus-visible{border-color:#0f6d7857;outline:none}.booking-collection__traveler-strip .booking-builder-guests__tab--active{color:var(--color-primary,#0f6f79);box-shadow:inset 0 -2px 0 var(--color-primary,#0f6f79);background:#0f6d781a;border-color:#0f6d7875}.booking-collection__traveler-strip .booking-builder-guests__tab>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.booking-collection__traveler-label{text-align:left;gap:2px;min-width:0;display:grid}.booking-collection__traveler-label strong,.booking-collection__traveler-label small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.booking-collection__traveler-label strong{color:inherit;font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);line-height:var(--line-height-tight,1.2)}.booking-collection__traveler-label small{color:var(--color-text-muted,#6f7f89);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-regular,400);line-height:var(--line-height-tight,1.2)}.booking-collection__traveler-strip .booking-builder-guests__tab--active .booking-collection__traveler-label small{color:var(--color-text-main,#33505e)}.booking-collection__profile-tabs{border:0;border-bottom:1px solid var(--color-border-soft,#e9eef1);scrollbar-width:thin;background:0 0;border-radius:0;flex-wrap:nowrap;gap:4px;width:100%;min-width:0;padding:0;display:flex;overflow:auto hidden}.booking-collection__profile-tab{min-height:34px;color:var(--color-text-main,#33505e);cursor:pointer;font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);line-height:var(--line-height-tight,1.2);text-align:center;text-transform:none;letter-spacing:0;width:auto;min-width:116px;transition:border-color var(--transition-fast,.18s ease), background var(--transition-fast,.18s ease), color var(--transition-fast,.18s ease), box-shadow var(--transition-fast,.18s ease);background:0 0;border:1px solid #0000;border-radius:0;flex-direction:column;flex:1 0 0;justify-content:center;align-items:center;gap:2px;padding:5px 8px 7px;display:flex}.booking-collection__profile-tab>span:first-child{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;display:block;overflow:hidden}.booking-collection__profile-tab.is-missing,.booking-collection__profile-tab.is-complete{color:var(--color-text-main,#33505e)}.booking-collection__profile-tab--active{border-color:#0000;border-bottom-color:var(--color-primary,#0f6f79);color:var(--color-primary,#0f6f79);box-shadow:none;background:0 0}.booking-collection__profile-tab-status{min-width:16px;height:16px;font-size:.64rem;font-weight:var(--font-weight-bold,700);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 4px;line-height:1;display:inline-flex}.booking-collection__notice{color:#2f8f5b;width:fit-content;max-width:min(420px,100%);font-size:var(--font-size-sm);z-index:8;background:#e8f5eef5;border:1px solid #2f8f5b38;border-radius:999px;justify-self:end;padding:12px 16px;font-weight:700;position:sticky;bottom:16px;box-shadow:0 12px 32px #10263329}.booking-collection__notice--error{color:#b54747;background:#fdeaeaf5;border-color:#b547473d}.booking-collection__notice--success{color:#2f8f5b;background:#e8f5eef5;border-color:#2f8f5b38}.booking-collection__soft-action{min-height:42px;color:var(--accent-strong);cursor:pointer;font-size:var(--font-size-sm);background:#0f6d7817;border:1px solid #0f6d783d;border-radius:12px;justify-content:center;align-items:center;padding:0 16px;font-weight:700;transition:background .18s,border-color .18s,transform .18s;display:inline-flex;box-shadow:0 8px 18px #10263314}.booking-collection__soft-action:hover:not(:disabled){background:#0f6d7824;border-color:#0f6d786b;transform:translateY(-1px)}.booking-collection__soft-action:disabled{cursor:not-allowed;opacity:.62;transform:none}.booking-collection__profile-tab-status.is-complete{color:#2f8f5b;background:#2f8f5b24}.booking-collection__profile-tab-status.is-missing{color:#b54747;background:#b5474724}.booking-side-panel .field-label__required,.booking-side-panel .booking-collection__text-row .field-label__required{color:#b54747;font-weight:800}.booking-collection__group{gap:10px;display:grid}.booking-collection__group-title{font-size:var(--font-size-md);color:var(--text);margin:0}.booking-collection__group-note{color:var(--muted);font-size:var(--font-size-sm)}.booking-collection__travel-block{background:#0f6d780d;border:1px solid #1027361a;border-radius:12px;gap:8px;padding:12px 14px;display:grid}.booking-collection__travel-block h4{color:var(--text);font-size:var(--font-size-sm);margin:0}.booking-collection__travel-block p{color:var(--muted);font-size:var(--font-size-xs);margin:0;line-height:1.45}.booking-collection__choice-row{color:var(--text);font-size:var(--font-size-sm);flex-wrap:wrap;align-items:center;gap:12px;display:flex}.booking-collection__choice{align-items:center;gap:6px;display:inline-flex}.booking-collection__choice--inline{font-size:var(--font-size-sm);margin-right:12px}.booking-collection__equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.booking-collection__equipment-item{grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;display:grid}.booking-collection__equipment-item input[type=text],.booking-collection__equipment-item input:not([type]){grid-column:2}.booking-collection__text-rows{gap:10px;display:grid}.booking-collection__text-row{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:12px;display:grid}.booking-collection__text-row>span{color:var(--text);font-size:var(--font-size-sm);padding-top:10px;font-weight:500}.booking-collection__document-row{grid-template-columns:minmax(190px,1fr) 110px 120px 140px;justify-content:stretch;align-items:center;gap:12px;width:100%;display:grid!important}.booking-collection__file-note{color:var(--muted);font-size:var(--font-size-xs);margin:8px 0 10px;line-height:1.45}.booking-collection__document-row>span:first-child{min-width:0}.booking-collection__document-row>strong,.booking-collection__document-row>.booking-builder-summary__upload-button,.booking-collection__document-row>.booking-collection__document-links,.booking-collection__document-row>.booking-collection__document-placeholder{justify-self:start}.booking-collection__document-links{font-size:var(--font-size-xs);align-items:center;gap:10px;display:inline-flex}.booking-collection__document-links a{color:var(--accent-strong);text-decoration:none}.booking-collection__document-placeholder{font-size:var(--font-size-xs);color:var(--muted)}@media (max-width:980px){.booking-builder-page .booking-builder-overview,.booking-builder-workspace,.booking-builder-guests__panel-grid{grid-template-columns:1fr}.booking-builder-overview__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-builder-page .booking-builder-summary{position:static}.booking-collection__equipment-grid,.booking-builder-collection-readiness,.booking-collection__text-row,.booking-collection__document-row{grid-template-columns:1fr}}@media (max-width:640px){.booking-builder-overview__grid{grid-template-columns:1fr}.booking-builder-guests__tab{justify-content:space-between;width:100%}}.booking-read-layout{grid-template-columns:minmax(0,1.15fr) 340px;align-items:start;gap:24px;display:grid}.booking-read-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.booking-read-meta div{gap:6px;display:grid}.booking-read-rooms{gap:12px;display:grid}.booking-read-room{border-top:1px solid #10273614;justify-content:space-between;align-items:start;gap:16px;padding:16px 0;display:flex}.booking-read-room:first-child{border-top:0;padding-top:0}.booking-read-room__price{font-weight:700}.booking-status-layout{grid-template-columns:minmax(0,1.15fr) 340px;align-items:start;gap:10px;display:grid}.booking-status-main{flex-direction:column;gap:10px;display:flex}.booking-status-sidebar{position:sticky;top:106px}.booking-status-actions{border-top:1px solid var(--surface-line);margin-top:0;padding-top:10px}.booking-status-actions .ghost-button{text-align:center;width:100%}.booking-status-hero{gap:var(--space-lg);display:grid}.countdown-widget{background:linear-gradient(135deg, var(--accent), var(--accent-strong));border-radius:var(--radius-lg);color:#fff;align-items:center;gap:20px;padding:24px;display:flex}.countdown-widget.cancelled,.countdown-widget.completed{background:linear-gradient(135deg,#6b7280,#4b5563)}.countdown-widget.active{background:linear-gradient(135deg,#0f6d78,#0a4f55)}.countdown-widget.upcoming{flex-direction:column;align-items:flex-start;gap:16px}.countdown-widget__countdown-row{align-items:stretch;gap:18px;display:flex}.countdown-widget__days{flex-direction:column;align-items:center;display:flex}.countdown-widget__icon--happy{color:#fff;background:#ffffff29;border-radius:999px;justify-content:center;align-self:center;align-items:center;width:120px;height:120px;margin-left:230px;display:inline-flex}.countdown-widget__number{font-size:48px;font-weight:700;line-height:1}.countdown-widget__label{opacity:.9;font-size:14px}.countdown-widget__dates{gap:24px;width:100%;display:flex}.countdown-widget__dates>div{flex-direction:column;gap:4px;display:flex}.countdown-widget__dates strong{text-transform:uppercase;opacity:.8;font-size:12px}.countdown-widget__dates span{font-size:14px}.countdown-widget.pending{background:linear-gradient(135deg,#f59e0b,#d97706)}.countdown-widget__content h3{margin:0 0 4px;font-size:18px}.countdown-widget__content p{opacity:.9;margin:0;font-size:14px}.payment-schedule-panel{padding:24px}.payment-schedule-list{flex-direction:column;gap:12px;display:flex}.payment-schedule-item{background:var(--surface);border-radius:var(--radius-md);border-left:4px solid #f59e0b;padding:16px}.payment-schedule-item.paid{border-left-color:#10b981}.payment-schedule-item.overdue{border-left-color:#ef4444}.payment-schedule-item__header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.payment-schedule-item__milestone{color:var(--text);font-weight:600}.payment-schedule-item__amount{color:var(--accent);font-weight:700}.payment-schedule-item__details{color:var(--muted);gap:16px;margin-bottom:8px;font-size:13px;display:flex}.payment-schedule-item__status{align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.payment-schedule-item__status.paid{color:#10b981}.payment-schedule-item__status.overdue{color:#ef4444}.payment-schedule-item__status.pending{color:#f59e0b}.payment-schedule-summary{border-top:1px solid var(--surface-line);flex-direction:column;gap:8px;margin-top:16px;padding-top:16px;display:flex}.payment-schedule-summary__row{justify-content:space-between;font-size:14px;display:flex}.payment-schedule-summary__row strong{font-weight:600}.clearance-checklist-panel{padding:24px}.clearance-alert{border-radius:var(--radius-md);margin-bottom:16px;padding:12px 16px;font-size:14px}.clearance-alert.blockers{color:#dc2626;background:#ef44441a;border:1px solid #ef444433}.clearance-alert.warnings{color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b33}.clearance-list{flex-direction:column;gap:8px;display:flex}.clearance-item{background:var(--surface);border-radius:var(--radius-md);gap:12px;padding:12px;display:flex}.clearance-item.pass .clearance-item__icon svg circle{fill:#10b981}.clearance-item.fail .clearance-item__icon svg circle,.clearance-item.blocker .clearance-item__icon svg circle{fill:#ef4444}.clearance-item.warn .clearance-item__icon svg circle{fill:#f59e0b}.clearance-item__content{flex:1}.clearance-item__header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.clearance-item__name{color:var(--text);font-weight:500}.clearance-item__badge{text-transform:uppercase;color:#fff;background:#ef4444;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.clearance-item__description{color:var(--muted);margin:0 0 4px;font-size:13px}.clearance-item__completed{color:#10b981;font-size:12px}.booking-page-stack{gap:12px}@media (max-width:1080px){.booking-builder-layout,.booking-read-layout,.booking-read-meta,.booking-cabin-card{grid-template-columns:1fr}.booking-builder-summary{position:static}}@media (max-width:720px){.booking-side-panel{padding:18px}}.confirmation-breadcrumb{padding-top:10px}.confirmation-page{gap:var(--space-lg);display:grid}.confirmation-content{text-align:center;justify-items:center;gap:var(--space-lg);display:grid}.confirmation-icon{margin-bottom:0}.confirmation-title{font-size:var(--font-size-2xl);color:var(--text);margin:0;font-weight:700}.confirmation-heading{text-align:center;justify-items:center}.booking-status-heading{text-align:left;justify-items:start}.booking-status-heading__notice{color:var(--muted);font-size:var(--font-size-sm)}.confirmation-heading p{max-width:760px}.confirmation-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:0;display:flex}.confirmation-actions .primary-button,.confirmation-actions .ghost-button{min-height:48px;padding:0 28px}.confirmation-summary{gap:var(--space-lg);text-align:left;display:grid}.confirmation-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.confirmation-summary-item{border-radius:var(--radius-md);background:#ffffffd1;border:1px solid #10273614;gap:4px;padding:12px;display:grid}.confirmation-summary-item strong{font-size:var(--font-size-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.confirmation-summary-item span{font-size:var(--font-size-md);color:var(--text)}.confirmation-subtitle{font-size:var(--font-size-lg);color:var(--text);margin:0}.confirmation-rooms{gap:10px;display:grid}.confirmation-room-line,.confirmation-total-line{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.confirmation-room-line{border-top:1px solid #10273614;padding:10px 0}.confirmation-room-line:first-of-type{border-top:0;padding-top:0}.confirmation-room-line__info{align-content:start;gap:4px;row-gap:min(10px, var(--space-sm,12px));display:grid}.confirmation-room-line__info span{color:var(--muted);font-size:var(--font-size-sm)}.confirmation-room-line__price{white-space:nowrap}.confirmation-total-block{border-top:1px solid #10273614;gap:10px;padding-top:10px;display:grid}.confirmation-total-line--grand{font-size:var(--font-size-lg)}.confirmation-note{display:grid}.confirmation-guests{gap:10px;display:grid}.confirmation-guest-line{border-radius:var(--radius-md);background:#ffffffd1;border:1px solid #10273614;gap:4px;padding:12px;display:grid}.confirmation-guest-line span{color:var(--muted);font-size:var(--font-size-sm)}.booking-offer-page__confirmation-summary{gap:10px}.booking-offer-page__confirmation-summary .confirmation-note{color:var(--muted);font-size:var(--font-size-xs);margin:0}.booking-offer-page__onboard-fee{color:var(--muted)}.confirmation-closing{font-size:var(--font-size-md);line-height:var(--line-height-loose);color:var(--text);gap:8px;margin:0;display:grid}.confirmation-closing strong{display:block}@media (max-width:600px){.confirmation-title{font-size:var(--font-size-xl)}.confirmation-actions{flex-direction:column}.confirmation-actions .primary-button,.confirmation-actions .ghost-button{width:100%}.confirmation-summary-grid{grid-template-columns:1fr}.confirmation-room-line,.confirmation-total-line{flex-direction:column}}.booking-cabin-card .vessel-card-gallery{border-radius:0;align-self:start;width:100%;position:relative;overflow:hidden;gap:0!important}.booking-cabin-card .vessel-card-gallery__hero{background-color:#f4f8f8;background-position:top;background-repeat:no-repeat;background-size:contain;border-radius:0;height:135px;min-height:135px;position:relative}.booking-cabin-card .vessel-card-gallery__placeholder{border-radius:0;height:135px;min-height:135px}.booking-cabin-card .vessel-card-gallery__nav{display:none}.booking-cabin-card .vessel-card-gallery__thumbs{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#001f2747;border-radius:999px;justify-content:center;gap:7px;width:max-content;max-width:calc(100% - 24px);padding:5px 7px;display:flex;position:absolute;top:100px;bottom:auto;left:50%;overflow:visible;transform:translate(-50%)}.booking-cabin-card .vessel-card-gallery__thumb{background:#ffffff8f;border:1px solid #ffffffe6;border-radius:999px;width:8px;height:8px;padding:0;background-image:none!important}.booking-cabin-card .vessel-card-gallery__thumb--active{background:#fff;width:20px}.booking-cabin-card__amenities{border-top:1px solid #10273614;grid-column:1/-1;padding-top:0}.booking-collection__profile-tab-status.booking-collection__status-icon{width:18px;min-width:18px;height:18px;box-shadow:none;background:0 0;border-radius:0;padding:0}.booking-collection__profile-tab-status.booking-collection__status-icon.is-complete{color:var(--color-success,var(--staff-color-success,#2f8f5b));background:0 0}.booking-collection__profile-tab-status.booking-collection__status-icon.is-missing{color:var(--color-warning,var(--staff-color-warning,#b07a1a));background:0 0}.booking-steps__list--location{flex-wrap:wrap;gap:8px;display:flex}.booking-steps__list--location .booking-steps__item{text-align:left;border:1px solid var(--staff-color-border-soft);background:var(--staff-color-bg-subtle);border-radius:999px;align-items:center;gap:5px;padding:8px 12px;display:flex}.booking-steps__list--location .booking-steps__item:after{display:none}.booking-steps__list--location .booking-steps__circle{width:24px;height:24px;font-size:var(--staff-font-size-xs);flex-shrink:0;justify-content:center;align-items:center;margin:0;display:inline-flex}.booking-steps__list--location .booking-steps__label{font-size:var(--staff-font-size-xs);color:var(--staff-color-error);font-weight:var(--staff-font-weight-medium);margin-top:0}.booking-steps__list--location .booking-steps__item.is-complete .booking-steps__circle{background:var(--staff-color-success-bg);border-color:var(--staff-color-success);color:var(--staff-color-success);box-shadow:none}.booking-steps__list--location .booking-steps__item.is-complete{background:#2f8f5b14;border-color:#2f8f5b38}.booking-steps__list--location .booking-steps__item.is-complete .booking-steps__label{color:var(--staff-color-success);font-weight:var(--staff-font-weight-semibold)}.booking-steps__list--location .booking-steps__item.is-current .booking-steps__circle{background:var(--staff-color-warning-bg);border-color:var(--staff-color-warning);color:var(--staff-color-warning);box-shadow:none}.booking-steps__list--location .booking-steps__item.is-current{background:#d9770614;border-color:#d977063d}.booking-steps__list--location .booking-steps__item.is-current .booking-steps__label{color:var(--staff-color-warning);font-weight:var(--staff-font-weight-semibold)}.booking-steps__list--location .booking-steps__item:not(.is-complete):not(.is-current) .booking-steps__circle{background:var(--staff-color-error-bg);border-color:var(--staff-color-error);color:var(--staff-color-error)}.booking-steps__list--location .booking-steps__item:not(.is-complete):not(.is-current){background:#be185d0f;border-color:#be185d2e}.booking-steps__list--location .booking-steps__item:not(.is-complete):not(.is-current) .booking-steps__label{color:var(--staff-color-error)}
