@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');
:root{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Noto Sans CJK SC','Microsoft YaHei',sans-serif;color:#183d35;background:#f6f6ef;font-synthesis:none;--ink:#183d35;--muted:#6d7e76;--line:#dfe5dc;--green:#224e40;--mint:#e4eeda;--cream:#f6f6ef;--orange:#aa6b39}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:progress}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9bab69;outline-offset:3px}a{color:inherit}svg{width:20px;height:20px;flex:none}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Manrope,'PingFang SC','Noto Sans CJK SC','Microsoft YaHei',sans-serif;letter-spacing:-.045em;line-height:1.23}p{line-height:1.65}small{line-height:1.5}summary{cursor:pointer}.topbar{height:78px;padding:0 36px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:sticky;top:0;z-index:8}.brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:800;text-decoration:none;letter-spacing:-1.2px}.brand-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--green);color:white;font-family:Georgia,serif;position:relative}.brand-icon span{font-size:11px;position:absolute;right:1px;top:0}.brand small{font-family:'DM Sans',sans-serif;font-size:9px;font-weight:600;letter-spacing:1.4px;margin:4px 0 0 8px;color:var(--muted)}nav{display:flex;gap:8px;align-items:center}.quiet{background:transparent;border:0;color:var(--ink);padding:10px 12px;font-size:12px;border-radius:8px}.quiet:hover{background:#e9ede2}.layout{position:relative;max-width:1600px;margin:auto;display:grid;grid-template-columns:370px minmax(0,1fr);align-items:start;min-height:calc(100dvh - 78px)}.thread{grid-column:1;grid-row:1;padding:35px 27px 190px;border-right:1px solid var(--line);height:calc(100dvh - 78px);overflow-y:auto;position:sticky;top:78px;scrollbar-width:thin;background:#f0f2e9}.thread-top .eyebrow{font-size:9px;color:var(--muted)}.thread-top h2{font-size:23px;line-height:1.48;margin:18px 0 30px;font-weight:500}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;display:block;line-height:1.5}.message{display:flex;gap:9px;margin:18px 0;font-size:13px}.message p{white-space:pre-wrap;margin:0;overflow-wrap:anywhere}.message small{font-size:10px;letter-spacing:.4px;color:var(--muted)}.message.user{justify-content:flex-end}.message.user>div{background:#dfe8d9;padding:12px 14px;border-radius:14px 14px 3px 14px;max-width:95%}.message.assistant>div{padding:3px 0;min-width:0}.avatar{display:grid;place-items:center;flex:none;width:23px;height:23px;background:var(--green);border-radius:8px;color:white;font:italic 17px Georgia;margin-top:3px}.history{border-top:1px solid var(--line);padding-top:12px}.history summary{font-size:11px;color:var(--muted)}.workspace{grid-column:2;grid-row:1;padding:32px 48px 80px;min-width:0}.no-task{display:block}.no-task .workspace{max-width:1120px;margin:auto;padding-top:58px;padding-bottom:210px}.welcome .eyebrow{color:var(--muted);display:flex;align-items:center;gap:12px}.spark{font-size:22px;color:var(--orange)}.welcome h1{font-size:clamp(35px,4vw,59px);line-height:1.16;font-weight:500;margin:26px 0 22px}.welcome h1 em{font-style:normal;color:#8a9978}.welcome>p{font-size:15px;max-width:590px;color:var(--muted)}.starter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:38px}.starter{border:1px solid var(--line);padding:24px 22px 18px;background:#fdfdf8;text-align:left;border-radius:18px;color:var(--ink);transition:transform .18s,box-shadow .18s}.starter:hover{transform:translateY(-3px);box-shadow:0 7px 22px #2845320a}.starter:nth-child(2){background:#e8eedf}.starter:nth-child(3){background:#f0e9dc}.starter>span{font-size:9px;letter-spacing:1.5px}.starter>b{display:block;font-family:Manrope,'PingFang SC','Noto Sans CJK SC','Microsoft YaHei',sans-serif;font-size:20px;letter-spacing:-.5px;margin:22px 0 12px;line-height:1.4}.starter>p{font-size:12px;color:var(--muted);min-height:59px}.starter>svg{margin-top:15px}.principle{display:flex;align-items:center;gap:18px;margin-top:26px;font-size:11px;color:var(--muted)}.principle>b{color:var(--ink);white-space:nowrap}.composer{position:fixed;bottom:0;left:max(0px,calc((100vw - 1600px)/2));width:370px;padding:15px 22px calc(16px + env(safe-area-inset-bottom));z-index:10;background:linear-gradient(#f0f2e900,#f0f2e9 18%);border-right:1px solid var(--line)}.composer form{display:flex;align-items:flex-end;gap:10px;background:white;border:1px solid #cbd8c9;border-radius:18px;padding:12px;box-shadow:0 7px 30px #223f3310}.composer textarea{width:100%;resize:none;border:0;outline:none;background:transparent;font-size:13px;min-height:35px;max-height:100px;padding:7px 3px;color:var(--ink);line-height:1.5}.composer-status{display:flex;align-items:center;gap:5px;font-size:9px;margin:9px 4px 0;color:var(--muted)}.composer-status>span:last-child{margin-left:auto;white-space:nowrap}.status-dot{width:5px;height:5px;background:#a99669;border-radius:50%;flex:none}.status-dot.live{background:#588d62}.send{width:36px;height:36px;flex:none;border:0;border-radius:12px;background:var(--green);color:white;display:grid;place-items:center}.suggestions{display:flex;gap:6px;padding:0 0 9px;overflow-x:auto;scrollbar-width:none}.chip{white-space:nowrap;border:1px solid #d0dccc;background:#f9faf4;color:#556f5c;border-radius:24px;padding:7px 10px;font-size:10px}.no-task .composer{left:50%;transform:translateX(-50%);width:min(820px,95vw);background:linear-gradient(#f6f6ef00,var(--cream) 20%);border:0;padding-top:25px}.no-task .composer form{padding:16px;border-radius:22px}.brief{display:flex;flex-wrap:wrap;gap:10px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.brief>div:first-child{flex:1}.brief .eyebrow{font-size:9px;color:var(--muted)}.brief h2{font-size:20px;margin:7px 0 0;letter-spacing:-.6px}.brief h2 span{color:#84927d;margin:0 4px}.brief-facts{display:flex;flex-wrap:wrap;gap:7px;flex-basis:100%;margin-top:7px}.brief-facts>span{background:#eaeee2;border-radius:6px;padding:5px 8px;font-size:10px;color:#687961}.brief-facts>span.tentative{background:#f1e7d3;color:#8e6834}.decision{padding:30px;background:#fffffa;border:1px solid #d9e1d4;border-radius:22px;margin-bottom:20px;box-shadow:0 3px 12px #334d2d03}.decision-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.decision .eyebrow{font-size:9px;color:#738162;max-width:70%}.price{font-family:Manrope,sans-serif;font-size:28px;white-space:nowrap;font-weight:600;letter-spacing:-1px}.price small{font-family:'DM Sans',sans-serif;display:block;text-align:right;font-size:9px;font-weight:400;letter-spacing:0;color:var(--muted)}.decision h2{font-size:30px;margin:16px 0 13px;font-weight:500}.decision>p{font-size:13px;color:#667766}.decision .reason{max-width:620px;color:#536e59}.preserve-note{border-radius:9px;padding:11px 13px;background:#edf2e5;border-left:3px solid #7e9b62;font-size:11px;color:#546c46;margin:17px 0;line-height:1.65}.segment{padding:14px 0;border-top:1px solid #edf0e6;min-width:0}.segment-date{font-size:9px;font-weight:500;color:#83907e;display:flex;gap:14px;align-items:center;margin-bottom:9px}.segment-date>span{font-size:8px;letter-spacing:.8px}.segment-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,.9fr) minmax(0,1fr);gap:12px;align-items:center}.segment-main>div:last-child{text-align:right}.segment-main b{font:500 23px Manrope,sans-serif;letter-spacing:-.8px;display:block}.segment-main sup{font-size:9px;margin-left:3px}.segment-main span{display:block;font-size:11px;margin-top:4px;color:var(--muted);overflow-wrap:anywhere}.rail-line{display:flex;flex-direction:column;text-align:center;gap:5px;align-items:center}.rail-line small{font-size:9px;color:#82917b;line-height:1.25}.rail-line i{position:relative;width:100%;height:1px;background:#cbd6c0}.rail-line i:before,.rail-line i:after{content:'';position:absolute;width:5px;height:5px;border:1px solid #97aa8b;border-radius:50%;top:-2px;background:#fffffa}.rail-line i:before{left:0}.rail-line i:after{right:0}.fare-facts{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.fare-facts span{font-size:9px;padding:5px 7px;border:1px solid #dce6d5;border-radius:4px;color:#677c5e}.rules{font-size:11px;color:#68785f;margin:16px 0}.rules p{margin:12px 0;padding-left:12px;border-left:1px solid var(--line);font-size:11px}.evidence{background:#f1f4e9;border-radius:10px;padding:13px 15px;margin:21px 0 20px;font-size:11px;color:#577149}.evidence summary{display:flex;justify-content:space-between;gap:10px}.evidence summary b{font-weight:500;font-size:10px}.evidence>p{font-size:10px;color:#77866d;margin:10px 0}.evidence-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:12px 0}.evidence-grid>span{font-size:9px}.evidence-grid b{display:block;font:500 20px Manrope;margin-top:5px}.decision-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.button{border:1px solid var(--green);background:var(--green);color:#fff;padding:13px 17px;border-radius:11px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:44px;line-height:1.4}.button:hover{filter:brightness(1.08)}.button.secondary{background:transparent;color:var(--ink);border-color:#cdd9c3}.button.full{width:100%;margin-top:18px}.counterfactuals{margin:24px 0}.counterfactuals h3{font-size:14px;letter-spacing:-.3px;font-weight:600}.counterfactuals article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border:1px solid var(--line);border-radius:14px;background:#eeefe4;margin:10px 0}.counterfactuals article span{font-size:9px;color:#9a7852;font-weight:700;letter-spacing:.4px}.counterfactuals h4{font-size:16px;letter-spacing:-.3px;margin:6px 0}.counterfactuals p{font-size:11px;color:var(--muted);margin:0}.blocked{border-color:#dfccb1;background:#fffaf0}.blocked h2{font-size:27px}.blocked>small{display:block;font-size:10px;color:#8a7e68;margin-top:15px}.section-top{display:flex;align-items:start;justify-content:space-between;gap:15px}.section-top h2{font-size:25px}.section-top .price{margin-top:14px}.editor{background:white;padding:26px;border:1px solid var(--line);border-radius:18px}.editor form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.editor form>.button{grid-column:1/-1}label{display:block;font-size:11px;color:#5f7460;margin-top:15px;line-height:1.5}input:not([type=checkbox]),select{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #d2ddc9;border-radius:8px;color:var(--ink);background:#fbfcf7;font-size:13px}label small{display:block;font-size:10px;margin-top:6px;color:#8b927f}.check{display:flex;gap:10px;align-items:start;font-size:11px;line-height:1.6}.check input{margin-top:4px;flex:none;accent-color:var(--green)}.travellers{margin:16px 0;background:#f7f8f1;padding:16px;border-radius:12px}.travellers summary{font-size:12px;font-weight:600}.muted,.fare-note{font-size:10px;color:#8b947e;margin:12px 0;line-height:1.6}.diff{margin:22px 0}.diff>div{display:flex;flex-direction:column;gap:8px;padding:17px 12px;border-bottom:1px solid var(--line);font-size:12px}.diff>div.changed{background:#f3eddf;border-radius:8px;border:0}.diff>div>span{font-size:11px;color:#7e8675}.diff del{opacity:.65;margin-right:8px}.total-line{display:flex;justify-content:space-between;margin:20px 0;font-size:12px}.total-line b{font:500 23px Manrope}.booking-ref{font-size:10px;color:var(--muted)}.tag{font-size:10px;background:#e6eddc;color:#65814f;padding:5px 8px;border-radius:5px}.tag.warning{background:#f7e7cb;color:#97703e}.travel>h2{font-size:27px;margin:14px 0 20px}.attention{border:1px solid #e7d7bc;background:#fbf1de;border-radius:12px;padding:18px;margin:16px 0}.attention b{font-size:14px}.attention p{font-size:12px;color:#957b55}.attention .button{margin:4px}.test-event{font-size:10px;margin:20px 0 0;color:#849077}.test-event>p{font-size:10px}.after-sales{margin-top:18px;border-top:1px solid var(--line);padding-top:20px}.after-sales h3{font-size:19px}.after-sales p{font-size:12px}.alternative{padding:18px 0;border-bottom:1px solid var(--line)}.alternative>.button{width:100%;margin-top:12px}.price-difference{font:500 32px Manrope;margin:25px 0}.price-difference del{color:#9ea996;font-size:21px}.error{border:1px solid #e8bdab;background:#fff1e9;color:#915336;border-radius:10px;font-size:12px;padding:15px;margin:16px 0;overflow-wrap:anywhere}.boot,.boot-error{padding:60px;text-align:center;font:600 30px Manrope}.boot span{display:block;font-size:12px;margin-top:20px;color:var(--muted)}.settings form{margin:24px 0}.settings form .button{margin-top:12px}
@media(min-width:1600px){.topbar{padding-left:calc((100vw - 1600px)/2 + 36px);padding-right:calc((100vw - 1600px)/2 + 36px)}}
@media(max-width:1100px) and (min-width:801px){.layout{grid-template-columns:315px minmax(0,1fr)}.composer{width:315px}.workspace{padding:26px 25px 80px}.decision{padding:24px}.decision h2{font-size:25px}.thread{padding:25px 20px 190px}.thread-top h2{font-size:20px}}
@media(max-width:800px){.topbar{height:61px;padding:0 17px}.brand{font-size:21px;gap:7px}.brand-icon{width:29px;height:29px;border-radius:9px}.brand small{font-size:7px;margin-left:2px;letter-spacing:.8px}nav{gap:0}.quiet{font-size:10px;padding:9px 8px}.layout{display:flex;flex-direction:column;min-height:calc(100dvh - 61px);padding-bottom:165px}.thread{position:static;height:auto;width:100%;padding:18px 19px 0;border:0;background:transparent;overflow:visible;order:1}.thread-top{display:none}.thread .message{margin:12px 0;font-size:12px}.thread .message.user>div{max-width:90%;padding:10px 13px}.history{padding-top:0;border:0}.history summary{font-size:10px}.recent .assistant>div>p{line-height:1.65}.workspace{width:100%;padding:17px 16px 25px;order:2}.no-task .workspace{padding:32px 21px 24px}.no-task .composer,.composer{left:0;transform:none;width:100%;padding:12px 14px calc(11px + env(safe-area-inset-bottom));background:linear-gradient(#f6f6ef00,var(--cream) 16%);border:0}.composer form,.no-task .composer form{border-radius:18px;padding:10px}.composer textarea{min-height:33px;font-size:13px;max-height:75px}.composer-status{font-size:9px;margin-top:7px}.suggestions{padding-bottom:7px}.chip{font-size:10px;padding:6px 9px}.welcome .eyebrow{font-size:8px;letter-spacing:.8px}.spark{font-size:17px}.welcome h1{font-size:34px;margin:22px 0 18px;line-height:1.22}.welcome>p{font-size:12px;line-height:1.8}.starter-grid{display:flex;flex-direction:column;gap:10px;margin-top:26px}.starter{padding:17px 18px;position:relative;border-radius:14px}.starter>span{font-size:8px;letter-spacing:1.2px}.starter>b{font-size:16px;margin:10px 28px 7px}.starter>p{font-size:11px;min-height:0;margin:0 22px 0 0;line-height:1.65}.starter>svg{position:absolute;right:16px;top:40px;width:18px}.principle{display:block;font-size:10px;line-height:1.65;margin:23px 0}.principle>b{display:block;margin-bottom:4px}.brief{padding-bottom:18px;margin-bottom:18px;gap:8px}.brief h2{font-size:18px}.brief .eyebrow{font-size:8px}.brief-facts{gap:5px}.brief-facts>span{font-size:9px;padding:4px 6px}.decision{padding:20px 18px;border-radius:17px;margin-bottom:15px}.decision-heading .eyebrow{max-width:55%;font-size:8px;letter-spacing:1.1px;margin-top:4px}.price{font-size:24px}.price small{font-size:8px}.decision h2{font-size:24px;line-height:1.34;margin:16px 0 10px}.decision>p{font-size:12px}.segment{padding:12px 0}.segment-main{grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);gap:8px}.segment-main b{font-size:22px}.segment-main span{font-size:10px;line-height:1.4}.segment-date{font-size:8px;margin-bottom:9px;gap:9px}.segment-date>span{font-size:7px}.rail-line small{font-size:8px}.fare-facts span{font-size:8px;padding:4px 5px}.evidence{padding:12px;margin:17px 0}.evidence summary{font-size:10px;align-items:center;gap:6px}.evidence summary b{font-size:9px;white-space:nowrap}.evidence-grid{grid-template-columns:repeat(2,1fr);gap:12px}.decision-actions{gap:8px}.decision-actions>.button:first-child{width:100%}.button{font-size:11px;padding:12px 14px;min-height:44px;gap:9px}.decision-actions>.button.secondary{flex:1}.counterfactuals{margin:22px 0}.counterfactuals h3{font-size:13px}.counterfactuals article{padding:15px;gap:12px}.counterfactuals h4{font-size:14px}.counterfactuals p{font-size:10px}.counterfactuals .button{padding:10px;min-width:72px;font-size:10px}.preserve-note{font-size:10px;padding:10px}.section-top h2{font-size:22px}.section-top .price{font-size:22px}.travellers{padding:13px;margin-top:12px}.editor{padding:20px 17px}.editor .section-top h2{font-size:21px}.editor form{gap:12px}.editor label{margin-top:7px}.editor input,.editor select{padding:10px;font-size:12px}.diff>div{padding:14px 10px}.diff>div span{font-size:10px}.travel>h2{font-size:23px}.blocked h2{font-size:24px}.after-sales .segment-main{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr)}.settings .button{font-size:11px}.boot{padding:80px 25px}.error{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.resume-journeys{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 0 25px;font-size:10px;color:var(--muted)}

/* Mobile is a 1:1 viewport, never a scaled desktop canvas. */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
@media (max-width:800px) {
 html,body,#app { max-width:100%; overflow-x:clip; touch-action:pan-x pan-y; }
 input:not([type=checkbox]),textarea,select,.composer textarea,.editor input,.editor select { font-size:16px!important; }
 .model-actions { display:flex; flex-wrap:wrap; gap:8px; }
 .model-actions .button { flex:1 1 auto; }
}
.model-highlights { padding:0; list-style:none; display:grid; gap:9px; font-size:13px; line-height:1.65; }
.model-highlights li { padding-left:13px; border-left:2px solid var(--line); }
.model-origin { display:inline-flex; font-size:10px; color:var(--muted); margin-bottom:12px; }
.model-pending { padding:18px; border:1px dashed var(--line); border-radius:12px; line-height:1.7; font-size:13px; }
.model-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:16px; }

/* PC options are full, equal-capability cards, not one hero + collapsed text. */
.result-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}
.simulation-badge{font-size:11px;background:#f4e9d5;color:#775a37;border-radius:6px;padding:6px 9px;white-space:nowrap}
.model-result>h2{font-size:28px;line-height:1.3;margin-bottom:18px}
.result-highlights{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 23px}
.result-highlights>span{font-size:12px;line-height:1.5;background:#e9eee2;border-radius:8px;padding:8px 10px}
.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.option-card{display:flex;flex-direction:column;padding:22px;border:1px solid #d9e1d2;border-radius:18px;background:#fffef9;min-width:0}
.option-card.recommended{border:2px solid #78975b;background:#f9fcf3;padding:21px}
.option-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:18px}
.option-tag{font-size:10px;background:#e4eeda;padding:6px 8px;border-radius:6px}
.option-card .price{font-size:25px;text-align:right;white-space:nowrap}.option-card .price small{display:block;font-size:9px;font-weight:400;white-space:normal;max-width:145px}
.option-card h3{font-size:20px;line-height:1.3;margin-bottom:9px}
.option-why{font-size:13px;line-height:1.65;color:var(--muted);margin-bottom:12px}
.option-card .segment-main{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:8px}
.option-card .segment-main b{font-size:23px}.option-card .segment-main span{font-size:11px;line-height:1.4}
.option-card .rail-line small{font-size:9px;line-height:1.4}.option-card .segment-date{font-size:10px;gap:8px;flex-wrap:wrap}
.option-card .segment-date>span{font-size:8px}.option-card .fare-facts{gap:5px}.option-card .fare-facts span{font-size:10px}
.option-rules{font-size:12px;margin:14px 0 18px;line-height:1.6;color:var(--muted)}.option-rules p{margin:10px 0}
.option-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:8px}.option-actions .button{flex:1;min-width:130px}
.model-receipt{margin-top:25px}.model-receipt summary{gap:20px}
@media(min-width:1200px){.workspace{padding-left:32px;padding-right:32px}.layout{grid-template-columns:370px minmax(0,1fr)}}
@media(min-width:801px) and (max-width:1100px){.option-grid{grid-template-columns:1fr}}
@media(max-width:800px){.option-grid{grid-template-columns:1fr;gap:15px}.option-card{padding:20px}.option-card.recommended{padding:19px}.model-result>h2{font-size:24px}.result-highlights>span{font-size:12px}.thread .message{font-size:14px}.option-card .segment-main{grid-template-columns:minmax(0,1fr) 78px minmax(0,1fr)}.workspace{padding-bottom:35px}.chip{font-size:12px}.composer-status{font-size:9px}.model-result .eyebrow{font-size:9px}.decision>h2{font-size:24px}.decision>p{font-size:14px}}

/* LAB / 07 — continuous model-native lifecycle, not a second booking wizard. */
.journey-switcher{position:relative;font-size:12px;color:var(--ink)}
.journey-switcher summary{padding:10px;list-style:none;border-radius:9px}.journey-switcher summary b{display:inline-block;padding:2px 6px;border-radius:6px;background:var(--mint);margin-left:4px}
.journey-switcher[open]>div{position:absolute;right:0;top:40px;width:min(370px,85vw);padding:10px;background:#fffffb;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px #183d3520;z-index:30;max-height:65vh;overflow:auto}
.journey-link{display:block;width:100%;border:0;background:none;padding:13px;text-align:left;border-radius:9px;color:var(--ink);line-height:1.5;font-size:13px}.journey-link:hover{background:var(--mint)}
.journey-stage{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 24px;padding-bottom:12px;border-bottom:1px solid var(--line)}.journey-stage>span{display:flex;align-items:center;gap:6px;font-size:10px;padding:7px 9px;border-radius:7px;color:#8d998b}.journey-stage b{font-size:11px;font-weight:500}.journey-stage .active{background:var(--green);color:white}.journey-stage .past{color:#789365}
.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:18px 0}.guide-section{background:#f0f3e8;border:1px solid #e2e7da;border-radius:13px;padding:18px;min-width:0}.guide-section h3{font-size:16px;margin-bottom:9px}.guide-section p,.guide-section li{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.guide-section p:last-child{margin:0}.guide-section ul{padding-left:17px;margin-bottom:0}
.demo-ticket{margin-top:20px;border:1px solid #cad9c0;border-radius:15px;background:#fcfff6;padding:20px;position:relative}.ticket-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:13px;border-bottom:1px dashed #b7c5ab;font-size:10px;letter-spacing:.8px}.ticket-heading b{font-size:12px}.ticket-travellers{font-size:13px;margin:14px 0;line-height:1.5}.ticket-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px dashed #b7c5ab;padding-top:12px;font-size:10px;color:var(--muted)}.ticket-seats{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.ticket-seats span{padding:8px 10px;background:#e7eeda;border-radius:8px;font-size:12px}
.boarding-note{padding:12px 15px;background:#f1eedf;border-radius:9px;font-size:13px;line-height:1.7}.seat-preview{background:#f4f5ec;border-radius:12px;padding:17px;margin:18px 0}.seat-preview>div{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:13px;font-size:13px}.seat-preview small{grid-column:1/-1;color:var(--muted);font-size:12px}
.event-console,.ledger,.travel-memory{margin:20px 0 0;border-top:1px solid var(--line);padding-top:16px;font-size:12px}.event-console summary,.ledger summary,.travel-memory summary{font-size:12px;color:var(--ink)}.event-console p{margin-top:14px;color:var(--muted);font-size:12px}.event-console form{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.event-console form .button{grid-column:1/-1}.event-console label{min-width:0}.event-console select{width:100%;min-height:44px;margin-top:7px;border:1px solid var(--line);border-radius:9px;background:white;padding:9px;color:var(--ink)}
.ledger>div{display:grid;grid-template-columns:1fr auto;gap:5px;padding:12px 0;border-bottom:1px solid var(--line)}.ledger small{grid-column:1/-1;font-size:10px;color:var(--muted)}.travel-memory>div{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;border-bottom:1px solid var(--line);padding:8px 0}.travel-memory span{overflow-wrap:anywhere}
.order-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.replacement-card{border:1px solid var(--line);padding:20px;margin:14px 0;border-radius:13px;background:#fafbf6}.replacement-card h4{font-size:18px;margin:0}.replacement-card .section-top>b{font-size:22px;font-weight:500;white-space:nowrap}.replacement-card>.button{width:100%;margin-top:16px}.refund-amounts{background:#f2f4e9;border-radius:11px;padding:16px;font-size:13px}.refund-amounts>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0}.refund-amounts .total{border-top:1px solid #ced8c1;margin-top:6px;font-size:18px}
@media(max-width:800px){.topbar{padding:0 10px}.brand small{display:none}.journey-switcher summary{font-size:11px;padding:8px 5px}.journey-switcher summary b{font-size:9px}.journey-stage{gap:3px;margin-bottom:17px}.journey-stage>span{padding:5px 6px;font-size:9px}.journey-stage b{font-size:10px}.guide-grid{grid-template-columns:1fr}.guide-section{padding:16px}.demo-ticket{padding:16px;margin-left:-3px;margin-right:-3px}.ticket-heading{flex-wrap:wrap}.ticket-footer{align-items:flex-start}.event-console form{grid-template-columns:1fr}.event-console select{font-size:16px}.replacement-card{padding:16px}.order-actions>.button{width:100%}.thread .recent .message{font-size:14px}.composer-status{flex-wrap:wrap}.layout{padding-bottom:170px}}
