/* A quieter, task-focused surface over the original trip UI. */
:root{--ink:#10283f;--blue:#0877d7;--line:#dbe7ee;--muted:#587083;--bg:#f3f8fb;--pale:#eaf5fc}
body{color:var(--ink);background:var(--bg)}
.btn,.feature-card,.candidate,.navitem,.iconbtn{transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s}
.btn:active,.feature-card:active,.candidate:active{transform:scale(.985)}
.btn.primary{background:#0877d7;box-shadow:0 5px 14px #0877d72a}
.btn.primary:hover{background:#0069c3}
.panel,.tripcard,.feature-card{box-shadow:0 4px 20px #123c5909}
.eyebrow{color:#0877d7;letter-spacing:.08em}
.subnote{color:#657b8d}
.prep-layout{max-width:1120px}
.prep-top{gap:14px}
.prep-top h2{margin-top:7px;line-height:1.25}
.prep-tools{margin-top:30px;padding:24px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 22px #123c5908}
.prep-tools-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:17px}
.prep-tools-title h2{font-size:22px;margin-top:5px}
.prep-tools-title p{font-size:13px;color:var(--muted)}
.prep-tools .feature-grid{margin:0;gap:10px}
.prep-tools .feature-card{padding:15px;border-radius:15px;box-shadow:none;min-height:78px}
.prep-tools .feature-icon{width:42px;height:42px;flex:none}
.prep-tools .feature-card strong{font-size:15px}
.prep-tools .feature-card small{line-height:1.35}
.more-tools{margin-top:18px;border-top:1px solid var(--line);padding-top:4px}
.more-tools summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:48px;font-weight:700;color:#205273}
.more-tools summary::-webkit-details-marker{display:none}
.more-tools summary::before{content:'＋';font-size:20px;font-weight:400;margin-right:8px}
.more-tools[open] summary::before{content:'−'}
.more-tools summary span{margin-left:auto;font-size:12px;font-weight:500;color:var(--muted)}
.more-tools .feature-grid{padding-top:10px}
.product-today{max-width:570px;margin:auto}
.today-intro{margin-bottom:18px}
.today-intro h2{font-size:27px;line-height:1.28;margin:7px 0 5px}
.today-intro p{font-size:14px;color:var(--muted);line-height:1.55}
.product-today .currentcard,.product-today .nextcard{margin:0 0 12px;padding:20px;border-radius:20px}
.product-today .currentcard{background:#fff;border:1px solid var(--line);box-shadow:0 4px 20px #123c5908}
.product-today .nextcard{background:linear-gradient(155deg,#eaf6ff,#fff 75%);border:1px solid #b7dcef;box-shadow:0 8px 24px #0a689e12}
.card-kicker{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#126794;font-size:13px;font-weight:700}
.card-kicker span:last-child{font-variant-numeric:tabular-nums}
.product-today h3{font-size:19px;margin:9px 0 2px}
.product-today .currentcard p{font-size:13px;color:var(--muted)}
.product-today .currentcard .textbtn{margin-top:9px;padding:4px 0;color:#0877d7}
.product-today .nextcard h2{font-size:25px;margin:12px 0 8px;line-height:1.25}
.departure-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:8px}
.departure-row strong{font-size:37px;letter-spacing:-.055em;color:#073471;line-height:1.1;font-variant-numeric:tabular-nums}
.departure-row span{font-size:14px;font-weight:700;color:#145d86}
.travel-summary{font-size:13px;color:#527083;margin:9px 0 16px}
.today-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.today-actions .btn{display:flex;align-items:center;justify-content:center;gap:7px;text-align:center;padding:10px 9px;min-height:48px}
.today-actions .icon{width:18px;height:18px}
.next-detail{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:11px 1px 0;color:#075d9f;font-size:13px;font-weight:700}
.next-detail .icon{width:16px;height:16px}
.today-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.today-shortcuts button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:48px;border:1px solid var(--line);border-radius:13px;background:#fff;color:#315b76;font-size:12px;font-weight:700}
.today-shortcuts .icon{width:17px;height:17px}
.product-today>.subnote{margin-top:17px}
.emergency-hero{background:#edf7ff;border:1px solid #d4e8f5;border-radius:17px;padding:17px}
.emergency-hero strong{font-size:17px}
.emergency-hero p{font-size:13px;color:#46667a;margin-top:5px;line-height:1.5}
.emergency-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px;margin-top:12px}
.emergency-actions .btn{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center}
.saved-candidate{position:relative}
.saved-candidate .candidate{padding-right:68px}
.saved-candidate .candidate .badge{display:inline-block;margin-bottom:8px}
.candidate-remove{position:absolute;right:13px;top:50%;transform:translateY(-50%);min-height:40px;padding:0 8px;border-radius:9px;color:#83626b;font-size:12px;font-weight:600}
.candidate-remove:hover{background:#fff2f2}
@media(max-width:700px){
 .prep-layout{padding:22px 16px 90px}
 .prep-top{align-items:center;margin-bottom:17px}
 .prep-top h2{font-size:23px}
 .prep-top .btn{padding-inline:12px;white-space:nowrap}
 .prep-grid{gap:13px}
 .prep-grid .panel{padding:19px;border-radius:20px}
 .prep-tools{margin-top:15px;padding:19px;border-radius:20px}
 .prep-tools-title{display:block;margin-bottom:14px}
 .prep-tools-title h2{font-size:20px}
 .prep-tools-title p{margin-top:4px}
 .prep-tools .feature-grid{grid-template-columns:1fr 1fr;gap:8px}
 .prep-tools .feature-card{display:block;padding:13px;min-height:120px}
 .prep-tools .feature-icon{width:34px;height:34px;margin-bottom:9px;border-radius:10px}
 .prep-tools .feature-icon .icon{width:19px;height:19px}
 .prep-tools .feature-card>.icon{display:none}
 .prep-tools .feature-card strong{font-size:13px;line-height:1.35}
 .prep-tools .feature-card small{font-size:11px;margin-top:3px}
 .todaycontent.product-today{padding:22px 17px 24px}
 .today-intro h2{font-size:25px}
 .product-today .currentcard,.product-today .nextcard{padding:18px}
 .today-shortcuts{gap:6px}
 .today-shortcuts button{font-size:11px;gap:3px}
 .today-shortcuts .icon{width:15px;height:15px}
}
@media(max-width:350px){.prep-tools .feature-grid{grid-template-columns:1fr}.prep-tools .feature-card{display:flex;min-height:74px}.prep-tools .feature-icon{margin:0 10px 0 0}.today-actions{grid-template-columns:1fr}.today-shortcuts .icon{display:none}}
