/* Kría portal CSS, scoped under .c3p for the hero phone (generated from uploads/hero-southcoast/css, values unmodified).
   Media queries resolved for a 402x808 touch viewport; vh/vw resolved to that viewport; keyframes dropped (all motion is timeline-driven). */
/* palette-tokens.css */
.c3p,.c3p[data-theme="eclipse"]{--accent-star: oklch(0.88 0.075 70); --accent: #d97d27; --accent-deep: color-mix(in srgb, #d97d27 60%, #000); --accent-soft: color-mix(in srgb, #d97d27 12%, transparent); --accent-glow: color-mix(in srgb, #d97d27 18%, transparent); --accent-border: color-mix(in srgb, #d97d27 22%, transparent); --accent-bleed-1: color-mix(in srgb, #d97d27 40%, transparent); --accent-bleed-2: color-mix(in srgb, #d97d27 20%, transparent); --accent-bleed-3: color-mix(in srgb, #d97d27 8%, transparent); --text-on-accent: #ffffff;}
.c3p[data-theme="linen"]{--accent-star: oklch(0.88 0.075 85); --accent: oklch(0.55 0.04 75); --accent-deep: oklch(0.23 0.04 75); --accent-soft: oklch(0.55 0.04 75 / 0.12); --accent-glow: oklch(0.55 0.04 75 / 0.18); --accent-border: oklch(0.55 0.04 75 / 0.22); --accent-bleed-1: oklch(0.55 0.04 75 / 0.40); --accent-bleed-2: oklch(0.55 0.04 75 / 0.20); --accent-bleed-3: oklch(0.55 0.04 75 / 0.08); --text-on-accent: oklch(99% 0.010 75);}
.c3p[data-theme="cobalt"]{--accent-star: oklch(0.88 0.060 215); --accent: oklch(0.72 0.075 220); --accent-text: oklch(0.52 0.090 220); --accent-deep: oklch(0.40 0.075 220); --accent-soft: oklch(0.72 0.075 220 / 0.12); --accent-glow: oklch(0.72 0.075 220 / 0.18); --accent-border: oklch(0.72 0.075 220 / 0.22); --accent-bleed-1: oklch(0.72 0.075 220 / 0.40); --accent-bleed-2: oklch(0.72 0.075 220 / 0.20); --accent-bleed-3: oklch(0.72 0.075 220 / 0.08); --text-on-accent: oklch(99% 0.010 220);}
.c3p[data-theme="cobalt"][data-mode="dark"]{--accent-text: oklch(0.72 0.075 220);}
.c3p[data-theme="ember"]{--accent-star: oklch(0.88 0.070 40); --accent: oklch(0.65 0.19 30); --accent-deep: oklch(0.33 0.19 30); --accent-soft: oklch(0.65 0.19 30 / 0.12); --accent-glow: oklch(0.65 0.19 30 / 0.18); --accent-border: oklch(0.65 0.19 30 / 0.22); --accent-bleed-1: oklch(0.65 0.19 30 / 0.40); --accent-bleed-2: oklch(0.65 0.19 30 / 0.20); --accent-bleed-3: oklch(0.65 0.19 30 / 0.08); --text-on-accent: oklch(99% 0.010 30);}
.c3p[data-theme="moss"]{--accent-star: oklch(0.88 0.060 150); --accent: oklch(0.45 0.06 145); --accent-deep: oklch(0.18 0.06 145); --accent-soft: oklch(0.45 0.06 145 / 0.12); --accent-glow: oklch(0.45 0.06 145 / 0.18); --accent-border: oklch(0.45 0.06 145 / 0.22); --accent-bleed-1: oklch(0.45 0.06 145 / 0.40); --accent-bleed-2: oklch(0.45 0.06 145 / 0.20); --accent-bleed-3: oklch(0.45 0.06 145 / 0.08); --text-on-accent: oklch(99% 0.010 145);}
.c3p[data-theme="moss"][data-mode="dark"]{--accent: oklch(0.58 0.065 148); --accent-deep: oklch(0.26 0.065 148); --accent-soft: oklch(0.58 0.065 148 / 0.12); --accent-glow: oklch(0.58 0.065 148 / 0.18); --accent-border: oklch(0.58 0.065 148 / 0.22); --accent-bleed-1: oklch(0.58 0.065 148 / 0.40); --accent-bleed-2: oklch(0.58 0.065 148 / 0.20); --accent-bleed-3: oklch(0.58 0.065 148 / 0.08); --text-on-accent: oklch(99% 0.010 148);}
.c3p[data-theme="graphite"]{--accent: oklch(0.30 0.005 280); --accent-deep: oklch(0.18 0.005 280); --accent-soft: oklch(0.30 0.005 280 / 0.12); --accent-glow: oklch(0.30 0.005 280 / 0.18); --accent-border: oklch(0.30 0.005 280 / 0.22); --accent-bleed-1: oklch(0.30 0.005 280 / 0.40); --accent-bleed-2: oklch(0.30 0.005 280 / 0.20); --accent-bleed-3: oklch(0.30 0.005 280 / 0.08); --text-on-accent: oklch(99% 0.005 280);}
.c3p[data-theme="graphite"][data-mode="dark"]{--accent: oklch(0.92 0.005 280); --accent-deep: oklch(0.60 0.005 280); --accent-soft: oklch(0.92 0.005 280 / 0.12); --accent-glow: oklch(0.92 0.005 280 / 0.18); --accent-border: oklch(0.92 0.005 280 / 0.22); --accent-bleed-1: oklch(0.92 0.005 280 / 0.40); --accent-bleed-2: oklch(0.92 0.005 280 / 0.20); --accent-bleed-3: oklch(0.92 0.005 280 / 0.08); --text-on-accent: oklch(18% 0.005 280);}
.c3p{--portal-accent: var(--accent); --portal-accent-deep: var(--accent-deep); --brand: var(--accent); --brand-text: var(--accent-text, var(--accent)); --brand-star: var(--accent-star, color-mix(in srgb, var(--accent) 45%, #ffffff)); --brand-dark: var(--accent-deep); --brand-glow: var(--accent-glow); --brand-border: var(--accent-border); --brand-glow-subtle: var(--accent-soft); --on-accent: var(--text-on-accent);}
/* chrome-tokens.css */
.c3p,.c3p[data-mode="dark"]{--t-page-bg: #0b0b0d; --t-card-bg: #1c1c22; --t-chip-bg: rgba(245, 240, 232, 0.04); --t-chip-border: rgba(245, 240, 232, 0.08); --t-backdrop-rgb: 11, 11, 13; --t-divider-rgb: 245, 240, 232; --t-text: #f5f0e8; --t-text-hi: #f0f0f0; --t-text-mid: #888; --t-text-lo: #777; --t-text-x-lo: #666; --t-text-xx-lo: #555; --t-text-faint: #444; --t-text-on-accent: #1a1a1e; --t-pill-bg: rgba(255, 255, 255, 0.04); --t-pill-border: rgba(255, 255, 255, 0.10); --t-pill-text: #bbb; --t-menu-bg: #1c1c22; --t-menu-border: rgba(255, 255, 255, 0.10); --t-menu-divider: rgba(255, 255, 255, 0.06); --t-menu-shadow: 0 12px 36px rgba(0, 0, 0, 0.5); --t-card-border: rgba(255, 255, 255, 0.06); --t-card-border-hi: rgba(255, 255, 255, 0.12); --t-btn-ghost-bg: rgba(255, 255, 255, 0.05); --t-btn-ghost-border: rgba(255, 255, 255, 0.10); --t-btn-ghost-text: #aaa; --t-status-bg: rgba(12, 32, 12, 0.80); --t-status-text: #97C459; --t-status-border: rgba(151, 196, 89, 0.45); --t-tag-bg: rgba(0, 0, 0, 0.7); --t-tab-active: #f5f0e8; --t-tab-idle: rgba(245, 240, 232, 0.45); --t-tab-bg: rgba(245, 240, 232, 0.04); --t-tab-bg-active: rgba(245, 240, 232, 0.10); --t-tab-border: rgba(245, 240, 232, 0.08); --t-operator-ring: rgba(245, 240, 232, 0.15); --t-operator-text: rgba(245, 240, 232, 0.7); --t-eyebrow: rgba(245, 240, 232, 0.45); --t-spine-dot: #0b0b0d; --t-spine: rgba(255, 255, 255, 0.10);}
.c3p[data-mode="light"]{--t-page-bg: #f7f0e8; --t-card-bg: #ffffff; --t-chip-bg: rgba(20, 18, 14, 0.04); --t-chip-border: rgba(20, 18, 14, 0.10); --t-backdrop-rgb: 247, 240, 232; --t-divider-rgb: 20, 18, 14; --t-text: #1a1814; --t-text-hi: #0d0c0a; --t-text-mid: #6a655d; --t-text-lo: #7a756c; --t-text-x-lo: #8a857c; --t-text-xx-lo: #9a958c; --t-text-faint: #bdb8af; --t-text-on-accent: #1a1a1e; --t-pill-bg: rgba(20, 18, 14, 0.04); --t-pill-border: rgba(20, 18, 14, 0.12); --t-pill-text: #3d3a34; --t-menu-bg: #ffffff; --t-menu-border: rgba(20, 18, 14, 0.10); --t-menu-divider: rgba(20, 18, 14, 0.06); --t-menu-shadow: 0 12px 36px rgba(40, 30, 20, 0.12); --t-card-border: rgba(20, 18, 14, 0.08); --t-card-border-hi: rgba(20, 18, 14, 0.18); --t-btn-ghost-bg: rgba(20, 18, 14, 0.04); --t-btn-ghost-border: rgba(20, 18, 14, 0.12); --t-btn-ghost-text: #3d3a34; --t-status-bg: rgba(220, 235, 210, 0.95); --t-status-text: #3f6a1f; --t-status-border: rgba(151, 196, 89, 0.55); --t-tag-bg: rgba(255, 255, 255, 0.85); --t-tab-active: #1a1814; --t-tab-idle: rgba(20, 18, 14, 0.45); --t-tab-bg: rgba(20, 18, 14, 0.04); --t-tab-bg-active: rgba(20, 18, 14, 0.08); --t-tab-border: rgba(20, 18, 14, 0.10); --t-operator-ring: rgba(20, 18, 14, 0.15); --t-operator-text: rgba(20, 18, 14, 0.7); --t-eyebrow: rgba(20, 18, 14, 0.50); --t-spine-dot: #f5f0e8; --t-spine: rgba(20, 18, 14, 0.12);}
/* style.css */
.c3p{--bg-shell: var(--t-page-bg); --bg-page: var(--t-page-bg); --bg-card: var(--t-card-bg); --bg-input: var(--t-card-bg); --bg-subtle: var(--t-chip-bg); --bg-button: var(--t-pill-bg); --bg-button-hover: color-mix(in srgb, var(--t-text) 8%, transparent); --border: var(--t-card-border); --border-hover: var(--t-card-border-hi); --border-shell: var(--t-card-border-hi); --text-primary: var(--t-text-hi); --text-secondary: var(--t-text-mid); --text-muted: var(--t-text-x-lo); --text-hint: var(--t-text-xx-lo); --text-faint: var(--t-text-faint); --drawer-surface-bg: #ffffff; --drawer-surface-text-muted: #6b6b6b;}
.c3p{--brand: var(--portal-accent, #d97d27); --brand-text: var(--accent-text, var(--portal-accent, #d97d27)); --brand-star: var(--accent-star, color-mix(in srgb, var(--brand) 45%, #ffffff)); --brand-dark: var(--portal-accent-deep, #825619); --brand-glow: color-mix(in srgb, var(--brand) 10%, transparent); --brand-glow-subtle: color-mix(in srgb, var(--brand) 5%, transparent); --brand-border: color-mix(in srgb, var(--brand) 15%, transparent); --status-green-bg: rgba(0,0,0,0.5); --status-green-text: #97C459; --danger: #E24B4A; --danger-border: rgba(226,75,74,0.2); --action-accent: var(--brand); --radius-sm: 6px; --radius-md: 8px; --radius-lg: 10px; --radius-xl: 12px; --radius-2xl: 14px; --radius-card: 14px; --spine-x: 10px; --spine-w: 3px; --tl-indent: 32px; --dot-left: -20.5px;}
.c3p *,.c3p *::before,.c3p *::after{box-sizing: border-box; margin: 0; padding: 0;}
.c3p{--font-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif; --font-tabs: 'Inter Tight', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; --font-mono: 'JetBrains Mono', ui-monospace, monospace;}
.c3p,.c3p .c3p-body{background: var(--bg-page); overscroll-behavior: none;}
.c3p .c3p-body{background: var(--bg-shell); color: var(--text-primary); font-family: 'Schibsted Grotesk', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; -webkit-font-smoothing: antialiased; min-height: 808px; min-height: 808px; overflow-x: hidden;}
.c3p .app-wrapper{background: var(--bg-page); max-width: 640px; margin: 0 auto 16px; min-height: 808px; min-height: 808px; border-radius: 0 0 var(--radius-2xl) var(--radius-2xl); border: 1.5px solid var(--border-shell); border-top: 0; overflow: clip; position: relative;}
.c3p .app-wrapper{max-width: 100%; margin: 0; min-height: 808px; min-height: 808px; border-radius: 0; border: none;}
.c3p #entry-screen,.c3p #timeline-view,.c3p #manage-view{display: none;}
.c3p .view-inner{width: 100%; box-sizing: border-box; padding: 18px 16px 48px;}
.c3p .btn-nav{display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,0.05); border: 0.5px solid var(--border-hover); border-radius: 100px; cursor: pointer; font-size: 12px; font-weight: 500; color: var(--text-secondary); font-family: inherit; padding: 6px 12px 6px 10px; margin-bottom: 20px; transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;}
.c3p .btn-back-bottom{display: block; width: 100%; margin-top: 18px; padding: 13px; background: var(--bg-button); border: 0.5px solid var(--border-hover); border-radius: var(--radius-lg); color: var(--text-secondary); font-family: inherit; font-size: 13px; font-weight: 500; text-align: center; cursor: pointer; transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;}
.c3p .manage-back-top{display: none;}
.c3p .rs-panel:has(.btn-back-bottom) > .btn-nav{display: none;}
.c3p .mv-terminal .manage-back-top,.c3p .mv-terminal .manage-back-bottom{display: none;}
.c3p .label-short{display: inline;}
.c3p .label-full{display: none;}
.c3p .skel-line{display: block; border-radius: 6px; background: linear-gradient( 90deg, #222228 25%, #2c2c38 50%, #222228 75% ); background-size: 1600px 100%; animation: shimmer 1.4s ease-in-out infinite;}
.c3p .spinner{display: inline-block; width: 16px; height: 16px; border: 2px solid rgba(26,26,30,0.35); border-top-color: #1a1a1e; border-radius: 50%; animation: spin 0.6s linear infinite; vertical-align: middle; margin-right: 8px; flex-shrink: 0;}
.c3p .booking-card{opacity: 0; transform: translateY(12px);}
.c3p .booking-card.card-visible{opacity: 1; transform: translateY(0); transition: opacity 0.4s ease-out, transform 0.4s ease-out, border-color 0.18s ease, box-shadow 0.18s ease;}
.c3p .booking-card.is-past.card-visible{opacity: 0.4;}
.c3p #entry-screen{position: fixed; inset: 0; z-index: 10; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; background: var(--bg-page);}
.c3p #entry-screen{background: radial-gradient(ellipse 85% 55% at 50% -8%, color-mix(in srgb, var(--brand) 14%, transparent) 0%, color-mix(in srgb, var(--brand) 0%, transparent) 65%), radial-gradient(ellipse 70% 45% at 50% 108%, rgba(150, 120, 100, 0.12) 0%, rgba(150, 120, 100, 0.00) 65%), var(--bg-page);}
.c3p .entry-inner{width: 100%; max-width: 380px; text-align: center;}
.c3p .entry-logo{display: block; margin: 0 auto; width: 260px; max-width: 80%; height: auto; mix-blend-mode: lighten; margin-top: -22px; margin-bottom: -16px;}
.c3p .entry-subtitle{font-size: 13px; color: var(--text-secondary); margin-bottom: 12px;}
.c3p .form-card{background: var(--bg-card); border-radius: 14px; border: 0.5px solid var(--border); padding: 16px; text-align: left; width: 100%;}
.c3p .form-group{margin-bottom: 12px;}
.c3p .form-group--last{margin-bottom: 0;}
.c3p .form-label{display: block; font-size: 11.5px; font-weight: 500; color: var(--text-muted); margin-bottom: 4px; letter-spacing: 0.01em;}
.c3p .form-input{width: 100%; background: var(--bg-input); border: 0.5px solid var(--border); border-radius: var(--radius-lg); padding: 11px 13px; font-size: 16px; font-family: inherit; color: var(--text-primary); outline: none; transition: border-color 0.15s ease; -webkit-appearance: none;}
.c3p .form-input::placeholder{color: var(--text-hint);}
.c3p .form-input:focus{border-color: var(--brand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 12%, transparent);}
.c3p .form-input:-webkit-autofill,.c3p .form-input:-webkit-autofill:hover,.c3p .form-input:-webkit-autofill:focus,.c3p .form-input:-webkit-autofill:active{-webkit-box-shadow: 0 0 0 1000px var(--bg-input) inset !important; -webkit-text-fill-color: var(--text-primary) !important; caret-color: var(--text-primary) !important; transition: background-color 9999s ease-in-out 0s;}
.c3p .btn-submit{display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 14px; padding: 12px 14px; background: var(--brand); color: var(--text-on-accent, #1a1a1e); border: none; border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: filter 0.15s ease, transform 0.1s ease;}
.c3p .btn-submit:active:not(.loading){transform: scale(0.97);}
.c3p .btn-submit.loading{opacity: 0.7; pointer-events: none;}
.c3p .form-error{margin-top: 12px; min-height: 18px;}
.c3p .entry-helper{margin-top: 16px; font-size: 11px; color: var(--text-faint); text-align: center;}
.c3p .err-card{background: rgba(226,75,74,0.08); border: 0.5px solid rgba(226,75,74,0.2); border-radius: 10px; padding: 14px; display: flex; flex-direction: column; gap: 10px;}
.c3p .err-card--gentle{background: color-mix(in srgb, var(--brand) 6%, transparent); border: 0.5px solid var(--brand-border);}
.c3p .err-card--gentle .err-card-msg{color: var(--text-secondary);}
.c3p .err-card-msg{font-size: 14px; line-height: 1.45; color: var(--danger);}
.c3p .err-card-actions{display: flex; gap: 8px;}
.c3p .btn-err-retry,.c3p .btn-err-back{flex: 1; padding: 9px 12px; border-radius: var(--radius-md); font-family: inherit; font-size: 13px; font-weight: 500; cursor: pointer; transition: background 0.15s ease, transform 0.1s ease;}
.c3p .btn-err-retry{background: var(--danger); color: #fff; border: none;}
.c3p .btn-err-retry:active{transform: scale(0.97);}
.c3p .btn-err-back{background: rgba(255,255,255,0.04); border: 0.5px solid var(--border-hover); color: #bbb;}
.c3p .btn-err-back:active{transform: scale(0.97);}
.c3p .entry-helper{font-size: 11px; color: var(--text-faint); text-align: center; margin-top: 14px;}
.c3p #timeline-view{position: relative; overflow: hidden; height: 808px; height: 808px;}
.c3p #timeline-view{min-height: 808px; min-height: 808px;}
.c3p .tl-topbar{display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px;}
.c3p .tl-topbar .btn-nav{margin-bottom: 0;}
.c3p .btn-nav--end{padding: 6px 10px 6px 12px;}
.c3p .tl-header{text-align: center; margin-bottom: 16px;}
.c3p .tl-greeting{font-size: 20px; font-weight: 500; color: var(--text-primary); letter-spacing: -0.01em; margin: 0;}
.c3p .tl-lede{font-size: 14px; color: var(--text-secondary); line-height: 1.5; margin: 6px auto 0; max-width: 440px;}
.c3p .tl-countdown{font-size: 13px; color: var(--text-muted, var(--text-secondary)); margin: 8px 0 0;}
.c3p .tl-countdown:empty{display: none;}
.c3p .tl-countdown-name{color: var(--brand-text);}
.c3p .tl-spine{position: relative; padding-left: var(--tl-indent);}
.c3p .tl-items{display: flex; flex-direction: column;}
.c3p .tl-date-group{position: relative; margin-bottom: 6px;}
.c3p .tl-segment{position: absolute; left: var(--dot-left); transform: translateX(-50%); top: 25px; bottom: -6px; width: var(--spine-w); background: var(--t-spine); border-radius: 2px; pointer-events: none; -webkit-mask-image: linear-gradient( 180deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100% ); mask-image: linear-gradient( 180deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100% );}
.c3p .tl-dot{position: absolute; left: var(--dot-left); top: 4px; width: 9px; height: 9px; border-radius: 50%; background: var(--t-spine-dot); border: 2px solid var(--t-text-xx-lo); box-sizing: content-box; transform: translateX(-50%);}
.c3p .tl-date-label{font-size: 12px; font-weight: 500; color: var(--t-text-hi); letter-spacing: 0.02em; margin: 2px 0;}
.c3p .tl-gap{position: relative; display: flex; align-items: center; gap: 10px; padding: 0; margin: 0; min-height: 68px;}
.c3p .tl-date-group:has(+ .tl-gap){margin-bottom: 0;}
.c3p .tl-date-group:has(+ .tl-gap) .booking-card:last-child{margin-bottom: 0;}
.c3p .tl-gap + .tl-date-group .tl-date-label{margin-top: 0;}
.c3p .tl-gap + .tl-date-group .tl-dot{top: 2px;}
.c3p .tl-gap-dot{display: none;}
.c3p .tl-gap-label{font-size: 10px; font-weight: 500; color: var(--t-text-x-lo); letter-spacing: 0.04em; text-transform: uppercase; background: var(--t-pill-bg); border: 0.5px solid var(--t-pill-border); border-radius: 10px; padding: 3px 10px; white-space: nowrap;}
.c3p .booking-card{background: var(--bg-card); border: 0.5px solid var(--border); border-radius: 10px; overflow: hidden; margin-top: 8px; margin-bottom: 10px; position: relative;}
.c3p .bc-img-wrap{position: relative; height: 64px; overflow: hidden;}
.c3p .bc-img{display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease;}
.c3p .bc-img-fallback{width: 100%; height: 100%; background: linear-gradient(135deg, #412402, var(--brand-dark));}
.c3p .bc-badge{position: absolute; top: 8px; right: 8px; font-size: 10px; font-weight: 600; padding: 3px 9px; border-radius: 8px; background: rgba(12, 32, 12, 0.80); color: var(--status-green-text); border: 0.5px solid rgba(151,196,89,0.45); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); text-transform: capitalize; letter-spacing: 0.02em; z-index: 1;}
.c3p .bc-badge--other{color: rgba(255,255,255,0.7);}
.c3p .bc-body{padding: 10px 12px;}
.c3p .bc-name{font-size: 14px; font-weight: 600; color: var(--text-primary); letter-spacing: -0.01em;}
.c3p .bc-details{font-size: 12px; color: #777; margin: 3px 0 10px;}
.c3p .bc-actions{display: flex; gap: 6px;}
.c3p .btn-ticket{flex: 1; padding: 9px; background: var(--brand); color: var(--text-on-accent, #1a1a1e); border: none; border-radius: var(--radius-md); font-size: 13px; font-weight: 600; font-family: inherit; cursor: pointer; transition: filter 0.15s ease, transform 0.1s ease;}
.c3p .btn-ticket:active{transform: scale(0.97);}
.c3p .btn-manage{flex: 1; padding: 9px; background: var(--bg-button); border: 0.5px solid var(--border-hover); border-radius: var(--radius-md); font-size: 13px; font-family: inherit; color: var(--t-btn-ghost-text); cursor: pointer; transition: background 0.15s ease, transform 0.1s ease;}
.c3p .btn-manage:active{transform: scale(0.97);}
.c3p .bc-past-note{font-size: 12px; color: var(--text-hint); font-style: italic;}
.c3p #manage-view{position: absolute; inset: 0; z-index: 20; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; background: var(--bg-page); flex-direction: column; opacity: 0; transform: translateY(10px); transition: opacity 380ms ease, transform 380ms cubic-bezier(0.22, 0.61, 0.36, 1); will-change: opacity, transform;}
.c3p #manage-view.mv-open{opacity: 1; transform: none;}
.c3p .mcard{background: var(--bg-card); border: 0.5px solid var(--border); border-radius: 12px; overflow: hidden;}
.c3p .mcard-img-wrap{position: relative; height: 120px; overflow: hidden;}
.c3p .mcard-img{display: block; width: 100%; height: 100%; object-fit: cover;}
.c3p .mcard-img-fallback{width: 100%; height: 100%; background: linear-gradient(135deg, #412402, var(--brand-dark));}
.c3p .mcard-badge{position: absolute; top: 10px; right: 10px; font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 8px; background: rgba(12, 32, 12, 0.80); color: var(--status-green-text); border: 0.5px solid rgba(151,196,89,0.45); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); text-transform: capitalize; letter-spacing: 0.02em; z-index: 1;}
.c3p .mcard-badge--other{color: rgba(255,255,255,0.7);}
.c3p .img-back{position: absolute; top: 10px; left: 10px; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; padding: 0; border: none; border-radius: 50%; background: rgba(10, 10, 14, 0.28); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); color: rgba(255, 255, 255, 0.92); cursor: pointer; z-index: 2; -webkit-tap-highlight-color: transparent; transition: background 0.15s ease, transform 0.1s ease;}
.c3p .img-back:active{transform: scale(0.94);}
.c3p .mcard-body{padding: 14px;}
.c3p .mcard-name{font-size: 18px; font-weight: 700; color: var(--text-primary); letter-spacing: -0.02em;}
.c3p .mcard-date{font-size: 13px; color: var(--brand-text); font-weight: 500; margin: 5px 0 0;}
.c3p .mcard-details{border-top: 0.5px solid var(--border); margin-top: 14px; padding-top: 12px; display: flex; flex-direction: column;}
.c3p .mcard-row{display: flex; gap: 8px; font-size: 13px; padding: 5px 0;}
.c3p .mcard-key{color: var(--text-muted); width: 120px; flex-shrink: 0;}
.c3p .mcard-val{color: var(--t-text-hi); flex: 1;}
.c3p .mcard-val--green{color: var(--status-green-text);}
.c3p .mcard-val--danger{color: var(--danger);}
.c3p .mcard-directions-link{display: block; margin-top: 4px; font-size: 12px; color: var(--brand-text); text-decoration: none;}
.c3p .mcard-val--mono{font-family: var(--font-mono); font-size: 11px; color: var(--t-text-mid);}
.c3p .mcard-btns{margin-top: 16px;}
.c3p .btn-download{display: block; width: 100%; padding: 13px; background: var(--brand); color: var(--text-on-accent, #1a1a1e); border: none; border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; margin-bottom: 8px; transition: filter 0.15s ease, transform 0.1s ease;}
.c3p .btn-download:active{transform: scale(0.97);}
.c3p .mcard-actions{display: flex; flex-direction: column; gap: 6px;}
.c3p .btn-action{padding: 12px; background: var(--bg-button); border: 0.5px solid var(--border-hover); border-radius: var(--radius-lg); font-size: 14px; font-family: inherit; color: var(--t-btn-ghost-text); cursor: pointer; text-align: center; transition: background 0.15s ease, transform 0.1s ease;}
.c3p .btn-action:active{transform: scale(0.97);}
.c3p .btn-action--primary{background: #d97d27; color: #fff; border-color: #d97d27; font-weight: 600;}
.c3p .btn-action--cancel{color: var(--danger); grid-column: 1 / -1;}
.c3p .btn-action--solo{grid-column: 1 / -1;}
.c3p .mcard-no-changes{font-size: 13px; color: var(--text-secondary); background: var(--bg-subtle); border-radius: var(--radius-md); padding: 12px; line-height: 1.55;}
.c3p .mcard-no-changes a{color: var(--brand-text); text-decoration: none;}
.c3p .mcard-footer{font-size: 11px; color: var(--text-hint); background: var(--bg-subtle); border-radius: var(--radius-md); padding: 9px 12px; margin-top: 10px; text-align: center;}
.c3p .rs-panel{width: 100%; box-sizing: border-box; background: var(--bg-card); border: 0.5px solid var(--border); border-radius: var(--radius-2xl); overflow: hidden; padding: 16px;}
.c3p .rs-img-wrap{position: relative; height: 120px; overflow: hidden; margin: -16px -16px 16px;}
.c3p .rs-img{display: block; width: 100%; height: 100%; object-fit: cover;}
.c3p .rs-img-fallback{width: 100%; height: 100%; background: linear-gradient(135deg, #412402, var(--brand-dark));}
.c3p .rs-img-wrap::after{content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.55) 100%); pointer-events: none;}
.c3p .rs-current-booking{font-size: 13px; color: var(--brand-text); margin-bottom: 14px; display: flex; align-items: center; gap: 6px;}
.c3p .rs-loading{display: flex; align-items: center; gap: 10px; color: var(--text-secondary); font-size: 14px; padding: 12px 0;}
.c3p .rs-tour-name{font-size: 16px; font-weight: 600; color: var(--text-primary); margin-bottom: 4px; letter-spacing: -0.01em;}
.c3p .rs-step-label{font-size: 13px; color: var(--text-muted); margin-bottom: 16px;}
.c3p .rs-cal{width: 100%; box-sizing: border-box; margin-top: 4px; user-select: none;}
.c3p .rs-cal-header{display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px;}
.c3p .rs-cal-title{font-size: 18px; font-weight: 500; color: var(--text-primary);}
.c3p .rs-cal-nav{width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: var(--bg-button); border: 0.5px solid var(--border-hover); border-radius: var(--radius-md); color: var(--text-secondary); cursor: pointer; transition: background 0.15s ease; flex-shrink: 0;}
.c3p .rs-cal-nav:disabled{opacity: 0.25; cursor: default;}
.c3p .rs-cal-dow{width: 100%; display: grid; grid-template-columns: repeat(7, 1fr); text-align: center; margin-bottom: 4px;}
.c3p .rs-cal-dow span{font-size: 12px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; padding: 6px 0; text-align: center; display: block; width: 100%;}
.c3p .rs-cal-grid{width: 100%; display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px;}
.c3p .rs-cal-cell{aspect-ratio: 1; display: flex; align-items: center; justify-content: center; min-width: 0;}
.c3p .rs-cal-day{width: 85%; aspect-ratio: 1; max-width: 46px; display: flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 14px; color: var(--text-hint); background: none; border: none; font-family: inherit; position: relative; transition: background 0.12s ease; -webkit-tap-highlight-color: transparent;}
.c3p .rs-cal-day.available{color: var(--text-primary); cursor: pointer;}
.c3p .rs-cal-day.selected,.c3p .rs-cal-day.selected:hover{background: var(--action-accent); color: #f5ede6; font-weight: 500;}
.c3p .rs-cal-day.current-date{color: #7FA892; background: rgba(127,168,146,0.13);}
.c3p .rs-cal-day.current-date.available{cursor: pointer;}
.c3p .rs-cal-day.selected.current-date,.c3p .rs-cal-day.selected.current-date:hover{background: var(--action-accent); color: #f5ede6;}
.c3p .rs-cal-day.today::after{content: ''; position: absolute; bottom: 5px; left: 50%; transform: translateX(-50%); width: 4px; height: 4px; border-radius: 50%; background: rgba(255,255,255,0.3);}
.c3p .rs-cal-day.today.selected::after{background: rgba(245,237,230,0.4);}
.c3p .rs-cal-legend{display: flex; gap: 16px; margin-top: 10px; font-size: 11px; color: var(--text-muted);}
.c3p .rs-cal-legend-item{display: flex; align-items: center; gap: 5px;}
.c3p .rs-legend-dot--booked{width: 8px; height: 8px; border-radius: 50%; background: #7FA892; flex-shrink: 0;}
.c3p .rs-legend-dot--selected{width: 8px; height: 8px; border-radius: 50%; background: var(--action-accent); flex-shrink: 0;}
.c3p .rs-no-dates{font-size: 13px; color: var(--text-secondary); padding: 10px 0;}
.c3p .rs-time-section{width: 100%; box-sizing: border-box; max-height: 0; overflow: hidden; opacity: 0; transition: max-height 0.2s ease, opacity 0.2s ease; margin-top: 0;}
.c3p .rs-time-section.expanded{max-height: 260px; opacity: 1; margin-top: 16px;}
.c3p .rs-time-label{font-size: 16px; font-weight: 500; color: var(--text-primary); margin-bottom: 10px;}
.c3p .rs-pills{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px;}
.c3p .rs-pill{display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; min-width: 0; min-height: 44px; padding: 6px 4px; background: var(--bg-card); border: 0.5px solid var(--border-hover); border-radius: var(--radius-md); font-size: 14px; font-family: inherit; color: var(--text-secondary); cursor: pointer; transition: background 0.12s ease, border-color 0.12s ease;}
.c3p .rs-pill-time{display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; font-variant-numeric: tabular-nums;}
.c3p .rs-pill:active{transform: scale(0.97);}
.c3p .rs-pill.selected{background: var(--action-accent); border-color: var(--action-accent); color: #f5ede6; font-weight: 500;}
.c3p .rs-pill--booked{border-color: rgba(127,168,146,0.35); cursor: default;}
.c3p .rs-pill--booked:active{transform: none;}
.c3p .rs-pill-dot{width: 7px; height: 7px; border-radius: 50%; border: 1.5px solid #7FA892; background: none; flex-shrink: 0;}
.c3p .rs-pill--full{cursor: not-allowed; opacity: 0.5;}
.c3p .rs-pill--full .rs-pill-time{text-decoration: line-through; text-decoration-thickness: 0.5px;}
.c3p .rs-pill--full:active{transform: none;}
.c3p .rs-pill-tag{font-size: 9.5px; font-weight: 500; letter-spacing: 0.02em; line-height: 1; color: var(--text-muted, #8a857c); text-transform: uppercase;}
.c3p .btn-reschedule-go{display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 12px; padding: 13px; background: #d97d27; color: #fff; border: none; border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: filter 0.15s ease, transform 0.1s ease;}
.c3p .btn-reschedule-go:active{transform: scale(0.97);}
.c3p .rs-summary{background: var(--bg-subtle); border: 0.5px solid var(--border); border-radius: var(--radius-lg); padding: 14px; margin: 16px 0; display: flex; flex-direction: column; gap: 10px;}
.c3p .rs-summary-row{display: flex; gap: 12px; align-items: baseline;}
.c3p .rs-summary-key{width: 36px; flex-shrink: 0; font-size: 11px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.04em;}
.c3p .rs-summary-val{font-size: 13px; flex: 1;}
.c3p .rs-summary-val--old{color: var(--text-secondary); text-decoration: line-through;}
.c3p .rs-summary-val--new{color: var(--brand-text); font-weight: 500;}
.c3p .rs-error{font-size: 13px; color: var(--danger); margin: 8px 0;}
.c3p .rs-within24h-warning{display: flex; align-items: flex-start; gap: 9px; background: rgba(239,159,39,0.08); border: 1px solid rgba(239,159,39,0.25); border-radius: var(--radius-md); padding: 12px 14px; margin: 0 0 12px; font-size: 13px; color: var(--brand-text); line-height: 1.5;}
.c3p .btn-confirm{display: flex; align-items: center; justify-content: center; width: 100%; padding: 14px; background: var(--brand); color: var(--text-on-accent, #1a1a1e); border: none; border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: filter 0.15s ease, transform 0.1s ease;}
.c3p .btn-confirm:active:not(:disabled){transform: scale(0.97);}
.c3p .btn-confirm:disabled{opacity: 0.6; pointer-events: none;}
.c3p .ci-form{margin: 14px 0 8px;}
.c3p .ci-contact-seller{display: block; text-decoration: none; margin-top: 10px;}
.c3p .ci-phone-error{margin-top: 8px; padding: 8px 10px; background: rgba(226, 75, 74, 0.06); border: 0.5px solid rgba(226, 75, 74, 0.25); border-radius: var(--radius-md); font-size: 12.5px; line-height: 1.5; color: var(--danger);}
.c3p .ci-phone-error[hidden]{display: none;}
.c3p .ci-tour-list{list-style: none; margin: 8px 0 14px; padding: 8px 12px; background: var(--bg-subtle, rgba(255,255,255,0.02)); border: 0.5px solid var(--border-hover); border-radius: var(--radius-lg); font-size: 13px; color: var(--text-secondary); line-height: 1.55;}
.c3p .ci-tour-list-row{padding: 3px 0; white-space: nowrap; overflow: hidden; -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent 100%); mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent 100%);}
.c3p .ci-tour-date{color: var(--text-muted, #888);}
.c3p .ci-no-tours{color: var(--text-secondary); font-size: 13px; margin: 8px 0;}
.c3p .ci-changes{margin: 8px 0 14px; padding: 10px 12px; background: color-mix(in srgb, var(--brand) 6%, transparent); border: 0.5px solid color-mix(in srgb, var(--brand) 20%, transparent); border-radius: var(--radius-lg); display: flex; flex-direction: column; gap: 8px;}
.c3p .ci-change-row{display: flex; justify-content: space-between; gap: 10px; align-items: baseline; font-size: 13px;}
.c3p .ci-change-field{color: var(--text-secondary); font-weight: 500; flex-shrink: 0;}
.c3p .ci-change-vals{display: flex; gap: 6px; align-items: baseline; flex-wrap: wrap; justify-content: flex-end; min-width: 0;}
.c3p .ci-change-before{color: var(--text-muted, #888); text-decoration: line-through; text-decoration-color: rgba(255,255,255,0.25);}
.c3p .ci-change-arrow{color: var(--text-muted, #888);}
.c3p .ci-change-after{color: var(--text-primary); font-weight: 500; word-break: break-word;}
.c3p .ci-no-changes{font-size: 13px; color: var(--text-secondary); text-align: center; margin: 12px 0; font-style: italic;}
.c3p .rs-panel--success{display: flex; flex-direction: column; align-items: center; text-align: center; padding: 52px 24px 44px; border-radius: 28px; box-shadow: 0 1px 2px rgba(40,34,28,0.04), 0 18px 40px rgba(40,34,28,0.06);}
.c3p[data-mode="dark"] .rs-panel--success{box-shadow: 0 1px 2px rgba(0,0,0,0.40), 0 18px 40px rgba(0,0,0,0.45);}
.c3p .rs-panel--success .btn-nav{border-radius: 100px; padding: 13px 22px 13px 18px; font-weight: 500; background: #fff; border: 1px solid rgba(20,16,12,0.14); color: #33302c;}
.c3p[data-mode="dark"] .rs-panel--success .btn-nav{background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.14); color: #e7e3dc;}
.c3p .rs-success-icon{width: 72px; height: 72px; border-radius: 50%; background: rgba(151,196,89,0.10); border: 1px solid rgba(151,196,89,0.20); box-shadow: inset 0 2px 5px rgba(0,0,0,0.14), inset 0 -2px 3px rgba(255,255,255,0.85); display: flex; align-items: center; justify-content: center; font-size: 28px; color: #4F7A21; margin-bottom: 22px;}
.c3p[data-mode="dark"] .rs-success-icon{box-shadow: inset 0 2px 5px rgba(0,0,0,0.55), inset 0 -1px 1px rgba(255,255,255,0.06); color: #97C459;}
.c3p .rs-success-title{font-size: 22px; font-weight: 700; color: var(--text-primary); letter-spacing: -0.02em; margin-bottom: 8px;}
.c3p .rs-success-date{font-size: 14px; color: var(--brand-text); font-weight: 600; margin-bottom: 14px;}
.c3p .rs-success-note{font-size: 13px; color: var(--text-secondary); line-height: 1.6; margin-bottom: 28px; max-width: 280px;}
.c3p .rs-success-note--cont{margin-top: -22px;}
.c3p .rs-panel--info{border-top: 4px solid var(--brand);}
.c3p .cancel-reminder{background: var(--bg-subtle); border: 0.5px solid var(--border); border-radius: var(--radius-lg); padding: 14px 16px; margin: 12px 0 16px;}
.c3p .cancel-reminder-name{font-size: 15px; font-weight: 500; color: var(--text-primary); margin-bottom: 5px;}
.c3p .cancel-reminder-detail{font-size: 13px; color: var(--text-secondary); line-height: 1.6;}
.c3p .cancel-reminder-ref{font-family: var(--font-mono); font-size: 11px; color: var(--text-muted); margin-top: 4px;}
.c3p .cancel-warning-text{font-size: 13px; color: var(--text-muted); line-height: 1.55; margin: 0 0 20px;}
.c3p .cancel-warning-text--inline{margin: -2px 0 6px; text-align: center; font-size: 12.5px;}
.c3p .cancel-status{font-size: 13px; color: var(--text-secondary); line-height: 1.55; margin: 2px 0 18px; padding-top: 14px; border-top: 0.5px solid var(--border);}
.c3p .cancel-status.is-review{color: var(--brand-text);}
.c3p .cancel-request-text{font-size: 13px; color: var(--brand-text); line-height: 1.55; margin: 0 0 20px;}
.c3p .cancel-reason-wrap{display: flex; flex-direction: column; gap: 6px; margin-bottom: 18px;}
.c3p .cancel-reason-label{font-size: 13px; color: var(--text-primary); font-weight: 500; letter-spacing: 0.005em;}
.c3p .cancel-reason-input{resize: vertical; min-height: 86px; font-size: 16px; line-height: 1.45; padding: 12px 14px;}
.c3p .cancel-reason-help{font-size: 12px; color: var(--text-hint); margin: 0;}
.c3p .cancel-actions{display: flex; flex-direction: column; gap: 8px;}
.c3p .btn-reschedule-alt{display: flex; align-items: center; justify-content: center; width: 100%; padding: 13px; background: #d97d27; color: #fff; border: 1px solid #d97d27; border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: filter 0.15s ease, transform 0.1s ease;}
.c3p .btn-reschedule-alt:active{transform: scale(0.97);}
.c3p .btn-accent{background-color: var(--brand); background-image: radial-gradient(62% 54% at 100% 0%, rgba(255,255,255,0.13), rgba(255,255,255,0) 58%); border-color: var(--brand); color: #fff;}
.c3p .btn-accent:active:not(:disabled){transform: scale(0.97);}
.c3p .btn-neutral{background: transparent; border: 1px solid var(--border); color: var(--text-primary);}
.c3p .btn-neutral:active{transform: scale(0.97);}
.c3p .btn-danger-confirm{display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 4px; padding: 13px; background: transparent; color: var(--text-secondary); border: 1px solid var(--border); border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.1s ease;}
.c3p .btn-danger-confirm:active:not(:disabled){transform: scale(0.97);}
.c3p .btn-danger-confirm:disabled{opacity: 0.6; pointer-events: none;}
.c3p .btn-danger-confirm .spinner{border-color: color-mix(in srgb, currentColor 32%, transparent); border-top-color: currentColor;}
.c3p .btn-cancel-go-back{display: block; width: 100%; padding: 8px; background: none; border: none; font-size: 13px; font-family: inherit; color: var(--text-muted); cursor: pointer; text-align: center; transition: color 0.15s;}
.c3p .btn-cancel-go-back--prominent{padding: 13px; background: var(--bg-card); color: var(--text-primary); border: 1px solid var(--border); border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; margin-top: 4px; transition: background 0.15s ease, border-color 0.15s ease, transform 0.1s ease;}
.c3p .btn-cancel-go-back--prominent:active{transform: scale(0.97);}
.c3p .cancel-success-icon{background: rgba(226,75,74,0.10); border: 1px solid rgba(226,75,74,0.20); box-shadow: inset 0 2px 5px rgba(0,0,0,0.14), inset 0 -2px 3px rgba(255,255,255,0.85); color: #BF352F; font-size: 24px;}
.c3p[data-mode="dark"] .cancel-success-icon{box-shadow: inset 0 2px 5px rgba(0,0,0,0.55), inset 0 -1px 1px rgba(255,255,255,0.06); color: #E24B4A;}
.c3p .request-pending-icon{background: rgba(245,197,24,0.10); border: 1px solid rgba(245,197,24,0.20); box-shadow: inset 0 2px 5px rgba(0,0,0,0.14), inset 0 -2px 3px rgba(255,255,255,0.85); color: #8A6800;}
.c3p[data-mode="dark"] .request-pending-icon{box-shadow: inset 0 2px 5px rgba(0,0,0,0.55), inset 0 -1px 1px rgba(255,255,255,0.06); color: #F5C518;}
.c3p .spinner--light{border-color: rgba(255,255,255,0.3); border-top-color: #fff;}
.c3p .pk-search-wrap{position: relative; margin-bottom: 12px;}
.c3p .pk-search-icon{position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--text-secondary); pointer-events: none; flex-shrink: 0;}
.c3p .pk-search{display: block; width: 100%; box-sizing: border-box; padding: 10px 12px 10px 36px; border: 1px solid var(--border); border-radius: 8px; background: var(--bg-subtle); font-size: 16px; color: var(--text-primary); outline: none; transition: border-color 0.15s, box-shadow 0.15s; -webkit-appearance: none; appearance: none;}
.c3p .pk-search:focus{border-color: color-mix(in srgb, var(--brand) 50%, transparent); box-shadow: 0 0 0 3px var(--brand-glow);}
.c3p .pk-search::placeholder{color: var(--text-secondary); opacity: 0.75;}
.c3p .pk-search::-webkit-search-cancel-button{display: none;}
.c3p .pk-highlight{background: var(--brand-border); color: var(--action-accent); border-radius: 2px; font-style: normal;}
.c3p .pk-no-results{font-size: 13px; color: var(--text-secondary); text-align: center; padding: 20px 0 8px; margin: 0;}
.c3p .pk-empty{text-align: center; padding: 4px 0 46px;}
.c3p .pk-other-btn{display: inline-block; margin-top: 10px; padding: 11px 20px; background: var(--bg-button); border: 0.5px solid var(--border-hover); border-radius: var(--radius-lg); font-size: 13.5px; font-weight: 500; font-family: inherit; color: var(--text-primary); cursor: pointer; transition: background 0.15s ease, transform 0.1s ease;}
.c3p .pk-other-btn:active{transform: scale(0.97);}
.c3p .pk-custom-wrap{margin: 6px 0 2px;}
.c3p .pk-custom-input{width: 100%; padding-left: 12px;}
.c3p .pk-custom-hint{font-size: 12px; color: var(--text-secondary); line-height: 1.45; margin: 8px 2px 2px; text-align: center;}
.c3p .pk-confirm-note{font-size: 12.5px; color: var(--text-secondary); line-height: 1.5; text-align: center; margin: 10px 0 2px;}
.c3p .pk-list-wrap{position: relative; margin-bottom: 4px;}
.c3p .pk-list-wrap::before{content: ''; position: absolute; top: 0; left: 0; right: 0; height: 36px; background: linear-gradient(to bottom, var(--bg-card), transparent); pointer-events: none; z-index: 2; transition: opacity 0.15s;}
.c3p .pk-list-wrap--searching::before{opacity: 0;}
.c3p .pk-list-wrap::after{content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 36px; background: linear-gradient(to top, var(--bg-card), transparent); pointer-events: none; z-index: 2;}
.c3p .pk-list{display: flex; flex-direction: column; gap: 6px; max-height: 290px; overflow-y: auto; padding: 10px 0; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,0.08) transparent;}
.c3p .pk-list::-webkit-scrollbar{width: 4px;}
.c3p .pk-list::-webkit-scrollbar-track{background: transparent;}
.c3p .pk-list::-webkit-scrollbar-thumb{background: rgba(255,255,255,0.08); border-radius: 2px;}
.c3p .pk-see-all{display: block; width: 100%; padding: 10px; background: none; border: none; font-size: 13px; font-family: inherit; color: var(--text-secondary); cursor: pointer; text-align: center; text-decoration: underline; text-decoration-style: dotted; text-underline-offset: 3px; transition: color 0.15s; margin-bottom: 4px;}
.c3p .pk-loc-row{display: flex; align-items: center; gap: 12px; padding: 10px 4px; border-radius: 6px; cursor: pointer; transition: background 0.15s; user-select: none;}
.c3p .pk-loc-row--current{background: rgba(127,168,146,0.07); cursor: default;}
.c3p .pk-loc-row--selected{background: color-mix(in srgb, var(--brand) 8%, transparent);}
.c3p .pk-loc-indicator{width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; background: var(--border); border: 1.5px solid transparent; transition: background 0.15s, border-color 0.15s;}
.c3p .pk-loc-row--current .pk-loc-indicator{background: #7FA892; border-color: #7FA892;}
.c3p .pk-loc-row--selected .pk-loc-indicator{background: var(--action-accent); border-color: var(--action-accent);}
.c3p .pk-loc-name{font-size: 14px; color: var(--text-primary); flex: 1;}
.c3p .pk-loc-tag{font-size: 11px; font-weight: 500; color: #7FA892; text-transform: uppercase; letter-spacing: 0.04em; flex-shrink: 0;}
.c3p .entry-logo--uploaded{width: auto; max-width: 280px; max-height: 120px; object-fit: contain; margin: 0 auto; display: block; mix-blend-mode: normal; margin-top: 0; margin-bottom: 14px;}
.c3p .entry-wordmark{font-size: 28px; font-weight: 700; letter-spacing: 0.04em; color: var(--text-primary); margin: 0 auto 14px; text-align: center;}
.c3p .manage-brand{display: flex; align-items: center; gap: 10px; padding: 12px 4px 14px;}
.c3p .manage-brand-logo{height: 22px; width: auto; max-width: 120px; object-fit: contain; display: block;}
.c3p .manage-brand-circle{width: 18px; height: 18px; border-radius: 50%; display: inline-block; flex-shrink: 0; background: radial-gradient(circle at 30% 30%, var(--brand) 0%, var(--brand) 38%, transparent 39%), radial-gradient(circle at 65% 65%, var(--brand-dark) 0%, var(--brand-dark) 38%, transparent 39%), var(--bg-card);}
.c3p .manage-brand-name{font-size: 13.5px; font-weight: 500; color: var(--text-primary); letter-spacing: 0.005em;}
.c3p .pk-current{margin: 4px 0 14px; font-size: 13px; color: var(--text-secondary); line-height: 1.5;}
.c3p .pk-current strong{color: var(--text-primary); font-weight: 500;}
.c3p .confirm-modal-overlay{position: fixed; inset: 0; z-index: 1000; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center; padding: 24px; animation: confirm-modal-fade 140ms ease-out;}
.c3p .confirm-modal{width: 100%; max-width: 320px; background: var(--bg-card); color: var(--text-primary); border: 0.5px solid var(--border); border-radius: 16px; padding: 22px 20px; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45); animation: confirm-modal-rise 180ms cubic-bezier(0.2, 0.8, 0.2, 1);}
.c3p .confirm-modal-title{font-size: 17px; font-weight: 600; letter-spacing: -0.01em; margin-bottom: 6px;}
.c3p .confirm-modal-body{font-size: 13px; color: var(--text-secondary); line-height: 1.5; margin-bottom: 12px;}
.c3p .confirm-modal-warning{font-size: 13.5px; color: var(--danger); font-weight: 500; line-height: 1.55; padding: 10px 12px; background: rgba(226, 75, 74, 0.08); border-left: 3px solid var(--danger); border-radius: 4px; margin-bottom: 18px;}
.c3p .confirm-modal-actions{display: flex; flex-direction: column; gap: 8px;}
.c3p .confirm-modal-btn{display: flex; align-items: center; justify-content: center; width: 100%; padding: 12px; border-radius: var(--radius-lg); font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; transition: background 0.15s ease, border-color 0.15s ease, transform 0.1s ease;}
.c3p .confirm-modal-btn:active{transform: scale(0.97);}
.c3p .confirm-modal-btn--keep{background: var(--bg-card); color: var(--text-primary); border: 1px solid var(--border);}
.c3p .confirm-modal-btn--keep:focus-visible{outline: 2px solid var(--brand); outline-offset: 2px;}
.c3p .confirm-modal-btn--yes{background: var(--text-primary); color: var(--bg-page); border: 1px solid var(--text-primary);}
.c3p .confirm-modal-btn--yes.confirm-modal-btn--danger{background: var(--danger); color: #fff; border-color: var(--danger);}
.c3p .confirm-modal-btn--yes.confirm-modal-btn--warning{background: #d97d27; color: #fff; border-color: #d97d27;}
.c3p .confirm-modal-btn--yes.confirm-modal-btn--warning:focus-visible{outline: 2px solid #d97d27; outline-offset: 2px;}
.c3p .confirm-modal-btn--yes:focus-visible{outline: 2px solid var(--danger); outline-offset: 2px;}
.c3p .portal-header{position: absolute; top: 0; left: 0; right: 0; z-index: 5; pointer-events: none;}
.c3p .portal-header > .pt-topbar,.c3p .portal-header > .pt-titleblock,.c3p .portal-header > .pt-tabs{pointer-events: auto;}
.c3p .pt-backdrop{pointer-events: none;}
.c3p .pt-backdrop{position: absolute; top: 0; left: 0; right: 0; height: 104px; background: rgba(var(--t-backdrop-rgb), 0); border-bottom: 0.5px solid rgba(var(--t-divider-rgb), 0); transition: background 140ms linear, border-color 140ms linear;}
.c3p[data-mode="light"] .pt-backdrop{border-bottom-color: transparent;}
.c3p .pt-scroller{position: absolute; inset: 0; overflow-y: auto; -webkit-overflow-scrolling: touch;}
.c3p .pt-spacer{height: var(--portal-header-h, 250px); flex-shrink: 0;}
.c3p .pt-scroll-tail{height: 0; flex-shrink: 0; pointer-events: none;}
.c3p .pt-content{-webkit-mask-image: linear-gradient(180deg, transparent 0px, #000 10px); mask-image: linear-gradient(180deg, transparent 0px, #000 10px);}
.c3p .pt-topbar{display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px 12px; transform: none;}
.c3p #entry-screen .pt-topbar--inner{position: absolute; top: 0; left: 0; right: 0; z-index: 5;}
.c3p .pt-operator{display: inline-flex; align-items: center; gap: 9px; text-decoration: none; opacity: 0.85; transition: opacity 160ms ease;}
.c3p .pt-operator-disc{position: relative; width: 18px; height: 18px; border-radius: 50%; background: var(--accent); border: 0.5px solid var(--t-operator-ring); overflow: hidden; flex-shrink: 0;}
.c3p[data-mode="light"] .pt-operator-disc{background: var(--accent-deep);}
.c3p .pt-operator-logo-wrap{display: inline-flex; align-items: center; flex-shrink: 0;}
.c3p .pt-operator-logo-img{display: block; height: 28px; width: auto; max-width: 140px; object-fit: contain;}
.c3p .pt-operator-disc > .pt-operator-logo-img{display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.c3p .pt-operator-name{font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--t-operator-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 220px;}
.c3p .pt-userpill-wrap{position: relative;}
.c3p .pt-userpill{display: inline-flex; align-items: center; gap: 8px; height: 28px; padding: 0 10px 0 4px; background: var(--t-pill-bg); border: 1px solid var(--t-pill-border); border-radius: 999px; color: var(--t-pill-text); font-size: 12.5px; font-weight: 500; cursor: pointer; transition: background 160ms ease, border-color 160ms ease;}
.c3p .pt-userpill[aria-expanded="true"]{background: rgba(var(--t-divider-rgb), 0.08);}
.c3p .pt-userpill-avatar{width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg, var(--accent), var(--accent-soft)); color: var(--text-on-accent, #1a1a1e); font-size: 10px; font-weight: 600; letter-spacing: 0.02em; text-transform: uppercase;}
.c3p .pt-userpill-name{max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.c3p .pt-userpill-chev{opacity: 0.65; flex-shrink: 0;}
.c3p .pt-userpill-menu{position: absolute; top: calc(100% + 6px); right: 0; min-width: 220px; background: var(--t-menu-bg); border: 1px solid var(--t-menu-border); border-radius: 12px; box-shadow: var(--t-menu-shadow); padding: 6px; z-index: 50;}
.c3p .pt-userpill-menu[hidden]{display: none;}
.c3p .pt-userpill-menu-head{padding: 10px 12px 8px;}
.c3p .pt-userpill-menu-eyebrow{font-size: 11px; color: var(--t-text-mid); letter-spacing: 0.02em;}
.c3p .pt-userpill-menu-name{font-size: 14px; font-weight: 500; color: var(--t-text-hi); margin-top: 2px;}
.c3p .pt-userpill-menu-ref{font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 11px; color: var(--t-text-lo); letter-spacing: 0.04em; margin-top: 2px;}
.c3p .pt-userpill-menu-divider{height: 1px; background: var(--t-menu-divider); margin: 4px 0;}
.c3p .pt-userpill-menu-item{display: block; width: 100%; text-align: left; padding: 9px 12px; background: transparent; border: 0; border-radius: 6px; font-size: 13px; color: var(--t-text); cursor: pointer; text-decoration: none; font: inherit; font-size: 13px;}
.c3p .pt-userpill-menu-item:focus-visible{background: rgba(var(--t-divider-rgb), 0.06); outline: none;}
.c3p .pt-userpill-menu-item[hidden]{display: none;}
.c3p .pt-confirm{position: fixed; inset: 0; z-index: 1001; display: flex; align-items: center; justify-content: center;}
.c3p .pt-confirm[hidden]{display: none;}
.c3p .pt-confirm__backdrop{position: absolute; inset: 0; background: rgba(0, 0, 0, 0.45); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);}
.c3p .pt-confirm__card{position: relative; width: 100%; max-width: 320px; margin: 0 20px; padding: 22px 22px 16px; background: var(--t-card-bg); border: 1px solid var(--t-card-border); border-radius: 18px; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35); text-align: center; animation: ptConfirmIn 180ms ease;}
.c3p .pt-confirm__title{margin: 0 0 6px; font-size: 17px; font-weight: 600; color: var(--t-text-hi);}
.c3p .pt-confirm__body{margin: 0 0 18px; font-size: 13.5px; line-height: 1.5; color: var(--t-text-mid);}
.c3p .pt-confirm .form-input{margin: 0 0 10px; text-align: left;}
.c3p .pt-confirm__hint{margin: -4px 0 12px; font-size: 12.5px; line-height: 1.4; color: var(--danger, #d9534f); text-align: left;}
.c3p .pt-confirm__actions{display: flex; gap: 8px;}
.c3p .pt-confirm__btn{flex: 1; padding: 10px 14px; font: inherit; font-size: 14px; font-weight: 600; border-radius: 10px; border: 0; cursor: pointer;}
.c3p .pt-confirm__btn--ghost{background: transparent; border: 1px solid var(--t-card-border); color: var(--t-text-hi);}
.c3p .pt-confirm__btn--primary{background: var(--t-text-hi); color: var(--t-card-bg);}
.c3p .pt-titleblock{text-align: center; padding: 18px 16px 8px; will-change: opacity, transform;}
.c3p .pt-eyebrow{font-family: var(--font-tabs); font-weight: 600; font-size: 10.5px; letter-spacing: 0.10em; text-transform: uppercase; color: var(--t-eyebrow); margin: 0 0 9px;}
.c3p .pt-eyebrow:empty{display: none;}
.c3p .pt-title{font-family: var(--font-serif); font-size: 40px; font-weight: 600; line-height: 1.05; letter-spacing: -0.015em; color: var(--t-text-hi); margin: 0 0 6px;}
.c3p .pt-tabs{display: inline-flex; align-items: center; gap: 4px; margin: 0 auto 14px; padding: 3px; background: var(--t-tab-bg); border: 1px solid var(--t-tab-border); border-radius: 999px; will-change: transform;}
.c3p .portal-header{text-align: center;}
.c3p .pt-tab{display: inline-flex; align-items: center; gap: 7px; padding: 7px 14px; font-family: var(--font-tabs); font-size: 12.5px; font-weight: 500; background: transparent; border: 0; border-radius: 999px; color: var(--t-tab-idle); cursor: pointer; transition: color 160ms ease, background 160ms ease;}
.c3p .pt-tab::before{content: ''; width: 5px; height: 5px; border-radius: 50%; background: transparent; box-shadow: none; transition: background 160ms ease, box-shadow 160ms ease; flex-shrink: 0;}
.c3p .pt-tab.is-active{color: var(--t-tab-active); background: var(--t-tab-bg-active);}
.c3p .pt-tab.is-active::before{background: var(--accent); box-shadow: 0 0 6px var(--accent);}
.c3p .tl-explore{padding: 0;}
.c3p .tl-explore-empty{padding: 60px 20px 80px; text-align: center; color: var(--t-text-lo); font-size: 14px; margin: 0;}
.c3p .tl-explore-empty.tl-empty-centered{width: calc(100% + var(--tl-indent)); margin-left: calc(-1 * var(--tl-indent));}
.c3p{--page-bg: var(--t-page-bg); --card-bg: var(--t-card-bg); --card-bg-el: color-mix(in srgb, var(--t-card-bg) 92%, var(--t-page-bg)); --card-border: var(--t-card-border); --card-border-hi: var(--t-card-border-hi); --chip-bg: var(--t-chip-bg); --chip-border: var(--t-chip-border); --photo-chip-bg: rgba(0, 0, 0, 0.55); --photo-chip-border: rgba(255, 255, 255, 0.15); --photo-chip-text: #f5f0e8; --discount-bg: rgba(207, 90, 68, 0.18); --discount-text: #E89283; --discount-border: rgba(232, 146, 131, 0.35); --ghost-bg: rgba(255, 255, 255, 0.05); --ghost-border: rgba(255, 255, 255, 0.10); --ghost-text: #aaa; --scrim: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 45%, rgba(0, 0, 0, 0.30) 65%, rgba(0, 0, 0, 0.85) 100%); --r-card: 16px; --r-cta: 14px; --r-drawer: 14px; --r-chip: 999px; --r-widget: 10px; --portal-max: 560px; --pad-x: 20px; --gap-cards: 20px; --gap-stack: 10px; --ease-enter: cubic-bezier(0.22, 0.61, 0.36, 1); --ease-release: cubic-bezier(0.4, 0.0, 0.6, 1); --dur-expand: 320ms; --dur-collapse: 280ms; --dur-fade: 220ms; --stagger-text: 60ms; --stagger-widget: 100ms;}
.c3p[data-mode="light"]{--bg-input: #f6f6f6; --discount-bg: rgba(186, 68, 46, 0.10); --discount-text: #A8472E; --discount-border: rgba(168, 71, 46, 0.30); --ghost-bg: rgba(20, 18, 14, 0.04); --ghost-border: rgba(20, 18, 14, 0.12); --ghost-text: #3d3a34;}
.c3p .booking-card-wrap{isolation: isolate;}
.c3p .catalog{display: flex; flex-direction: column; gap: var(--gap-cards); padding-bottom: 20px;}
.c3p .tour{display: flex; flex-direction: column; gap: var(--gap-stack);}
.c3p .card{position: relative; border-radius: var(--r-card); overflow: hidden; background: var(--card-bg); border: 0.5px solid var(--card-border); aspect-ratio: 4 / 5; isolation: isolate; transition: height 540ms var(--ease-enter); contain: paint; clip-path: inset(0 round var(--r-card));}
.c3p .card__photo,.c3p .card__photo img{position: absolute; inset: 0; width: 100%; height: 100%;}
.c3p .card__photo{overflow: hidden;}
.c3p .card__photo img{object-fit: cover; display: block;}
.c3p .card__photo--missing{background: linear-gradient(135deg, color-mix(in oklch, var(--t-text-faint, #444) 30%, transparent) 0%, transparent 60%), var(--card-bg-el);}
.c3p .card__photo--missing::after{content: 'Photo unavailable'; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--t-text-x-lo);}
.c3p .chip{font-family: 'JetBrains Mono', ui-monospace, monospace; font-weight: 500; font-size: 10px; line-height: 1; letter-spacing: 0.12em; text-transform: uppercase; padding: 6px 12px; border-radius: var(--r-chip); border: 0.5px solid var(--photo-chip-border); background: var(--photo-chip-bg); color: var(--photo-chip-text); -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%); white-space: nowrap;}
.c3p .chip--discount{position: absolute; top: 26px; right: 0; left: auto; z-index: 2; pointer-events: none; display: inline-flex; align-items: center; padding: 7px 16px 7px 48px; background: rgba(122, 31, 43, 0.55); -webkit-backdrop-filter: blur(16px) saturate(160%); backdrop-filter: blur(16px) saturate(160%); -webkit-mask-image: linear-gradient( to left, black 0%, black 55%, rgba(0, 0, 0, 0.4) 78%, transparent 92% ); mask-image: linear-gradient( to left, black 0%, black 55%, rgba(0, 0, 0, 0.4) 78%, transparent 92% ); color: #FFFFFF; font-family: var(--font-tabs); font-weight: 600; font-size: 12px; letter-spacing: 0.05em; text-transform: lowercase; border: none; border-radius: 0; white-space: nowrap;}
.c3p .chip--discount[hidden]{display: none;}
.c3p .chip--tag{position: absolute; top: 24px; left: 0; z-index: 2; pointer-events: none; display: inline-flex; align-items: center; gap: 6px; padding: 9px 56px 9px 14px; background: rgba(255, 255, 255, 0.55); -webkit-backdrop-filter: blur(16px) saturate(160%); backdrop-filter: blur(16px) saturate(160%); -webkit-mask-image: linear-gradient( to right, black 0%, black 55%, rgba(0, 0, 0, 0.4) 78%, transparent 92% ); mask-image: linear-gradient( to right, black 0%, black 55%, rgba(0, 0, 0, 0.4) 78%, transparent 92% ); color: #1A1A1A; font-family: var(--font-tabs); font-weight: 600; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; border: 0; border-radius: 0;}
.c3p .chip--tag::before{content: ""; display: inline-block; width: 12px; height: 12px; flex-shrink: 0; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%237A1F2B'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.29 1.51 4.04 3 5.5l7 7 7-7Z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-size: contain; background-position: center;}
.c3p .card__scrim{position: absolute; inset: 0; background: var(--scrim); pointer-events: none; z-index: 1; transform-origin: center bottom; transition: transform 540ms var(--ease-enter);}
.c3p .card[data-expanded="true"] .card__scrim{transform: scaleY(var(--scrim-scale, 1));}
.c3p .card__type{position: absolute; left: 0; right: 0; bottom: 0; padding: 22px; color: #f5f0e8; z-index: 2; display: flex; flex-direction: column;}
.c3p .card__rating{display: flex; align-items: center; gap: 6px; align-self: flex-start; font-size: 11.5px; line-height: 1.3; color: rgba(245, 240, 232, 0.85); margin-bottom: 10px; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);}
.c3p .card__rating .star{color: var(--brand-star); -webkit-text-fill-color: currentColor; display: inline-flex; align-items: center; gap: 3px; text-shadow: none;}
.c3p[data-theme="graphite"] .card__rating .star{color: #fff;}
.c3p .card__rating .rating-val{color: #fff; font-weight: 600;}
.c3p .card__rating .sep{color: rgba(245, 240, 232, 0.45);}
.c3p .card__title{font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-weight: 500; font-size: 22px; line-height: 1.15; letter-spacing: -0.018em; color: #fff; margin: 0 0 8px; text-wrap: balance;}
.c3p .card__desc{font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-weight: 400; font-size: 12.5px; line-height: 1.5; color: rgba(245, 240, 232, 0.88); max-width: 92%; margin: 0 0 14px; overflow: hidden; max-height: 4.5em; transition: max-height 540ms var(--ease-enter), -webkit-mask-image 320ms ease, mask-image 320ms ease;}
.c3p .card__desc.is-clipped{-webkit-mask-image: linear-gradient(180deg, #000 0, #000 calc(100% - 1.6em), rgba(0, 0, 0, 0.35) calc(100% - 0.8em), transparent 100%); mask-image: linear-gradient(180deg, #000 0, #000 calc(100% - 1.6em), rgba(0, 0, 0, 0.35) calc(100% - 0.8em), transparent 100%);}
.c3p .card[data-expanded="true"] .card__desc{-webkit-mask-image: linear-gradient(180deg, #000 0, #000 100%); mask-image: linear-gradient(180deg, #000 0, #000 100%);}
.c3p .card__desc:empty{display: none; margin-bottom: 0;}
.c3p .card__price{display: flex; align-items: baseline; gap: 8px;}
.c3p .card__price .now{font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-weight: 700; font-size: 20px; font-variant-numeric: tabular-nums; letter-spacing: -0.01em; color: #fff;}
.c3p .card__price .was{font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-weight: 400; font-size: 13px; font-variant-numeric: tabular-nums; color: rgba(245, 240, 232, 0.45); text-decoration: line-through;}
.c3p .card__deepen{position: absolute; inset: 0; background: rgba(0, 0, 0, 0.32); pointer-events: none; z-index: 1; opacity: 0; transition: opacity 540ms var(--ease-enter);}
.c3p .card[data-expanded="true"] .card__deepen{opacity: 1;}
.c3p .card__bullets{list-style: none; margin: 0; padding: 0; max-height: 0; overflow: hidden; display: flex; flex-direction: column; gap: 14px; transition: max-height 540ms var(--ease-enter), margin 540ms var(--ease-enter);}
.c3p .card[data-expanded="true"] .card__bullets{margin-top: 6px; margin-bottom: 14px;}
.c3p .card__bullet{display: flex; align-items: center; gap: 10px; font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-weight: 400; font-size: 12.5px; line-height: 1.35; color: rgba(245, 240, 232, 0.92);}
.c3p .card__bullet-text{white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0;}
.c3p .card__bullet-icon{width: 14px; height: 14px; color: var(--accent); stroke: currentColor; stroke-width: 1.4; fill: none; flex-shrink: 0;}
.c3p .card__price{transition: margin-top 540ms var(--ease-enter);}
.c3p .card__rating .text-shine{display: inline-block; color: #fff;}
.c3p .card__rating.shine-on .text-shine{animation: rating-shine-glow 1400ms cubic-bezier(0.4, 0, 0.2, 1) 1;}
.c3p .cta{display: block; width: 100%; height: 56px; background: var(--accent); color: var(--on-accent); border: none; border-radius: var(--r-cta); font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-size: 15px; font-weight: 600; letter-spacing: -0.005em; cursor: pointer; transition: background 160ms ease, color 160ms ease, border-color 160ms ease, transform 80ms ease; -webkit-tap-highlight-color: transparent;}
.c3p .cta:active{transform: translateY(1px);}
.c3p .cta:focus-visible{outline: 2px solid var(--accent); outline-offset: 2px;}
.c3p .cta:disabled{cursor: not-allowed;}
.c3p .tour[data-open="true"] .cta{background: var(--ghost-bg); color: var(--ghost-text);}
.c3p .drawer-shell{border-radius: var(--r-drawer); overflow: hidden; background: transparent; border: 0.5px solid transparent; transition: border-color 160ms ease, background-color 160ms ease;}
.c3p .tour[data-open="true"] .drawer-shell{background: var(--card-bg); border-color: var(--card-border);}
.c3p[data-mode="dark"] .tour[data-open="true"] .drawer-shell{background: var(--drawer-surface-bg);}
.c3p[data-mode="dark"] .drawer__discount-note__text{color: var(--drawer-surface-text-muted);}
.c3p .drawer{height: 0; overflow: hidden; transition: height var(--dur-collapse) var(--ease-release);}
.c3p .tour[data-open="true"] .drawer{height: var(--drawer-h, 0px); transition: height var(--dur-expand) var(--ease-enter);}
.c3p .drawer__inner{padding: 18px; display: flex; flex-direction: column; gap: 14px;}
.c3p .drawer__text,.c3p .drawer__widget{opacity: 0; transform: translateY(-8px); transition: opacity var(--dur-fade) var(--ease-enter), transform var(--dur-fade) var(--ease-enter);}
.c3p .tour[data-open="true"] .drawer__text{opacity: 1; transform: none; transition: opacity var(--dur-fade) var(--ease-enter) var(--stagger-text), transform var(--dur-fade) var(--ease-enter) var(--stagger-text);}
.c3p .tour[data-open="true"] .drawer__widget{opacity: 1; transform: none; transition: opacity var(--dur-fade) var(--ease-enter) var(--stagger-widget), transform var(--dur-fade) var(--ease-enter) var(--stagger-widget);}
.c3p .drawer__desc{font-family: 'Schibsted Grotesk', system-ui, sans-serif; font-weight: 400; font-size: 13.5px; line-height: 1.6; color: var(--t-text); opacity: 0.82; margin: 0;}
.c3p .drawer__discount-note{padding: 12px 16px 8px; background: transparent; border: none; text-align: left; display: flex; align-items: center; gap: 8px; opacity: 0; transform: translateY(-8px); transition: opacity var(--dur-fade) var(--ease-enter), transform var(--dur-fade) var(--ease-enter);}
.c3p .tour[data-open="true"] .drawer__discount-note{opacity: 1; transform: none; transition: opacity var(--dur-fade) var(--ease-enter) var(--stagger-text), transform var(--dur-fade) var(--ease-enter) var(--stagger-text);}
.c3p .drawer__discount-note__icon{display: inline-flex; align-items: center; flex-shrink: 0; overflow: visible; color: #2D6A4F;}
.c3p .drawer__discount-note__icon svg{display: block; overflow: visible;}
.c3p .drawer__discount-note__text{font-family: var(--font-tabs); font-weight: 500; font-size: 13px; letter-spacing: 0.005em; color: var(--text-muted); line-height: 1.4;}
.c3p .drawer__discount-note__text strong{font-weight: 700; color: color-mix(in srgb, currentColor 82%, #000);}
.c3p .drawer__widget{min-height: 120px;}
.c3p .drawer__widget .bokunWidget{width: 100%;}
.c3p .empty{padding: 48px 20px; text-align: center; font-size: 14px; color: var(--t-text-lo);}
.c3p .c3p-body[data-preview-bookings] .app-wrapper{border-top-left-radius: 44px; border-top-right-radius: 44px;}
.c3p .c3p-body[data-preview-bookings] .pt-backdrop{border-top-left-radius: 44px; border-top-right-radius: 44px;}
.c3p #bokun-widgets-cart{display: none !important;}
.c3p .pt-install-cta{display: flex; align-items: center; justify-content: center; gap: 7px; margin: 14px auto 6px; padding: 5px 12px; background: none; border: 0; font: inherit; font-size: 13px; letter-spacing: 0.02em; color: var(--t-text-lo); opacity: 0.85; cursor: pointer; transition: opacity 140ms ease, color 140ms ease;}
.c3p .pt-install-cta svg{width: 15px; height: 15px; flex: 0 0 auto;}
.c3p .pt-install-cta[hidden]{display: none;}
.c3p .tl-spine > .pt-install-cta{width: calc(100% + var(--tl-indent)); margin-left: calc(-1 * var(--tl-indent));}
.c3p .pt-launch-loading{position: fixed; inset: 0; z-index: 30; display: flex; align-items: center; justify-content: center; background: var(--t-page-bg);}
.c3p .pt-launch-loading[hidden]{display: none;}
.c3p .pt-launch-loading__dots{display: flex; gap: 8px;}
.c3p .pt-launch-loading__dots span{width: 8px; height: 8px; border-radius: 50%; background: var(--t-text-mid); opacity: 0.3; animation: ptLaunchDot 1.1s ease-in-out infinite;}
.c3p .pt-launch-loading__dots span:nth-child(2){animation-delay: 0.18s;}
.c3p .pt-launch-loading__dots span:nth-child(3){animation-delay: 0.36s;}
.c3p .pt-install-sheet{position: fixed; inset: 0; z-index: 1000; display: flex; align-items: flex-end; justify-content: center;}
.c3p .pt-install-sheet[hidden]{display: none;}
.c3p .pt-install-sheet__backdrop{position: absolute; inset: 0; background: rgba(0, 0, 0, 0.45); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);}
.c3p .pt-install-sheet__card{position: relative; width: 100%; max-width: 420px; margin: 0 12px 12px; padding: 24px 22px 18px; background: var(--t-card-bg); border: 1px solid var(--t-card-border); border-radius: 18px; box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35); text-align: center; animation: ptInstallSheetIn 220ms ease;}
.c3p .pt-install-sheet__icon{color: var(--t-text-mid); margin-bottom: 10px;}
.c3p .pt-install-sheet__title{margin: 0 0 8px; font-size: 17px; font-weight: 600; color: var(--t-text-hi);}
.c3p .pt-install-sheet__body{margin: 0 0 18px; font-size: 14px; line-height: 1.5; color: var(--t-text-mid);}
.c3p .pt-install-sheet__close{display: inline-block; padding: 10px 22px; font: inherit; font-size: 14px; font-weight: 600; color: var(--t-text-on-accent, #ffffff); background: var(--accent, #444); border: 0; border-radius: 10px; cursor: pointer;}
.c3p .ticket-viewer{position: fixed; inset: 0; z-index: 1000; display: flex; flex-direction: column; background: var(--t-page-bg);}
.c3p .ticket-viewer__bar{flex: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 7px 16px; padding-top: max(7px, env(safe-area-inset-top)); border-bottom: 1px solid var(--t-card-border);}
.c3p .ticket-viewer__title{flex: 1; min-width: 0; font-size: 14px; font-weight: 600; color: var(--t-text-hi); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.c3p .ticket-viewer__footer{position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; justify-content: center; align-items: center; gap: 10px; padding: 14px 16px; padding-bottom: max(14px, env(safe-area-inset-bottom)); pointer-events: none;}
.c3p .ticket-viewer__save,.c3p .ticket-viewer__close{pointer-events: auto; flex: none; display: inline-flex; align-items: center; gap: 8px; padding: 12px 24px; font: inherit; font-size: 15px; font-weight: 600; color: #ffffff; border: 0; border-radius: 999px; cursor: pointer; transition: opacity 0.4s ease, background 0.4s ease, transform 0.2s ease;}
.c3p .ticket-viewer__save{background: var(--accent, #444);}
.c3p .ticket-viewer__save[disabled]{opacity: 0.5; cursor: default;}
.c3p .ticket-viewer__close{background: rgba(0, 0, 0, 0.5);}
.c3p .tv-save-ico{position: relative; width: 18px; height: 18px; flex: none;}
.c3p .tv-save-ico .tv-ico{position: absolute; inset: 0; display: block; transition: opacity 0.3s ease, transform 0.35s cubic-bezier(0.34, 1.45, 0.5, 1);}
.c3p .tv-ico--download{opacity: 1; transform: scale(1);}
.c3p .tv-ico--check{opacity: 0; transform: scale(0.4);}
.c3p .tv-ico-check-path{stroke-dasharray: 24; stroke-dashoffset: 24;}
.c3p .tv-save-label{display: inline-grid; line-height: 1;}
.c3p .tv-save-label .tv-lbl{grid-area: 1 / 1; text-align: center; transition: opacity 0.25s ease;}
.c3p .tv-lbl--saved{opacity: 0;}
.c3p .ticket-viewer__save:active,.c3p .ticket-viewer__close:active{transform: scale(0.97);}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__save{opacity: 0.5; transition: opacity 0.5s ease 0.35s, transform 0.2s ease;}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__save .tv-ico--download{opacity: 0; transform: scale(0.4);}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__save .tv-ico--check{opacity: 1; transform: scale(1);}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__save .tv-ico-check-path{animation: tv-check-draw 0.4s ease 0.12s forwards;}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__save .tv-lbl--save{opacity: 0;}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__save .tv-lbl--saved{opacity: 1;}
.c3p .ticket-viewer__footer.is-saved .ticket-viewer__close{background: #1b1b20; animation: tv-done-pulse 1.6s ease 1;}
.c3p .tv-saved-badge{position: absolute; left: 50%; top: 50%; z-index: 4; display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 26px 36px; border-radius: 26px; background: linear-gradient(180deg, rgba(44, 44, 52, 0.64), rgba(18, 18, 24, 0.66)); border: 1px solid rgba(255, 255, 255, 0.16); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14); color: #ffffff; pointer-events: none; opacity: 0; transform: translate(-50%, -50%) scale(0.84); animation: tv-badge-in 0.5s cubic-bezier(0.34, 1.5, 0.5, 1) forwards, tv-badge-out 0.45s ease 1.35s forwards;}
.c3p .tv-saved-badge__label{font-size: 15px; font-weight: 600; letter-spacing: 0.01em;}
.c3p .tv-saved-badge__draw{stroke-dasharray: 34; stroke-dashoffset: 34; animation: tv-badge-draw 0.45s ease 0.22s forwards;}
.c3p .ticket-viewer__stage{flex: 1; min-height: 0; position: relative; overflow: hidden; touch-action: none; background: #ffffff;}
.c3p .ticket-viewer__zoom{position: absolute; top: 0; left: 0; width: 100%; transform-origin: 0 0; will-change: transform;}
.c3p .ticket-viewer__page{display: block; width: 100%; height: auto; background: #ffffff;}
.c3p .ticket-viewer__page + .ticket-viewer__page{margin-top: 0;}
.c3p .ticket-viewer__status{position: absolute; inset: 0; display: grid; place-items: center; padding: 0 24px; text-align: center; font-size: 13px; color: var(--t-text-mid);}
/* card-affordances.css */
.c3p .rm{position:absolute;right:22px;bottom:22px;z-index:3;display:flex;justify-content:flex-end;pointer-events:none;transition:opacity 130ms ease,transform 160ms ease}
.c3p .rm-btn{pointer-events:auto;display:inline-flex;align-items:center;font-family:'Schibsted Grotesk',system-ui,sans-serif;border:0;background:none;padding:0;margin:0;cursor:pointer;color:#f5f0e8;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none}
.c3p .rm-btn:focus-visible{outline:2px solid rgba(255,255,255,.85);outline-offset:4px;border-radius:6px}
.c3p .rm-label{white-space:nowrap;line-height:1.2}
.c3p .card[data-expanded="true"] .rm{pointer-events:none}
.c3p .card[data-expanded="true"] .rm .rm-btn{pointer-events:none}
.c3p .rm--rule{display:grid;justify-items:end;gap:5px}
.c3p .rm--rule .rm-label{grid-area:1/1}
.c3p .rm--rule .rm-line{grid-area:2/1;width:100%}
.c3p .rm-label--more{opacity:1;transition:opacity 260ms ease 200ms}
.c3p .rm-label--less{opacity:0;display:inline-flex;align-items:center;transition:opacity 110ms ease}
.c3p .rm-label--less .rm-chevron{margin-left:4px}
.c3p .card[data-expanded="true"] .rm-label--more{opacity:0;transition:opacity 110ms ease}
.c3p .card[data-expanded="true"] .rm-label--less{opacity:.5;transition:opacity 260ms ease 200ms}
.c3p .rm--rule{flex-direction:column;align-items:flex-end;gap:5px}
.c3p .rm--rule .rm-label{font-size:12.5px;font-weight:500;letter-spacing:.005em;color:rgba(245,240,232,.86);text-shadow:0 1px 8px rgba(0,0,0,.5);transition:color 200ms ease}
.c3p .rm--rule .rm-line{display:block;width:100%;height:1px;background:rgba(245,240,232,.5);transform-origin:right;transition:transform 460ms cubic-bezier(.22,1,.36,1),background 220ms ease}
.c3p .nsweep{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:4}
.c3p .nsweep>*{position:absolute;opacity:0}
.c3p .card.is-sweeping .nsweep>*{will-change:opacity,transform}
.c3p .ns-dome{inset:0;border-radius:inherit;background: linear-gradient(180deg,rgba(255,255,255,.4) 0%,rgba(255,255,255,.13) 3%,rgba(255,255,255,.03) 8%,transparent 15%), linear-gradient(0deg,rgba(0,0,0,.26) 0%,rgba(0,0,0,.09) 3%,rgba(0,0,0,.02) 8%,transparent 14%), linear-gradient(90deg,rgba(255,255,255,.3) 0%,rgba(255,255,255,.09) 3%,rgba(255,255,255,.02) 8%,transparent 14%), linear-gradient(270deg,rgba(255,255,255,.3) 0%,rgba(255,255,255,.09) 3%,rgba(255,255,255,.02) 8%,transparent 14%), rgba(255,255,255,.1)}
.c3p .ns-rim{top:0;bottom:0;width:26%}
.c3p .ns-rim--l{left:0;background:linear-gradient(90deg,rgba(255,255,255,.72) 0%,rgba(255,255,255,.3) 8%,rgba(255,255,255,.08) 28%,transparent 74%)}
.c3p .ns-rim--r{right:0;background:linear-gradient(270deg,rgba(255,255,255,.72) 0%,rgba(255,255,255,.3) 8%,rgba(255,255,255,.08) 28%,transparent 74%)}
.c3p .ns-glow{left:50%;top:50%;width:104%;height:44%;transform:translate(-50%,-50%) scale(.86);background: radial-gradient(54% 116% at 50% 50%,rgba(255,255,255,.12) 0%,rgba(255,255,255,.105) 15%,rgba(255,255,255,.07) 30%,rgba(255,255,255,.035) 45%,rgba(255,255,255,.014) 60%,rgba(255,255,255,.004) 75%,rgba(255,255,255,.001) 88%,transparent 100%), radial-gradient(88% 76% at 50% 49%,rgba(255,255,255,.07) 0%,rgba(255,255,255,.061) 15%,rgba(255,255,255,.041) 30%,rgba(255,255,255,.021) 45%,rgba(255,255,255,.008) 60%,rgba(255,255,255,.002) 75%,transparent 100%)}
.c3p .ns-word{left:50%;top:50%;transform:translate(-50%,-50%);font-family:'Schibsted Grotesk',system-ui,sans-serif;font-weight:700;font-size:64px;line-height:1;letter-spacing:.18em;text-indent:.18em;text-transform:uppercase;color:#fff;white-space:nowrap;text-shadow:0 2px 30px rgba(0,0,0,.45),0 0 14px rgba(255,255,255,.16),0 0 34px rgba(255,255,255,.09)}
.c3p .ns-word{font-size:42px}
.c3p .ns-halo{color:transparent;text-shadow:0 0 10px rgba(255,255,255,.22),0 0 26px rgba(255,255,255,.13)}
.c3p .ns-streak{top:-25%;height:150%;left:0;width:100%;overflow:hidden}
.c3p .ns-streak::before{content:"";position:absolute;top:0;bottom:0;left:0;width:46%;transform:translateX(-170%) skewX(-16deg);background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.04) 26%,rgba(255,255,255,.16) 40%,rgba(255,255,255,.44) 48%,rgba(255,255,255,.72) 52%,rgba(255,255,255,.3) 58%,rgba(255,255,255,.08) 68%,transparent 100%)}
.c3p .card.is-sweeping .nsweep>*{animation-duration:1500ms;animation-timing-function:linear;animation-fill-mode:none}
.c3p .card.is-sweeping .ns-dome{animation-name:nsDome}
.c3p .card.is-sweeping .ns-rim--l{animation-name:nsRimL}
.c3p .card.is-sweeping .ns-rim--r{animation-name:nsRimR}
.c3p .card.is-sweeping .ns-glow{animation-name:nsGlow}
.c3p .card.is-sweeping .ns-word{animation-name:nsWord}
.c3p .card.is-sweeping .ns-word.ns-halo{animation-name:nsWord,nsHalo}
.c3p .card.is-sweeping .ns-streak{animation-name:nsStreakHold}
.c3p .card.is-sweeping .ns-streak::before{animation:nsStreak 1500ms cubic-bezier(.4,.02,.22,1);will-change:transform}
.c3p .card.is-sweeping .card__type,.c3p .card.is-sweeping .chip,.c3p .card.is-sweeping .rm{animation:nsDim 1500ms linear}
/* demo.css */
.c3p .dw{font-family: 'Schibsted Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif; color: var(--t-text); -webkit-tap-highlight-color: transparent;}
.c3p .dw button{font: inherit; color: inherit; cursor: pointer;}
.c3p .dw button:disabled{cursor: default;}
.c3p .dw-head{display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px;}
.c3p .dw-month{font-size: 15px; font-weight: 600; letter-spacing: -0.01em; color: var(--t-text-hi);}
.c3p .dw-nav{width: 34px; height: 34px; border-radius: 50%; border: 1px solid color-mix(in srgb, var(--t-text) 14%, transparent); background: transparent; font-size: 20px; line-height: 1; display: inline-flex; align-items: center; justify-content: center; padding: 0 0 2px; transition: background 0.15s ease;}
.c3p .dw-nav:disabled{opacity: 0.3;}
.c3p .dw-grid{display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px;}
.c3p .dw-wd{text-align: center; font-size: 11px; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; color: var(--t-text-lo); padding: 4px 0 6px;}
.c3p .dw-day{height: 46px; border: 0; border-radius: 10px; background: transparent; padding: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; transition: background 0.15s ease, color 0.15s ease;}
.c3p .dw-day--pad{visibility: hidden;}
.c3p .dw-day-n{font-size: 14px; font-weight: 500; line-height: 1.1;}
.c3p .dw-day-p{font-size: 9.5px; font-weight: 500; line-height: 1; color: var(--t-text-lo);}
.c3p .dw-day:disabled .dw-day-n{color: var(--t-text-faint); font-weight: 400;}
.c3p .dw-day.is-open{background: color-mix(in srgb, var(--brand) 9%, transparent);}
.c3p .dw-day.is-selected,.c3p .dw-day.is-selected:hover{background: var(--brand); color: #fff;}
.c3p .dw-day.is-selected .dw-day-p{color: rgba(255, 255, 255, 0.85);}
.c3p .dw-hint{margin: 14px 0 2px; text-align: center; font-size: 13px; color: var(--t-text-lo);}
.c3p .dw-sec{margin-top: 16px; padding-top: 14px; border-top: 1px solid color-mix(in srgb, var(--t-text) 10%, transparent);}
.c3p .dw-label{font-size: 12px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: var(--t-text-lo); margin-bottom: 10px;}
.c3p .dw-pills{display: flex; flex-wrap: wrap; gap: 8px;}
.c3p .dw-pill{display: inline-flex; align-items: center; gap: 6px; padding: 9px 14px; border-radius: 999px; font-size: 14px; font-weight: 500; border: 1px solid color-mix(in srgb, var(--t-text) 16%, transparent); background: transparent; transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;}
.c3p .dw-pill.is-selected{background: var(--brand); border-color: var(--brand); color: #fff;}
.c3p .dw-pill:disabled{opacity: 0.42;}
.c3p .dw-pill-tag{font-size: 10.5px; font-weight: 500; opacity: 0.75;}
.c3p .dw-row{display: flex; align-items: center; justify-content: space-between; padding: 6px 0;}
.c3p .dw-row-t{font-size: 14.5px; font-weight: 500; color: var(--t-text-hi);}
.c3p .dw-row-s{font-size: 12px; color: var(--t-text-lo); margin-top: 2px;}
.c3p .dw-step{display: inline-flex; align-items: center; gap: 12px;}
.c3p .dw-step-b{width: 32px; height: 32px; border-radius: 50%; padding: 0 0 1px; border: 1px solid color-mix(in srgb, var(--t-text) 18%, transparent); background: transparent; font-size: 18px; line-height: 1; display: inline-flex; align-items: center; justify-content: center;}
.c3p .dw-step-b:disabled{opacity: 0.3;}
.c3p .dw-step-n{min-width: 14px; text-align: center; font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums;}
.c3p .dw-foot{margin-top: 16px; padding-top: 14px; border-top: 1px solid color-mix(in srgb, var(--t-text) 10%, transparent);}
.c3p .dw-total{display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px;}
.c3p .dw-total-l{font-size: 13px; color: var(--t-text-lo);}
.c3p .dw-total-v{font-size: 19px; font-weight: 700; letter-spacing: -0.01em; color: var(--t-text-hi); font-variant-numeric: tabular-nums;}
.c3p .dw-book{width: 100%; min-height: 48px; border: 0; border-radius: 12px; background: var(--brand); color: #fff !important; font-size: 15px; font-weight: 600; letter-spacing: -0.005em; display: inline-flex; align-items: center; justify-content: center; gap: 8px; transition: opacity 0.15s ease, transform 0.1s ease;}
.c3p .dw-book:disabled{opacity: 0.45;}
.c3p .dw-book:not(:disabled):active{transform: scale(0.985);}
.c3p .dw-done{text-align: center; padding: 10px 4px 2px;}
.c3p .dw-done-icon{width: 52px; height: 52px; margin: 0 auto 12px; border-radius: 50%; background: color-mix(in srgb, var(--brand) 14%, transparent); color: var(--brand); font-size: 24px; font-weight: 700; display: flex; align-items: center; justify-content: center;}
.c3p .dw-done-t{font-size: 18px; font-weight: 700; letter-spacing: -0.01em; color: var(--t-text-hi); margin-bottom: 8px;}
.c3p .dw-done-s{font-size: 14px; color: var(--t-text); line-height: 1.5;}
.c3p .dw-done-n{font-size: 12.5px; color: var(--t-text-lo); margin: 10px 0 16px; line-height: 1.5;}
.c3p #ptMenuLogout,.c3p #ptMenuNewSearch{display: none !important;}
.c3p .bc-badge,.c3p .mcard-badge{display: none !important;}
.c3p.demo-spotlight:not(.demo-spot-header) .pt-titleblock,.c3p.demo-spotlight:not(.demo-spot-header) .pt-tabs,.c3p.demo-spotlight .tour:not([data-tour-id="72004"]):not([data-tour-id="72001"]),.c3p.demo-spotlight .drawer__discount-note{display: none !important;}
.c3p.demo-spotlight .portal-header{transition: transform 540ms var(--ease-enter), opacity 540ms var(--ease-enter); will-change: transform, opacity;}
.c3p.demo-spotlight.spot-focus .portal-header{transform: translateY(-100%); opacity: 0;}
.c3p.demo-spotlight.spot-focus .portal-header,.c3p.demo-spotlight.spot-focus .portal-header *{pointer-events: none !important;}
.c3p .demo-spot-room{flex: none; height: 0;}
.c3p.demo-spotlight .pt-scroller{overflow-anchor: none;}
.c3p.demo-spotlight,.c3p.demo-spotlight .c3p-body{overflow: hidden;}
.c3p .dw-done .dw-book{margin-top: 16px;}
/* hero: the timeline drives every property frame by frame */
.c3p *,.c3p *::before,.c3p *::after{transition:none!important;animation:none!important}
