@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
.bar.tentative{background:repeating-linear-gradient(135deg,var(--bg),var(--bg) 7px,#fff9 7px,#fff9 11px);border:1px solid #9b80d2}
.partial-confirmed{background:#fff2cf;color:#805a05}.stop-pending{box-shadow:inset 0 0 0 1px #df6974;color:#92333d}
:root{--ink:#172f39;--muted:#596c75;--paper:#f4f7f8;--line:#dde6e9;--accent:#124e59;--miami-bg:#fff0cd;--miami-ink:#72500b;--colombia-bg:#dcf1e7;--colombia-ink:#246148;--rio-bg:#e9e2fc;--rio-ink:#594096;--travel-bg:#e8f0f5;--travel-ink:#456578;--home-bg:#e0edf0;--home-ink:#1c535e}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'DM Sans',system-ui,sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #efb939;outline-offset:3px}h1,h2,h3,strong,.wordmark{font-family:Manrope,system-ui,sans-serif}h1,h2,h3,p{margin:0}button{color:inherit}[hidden]{display:none!important}.shell{max-width:1320px;margin:auto;padding:0 32px}.topbar{display:flex;justify-content:space-between;align-items:center;padding-block:18px}.wordmark{font-size:20px;font-weight:800;letter-spacing:-.7px}.brandmark{display:inline-grid;place-items:center;background:var(--accent);color:white;width:35px;height:35px;border-radius:12px;margin-right:9px;font-size:17px}.topright{display:flex;align-items:center;gap:20px;color:var(--muted);font-size:14px}.print{padding:9px 16px;border:1px solid var(--line);background:white;border-radius:10px;font-weight:700;font-size:14px}.hero{position:relative;overflow:hidden;border-radius:24px;background:#153f48;color:#fff;padding:25px 30px;min-height:166px;display:flex;align-items:center;justify-content:space-between;gap:20px}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 45%;opacity:.42}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#143e48 8%,#143e48ba 52%,#143e4820)}.hero>*:not(img){position:relative;z-index:1}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.hero .eyebrow{color:#f5ce69}.hero h1{font-size:clamp(28px,3vw,42px);letter-spacing:-1.8px;margin:5px 0}.hero p{color:#e0eded}.trip-date{border:1px solid #ffffff70;background:#173e4960;padding:13px 20px;border-radius:14px;white-space:nowrap;text-align:center}.trip-date strong{display:block;font-size:23px}.trip-date span{font-size:14px;color:#e0eded}.section-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:23px 0 11px}.section-top h2{font-size:18px}.muted{color:var(--muted)}.small{font-size:13px}.route{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.route-card{border:1px solid var(--line);border-radius:16px;background:white;overflow:hidden;padding:14px 18px;position:relative}.route-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--band)}.route-card.miami{--band:#f4bc40}.route-card.colombia{--band:#6bb394}.route-card.rio{--band:#a38adb}.route-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.route-heading h3{font-size:19px}.route-card p{font-size:14px;color:var(--muted);margin:3px 0 10px}.route-card .count{font-size:13px;padding:4px 9px;border-radius:7px;background:var(--bg);color:var(--fg);font-weight:700}.route-foot{display:flex;justify-content:space-between;gap:8px;align-items:center}.avatar-line{display:flex}.avatar-mini{width:25px;height:25px;display:grid;place-items:center;border:2px solid white;border-radius:50%;background:#edf2f3;color:#35545d;font-size:10px;font-weight:800;margin-left:-5px}.avatar-mini:first-child{margin-left:0}.workspace{background:white;border:1px solid var(--line);border-radius:20px;margin-top:22px;box-shadow:0 8px 22px #213b4605;overflow:hidden}.workspace-head{padding:20px 22px 0;display:flex;justify-content:space-between;align-items:center;gap:16px}.workspace-head h2{font-size:21px;letter-spacing:-.6px}.confirmation-total{font-size:14px;color:#276849;background:#edf8f1;padding:7px 12px;border-radius:8px}.tabs{display:flex;border-bottom:1px solid var(--line);padding:0 22px;margin-top:15px;gap:25px}.tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:12px 0;color:var(--muted);font-size:15px;font-weight:700}.tabs button[aria-selected=true]{color:var(--accent);border-color:var(--accent)}.toolbar{padding:17px 22px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.search{border:1px solid var(--line);border-radius:9px;padding:9px 12px;min-width:200px;max-width:100%;font-size:14px;background:#fafcfc}.segmented{display:flex;background:#eff3f5;padding:4px;border-radius:10px;gap:3px}.segmented button{background:transparent;border:0;border-radius:7px;padding:7px 13px;color:var(--muted);font-size:14px;font-weight:700}.segmented button[aria-pressed=true]{background:white;box-shadow:0 1px 5px #163e491c;color:var(--accent)}.legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:0 22px 15px;font-size:13px;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:10px;height:10px;border-radius:3px;background:var(--bg)}.miami{--bg:var(--miami-bg);--fg:var(--miami-ink)}.colombia{--bg:var(--colombia-bg);--fg:var(--colombia-ink)}.rio{--bg:var(--rio-bg);--fg:var(--rio-ink)}.travel{--bg:var(--travel-bg);--fg:var(--travel-ink)}.home{--bg:var(--home-bg);--fg:var(--home-ink)}.away{--bg:#f1f3f5;--fg:#727d85}.chip{display:inline-flex;gap:5px;align-items:center;background:var(--bg);color:var(--fg);padding:4px 9px;border-radius:7px;font-size:13px;font-weight:700}.status{font-size:12px;padding:3px 7px;border-radius:6px;display:inline-block;white-space:nowrap}.confirmed{background:#e5f5eb;color:#1b6940}.unconfirmed{background:#ffebec;color:#a52e3a}.scroll{overflow:auto}.gantt{min-width:1110px}.g-row{display:grid;grid-template-columns:185px repeat(14,minmax(64px,1fr));position:relative;align-items:stretch;border-top:1px solid #eaf0f2;min-height:64px}.g-label{position:sticky;left:0;z-index:3;background:white;border-right:1px solid var(--line);padding:10px 15px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}.g-label strong{font-size:14px}.g-label .status{font-size:11px}.g-header{min-height:57px;background:#f8fafb;border-top:0}.g-header .g-label{background:#f8fafb}.g-day{padding:8px 3px;text-align:center;border-left:1px solid #eaf0f2;font-size:12px;color:var(--muted)}.g-day b{display:block;font-size:16px;color:var(--ink)}.weekend{background:#f4f7f9}.lane{grid-column:2/-1;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));align-items:center;position:relative;padding-block:9px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(100% / 14 - 1px),#edf1f3 calc(100% / 14 - 1px),#edf1f3 calc(100% / 14))}.bar{grid-row:1;background:var(--bg);color:var(--fg);border:0;border-radius:8px;min-width:0;margin:0 3px;height:34px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar.partial{background:repeating-linear-gradient(135deg,var(--bg),var(--bg) 7px,#ffffffbb 7px,#ffffffbb 10px);border:1px solid #b2a3d0}.g-total{background:#f9fbfb;min-height:50px}.g-total .g-label{background:#f9fbfb}.total-cell{display:grid;place-items:center;font-size:14px;font-weight:800;color:#2c6958}.total-cell.peak{background:#e4f4ec}.gantt-note{padding:12px 22px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);background:#fafcfc}.calendar-grid{padding:0 22px 20px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.cal-day{border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0;background:white}.cal-date{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#f6f8fa;font-size:12px;color:var(--muted)}.cal-date strong{font-size:22px;color:var(--ink)}.cal-body{padding:10px}.cal-body>.chip{font-size:12px}.cal-count{font-size:12px;color:var(--muted);margin:7px 0}.attendee{padding:4px 0;display:flex;align-items:center;gap:4px;font-size:13px}.attendee .tick{color:#168346;font-weight:800}.attendee .pending{color:#b63d4b}.attendee .travel-label{font-size:10px;color:#567181}.people-grid{padding:0 22px 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.person-card{border:1px solid var(--line);border-radius:15px;padding:17px}.person-top{display:flex;gap:10px;align-items:center;margin-bottom:17px}.avatar{width:41px;height:41px;display:grid;place-items:center;flex-shrink:0;border-radius:13px;background:#edf2f5;color:#2e5967;font-family:Manrope,sans-serif;font-weight:800}.person-top h3{font-size:17px;margin-bottom:3px}.person-stops{display:flex;gap:7px;flex-wrap:wrap}.person-stops button{border:0}.person-note{font-size:13px;color:var(--muted);margin-top:12px;min-height:39px}.person-link{margin-top:12px;padding:8px 0;border:0;background:transparent;font-size:14px;color:var(--accent);font-weight:800}.itinerary-filters{display:flex;gap:8px;flex-wrap:wrap;padding:19px 22px}.itinerary-filters button{border:1px solid var(--line);background:white;border-radius:99px;padding:7px 14px;font-size:14px}.itinerary-filters button[aria-pressed=true]{background:var(--accent);color:white;border-color:var(--accent)}.agenda{padding:0 22px 22px;display:grid;gap:12px}.agenda-card{border:1px solid var(--line);border-radius:13px;padding:18px}.agenda-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.agenda-head h3{font-size:19px;margin:4px 0}.agenda-content{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:13px}.agenda-content div{background:#f6f8fa;border-radius:9px;padding:12px;font-size:15px}.agenda-content b{display:block;color:var(--muted);font-size:12px;letter-spacing:.7px;text-transform:uppercase;margin-bottom:5px}.agenda-note{font-size:13px;color:var(--muted);margin-top:10px}.empty{text-align:center;color:var(--muted);padding:38px}.footer{padding:20px 0 30px;font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.footer a{color:inherit}.detail{border:0;border-radius:18px;box-shadow:0 20px 100px #0d293c50;padding:24px;width:min(450px,calc(100% - 30px));color:var(--ink)}.detail::backdrop{background:#102e4660}.detail h2{font-size:21px;margin:9px 0}.detail p{margin:10px 0;color:var(--muted)}.detail button{float:right;border:1px solid var(--line);border-radius:8px;background:white;padding:7px 12px}.detail ul{padding-left:20px}.detail li{margin:7px 0}@media(max-width:1000px){.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.people-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.shell{padding:0 14px}.topbar{padding-block:13px}.topright>span{display:none}.hero{padding:22px;min-height:173px}.hero h1{font-size:30px;letter-spacing:-1px}.hero p{font-size:14px;max-width:210px}.trip-date{display:none}.route{gap:8px}.route-card{padding:12px 9px 12px 12px;border-radius:12px}.route-heading h3{font-size:15px}.route-card p{font-size:12px}.route-card .count{font-size:11px;padding:3px 5px}.avatar-line{display:none}.section-top .small{display:none}.workspace{margin-top:16px;border-radius:15px}.workspace-head{padding:17px 14px 0;align-items:flex-start}.workspace-head h2{font-size:18px}.confirmation-total{font-size:12px;padding:5px 8px}.tabs{padding:0 14px;gap:24px}.toolbar{padding:14px;gap:10px}.toolbar input{width:100%;order:2}.legend{padding:0 14px 12px;gap:10px;font-size:12px}.g-row{grid-template-columns:138px repeat(14,minmax(64px,1fr))}.gantt{min-width:1035px}.g-label{padding:9px}.calendar-grid{padding:0 12px 15px;grid-template-columns:repeat(2,minmax(0,1fr))}.people-grid{padding:0 14px 16px;grid-template-columns:1fr}.agenda{padding:0 14px 16px}.itinerary-filters{padding:14px}.agenda-content{grid-template-columns:1fr}.gantt-note{padding:12px 14px}.footer{flex-direction:column;gap:5px}.print{padding:7px 10px}.g-label .status{font-size:10px}}@media print{.topbar,.toolbar,.tabs,.footer,.legend,.person-link{display:none}.shell{max-width:none;padding:0}.hero{min-height:100px;padding:15px}.hero img{display:none}.scroll{overflow:visible}.gantt{min-width:0}.g-row{grid-template-columns:100px repeat(14,minmax(0,1fr))}.g-label{position:static}.bar{font-size:9px;margin:0 1px}.workspace{box-shadow:none}.g-label strong,.g-day b{font-size:10px}.status{font-size:9px!important}.workspace,.person-card,.agenda-card{break-inside:avoid}}
