:root{--ink:#193b37;--muted:#63736f;--teal:#173d3b;--line:#dce5df;--white:#fff;--bg:#f4f6f2;--accent:#d9edbb;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Malgun Gothic",sans-serif;word-break:keep-all;overflow-wrap:anywhere}
a{color:var(--teal);text-underline-offset:3px}button,input,textarea,select{font:inherit}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:14px;cursor:pointer;text-decoration:none}
button:hover,.button:hover{border-color:#7caaa0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #85ada4;outline-offset:3px}button:disabled{opacity:.55;cursor:wait}
.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.danger{color:#9f3e2b;border-color:#e5c7be}.text-button{background:transparent;border-color:transparent;padding-left:0}.hidden{display:none!important}
.app-header{max-width:980px;margin:auto;padding:18px 22px 8px;display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{font-weight:750;font-size:21px;text-decoration:none}
.connection-line{margin:0 2px 14px;color:var(--muted);font-size:12px}main{max-width:980px;margin:auto;padding:8px 22px 110px}.app-pane{max-width:820px;margin:auto}
.page-title{padding:8px 2px 18px}.page-title h1{margin:2px 0;font-size:29px}h1{font-size:27px;line-height:1.35;margin:16px 0}h2{font-size:21px;line-height:1.4;margin:0 0 12px}h3{font-size:17px;line-height:1.5;margin:8px 0}p{margin:10px 0}
small,.subtle,.footnote{font-size:13px;color:var(--muted)}.footnote{line-height:1.65}.eyebrow{font-size:12px;font-weight:650;letter-spacing:.3px;color:var(--muted)}
.card{background:var(--white);border:1px solid var(--line);border-radius:18px;margin:0 0 16px;padding:22px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:12px}.sectionhead h2{margin:0}
.status-note{padding:10px 12px;border-radius:10px;background:#f0f4e9;font-size:13px;color:#56684b}
.livebox{border-radius:20px;background:var(--teal);color:white;padding:24px;margin-bottom:18px}.livebox .eyebrow,.livebox .footnote{color:#c9ddd5}.livebox h1{font-size:26px;margin:18px 0}
.badge{display:inline-block;border:1px solid #8ba6a1;border-radius:30px;font-size:12px;padding:4px 10px;white-space:nowrap}.badge.good{background:var(--accent);border-color:var(--accent);color:var(--ink)}.badge.warn{background:#f5dfb1;color:#694715;border-color:#f5dfb1}
.stats{display:grid;grid-template-columns:1.4fr .85fr 1fr;gap:12px;border-top:1px solid #52726b;padding-top:15px}.stats small{display:block;color:#bed4cb;font-size:11px}.stats strong{font-weight:600;font-size:15px;font-variant-numeric:tabular-nums}.stats>div{min-width:0}
.app-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:15;display:grid;grid-template-columns:repeat(5,1fr);width:min(100%,980px);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:5px;background:#fffffff5;border-top:1px solid var(--line);backdrop-filter:blur(12px)}
.app-nav button{border:0;background:transparent;border-radius:12px;padding:11px 5px;color:var(--muted);font-size:14px;min-height:48px}.app-nav button[aria-selected="true"]{background:#e5eee7;color:var(--ink);font-weight:750}
label{display:block;font-size:14px;font-weight:600;margin:12px 0 7px}textarea,input[type="search"]{width:100%;border:1px solid #c9d8cf;border-radius:12px;background:#fbfdfb;color:var(--ink);padding:13px;font-size:16px}textarea{resize:vertical;min-height:110px;margin-bottom:12px}
select,input[type="date"],input[type="time"]{max-width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:9px;color:var(--ink);font-size:14px}
.controls,.choice-buttons,.choices{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0}.choice-buttons button{flex:1 1 auto}.choice-buttons button.active{background:var(--teal);color:#fff}.decision{border-color:#a2b882;background:#fafcf4}
.segments{display:flex;gap:5px;padding:5px;background:#edf1e9;border-radius:12px;flex-wrap:wrap}.segments button{background:transparent;border:0;min-height:40px}.segments button.active{background:#fff;box-shadow:0 1px 4px #193b3710}.route-tabs{margin:13px 0}
details{border-top:1px solid var(--line);padding-top:15px;margin-top:16px}details.card{padding-top:20px;margin-top:0}summary{font-size:15px;font-weight:650;cursor:pointer;min-height:30px}details[open]>summary{margin-bottom:12px}details details{background:#fafcf9;padding:12px;border:1px solid var(--line);border-radius:10px}
.route-stop{display:grid;grid-template-columns:90px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.time{font-size:13px;color:var(--muted)}.route-stop h3{margin-top:0}.route-stop p,.place p{font-size:14px}.parking{background:#f0f4e9;border-radius:10px;padding:10px 12px;font-size:13px!important}.maplink{display:inline-block;font-size:14px;margin-top:5px}
.booking{padding:14px;background:#f6f0df;border-radius:12px;font-size:14px;white-space:pre-line}form fieldset{border:0;border-bottom:1px solid var(--line);padding:14px 0;margin:0}form legend{font-weight:650}.form-row{display:flex;gap:8px}.form-row input{min-width:0;width:50%}form label{font-size:13px;font-weight:400}
.phone-request,.observed-stop,.alert{padding:16px 0;border-bottom:1px solid var(--line)}.phone-request h3,.alert h3{font-size:16px;overflow-wrap:anywhere}.phone-request p,.alert p{white-space:pre-line;font-size:14px;overflow-wrap:anywhere}.alert small,.phone-request small{font-size:12px}.observed-stop h3{font-size:15px}.empty{color:var(--muted);padding:12px 0;font-size:14px}
.advice{padding:14px;background:#edf2de;border-radius:12px}.advice p{white-space:pre-line}.place{padding:16px 0;border-bottom:1px solid var(--line)}.place-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.place-distance{font-size:13px;white-space:nowrap;color:var(--muted)}.technical-text{white-space:pre-line;font:13px/1.8 ui-monospace,monospace}
.notification-detail{scroll-margin-top:12px}.phone-answer,.saved-research-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}.detail-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;margin:18px 0}.detail-gallery figure{margin:0;min-width:0}.detail-gallery img{width:100%;height:auto;max-height:380px;object-fit:contain;border-radius:12px;background:#f0f4ec}.detail-gallery figcaption{font-size:12px;color:var(--muted)}.detail-links{display:grid;gap:12px;padding:14px;background:#f1f5ed;border-radius:12px}
.detail-choice{flex:1 1 250px;border:1px solid var(--line);border-radius:12px;padding:12px}.detail-choice button{width:100%}.detail-choice p{font-size:13px}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px;align-items:start}.comparison-card{min-width:0;border:1px solid var(--line);border-radius:14px;padding:16px;background:#fcfefb}.comparison-card .choices button{width:100%}.choice-preview{max-height:65vh;overflow-y:auto;padding:10px 4px;scrollbar-gutter:stable}
.navigation-bundle,.navigation-focus{border:1px solid #bbd5ca;border-radius:12px;padding:15px;background:#eff7f2;margin:14px 0}.navigation-choice{display:flex;align-items:center;gap:10px;min-height:46px;font-weight:400}.navigation-choice input{width:22px;height:22px}.navigation-focus small{display:block;margin-top:10px}.navigation-controls{display:flex;flex-wrap:wrap;gap:10px}.navigation-controls .button{flex:1 1 180px}
.research-search{display:flex;gap:8px;margin:12px 0}.research-search input{min-width:0;flex:1}.research-library details,.planning-progress{border:1px solid var(--line);border-radius:12px;padding:14px;margin:12px 0}.planning-progress{background:#f2f6ed}.research-library details a{display:inline-block;margin:5px 10px 5px 0}.research-library small{display:block}.research-library button{flex-shrink:0}
.toast{position:fixed;bottom:calc(82px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:30;background:#173d3bf5;color:white;border-radius:12px;padding:14px 18px;max-width:min(90vw,650px);font-size:14px}
dialog{border:1px solid var(--line);border-radius:18px;padding:28px;width:440px;max-width:92vw;color:var(--ink)}dialog::backdrop{background:#102d2c88}.close{position:absolute;right:10px;top:10px;font-size:25px;background:transparent;border:0;padding:0 10px}#pairQr{display:block;max-width:100%;margin:20px auto}#pairOrigin{overflow-wrap:anywhere}dt{color:var(--muted);margin-top:12px;font-size:13px}dd{margin:3px 0;word-break:break-all;background:#eef3e9;padding:8px;border-radius:8px}#legacySettings button,#voiceSetup .button{margin:5px 4px 5px 0}#dayNotes{font-size:14px}#dayNotes a{display:inline-block;margin:5px 10px 0 0}
@media(max-width:600px){main{padding:5px 14px 105px}.app-header{padding:14px 16px 7px}.app-header .subtle{font-size:12px}.card{padding:19px;border-radius:16px}.livebox{padding:21px}.livebox h1{font-size:24px}.stats{gap:8px}.stats strong{font-size:13px}.sectionhead{flex-wrap:wrap;align-items:start}.route-stop{grid-template-columns:70px 1fr;gap:10px}.route-stop p{font-size:13px}.detail-gallery{grid-template-columns:1fr}.choice-buttons button{flex:1 1 42%}.comparison-grid{display:block}.comparison-card{margin-bottom:12px}.controls button{flex:1 1 42%}}

/* A journey first, with technical state kept small and readable. */
:root{--ink:#173d3a;--muted:#60716b;--bg:#f7f7f0;--line:#dfe7de;--accent:#e1efb3;--orange:#b3592e;--soft:#edf3e9}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ui-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;vertical-align:middle}.ui-icon svg{width:100%;height:100%}[data-icon]{display:inline-flex;align-items:center;justify-content:center}
h2:has(>[data-icon]){display:flex;align-items:center;gap:9px}.brand{display:flex;align-items:center;gap:9px;letter-spacing:-.7px}.brand-mark{width:33px;height:33px;background:var(--teal);border-radius:11px;color:var(--accent)}.brand-mark .ui-icon{width:25px;height:25px}
main{max-width:900px}.app-header{max-width:900px}.connection-line{font-size:12px;margin-bottom:14px}.home-heading{display:flex;align-items:center;justify-content:space-between;padding:7px 3px 18px}.home-heading h1{font-size:30px;letter-spacing:-1px;margin:2px 0 0}.heading-art .ui-icon{width:68px;height:54px;color:#82a18c}.home-heading .eyebrow{font-size:12px}
.journey-hero{position:relative;isolation:isolate;overflow:hidden;background:#173d3b;color:white;border-radius:25px;padding:24px;margin-bottom:12px;box-shadow:0 7px 20px #123e3020}.journey-hero:after{content:'';position:absolute;width:240px;height:240px;border:1px solid #ffffff13;border-radius:50%;right:-100px;top:-110px;z-index:-1;box-shadow:0 0 0 35px #ffffff05,0 0 0 70px #ffffff04}.journey-hero .eyebrow{color:#d1e2d3;font-size:13px}.hero-main{display:flex;align-items:center;gap:16px;margin:17px 0 10px}.hero-main>div{min-width:0}.hero-glyph{background:#ffffff0f;width:54px;height:54px;border:1px solid #ffffff25;border-radius:17px;flex-shrink:0}.hero-glyph .ui-icon{width:31px;height:31px}.journey-time{font-size:39px;line-height:1.15;letter-spacing:-1px;font-weight:740;font-variant-numeric:tabular-nums;margin:0 0 4px}.journey-hero h2{font-size:24px;letter-spacing:-.6px;margin:0}.journey-hero #nextFlowSummary{color:#dfebe1;font-size:14px;line-height:1.7;margin:12px 0}.journey-hero[data-kind="route"] .journey-time{font-size:14px;letter-spacing:0;font-weight:500;color:#c9dbc8}.journey-hero[data-kind="booking"] .hero-main h2{font-size:18px;font-weight:650;color:var(--ink)}
.state-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;min-height:26px;border-radius:7px;font-size:11px;line-height:1.4;font-weight:650;background:#edf1e9;color:#566857;white-space:nowrap}.state-chip.confirmed{background:#e6edce;color:#3c5325}.state-chip.selected{background:#d7eee8;color:#245e55}.state-chip.proposal{background:#f5ead5;color:#805a20}.state-chip.neutral{background:#ffffff18;color:#e1ebdf}.journey-hero .state-chip.confirmed{background:#e1efb3;color:#263f24}
.journey-ports{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0;padding:13px 15px;border:1px solid #ffffff24;border-radius:13px;background:#ffffff06}.port-name{font-size:23px;white-space:nowrap;letter-spacing:-.5px}.port-connector{display:flex;align-items:center;justify-content:center;flex:1;position:relative}.port-connector:before,.port-connector:after{content:'';height:1px;flex:1;border-top:1px dashed #9ebeb0}.port-connector .ui-icon{margin:0 10px;width:27px;height:27px;color:#dce9ad}
.hero-action{display:flex;justify-content:space-between;width:100%;background:#e1efb3;color:#173d3b;border-color:#e1efb3;border-radius:13px;min-height:50px;margin-top:19px;font-size:15px;font-weight:700}.hero-action>span:nth-child(2){flex:1;text-align:left}.hero-note{font-size:11px!important;color:#c9d9cd!important;margin:9px 0 0;line-height:1.5}
.journey-preview{list-style:none;padding:0;margin:16px 0}.journey-preview li{display:flex;align-items:center;gap:10px;font-size:14px;margin-top:8px}.journey-preview .ui-icon{width:15px;color:#a7c6b2}.journey-preview small{color:#bcd1bd;margin-left:auto;font-size:11px}.status-note{display:flex;align-items:start;gap:8px;background:transparent;color:#657261;font-size:12px;padding:0 4px;margin:0 0 18px}.status-note:before{content:'·';font-weight:750;background:#ebeee2;border:1px solid #d9e0cd;border-radius:5px;padding:0 4px;line-height:18px;flex-shrink:0}
.livebox{background:white;border:1px solid var(--line);border-radius:18px;color:var(--ink);padding:18px;margin-bottom:16px}.location-heading{display:flex;gap:10px;align-items:center}.location-symbol{width:37px;height:37px;border-radius:12px;background:#edf3e9;color:#477664}.location-heading>div{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1;min-width:0}.livebox #locationTitle{font-size:15px;font-weight:650;margin:0;line-height:1.5;letter-spacing:-.2px}.livebox .badge{font-size:11px;padding:3px 7px;white-space:normal;line-height:1.5;border-radius:6px;border-color:var(--line)}.badge.good{background:#ecf3e4;border-color:#dae8c8;color:#3f602b}.badge.warn{background:#fbebcb;color:#77531c;border-color:#efdba9}
.stats{border-top:1px solid var(--line);margin-top:13px;grid-template-columns:1.35fr .8fr 1fr;padding-top:12px;gap:10px}.stats small{color:var(--muted);font-size:11px}.stats strong{font-size:13px;color:var(--ink);font-weight:650}.livebox .footnote{color:var(--muted);font-size:11px;margin:9px 0 0}.card{border-radius:18px;box-shadow:0 2px 7px #163f2d03}.home-advice{padding-bottom:19px}.home-advice h2{font-size:18px}.home-advice .sectionhead{align-items:center;flex-wrap:nowrap}.home-advice .text-button{font-size:12px;white-space:nowrap;min-height:36px;padding:3px 0}.home-advice .text-button .ui-icon{width:15px}.home-advice .empty{padding:8px 0 14px;font-size:14px;margin:3px 0}.question-shortcut{background:#f1f5eb;border-color:#e6ecde;display:flex;justify-content:space-between;width:100%;font-size:13px;text-align:left;padding:13px 12px;gap:10px}.question-shortcut>span:nth-child(2){flex:1}.question-shortcut .ui-icon{width:18px;height:18px}.feedback-card summary{display:flex;align-items:center;gap:10px;font-size:15px}.feedback-card summary:after{content:'+';margin-left:auto;font-size:22px;color:#748372}.feedback-card[open] summary:after{content:'−'}
.app-nav{max-width:900px;gap:7px;padding:7px 12px calc(7px + env(safe-area-inset-bottom));background:#fffffff5}.app-nav button{flex-direction:column;gap:3px;border-radius:12px;font-size:11px;line-height:1.4;padding:6px 4px;min-height:58px}.app-nav .ui-icon{width:23px;height:23px}.app-nav button[aria-selected="true"]{background:#eaf0df;color:#193f34;box-shadow:inset 0 2px 0 #bdd28b}.app-nav button[aria-selected="true"] .ui-icon{stroke-width:2}
.journey-timeline{list-style:none;margin:16px 0 0;padding:0}.timeline-item{display:flex;gap:13px;position:relative;padding-bottom:25px}.timeline-item:not(:last-child):before{content:'';position:absolute;left:15px;top:32px;width:1px;bottom:0;background:#cfddc6}.timeline-item:last-child{padding-bottom:3px}.timeline-marker{display:flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:11px;background:#f0f3e9;border:1px solid #dce5d3;color:#6a785e;flex-shrink:0;font-size:13px;font-weight:700}.timeline-item.selected .timeline-marker,.timeline-item.confirmed .timeline-marker{background:#204d43;border-color:#204d43;color:white}.timeline-body{min-width:0;flex:1;padding-top:3px}.timeline-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.timeline-head strong{font-size:16px;line-height:1.55}.timeline-head .state-chip{font-size:10px;flex-shrink:0}.timeline-time{font-size:12px;display:block;color:var(--muted);margin-top:4px}.journey-overview-card h2{font-size:18px}.journey-overview-card{border-top:3px solid #bbcf94}.reference-plan summary{display:flex;align-items:center;gap:9px}.adaptive summary{font-size:15px}.adaptive>div.sectionhead{margin-top:6px}.route-stop{position:relative;padding-left:30px;grid-template-columns:65px 1fr;gap:12px}.route-stop[data-step]:before{content:attr(data-step);position:absolute;left:0;top:20px;border:1px solid #cbdabc;border-radius:8px;width:22px;height:24px;text-align:center;line-height:23px;font-size:11px;background:#eef4e5}.route-stop h3{font-size:16px}.route-stop .time{font-size:12px}.route-stop details{margin-top:8px;padding-top:9px}.route-stop summary{font-size:13px;color:#506849;font-weight:550}.route-stop details p{font-size:13px}
.request-steps{display:flex;list-style:none;padding:0;margin:15px 0 13px}.request-steps li{position:relative;flex:1;font-size:12px;color:#6e7d70;padding:27px 0 0;text-align:center}.request-steps li:before{content:'';position:absolute;top:5px;left:calc(50% - 6px);width:12px;height:12px;border-radius:50%;border:2px solid #d8e1d3;background:white;z-index:1}.request-steps li:not(:last-child):after{content:'';height:2px;position:absolute;top:10px;left:50%;width:100%;background:#dde5d8}.request-steps .done:before{border-color:#507b60;background:#507b60}.request-steps .current{color:#335e44;font-weight:700}.request-steps .current:before{background:#dcebb6;border-color:#6e8e49;box-shadow:0 0 0 4px #eef5e1}.request-snippet{font-size:14px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.request-overview h2{font-size:18px}.request-overview .text-button{font-size:13px;display:flex}.request-overview small{font-size:11px;display:block}.question-examples{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0 11px}.question-examples button{font-size:12px;min-height:35px;padding:6px 12px;border-radius:20px;background:#f3f6ec}.composer-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.composer-footer .subtle{font-size:11px;font-variant-numeric:tabular-nums}.composer-footer .primary{min-width:155px}
.research-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:-4px -4px 23px}.research-categories button{flex-direction:column;border:0;background:transparent;font-size:11px;gap:7px;padding:7px 2px;min-width:0;min-height:70px}.research-categories [data-icon]{background:#edf3e6;border-radius:13px;width:43px;height:43px;color:#3f6c53}.research-categories button:nth-child(2) [data-icon]{background:#e9f0ef}.research-categories button:nth-child(3) [data-icon]{background:#f6ede0;color:#986342}.research-categories button:nth-child(4) [data-icon]{background:#f7efcf;color:#897032}.research-categories button[aria-pressed="true"]{background:#eaf0df;border-radius:12px}.research-library>details>summary{font-size:15px;line-height:1.7}.research-search button{background:var(--teal);color:white}.feature-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0 11px}.feature-tile{display:flex;flex-direction:column;align-items:start;border:1px solid var(--line);padding:13px;border-radius:14px;background:#f7f9f3;gap:6px}.feature-tile>.ui-icon{color:#7c897d}.feature-tile>span:not(.ui-icon){font-size:12px;color:var(--muted)}.feature-tile strong{font-size:15px}.feature-tile.on{background:#edf4e3;border-color:#dbe7c9}.feature-tile.on>.ui-icon{color:#416d43}.feature-tile.off{background:#f5f6f3}.feature-tile.off strong{color:#62705f}.comparison-card .choices button{background:#204b40;color:white;border-color:#204b40;min-height:49px}.comparison-card>h3{font-size:19px}.comparison-card>p{font-size:14px}.comparison-card details summary{font-size:13px;color:#506b49}
@media(min-width:700px){#pane-now{display:grid;grid-template-columns:1.2fr 1fr;gap:0 20px;align-items:start}#pane-now>.home-heading,#pane-now>#notificationDetail{grid-column:1/-1}.journey-hero{grid-column:1;grid-row:2/span 2}#routineStatus{grid-column:1}.livebox{grid-column:2;grid-row:2}.home-advice{grid-column:2}.feedback-card{grid-column:1/-1}#decisionCard{grid-column:1/-1}.app-nav button{min-height:58px}.journey-ports{margin:25px 0}}
@media(max-width:600px){.journey-hero{padding:22px;border-radius:22px}.livebox{padding:16px}.stats{gap:8px}.stats strong{font-size:12px}.hero-main{gap:13px}.journey-hero h2{font-size:23px}.journey-hero .sectionhead{flex-wrap:nowrap;align-items:center}.card{padding:18px}.page-title h1{font-size:27px}.feature-tiles{gap:7px}.feature-tile{padding:11px}.route-stop{grid-template-columns:55px 1fr;padding-left:28px;gap:10px}.route-stop .choices{margin-left:-83px}.timeline-head{gap:8px}.timeline-head strong{font-size:15px}}
@media(max-width:360px){.journey-hero{padding:18px}.hero-action{font-size:14px}.livebox #locationTitle{font-size:13px}.stats{grid-template-columns:1.25fr .75fr 1fr;gap:5px}.stats strong{font-size:11px}.port-name{font-size:21px}.timeline-head{flex-direction:column;gap:4px}.app-nav{gap:3px;padding-left:8px;padding-right:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.status-note[data-paused="true"]:before{content:"Ⅱ"}

.journey-hero #nextFlowSummary:empty{display:none}.home-heading{padding-bottom:15px}.home-heading h1{font-size:28px}

.port-name{min-width:0;max-width:40%;white-space:normal;overflow-wrap:anywhere;line-height:1.35}
.question-examples button,.home-advice .text-button,summary{min-height:44px}
.app-nav button{font-size:12px}
#deviceSummary:empty{display:none}
@media(min-width:361px) and (max-width:600px){.stats strong{font-size:13px}}

/* Put the conversation and actual next flow ahead of diagnostics. */
.home-heading{padding:2px 0 12px}.home-heading h1{font-size:23px;margin:4px 0}.heading-art{display:none}
.home-advice{border-top:3px solid #b2c78d}.home-advice h2{font-size:17px}.home-advice h3{font-size:18px}.home-advice #homeAlerts>p{font-size:15px;line-height:1.8;white-space:pre-line}.home-advice .question-shortcut{margin-top:14px}
.pending-shortcut{width:100%;background:#f5f0df;margin:0 0 12px;justify-content:start}
.journey-hero[data-kind="booking"]{background:#edf2e6;color:var(--ink);box-shadow:none;border:1px solid #d8e3ce;padding:17px 19px;border-radius:17px}
.journey-hero[data-kind="booking"]:after,.journey-hero[data-kind="booking"] .hero-glyph,.journey-hero[data-kind="booking"] .journey-ports,.journey-hero[data-kind="booking"] .hero-note{display:none}
.journey-hero[data-kind="booking"] .eyebrow{color:var(--muted)}.journey-hero[data-kind="booking"] .hero-main{margin:10px 0}.journey-hero[data-kind="booking"] .hero-main>div{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.journey-hero[data-kind="booking"] .journey-time{font-size:27px;margin:0;letter-spacing:-.5px}.journey-hero[data-kind="booking"] h2{font-size:18px}.journey-hero[data-kind="booking"] .hero-action{min-height:44px;margin:4px 0 0;padding:8px 12px;background:white;color:var(--ink);border-color:#d4dfc9;font-size:13px}
.livebox{padding:14px 18px;border:1px solid #dce5df;border-radius:15px;background:#fff;color:var(--ink);margin:0 0 14px}.livebox>summary{list-style:none}.livebox>summary::-webkit-details-marker{display:none}.livebox>summary:after{content:'위치 상세 +';display:block;font-size:11px;color:var(--muted);margin:4px 0 0 43px}.livebox[open]>summary:after{content:'접기 −'}.livebox .location-heading{margin:0}.livebox #locationTitle{color:var(--ink);font-size:14px}.livebox .location-symbol{background:#eef4e7;color:#52754d;width:32px;height:32px}.livebox .stats{border-color:var(--line);margin-top:12px}.livebox .stats small,.livebox .footnote{color:var(--muted)}
.phone-request{scroll-margin-top:18px}.phone-request:focus{outline:2px solid #b5c78e;outline-offset:5px;border-radius:8px}.phone-request h3{font-size:15px;font-weight:600;color:var(--muted)}.phone-request>p{font-size:16px;line-height:1.85;color:var(--ink)}
#pane-detail{max-width:820px}#pane-detail .sectionhead{position:sticky;top:0;background:#fff;z-index:8;padding:6px 0 12px;border-bottom:1px solid var(--line);margin-bottom:14px}#closeNotificationDetail{min-height:44px}
.ui-update-note{position:fixed;top:8px;left:50%;transform:translateX(-50%);z-index:90;background:#173d3b;color:white;padding:14px;border-radius:13px;width:min(94%,480px);box-shadow:0 5px 25px #0003;font-size:14px}.ui-update-note button{margin-top:8px}
@media(min-width:700px){#pane-now>.home-heading{grid-column:1/-1}.home-advice{grid-column:1;grid-row:2/span 3}.journey-hero{grid-column:2;grid-row:2}#routineStatus{grid-column:2;grid-row:3}.livebox{grid-column:2;grid-row:4}.feedback-card{grid-column:1/-1}}
@media(max-width:600px){.home-advice{padding:18px}.home-advice .sectionhead{gap:8px}.home-advice .text-button{font-size:12px}.home-heading h1{font-size:23px}}

.phone-request h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.original-question{padding:12px;background:#f2f5ed;border-radius:10px}#requestHistory>summary{font-size:17px}#referencePlanStatus{padding:10px;background:#f6efde;border-radius:9px}.previous-answer{display:block;font-size:12px;text-align:left}

.home-advice .text-button.previous-answer{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;max-width:100%;width:100%;min-width:0;overflow:hidden;overflow-wrap:anywhere;word-break:normal;line-height:1.6}
.journey-hero[data-kind="booking"] h2{color:var(--ink);font-weight:650}

/* Trip experience: lived route, personal memory, then current actions. */
#pane-now{display:block;max-width:760px}.home-heading,.memory-home,.journey-hero,.home-advice,.livebox,.feedback-card,#routineStatus{grid-column:auto;grid-row:auto}
.memory-home{background:linear-gradient(140deg,#e8efdc,#f9f5e8);border-color:#ccd9b5;padding:24px}.memory-home h2{font-size:24px;line-height:1.45;margin:9px 0}.memory-home>p{font-size:13px;color:#5c7156}.memory-route-strip{display:flex;flex-wrap:wrap;gap:7px 5px;margin:18px 0}.memory-route-chip{font-size:13px;padding:6px 10px;background:#ffffffc9;border:1px solid #d6e0c8;border-radius:9px}.memory-route-chip:not(:last-child):after{content:' →';color:#77936b;margin-left:5px}.memory-home blockquote{margin:16px 0;padding:0 0 0 13px;border-left:3px solid #9eb276;font-size:15px;line-height:1.8;color:#46613b}.memory-home .primary{width:100%}
.journal-banner{border-radius:17px;background:#214b41;color:#fff;padding:20px;margin-bottom:14px}.journal-banner strong{font-size:19px}.journal-banner p{font-size:13px;margin:8px 0 0;color:#dce8d6}.journal-dates{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:3px 0 13px;margin-bottom:8px;scrollbar-width:thin}.journal-dates button{flex:0 0 auto;min-height:44px;border-radius:22px;font-size:14px}.journal-dates button[aria-pressed="true"]{background:#214b41;border-color:#214b41;color:white}.journal-day{margin:10px 0 20px;scroll-margin-top:12px}.journal-day>h2{font-size:22px;margin:8px 0}.journal-timeline{position:relative;padding-left:19px;margin:20px 0}.journal-timeline:before{content:'';position:absolute;top:18px;bottom:18px;left:3px;width:2px;background:#cad9bb}.journal-stop{position:relative;border:1px solid #dce4d5;background:#fff;border-radius:16px;padding:18px;margin:0 0 16px;min-width:0}.journal-timeline>.journal-stop:before{content:'';position:absolute;top:25px;left:-22px;width:11px;height:11px;background:#6b8a55;border:3px solid #f4f6f2;border-radius:50%;box-shadow:0 0 0 1px #b0c39a}.journal-stop-head{display:flex;gap:12px;align-items:start}.journal-stop-head>.ui-icon{background:#eef3e5;color:#527444;width:39px;height:39px;flex-shrink:0;border-radius:12px;padding:8px}.journal-stop-head h3{margin:0;font-size:19px}.journal-basis{font-size:11px;color:#6b7d5f}.journal-stop>p{font-size:14px;line-height:1.85;margin:14px 0}.journal-stop blockquote{margin:14px 0;padding-left:12px;border-left:3px solid #b4c595;font-size:15px;color:#4d663e;line-height:1.8}.journal-stop .journal-favorite{font-size:13px;min-height:44px;color:#667c46}.journal-stop .journal-favorite[aria-pressed="true"]{color:#9a5e18;font-weight:650}.journal-stop details{margin-top:5px;padding-top:8px}.journal-stop summary{font-size:13px;color:#637556;display:flex;align-items:center}.journal-stop details details{background:transparent}.journal-stop.uncertain{border-style:dashed;background:#faf9f2}.journal-stop.uncertain .journal-basis{color:#8a754b}.journal-saved-note{font-size:13px;white-space:pre-wrap}.journal-version{padding:12px 0;border-bottom:1px solid var(--line)}.journal-version h3{font-size:15px}.journal-version p{font-size:13px}.journal-version small{font-size:11px}
#journalAddTitle{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfdfb}#journalAddDate{max-width:100%}#journalSaveStatus:empty{display:none}
.memory-home blockquote small,.memory-home blockquote span{display:block}.memory-home blockquote small{font-size:11px;color:#687957;margin-bottom:5px}
@media(max-width:600px){.memory-home{padding:20px}.memory-home h2{font-size:23px}.journal-stop{padding:16px}.journal-stop-head h3{font-size:18px}.journal-timeline{padding-left:16px}.journal-timeline>.journal-stop:before{left:-19px}.journal-timeline:before{left:3px}.journal-banner{padding:18px}}

/* Whole journey and dedicated reading: compact summaries, comfortable detail. */
#pane-route{max-width:820px}.journal-dates{flex-wrap:wrap;overflow:visible;gap:7px;position:relative}.journal-dates button{padding:9px 13px;min-height:42px;font-size:13px}.journal-banner{padding:16px 18px;margin-bottom:12px}.journal-banner strong{font-size:18px}.journal-banner p{font-size:12px;line-height:1.6}
.trip-overview{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.trip-day-card{display:flex;flex-direction:column;gap:9px;text-align:left;border-radius:18px;padding:19px;background:#fff;min-width:0;white-space:normal}.trip-day-card h2{font-size:18px;line-height:1.5;margin:0}.trip-day-card p{font-size:13px;line-height:1.8;margin:0}.trip-day-card small{font-size:11px;color:#7c785f;line-height:1.7}.trip-day-card.today{background:#edf3df;border-color:#99af6b}.trip-day-card.reference{background:#f4f0e7;color:#75786b}.trip-day-cta{font-size:12px;color:#466c44;margin-top:auto;padding-top:4px}.future-panel{border-color:#b8c998;background:#f4f7e9}.future-panel .eyebrow{font-size:11px}.future-panel h2{font-size:20px}.future-panel p{font-size:14px}.reference-stop{border:1px dashed #cfcdbb;padding:16px;margin:10px 0;border-radius:12px;background:#faf9f3}.reference-stop h3{font-size:17px;margin:8px 0}.reference-stop small{color:#7c785f}.reference-stop p{font-size:13px;line-height:1.8}
details.journal-stop{padding:0;overflow:hidden}details.journal-stop>summary.journal-stop-head{display:flex;align-items:center;padding:15px 16px;min-height:76px;color:var(--ink);gap:12px;font-size:inherit}details.journal-stop>summary.journal-stop-head:after{content:'＋';margin-left:auto;color:#879674}details.journal-stop[open]>summary.journal-stop-head:after{content:'−'}details.journal-stop>p,details.journal-stop>blockquote,details.journal-stop>details,details.journal-stop>.journal-favorite{margin-left:16px;margin-right:16px}details.journal-stop>.journal-stop-head h3{font-size:17px}details.journal-stop>details{padding-bottom:12px}.journal-stop-head .ui-icon{width:35px;height:35px;padding:7px;border-radius:11px;background:#eef3e6;flex-shrink:0}.journal-stop-head summary{padding:0}.journal-timeline{margin:16px 0}
#pane-ask,#pane-answer{max-width:760px}#requestHistory{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}#requestHistory h2{font-size:19px}#answerSearch{width:100%;font-size:16px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#f7f8f1;margin:10px 0 16px}.answer-list-card{display:block;text-align:left;width:100%;background:#fff;border:1px solid #dfe4d6;border-radius:15px;padding:17px;margin:0 0 10px;white-space:normal}.answer-list-card h3{font-size:17px;line-height:1.5;margin:7px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.answer-list-card p{font-size:13px;color:#6a7566;line-height:1.75;margin:0 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.answer-meta{font-size:11px;color:#7d8972}.answer-open{font-size:12px;color:#496c42}.request-overview{padding:16px 20px}.request-overview .request-snippet{-webkit-line-clamp:2;font-size:14px}
.reader-toolbar{display:flex;justify-content:space-between;position:sticky;top:0;background:#f7f7efed;backdrop-filter:blur(12px);padding:8px 0;z-index:4;border-bottom:1px solid #e1e4d8}.reader-toolbar button{font-size:13px;min-height:42px;padding:8px 14px}.answer-reader{padding:20px 6px}.answer-reader h1{font-size:25px;line-height:1.5;margin:12px 0 20px;overflow-wrap:anywhere}.reader-summary{font-size:16px;line-height:1.9;background:#eaf0dc;border-radius:15px;padding:19px;color:#355437}.answer-reader details{padding:12px 0;font-size:14px}.answer-reader details>summary{font-size:13px;color:#6e7f58}.rich-answer{font-size:16px;line-height:1.95;color:#354b45;overflow-wrap:anywhere}.rich-answer p{margin:16px 0;white-space:pre-line}.rich-answer h3{font-size:20px;line-height:1.6;margin:30px 0 12px;color:#214c40}.rich-answer ul{padding-left:23px;margin:15px 0}.rich-answer li{margin:10px 0}.rich-answer a{font-size:13px;color:#537b43;text-decoration:underline;text-underline-offset:3px}.rich-answer code{font-size:14px;background:#edf0e5;padding:2px 5px;border-radius:4px}.answer-table{overflow:auto;border:1px solid #dce2d4;border-radius:12px;margin:20px 0}.answer-table table{border-collapse:collapse;min-width:100%;font-size:13px;line-height:1.7}.answer-table th,.answer-table td{padding:12px;min-width:130px;vertical-align:top;border-bottom:1px solid #e4e8dc;text-align:left}.answer-table th{background:#eaf0df}.answer-comparisons{display:grid;gap:14px;margin:24px 0}.answer-comparison{border:1px solid #d6e0c6;border-radius:17px;padding:20px;background:#fff}.answer-comparison h3{font-size:20px;margin:0 0 12px}.answer-comparison p{font-size:14px;line-height:1.85;margin:9px 0}.answer-comparison .primary{margin-top:14px;width:100%}#answerFollowup{position:relative;margin-top:25px}#answerFollowup textarea{font-size:16px}#answerFollowupStatus{font-size:13px}#answerFollowupStatus:empty{display:none}
@media(max-width:600px){.trip-overview{grid-template-columns:1fr;gap:10px}.trip-day-card{padding:17px}.trip-day-card h2{font-size:18px}.journal-dates{gap:6px}.journal-dates button{padding:9px 12px}.answer-reader{padding:14px 2px}.answer-reader h1{font-size:23px}.reader-summary{font-size:15px;padding:16px}.rich-answer{font-size:16px;line-height:1.95}.rich-answer h3{font-size:19px}.answer-comparison{padding:17px}}

#preparationForm{display:grid;gap:9px}#preparationForm label{font-size:14px;margin-top:9px}#preparationForm input,#preparationForm select,#preparationForm textarea{min-width:0;width:100%;font-size:16px}#preparationPreview{line-height:1.85}#preparationPreview h3{font-size:19px}#preparationStatus{font-size:13px}#preparationPreview:empty,#preparationStatus:empty{display:none}

.prepare-activity-open{width:100%;display:flex;justify-content:space-between;align-items:center;margin:0 0 18px;padding:17px 20px;background:#e9efde;border:1px solid #c0d09d;color:#355d43;min-height:54px;text-align:left}.prepare-activity-open .ui-icon{width:19px;height:19px}
