@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap");

:root{
  --ink:#142c31;--muted:#657477;--paper:#fbf8f1;--card:#fffdf8;--line:rgba(20,44,49,.14);
  --teal:#0d5558;--teal-2:#14777a;--teal-soft:#dff2ec;--coral:#d66f4b;--coral-soft:#f8ded5;
  --gold:#e7ad45;--gold-soft:#f4d89d;--danger:#a53532;--shadow:0 18px 48px rgba(14,58,61,.12);
  --sans:"DM Sans",system-ui,sans-serif;--serif:"Fraunces",Georgia,serif;
}
*{box-sizing:border-box}
html{background:var(--paper);scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;color:var(--ink);background:
  radial-gradient(circle at 10% 0%,rgba(217,162,53,.11),transparent 25rem),
  linear-gradient(180deg,#fbf8f0,var(--paper));font-family:var(--sans);min-height:100vh}
button,input,textarea,select{font:inherit}
button,a{touch-action:manipulation}
button{color:inherit}
a{color:var(--teal)}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);letter-spacing:-.035em}
h1{font-size:clamp(2.35rem,6vw,5rem);line-height:.98}
h2{font-size:clamp(1.65rem,3.5vw,2.8rem);line-height:1.05}
p{line-height:1.65;color:var(--muted)}
.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--coral);margin-bottom:.65rem}
.button{border:1px solid transparent;border-radius:999px;min-height:44px;padding:.72rem 1.1rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;text-decoration:none;cursor:pointer;transition:.2s transform,.2s box-shadow,.2s background}
.button:hover{transform:translateY(-1px)}
.button.primary{background:var(--teal);color:white;box-shadow:0 8px 20px rgba(13,85,88,.18)}
.button.coral{background:var(--coral);color:white;box-shadow:0 8px 20px rgba(216,94,67,.2)}
.button.gold{background:var(--gold);color:var(--ink);box-shadow:0 8px 20px rgba(121,85,19,.2)}
.button.outline{border-color:#cfd7d2;background:rgba(255,255,255,.72);color:var(--ink)}
.button.wide{width:100%}
.text-button,.forgot-link,.back-link{border:0;background:transparent;color:var(--teal);font-weight:700;padding:.35rem 0;cursor:pointer}
.field{display:grid;gap:.4rem;margin-bottom:1rem}
.field>span{font-weight:700;font-size:.84rem;color:#40585a}
.field input,.field textarea,.field select,.invite-result input{width:100%;border:1px solid #ccd5d1;background:white;border-radius:13px;min-height:48px;padding:.75rem .85rem;color:var(--ink);outline:none}
.field textarea{resize:vertical;min-height:90px}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--teal-2);box-shadow:0 0 0 3px rgba(30,119,120,.12)}
.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.password-wrap{position:relative}
.password-wrap input{padding-right:3rem}
.eye{position:absolute;right:.35rem;top:.28rem;width:42px;height:42px;border:0;background:transparent;color:var(--teal);font-size:1.05rem;cursor:pointer}
.notice{border-radius:14px;background:var(--gold-soft);padding:.85rem 1rem;color:#6c531c;font-size:.88rem;line-height:1.5;margin-top:1rem}
.notice.success{display:grid;gap:.55rem;background:var(--teal-soft);color:var(--teal);margin-top:1.2rem}
#toast{position:fixed;z-index:200;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;background:var(--ink);color:white;border-radius:999px;padding:.75rem 1.1rem;box-shadow:var(--shadow);pointer-events:none;transition:.2s;max-width:min(90vw,520px);text-align:center}
#toast.show{opacity:1;transform:translate(-50%,0)}

.auth-shell{min-height:100svh;display:grid;grid-template-columns:minmax(330px,1.08fr) minmax(390px,.92fr)}
.auth-story{position:relative;overflow:hidden;background:var(--teal);color:white;padding:clamp(1.2rem,4vw,3.5rem);display:flex;flex-direction:column;justify-content:space-between}
.auth-story:after{content:"";position:absolute;inset:0;background:linear-gradient(140deg,transparent 0 42%,rgba(255,255,255,.06) 42% 43%,transparent 43%)}
.auth-story .brand{color:white;position:relative;z-index:2}
.story-shape{position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%}
.story-shape.one{width:33rem;height:33rem;right:-12rem;top:-8rem}
.story-shape.two{width:24rem;height:24rem;left:-8rem;bottom:-10rem}
.auth-story-copy{position:relative;z-index:2;max-width:600px;padding:5rem 0 2rem}
.auth-story-copy>span{font-weight:800;letter-spacing:.2em;font-size:.72rem;color:#f4c85e}
.auth-story-copy h1{font-size:clamp(3rem,7vw,6.7rem);margin:.8rem 0 1.2rem;color:#fffdf8}
.auth-story-copy p{color:rgba(255,255,255,.72);font-size:1.08rem;max-width:32rem}
.auth-panel{padding:2rem clamp(1.2rem,5vw,5.5rem);display:flex;flex-direction:column;justify-content:center;position:relative}
.auth-top{position:absolute;right:2rem;top:2rem}
.auth-card{width:min(100%,470px);margin:auto}
.auth-card h2{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:.8rem}
.auth-card>p{margin-bottom:2rem}
.auth-card form{margin-top:1.5rem}
.forgot-link{display:block;margin:-.4rem 0 1.2rem auto;font-size:.85rem}
.auth-switch{display:flex;justify-content:center;gap:.4rem;align-items:center;margin-top:1.4rem;color:var(--muted);font-size:.9rem}
.auth-switch button{border:0;background:transparent;color:var(--teal);font-weight:800;cursor:pointer}
.back-link{margin-top:1rem}
.or{display:flex;align-items:center;gap:.8rem;color:#96a2a0;margin:1rem 0}
.or:before,.or:after{content:"";height:1px;background:var(--line);flex:1}

.brand{border:0;background:transparent;display:flex;align-items:center;gap:.68rem;padding:.25rem;cursor:pointer;text-align:left}
.brand-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--teal);color:#f5cb61;font-size:1.5rem;font-weight:800;box-shadow:0 7px 18px rgba(13,85,88,.18);overflow:hidden}.brand-icon img{width:100%;height:100%;object-fit:cover}.brand small{max-width:130px;overflow:hidden;text-overflow:ellipsis}
.brand span:last-child{display:grid;line-height:1.05}
.brand b{font-family:var(--serif);font-size:1.13rem}
.brand small{font-size:.57rem;letter-spacing:.18em;color:var(--coral);font-weight:800;margin-top:.25rem}
.language-control{display:flex;background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:999px;padding:3px;height:40px}
.language-control button{border:0;border-radius:999px;background:transparent;min-width:38px;font-size:.72rem;font-weight:800;cursor:pointer}
.language-control button.active{background:var(--teal);color:white}
.topbar{height:64px;position:fixed;z-index:50;top:16px;left:50%;transform:translateX(-50%);width:min(1120px,calc(100% - 24px));background:rgba(251,248,241,.88);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.58);border-radius:999px;box-shadow:0 10px 35px rgba(0,0,0,.13);display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 16px}
.topbar-actions{display:flex;align-items:center;gap:.75rem}
.avatar,.person-avatar{width:40px;height:40px;border-radius:50%;border:0;background:var(--coral-soft);color:var(--coral);font-weight:800;display:grid;place-items:center}
.avatar{cursor:pointer}
.trip-context{position:absolute;left:50%;transform:translateX(-50%);display:grid;text-align:center;max-width:30vw}
.trip-context button{border:0;background:transparent;color:var(--teal);font-size:.7rem;font-weight:800;cursor:pointer}
.trip-context span{font-size:.82rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.dashboard-main{width:min(1240px,calc(100% - 2rem));margin:0 auto;padding:clamp(7rem,10vw,9rem) 0 4rem}
.dashboard-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.2rem}
.dashboard-head h1{margin-bottom:.6rem}
.dashboard-head p{margin-bottom:0}
.trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.trip-card{background:var(--card);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 12px 36px rgba(23,52,55,.07);transition:.2s}
.trip-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.trip-card>button{border:0;background:transparent;width:100%;padding:0;text-align:left;cursor:pointer}
.trip-cover{height:190px;background:
  linear-gradient(180deg,transparent 35%,rgba(10,42,44,.72)),
  var(--cover,linear-gradient(135deg,var(--teal),#3c9b94));background-size:cover;background-position:center;display:flex;align-items:end;padding:1rem}
.trip-cover{position:relative;overflow:hidden}.trip-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,42,44,.74))}.trip-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.trip-cover span{position:relative;z-index:1;color:white;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.trip-card-body{padding:1.2rem}
.trip-card-body>small{color:var(--coral);font-weight:700}
.trip-card-body h3{font-family:var(--serif);font-size:1.65rem;margin:.45rem 0 1rem}
.trip-meta{display:flex;justify-content:space-between;gap:.5rem;color:var(--muted);font-size:.75rem}
.empty-card{grid-column:1/-1;border:1px dashed #bfc9c5;border-radius:24px;text-align:center;padding:4rem 1rem;background:rgba(255,255,255,.45)}
.empty-card>span{font-size:2rem;color:var(--gold)}
.empty-card.compact{padding:3rem 1rem}
.empty-card.compact h2{font-size:1.25rem}
.dashboard-footer{text-align:center;color:var(--muted);font-size:.75rem;padding:1rem 1rem 2rem}

.trip-main{padding-bottom:calc(92px + env(safe-area-inset-bottom));min-height:100svh}
.trip-hero{min-height:500px;background:
  linear-gradient(90deg,rgba(10,45,47,.9),rgba(10,45,47,.22)),
  var(--hero,linear-gradient(135deg,#0d5558,#6fb4ad));background-size:cover;background-position:center;display:flex;align-items:end}
.hero-overlay{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,8vw,7rem) 0;color:white}
.hero-overlay .eyebrow{color:#f3c660}
.hero-overlay h1{font-size:clamp(3rem,8vw,6.7rem);margin-bottom:.8rem;max-width:900px;color:#fffdf8}
.hero-overlay>p{color:rgba(255,255,255,.8);font-size:1.1rem}
.hero-pills{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.5rem}
.hero-pills span{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border-radius:999px;padding:.55rem .8rem;font-size:.78rem;font-weight:700}
.hero-story{max-width:720px;font-family:var(--serif);font-size:clamp(1.05rem,2.2vw,1.55rem)!important;line-height:1.45!important}
.v4-turkey-hero{min-height:100svh;position:relative;overflow:hidden;align-items:center;background:linear-gradient(165deg,#7dccce 0%,#3fa0a0 36%,#1b7a80 66%,#0e4b4e 100%)}
.v4-turkey-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 20%,rgba(255,255,255,.22),transparent 28%),linear-gradient(115deg,transparent 55%,rgba(240,198,135,.12));pointer-events:none}
.v4-turkey-hero:after{content:"";position:absolute;z-index:1;left:-10%;right:-10%;bottom:-72px;height:145px;background:var(--paper);border-radius:50% 50% 0 0/70% 70% 0 0}
.v4-turkey-hero .hero-overlay{position:relative;z-index:2;padding:8rem 0 9rem}
.v4-turkey-hero .hero-overlay h1{font-size:clamp(4rem,10vw,8.5rem);letter-spacing:-.065em;line-height:.86;text-shadow:0 10px 40px rgba(0,0,0,.16)}
.v4-sun-art{position:absolute;z-index:1;right:8vw;top:13vh;width:clamp(160px,25vw,330px);aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(240,198,135,.9) 0 1deg,transparent 1deg 8deg);opacity:.82;animation:v4-float 7s ease-in-out infinite}
.v4-sun-art:before{content:"";position:absolute;inset:18%;border-radius:50%;background:#f0c687;box-shadow:inset -22px -14px 0 rgba(227,162,59,.16)}
.v4-sun-art i{position:absolute;z-index:2;width:12%;aspect-ratio:1;border-radius:50%;left:38%;top:37%;background:rgba(227,162,59,.35)}
@keyframes v4-float{50%{transform:translateY(13px)}}
.v4-countdown{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.5rem}
.v4-countdown div{min-width:82px;text-align:center;background:rgba(14,75,78,.45);padding:.75rem;border-radius:18px;border:1px solid rgba(255,255,255,.18)}
.v4-countdown strong{display:block;font:700 2rem var(--serif)}.v4-countdown span{font-size:.62rem;text-transform:uppercase;letter-spacing:.11em;color:#d6eeee}
.v4-facts{background:#102f32;color:white;padding:1.7rem 0}
.v4-facts>div{width:min(1160px,calc(100% - 2rem));margin:auto;display:grid;grid-template-columns:1.2fr 1.3fr 1.45fr 1fr 1fr;gap:1.2rem}
.v4-facts article{min-width:0}.v4-facts small{display:block;text-transform:uppercase;letter-spacing:.14em;color:#f0c687;font-size:.62rem;font-weight:800;margin-bottom:.25rem}.v4-facts strong{display:block;font-family:var(--serif);font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v4-motif{height:14px;background-color:var(--coral);background-image:linear-gradient(45deg,#f0c687 25%,transparent 25%,transparent 75%,#f0c687 75%),linear-gradient(45deg,#f0c687 25%,transparent 25%,transparent 75%,#f0c687 75%);background-size:14px 14px;background-position:0 0,7px 7px}
.v4-motif+.quick-row{margin-top:2rem}
.rhythm-section{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);align-items:center;gap:clamp(2rem,7vw,6rem)}
.rhythm-ring{position:relative;width:min(330px,80vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto;background:conic-gradient(var(--teal) 0 70%,var(--coral) 70% 100%);filter:drop-shadow(0 20px 30px rgba(14,75,78,.12))}
.rhythm-ring:before{content:"";position:absolute;width:68%;aspect-ratio:1;border-radius:50%;background:var(--paper)}
.rhythm-ring>div{position:relative;z-index:1;text-align:center;display:grid}.rhythm-ring strong{font:700 3rem var(--serif)}.rhythm-ring span{font-size:.72rem;color:var(--muted)}
.rhythm-section h2{max-width:650px}.rhythm-legend{display:flex;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.8rem;font-weight:700}.rhythm-legend span{display:flex;align-items:center;gap:.4rem}.rhythm-legend i{width:11px;height:11px;border-radius:50%;background:var(--teal)}.rhythm-legend span+span i{background:var(--coral)}
.quick-row{width:min(1080px,calc(100% - 2rem));margin:-2rem auto 0;position:relative;z-index:2;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr);padding:.55rem}
.quick-row button{border:0;background:transparent;border-radius:17px;padding:1rem;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;text-align:left;column-gap:.7rem;cursor:pointer}
.quick-row button:hover{background:var(--teal-soft)}
.quick-row button>span{grid-row:1/3;width:40px;height:40px;border-radius:13px;background:var(--coral-soft);color:var(--coral);display:grid;place-items:center;font-size:1.2rem}
.quick-row b{align-self:end}
.quick-row small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.content-section{width:min(1120px,calc(100% - 2rem));margin:clamp(3rem,7vw,6rem) auto}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem}
.section-heading h2{margin-bottom:.45rem}
.section-heading p{margin-bottom:0}
.hotel-feature{display:grid;grid-template-columns:1.05fr .95fr;background:var(--card);border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 12px 35px rgba(23,52,55,.07)}
.hotel-photo{min-height:390px;background-size:cover;background-position:center;display:flex;align-items:end;padding:1rem}
.hotel-photo span{background:rgba(255,255,255,.9);border-radius:999px;padding:.45rem .7rem;font-size:.7rem;font-weight:800}
.hotel-feature-body{padding:clamp(1.3rem,4vw,3rem);display:flex;flex-direction:column;justify-content:center}
.feature-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0 1.5rem}
.feature-chips span{background:var(--teal-soft);color:var(--teal);border-radius:999px;padding:.45rem .7rem;font-size:.72rem;font-weight:700}
.button-row{display:flex;flex-wrap:wrap;gap:.6rem}
.timeline{position:relative;display:grid;gap:.85rem;counter-reset:trip-day}
.timeline:before{content:"";position:absolute;left:31px;top:22px;bottom:22px;border-left:2px dashed var(--line)}
.timeline article{counter-increment:trip-day;position:relative;display:grid;grid-template-columns:160px 1fr;gap:1rem;padding:1.2rem;margin-left:82px;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 35px rgba(22,38,42,.07)}
.timeline article:before{content:counter(trip-day);position:absolute;left:-82px;top:13px;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:white;font:700 1.5rem var(--serif);border:5px solid var(--paper);box-shadow:0 8px 20px rgba(27,122,128,.25)}
.timeline article:nth-child(4n):before,.timeline article:nth-child(7n):before{background:var(--coral)}
.timeline-date{display:grid;align-content:start;border-right:1px solid var(--line)}
.timeline-date b{font-size:.84rem}.timeline-date span{color:var(--coral);font-weight:800;margin-top:.2rem}
.timeline article small{color:var(--coral);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.timeline article h3{margin:.3rem 0;font-size:1.05rem}.timeline article p{margin:0;font-size:.88rem}
.empty-inline{padding:2rem;border:1px dashed #c9d1cd;border-radius:16px;color:var(--muted);text-align:center}
.page-head{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,8vw,7rem) 0 2.2rem}
.page-head h1{max-width:850px;margin-bottom:1rem}
.page-head p{font-size:1.05rem;max-width:680px;margin-bottom:0}
.plan-layout,.buy-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:1.4rem;align-items:start;margin-top:0}
.form-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:clamp(1rem,3vw,2rem);box-shadow:0 12px 30px rgba(23,52,55,.06)}
.form-card h2{font-size:1.55rem}

.mode-switch{width:min(1120px,calc(100% - 2rem));margin:0 auto;display:flex;gap:.5rem;background:#e9ece5;padding:.35rem;border-radius:16px}
.mode-switch button{flex:1;border:0;background:transparent;border-radius:12px;padding:.85rem;font-weight:800;cursor:pointer}
.mode-switch button.active{background:white;box-shadow:0 4px 12px rgba(23,52,55,.08)}
.location-status + .content-section{margin-top:clamp(2rem,4vw,3rem)}
.location-status{width:min(1120px,calc(100% - 2rem));margin:.8rem auto 0;min-height:24px;color:var(--teal);font-size:.85rem;font-weight:700}
.places-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.place-card{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.place-card img{width:100%;height:210px;object-fit:cover;background:var(--teal-soft)}
.place-card>.place-gallery{position:relative;display:flex;width:100%;height:220px;padding:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;background:linear-gradient(135deg,var(--teal-soft),var(--gold-soft))}
.place-gallery::-webkit-scrollbar{display:none}.place-gallery figure{position:relative;flex:0 0 100%;height:100%;margin:0;scroll-snap-align:start}.place-gallery figure img{width:100%;height:100%;object-fit:cover}.place-gallery figcaption{position:absolute;left:.55rem;bottom:.5rem;max-width:70%;padding:.25rem .45rem;border-radius:999px;background:rgba(8,31,33,.72);font-size:.55rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.place-gallery figcaption a{color:white;text-decoration:none}.gallery-count{position:sticky;right:.55rem;top:.55rem;align-self:flex-start;margin:.55rem .55rem 0 -3.5rem;padding:.28rem .48rem;border-radius:999px;background:rgba(255,255,255,.9);color:var(--ink);font-size:.62rem;font-weight:800;z-index:2;white-space:nowrap}.place-photo-loading{width:100%;display:grid;place-items:center;align-content:center;gap:.45rem;color:var(--teal)}.place-photo-loading span{font-size:2rem}.place-photo-loading small{font-weight:800}
.place-card>div{padding:1.1rem}
.place-card small,.near-card>span{color:var(--coral);font-weight:800;text-transform:uppercase;font-size:.68rem;letter-spacing:.08em}
.place-card h3{font-family:var(--serif);font-size:1.4rem;margin:.45rem 0 1rem}
.near-card{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:1.2rem;min-height:170px;display:flex;flex-direction:column;align-items:start}
.near-card h3{font-family:var(--serif);font-size:1.35rem;flex:1;margin:.5rem 0 1rem}

.album-toolbar{width:min(1120px,calc(100% - 2rem));margin:0 auto 1rem;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.album-tabs{display:flex;gap:.45rem;overflow:auto;padding:.25rem;scrollbar-width:none}
.album-tabs button{border:1px solid var(--line);background:var(--card);border-radius:999px;min-height:42px;padding:.55rem .8rem;white-space:nowrap;font-weight:700;cursor:pointer}
.album-tabs button.active{background:var(--teal);color:white;border-color:var(--teal)}
.album-tabs span{opacity:.7;margin-left:.25rem}
.memory-layout{width:min(1120px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:290px 1fr;gap:1.2rem;align-items:start}
.upload-card{position:sticky;top:92px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:1.2rem}
.upload-icon{width:52px;height:52px;border-radius:16px;background:var(--coral-soft);color:var(--coral);display:grid;place-items:center;font-size:1.6rem}
.upload-card h2{font-size:1.35rem;margin:1rem 0}
.file-drop{position:relative;display:block;border:1px dashed #9bb1ad;border-radius:15px;padding:1.2rem;text-align:center;color:var(--teal);font-weight:700;margin-bottom:1rem;cursor:pointer;overflow:hidden}
.file-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.file-drop span,.file-drop small{display:block}.file-drop small{margin-top:.3rem;font-weight:500;line-height:1.35}
#upload-status{font-size:.78rem;color:var(--teal);text-align:center;margin-top:.7rem;min-height:1rem}
.memory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.memory-card{background:var(--card);border:1px solid var(--line);border-radius:17px;overflow:hidden;min-width:0}
.memory-open{width:100%;height:210px;padding:0;border:0;background:#e6ebe7;position:relative;cursor:pointer}
.memory-open img,.memory-open video{width:100%;height:100%;object-fit:cover}
.video-mark{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.88);color:var(--teal)}
.memory-card-copy{padding:.8rem;display:grid;grid-template-columns:1fr auto;gap:.25rem}
.memory-card-copy small,.memory-card-copy strong{grid-column:1/2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.memory-card-copy small{color:var(--muted);font-size:.68rem}
.mini-like{grid-column:2;grid-row:1/3;border:0;background:transparent;color:#889998;cursor:pointer;font-weight:800}
.mini-like.active{color:var(--coral)}

.buy-head .eyebrow{color:var(--teal)}
.buy-camera{width:66px;height:66px;border-radius:20px;background:var(--coral-soft);color:var(--coral);display:grid;place-items:center;font-size:2rem;margin-bottom:1.2rem}
.buy-list{display:grid;gap:.65rem}
.buy-list article{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:1rem;display:flex;justify-content:space-between;gap:1rem}
.buy-list h3{margin:.25rem 0}.buy-list p{margin:0}.buy-list strong{color:var(--teal);white-space:nowrap}

.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:0}
.settings-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:1.25rem}
.settings-title{display:flex;gap:.85rem;align-items:flex-start;margin-bottom:1.1rem}
.settings-title h2{font-family:var(--sans);letter-spacing:-.02em;font-size:1.15rem;margin:0 0 .25rem}
.settings-title p{font-size:.82rem;margin:0}
.settings-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;font-weight:800}
.settings-icon.coral{background:var(--coral-soft);color:var(--coral)}
.settings-icon.teal{background:var(--teal-soft);color:var(--teal)}
.settings-icon.gold{background:var(--gold-soft);color:#80611b}
.settings-icon.neutral{background:#e9ebe5;color:var(--ink)}
.member-list{display:grid;margin-bottom:1rem}
.member-list>div{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:.65rem;padding:.75rem 0;border-bottom:1px solid var(--line)}
.member-list span:nth-child(2){display:grid}.member-list small{color:var(--muted)}
.member-list em{font-style:normal;background:var(--teal-soft);color:var(--teal);padding:.35rem .55rem;border-radius:999px;font-size:.68rem;font-weight:800}
.member-actions{display:flex;align-items:center;gap:.4rem}.member-actions select{max-width:145px;min-height:38px;border:1px solid var(--line);border-radius:11px;background:white;padding:.35rem;color:var(--ink)}.member-actions .member-remove{width:36px;height:36px;background:#fff0ed;color:#9f3c2d}.password-panel{margin-top:1rem;border-top:1px solid var(--line);padding-top:1rem}.password-panel summary{cursor:pointer;color:var(--teal);font-weight:800}.password-panel form{display:grid;gap:.7rem;margin-top:.9rem}
.invite-result{display:grid;gap:.5rem;margin-top:1rem}
.invite-result input{font-size:.75rem}
.invite-result small{color:var(--muted)}
.install-help{font-size:.82rem;margin-top:1rem;border-top:1px solid var(--line);padding-top:1rem}
.install-help p{font-size:.78rem;margin:.35rem 0}
.settings-row{display:flex;align-items:center;justify-content:space-between;margin:1.5rem 0}

.bottom-nav{position:fixed;z-index:45;bottom:0;left:0;right:0;padding:0 .7rem calc(.55rem + env(safe-area-inset-bottom));pointer-events:none}
.bottom-nav>div{pointer-events:auto;width:min(560px,100%);margin:auto;background:rgba(255,253,248,.94);border:1px solid rgba(23,52,55,.12);backdrop-filter:blur(20px);box-shadow:0 -8px 35px rgba(23,52,55,.12);border-radius:21px;display:grid;grid-template-columns:repeat(5,1fr);padding:.35rem}
.bottom-nav button{min-width:0;height:60px;border:0;background:transparent;border-radius:16px;display:grid;place-items:center;align-content:center;gap:.18rem;color:#728381;cursor:pointer}
.bottom-nav button>span{font-size:1.12rem;line-height:1}
.bottom-nav button small{font-size:.64rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.bottom-nav button.active{background:var(--teal-soft);color:var(--teal)}
.bottom-nav button[data-view="buy"]{background:var(--gold-soft);color:#795b20}
.bottom-nav button[data-view="buy"].active{background:var(--gold);color:var(--ink)}

#modal-root:empty{display:none}
.modal-backdrop{position:fixed;z-index:100;inset:0;background:rgba(11,34,36,.58);backdrop-filter:blur(5px);padding:clamp(.7rem,3vw,2rem);display:grid;place-items:center}
.modal{width:min(520px,100%);max-height:min(88svh,900px);overflow:auto;background:var(--paper);border-radius:25px;padding:clamp(1rem,4vw,2rem);box-shadow:0 30px 90px rgba(0,0,0,.26)}
.modal.wide{width:min(1020px,100%)}
.modal-head{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1.2rem}
.modal-head h2{margin-bottom:0}
.icon-button{border:0;background:white;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:1.25rem;cursor:pointer;flex:0 0 auto}
.hotel-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.5rem;height:300px;margin-bottom:1.2rem}
.hotel-gallery img{width:100%;height:100%;object-fit:cover;border-radius:14px}
.hotel-contact{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.6rem;margin:1.2rem 0}
.hotel-contact>div{display:grid;gap:.3rem;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:.8rem}
.hotel-contact small{color:var(--muted)}.hotel-contact b,.hotel-contact a{font-size:.8rem}
.hotel-schedule{display:grid;gap:.5rem}
.hotel-schedule>div{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:.7rem;border-bottom:1px solid var(--line);padding:.7rem 0}
.hotel-schedule time{color:var(--coral);font-weight:800}
.source-note{font-size:.72rem;margin-top:1.2rem}
.memory-view{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:1.2rem}
.memory-stage{background:#0b2022;border-radius:17px;min-height:560px;display:grid;place-items:center;overflow:hidden}
.memory-stage img,.memory-stage video{width:100%;height:100%;max-height:70svh;object-fit:contain}
.memory-view aside{padding:.5rem;max-height:72svh;overflow:auto}
.comment-list{display:grid;gap:.55rem;margin:1rem 0}
.comment-list>div{background:white;border:1px solid var(--line);border-radius:13px;padding:.7rem}
.comment-list p{margin:.25rem 0;font-size:.85rem}.comment-list small{font-size:.65rem;color:var(--muted)}

.avatar{overflow:hidden}.avatar img,.profile-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}.profile-preview{width:74px;height:74px;border-radius:22px;background:var(--coral-soft);color:var(--coral);font:700 1.7rem var(--serif);display:grid;place-items:center;overflow:hidden}.profile-photo-row label{position:relative;overflow:hidden}.profile-photo-row input{position:absolute;inset:0;opacity:0;cursor:pointer}.profile-logout{margin-top:.7rem}
.creation-options{display:grid;gap:.75rem}.creation-options>button{width:100%;border:1px solid var(--line);border-radius:19px;background:var(--card);padding:1rem;display:grid;grid-template-columns:54px 1fr;gap:1rem;text-align:left;cursor:pointer;transition:.2s}.creation-options>button:hover{border-color:var(--teal);transform:translateY(-1px)}.creation-options>button>span{width:54px;height:54px;border-radius:17px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-size:1.5rem}.creation-options b{font-size:1rem}.creation-options p{font-size:.78rem;margin:.3rem 0 0}.privacy-panel{border:1px solid #e9cf9b;background:#fff7e4;border-radius:16px;padding:1rem;margin-bottom:1rem}.privacy-panel b{color:#6f501b}.privacy-panel p{font-size:.8rem;margin:.35rem 0 0;color:#735f39}.import-drop,.document-drop{min-height:190px;border:2px dashed #9eb6b1;border-radius:20px;background:linear-gradient(145deg,#f1f8f4,#fff8e9);display:grid;place-items:center;align-content:center;gap:.45rem;text-align:center;padding:1.2rem;cursor:pointer;transition:.2s}.import-drop.drag,.document-drop.drag{border-color:var(--coral);transform:translateY(-2px)}.import-drop input,.document-drop input{position:absolute;opacity:0;pointer-events:none}.import-drop>span,.document-drop>span{width:52px;height:52px;border-radius:17px;background:var(--teal);color:white;display:grid;place-items:center;font-size:1.5rem}.import-drop small,.document-drop small{color:var(--muted)}.import-drop em{font-style:normal;color:var(--coral);font-weight:800}.check-confirm{display:flex;gap:.7rem;align-items:flex-start;padding:.9rem 0;font-size:.83rem}.check-confirm input{margin-top:.2rem}.extraction-summary{border:1px solid var(--line);background:var(--teal-soft);border-radius:17px;padding:1rem;margin-bottom:1rem}.extraction-summary>div:first-child{display:flex;justify-content:space-between;gap:1rem}.extraction-summary span{font-size:.72rem;color:var(--teal);font-weight:800}.extracted-chips{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.7rem}.extracted-chips span{background:white;padding:.4rem .6rem;border-radius:999px}.extraction-summary details{margin-top:.8rem}.extraction-summary details p{font-size:.75rem;margin:.35rem 0}.extracted-review{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1rem}.extracted-review p{margin:0;padding:.75rem;background:white;border:1px solid var(--line);border-radius:13px;font-size:.82rem}
.trip-builder{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.92fr);gap:1rem}.builder-fields,.builder-documents{border:1px solid var(--line);border-radius:22px;background:var(--card);padding:1.2rem}.builder-documents{background:linear-gradient(145deg,rgba(223,242,236,.7),rgba(244,216,157,.18))}.builder-section-title{display:grid;grid-template-columns:46px 1fr;gap:.75rem;align-items:center;margin-bottom:1rem}.builder-section-title>span{width:46px;height:46px;border-radius:15px;background:var(--teal);color:white;display:grid;place-items:center;font-size:1.25rem}.builder-section-title div{display:grid}.builder-section-title small{font-size:.72rem;line-height:1.35;color:var(--muted);margin-top:.2rem}.privacy-panel.compact{padding:.75rem}.privacy-panel.compact p{font-size:.72rem}.import-drop.compact{min-height:155px}.trip-builder>.keep-documents,.trip-builder>.builder-actions{grid-column:1/-1}.builder-actions{display:flex;gap:.75rem}.builder-actions .button{flex:1}.keep-documents{background:var(--teal-soft);border-radius:14px;padding:.85rem 1rem}
.booking-preview{margin-top:4.5rem}.booking-mini-grid,.travel-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.booking-mini-grid article,.travel-facts article{background:var(--card);border:1px solid var(--line);border-radius:19px;padding:1rem;min-width:0}.booking-mini-grid small,.travel-facts small,.flight-card small{color:var(--coral);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.booking-mini-grid h3,.travel-facts h3{font:700 1.15rem var(--serif);margin:.4rem 0}.booking-mini-grid article>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem}.booking-mini-grid article>div span{text-align:center;font-size:.68rem;color:var(--muted)}.booking-mini-grid p,.travel-facts p{font-size:.8rem;margin:.35rem 0 0}.home-tool-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.home-tool-strip button{border:1px solid var(--line);background:var(--card);border-radius:19px;padding:1rem;text-align:left;display:grid;grid-template-columns:42px 1fr;gap:.15rem .7rem;cursor:pointer}.home-tool-strip button>span{grid-row:1/3;width:42px;height:42px;border-radius:14px;background:var(--gold-soft);color:#7d5d19;display:grid;place-items:center}.home-tool-strip small{color:var(--muted);font-size:.7rem;line-height:1.35}.timeline-event{position:relative;cursor:pointer;transition:.2s}.timeline-event:hover{border-color:var(--teal);transform:translateY(-1px)}.event-open{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--coral)}
.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.tool-grid>button{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:1rem;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:.8rem;text-align:left;cursor:pointer}.tool-grid b{font-size:.92rem}.tool-grid p{font-size:.72rem;margin:.25rem 0 0;line-height:1.35}.tool-grid em{font-style:normal;font-size:1.4rem;color:var(--coral)}
.booking-full{margin-top:0}.flight-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.flight-card{padding:1.3rem;border-radius:22px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 30px rgba(23,52,55,.06)}.flight-card h3{font-family:var(--serif);font-size:1.35rem}.flight-card h3 b{color:var(--coral)}.flight-time{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 0;border-block:1px solid var(--line)}.flight-time strong{font:700 1.6rem var(--serif);color:var(--teal)}.flight-time span{text-align:center;color:var(--muted);font-size:.75rem}.travel-facts{grid-template-columns:repeat(3,1fr);margin-top:1rem}.flight-edit,fieldset{border:1px solid var(--line);border-radius:17px;padding:1rem;margin:0 0 1rem}legend{padding:0 .5rem;font-weight:800;color:var(--teal)}
.documents-layout{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:1rem;align-items:start;margin-top:0}.document-upload-card{position:sticky;top:92px;border:1px solid var(--line);background:var(--card);border-radius:22px;padding:1rem}.document-drop{min-height:165px}.document-list{display:grid;gap:.7rem}.document-list article{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:.9rem;align-items:center;border:1px solid var(--line);background:var(--card);border-radius:18px;padding:.8rem}.doc-icon{width:58px;height:64px;border-radius:13px;background:linear-gradient(145deg,var(--coral),#9f4931);color:white;display:grid;place-items:center;font-size:.7rem;font-weight:900}.document-list h3{font-size:.9rem;margin:.3rem 0;overflow-wrap:anywhere}.document-list small{color:var(--muted);font-size:.68rem}.document-actions{display:flex;flex-wrap:wrap;justify-content:end;gap:.35rem;max-width:230px}.document-actions .button{padding:.55rem .7rem}.danger{color:#a43a2c!important}.extracted-badge{font-size:.66rem;color:var(--teal);font-weight:800}#document-status,#import-status{min-height:1.3rem;text-align:center;color:var(--teal);font-size:.76rem;margin-top:.6rem}
.weather-current{display:flex;gap:1rem;align-items:center;background:linear-gradient(135deg,var(--teal),#2f9994);color:white;border-radius:25px;padding:1.3rem;margin:1rem 0}.weather-current>span{font-size:4rem}.weather-current div{display:grid}.weather-current small{opacity:.8}.weather-current strong{font:700 3rem var(--serif)}.weather-current p{margin:0;color:white}.weather-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.6rem}.weather-days article{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:.8rem;text-align:center;display:grid;gap:.35rem}.weather-days span{font-size:1.5rem}.weather-days b{color:var(--teal)}.weather-days em{font-style:normal;color:var(--muted)}
.budget-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:1rem;align-items:start;margin-top:0}.budget-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.budget-summary article{border:1px solid var(--line);background:var(--card);border-radius:19px;padding:1rem;display:grid;gap:.35rem}.budget-summary article.accent{background:var(--teal);color:white}.budget-summary small{font-weight:800;opacity:.72}.budget-summary strong{font:700 1.6rem var(--serif)}.budget-summary .text-button{text-align:left}.rate-note{font-size:.72rem;color:var(--muted);margin:.7rem}.expense-list{display:grid;gap:.6rem}.expense-list article{display:grid;grid-template-columns:44px 1fr auto 30px;gap:.7rem;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:17px;padding:.75rem}.expense-list article>span{width:44px;height:44px;border-radius:14px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-weight:900}.expense-list article>div{display:grid}.expense-list small{color:var(--muted);font-size:.67rem}.expense-list article>button{border:0;background:transparent;color:var(--coral);font-size:1.2rem;cursor:pointer}
.checklist-shell{width:min(720px,calc(100% - 2rem));background:var(--card);border:1px solid var(--line);border-radius:25px;padding:clamp(1rem,4vw,2rem);box-shadow:var(--shadow)}.check-progress{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem;margin-bottom:1.2rem}.check-progress b{font:700 1.3rem var(--serif)}.check-progress>span{height:11px;border-radius:999px;background:#e6e9e3;overflow:hidden}.check-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--gold));border-radius:inherit}.check-items{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.check-items label{display:grid;grid-template-columns:24px 1fr 28px;align-items:center;gap:.5rem;padding:.75rem;background:var(--paper);border-radius:14px}.check-items input:checked+span{text-decoration:line-through;color:var(--muted)}.check-items button{border:0;background:transparent;color:var(--coral);cursor:pointer}.checklist-shell form{display:flex;gap:.5rem;margin-top:1rem}.checklist-shell form input{flex:1}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.contact-grid a{min-height:160px;border:1px solid var(--line);background:var(--card);border-radius:21px;padding:1rem;text-decoration:none;color:var(--ink);display:grid;align-content:end;gap:.4rem}.contact-grid strong{font:700 1.5rem var(--serif);color:var(--teal)}.contact-grid span{color:var(--coral);font-weight:800;font-size:.75rem}.safety-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.safety-grid article{border:1px solid var(--line);border-top:6px solid var(--teal);background:var(--card);border-radius:22px;padding:1.2rem}.safety-grid article.care{border-top-color:var(--coral)}.safety-grid ul{padding-left:1.2rem;color:var(--muted)}.safety-grid li{margin:.65rem 0}
.phrase-layout{display:grid;grid-template-columns:300px 1fr;gap:1rem;align-items:start;margin-top:0}.phrase-layout>form{position:sticky;top:92px}.phrase-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.phrase-grid article{position:relative;display:grid;grid-template-columns:48px 1fr;gap:.8rem;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1rem}.speak-button{width:48px;height:48px;border:0;border-radius:15px;background:var(--teal);color:white;cursor:pointer}.speak-button.speaking{background:var(--gold);color:var(--ink);animation:pulse 1s infinite}.phrase-grid small{color:var(--coral);text-transform:uppercase;font-size:.62rem;font-weight:800}.phrase-grid h3{font:700 1.25rem var(--serif);margin:.25rem 0}.phrase-grid p{margin:0}.phrase-grid em{font-size:.7rem;color:var(--muted)}.phrase-delete{position:absolute;right:.45rem;top:.45rem;border:0;background:transparent;color:var(--muted);cursor:pointer}@keyframes pulse{50%{transform:scale(.92)}}
.parking-card{display:grid;grid-template-columns:90px 1fr;gap:1.2rem;align-items:center;background:linear-gradient(135deg,var(--teal),#073d42);color:white;border-radius:28px;padding:clamp(1.2rem,4vw,2rem)}.parking-card>span{width:80px;height:80px;border-radius:24px;background:var(--gold);color:var(--ink);display:grid;place-items:center;font:700 2rem var(--serif)}.parking-card h2{color:white}.parking-card p{color:#c9dfdc}.parking-card .button.outline{border-color:rgba(255,255,255,.35);color:white;background:rgba(255,255,255,.08)}.settings-form{max-width:720px;margin:auto}.danger-button{background:#fff0ed;color:#9f3c2d;border-color:#f1c6bd}

/* V4.2 is the canonical trip master. Theme tokens change personality, never navigation. */
.v4-master-hero{min-height:100svh;position:relative;overflow:hidden;align-items:center;background:linear-gradient(165deg,var(--hero-light,#7dccce) 0%,var(--hero-mid,#3fa0a0) 38%,var(--hero-dark,#0e4b4e) 100%)}
.v4-master-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,26,28,.24),transparent 65%),radial-gradient(circle at 24% 20%,rgba(255,255,255,.2),transparent 28%);pointer-events:none}
.v4-master-hero:after{content:"";position:absolute;z-index:1;left:-10%;right:-10%;bottom:-72px;height:145px;background:var(--paper);border-radius:50% 50% 0 0/70% 70% 0 0}
.v4-master-hero .hero-overlay{position:relative;z-index:2;padding:8rem 0 9rem}.v4-master-hero .hero-overlay h1{font-size:clamp(4rem,10vw,8.5rem);letter-spacing:-.065em;line-height:.86;text-shadow:0 10px 40px rgba(0,0,0,.16)}
.theme-india{--hero-light:#f5bd52;--hero-mid:#d66a36;--hero-dark:#722d3c}.theme-india .v4-sun-art:before{background:#ffcf58}.theme-india+.v4-facts{background:#48252f}
.theme-britain{--hero-light:#7ba6a4;--hero-mid:#356b72;--hero-dark:#183847}.theme-britain+.v4-facts{background:#132f3a}
.theme-canada{--hero-light:#88ad91;--hero-mid:#3f7466;--hero-dark:#183f3c}.theme-canada+.v4-facts{background:#163632}
.theme-alpine{--hero-light:#9fc7c4;--hero-mid:#548f8f;--hero-dark:#244e5a}.theme-coast{--hero-light:#83c8ca;--hero-mid:#398f96;--hero-dark:#123f4b}
.journey-preview{margin-top:2rem}.journey-line{display:flex;align-items:stretch;gap:.65rem;overflow-x:auto;padding:.45rem .1rem .8rem;scrollbar-width:thin}.journey-line article{display:grid;grid-template-columns:34px minmax(140px,1fr);gap:.65rem;align-items:center;min-width:190px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:.8rem}.journey-line article>span{width:34px;height:34px;border-radius:12px;background:var(--teal);color:white;display:grid;place-items:center;font-weight:800}.journey-line article div{display:grid;gap:.12rem}.journey-line small{font-size:.67rem;color:var(--coral);font-weight:800}.journey-line b{font:700 1rem var(--serif)}.journey-line em{font-style:normal;color:var(--muted);font-size:.72rem}.journey-line>i{font-style:normal;color:var(--coral);font-size:1.35rem;align-self:center}.journey-line.compact article{background:var(--paper)}
.event-location{color:var(--teal);font-size:.74rem;font-weight:700;margin:.25rem 0}.timeline-event.suggested-event{border-style:dashed;background:linear-gradient(120deg,#fffdf7,#f7fbf8)}.timeline-event.suggested-event>div:nth-child(2)>small{color:#9b7222}
.studio-head{background:linear-gradient(135deg,#123f43,#236b6d);color:white}.studio-head h1,.studio-head p{color:white}.studio-overview .settings-form{max-width:none}.studio-journey{display:grid;gap:1.25rem}.stop-editor-list{display:grid;gap:.85rem}.stop-card{display:grid;grid-template-columns:44px 1fr;gap:1rem;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:1rem}.stop-number{width:44px;height:44px;border-radius:15px;background:var(--teal);color:white;display:grid;place-items:center;font:700 1.15rem var(--serif)}.stop-fields{display:grid;gap:.7rem}.new-stop-card{border:2px dashed #bfd4d0;background:#fbfdfb}.generate-card{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;background:linear-gradient(135deg,#fff5d9,#f8e4b3);border:1px solid #e7cc8a;border-radius:28px}.generate-card p{max-width:720px}.generate-card #generate-status{grid-column:1/-1;color:var(--teal);font-weight:700}.extracted-stops{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.extracted-stops span{padding:.5rem .75rem;border-radius:999px;background:var(--teal-soft);color:var(--teal);font-size:.75rem;font-weight:700}
.studio-transport{display:grid;gap:1rem}.transport-leg-list{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.transport-leg-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:1rem;display:grid;gap:.7rem}.leg-heading{display:flex;align-items:center;gap:.7rem}.leg-heading>span{width:36px;height:36px;border-radius:12px;background:var(--coral);color:white;display:grid;place-items:center;font-weight:900}.leg-heading b{font:700 1.05rem var(--serif)}.weather-actions{display:flex;align-items:end;gap:.8rem}.weather-actions .field{min-width:240px}.config-note,.access-note{padding:.8rem 1rem;border-radius:14px;background:var(--gold-soft);color:#72571e;font-size:.76rem}.document-error{display:block;color:#a43a2c!important;margin-top:.35rem}.extracted-badge.failed{color:#a43a2c}.upload-progress{display:grid;gap:.35rem;margin-top:.7rem}.upload-progress>span{display:block;height:9px;background:#e4ebe7;border-radius:99px;overflow:hidden}.upload-progress>span i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--gold));border-radius:inherit;transition:width .15s}.upload-progress small{overflow-wrap:anywhere;color:var(--muted)}.memory-like-total,.mini-like.static{color:var(--coral);font-weight:800}.file-drop small{color:var(--muted)}

.buy-photo-drop{position:relative;min-height:180px;border:2px dashed #9db2ae;border-radius:19px;background:linear-gradient(145deg,var(--teal-soft),var(--gold-soft));display:grid;place-items:center;align-content:center;gap:.5rem;overflow:hidden;cursor:pointer;margin-bottom:1rem}.buy-photo-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.buy-photo-drop>span{width:54px;height:54px;border-radius:17px;background:var(--teal);color:white;display:grid;place-items:center;font-size:1.7rem}.buy-photo-drop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.buy-analysis-card{margin:1rem 0;border:1px solid #dfc37e;background:#fff8e3;border-radius:19px;padding:1rem}.buy-analysis-card>div:first-child{float:right;display:grid;text-align:right}.buy-analysis-card h3{font:700 1.35rem var(--serif);margin:.2rem 0}.buy-analysis-card p{font-size:.8rem}.analysis-prices{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;clear:both;margin:.8rem 0}.analysis-prices span{display:grid;background:white;border-radius:13px;padding:.7rem}.analysis-prices small{color:var(--muted);font-size:.65rem}.analysis-prices b{color:var(--teal)}.buy-analysis-card>strong{display:block;color:var(--coral);margin:.6rem 0}.buy-analysis-card ul{padding-left:1.1rem;font-size:.75rem;color:var(--muted)}.ai-disclaimer{display:block;text-align:center;color:var(--muted);margin-top:.7rem}.saved-buy{align-items:center!important}.saved-buy img{width:62px;height:62px;border-radius:14px;object-fit:cover}.saved-buy>div{flex:1}.saved-buy span{display:block;color:var(--teal);font-size:.7rem;font-weight:700;margin-top:.35rem}

/* PV1.4 destination workspaces and location-aware tools */
.studio-journey{width:min(1120px,calc(100% - 2rem));margin:3rem auto}.destination-editor-list{display:grid;gap:1.15rem}.destination-workspace{background:var(--card);border:1px solid var(--line);border-radius:26px;box-shadow:0 12px 34px rgba(23,52,55,.07);overflow:hidden}.destination-workspace>header{display:grid;grid-template-columns:48px 1fr auto;gap:.8rem;align-items:center;padding:1rem 1.2rem;background:linear-gradient(100deg,var(--teal-soft),rgba(244,216,157,.22));border-bottom:1px solid var(--line)}.destination-workspace>header h2{font-size:1.55rem;margin:.12rem 0}.destination-workspace>header small{color:var(--coral);font-weight:800}.destination-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;padding:1.2rem}.destination-grid>section{min-width:0}.destination-grid h3{font-size:1rem}.destination-workspace>footer{padding:0 1.2rem 1.2rem}.save-indicator{color:var(--teal);font-size:.75rem;font-weight:800}.new-destination{border:2px dashed #98b9b2;margin-top:1.2rem;background:#fbfdfb}.incoming-journey{border:1px solid var(--line);border-radius:17px;background:var(--paper);overflow:hidden;margin-bottom:1rem}.incoming-journey summary{display:grid;grid-template-columns:40px 1fr;gap:.7rem;align-items:center;padding:.85rem;cursor:pointer}.incoming-journey summary>span{width:40px;height:40px;border-radius:13px;background:var(--coral);color:white;display:grid;place-items:center;font-size:.72rem;font-weight:800}.incoming-journey summary div{display:grid}.incoming-journey summary small{color:var(--muted)}.incoming-fields{padding:0 .85rem .85rem}.linked-documents{border:1px solid var(--line);border-radius:17px;padding:.85rem}.subhead{display:flex;align-items:start;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}.subhead>div,.subhead:not(:has(>div)){display:grid}.subhead small{display:block;color:var(--muted);font-size:.67rem;max-width:360px;margin-top:.18rem}.linked-doc-list{display:grid;gap:.4rem;margin-bottom:.65rem}.linked-doc-list a{display:grid;grid-template-columns:42px 1fr auto;gap:.55rem;align-items:center;text-decoration:none;color:var(--ink);background:var(--paper);border-radius:12px;padding:.5rem}.linked-doc-list a span{color:var(--coral);font-size:.62rem;font-weight:900}.linked-doc-list a b{font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linked-doc-list a em{font-style:normal}.mini-document-drop{display:block;border:1px dashed #96b2ad;border-radius:12px;padding:.75rem;text-align:center;color:var(--teal);font-size:.76rem;font-weight:800;cursor:pointer}.mini-document-drop input{position:absolute;opacity:0;pointer-events:none}.compact-empty{min-height:auto;padding:.7rem;margin-bottom:.6rem}.generate-card{width:min(1120px,calc(100% - 2rem));margin:3rem auto;padding:clamp(1.2rem,4vw,2rem)}.generate-card #generate-status{display:grid;gap:.2rem;margin-top:.7rem}.generate-card #generate-status span{font-size:.75rem;font-weight:500;color:var(--muted)}
.explore-controls{width:min(1120px,calc(100% - 2rem));margin:0 auto;display:flex;gap:1rem;justify-content:space-between;align-items:end}.explore-controls .destination-select{min-width:min(420px,100%)}.language-destination{display:flex;align-items:end;justify-content:space-between;gap:1rem}.language-destination .destination-select{min-width:min(460px,100%)}.language-name{display:grid;text-align:right}.language-name small{color:var(--muted)}.language-name strong{font:700 1.35rem var(--serif);color:var(--teal)}
.sos-shell{background:linear-gradient(145deg,#fffdf8,#f2f8f5)}.sos-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem}.sos-toolbar .destination-select{min-width:min(520px,100%)}.privacy-inline{font-size:.72rem;color:var(--muted);margin:.7rem 0}.sos-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.stay-emergency-card{border-left:5px solid var(--gold);background:var(--card);border-radius:17px;padding:1rem;margin-top:1rem;display:grid;gap:.25rem}.stay-emergency-card small{color:var(--muted)}.stay-emergency-card p{margin:.25rem 0}.parking-planner{display:grid;grid-template-columns:80px 1.1fr .9fr;gap:1.2rem;align-items:start;background:linear-gradient(145deg,#123f43,#236b6d);color:white}.parking-planner h2{color:white}.parking-symbol{width:72px;height:72px;border-radius:22px;background:var(--gold);color:var(--ink);display:grid;place-items:center;font:700 2rem var(--serif)}.parking-options{display:flex;flex-wrap:wrap;gap:.45rem;margin:.7rem 0}.parking-options label input{position:absolute;opacity:0}.parking-options span{display:block;padding:.55rem .7rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;cursor:pointer;font-size:.72rem}.parking-options input:checked+span{background:var(--gold);color:var(--ink);border-color:var(--gold)}.parking-planner .field span{color:#d8ece9}.parked-car{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:1rem;display:grid;gap:.35rem}.parked-car small,.parked-car p{color:#d8ece9}.parking-planner input,.parking-planner select{background:white}
.media-queue{margin-bottom:.8rem}.queue-title{display:flex;justify-content:space-between;font-size:.72rem;color:var(--teal);margin-bottom:.45rem}.queue-items{display:grid;gap:.4rem;max-height:260px;overflow:auto}.queue-items article{display:grid;grid-template-columns:48px minmax(0,1fr) 28px;gap:.5rem;align-items:center;background:var(--paper);border-radius:11px;padding:.35rem}.queue-items img,.queue-items video{width:48px;height:48px;border-radius:9px;object-fit:cover}.queue-items article>div{display:grid;min-width:0}.queue-items b{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-items small{font-size:.62rem;color:var(--muted)}.queue-items button{border:0;background:transparent;color:var(--coral);font-size:1.1rem;cursor:pointer}.group-invite{border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}.group-invite form{display:grid;gap:.6rem}.group-result{display:grid;gap:.5rem;margin-top:.7rem}.group-result label{display:grid;grid-template-columns:1fr auto;gap:.35rem}.group-result label small{grid-column:1/-1}.group-result input{min-width:0}.group-result button{border:0;border-radius:9px;background:var(--teal);color:white;padding:.45rem}.confirm-dialog{text-align:center}.confirm-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 1rem;background:#fff0ed;color:#a43a2c;font:800 1.6rem var(--serif)}.confirm-counts{display:flex;justify-content:center;gap:.5rem;margin:1rem}.confirm-counts span{background:var(--paper);padding:.45rem .7rem;border-radius:999px;font-size:.72rem}.confirm-dialog .button-row{justify-content:center}

@media(max-width:900px){
  .auth-shell{grid-template-columns:1fr}.auth-story{min-height:34svh}.auth-story-copy{padding:3rem 0 1rem}.auth-story-copy h1{font-size:3.6rem}.auth-panel{min-height:66svh;padding-top:5.3rem}
  .trip-grid{grid-template-columns:1fr 1fr}.hotel-feature{grid-template-columns:1fr}.hotel-photo{min-height:300px}
  .plan-layout,.buy-layout{grid-template-columns:1fr}.memory-layout{grid-template-columns:1fr}.upload-card{position:static}
  .memory-grid{grid-template-columns:repeat(3,1fr)}.more-grid{grid-template-columns:1fr}.booking-mini-grid{grid-template-columns:1fr 1fr}.home-tool-strip{grid-template-columns:1fr 1fr}.tool-grid{grid-template-columns:1fr 1fr}.documents-layout,.budget-layout,.phrase-layout{grid-template-columns:1fr}.document-upload-card,.phrase-layout>form{position:static}.weather-days{grid-template-columns:repeat(4,1fr)}
  .memory-view{grid-template-columns:1fr}.memory-stage{min-height:45svh}.memory-view aside{max-height:none}
  .trip-builder{grid-template-columns:1fr}.v4-facts>div{grid-template-columns:repeat(2,1fr)}.v4-facts article:last-child{grid-column:1/-1}.rhythm-section{grid-template-columns:1fr}.transport-leg-list,.destination-grid{grid-template-columns:1fr}.parking-planner{grid-template-columns:70px 1fr}.parked-car{grid-column:2}
}
@media(max-width:680px){
  h1{font-size:2.65rem}
  .topbar{height:60px;top:10px;padding:0 .65rem;width:calc(100% - 16px)}.brand-icon{width:38px;height:38px}.brand b{font-size:1rem}.topbar .language-control{display:none}
  .trip-context{left:auto;right:58px;transform:none;max-width:34vw;text-align:right}.trip-context button{display:block}.trip-context span{display:none}
  .dashboard-main{padding-top:6.5rem}.dashboard-head{align-items:start;flex-direction:column;gap:1rem}.dashboard-head .button{width:100%}
  .trip-grid{grid-template-columns:1fr}.trip-cover{height:180px}
  .trip-main{min-height:100svh}
  .trip-hero{min-height:390px}.hero-overlay{padding:5.5rem 0 3rem}.hero-overlay h1{font-size:3.25rem}.v4-master-hero,.v4-turkey-hero{min-height:100svh}.v4-master-hero .hero-overlay,.v4-turkey-hero .hero-overlay{padding:7rem 0 8rem}.v4-master-hero .hero-overlay h1,.v4-turkey-hero .hero-overlay h1{font-size:clamp(3.8rem,17vw,5.2rem)}.v4-sun-art{right:-40px;top:12vh;opacity:.52}.v4-countdown{gap:.35rem}.v4-countdown div{min-width:66px;padding:.55rem}.v4-countdown strong{font-size:1.5rem}.v4-countdown span{font-size:.5rem}.v4-facts>div{grid-template-columns:1fr 1fr}.v4-facts article:nth-child(3),.v4-facts article:last-child{grid-column:1/-1}.v4-motif+.quick-row{margin-top:1rem}.rhythm-ring{width:min(270px,76vw)}.stop-card{grid-template-columns:1fr}.stop-number{width:38px;height:38px}.generate-card{grid-template-columns:1fr}.generate-card .button{width:100%}
  .quick-row{grid-template-columns:1fr 1fr;margin-top:-1rem}.quick-row button{padding:.75rem}
  .content-section{margin:3rem auto}.section-heading{align-items:start;flex-direction:column}
  .hotel-photo{min-height:240px}.hotel-feature-body{padding:1.2rem}
  .timeline:before{left:21px}.timeline article{grid-template-columns:1fr;margin-left:57px}.timeline article:before{left:-57px;width:44px;height:44px;border-width:4px;font-size:1rem}.timeline-date{border-right:0;border-bottom:1px solid var(--line);padding-bottom:.6rem}
  .page-head{padding:6.25rem 0 1.5rem}.page-head p{font-size:.95rem}
  .field-pair{grid-template-columns:1fr}
  .places-grid{grid-template-columns:1fr}.place-card{display:block}.place-gallery{height:230px}.place-card>div:last-child{padding:1rem}
  .album-toolbar{align-items:stretch;flex-direction:column}.album-toolbar>.button{width:100%}
  .memory-grid{grid-template-columns:1fr 1fr}.memory-open{height:180px}
  .hotel-gallery{height:auto;grid-template-columns:1fr 1fr}.hotel-gallery img{height:160px}.hotel-gallery img:first-child{grid-column:1/-1;height:230px}
  .hotel-contact{grid-template-columns:1fr}.hotel-schedule>div{grid-template-columns:58px 1fr}.hotel-schedule button{grid-column:2}
  .modal-backdrop{align-items:end;padding:0}.modal{width:100%;max-height:92svh;border-radius:24px 24px 0 0;padding-bottom:calc(1.2rem + env(safe-area-inset-bottom))}.trip-builder{grid-template-columns:1fr}.builder-actions{flex-direction:column}.trip-builder>.keep-documents,.trip-builder>.builder-actions{grid-column:1}.builder-fields,.builder-documents{padding:1rem}
  .booking-mini-grid,.flight-grid,.travel-facts,.budget-summary,.contact-grid,.safety-grid,.phrase-grid{grid-template-columns:1fr}.home-tool-strip,.tool-grid{grid-template-columns:1fr 1fr}.document-list article{grid-template-columns:48px 1fr}.doc-icon{width:48px;height:56px}.document-actions{grid-column:1/-1;justify-content:start;max-width:none}.weather-days{display:flex;overflow:auto;scroll-snap-type:x mandatory}.weather-days article{min-width:105px;scroll-snap-align:start}.weather-actions{align-items:stretch;flex-direction:column}.weather-actions .field,.weather-actions .button{width:100%}.check-items{grid-template-columns:1fr}.parking-card{grid-template-columns:1fr}.extracted-review{grid-template-columns:1fr}.explore-controls,.language-destination,.sos-toolbar{align-items:stretch;flex-direction:column}.explore-controls .destination-select,.language-destination .destination-select,.sos-toolbar .destination-select{min-width:0;width:100%}.language-name{text-align:left}.destination-workspace>header{grid-template-columns:40px 1fr}.destination-workspace>header .save-indicator{grid-column:2}.destination-grid{padding:1rem}.destination-workspace>footer{padding:0 1rem 1rem}.parking-planner{grid-template-columns:1fr}.parked-car{grid-column:1}.parking-symbol{width:58px;height:58px}.sos-toolbar .button{width:100%}.subhead{align-items:stretch;flex-direction:column}.subhead .button{width:100%}
}
@media(max-width:390px){
  .brand small{display:none}.trip-context span{font-size:.7rem}.hero-overlay h1{font-size:2.75rem}
  .quick-row small{font-size:.63rem}.quick-row button{grid-template-columns:34px 1fr}.quick-row button>span{width:34px;height:34px}
  .memory-grid{grid-template-columns:1fr}.memory-open{height:260px}
  .bottom-nav{padding-left:.35rem;padding-right:.35rem}.bottom-nav button small{font-size:.57rem}.bottom-nav button{height:56px}
  .auth-story-copy h1{font-size:2.9rem}.auth-panel{padding-left:1rem;padding-right:1rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* PV1.5 mobile-first trip studio, media and practical nearby tools */
.mode-field[hidden]{display:none!important}.linked-upload-row{display:grid;grid-template-columns:minmax(150px,.7fr) 1.3fr;gap:.6rem;align-items:end}.compact-field{margin:0}.linked-file-status{min-height:1.2rem;margin:.45rem 0;color:var(--teal);font-size:.7rem;font-weight:750}.linked-upload-button{width:100%}.place-search-wrap{position:relative}.place-suggestions{position:absolute;z-index:12;left:0;right:0;top:calc(100% - .35rem);max-height:250px;overflow:auto;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 38px rgba(17,46,48,.18);padding:.35rem}.place-suggestions>small{display:block;padding:.65rem;color:var(--muted)}.place-suggestions button{width:100%;display:grid;text-align:left;gap:.12rem;border:0;border-radius:10px;background:white;padding:.65rem;cursor:pointer}.place-suggestions button:hover,.place-suggestions button:focus{background:var(--teal-soft)}.place-suggestions small{color:var(--muted);font-size:.65rem}
.memory-pickers{display:grid;grid-template-columns:1fr .72fr;gap:.55rem}.camera-pick{position:relative;border:1px solid var(--line);border-radius:16px;background:var(--gold-soft);display:grid;place-items:center;align-content:center;gap:.25rem;min-height:110px;text-align:center;cursor:pointer}.camera-pick input{position:absolute;inset:0;opacity:0}.camera-pick span{font-size:1.6rem;color:var(--coral)}.camera-pick b{font-size:.75rem}.album-tabs button{margin-inline-start:calc(var(--album-depth,0) * .6rem)}.memory-social{display:flex;align-items:center;justify-content:space-between;gap:.4rem;color:var(--muted);font-size:.65rem}.memory-stage{position:relative}.memory-close,.memory-nav{position:absolute;z-index:4;border:0;background:rgba(13,38,40,.78);color:white;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(8px)}.memory-close{right:12px;top:12px;width:42px;height:42px;border-radius:50%;font-size:1.45rem}.memory-nav{top:50%;translate:0 -50%;width:46px;height:58px;border-radius:16px;font-size:2rem}.memory-nav.previous{left:12px}.memory-nav.next{right:12px}.buy-photo-drop img{object-fit:contain;background:#eef4f0}
.nearby-planner{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem;background:linear-gradient(145deg,#123f43,#236b6d);color:white}.nearby-planner .field>span,.nearby-planner .check-confirm{color:#d8ece9}.nearby-planner input,.nearby-planner select{background:white}.nearby-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;margin:1rem 0}.nearby-service-grid input{position:absolute;opacity:0}.nearby-service-grid span{min-height:74px;border:1px solid rgba(255,255,255,.24);border-radius:15px;display:grid;place-items:center;align-content:center;text-align:center;gap:.2rem;padding:.45rem;cursor:pointer;font-size:.67rem}.nearby-service-grid b{font-size:1.1rem}.nearby-service-grid input:checked+span{background:var(--gold);color:var(--ink);border-color:var(--gold)}
@media(max-width:900px){.nearby-planner{grid-template-columns:1fr}.memory-stage{min-height:52svh}}
@media(max-width:680px){.linked-upload-row,.memory-pickers{grid-template-columns:1fr}.nearby-service-grid{grid-template-columns:repeat(2,1fr)}.memory-view{height:92svh;overflow:auto}.memory-stage{min-height:48svh}.memory-stage img,.memory-stage video{max-height:58svh}.memory-view aside{padding:1rem}.memory-close{position:fixed;right:14px;top:max(14px,env(safe-area-inset-top));}.memory-nav{width:42px;height:52px}.destination-workspace{border-radius:20px}.studio-journey{width:min(100% - 1rem,1120px)}.tool-grid{grid-template-columns:1fr}.tool-grid>button{min-width:0}.tool-grid>button>div{min-width:0}.tool-grid p{overflow-wrap:anywhere}}

/* PV1.6 chronological, collapsible trip studio and location-aware explore */
.chronology-note{display:inline-flex;margin-top:.45rem;padding:.35rem .65rem;border-radius:999px;background:var(--teal-soft);color:var(--teal);font-size:.7rem;font-weight:800}
.destination-fold>summary{list-style:none}.destination-fold>summary::-webkit-details-marker{display:none}.destination-summary{display:grid;grid-template-columns:48px minmax(0,1fr) auto 28px;gap:.8rem;align-items:center;padding:1rem 1.2rem;background:linear-gradient(100deg,var(--teal-soft),rgba(244,216,157,.22));cursor:pointer}.destination-summary h2{font-size:1.45rem;margin:.1rem 0}.destination-summary small{color:var(--coral);font-weight:800}.destination-summary em{display:block;max-width:620px;color:var(--muted);font-size:.72rem;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fold-cue{font-size:1.5rem;color:var(--teal);transition:rotate .2s ease}.destination-fold[open] .fold-cue{rotate:180deg}.destination-body{border-top:1px solid var(--line)}.destination-body>footer{padding:0 1.2rem 1.2rem}.new-destination .destination-summary{background:linear-gradient(100deg,#fff8e4,var(--teal-soft))}
.linked-doc-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;align-items:center;background:var(--paper);border-radius:12px;padding:.35rem}.linked-doc-item>a{background:transparent;padding:.3rem}.linked-doc-actions{display:flex;gap:.3rem}.linked-doc-actions button{border:0;border-radius:9px;background:white;color:var(--teal);padding:.45rem .55rem;font-size:.62rem;font-weight:800;cursor:pointer}.linked-doc-actions button.danger{color:#a43a2c}
.safety-location-label{display:flex;align-items:center;gap:.65rem;margin:.9rem 0;padding:.7rem .85rem;border-radius:14px;background:var(--teal-soft)}.safety-location-label>span{width:34px;height:34px;border-radius:11px;background:var(--teal);color:white;display:grid;place-items:center}.safety-location-label>div{display:grid}.safety-location-label small{color:var(--muted);font-size:.65rem}.safety-location-label b{font-size:.85rem}
.nearby-origin-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.nearby-filter-bar{width:min(1120px,calc(100% - 2rem));margin:.8rem auto 0;display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:thin}.nearby-filter-bar button{white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:white;color:var(--muted);padding:.5rem .72rem;font-size:.7rem;font-weight:800;cursor:pointer}.nearby-filter-bar button.active{background:var(--gold);border-color:var(--gold);color:var(--ink)}.near-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:.75rem;align-items:start;border:1px solid var(--line);border-radius:19px;background:white;padding:1rem;box-shadow:0 8px 22px rgba(23,52,55,.06)}.near-card-icon{width:48px;height:48px;border-radius:15px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-size:1.25rem;font-weight:900}.near-card-copy{min-width:0}.near-card small{color:var(--coral);font-size:.65rem;font-weight:800;text-transform:capitalize}.near-card h3{font-size:1.05rem;margin:.2rem 0}.near-card p{margin:.25rem 0;color:var(--muted);font-size:.72rem}.opening-hours{display:block;color:var(--teal);font-size:.66rem;margin:.35rem 0}.near-card .button-row{margin-top:.7rem}
@media(max-width:680px){.destination-summary{grid-template-columns:40px minmax(0,1fr) 24px;padding:.85rem}.destination-summary .save-indicator{grid-column:2}.destination-summary h2{font-size:1.2rem}.destination-summary em{max-width:230px}.destination-grid{grid-template-columns:1fr}.destination-body>footer{padding:0 1rem 1rem}.linked-doc-item{grid-template-columns:1fr}.linked-doc-actions{padding:0 .3rem .3rem}.explore-controls{gap:.7rem}.nearby-origin-actions{display:grid;grid-template-columns:1fr}.nearby-origin-actions .button{width:100%}.nearby-filter-bar{width:calc(100% - 1rem);margin-top:.55rem}.section-heading #refresh-place-photos{width:100%}.near-card{grid-template-columns:42px minmax(0,1fr);padding:.8rem}.near-card-icon{width:42px;height:42px}.near-card .button-row{display:grid;grid-template-columns:1fr 1fr}.near-card .button{min-width:0;padding:.55rem .4rem}}

/* PV1.9 polished studio, real-place galleries and document relationships */
.trip-card{position:relative;isolation:isolate}.trip-card-menu{position:absolute!important;z-index:3;top:.7rem;right:.7rem;width:38px!important;height:38px;border:1px solid rgba(255,255,255,.55)!important;border-radius:50%!important;background:rgba(12,48,51,.76)!important;color:#fff!important;display:grid!important;place-items:center;padding:0!important;letter-spacing:.08em;backdrop-filter:blur(10px);box-shadow:0 5px 18px rgba(7,31,33,.18)}
.home-hotel-gallery{display:grid;grid-template-columns:1.45fr .8fr;grid-template-rows:1fr 1fr;gap:5px;min-height:390px;background:#dfeae5}.home-hotel-gallery figure{position:relative;overflow:hidden;margin:0}.home-hotel-gallery figure:first-child{grid-row:1/-1}.home-hotel-gallery.count-1 figure:first-child{grid-column:1/-1}.home-hotel-gallery.count-2 figure:nth-child(2){grid-row:1/-1}.home-hotel-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.home-hotel-gallery figure:hover img{transform:scale(1.025)}.home-hotel-gallery figcaption{position:absolute;left:.55rem;bottom:.55rem;max-width:calc(100% - 1.1rem);padding:.3rem .5rem;border-radius:999px;background:rgba(255,255,255,.9);font-size:.57rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-hotel-gallery figcaption a{color:var(--teal);text-decoration:none}.hotel-rating{display:inline-flex;align-items:center;gap:.35rem;align-self:start;margin-bottom:.8rem;padding:.42rem .65rem;border-radius:999px;background:#fff5cf;color:#805d0a;font-weight:900;font-size:.78rem}.hotel-rating small{color:#806f42;font-weight:600}.hotel-gallery-placeholder{min-height:300px;display:grid;place-items:center;align-content:center;gap:.45rem;background:linear-gradient(145deg,#e7f1ed,#fff8e9);color:var(--teal)}.hotel-gallery-placeholder span{font-size:3rem}.hotel-gallery-placeholder small{font-weight:800}
.studio-head{padding-bottom:2rem;background:radial-gradient(circle at 86% 30%,rgba(245,185,91,.22),transparent 26%),linear-gradient(180deg,#edf8f5,rgba(255,255,255,0))}.studio-head h1{max-width:760px;color:var(--teal)!important}.studio-head p{color:var(--muted)!important}.studio-head .eyebrow{color:var(--coral)!important}.studio-overview{margin-top:-1rem!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.studio-overview .settings-form{max-width:none;border:1px solid rgba(39,105,101,.13);border-radius:26px;padding:clamp(1rem,3vw,1.7rem);background:rgba(255,255,255,.92);box-shadow:0 18px 55px rgba(19,65,65,.09);backdrop-filter:blur(12px)}
.studio-journey{background:linear-gradient(180deg,rgba(238,248,244,.72),rgba(255,250,238,.68));border:1px solid rgba(39,105,101,.11);border-radius:30px;padding:clamp(.8rem,3vw,1.6rem);box-shadow:0 20px 60px rgba(18,62,63,.07)}.destination-editor-list{display:grid;gap:.85rem}.destination-workspace{border:1px solid rgba(28,91,89,.13)!important;border-radius:22px!important;background:rgba(255,255,255,.92)!important;box-shadow:0 12px 38px rgba(27,70,70,.07)!important;overflow:hidden}.destination-summary{background:linear-gradient(100deg,#f7fcfa,#fff9eb)!important;padding:1rem 1.15rem!important}.destination-summary:hover{background:linear-gradient(100deg,#edf8f4,#fff4d8)!important}.destination-summary .stop-number{box-shadow:0 7px 18px rgba(15,89,86,.18)}.destination-body{background:linear-gradient(180deg,#fff,rgba(249,252,250,.95));padding-top:.3rem}.destination-grid>section{border:1px solid rgba(36,95,92,.1);border-radius:18px;background:#fff;padding:1rem;box-shadow:0 6px 20px rgba(20,65,65,.04)}.incoming-journey,.linked-documents{border-radius:17px!important;border-color:rgba(35,96,92,.12)!important;background:#fbfdfc!important}.generate-card{border:0!important;border-radius:28px!important;background:radial-gradient(circle at 90% 10%,rgba(244,194,88,.35),transparent 30%),linear-gradient(130deg,#104f52,#176d6b)!important;color:#fff;box-shadow:0 24px 60px rgba(10,66,68,.22)!important}.generate-card h2,.generate-card .eyebrow{color:#fff}.generate-card p,.generate-card #generate-status span{color:#d9ece9!important}.generation-track{height:9px!important;background:rgba(255,255,255,.17)!important;border-radius:999px;overflow:hidden}.generation-track i{background:linear-gradient(90deg,var(--gold),#ffdf89)!important;box-shadow:0 0 14px rgba(255,215,114,.7)}
.linked-existing-button{width:100%;margin-top:.45rem}.existing-document-picker{display:grid;gap:.55rem}.document-pick{display:grid;grid-template-columns:46px minmax(0,1fr) 34px;gap:.7rem;align-items:center;width:100%;border:1px solid var(--line);border-radius:14px;background:#fff;padding:.65rem;text-align:left;cursor:pointer}.document-pick span{width:42px;height:42px;border-radius:12px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-size:.65rem;font-weight:900}.document-pick b{overflow:hidden;text-overflow:ellipsis}.document-pick em{font-size:1.4rem;color:var(--coral);font-style:normal}.document-link-manager{display:grid;gap:.55rem}.document-link-manager h3{margin:1rem 0 .2rem}.document-link-manager label{display:grid;grid-template-columns:24px 1fr;gap:.65rem;align-items:center;padding:.7rem;border:1px solid var(--line);border-radius:14px;cursor:pointer}.document-link-manager label:has(input:checked){background:var(--teal-soft);border-color:#7bb1aa}.document-link-manager span{display:grid}.document-link-manager small{color:var(--muted)}.maps-link-hint{display:block;margin:.3rem .2rem 0;color:var(--muted);font-size:.65rem}.place-confirmed .maps-link-hint{color:#17776f;font-weight:800}.place-confirmed .maps-link-hint:after{content:'  ✓'}
.place-gallery figure.image-failed{background:linear-gradient(145deg,#e8f3ef,#fff4db)}.place-gallery figure.image-failed:after{content:'Photo temporarily unavailable';position:absolute;inset:0;display:grid;place-items:center;padding:1rem;text-align:center;color:var(--muted);font-size:.68rem}.places-grid{gap:1rem}.place-card{border-color:rgba(30,93,88,.12)!important;box-shadow:0 14px 38px rgba(22,67,65,.08)!important}.place-card>div:last-child{padding:1.05rem}.button{border-radius:13px!important;min-height:42px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button:hover{transform:translateY(-1px)}.button.primary,.button.coral{box-shadow:0 7px 18px rgba(17,91,89,.15)}
@media(max-width:900px){.home-hotel-gallery{min-height:310px}.destination-grid>section{padding:.8rem}}
@media(max-width:680px){.studio-head{padding-left:.8rem;padding-right:.8rem}.studio-overview{width:calc(100% - 1rem)!important}.studio-journey{border-radius:22px;padding:.5rem}.destination-summary{padding:.8rem!important}.destination-body{padding:.35rem}.destination-grid{padding:.35rem!important;gap:.5rem!important}.destination-grid>section{border-radius:15px;padding:.75rem}.destination-body>footer{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));z-index:5;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);padding:.7rem!important;border-top:1px solid var(--line)}.destination-body>footer .button{flex:1}.home-hotel-gallery{min-height:330px;grid-template-columns:1fr 1fr;grid-template-rows:205px 120px}.home-hotel-gallery figure:first-child{grid-column:1/-1;grid-row:1}.home-hotel-gallery figure:nth-child(2){grid-column:1;grid-row:2}.home-hotel-gallery figure:nth-child(3){grid-column:2;grid-row:2}.home-hotel-gallery.count-1 figure:first-child{grid-row:1/-1}.home-hotel-gallery.count-2 figure:nth-child(2){grid-column:1/-1;grid-row:2}.hotel-feature-body{padding:1rem!important}.document-actions{gap:.35rem}.document-actions .text-button{padding:.45rem}.generate-card{margin:2rem .5rem!important;width:calc(100% - 1rem)!important}.trip-card-menu{top:.55rem;right:.55rem}.existing-document-picker{max-height:55svh;overflow:auto}}

/* PV1 completion pass: shared V4 trip shell */
.trip-topbar{width:min(1380px,calc(100% - 24px));display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.8rem;padding:0 10px 0 12px}
.trip-topbar .trip-context{position:static;transform:none;max-width:165px;min-width:0;text-align:left;display:grid;align-content:center;border-left:1px solid var(--line);padding-left:.75rem}
.trip-topbar .trip-context button{text-align:left;padding:0;font-size:.61rem;text-transform:uppercase;letter-spacing:.08em}
.trip-topbar .trip-context span{font-size:.72rem;margin-top:.1rem}
.trip-primary-nav{display:flex;align-items:center;justify-content:center;gap:.12rem;min-width:0}
.trip-primary-nav button{border:0;background:transparent;border-radius:999px;padding:.62rem .66rem;color:var(--muted);font-size:.7rem;font-weight:800;white-space:nowrap;cursor:pointer}
.trip-primary-nav button:hover{background:white;color:var(--teal)}
.trip-primary-nav button.active{background:var(--teal);color:white;box-shadow:0 7px 18px rgba(13,85,88,.16)}
.trip-primary-nav button[data-view="buy"]{color:#795b20;background:var(--gold-soft)}
.trip-primary-nav button[data-view="buy"].active{background:var(--gold);color:var(--ink)}
.bottom-nav{display:none}
.trip-main{padding-bottom:3rem}

.theme-india{--teal:#185c55;--teal-2:#287f72;--teal-soft:#e1f3ec;--coral:#c85d46;--coral-soft:#f8e0d7;--gold:#e3a73c;--gold-soft:#f6deb0}
.theme-turkey{--teal:#0d5558;--teal-2:#14777a;--teal-soft:#dff2ec;--coral:#d66f4b;--coral-soft:#f8ded5;--gold:#e7ad45;--gold-soft:#f4d89d}
.v4-master-hero{min-height:clamp(600px,84svh,820px);position:relative;isolation:isolate;background:linear-gradient(90deg,rgba(8,39,41,.88),rgba(8,39,41,.28) 58%,rgba(8,39,41,.08)),var(--hero,linear-gradient(135deg,#0d5558,#6fb4ad));background-size:cover;background-position:center}
.trip-hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.v4-master-hero>.trip-hero-photo+*{position:relative}
.v4-master-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,30,31,.12),transparent 45%,rgba(7,30,31,.28))}
.v4-turkey-hero{background:linear-gradient(90deg,rgba(9,55,58,.89),rgba(9,55,58,.25) 62%,rgba(9,55,58,.05)),var(--hero,linear-gradient(165deg,#7dccce,#0e4b4e));background-size:cover;background-position:center}
.v4-turkey-hero:before{z-index:0;background:radial-gradient(circle at 25% 20%,rgba(255,255,255,.2),transparent 28%),linear-gradient(115deg,transparent 55%,rgba(240,198,135,.14))}
.hero-credit{display:inline-flex;margin-top:1.1rem;color:rgba(255,255,255,.74);font-size:.62rem;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.32)}
.hero-credit:hover{color:white}
.quick-row{width:min(1180px,calc(100% - 2rem));grid-template-columns:repeat(5,1fr)}
.quick-row .buy-shortcut{background:var(--gold-soft)}
.quick-row .buy-shortcut:hover{background:var(--gold)}
.quick-row .buy-shortcut>span{background:var(--gold);color:var(--ink)}
.trip-card.theme-india .trip-cover{background-position:center 55%}
.trip-card.theme-turkey .trip-cover{background-position:center 62%}
.asset-missing{position:relative;display:grid!important;place-items:center!important;background:linear-gradient(145deg,#173f42,#2b7471)!important;color:white;min-height:160px}
.asset-error{display:block;padding:1rem;text-align:center;color:white;font-size:.76rem;font-weight:800;line-height:1.45}
.has-date-conflict{border-color:rgba(165,53,50,.42)}
.date-conflict{display:inline-flex!important;width:max-content;max-width:100%;margin-top:.35rem;padding:.28rem .5rem;border-radius:999px;background:#fff0ed;color:#9f3c2d!important;font-size:.61rem!important;font-weight:850;white-space:normal!important}
.location-status:not(:empty){padding:.65rem .8rem;border-radius:13px;background:var(--teal-soft)}
.upload-progress:not(:empty){margin-top:.8rem;padding:.75rem;border-radius:13px;background:var(--teal-soft);color:var(--teal);font-size:.72rem;font-weight:750}

@media(max-width:1120px){
  .trip-topbar{grid-template-columns:auto minmax(0,1fr) auto}.trip-topbar .trip-context{display:none}.trip-primary-nav button{padding:.58rem .48rem;font-size:.66rem}
}
@media(max-width:900px){
  .trip-topbar{display:flex;width:calc(100% - 16px);justify-content:space-between}.trip-topbar .trip-context{display:grid;position:static;transform:none;margin-left:auto;margin-right:.35rem;max-width:125px;text-align:right;border-left:0;border-right:1px solid var(--line);padding:0 .65rem 0 0}.trip-topbar .trip-context button{text-align:right}.trip-topbar .trip-context span{display:none}.trip-primary-nav{display:none}
  .bottom-nav{display:block}.trip-main{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  .quick-row{grid-template-columns:repeat(3,1fr)}.quick-row button:last-child{grid-column:auto}
}
@media(max-width:680px){
  .v4-master-hero,.v4-turkey-hero{min-height:92svh}.quick-row{grid-template-columns:1fr 1fr}.quick-row .buy-shortcut{grid-column:1/-1}.quick-row .buy-shortcut{display:flex;align-items:center;justify-content:center;text-align:center}.quick-row .buy-shortcut>span{grid-row:auto}.hero-credit{max-width:78%;line-height:1.35}
  .trip-card{border-radius:22px}.trip-cover{height:210px}
}

/* PV1.8 coherent trip experience */
.eye{width:44px;display:grid;place-items:center}.eye-shape{position:relative;width:20px;height:13px;border:2px solid currentColor;border-radius:70% 30% 70% 30%;rotate:45deg}.eye-shape:after{content:"";position:absolute;inset:3px;border-radius:50%;background:currentColor}.eye.visible .eye-shape:before{content:"";position:absolute;left:8px;top:-5px;width:2px;height:20px;background:currentColor;box-shadow:0 0 0 2px white;z-index:2}.avatar-initial{display:grid;place-items:center;width:100%;height:100%}
.home-budget{margin-top:1.4rem;margin-bottom:1.4rem}.home-budget>button{width:100%;border:0;border-radius:25px;background:linear-gradient(135deg,var(--teal),var(--teal-2));color:white;padding:1rem 1.2rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;text-align:left;cursor:pointer;box-shadow:0 16px 35px rgba(13,85,88,.18)}.home-budget .budget-ring{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--ink);font-weight:900}.home-budget div{display:grid;gap:.15rem}.home-budget small,.home-budget em{font-style:normal;opacity:.8}.home-budget strong{font:700 1.45rem var(--serif)}.home-budget>button>b{font-size:.72rem}.studio-entry{border:1px solid color-mix(in srgb,var(--teal) 32%,var(--line));background:linear-gradient(135deg,var(--teal-soft),white 68%)}
.tool-grid .studio-tool{grid-column:1/-1;background:linear-gradient(135deg,var(--teal),var(--teal-2));color:white;border-color:transparent}.tool-grid .studio-tool p,.tool-grid .studio-tool em{color:rgba(255,255,255,.78)}.tool-grid .studio-tool .settings-icon{background:var(--gold);color:var(--ink)}
.generation-status{display:grid;gap:.45rem;margin-top:.8rem}.generation-status>div{display:flex;justify-content:space-between;gap:1rem}.generation-status>span,.generation-track{height:10px;background:rgba(255,255,255,.75);border-radius:99px;overflow:hidden}.generation-status>span i,.generation-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--gold));transition:width .35s ease}.generation-status small{color:var(--muted)}
.near-card{grid-template-columns:150px minmax(0,1fr);padding:.55rem;overflow:hidden}.near-card-photo{position:relative;min-height:150px;border-radius:15px;overflow:hidden;background:var(--teal-soft)}.near-card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.near-card-photo span{position:absolute;left:.5rem;top:.5rem;width:34px;height:34px;border-radius:11px;background:rgba(13,85,88,.9);color:white;display:grid;place-items:center;font-weight:900;backdrop-filter:blur(6px)}.near-card-copy{padding:.55rem}.place-detail{display:grid;gap:1rem}.detail-gallery{height:min(48svh,420px);border-radius:19px}.place-address{padding:.75rem;border-radius:13px;background:var(--teal-soft);color:var(--teal);font-weight:750}
.album-toolbar>div{display:flex;align-items:center;gap:.5rem;min-width:0}.all-memories-button{border:1px solid var(--line);background:white;border-radius:999px;min-height:42px;padding:.55rem .8rem;font-weight:800;color:var(--muted);cursor:pointer}.all-memories-button.active{background:var(--teal);color:white}.album-tree-panel{width:min(1120px,calc(100% - 2rem));margin:-.4rem auto 1rem;padding:1rem;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,var(--teal-soft));display:grid;gap:.35rem}.album-branch,.album-leaf{border-radius:14px}.album-branch>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center}.album-branch>summary::-webkit-details-marker{display:none}.album-branch>div{margin-left:1.35rem;padding-left:.7rem;border-left:2px solid color-mix(in srgb,var(--teal) 24%,transparent)}.album-node-button{width:100%;min-width:0;border:0;background:transparent;border-radius:13px;padding:.5rem;display:grid;grid-template-columns:48px minmax(0,1fr);gap:.7rem;align-items:center;text-align:left;color:var(--ink);cursor:pointer}.album-node-button:hover,.album-node-button.active{background:white;box-shadow:0 7px 18px rgba(13,85,88,.09)}.album-node-button img,.album-folder{width:48px;height:48px;border-radius:13px;object-fit:cover;background:var(--gold-soft);color:var(--coral);display:grid;place-items:center}.album-node-button div{display:grid;min-width:0}.album-node-button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.album-node-button small{font-size:.64rem;color:var(--muted)}.branch-cue{color:var(--teal);font-size:1.2rem}.album-branch[open]>summary .branch-cue{rotate:180deg}.emoji-row{display:flex;gap:.35rem;overflow:auto;margin:-.2rem 0 .7rem}.emoji-row button{width:38px;height:38px;flex:0 0 auto;border:1px solid var(--line);border-radius:12px;background:white;font-size:1.05rem;cursor:pointer}.camera-pick small{padding:0 .5rem;color:var(--muted);font-size:.58rem;line-height:1.25}.destination-essentials{margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,var(--gold-soft))}.destination-essentials>div{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.destination-essentials article{background:rgba(255,255,255,.82);border-radius:15px;padding:.8rem;display:grid;gap:.25rem}.destination-essentials article:nth-child(n+4){grid-column:span 1}.destination-essentials small{color:var(--coral);font-weight:850}.destination-essentials p{font-size:.72rem;margin:0;color:var(--muted)}.extract-action{font-weight:850;color:var(--teal)!important}
@media(min-width:681px){.camera-pick{min-height:76px;grid-template-columns:34px 1fr;grid-template-rows:auto auto;text-align:left;padding:.65rem}.camera-pick span{grid-row:1/-1}.camera-pick b,.camera-pick small{justify-self:start;padding:0}.memory-pickers{grid-template-columns:1fr minmax(210px,.46fr)}}

/* PV1.10 connected workflow corrections */
.mini-document-drop{transition:.2s}.mini-document-drop.drag{border-color:var(--coral)!important;background:var(--coral-soft);transform:translateY(-1px)}

/* PV1.11: destination documents upload on selection/drop; keep the surface obvious on touch and desktop. */
.linked-upload-row{align-items:stretch}
.linked-upload-button{display:none!important}
.mini-document-drop{min-height:104px;display:grid;place-items:center;align-content:center;gap:.2rem;border:2px dashed #8fb5ad!important;background:linear-gradient(145deg,#f7fcfa,#eef7f3)}
.mini-document-drop .drop-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--teal);color:white;font-size:1.05rem}
.mini-document-drop b,.mini-document-drop small{display:block}
.mini-document-drop small{color:var(--muted);font-size:.65rem;font-weight:650}
.mini-document-drop.drag{box-shadow:0 10px 24px rgba(201,97,66,.13)}
.near-card-photo.bank-mark{display:grid;place-items:center;background:linear-gradient(145deg,#edf6f3,#dceae5)}.near-card-photo.bank-mark strong{font:800 1.35rem var(--serif);color:var(--teal);background:white;border:1px solid var(--line);padding:.75rem;border-radius:15px;box-shadow:0 8px 18px rgba(13,85,88,.1)}
.explore-load-more{grid-column:1/-1;justify-self:center;min-width:220px}.review-safety-note{padding:.75rem 1rem;border-radius:13px;background:var(--gold-soft);color:#70551f;font-weight:700}.extraction-progress{display:flex;align-items:center;gap:1rem;padding:1rem}.progress-spinner{width:48px;height:48px;border:4px solid var(--teal-soft);border-top-color:var(--teal);border-radius:50%;animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(hover:hover) and (pointer:fine) and (min-width:681px){.memory-pickers{display:flex;align-items:stretch}.memory-pickers .file-drop{flex:1;margin:0;min-height:82px;display:grid;place-items:center;align-content:center}.camera-pick{min-width:210px;min-height:82px;background:var(--paper)}}
@media(max-width:680px){.home-budget>button{grid-template-columns:48px minmax(0,1fr)}.home-budget .budget-ring{width:48px;height:48px}.home-budget>button>b{grid-column:2}.album-toolbar>div{display:grid;grid-template-columns:1fr auto}.album-tree-toggle{width:100%}.album-tree-panel{width:calc(100% - 1rem);padding:.55rem}.album-branch>div{margin-left:.7rem}.near-card{grid-template-columns:118px minmax(0,1fr)}.near-card-photo{min-height:145px}.near-card .button-row{grid-template-columns:1fr}.destination-essentials>div{grid-template-columns:1fr}.destination-essentials article:nth-child(n){grid-column:auto}.studio-entry .button{width:100%}}
