:root{color:#0f172a;background:radial-gradient(circle at top,#dbeafe 0,#eef2ff 36%,#f8fafc 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}a{color:inherit}main{width:min(1180px,100% - 28px);padding:max(28px,env(safe-area-inset-top)) 0 max(36px,env(safe-area-inset-bottom));margin:0 auto}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.07em;max-width:780px;margin-bottom:14px;font-size:clamp(2.2rem,6vw,4.8rem);line-height:.95}h2{margin-bottom:6px;font-size:2rem}h2 svg{vertical-align:-3px}h3{margin-bottom:8px;font-size:1.35rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#38bdf8;margin:0 0 10px;font-size:.74rem;font-weight:800}.muted{color:#64748b;margin-bottom:6px}.notice,.warningBanner{border-radius:18px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:12px 14px;font-size:.92rem;display:flex}.notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;margin-bottom:14px}.warningBanner{color:#9a3412;background:#fff7ed;border:1px solid #fdba74;justify-content:flex-start;margin-bottom:18px}.hero{color:#fff;background:linear-gradient(135deg,#0f172a,#1e3a8a 55%,#0f766e);border-radius:30px;grid-template-columns:1.4fr .85fr;gap:22px;padding:30px;display:grid;box-shadow:0 24px 70px #0f172a40}.lede{color:#dbeafe;max-width:720px;font-size:1.08rem;line-height:1.6}.actions,.chips,.riskRow,.stackButtons{flex-wrap:wrap;gap:8px;display:flex}.button,.chip,.candidateAddButton{cursor:pointer;border:0;border-radius:999px;padding:12px 16px;font-weight:800;text-decoration:none}.primary{color:#0f172a;background:#f8fafc}.secondary{color:#fff;background:#ffffff1f;border:1px solid #ffffff40}.dark{color:#fff;background:#0f172a}.disabledButton{opacity:.62;cursor:not-allowed}.heroCard,.panel,.card,.sidebarCard,.plannerPanel,.affiliateCard,.candidateCard,.voteCard,.summaryCard,.checklistCard,.destinationBasicCard,.sharePanel{background:#ffffffeb;border:1px solid #94a3b84d;box-shadow:0 18px 60px #0f172a1f}.heroCard{color:#0f172a;border-radius:26px;flex-direction:column;justify-content:space-between;padding:24px;display:flex}.heroIcon{color:#1d4ed8;background:#dbeafe;border-radius:18px;place-items:center;width:58px;height:58px;display:grid}.score{letter-spacing:-.07em;font-size:3.4rem;font-weight:900}.score span{color:#64748b;letter-spacing:0;font-size:1rem}.panel{border-radius:24px;margin-top:18px;padding:18px}.grid3,.travelerGrid,.tripMetaGrid,.candidateGrid,.summaryGrid,.affiliateGrid,.checklistGrid,.destinationBasicsGrid{gap:14px;display:grid}.grid3{grid-template-columns:repeat(3,1fr)}.tripMetaGrid{grid-template-columns:repeat(4,1fr)}.candidateGrid,.summaryGrid,.affiliateGrid,.checklistGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.destinationBasicsGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.grid3 div,.travelerCard,.visaBox,.weightRow,.sidebarCard,.plannerPanel,.candidateCard,.voteCard,.summaryCard,.checklistCard,.affiliateCard,.destinationBasicCard,.sharePanel{background:#f8fafc;border-radius:18px;gap:8px;padding:14px;display:grid}.grid3 svg{color:#2563eb}.grid3 span,.visaBox span,.visaBox small,.tripMetaGrid span,.summaryRow span{color:#64748b}.sectionHeader{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.sectionHeader.compact{margin-bottom:10px}.plannerIntro{max-width:780px}.pageHeader{justify-content:flex-start;align-items:center;margin:10px 0 14px;display:flex}.splitPageHeader{flex-wrap:wrap;justify-content:space-between;gap:10px}.plannerActions,.setupActions,.shareActions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lightButton{color:#0f172a;background:#fff;border:1px solid #cbd5e1;box-shadow:0 10px 30px #0f172a14}.neutralWarning{color:#1e3a8a;background:#eff6ff;border-color:#bfdbfe}.wideField{grid-column:1/-1}.scoreBreakdown{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0;display:grid}.scoreBreakdown span{color:#334155;background:#eef2ff;border-radius:12px;padding:8px 10px;font-size:.82rem;font-weight:800}.tripWorkspace,.tripMain,.voteBoard,.tripList{gap:14px;display:grid}.tripSwitcherCard{background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px solid #bfdbfe;border-radius:20px;grid-template-columns:1fr minmax(260px,420px);align-items:end;gap:14px;padding:16px;display:grid}.tripSwitcherCard h3{margin-bottom:4px}.tripPicker{margin:0}.tripPicker span{margin-bottom:8px;display:block}.candidateAddButton{text-align:left;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:14px;gap:4px;width:100%;display:grid}.candidateAddButton span{color:#64748b;font-size:.9rem}.candidateAddButton:hover{color:#1d4ed8;background:#dbeafe}.plannerPanel{padding:18px}.tripMetaGrid div{background:#eff6ff;border:1px solid #bfdbfe;border-radius:18px;padding:14px}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compactTripForm{margin-bottom:14px}.compactTravelerGrid{grid-template-columns:1fr;gap:12px}.compactTravelerCard{gap:12px}.compactTravelerHeader{justify-content:space-between;align-items:center;gap:12px;display:flex}.compactTravelerFields{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}.compactTravelerNotes{grid-column:1/-1}.candidateSearchResults{gap:10px;margin:14px 0;display:grid}.candidateCard h3,.summaryCard h3,.voteCard h3,.affiliateCard h3{margin-bottom:4px}.summaryRow{border-top:1px solid #e2e8f0;grid-template-columns:1fr 1fr;gap:12px;padding-top:10px;display:grid}.summaryRow:first-of-type{border-top:0;padding-top:0}.checklistTop,.voteRow{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.checkToggle{align-items:center;gap:8px;margin:0;display:flex}.miniWarning{font-size:.88rem;line-height:1.45}.affiliateCard{background:#ecfeff;border-color:#a5f3fc}.affiliateButton{justify-self:start}.disclosure{color:#475569;font-size:.88rem;line-height:1.5}.emptyState{text-align:center;background:#f8fafc;border:1px dashed #94a3b8;border-radius:20px;place-items:center;gap:10px;padding:26px;display:grid}.emptyState.compact{padding:18px}.settingsActions{grid-template-columns:120px auto auto;align-items:end;gap:8px;display:grid}.flightSettings{grid-template-columns:1fr 1fr 1.2fr;gap:12px;margin:0 0 14px;display:grid}.flightSettings label{margin:0}.flightSettings label span{margin-bottom:8px;display:block}.flightNote{align-self:end;line-height:1.4}.weightGrid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.weightRow{text-transform:none;letter-spacing:0;margin:0}.weightRow span{text-transform:capitalize}.weightRow input{padding:0}.weightRow input:disabled{opacity:.35}.weightRow em{color:#64748b;align-items:center;gap:6px;font-size:.78rem;font-style:normal;display:flex}.weightRow em input{width:auto}.passportPicker{position:relative}.passportTrigger{color:#0f172a;text-align:left;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px;display:flex}.passportTrigger span{color:#0f172a;font-weight:900}.passportTrigger small{color:#64748b;white-space:nowrap}.passportHover{z-index:30;background:#fff;border:1px solid #cbd5e1;border-radius:18px;max-height:360px;margin-top:8px;padding:12px;display:none;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 20px 60px #0f172a33}.passportPicker:hover .passportHover,.passportPicker:focus-within .passportHover{display:block}.passportGroup{border-top:1px solid #e2e8f0;padding:8px 0}.passportGroup:first-of-type{border-top:0}.passportGroup p{color:#475569;text-transform:uppercase;margin:0 0 6px;font-size:.75rem;font-weight:900}.passportOption{color:#0f172a;text-align:left;cursor:pointer;background:#f8fafc;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:2px 0;padding:8px 10px;display:flex}.passportOption span{font-weight:800}.passportOption small{color:#64748b;white-space:nowrap;font-size:.78rem}.passportOption.active,.passportOption:hover{color:#1d4ed8;background:#dbeafe}.passportOption.active small,.passportOption:hover small{color:#1d4ed8}.deleteButton,.filterButton{cursor:pointer;border-radius:14px;padding:10px 12px;font-weight:900}.filterButton{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.deleteButton{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.deleteButton:disabled{opacity:.45;cursor:not-allowed}.controls{grid-template-columns:1.2fr 1fr .6fr;align-items:end;gap:16px;display:grid}label{color:#475569;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:.82rem;font-weight:900;display:block}.chip{color:#334155;background:#e2e8f0}.chip.active{color:#fff;background:#0f172a}.search{background:#fff;border:1px solid #cbd5e1;border-radius:14px;align-items:center;gap:8px;padding:0 12px;display:flex}input,select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:14px;width:100%;padding:12px}button:disabled,input:disabled,select:disabled{opacity:.55;cursor:not-allowed}.search input{border:0;outline:0}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.card{border-radius:24px;padding:20px}.cardTop{justify-content:space-between;gap:12px;display:flex}.rank{color:#fff;background:#0f172a;border-radius:18px;place-items:center;min-width:54px;height:54px;font-size:1.25rem;font-weight:900;display:grid}.meta{color:#475569;align-items:center;gap:7px;margin-bottom:16px;display:flex}.visaGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.healthBox,.entryChecklist{background:#eef2ff;border:1px solid #c7d2fe;border-radius:18px;gap:8px;margin-top:12px;padding:12px;display:grid}.healthBox{background:#ecfeff;border-color:#a5f3fc}.healthBox strong,.entryChecklist strong{color:#1e3a8a}.healthBox small,.entryChecklist small{color:#475569;line-height:1.4}.badge{border-radius:999px;width:fit-content;padding:6px 9px;font-size:.78rem;font-weight:900;display:inline-flex}.good{color:#166534;background:#dcfce7}.warn{color:#92400e;background:#fef3c7}.bad{color:#991b1b;background:#fee2e2}.neutral{color:#334155;background:#e2e8f0}.sourcesPanel ul{columns:2}.sourcesPanel li{margin:0 0 8px}footer{color:#64748b;text-align:center;margin-top:24px;font-size:.9rem}.modalBackdrop{z-index:60;background:#0f172a85;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modalCard{background:#fff;border-radius:24px;width:min(520px,100%);padding:22px;box-shadow:0 24px 70px #0f172a4d}.modalActions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.warningText{color:#9a3412;line-height:1.5}@media (width<=980px){.tripSwitcherCard,.cards,.grid3,.tripMetaGrid,.candidateGrid,.summaryGrid,.affiliateGrid,.checklistGrid,.destinationBasicsGrid,.scoreBreakdown,.flightSettings,.settingsActions,.formGrid,.travelerGrid,.weightGrid,.controls,.hero,.compactTravelerFields,.summaryRow{grid-template-columns:1fr}}@media (width<=780px){main{width:min(100% - 18px,1120px);padding-top:max(10px,env(safe-area-inset-top))}.hero{border-radius:24px;padding:22px}.tripMetaGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.tripMetaGrid div{padding:12px}.tripMetaGrid strong{font-size:.9rem}.sectionHeader{flex-direction:column;align-items:flex-start}.passportHover{position:static}.visaGrid{grid-template-columns:1fr}h1{font-size:2.65rem}.sourcesPanel ul{columns:1}}
