/* MY VERSION 2.0 — editorial route journal */
:root{color-scheme:light;--ink:#172f3b;--muted:#687a80;--paper:#f2efe8;--surface:#faf8f2;--line:#d8d5cb;--green:#c8d7d2;--green-deep:#375e63;--coral:#f26038;--blue:#bfd0d1;--serif:'IBM Plex Sans',sans-serif;--body:'IBM Plex Sans',sans-serif;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{background:var(--paper)}
.app-shell{width:min(100%,1080px);padding:0 48px calc(104px + env(safe-area-inset-bottom));background:var(--paper)}
.topbar{height:82px;border-bottom:1px solid var(--line)}
.brand{gap:12px;font-size:11px;letter-spacing:.1em}.brand-mark{display:block;width:38px;height:38px;overflow:visible;border-radius:0;background:none}.brand-name{display:flex;align-items:baseline;gap:7px}.brand-name span{font-weight:600}.brand-name b{font:600 17px/1 'IBM Plex Mono',monospace;letter-spacing:-.07em;color:var(--coral)}
.avatar-button{width:38px;height:38px;border:1px solid var(--ink);border-radius:0;background:transparent;font:500 12px 'IBM Plex Mono',monospace}
.greeting{padding:39px 0 25px}.greeting-date{gap:9px;margin-bottom:11px;color:var(--green-deep);font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.1em}.date-dot{width:7px;height:7px;border-radius:0;background:var(--coral)}.greeting h1,.page-heading h1{font-weight:500;letter-spacing:-.055em}.greeting h1{font-size:clamp(37px,6vw,54px)}.subhead{max-width:510px;color:#5e6f74;font-size:15px;line-height:1.65}
.hero-card{min-height:380px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);box-shadow:none}.hero-art{inset:0 0 0 51%;background:#dce4df}.route-coordinate{position:absolute;top:18px;left:20px;right:20px;display:flex;justify-content:space-between;color:#51676d;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.09em}.route-map{position:absolute;inset:12% 5% 11%;width:90%;height:77%}.map-grid{fill:none;stroke:#bac8c4;stroke-width:1;stroke-dasharray:2 7}.map-line{fill:none;stroke:#172f3b;stroke-width:3;stroke-linecap:square;stroke-linejoin:miter}.map-node{fill:#dce4df;stroke:#172f3b;stroke-width:3}.map-node-end{fill:#f26038;stroke:#f26038}.map-label{fill:#496269;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.08em}.map-label-end{fill:#172f3b}.map-number{fill:#73868a;font:500 8px 'IBM Plex Mono',monospace;letter-spacing:.06em}.map-scale{position:absolute;right:20px;bottom:17px;color:#53696f;font:500 8px/1.6 'IBM Plex Mono',monospace;letter-spacing:.08em;text-align:right}
.hero-content{width:55%;padding:39px 34px 27px}.card-kicker{gap:9px;color:#49646a;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.08em}.kicker-mark{width:18px;height:18px;border:0;border-left:2px solid var(--coral);border-radius:0;color:var(--coral)}.hero-card h2{margin:40px 0 12px;color:var(--ink);font-size:clamp(34px,4vw,46px);font-weight:500;line-height:1.06;letter-spacing:-.055em}.hero-card h2 em{color:var(--green-deep);font-style:normal}.hero-card p{max-width:330px;color:#5e6f74;font-size:14px;line-height:1.6}
.primary-button,.secondary-button{min-height:48px;margin-top:21px;padding:0 16px;border:1px solid var(--ink);border-radius:2px;background:var(--ink);color:#f8f5ed;font-size:12px;font-weight:500;box-shadow:none}.button-arrow{color:#ff8061}.hero-foot{gap:11px;margin-top:17px;color:#607378;font:10px 'IBM Plex Mono',monospace}.foot-separator{width:1px;height:12px;border-radius:0;background:#aeb9b4}
.section-heading{margin:53px 0 17px;padding-bottom:13px;border-bottom:1px solid var(--ink)}.eyebrow{margin-bottom:9px;color:var(--green-deep);font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.12em}.section-heading h2{font-size:25px;font-weight:500;line-height:1.2;letter-spacing:-.04em}.section-index{color:#728388;font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.06em}
.principles-grid{grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--ink)}.principle-card{min-height:155px;padding:17px 19px;border:0;border-right:1px solid var(--ink);border-radius:0;background:transparent}.principle-card:last-child{border-right:0}.principle-index{color:var(--coral);font:500 10px 'IBM Plex Mono',monospace}.principle-card h3{margin:30px 0 8px;font-size:15px;font-weight:500;letter-spacing:-.02em}.principle-card p{max-width:230px;color:#64757a;font-size:12px;line-height:1.55}
.trust-line{gap:14px;margin:18px 1px;color:#52666c;font-size:11px;line-height:1.6}.trust-index{flex:0 0 auto;padding-right:13px;border-right:1px solid var(--coral);color:var(--coral);font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.1em}
.bottom-nav{width:min(100%,1080px);height:calc(70px + env(safe-area-inset-bottom));padding:7px 26px max(7px,env(safe-area-inset-bottom));border-top:1px solid var(--ink);background:rgba(242,239,232,.96);backdrop-filter:blur(12px)}.nav-item{color:#718187;font:10px 'IBM Plex Mono',monospace;gap:3px}.nav-item>span{font:18px/20px 'IBM Plex Sans',sans-serif}.nav-item.selected{color:var(--ink);font-weight:600}.nav-item.ai-nav>span{width:27px;height:27px;margin-top:-4px;border:1px solid var(--coral);border-radius:0;background:var(--coral);color:#fff;font-size:15px}
.interview-screen{height:calc(100dvh - 105px - env(safe-area-inset-top));padding-top:24px}.interview-heading h2{font-weight:500}.round-button,.text-button{border-radius:0}.round-button{border-color:var(--ink);background:transparent}.text-button{color:var(--green-deep);font:500 11px 'IBM Plex Mono',monospace}.interview-progress{padding:22px 0 5px}.progress-copy{color:var(--green-deep);font:500 10px 'IBM Plex Mono',monospace}.progress-track{height:2px;border-radius:0;background:#d5d8d1}.progress-track span{border-radius:0;background:var(--coral)}.chat{gap:14px}.bubble{padding:13px 15px;border-radius:2px;font-size:13px}.bubble.assistant{border:1px solid var(--line);border-radius:2px;background:var(--surface)}.bubble.user{border-radius:2px;background:#dce4df}.subtle-action{color:#607378;font:10px 'IBM Plex Mono',monospace}.subtle-action span{color:var(--coral)}.composer{gap:8px;padding:8px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);box-shadow:none}.composer textarea{font-size:13px}.voice-button,.send-button{border-radius:2px}.voice-button{background:#dce4df;color:var(--ink)}.send-button{background:var(--coral);color:#fff}.composer-hint{color:#76878a;font:9px 'IBM Plex Mono',monospace}
.page-screen,.navigator-screen{padding-top:41px}.page-heading{margin-bottom:25px}.page-heading h1{font-size:42px}.page-heading .subhead{font-size:14px}.empty-state,.route-card,.journal-card{padding:23px;border:1px solid var(--ink);border-radius:2px;background:var(--surface)}.empty-state h2,.route-card h2,.journal-card h2{font-size:22px;font-weight:500;letter-spacing:-.04em}.empty-state p,.route-card p,.journal-card p{color:#617378;font-size:13px}.route-label{color:var(--green-deep);font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.1em}.route-stat span{padding:7px 9px;border:1px solid #c7d0ca;border-radius:0;color:#52686e;font:10px 'IBM Plex Mono',monospace}.milestone-dot{border-radius:0;background:#dce4df;color:var(--ink)}.route-actions button,.modal-actions button,.task-actions button{border:1px solid var(--ink);border-radius:2px;background:transparent;color:var(--ink)}.route-actions .primary-button,.modal-actions .primary-button{background:var(--ink);color:#fff}.secondary-button{border-color:#879b99;background:transparent;color:var(--ink)}.quick-prompts button{border:1px solid #aebcb8;border-radius:0;background:transparent;color:#465e64;font:10px 'IBM Plex Mono',monospace}.journal-card{background:#dce4df}.journal-card .secondary-button{background:var(--surface)}.card-glyph{border:0;border-left:2px solid var(--coral);border-radius:0;color:var(--coral)}.journal-entry{padding:14px;border:1px solid var(--line);border-radius:2px;background:var(--surface)}.journal-entry time{font:9px 'IBM Plex Mono',monospace}.profile-menu{border:1px solid var(--ink);border-radius:2px;background:var(--surface)}.profile-menu button{border-bottom:1px solid var(--line)}.menu-icon{border-radius:0;background:#dce4df;color:var(--ink)}.profile-menu b{font-size:12px;font-weight:500}.profile-menu small{color:#6e7f82;font-size:10px}.privacy-copy{color:#687b7e;font-size:11px}
.task-preview,.task-row{border:1px solid var(--ink);border-radius:2px;background:var(--surface)}.task-check{border-color:var(--green-deep);border-radius:2px}.task-check.done{border-color:var(--green-deep);background:var(--green-deep)}.task-copy h3{font-size:13px;font-weight:500}.soft-button{border:1px solid var(--ink);border-radius:2px;color:var(--ink);font:11px 'IBM Plex Mono',monospace}
.toast{border-radius:2px;background:var(--ink)}.modal-backdrop{background:rgba(23,47,59,.42);backdrop-filter:blur(3px)}.modal{border:1px solid var(--ink);border-radius:2px;background:var(--paper);box-shadow:0 16px 45px rgba(23,47,59,.19)}.modal-close{border:1px solid var(--ink);border-radius:0;color:var(--ink)}.modal h2{font-size:25px;font-weight:500}.modal p{color:#5e7075}.review-section{border:1px solid var(--line);border-radius:2px;background:var(--surface)}.review-section h3{font-size:14px;font-weight:500}.review-item{border-color:var(--line)}.review-controls button{border-color:#9aaba7;border-radius:2px;background:var(--surface)}.review-controls button.chosen{border-color:var(--green-deep);border-radius:2px;background:#dce4df;color:var(--ink)}.form-label{color:var(--green-deep);font:500 10px 'IBM Plex Mono',monospace}.form-control{border-color:#aab8b4;border-radius:2px;background:var(--surface);font:13px var(--body)}.priority-option{border:1px solid var(--line);border-radius:2px;background:var(--surface)}.priority-option input{accent-color:var(--coral)}.modal-kicker{color:var(--green-deep);font:500 9px 'IBM Plex Mono',monospace}.status-pill{border-radius:0;background:#dce4df;color:var(--green-deep);font:500 9px 'IBM Plex Mono',monospace}.safety-note{border-radius:0;background:#f7e3dc;color:#754335}
.consent-details{border-color:var(--line);border-radius:2px;background:var(--surface)}.consent-details summary{font-weight:500}.consent-details summary:after{color:var(--coral)}.consent-details>div{color:#5e7075}.consent-checks input{accent-color:var(--coral)}
button,a,input,textarea,summary{outline-color:var(--coral)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
@media(min-width:720px){.app-shell{padding-left:48px;padding-right:48px}.bottom-nav{left:50%}.hero-content{padding-left:37px}.principle-card{min-height:164px;padding:19px}.principle-card h3{margin-top:30px;font-size:15px}.principle-card p{font-size:12px}}
@media(max-width:600px){.app-shell{padding-left:20px;padding-right:20px}.topbar{height:70px}.brand-mark{width:34px;height:34px}.greeting{padding:28px 0 21px}.greeting h1{font-size:39px}.subhead{font-size:13px}.hero-card{min-height:535px}.hero-art{inset:0 0 auto;height:220px}.route-coordinate{top:13px;left:15px;right:15px}.route-map{inset:9% 5% 9%;height:82%}.map-scale{right:14px;bottom:11px}.hero-content{width:100%;padding:241px 20px 20px}.hero-card h2{margin:20px 0 9px;font-size:35px}.hero-card p{font-size:13px}.hero-foot{flex-wrap:wrap;font-size:8px}.section-heading{margin-top:39px}.section-heading h2{font-size:22px}.principles-grid{grid-template-columns:1fr;border-width:1px}.principle-card{min-height:0;padding:13px 14px 14px;border-right:0;border-bottom:1px solid var(--ink)}.principle-card:last-child{border-bottom:0}.principle-card h3{margin:9px 0 4px;font-size:14px}.principle-card p{max-width:none;font-size:11px}.section-index{font-size:8px}.trust-line{font-size:10px}.bottom-nav{padding-left:7px;padding-right:7px}.nav-item{font-size:8px}.interview-screen{height:calc(100dvh - 82px - env(safe-area-inset-top))}.page-screen,.navigator-screen{padding-top:29px}.page-heading h1{font-size:36px}.navigator-screen{height:calc(100dvh - 135px)}.modal{padding:23px 18px max(22px,env(safe-area-inset-bottom))}}
@media(max-width:370px){.app-shell{padding-left:15px;padding-right:15px}.hero-card{min-height:550px}.hero-content{padding-left:16px;padding-right:16px}.hero-foot{gap:7px}.bottom-nav{padding-left:2px;padding-right:2px}}
.review-task-editor{padding:14px;margin:10px 0;border:1px solid var(--line);background:var(--surface)}.review-task-heading{display:flex;align-items:center;justify-content:space-between}.review-task-remove{padding:3px 0;border:0;background:none;color:#9a4b37;font:10px 'IBM Plex Mono',monospace}.review-task-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-task-meta label{min-width:0}.review-task-meta .form-label{display:block}.review-history-item{margin:9px 0;border:1px solid var(--ink);background:var(--surface)}.review-history-item>summary{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;cursor:pointer;list-style:none}.review-history-item>summary::-webkit-details-marker{display:none}.review-history-item>summary b,.review-history-item>summary small{display:block}.review-history-item>summary b{font-size:12px;font-weight:500}.review-history-item>summary small{margin-top:4px;color:var(--green-deep);font:9px 'IBM Plex Mono',monospace}.review-history-item>summary>span:last-child{color:var(--coral)}.review-history-body{padding:0 15px 14px}.review-history-body p{font-size:11px;line-height:1.55}.review-answers{border-top:1px solid var(--line);padding-top:10px}.review-answers>summary{color:var(--green-deep);font:10px 'IBM Plex Mono',monospace;cursor:pointer}.review-answers p{margin:8px 0;color:#617378;font-size:10px}.review-history-body .secondary-button{margin-top:5px}

.profile-portrait{padding:18px;margin:0 0 16px;border:1px solid var(--ink);background:var(--surface)}.profile-portrait h2{margin:8px 0 14px;font-size:20px;font-weight:500;line-height:1.35}.profile-portrait>p:not(.eyebrow){color:#617378;font-size:12px;line-height:1.55}.profile-portrait .eyebrow{margin:0;color:var(--green-deep);font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.1em}.profile-portrait .secondary-button{width:100%}

.profile-history{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.profile-history>summary{color:var(--green-deep);font:500 9px 'IBM Plex Mono',monospace;cursor:pointer}.profile-history article{padding:10px 0;border-bottom:1px solid var(--line)}.profile-history article small{color:#6e7f82;font:9px 'IBM Plex Mono',monospace}.profile-history article p{margin:5px 0 0;color:#617378;font-size:11px;line-height:1.45}

.delete-review-button{margin-top:10px;padding:6px 0;border:0;background:transparent;color:#8e5146;font:500 9px 'IBM Plex Mono',monospace;cursor:pointer}.delete-review-button:hover{text-decoration:underline}
