/* Generated from fishing-trip common controls. */
.brand-logo{display:block;width:250px;aspect-ratio:3.2;overflow:hidden;flex-shrink:0;line-height:0}
.brand-logo img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 53%}
.trip-header{position:absolute;inset:0 0 auto;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:25px 4%;color:white;border-bottom:1px solid #ffffff35;background:linear-gradient(#05162280,#05162200)}
.trip-header .brand-logo img{filter:brightness(0) invert(1) drop-shadow(0 1px 2px #051622b3)}
.trip-header>nav{display:flex;gap:28px;align-items:center;font-size:13px}
.trip-header nav a{display:block;padding:12px 0}
.trip-header .header-book{border:1px solid #ffffffb0;padding:13px 23px}
.mobile-nav{display:none}
.bottom-dock{position:fixed;z-index:6;display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;width:568px;max-width:calc(100vw - 40px);right:24px;bottom:20px;animation:dock-arrive .65s ease-out both}
.dock-guide{grid-column:1;justify-self:start;display:flex;gap:6px;padding:6px 12px;min-height:30px;border:1px solid #d9e3e8;background:#fff;color:#264657;border-radius:20px;font-size:11px;line-height:1.5;box-shadow:0 2px 9px #09273712}
.dock-action{grid-row:2;display:flex;gap:12px;justify-content:flex-start;min-width:0;min-height:76px;padding:14px 17px;border-radius:12px;border:1px solid #ffffff75;box-shadow:0 5px 0 #07304726,0 10px 28px #05253629;transition:transform .2s,box-shadow .2s;line-height:1.35;text-align:left}
.dock-consult{background:#ffe064;color:#15364a;border-color:#f6cb39}
.dock-book{background:linear-gradient(125deg,#007aa7,#005981);color:#fff}
.dock-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.dock-copy strong{font-size:17px;white-space:nowrap;letter-spacing:.015em}
.dock-copy small{font-size:11px;white-space:nowrap}
.dock-arrow{font-size:22px;margin-left:auto}
.dock-chat{width:29px;height:23px;border:1.8px solid currentColor;border-radius:8px;position:relative;display:flex;align-items:center;justify-content:center;gap:3px;flex-shrink:0}
.dock-chat:after{content:'';position:absolute;bottom:-5px;left:5px;width:7px;height:7px;border-left:1.8px solid currentColor;transform:skewY(-35deg);background:#ffe064}
.dock-chat i{width:3px;height:3px;border-radius:50%;background:currentColor;animation:dock-dot 3.6s ease-in-out infinite}
.dock-chat i:nth-child(2){animation-delay:.2s}
.dock-chat i:nth-child(3){animation-delay:.4s}
.dock-calendar{width:27px;height:27px;flex-shrink:0}
@keyframes dock-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@keyframes dock-dot{0%,65%,100%{opacity:.4}20%,40%{opacity:1}}
@media(hover:hover) and (pointer:fine){.dock-action:hover{transform:translateY(-4px);box-shadow:0 7px 0 #07304720,0 14px 30px #05253633}}
.dock-action:active{transform:translateY(2px)}
#ai-dialog{color:var(--ink);border:0;width:540px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:30px;border-radius:12px;box-shadow:10px 10px #09263780;overscroll-behavior:contain}
#ai-dialog::backdrop{background:#051e35c9;backdrop-filter:blur(5px)}
.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.dialog-brand{width:200px}
.dialog-close{border:0;background:#edf5f6;color:var(--ink);font-size:25px;width:44px;height:44px;border-radius:50%;line-height:1}
#ai-dialog h2{font-size:25px;line-height:1.6;margin:20px 0 12px}
#dialog-description{font-size:13px}
.dialog-flow{font-size:12px;background:#fff5af;border:1px solid #dacc75;padding:12px;display:flex;justify-content:space-between;margin-top:20px}
.ai-services{display:grid;gap:10px;margin-top:24px}
.ai-services>a,.ai-services>button{color:var(--ink);display:flex;align-items:center;justify-content:space-between;border:2px solid var(--ink);border-radius:4px;padding:15px 20px;background:#fff;text-align:left;box-shadow:2px 3px #aec5d0;line-height:1.6}
.ai-services>a:hover,.ai-services>button:hover{background:#e5f5fa}
.ai-services b{font-size:22px;font-weight:500;display:block}
.ai-services small{display:block;font-size:11px}
.ai-services>*>span:last-child{font-size:25px}
.prompt-details{border-block:1px solid var(--line);margin-top:24px;font-size:12px}
.prompt-details summary{padding:16px 0}
.prompt-details label{display:block;padding-top:10px}
.prompt-details textarea{width:100%;font-size:12px;padding:12px;border:1px solid var(--line);color:var(--ink);resize:vertical}
.copy-all,.gemini-open{display:inline-block;border:1px solid var(--ink);padding:12px 18px;font-size:12px;margin:10px 0;background:#fff;color:var(--ink)}
.small-note{font-size:11px;color:var(--muted);line-height:1.9;margin-top:18px}
.small-note a{text-decoration:underline}
#selected-question,#copy-status{font-size:12px;margin-top:16px}
@media(max-width:1050px){.trip-header>nav{gap:16px;font-size:12px}
.brand-logo{width:220px}}
@media(max-width:800px){.trip-header>nav{display:none}
.mobile-nav{display:block;font-size:12px}
.mobile-nav summary{list-style:none;padding:12px;min-height:44px}
.mobile-nav nav{position:absolute;left:16px;right:16px;top:105px;background:#fff;color:var(--ink);padding:20px;box-shadow:0 12px 35px #102b3c33;border-radius:6px;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
.trip-header{padding:20px 24px}}
@media(max-width:600px){.trip-header{padding:15px 20px;gap:10px}
.trip-header .brand-logo{width:205px}
.bottom-dock{width:auto;max-width:none;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));gap:6px}
.dock-guide{font-size:10px;padding:5px 10px;min-height:28px}
.dock-action{min-height:66px;padding:10px 9px;gap:7px;border-radius:10px}
.dock-copy strong{font-size:13px;letter-spacing:0}
.dock-copy small{font-size:9px}
.dock-chat{width:22px;height:20px;gap:2px}
.dock-calendar{width:22px;height:22px}
.dock-arrow{display:none}
#ai-dialog{padding:21px;max-height:calc(100dvh - 28px)}
.dialog-brand{width:180px}
#ai-dialog h2{font-size:22px}
.ai-services>a,.ai-services>button{padding:13px 15px}
.ai-services b{font-size:20px}}
@media(max-width:350px){.trip-header .brand-logo{width:175px}
.bottom-dock{left:8px;right:8px}
.dock-action{gap:5px;padding:10px 7px}
.dock-copy strong{font-size:12px}
.dock-copy small{font-size:8px}
.dock-chat,.dock-calendar{width:19px}
.dialog-brand{width:165px}}
@media(prefers-reduced-motion:reduce){.dock-chat i{opacity:1}
.dock-action:hover{transform:none}}
