/* ROAM coastal palette: blue water, green land, coral and violet markers. */
:root{--bg:#101722;--panel:#182333;--panel2:#223248;--line:#35465b;--text:#edf3f6;--muted:#b0bdcc;--accent:#8edcf1;--accent-dark:#193c4c;--green:#a5d6a0;--coral:#ffb2ad;--violet:#c4baff}
[data-theme=light]{--bg:#f2f6f5;--panel:#fff;--panel2:#e6edf3;--line:#b8c8d2;--text:#172c3d;--muted:#4c6170;--accent:#165c78;--accent-dark:#d7eced;--green:#326f47;--coral:#9e3442;--violet:#655095}
body{background:var(--bg)}.brand{color:var(--text)}.button.primary{background:#9cdef0;color:#102c40;border-color:#9cdef0}.button.secondary{border-color:var(--line)}.site-header{border-color:var(--line)}
.site-header nav{gap:21px}.nav-more{position:relative;font-size:12px;color:var(--muted)}.nav-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:7px;list-style:none}.nav-more summary::-webkit-details-marker{display:none}.nav-more summary:after{content:'+';font-size:17px}.nav-more[open] summary:after{content:'−'}.more-links{position:absolute;right:0;top:calc(100% + 7px);width:220px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 16px 40px #0005;z-index:25}.site-header .more-links a{display:block;padding:13px 14px;font-size:12px}.more-links a:hover{background:var(--accent-dark);border-radius:5px}
.roam-hero{min-height:650px;border-color:#3f6176}.roam-hero .hero-copy{max-width:920px;padding-top:28px;padding-bottom:110px}.roam-hero h1{font-size:clamp(54px,7vw,92px);line-height:1.08;max-width:880px}.roam-hero h1 em{display:block;font-size:.65em;color:#a4e4ed;letter-spacing:-2px}.hero-shade{background:linear-gradient(90deg,#081a2de8,#0b213c66 70%,#0a1d302b),linear-gradient(0deg,#0b1729cc,transparent 55%)}
.entry-paths{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:680px;margin-top:28px}.entry-card{display:flex;flex-direction:column;align-items:start;padding:20px 22px;border-radius:10px;border:1px solid #579bc1;background:#102e4be8;color:#eff9ff;min-width:0;transition:transform .2s,border-color .2s}.entry-card>span{font-size:9px;letter-spacing:1.5px;color:#b6e8f7}.entry-card strong{font-size:23px;font-weight:500;margin-top:11px;letter-spacing:-.4px}.entry-card small{font-size:11px;line-height:1.7;margin-top:9px;color:#d3e5ef;max-width:250px}.entry-card b{font-size:11px;font-weight:500;border-bottom:1px solid #9addec;padding-bottom:3px;margin-top:17px}.creator-entry{background:#33283ee8;border-color:#c182a1}.creator-entry>span{color:#ffc3c4}.creator-entry b{border-color:#ffb2ad}.entry-card:hover{border-color:#d2f0ff;transform:translateY(-2px)}.hero-bottom{background:#0e2034d9;border-color:#47728a}.hero-bottom strong{color:#b2e4d2}
.home-product-story{padding-top:52px}.product-story{padding-block:28px 38px}.story-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:25px}.story-heading h2{font:400 clamp(29px,3.3vw,42px)/1.15 Georgia,serif;margin:12px 0}.story-heading p:not(.launch-kicker){font-size:12px;line-height:1.8;color:var(--muted);max-width:600px}.story-heading .button{flex-shrink:0}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.story-card{border:1px solid var(--line);border-top:3px solid #63c3e8;border-radius:9px;padding:25px;background:var(--panel);min-width:0}.story-card.shot-card{border-top-color:#95cd91}.story-card.graphic-card{border-top-color:#ed9aac}.story-number{font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:1.2px}.story-card h3{font-size:19px;line-height:1.35;font-weight:500;margin:17px 0}.story-card blockquote{margin:20px 0;color:var(--text);font:23px/1.45 Georgia,serif}.story-card p,.story-card li{font-size:12px;line-height:1.85;color:var(--muted)}.story-card ol{padding-left:19px;margin:20px 0}.story-card li+li{margin-top:18px}.story-card>small{display:block;color:var(--muted);font-size:10px;line-height:1.7;margin-top:20px}.sample-title-card{aspect-ratio:16/10;background:linear-gradient(135deg,#173c54,#17243c 60%,#573144);border:1px solid #739eb2;padding:22px;color:#f1e9dc;border-radius:5px}.sample-title-card span{font-size:8px;letter-spacing:2px;color:#b4e8ed}.sample-title-card strong{font-size:clamp(29px,3vw,42px);line-height:1.06;display:block;max-width:220px;margin:22px 0 15px;font-weight:600;letter-spacing:-1px}.sample-title-card i{display:block;width:46px;height:3px;background:#ffa8ad;margin-bottom:12px}.sample-title-card small{font-size:7px;letter-spacing:1px}.story-followup{display:flex;gap:25px;justify-content:space-between;align-items:center;padding:22px 0 0}.story-followup p{font-size:12px;line-height:1.85;color:var(--muted);max-width:780px}.story-followup strong{color:var(--text);font-weight:500}.story-followup a{font-size:12px;flex-shrink:0}.postcard{border-color:var(--line);background:var(--panel)}.postcard:nth-child(1){border-top:3px solid #71c7dd}.postcard:nth-child(2){border-top:3px solid #c3b5ed}.postcard:nth-child(3){border-top:3px solid #93cb8d}.angle-stamp{background:#1b3448;border-color:#69afc0;color:#b8e7ee}.sheet-front{background:linear-gradient(135deg,#213b50,#292b40);border-color:#879ac6}.sheet-front i{background:#ffb2ad}.sheet-back{background:#96c7b7}.order-panel{background:linear-gradient(145deg,var(--panel),var(--accent-dark));border-color:#527e92}.order-price{color:var(--accent)}
.map-frame{border-color:#47758b;background:#164366}.map-caption{background:#132d42ed;color:#e0edf6}.map-toolbar button{background:#163f5ce8;border-color:#94bfd0;color:#f5fbff}.map-pin{background:#233f58;color:white;border-color:white}.map-pin.cluster{width:42px;height:42px;border:2px solid #f5fafc;color:white;background:#32784f;font-size:12px;box-shadow:0 2px 10px #10263770}.map-pin.cluster[data-density=medium]{background:#5755a4;width:46px;height:46px}.map-pin.cluster[data-density=high]{background:#b83a4e;width:50px;height:50px}.map-pin.saved{border-color:#f8d785;color:#fff4cb}.map-pin.selected{outline:3px solid #ffed9d;outline-offset:2px}.map-legend{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding:0 0 14px;font-size:11px;color:var(--muted)}.map-legend>span{display:flex;gap:6px;align-items:center}.map-legend i{width:11px;height:11px;display:inline-block;border-radius:50%;border:1px solid #e8f2f9}.density-low{background:#32784f}.density-medium{background:#5755a4}.density-high{background:#b83a4e}.map-legend small{font-size:10px}.atlas-sidebar{border-top:3px solid #7dbecb}
.workflow-article{max-width:950px;margin-inline:auto}.workflow-article .commerce-heading{max-width:850px}.workflow-contents{display:flex;flex-wrap:wrap;gap:10px 22px;padding:20px 0;border-block:1px solid var(--line);font-size:12px;color:var(--accent)}.workflow-article>section{padding:36px 0;border-bottom:1px solid var(--line);scroll-margin-top:25px}.workflow-article h2{font-size:27px;line-height:1.3;font-weight:500;margin:13px 0 20px}.workflow-article p,.workflow-article li{color:var(--muted);font-size:14px;line-height:1.95;margin:12px 0}.workflow-article p a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.workflow-article ol,.workflow-article ul{padding-left:23px}.workflow-article blockquote,.evidence-example{background:var(--panel);border-left:3px solid #91cba8;padding:22px 28px;margin:24px 0;line-height:1.9;font-size:15px}.workflow-next{margin-top:15px}
@media(max-width:1000px){.story-grid{gap:12px}.story-card{padding:20px}.sample-title-card{padding:16px}.sample-title-card strong{font-size:29px}.story-followup{display:block}.story-followup a{display:inline-block;margin-top:14px}.site-header nav{gap:16px}.roam-hero .hero-copy{padding-bottom:120px}}
@media(max-width:760px){.story-grid{grid-template-columns:1fr}.story-heading{display:block}.story-heading .button{margin-top:18px}.story-card{padding:25px}.sample-title-card{max-width:350px;min-height:190px}.sample-title-card strong{font-size:40px}.entry-card{padding:18px}.entry-card strong{font-size:20px}.home-product-story{padding-top:15px}.workflow-article h2{font-size:25px}.workflow-article p,.workflow-article li{font-size:13px}}
@media(max-width:560px){.site-header nav{gap:16px;flex:1 1 100%;order:2;justify-content:flex-start}.site-header nav>a{font-size:11px}.nav-more{font-size:11px}.shell-actions{margin-left:auto}.more-links{right:-10px;width:210px}.roam-hero{min-height:0}.roam-hero .hero-copy{padding:28px 22px 30px}.roam-hero h1{font-size:56px;letter-spacing:-2px}.roam-hero h1 em{font-size:.6em;letter-spacing:-1px;line-height:1.16}.entry-paths{grid-template-columns:1fr;gap:12px;margin-top:24px}.entry-card{padding:17px 18px}.entry-card strong{font-size:22px;margin-top:7px}.entry-card small{max-width:none}.entry-card b{margin-top:12px}.hero-bottom{padding:19px 15px}.hero-bottom strong{font-size:22px}.hero-bottom a+a{padding-left:9px}.hero-bottom span{font-size:8px}.product-story{padding-block:24px}.story-card h3{font-size:20px}.workflow-article blockquote,.evidence-example{padding:18px}.map-legend{gap:10px;font-size:10px}.map-legend small{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.entry-card{transition:none}.entry-card:hover{transform:none}}
.site-header nav{align-items:center}.map-mobile-search{display:none}
@media(max-width:560px){.site-header{gap:12px;padding-block:16px}.site-header .brand{font-size:20px;letter-spacing:2px}.site-header .brand img{width:25px;height:25px}.shell-actions{gap:6px}.shell-actions button{font-size:10px;padding:8px 10px;min-height:40px}.site-header nav{gap:12px;justify-content:space-between}.site-header nav>a,.nav-more{font-size:10px}.roam-hero .hero-copy{padding-top:16px}.roam-hero h1{margin-top:12px;margin-bottom:18px;font-size:52px}.roam-hero .hero-copy>p:not(.launch-kicker){font-size:12px;line-height:1.8}.entry-paths{margin-top:20px}.entry-card{padding:14px 16px}.entry-card small{font-size:10px;margin-top:7px}.entry-card strong{font-size:21px}.entry-card>span{font-size:8px}.sample-title-card{width:100%;min-height:0;aspect-ratio:auto;padding:18px}.sample-title-card strong{font-size:32px;overflow-wrap:anywhere}.sample-title-card small{font-size:6px;letter-spacing:.5px}}
@media(max-width:850px){.atlas-layout>.map-section{order:-1}.map-mobile-search{display:inline-block;color:var(--accent);font-size:11px;text-decoration:underline;text-underline-offset:4px;margin-bottom:10px}.atlas-layout{display:flex;flex-direction:column}.map-section,.atlas-sidebar{width:100%}.map-frame{height:480px}.map-frame.expanded{height:calc(100dvh - 24px)}}
[data-theme=light] .button.primary{background:#185974;border-color:#185974;color:#fff}

.story-output{display:block;width:100%;height:auto;border:1px solid #5d7b85;border-radius:5px;margin-top:24px}

/* Comfortable navigation, stable header geometry, and readable light surfaces. */
.site-header .brand{min-height:44px}
.site-header nav>a{min-height:44px;min-width:24px;display:flex;align-items:center;padding-inline:4px}
.site-header .nav-more summary{min-height:44px;padding-inline:4px}
.shell-actions button{min-height:44px;min-width:44px}
.shell-actions button:disabled{cursor:default}
.search-dialog .search-result:focus-visible{outline-offset:-3px;background:var(--accent-dark)}
.more-links a:focus-visible{outline-offset:-3px;background:var(--accent-dark)}
.site-header :focus-visible{outline:3px solid var(--accent);outline-offset:2px}
[data-theme=light] .editor-form input,[data-theme=light] .editor-form textarea,[data-theme=light] .editor-form select,[data-theme=light] .graphic-options select{background:var(--panel);border-color:#718696;color:var(--text)}
[data-theme=light] .sample-body .hook{color:var(--text)}
[data-theme=light] .sample-nav button[aria-pressed=true]{background:var(--accent-dark);border-color:var(--accent);color:var(--text)}
[data-theme=light] .roam-hero .hero-copy>p,[data-theme=light] .roam-hero .hero-edition{color:#d3e5ef}
@media(max-width:560px){
 .site-header{gap:8px}
 .site-header nav{gap:4px;justify-content:space-between}
 .site-header nav>a,.site-header .nav-more{font-size:12px}
 .shell-actions button{font-size:12px;padding:9px 10px;min-height:44px}
 .more-links{right:0;max-width:calc(100vw - 40px)}
 .entry-card small,.roam-hero .hero-copy>p:not(.launch-kicker){font-size:14px;line-height:1.7}
 .hero-bottom span{font-size:10px;line-height:1.5}
 .map-toolbar button{width:44px;height:44px}
 .graphic-options select,.project-toolbar input,.project-toolbar select,.project-toolbar textarea,.local-tools textarea,.place-detail input,#import-projects{font-size:16px}
}

/* Release review: theme-safe surfaces and comfortable footer targets. */
.launch-footer a{display:inline-flex;align-items:center;min-height:32px}
[data-theme=light] .text-button{color:var(--accent)}
[data-theme=light] .source-card p{color:var(--muted)}
[data-theme=light] .source-card .source-summary{color:var(--text)}
[data-theme=light] .review-state{color:var(--accent);border-color:var(--accent)}
[data-theme=light] .source-card .stale-message{color:#775010!important}
[data-theme=light] .promise-bar,[data-theme=light] legend,[data-theme=light] .stage-control>label>span,[data-theme=light] .stage-control small,[data-theme=light] .plan-header .eyebrow,[data-theme=light] .plan-tip,[data-theme=light] .step-number,[data-theme=light] .how-grid p,[data-theme=light] .footer p,[data-theme=light] .footer>.text-button{color:var(--muted)}
[data-theme=light] legend span,[data-theme=light] .stage-control>label,[data-theme=light] .mood-options label>span,[data-theme=light] .plan-tip strong,[data-theme=light] .control-intro p{color:var(--text)}
[data-theme=light] .time-options input:checked+span,[data-theme=light] .mood-options input:checked+span{background:var(--accent-dark);border-color:var(--accent);color:var(--text)}
[data-theme=light] .pass-section,[data-theme=light] .price-card,[data-theme=light] .activity-card,[data-theme=light] .progress-stats>div,[data-theme=light] .saved-session-box,[data-theme=light] dialog{background:var(--panel);border-color:var(--line)}
[data-theme=light] .activity-card.done,[data-theme=light] .activity-card.done .activity-number{background:#e7f1ec;color:#25613a}
[data-theme=light] .activity-number,[data-theme=light] .activity-meta .tag,[data-theme=light] .activity-actions button,[data-theme=light] .bookmark-button,[data-theme=light] .bookmark-button[aria-pressed=true]{color:var(--accent)}
[data-theme=light] .bookmark-button[aria-pressed=true]{background:var(--accent-dark)}
[data-theme=light] .activity-content p,[data-theme=light] .activity-meta,[data-theme=light] .plan-footer,[data-theme=light] .pass-copy>p:not(.eyebrow),[data-theme=light] .price-card li,[data-theme=light] .price-card small,[data-theme=light] .saved-session-box p,[data-theme=light] .dialog-copy,[data-theme=light] .dialog-list,[data-theme=light] .journal>div>span{color:var(--muted)}
[data-theme=light] .journal textarea,[data-theme=light] .stage-control select{background:var(--panel);color:var(--text);border-color:#718696}
[data-theme=light] .hint-step,[data-theme=light] .hint-warning,[data-theme=light] .resume-note{background:var(--accent-dark);color:var(--text);border-color:var(--accent)}
[data-theme=light] .hint-step p,[data-theme=light] .hint-step small{color:var(--text)}
.dialog-copy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:560px){.stage-control select{font-size:16px}.bookmark-button{min-width:32px;min-height:44px}.activity-card{grid-template-columns:28px minmax(0,1fr) 32px}.footer a,.footer button{min-height:32px}}
[data-theme=light] .time-options label>span{color:var(--text)}
[data-theme=light] .steps p,[data-theme=light] .price span,[data-theme=light] .price-caption{color:var(--muted)}
/* Artwork remains a dark surface in either theme. */
.hero-content h1{color:#edf3f6}
.hero-content h1 em{color:#8edcf1}
[data-theme=light] .local-label,[data-theme=light] .plan-header .eyebrow{color:var(--muted)}
[data-theme=light] .mini-label,[data-theme=light] .section-aside{color:var(--muted)}
