:root{font-family:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#163f5c;background:#f5f9fb;font-size:16px;--ink:#123e61;--blue:#075e97;--sky:#d5eff9;--yellow:#ffdb64;--coral:#ff917d;--line:#dce7ed;--muted:#567080}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--blue);text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #087bba;outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{color:var(--ink);line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(2rem,4vw,3.2rem)}h2{font-size:1.65rem}h3{font-size:1.2rem}p{line-height:1.6}img{max-width:100%}[hidden]{display:none!important}.skip{position:absolute;left:10px;top:-100px;z-index:99;background:white;padding:12px}.skip:focus{top:10px}.topbar{height:88px;background:var(--blue);padding:0 38px;display:flex;align-items:center;gap:28px;color:white;position:sticky;top:0;z-index:20}.brand{color:white;font-size:1.8rem;font-weight:850;letter-spacing:-.06em;text-decoration:none;display:flex;gap:9px;align-items:center}.back-home{color:white;font-size:.9rem;margin-left:auto;text-decoration:none}.topbar #account-actions{display:flex;gap:20px;align-items:center;font-size:.875rem}.topbar .quiet{color:white;border-color:#70a5c6}.topbar #account-email{max-width:230px;overflow:hidden;text-overflow:ellipsis}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.13em;line-height:1.5}.muted{color:var(--muted)}.small{font-size:.875rem}.card{background:white;border:1px solid var(--line);border-radius:22px;padding:26px}.primary,.secondary,.quiet,.danger,.button-link{min-height:46px;border-radius:12px;border:1px solid transparent;padding:11px 18px;font-weight:720;font-size:.9375rem;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1.3}.primary{background:var(--yellow);color:#193d57}.primary:hover{background:#ffe38a}.secondary{background:white;color:var(--ink);border-color:#bdcfda}.secondary:hover{background:#eaf5fb}.quiet{background:transparent;border-color:var(--line);color:var(--ink)}.danger{background:#a63029;color:white}.text-button{border:0;background:none;color:var(--blue);text-decoration:underline;font-weight:650;min-height:44px;padding:8px 0}.icon-button{background:transparent;border:0;min-width:44px;min-height:44px;font-size:1.8rem;color:var(--ink);border-radius:50%}.wide{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}label{display:block;font-size:.875rem;font-weight:720;margin:0 0 8px;color:var(--ink)}input,textarea,select{border:1px solid #b5cbd7;background:white;color:#163f5c;min-height:48px;border-radius:10px;padding:11px 13px;width:100%;margin-bottom:18px}textarea{resize:vertical;line-height:1.5}input[type=checkbox]{width:21px;min-height:21px;height:21px;margin:0;accent-color:var(--blue);flex-shrink:0}input::placeholder,textarea::placeholder{color:#647d8c}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.login-layout{max-width:1260px;margin:64px auto;padding:0 35px;display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:center}.login-story h1{margin-bottom:20px}.login-story p:not(.eyebrow){font-size:1.125rem}.login-story>img{border-radius:24px;object-fit:cover;width:100%;height:270px;margin-top:20px}.login-card{padding:34px;box-shadow:0 18px 70px #1644630c}.login-card h2{font-size:2rem}.login-card form{margin-top:24px}.login-card #code{font-size:1.5rem;letter-spacing:.3em}.login-card .small{margin-top:18px}.login-card .text-button{font-size:.9375rem}.sidebar{width:234px;padding:36px 18px;position:fixed;top:88px;bottom:0;background:#e5f3fa;border-right:1px solid #cfe3ed;display:flex;flex-direction:column}.sidebar>.eyebrow{padding:0 15px;font-size:.6875rem;color:#426780}.nav-item{border:0;color:#254e68;background:none;border-radius:12px;min-height:52px;padding:12px 16px;text-align:left;width:100%;display:flex;gap:12px;align-items:center;font-size:.9375rem;font-weight:700;margin-bottom:6px}.nav-item>span:first-child{font-size:1.35rem;width:22px;text-align:center}.nav-item.active{background:white;color:#065d92;box-shadow:0 4px 14px #16446308}.nav-item:hover{background:#f7fcff}.count,.badge{font-size:.75rem;font-weight:750;border-radius:20px;padding:5px 10px;background:#e5f2f8;color:#225776;display:inline-block;line-height:1.4}.count{background:var(--yellow);margin-left:auto}.badge.idea{background:#f2eafb;color:#6a4685}.badge.booking{background:#e1f3eb;color:#24634d}.badge.orange{background:#fff0df;color:#88571c}.sidebar-note{margin-top:auto;padding:24px 15px 0;color:#426780;font-size:.875rem}.sidebar-note p{margin-bottom:0;margin-top:12px}.workspace{margin-left:234px;padding:42px clamp(24px,4vw,64px) 70px;max-width:1600px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:28px}.page-heading h1{margin-bottom:8px;font-size:2.6rem}.page-heading p{margin-bottom:0}.page-heading .eyebrow{margin-bottom:8px}.tools{display:flex;gap:12px;align-items:center;margin-bottom:24px}.tools input{margin:0;max-width:380px;background:white}.segmented{display:flex;padding:4px;border:1px solid var(--line);border-radius:13px;background:white;gap:3px}.segmented button{border:0;min-height:38px;padding:8px 13px;background:none;color:#4b697d;font-size:.875rem;border-radius:9px;font-weight:700}.segmented button.active{background:#e2f1f8;color:var(--blue)}.trip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:22px}.trip-card{position:relative;overflow:hidden;padding:0;transition:transform .15s,box-shadow .15s}.trip-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #173b5610}.trip-card>a{display:block;text-decoration:none;color:inherit;padding:26px}.trip-card .trip-icon{width:52px;height:52px;background:#dceff8;color:var(--blue);border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin-bottom:24px}.trip-card:nth-child(3n+2) .trip-icon{background:#fff1c6}.trip-card:nth-child(3n+3) .trip-icon{background:#ffe7df}.trip-card h2{font-size:1.55rem;margin-bottom:10px;overflow-wrap:anywhere}.trip-card .dates{font-size:.875rem;color:var(--muted);margin-bottom:22px}.trip-card .trip-footer{border-top:1px solid var(--line);padding-top:16px;display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.empty{max-width:760px;margin:24px auto;text-align:center;padding:50px 28px}.empty img{height:160px;max-width:100%;margin-bottom:20px}.empty h2{font-size:1.8rem}.empty p{max-width:420px;margin:0 auto 24px;color:var(--muted)}.breadcrumb{margin-bottom:25px;display:inline-block;text-decoration:none;font-size:.9rem}.trip-header{background:#d9eff8;border:1px solid #bfdce9;border-radius:24px;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:24px}.trip-header h1{font-size:2.4rem;margin:0 0 12px;overflow-wrap:anywhere}.trip-header p{margin:0;color:#43697e}.tabs{display:flex;gap:8px;margin-bottom:28px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin}.tabs button{white-space:nowrap;border:0;border-bottom:3px solid transparent;background:none;padding:14px 15px;color:#526f80;font-weight:700;font-size:.9375rem}.tabs button.active{color:var(--blue);border-color:var(--blue)}.two-col{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;align-items:start}.stack{display:grid;gap:20px}.section-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:20px}.section-heading h2,.section-heading h3{margin:0}.section-heading p{margin:7px 0 0}.item{padding:18px 0;border-top:1px solid var(--line);display:flex;align-items:flex-start;gap:15px;min-width:0}.item:first-child{border-top:0;padding-top:0}.item:last-child{padding-bottom:0}.item-main{flex:1;min-width:0;overflow-wrap:anywhere}.item-main h3{margin:0 0 7px}.item-main p{margin-bottom:6px}.item-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.item-actions button{font-size:.875rem;padding:8px 11px;min-height:40px}.type-icon{border-radius:12px;background:#edf5f9;min-width:42px;height:42px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.day-head{padding:16px 0;display:flex;gap:12px;align-items:baseline}.day-head h2{font-size:1.3rem;margin:0}.day-head span{font-size:.875rem;color:var(--muted)}.day-card{margin-bottom:18px}.time{width:80px;flex-shrink:0;color:var(--muted);font-size:.875rem;padding-top:3px}.note-text{white-space:pre-wrap;overflow-wrap:anywhere}.muted-box{background:#edf5f9;border-radius:14px;padding:17px;color:#4b6b7f;font-size:.875rem;line-height:1.6}.packing-item{display:flex;gap:13px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.packing-item label{flex:1;margin:0;font-weight:500;font-size:1rem}.packing-item.done label{text-decoration:line-through;color:var(--muted)}.packing-item button{margin-left:auto}.packing-progress{height:9px;background:#e3edf2;border-radius:20px;overflow:hidden;margin:0 0 24px}.packing-progress meter{width:100%;height:9px;display:block}.inline-form{display:flex;gap:10px;align-items:flex-start}.inline-form input{margin:0}.inbox-item{padding:23px;margin-bottom:14px;display:flex;gap:16px;align-items:center}.inbox-item .item-main h3{font-size:1.05rem}.inbox-item p{margin:0}.address{padding:13px;background:#edf7fb;border:1px dashed #a9cddd;border-radius:12px;font-weight:700;overflow-wrap:anywhere}.check-label{display:flex;gap:12px;align-items:flex-start;line-height:1.5;font-weight:500;font-size:1rem}.check-label input{margin-top:2px}.suggestion{margin-bottom:15px}.suggestion h3{margin-top:13px}.suggestion p{font-size:.9375rem}.source-link{font-size:.875rem}.weather-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px}.weather-day{background:#f0f7fb;border-radius:12px;padding:14px;text-align:center}.weather-day p{margin:5px 0}.profile-form{max-width:780px}.profile-form h2{margin:14px 0 20px}.profile-form .muted{font-size:.9375rem}.plan-card h2{margin-bottom:10px}.plan-name{font-size:2.1rem;font-weight:800}.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}#toast,#alert{position:fixed;top:100px;right:24px;z-index:15;width:min(460px,calc(100% - 32px));background:#e4f5ee;color:#225840;padding:17px 44px 17px 20px;border:1px solid #a9d9c6;border-radius:14px;box-shadow:0 8px 32px #0002;line-height:1.5}#alert{background:#fff1e9;color:#873c28;border-color:#e9bba8}#toast button,#alert button{position:absolute;right:8px;top:7px;background:transparent;border:0;font-size:1.5rem;color:inherit;min-width:34px;min-height:34px}dialog{border:1px solid var(--line);border-radius:24px;box-shadow:0 25px 100px #163f5c30;width:min(650px,calc(100% - 28px));max-height:90dvh;padding:28px;color:var(--ink)}dialog::backdrop{background:#092f4c80;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:14px}.dialog-heading h2{margin:0;font-size:1.6rem}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;margin-top:12px;border-top:1px solid var(--line)}.form-error{color:#a03024;background:#fff0e9;padding:12px;border-radius:10px;font-size:.875rem}.loading{padding:50px;text-align:center;color:var(--muted)}.loading::before{content:'';display:block;border:3px solid #d2e6f0;border-top-color:var(--blue);width:26px;height:26px;margin:0 auto 20px;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.upload{display:inline-flex}.upload input{position:absolute;opacity:0;width:1px;height:1px}.upload:focus-within{outline:3px solid var(--blue);outline-offset:3px}.compact{padding:20px}.text-danger{color:#a63029}button.text-danger{background:none;border:0;min-height:44px}.pill-row{display:flex;gap:8px;flex-wrap:wrap}.blank{color:var(--muted);padding:15px 0;margin:0}.error-panel{border-color:#edc1b0;background:#fff8f4}.trip-header .button-row{flex-shrink:0}.trip-header h1{max-width:650px}.file-list .item{align-items:center}.file-list .button-link{font-size:.875rem}.detail-booking{background:#f5f9fb;border-radius:13px;padding:17px;margin-bottom:12px}.detail-booking p{margin-bottom:6px}.select-label{margin-top:20px}.mini-stats{display:flex;gap:22px;flex-wrap:wrap;margin:0 0 30px;color:#4b6b7d;font-size:.9375rem}.mini-stats strong{font-size:1.4rem;color:var(--ink);margin-right:5px}.notice-inline{border-left:3px solid #e4b733;padding:10px 16px;background:#fff8e2;font-size:.875rem;margin-bottom:22px;line-height:1.5}
@media(max-width:1050px){.sidebar{width:205px;padding-inline:12px}.workspace{margin-left:205px;padding:30px 25px}.two-col{grid-template-columns:1fr}.login-layout{gap:35px}.trip-header{align-items:flex-start;flex-direction:column}.topbar #account-email{max-width:150px}.topbar{padding-inline:25px}.tools{flex-wrap:wrap}.tools input{max-width:none;flex:1;min-width:220px}.page-heading{align-items:flex-start}.page-heading h1{font-size:2.25rem}}@media(max-width:700px){.topbar{height:72px;padding:0 18px;gap:14px}.brand{font-size:1.5rem}.topbar #account-email{display:none}.topbar #account-actions{gap:10px}.topbar .quiet{min-height:40px;padding:8px 12px;font-size:.875rem}.back-home{font-size:.875rem}.login-layout{display:block;margin:32px auto;padding:0 20px}.login-story{margin-bottom:28px}.login-story h1{font-size:2.5rem}.login-story>img{display:none}.login-card{padding:26px}.sidebar{position:static;width:auto;padding:10px 12px;background:#e5f3fa;border:0}.sidebar>.eyebrow,.sidebar-note{display:none}.sidebar nav{display:flex;gap:3px}.nav-item{flex:1;flex-direction:column;gap:5px;padding:10px 6px;font-size:.75rem;min-height:65px;margin:0;text-align:center}.nav-item>span:first-child{font-size:1.25rem}.nav-item .count{display:none}.workspace{margin:0;padding:26px 18px 50px}.page-heading{gap:14px;flex-wrap:wrap}.page-heading h1{font-size:2.25rem}.page-heading .primary{margin-top:4px}.tools{gap:12px}.segmented{width:100%}.segmented button{flex:1}.trip-header{padding:24px}.trip-header h1{font-size:2rem}.trip-header .button-row{width:100%}.trip-header .button-row button{flex:1}.card{padding:22px}.trip-card{padding:0}.trip-card>a{padding:24px}.tabs{gap:0}.tabs button{padding:13px 12px;font-size:.875rem}.item{gap:10px;flex-wrap:wrap}.item-actions{margin-left:auto}.item .time{width:66px}.item .type-icon{min-width:36px;width:36px;height:36px}.field-row{gap:12px}.inbox-item{align-items:flex-start;flex-wrap:wrap}.inbox-item .item-main{min-width:190px}.inbox-item>.secondary{margin-left:50px}.plans-grid{grid-template-columns:1fr}.section-heading{flex-wrap:wrap}dialog{padding:22px}.empty{padding:35px 22px}.mini-stats{gap:16px}.file-list .item-actions{width:100%}.login-card h2{font-size:1.75rem}#toast,#alert{top:83px;right:16px}.inline-form{flex-wrap:wrap}.inline-form input{flex:1;min-width:180px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media print{.topbar,.sidebar,.tabs,.button-row,.breadcrumb,.section-heading button,.item-actions,.nav-item,#toast,#alert{display:none!important}.workspace{margin:0;padding:0}.card,.trip-header{break-inside:avoid;border-color:#ccc;box-shadow:none}.trip-header{background:white}.two-col{display:block}.day-card{margin-bottom:16px}body{background:white;color:black}h1,h2,h3{color:black}.workspace-content{width:100%}}
/* Trip workspace: a single chronological plan, supported by compact tools. */
.workspace{max-width:1720px}.page-heading h1{font-size:2.25rem}.trip-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:24px}.trip-card>a.trip-card-link{padding:22px 24px}.trip-card h2{font-size:1.4rem;font-weight:730;letter-spacing:-.025em}.trip-card .dates{margin-bottom:20px}.destination-photo{margin:0;position:relative;height:194px;background:#d8e9f0;overflow:hidden}.destination-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.destination-photo figcaption{position:absolute;bottom:0;right:0;max-width:100%;padding:4px 7px;background:#163f5cd9;color:white;font-size:12px;line-height:1.5}.destination-photo figcaption a{color:white;text-decoration:none}.photo-loading{height:100%;background:#deebf1}.photo-missing{height:100%;display:grid;place-items:center;font-size:1.2rem;color:#456777}.trip-header{padding:0;background:transparent;border:0;border-radius:0;gap:30px;margin-bottom:22px;align-items:center;display:grid;grid-template-columns:minmax(0,1fr) 240px}.trip-heading{min-width:0}.trip-header h1{font-size:clamp(1.75rem,2.5vw,2.3rem);font-weight:750;max-width:none;margin-bottom:12px}.trip-header .button-row{margin-top:15px;gap:10px}.trip-header .quiet{min-height:36px;padding:7px 11px;font-size:.875rem;background:white}.header-photo{height:142px;width:240px;border-radius:15px}.header-photo figcaption{font-size:12px}.date-dot{margin:0 6px}.tabs{margin-bottom:28px;gap:16px}.tabs button{padding:13px 6px;min-height:48px}.trip-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}.timeline-column,.trip-rail{min-width:0}.timeline-column>.section-heading h2{font-size:1.3rem;letter-spacing:-.015em}.timeline-column>.section-heading{margin-bottom:10px}.timeline-hint{font-size:.875rem;color:var(--muted);margin-bottom:20px}.timeline-day{margin-bottom:20px}.timeline-date{display:flex;align-items:center;gap:14px;background:#e8f2f7;border-radius:9px;padding:7px 14px;min-height:46px}.timeline-date h3{margin:0;font-size:1rem;letter-spacing:0}.timeline-date>span{font-size:.875rem;color:var(--muted)}.day-add{margin-left:auto;width:32px;height:32px;font-size:1.4rem;background:none;border:0;color:var(--blue);border-radius:8px}.day-add:hover{background:white}.timeline-event{display:grid;grid-template-columns:75px 38px minmax(0,1fr);gap:13px;position:relative;padding:24px 6px 15px}.timeline-event:before{content:'';position:absolute;top:57px;bottom:-26px;left:99px;width:2px;background:#d4e7f0}.timeline-event:last-child:before{display:none}.event-time{text-align:right;line-height:1.4;padding-top:4px;font-size:.9375rem}.event-time strong{font-weight:720}.event-time span{display:block;font-size:.75rem;color:var(--muted);overflow-wrap:anywhere;margin-top:4px}.event-marker{position:relative;z-index:1;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0873ae;color:white;font-size:1.2rem}.idea-event .event-marker{background:#f0dfb1;color:#725917}.event-body{min-width:0;padding-top:2px}.event-caption{font-size:.75rem;font-weight:700;letter-spacing:.025em;color:var(--muted);margin-bottom:6px}.event-details summary{cursor:pointer;display:flex;justify-content:space-between;align-items:baseline;gap:10px;list-style:none}.event-details summary::-webkit-details-marker{display:none}.event-details summary h3{font-size:1.125rem;letter-spacing:-.015em;line-height:1.3;margin:0;color:#075e97;overflow-wrap:anywhere}.details-label{font-size:.75rem;color:var(--muted);white-space:nowrap}.details-label:after{content:' ＋'}.event-details[open] .details-label:after{content:' −'}.event-meta{margin:7px 0 0;font-size:.875rem;color:var(--muted);line-height:1.5}.event-expanded{padding:15px 0 8px;font-size:.875rem}.event-expanded p{margin-bottom:7px}.event-expanded .button-row{margin-top:14px}.event-expanded .button-row button{font-size:.8125rem;min-height:36px;padding:7px 10px}.booking-files{display:grid;gap:8px;margin-top:12px}.open-day{padding:20px 15px 15px;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.9375rem}.open-day .text-button{font-size:.875rem;min-height:36px}.stay-line{font-size:.8125rem;color:#506c7d;padding:12px 15px 0;margin:0}.trip-rail{display:grid;gap:18px}.trip-rail .card{border-radius:16px;padding:21px}.trip-rail h2{font-size:1.125rem;letter-spacing:-.02em}.trip-rail .section-heading{gap:8px;margin-bottom:14px}.trip-rail .section-heading .quiet{font-size:.8125rem;min-height:32px;padding:6px 8px}.trip-rail .section-heading .icon-button{min-width:32px;min-height:32px;font-size:1.5rem;margin:0}.trip-rail p{margin-bottom:0}.trip-rail .wizard-card{background:#e7f3fa;border-color:#c5dfe9}.wizard-card h2{font-size:1.35rem;margin:9px 0}.wizard-card p{font-size:.9375rem;color:var(--muted);margin-bottom:18px}.wizard-symbol{font-size:1.5rem;color:var(--blue)}.route-card summary{font-weight:700;cursor:pointer;font-size:.9375rem}.route-card summary>span{font-size:.8125rem;font-weight:400;margin-left:8px}.route-stop{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);margin-bottom:12px}.route-stop strong{font-size:.9375rem}.route-stop p{font-size:.8125rem}.route-stop .quiet{padding:6px 8px;min-height:34px;font-size:.8125rem}.wallet-list summary{font-size:.9375rem;cursor:pointer;color:var(--blue)}.wallet-file{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.wallet-file label{font-size:.75rem;font-weight:500;color:var(--muted);margin-top:12px}.wallet-file select{font-size:.8125rem;padding:8px;min-height:36px;margin-bottom:2px}.wallet-file .text-danger{font-size:.8125rem;min-height:32px;padding:4px 0}.destination-nudge{padding:5px 12px}.destination-nudge h3{font-size:1rem;margin-bottom:7px}.destination-nudge p{font-size:.875rem;color:var(--muted)}.plan-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-choice{display:flex;align-items:center;gap:14px;border:1px solid var(--line);background:white;padding:12px 14px;border-radius:12px;color:var(--ink);font-size:1rem;font-weight:600;min-height:55px;text-align:left}.plan-choice:hover{background:#eaf5fb;border-color:#86b7d0}.plan-choice span{width:28px;font-size:1.4rem;color:var(--blue);text-align:center}.form-details{padding:15px 0;margin-bottom:18px;border-block:1px solid var(--line)}.form-details summary{cursor:pointer;font-weight:650;margin-bottom:2px}.form-details[open] summary{margin-bottom:20px}.discover-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:28px;align-items:start;margin-bottom:30px}.discover-layout>section:not(.card){padding:20px 0}.wizard-workspace{background:#eaf5fb;border-color:#cbdfe9}.wizard-workspace h2{font-size:1.6rem}.wizard-workspace textarea{background:white}.wizard-workspace .eyebrow{color:var(--blue)}.suggestion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:18px}.suggestion{margin:0;padding:24px;border-radius:16px}.suggestion h3{font-size:1.25rem}.suggestion p{font-size:1rem}.suggestion .eyebrow{font-size:.75rem}.suggestion .small{font-size:.875rem}.suggestion-results{margin-top:30px}.suggestion-results h2{font-size:1.5rem}.source-notes{margin:22px 0 30px;max-width:850px}.source-notes summary{cursor:pointer;color:var(--muted);font-size:.875rem}.source-notes p{margin-top:12px}.info-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:18px;align-items:center;margin:24px 0}.info-controls>div{min-width:0}.info-controls input,.info-controls select{margin:0}.info-controls>button{margin-top:24px}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.info-grid .card{border-radius:16px}.info-grid h3{font-size:1.2rem}.info-grid .section-heading{flex-wrap:wrap;align-items:baseline}.fact-list{margin:0 0 18px}.fact-list>div{display:grid;grid-template-columns:110px 1fr;gap:12px;margin-bottom:14px}.fact-list dt{color:var(--muted)}.fact-list dd{margin:0;overflow-wrap:anywhere}.exchange-rate{font-size:1.5rem;font-weight:700;color:var(--ink)}.info-footnote{margin-top:24px}.weather-grid{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.weather-day{padding:12px 8px}.weather-day>p{font-size:.8125rem}.trip-header p{font-size:1rem}.tabs button:focus-visible{outline-offset:-3px}
@media(min-width:1450px){.trip-layout{grid-template-columns:minmax(0,1fr) 330px;gap:44px}.timeline-event{padding-block:26px 18px}.trip-rail .card{padding:24px}}
@media(max-width:1150px){.trip-layout{grid-template-columns:minmax(0,1fr) 260px;gap:22px}.trip-header{grid-template-columns:minmax(0,1fr) 200px}.header-photo{width:200px;height:132px}.trip-rail .card{padding:18px}.timeline-event{grid-template-columns:60px 34px minmax(0,1fr);gap:10px}.event-marker{width:34px;height:34px}.timeline-event:before{left:82px}.discover-layout{grid-template-columns:1fr}.info-grid{grid-template-columns:1fr}}
@media(max-width:900px){.trip-layout{grid-template-columns:1fr}.trip-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-event{grid-template-columns:65px 38px minmax(0,1fr);gap:13px}.timeline-event:before{left:89px}.discover-layout{gap:8px}.trip-header{gap:20px}.event-marker{width:38px;height:38px}}
@media(max-width:700px){.trip-header{grid-template-columns:minmax(0,1fr) 100px;gap:16px;align-items:start}.header-photo{width:100px;height:110px;border-radius:10px}.header-photo figcaption{position:static;background:white;color:var(--muted);font-size:12px}.header-photo{height:auto;min-height:100px}.header-photo img{height:85px}.header-photo figcaption a{color:var(--muted)}.trip-header h1{font-size:1.55rem}.trip-header p{font-size:.875rem;line-height:1.5}.trip-header .button-row{width:auto;gap:8px}.trip-header .button-row button{flex:none}.trip-header .quiet{padding:7px 9px}.trip-rail{grid-template-columns:1fr}.tabs{gap:22px}.tabs button{font-size:.9375rem}.trip-card>a.trip-card-link{padding:22px}.timeline-date{padding:7px 11px;gap:10px}.timeline-date h3{font-size:.9375rem}.timeline-event{grid-template-columns:52px 32px minmax(0,1fr);gap:10px;padding-inline:0}.timeline-event:before{left:77px;top:54px}.event-marker{width:32px;height:32px;font-size:1.05rem}.event-time{font-size:.8125rem}.event-time span{font-size:.75rem}.event-details summary h3{font-size:1.05rem}.details-label{font-size:0}.details-label:after{font-size:1rem}.timeline-date>span{font-size:.8125rem}.plan-picker{gap:8px}.plan-choice{font-size:.9375rem;padding:10px}.plan-choice span{font-size:1.2rem;width:24px}.info-controls{grid-template-columns:1fr 1fr;gap:12px}.info-controls>button{grid-column:1/-1;margin:0}.fact-list>div{grid-template-columns:95px 1fr}.destination-photo:not(.header-photo){height:186px}.open-day{padding-inline:8px}}
@media print{.trip-rail,.header-photo,.day-add,.open-day button,.event-expanded .button-row,.timeline-hint,.details-label{display:none!important}.trip-layout{display:block}.trip-header{display:block}.event-details .event-expanded{display:block!important}.timeline-event{break-inside:avoid}.timeline-date{background:#eee;print-color-adjust:exact}.timeline-event:before{background:#ccc}.tabs{display:none}.timeline-column>.section-heading button{display:none}}
/* A little magic, without competing with the trip. */
.wizard-card,.wizard-workspace,.guide-hero{position:relative;isolation:isolate;background:linear-gradient(125deg,#edf8fd 0%,#e2f0fb 65%,#fff7df 100%);border-color:#c9dfea}.wizard-workspace{padding-top:30px}.wizard-workspace h2,.guide-hero h2{max-width:calc(100% - 66px)}.wizard-art{position:absolute;right:20px;top:16px;width:79px;height:87px;pointer-events:none;z-index:-1}.wizard-art img{position:absolute;width:45px;height:59px;right:14px;top:13px;transform:rotate(15deg);filter:drop-shadow(0 5px 8px #1c638126)}.wizard-art>span{position:absolute;left:0;top:8px;font-size:21px;color:#75afd0}.wizard-art>span:nth-of-type(2){left:auto;right:0;top:2px;font-size:14px;color:#d5a82c}.wizard-art>i{position:absolute;right:1px;bottom:4px;font-size:24px;font-style:normal;color:#87b8cf}.wizard-card{padding-top:68px!important}.wizard-card .wizard-art{top:10px;right:16px;width:73px;height:80px}.wizard-card:after,.wizard-workspace:after{content:'✧';position:absolute;right:26%;top:20px;font-size:27px;color:#aacddc;z-index:-1}.wizard-prompts{display:flex;flex-wrap:wrap;gap:8px;margin:-5px 0 22px}.prompt-chip{border:1px solid #bad6e6;background:#ffffffb8;border-radius:24px;padding:8px 12px;color:#245e7e;min-height:38px;font-size:.8125rem;font-weight:600}.prompt-chip:before{content:'✧ ';color:#ad7b0b}.prompt-chip:hover{background:white;border-color:#629cbc}.mapped-location{color:var(--muted);font-size:.8125rem;margin-top:-14px}.mapped-location .text-button{font-size:inherit;margin-left:6px}.activity-media{position:relative;display:grid;place-items:center;height:140px;margin:-24px -24px 22px;border-radius:15px 15px 0 0;overflow:hidden;background:linear-gradient(135deg,#d8edf8,#f0f8fc)}.activity-media>span{font-size:46px;line-height:1;opacity:.9}.activity-media:has(.category-logo)>span{display:none}.activity-media .category-logo{width:70px;height:70px;object-fit:contain;background:#276a8d;border-radius:22px;padding:10px}.activity-media .place-picture{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.activity-media.tone-food{background:linear-gradient(135deg,#ffe7ca,#fff5e3)}.activity-media.tone-culture{background:linear-gradient(135deg,#e6ddf8,#f4edff)}.activity-media.tone-nature{background:linear-gradient(135deg,#d8ebd9,#edf5e7)}.activity-media.tone-water{background:linear-gradient(135deg,#cceef0,#e3f7ff)}.activity-media.tone-play{background:linear-gradient(135deg,#fae1c7,#ffefcf)}.activity-media.activity-thumb{width:70px;height:70px;min-width:70px;border-radius:13px;margin:0}.activity-thumb>span{font-size:31px}.activity-thumb .category-logo{width:46px;height:46px;border-radius:13px;padding:6px}.activity-media figcaption,.destination-photo figcaption{position:absolute;right:7px;bottom:5px;max-width:calc(100% - 14px);padding:0;background:transparent;font-size:9px;line-height:1.3;color:white;text-align:right;text-shadow:0 1px 3px #000,0 0 6px #0008}.activity-media figcaption a,.destination-photo figcaption a{color:white;text-decoration:none}.activity-media figcaption a:hover,.destination-photo figcaption a:hover{text-decoration:underline}.activity-thumb figcaption{font-size:7px;line-height:1.1;bottom:2px;right:3px;max-width:calc(100% - 6px)}.event-body>.activity-thumb{float:right;margin:0 0 10px 12px;width:58px;height:58px;min-width:58px}.guide-hero{padding:30px;margin-bottom:30px}.guide-hero>p:not(.eyebrow){max-width:780px}.guide-hero .button-row{margin:24px 0 17px}.guide-hero h2{font-size:1.8rem}.guide-hero .small{font-size:.8125rem;margin:0}.personal-guide{max-width:980px;margin:auto;background:white;border:1px solid #d2e2ea;border-radius:22px;padding:clamp(22px,4vw,54px)}.personal-guide>header>h2{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.03em;max-width:740px}.guide-intro{font-size:1.125rem;line-height:1.8;color:#3d5b6d}.guide-summary{display:flex;gap:10px 25px;flex-wrap:wrap;font-size:.8125rem;color:var(--muted);padding:20px 0;border-block:1px solid var(--line)}.guide-chapter{padding:37px 0 15px}.guide-chapter>h2{font-size:1.7rem;margin-bottom:26px}.guide-sections{columns:2 280px;column-gap:36px}.guide-sections>section{break-inside:avoid;margin-bottom:25px}.guide-sections h3{font-size:1.125rem;margin-bottom:10px}.guide-sections p{font-size:.9375rem;line-height:1.8}.guide-citations{font-size:.6875rem!important;line-height:1.5!important;color:var(--muted)}.guide-citations a{color:#58758a}.guide-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:18px 0 25px}.guide-pick{display:flex;gap:13px;padding:15px;background:#f2f8fb;border-radius:14px;min-width:0}.guide-pick h4{font-size:.9375rem;margin:0 0 6px}.guide-pick p{margin:0}.guide-pick .button-row{gap:8px;margin-top:5px}.guide-pick button,.guide-pick a{font-size:.75rem;min-height:30px;padding:4px 0}.guide-checklist{padding:24px;background:#fff8e5;border-radius:16px;margin-top:12px}.guide-checklist h2{font-size:1.35rem}.guide-checklist ul{padding-left:20px;margin-bottom:0}.guide-checklist li{padding:4px 0;font-size:.9375rem;line-height:1.6}.tabs button[data-tab=travel-guide]:before{content:'✧ ';color:#9c7719}
@media(max-width:640px){.wizard-workspace,.guide-hero{padding:23px}.wizard-workspace h2{font-size:1.4rem}.wizard-art{right:12px;transform:scale(.8);transform-origin:top right}.guide-hero h2{font-size:1.5rem}.guide-sections{columns:auto}.personal-guide{padding:23px}.guide-picks{grid-template-columns:1fr}.activity-media{height:130px}.suggestion-grid{grid-template-columns:1fr}.guide-summary{gap:9px 18px}}
@media print{.guide-hero,.wizard-art,.mapped-location,.guide-pick .button-row,.guide-report button{display:none!important}.personal-guide{border:0;padding:0;max-width:none}.guide-sections{columns:auto}.guide-chapter{break-before:page}.guide-chapter:first-of-type{break-before:auto}.guide-sections>section,.guide-pick,.guide-checklist{break-inside:avoid}.personal-guide .source-notes{display:block}.guide-summary{padding:10px 0}}
/* Sessions, background work and selective sharing */
.spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:tw-spin .85s linear infinite;vertical-align:middle;flex-shrink:0}@keyframes tw-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}
.trip-card{position:relative}.trip-card>a.trip-card-link{position:static}.trip-card-link:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.trip-card:has(.trip-card-link:focus-visible){outline:3px solid var(--blue);outline-offset:4px}.trip-card .destination-photo figcaption{z-index:2;pointer-events:none}.trip-card .destination-photo figcaption a{position:relative;pointer-events:auto}.trip-card:hover{border-color:#81b7d1;box-shadow:0 8px 28px #123e6110}
#auth-progress{display:flex;gap:10px;align-items:center;margin:16px 0;color:var(--blue)}.trusted-device{padding:18px 0}.trusted-device p{overflow-wrap:anywhere}.trust-option{align-items:flex-start;margin:10px 0 20px}.trust-option input{margin-top:3px}.guide-job-banner{display:flex;align-items:center;gap:12px;background:#e2f1f8;border:1px solid #b9d9e9;border-radius:16px;padding:16px 20px;margin-bottom:24px}.guide-job-banner>div{flex:1}.guide-job-banner p{margin:0}.guide-job-banner a{font-weight:700}.guide-job-banner small{display:block;line-height:1.5}.guide-pending{display:flex;gap:14px;align-items:center;margin:20px 0;background:#edf6fb;border-radius:16px;padding:20px}.guide-pending p{margin:0}.explore-loading{padding:24px;display:flex;gap:12px;align-items:center;scroll-margin-top:20px}
.share-options{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin:20px 0}.share-options label,.share-documents label{display:flex;align-items:flex-start;gap:10px;line-height:1.5}.share-options input,.share-documents input{width:18px;height:18px;flex-shrink:0;margin:2px 0}.share-options small{display:block;font-weight:400;color:var(--muted)}.share-preview{max-height:52vh;overflow:auto;border:1px solid var(--line);border-radius:14px;padding:20px;background:#f8fbfd;margin:20px 0}.share-preview h1{font-size:1.7rem}.share-preview h2{font-size:1.3rem}.share-preview .personal-guide{padding:0}.share-link-result{background:#eaf5fb;border-radius:14px;padding:18px;margin:18px 0}.share-link-result input{font-size:.875rem;background:white}.active-share{padding:14px 0;border-top:1px solid var(--line)}.active-share .button-row{margin-top:8px}.share-page{max-width:960px;margin:auto;padding:55px 30px}.share-page footer{margin-top:55px;padding-top:24px;border-top:1px solid var(--line)}.shared-report>section{margin-block:30px}.share-heading{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px}.shared-day{margin:28px 0}.shared-day>h3{border-radius:12px;background:#e6f3fa;padding:14px 18px}.shared-event{display:grid;grid-template-columns:85px 1fr;gap:20px;padding:20px 10px;border-bottom:1px solid var(--line)}.shared-event p{margin-bottom:7px}.shared-event .eyebrow{font-size:.67rem}.shared-event h3{margin-bottom:10px}.shared-report .card button{margin:4px}.share-documents{margin:14px 0}.share-documents summary{cursor:pointer;margin-bottom:14px}#shared-status{margin-bottom:30px;line-height:1.5}
@media(max-width:650px){.share-options{grid-template-columns:1fr}.guide-job-banner{align-items:flex-start;flex-wrap:wrap}.guide-job-banner>div{min-width:180px}.share-page{padding:30px 20px}.shared-event{grid-template-columns:62px 1fr;gap:12px}.share-preview{padding:14px}}
@media print{.guide-job-banner,#shared-status,.share-page footer{display:none}.share-page{padding:0}.shared-report .shared-day{break-inside:avoid}}

/* Per-trip preferences use the same controls as the account profile. */
.trip-actions{gap:8px}.trip-actions .trip-tool{width:44px;height:44px;min-height:44px;padding:10px;border-radius:12px;flex:none}.trip-actions svg{display:block;flex-shrink:0}.trip-actions .trip-preferences-button{margin-left:6px;min-height:44px}.trip-header .trip-preferences-summary{font-size:.875rem;line-height:1.55;color:var(--muted);margin:14px 0 0;max-width:620px}.profile-inheritance{align-items:flex-start;padding:18px;border-radius:14px;background:#edf6fb;margin:6px 0 24px}.profile-inheritance input{margin-top:3px}.profile-inheritance small{display:block;font-weight:400;line-height:1.5;margin-top:4px;color:var(--muted)}.trip-style-fields{border:0;padding:0;margin:0;min-width:0}.trip-style-fields>legend{font-weight:750;margin-bottom:20px}.trip-style-fields:disabled{opacity:.58}.trip-goals{border:1px solid var(--line);border-radius:14px;padding:16px;margin:6px 0 24px;min-width:0}.trip-goals legend{font-size:.875rem;font-weight:700;padding:0 5px}.trip-goal-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.trip-goal-options .check-label{margin:0}#trip-children .small{margin-top:-10px;margin-bottom:20px}@media(max-width:700px){.trip-actions .trip-preferences-button{margin-left:0}.trip-header .trip-actions{gap:7px}.trip-header .trip-preferences-summary{font-size:.875rem}.trip-goal-options{gap:10px}}
@media print{.trip-actions,.trip-preferences-summary{display:none!important}}

.import-retry-controls{margin:18px 0 22px;padding-bottom:16px;border-bottom:1px solid var(--line)}.import-retry-controls p{margin:10px 0 0;line-height:1.5}

/* Spacious plan workspace with persistent actions. */
.session-loading{min-height:45vh;display:flex;align-items:center;justify-content:center;gap:14px;color:var(--ink)}
dialog.plan-editor{width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:0;background:#f5f9fc}
.plan-editor .dialog-heading{position:sticky;top:0;z-index:3;background:white;border-bottom:1px solid var(--line);padding:20px max(24px,calc((100vw - 1100px)/2));margin:0}
.plan-editor #editor-form{max-width:1100px;margin:auto;padding:24px 24px 0}
.plan-editor .dialog-footer{position:sticky;bottom:0;z-index:3;background:#f5f9fc;padding:18px 0;margin-top:24px}
.plan-editor #editor-fields{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:24px;align-items:start}
.plan-editor .plan-primary,.plan-editor .plan-secondary{background:white;border:1px solid var(--line);border-radius:20px;padding:24px;min-width:0}
.plan-editor h3{margin-top:0}.plan-editor .plan-section{padding-top:16px;margin-top:20px;border-top:1px solid var(--line)}
.plan-editor .plan-kind{margin-bottom:20px}.plan-editor .file-status{overflow-wrap:anywhere}.plan-editor .form-details{margin-top:20px}
@media(max-width:760px){.plan-editor #editor-fields{grid-template-columns:1fr}.plan-editor #editor-form{padding:16px 16px 0}.plan-editor .dialog-heading{padding:16px}.plan-editor .plan-primary,.plan-editor .plan-secondary{padding:18px}.plan-editor .field-row{grid-template-columns:1fr}.plan-editor .dialog-heading h2{font-size:1.4rem}}
@media print{.event-details:not([open])>.event-expanded{display:block!important}.details-label{display:none!important}}

.preference-welcome{display:flex;align-items:center;gap:14px;margin-bottom:20px}.preference-welcome img{width:32px;height:40px}.preference-welcome p{margin:0;font-size:1.15rem;font-weight:650}.profile-inheritance{margin-block:18px}.inbox-forward .address{font-size:1rem;overflow-wrap:anywhere}.inbox-forward .primary{margin-bottom:16px}.wizard-workspace #f-wishes{min-height:190px;line-height:1.8}.booking-summary{margin:12px 0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.9375rem}.booking-summary>span{display:inline-flex;gap:6px;max-width:100%;overflow-wrap:anywhere}.booking-summary .summary-label{color:var(--muted)}.booking-summary .booking-address{flex-basis:100%}.event-details{margin-top:8px}.event-details summary .details-label{font-size:.8125rem}.event-body>.event-title{margin:2px 0 8px;font-size:1.15rem}.event-time span{line-height:1.5}.inbox-forward .source-notes{margin-top:8px}

.dismissible-notice{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dismissible-notice .icon-button{flex:0 0 2rem;min-height:2rem}.wizard-composer{padding:1rem;background:#fff;border:1px solid var(--border,#c6dce7);border-radius:16px;margin-bottom:1rem}.wizard-suggestion{display:flex;gap:.6rem;width:100%;text-align:left;white-space:normal;border:0;background:transparent;color:inherit;padding:.65rem .5rem;border-radius:10px;font-size:1rem;line-height:1.4}.wizard-suggestion:hover,.wizard-suggestion[aria-pressed=true]{background:#e5f4fc}.wizard-suggestion:focus-visible{outline:2px solid #087cbc}.wizard-composer #f-wishes{min-height:7rem;margin:.75rem 0 0;border:0;border-top:1px solid #d5e5ed;border-radius:0;padding:.85rem .5rem;line-height:1.5}.inbox-bulk{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.inbox-bulk .text-danger{margin-left:auto}.inbox-item input[type=checkbox]{width:1.25rem;height:1.25rem;flex-shrink:0}.sender-addresses{margin-top:1.25rem}.sender-address{display:flex;align-items:center;gap:.5rem;justify-content:space-between;overflow-wrap:anywhere;font-size:.9rem}.sender-address .icon-button{flex-shrink:0}@media(max-width:600px){.inbox-item .type-icon{display:none}.inbox-item{gap:.65rem}.wizard-composer{padding:.6rem}.inbox-bulk{gap:.65rem}}

.social-sign-in{display:grid;gap:10px;margin:20px 0 12px}.social-button{width:100%;min-height:50px;border:1px solid #56656d;border-radius:12px;background:white;color:#172f42;font-size:16px;font-weight:600}.social-button.apple-sign-in{background:#182c38;color:white;border-color:#182c38}.social-button:hover{filter:brightness(.96)}.social-button:disabled{opacity:.5;cursor:default}.auth-divider{text-align:center;color:var(--muted);font-size:13px;margin:4px 0}.social-sign-in[hidden]{display:none}
