@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Oswald:wght@400;500;600;700&display=swap');
:root{--bg:#101713;--panel:#17211b;--panel2:#1b2820;--ink:#f5f3e9;--muted:#a1aa9d;--line:#354039;--orange:#f0a14a;--green:#b5caa9;--rust:#df8560;--map:#dedccf;--font-head:'Oswald',Impact,'Arial Narrow',sans-serif;--font:'DM Sans',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.topbar{height:76px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.mark{display:flex;align-items:center;gap:15px;font-family:var(--font-head);font-size:19px;letter-spacing:.12em;line-height:1.04}.brand-sigil{border:2px solid var(--orange);color:var(--orange);width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:26px}.brand-sub{font-size:10px;letter-spacing:.36em;font-family:var(--font);display:block;color:var(--muted);margin-top:4px}.top-right{display:flex;gap:22px;align-items:center}.tagline{color:#879589;font-size:10px;letter-spacing:.22em;font-weight:800}.admin-link{opacity:.5;font-size:20px}.admin-link:hover{opacity:1}.hero{padding:47px 4.5% 40px;background:radial-gradient(ellipse at 100% 0%,#27382b 0%,transparent 40%)}.hero-kicker,.eyebrow{font-weight:800;letter-spacing:.25em;font-size:10px;color:var(--orange)}.orange-dot{display:inline-block;background:var(--orange);border-radius:50%;height:7px;width:7px;vertical-align:middle;margin-right:8px}.separator{padding:0 13px;color:#6c8071}.hero-layout{display:flex;align-items:end;justify-content:space-between;gap:25px}.hero h1{font-family:var(--font-head);font-size:clamp(58px,8.5vw,123px);line-height:.98;letter-spacing:-.015em;margin:15px 0 16px;font-weight:600}.hero h1 em{font-style:normal;color:var(--orange)}.hero-body{color:#b9c6b8;max-width:540px;font-size:15px;line-height:1.6;margin:0}.hero-right{text-align:right;flex-shrink:0;padding-bottom:12px}.number100{font-family:var(--font-head);font-weight:600;font-size:clamp(55px,8vw,110px);line-height:.8;color:#435a48}.number100 span{font-size:17px;margin-left:5px;color:#729079}.hero-right p{font-family:var(--font-head);letter-spacing:.18em;font-size:13px;color:#c8d7ca}.hero-right p span{color:var(--orange)}.metric-strip{display:flex;align-items:stretch;padding:0 4.5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:112px}.metric{display:flex;flex-wrap:wrap;gap:5px;align-content:center;padding:17px 27px 16px 0;margin-right:26px;min-width:130px;border-right:1px solid var(--line)}.metric>span{width:100%;letter-spacing:.15em;color:#a1b09f;font-size:10px;font-weight:800}.metric strong{font-family:var(--font-head);font-weight:500;font-size:40px;line-height:1.1}.metric small{font-size:10px;letter-spacing:.16em;align-self:end;padding-bottom:6px;color:#97a598}.status-area{margin-left:auto;display:flex;flex-direction:column;align-items:end;justify-content:center;gap:10px}.status-pill{border:1px solid #54664e;border-radius:100px;padding:8px 12px;color:#c7dbc0;letter-spacing:.13em;font-size:10px;font-weight:800;white-space:nowrap}.status-pill i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#b9ceae;margin-right:6px}.status-area>span:last-child{color:#94a091;font-size:11px;text-align:right}.main-grid{display:grid;grid-template-columns:minmax(0,1.57fr) minmax(300px,.82fr);min-height:650px}.track-panel{padding:36px 24px 40px 4.5vw;min-width:0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:20px}.section-heading h2,.story-panel h2{font-family:var(--font-head);font-weight:500;line-height:1.12;font-size:37px;margin:6px 0 0;letter-spacing:.01em}.section-heading h2 span{color:var(--orange)}.day-buttons{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.day{padding:9px 11px;border:1px solid #465145;background:transparent;color:#a0b19f;font-family:var(--font);font-weight:800;font-size:9px;letter-spacing:.1em;white-space:nowrap}.day:hover,.day.active{background:var(--orange);border-color:var(--orange);color:#142017}.map-frame{height:clamp(390px,41vw,560px);position:relative;overflow:hidden;background:#c7c4ad;border:1px solid #3d443d}#map{width:100%;height:100%;z-index:1}.map-legend,.map-watermark{position:absolute;z-index:500;background:#142017eb;border:1px solid #3f5044;color:#e7eee2}.map-legend{left:14px;bottom:14px;display:flex;flex-wrap:wrap;gap:14px;padding:12px 14px;font-weight:800;letter-spacing:.12em;font-size:9px}.legend-line{width:20px;height:0;border-top:3px solid var(--orange);display:inline-block;vertical-align:middle;margin-right:6px}.legend-line.plan{border-top-color:#aeb3a7;border-top-style:dashed}.legend-point{display:inline-block;height:8px;width:8px;background:var(--orange);border-radius:50%;margin-right:6px}.map-watermark{right:15px;top:15px;padding:10px 12px;font-family:var(--font-head);font-size:12px;letter-spacing:.14em}.map-watermark span{color:var(--orange)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#1c2821;color:var(--ink)}.leaflet-container{font-family:var(--font)}.leaflet-popup-content{max-width:240px!important}.leaflet-popup-content strong{font-family:var(--font-head);font-size:18px}.leaflet-popup-content p{margin:7px 0}.leaflet-popup-content a{color:var(--orange)}.track-bottom{border:1px solid var(--line);border-top:0;padding:23px 25px 18px;background:#18221c}.replay-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.replay-head h3{margin:6px 0;font-family:var(--font-head);font-size:22px;font-weight:500}.play-btn{border:1px solid #6e8b70;background:#24372a;color:#e8f3e2;padding:12px 20px;font-family:var(--font);letter-spacing:.15em;font-size:10px;font-weight:800;white-space:nowrap}.play-btn span{color:var(--orange);margin-right:6px}.play-btn:disabled{opacity:.4;cursor:not-allowed}.elevation-frame{height:134px;padding-top:10px}#elevation{width:100%;height:103px;display:block}.profile-stats{display:flex;justify-content:space-between;color:#acb7ac;font-weight:800;letter-spacing:.12em;font-size:9px}#scrub{margin:14px 0 0;width:100%;accent-color:var(--orange);cursor:pointer}.story-panel{border-left:1px solid var(--line);padding:36px 4.5vw 22px 26px;min-width:0}.story-panel h2{font-size:43px}.story-panel h2 em{color:var(--orange);font-style:normal}.side-top>p{color:#a2b3a3;line-height:1.65;max-width:460px;font-size:13px;margin:17px 0 25px}.feed-filter{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px;gap:10px}.feed-filter span{font-size:10px;color:#8fa28f;font-weight:800;letter-spacing:.12em}.feed-filter button{font-size:10px;white-space:nowrap;border:0;color:var(--orange);background:transparent;letter-spacing:.1em;font-weight:800}.feed{display:grid;gap:12px;padding:18px 0}.empty-feed{border:1px dashed #526150;padding:45px 20px;text-align:center;background:#18241c}.empty-glyph{font-family:var(--font-head);font-size:70px;line-height:1;color:var(--orange)}.empty-feed h3{font-family:var(--font-head);font-size:22px;font-weight:500}.empty-feed p{color:#a1b2a3;line-height:1.6}.story-card{background:#1b2820;border:1px solid #3a493e;overflow:hidden;transition:border-color .2s}.story-card:hover{border-color:var(--orange)}.story-card button{width:100%;text-align:left;background:transparent;border:0;color:inherit;padding:0}.story-preview{display:block;width:100%;max-height:225px;object-fit:cover;background:#2b3930}.story-copy{padding:16px}.story-meta{display:flex;gap:10px;align-items:center;margin-bottom:7px;color:var(--orange);font-size:10px;letter-spacing:.1em;font-weight:800}.story-copy h3{font-family:var(--font-head);font-size:22px;line-height:1.2;margin:0 0 8px;font-weight:500}.story-copy p{font-size:12px;color:#b5c5b5;line-height:1.6;margin:0 0 13px}.story-copy .location{color:#9ea99c;font-size:10px;font-weight:800;letter-spacing:.08em}.story-copy .location.unknown{color:#d1b18b}.side-footer{display:flex;flex-direction:column;gap:6px;color:#57735c;font-family:var(--font-head);letter-spacing:.05em;font-size:21px;margin-top:32px}footer{padding:22px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#0c120e;border-top:1px solid var(--line);font-size:10px;letter-spacing:.15em;color:#859687;font-weight:800}footer b{color:var(--orange)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);padding:12px 18px;z-index:2000;background:#2a3d2d;border:1px solid var(--orange);box-shadow:0 5px 30px #0008;opacity:0;pointer-events:none;transition:.2s;color:white;max-width:min(460px,90vw)}.toast.show{opacity:1;transform:translate(-50%,0)}.visually-hidden{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
/* administration */.admin-page{min-height:100vh;background:#101713}.admin-wrap{max-width:1150px;margin:0 auto;padding:42px 24px 95px}.admin-wrap h1{font-family:var(--font-head);font-size:54px;line-height:1.1;margin:10px 0 15px}.admin-wrap h1 em{color:var(--orange);font-style:normal}.admin-intro{color:#a4b3a6;line-height:1.6;max-width:700px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}.admin-card{background:#1b2720;border:1px solid #455246;padding:24px}.admin-card.full{grid-column:1/-1}.admin-card h2{font-family:var(--font-head);font-weight:500;font-size:26px;margin:4px 0 8px}.admin-card p{color:#aebbaa;font-size:13px;line-height:1.65}.admin-card label{display:block;color:#c8d2c5;font-size:11px;font-weight:800;letter-spacing:.09em;margin:14px 0 7px}.admin-card input,.admin-card select,.admin-card textarea{width:100%;min-height:43px;background:#111a14;border:1px solid #566355;border-radius:0;color:white;padding:10px 12px}.admin-card textarea{min-height:90px;resize:vertical}.admin-card input[type=file]{padding:10px}.admin-btn{background:var(--orange);border:0;color:#142017;font-size:11px;font-weight:800;letter-spacing:.11em;padding:13px 17px;margin-top:15px}.admin-btn.secondary{border:1px solid #8eaa8c;background:transparent;color:white}.admin-btn:disabled{opacity:.5;cursor:wait}.admin-row{display:flex;gap:12px}.admin-row>*{flex:1}.admin-hint{font-size:12px;color:#a4bba4;line-height:1.7}.admin-note{border-left:3px solid var(--orange);background:#293428;padding:13px 16px;color:#d7dfd2;font-size:12px;line-height:1.65;margin:15px 0}.admin-status{font-size:12px;color:var(--orange);margin:12px 0}.admin-item{border-top:1px solid var(--line);padding:11px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#d4dfd0}.admin-item small{display:block;color:#a5b2a0;margin-top:3px}.admin-item button{background:transparent;color:var(--orange);border:1px solid #53634f;padding:7px 11px;font-size:10px}.login{max-width:420px;margin:55px auto}.hide{display:none!important}
@media(max-width:1150px){.main-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr)}.track-panel{padding-left:24px}.story-panel{padding-right:24px}.metric{margin-right:13px;padding-right:14px;min-width:108px}.hero h1{font-size:clamp(60px,8vw,105px)}}
@media(max-width:900px){.main-grid{grid-template-columns:1fr}.story-panel{border-left:none;border-top:1px solid var(--line);padding:33px 24px}.track-panel{padding:34px 24px}.story-panel h2{font-size:38px}.feed{grid-template-columns:repeat(2,minmax(0,1fr))}.empty-feed{grid-column:1/-1}.side-footer{display:none}.metric-strip{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.metric{flex:1;min-width:22%;border:0;margin-right:0}.status-area{width:100%;border-top:1px solid var(--line);padding:14px 0;flex-direction:row;justify-content:space-between;align-items:center}.admin-grid{grid-template-columns:1fr}}
@media(max-width:600px){.topbar{height:64px;padding:0 18px}.tagline{display:none}.hero{padding:35px 20px 32px}.hero h1{font-size:clamp(49px,13vw,76px);line-height:1.03}.hero-layout{display:block}.hero-right{display:none}.hero-body{font-size:13px}.metric-strip{padding:0 15px}.metric{padding:17px 5px;min-width:50%}.metric strong{font-size:35px}.status-area{gap:10px}.status-area>span:last-child{font-size:10px}.track-panel{padding:28px 12px}.section-heading{display:block;padding:0 8px}.section-heading h2{font-size:31px}.day-buttons{justify-content:flex-start;margin-top:18px}.day{padding:9px 11px}.map-frame{height:440px}.map-legend{left:8px;bottom:9px;padding:10px;font-size:8px;gap:8px}.map-watermark{right:8px;top:8px;padding:8px;font-size:10px}.track-bottom{padding:20px 14px}.replay-head h3{font-size:19px}.play-btn{padding:12px 14px}.story-panel{padding:26px 18px}.feed{grid-template-columns:1fr}footer{padding:24px 18px;flex-direction:column;align-items:flex-start}.admin-wrap{padding:24px 15px 65px}.admin-wrap h1{font-size:42px}.admin-grid{gap:14px}.admin-card{padding:18px}.admin-row{flex-direction:column;gap:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Final expedition refinements: responsive crew editing & route controls */
.status-context{font-size:9px;letter-spacing:1.5px;font-weight:850;color:#c6ba9c;white-space:nowrap}
.map-tools{position:absolute;top:16px;right:16px;z-index:450;display:flex;gap:7px}
.map-tools button{border:1px solid rgba(237,236,216,.28);background:rgba(14,26,18,.87);backdrop-filter:blur(12px);border-radius:7px;color:#f7eed8;padding:10px 14px;font:800 10px/1 system-ui,sans-serif;letter-spacing:1.3px;cursor:pointer}
.map-tools button:hover,.map-tools button:focus-visible{background:#e5ab63;color:#131c13}
.admin-item{gap:10px}.admin-item .edit-action{border-color:#e5ab63;color:#e5ab63}
.edit-dialog{max-width:min(560px,calc(100vw - 24px));width:100%;max-height:calc(100vh - 24px);overflow:auto;box-sizing:border-box;border:1px solid #465343;border-radius:16px;padding:27px;background:#1b251e;color:#f1efdf;box-shadow:0 25px 100px #0009}
.edit-dialog::backdrop{background:rgba(0,0,0,.77)}.edit-dialog h2{font-size:29px;margin:6px 0}.edit-dialog p{font-size:13px;line-height:1.55;color:#bdc5b6}
.edit-dialog label{display:block;margin:16px 0 6px;font-size:10px;font-weight:800;letter-spacing:1px;color:#c7d6b9}
.edit-dialog input,.edit-dialog select,.edit-dialog textarea{box-sizing:border-box;width:100%;background:#101914;color:#eaeedc;border:1px solid #3c5140;border-radius:7px;padding:12px;font:inherit}
.edit-dialog textarea{min-height:92px}.edit-dialog .admin-row{display:flex;gap:12px}.edit-dialog .admin-row>div{min-width:0;flex:1}
.edit-dialog button{flex:1;margin-top:18px}
.story-card:focus-within{outline:2px solid #e5ab63;outline-offset:2px}
@media(max-width:680px){.map-tools{top:10px;right:10px}.map-tools button{padding:9px 11px;font-size:9px}.status-context{font-size:8px}.edit-dialog{padding:19px}.edit-dialog .admin-row{gap:8px}}
.moment-cue{position:absolute;z-index:450;bottom:54px;left:17px;max-width:min(340px,calc(100% - 34px));background:rgba(15,24,19,.94);color:#f8f0d9;border:1px solid #dca564;border-radius:10px;padding:14px 17px;box-shadow:0 12px 36px #0006;backdrop-filter:blur(12px)}
.moment-cue[hidden]{display:none}.moment-cue-kicker{display:block;color:#e6ad68;font-size:9px;letter-spacing:1.6px;font-weight:850;margin-bottom:6px}
.moment-cue strong{display:block;font-size:16px;line-height:1.3;margin-bottom:10px}.moment-cue button{border:0;background:transparent;color:#f5b56c;font-size:11px;cursor:pointer;font-weight:800;padding:0}

/* White Rim 3D terrain — MapLibre GL + public elevation + NPS road centerlines */
.map-frame{background:#26352e;height:clamp(490px,51vw,720px)}
#map{position:absolute;inset:0;background:#304135}
.maplibregl-map{font-family:var(--font,sans-serif)}
.maplibregl-control-container .maplibregl-ctrl-group{background:#17241de8;border:1px solid #677969;border-radius:9px;box-shadow:0 6px 28px #0008;overflow:hidden}
.maplibregl-ctrl-group button{color:white;filter:invert(.85)}
.maplibregl-ctrl-group button:hover{background:#b5a386}
.maplibregl-ctrl-attrib{background:#101b14df!important;color:#e4e5d7!important;border-radius:5px}
.maplibregl-ctrl-attrib a{color:#ffd49b!important}
.maplibregl-popup-content{background:#14231b;color:#f5eee0;border:1px solid #e6ac62;border-radius:10px;min-width:180px;max-width:265px;padding:15px 17px;box-shadow:0 8px 32px #0009}
.maplibregl-popup-content p{margin:7px 0;line-height:1.35;color:#d6decf}
.maplibregl-popup-content small{color:#e6b77a}
.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#14231b}
.maplibregl-popup-close-button{color:white;font-size:21px}
.map-watermark{left:15px;right:auto;top:16px;pointer-events:none;z-index:12}
.map-tools{top:15px;right:15px;left:auto;z-index:15;max-width:calc(100% - 185px);flex-wrap:wrap;justify-content:flex-end}
.map-tools button{border:1px solid rgba(240,231,204,.4);background:#14231de8;min-height:35px;border-radius:7px}
.map-tools button[aria-pressed="true"]{border-color:#f0b36b;color:#ffca87}
.map-legend{z-index:12;pointer-events:none;bottom:22px}
.map-hint{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:12;pointer-events:none;white-space:nowrap;padding:7px 12px;color:#faf3df;background:#14251ad6;border-radius:6px;font-size:9px;font-weight:800;letter-spacing:1px;text-shadow:0 1px 2px #000}
.map-warning{position:absolute;z-index:20;left:50%;top:50%;transform:translate(-50%,-50%);width:min(410px,90%);background:#12231feF;color:#fce9cb;padding:18px;line-height:1.6;border:1px solid #f1b36d;border-radius:11px;text-align:center;box-shadow:0 5px 40px #0008}
.map-warning[hidden]{display:none}
.replay-position{width:22px;height:22px;border:4px solid #fff6db;box-sizing:border-box;border-radius:50%;background:#ff9e3b;box-shadow:0 0 0 7px #dc9c4890,0 0 28px 5px #000a;cursor:default}
.legend-line.reference{height:3px;width:25px;background:repeating-linear-gradient(to right,#f4eedb 0,#f4eedb 5px,transparent 5px,transparent 8px);border:0}
.maplibregl-canvas:focus-visible{outline:2px solid var(--orange);outline-offset:-2px}
@media(max-width:800px){.map-watermark{top:60px;left:10px}.map-tools{max-width:calc(100% - 20px);width:calc(100% - 20px);top:9px;right:10px}.map-tools button{padding:9px 10px}.map-hint{display:none}.map-frame{height:540px}.map-legend{bottom:8px;right:55px;max-width:calc(100% - 85px)}}
@media(max-width:430px){.map-tools button{font-size:8px;padding:8px 9px;min-height:32px;letter-spacing:.8px}.map-frame{height:480px}.map-watermark{top:56px}.map-legend{gap:6px;padding:7px;font-size:7px}}

/* White Rim course editor — desktop and touch */
.course-editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:15px 0}.course-editor-toolbar .admin-btn{margin:0;padding:12px 14px;min-height:44px;border-radius:6px;letter-spacing:.04em}
.course-editor-toolbar .course-mode.selected{background:#f0a14a;color:#142017;border:2px solid #f4e1bc}
.route-map{width:100%;height:clamp(440px,57vw,735px);background:#26382c;border:1px solid #526752;border-radius:10px;overflow:hidden;position:relative;touch-action:pan-x pan-y}
.route-editor-help{margin:12px 0;color:#d4dfcc;background:#283c30;padding:11px 15px;border-left:3px solid #f0a14a;line-height:1.6;font-size:12px}
.route-editor-details{display:flex;flex-wrap:wrap;gap:20px;padding:10px 0 14px;border-bottom:1px solid #53614b}
.route-editor-stat{display:flex;flex-direction:column;gap:5px}.route-editor-stat span,.route-editor-stat small{font-size:10px;letter-spacing:1px;color:#aebfaa;font-weight:800}.route-editor-stat strong{font:500 25px var(--font-head);color:#faeccc}
.editor-vertex{width:13px;height:13px;background:#fff7df;border:3px solid #193023;border-radius:50%;box-shadow:0 0 0 2px #efb45c;cursor:grab;touch-action:none}
.editor-vertex.active{width:18px;height:18px;background:#ffbd68;box-shadow:0 0 0 3px white}
.editor-camp{background:#132d22;border:2px solid #ffc171;color:#fff1d5;border-radius:7px;padding:7px 9px;font:bold 11px var(--font);white-space:nowrap;cursor:grab;box-shadow:0 4px 15px #0009;touch-action:none}
.editor-camp[data-kind=start]{background:#cfe2b9;color:#1b271c;border-color:#1a301e}
.route-map .maplibregl-control-container button{filter:none}
@media(max-width:600px){.route-map{height:500px}.course-editor-toolbar .admin-btn{flex:1 1 auto;font-size:10px;letter-spacing:0;padding:11px 9px}.route-editor-details{gap:12px}.route-editor-stat strong{font-size:20px}}

.course-accuracy{position:absolute;z-index:12;top:62px;left:16px;pointer-events:none;color:#ffeac5;background:#13251bdc;border-left:3px solid #edab5a;padding:7px 10px;font-size:9px;font-weight:800;letter-spacing:.09em;max-width:min(430px,calc(100% - 22px))}
@media(max-width:800px){.course-accuracy{top:103px;left:10px;max-width:calc(100% - 20px);font-size:8px}}
@media(max-width:500px){.course-accuracy{top:100px;letter-spacing:0}}

.public-camp{background:#183025ea;border:2px solid #ffd08b;color:#fff0d0;padding:6px 9px;border-radius:7px;box-shadow:0 5px 18px #0009;font-size:9px;font-weight:850;white-space:nowrap;pointer-events:auto}
@media(max-width:600px){.public-camp{font-size:8px;padding:5px 7px}}

/* Expedition v4.1 - separately editable day boundary markers and genuine timestamp journal */
.editor-day-boundary{background:#dff5e9;color:#14261d;border:2px solid #65bcb9;border-radius:7px;font:bold 11px var(--font);padding:8px 11px;box-shadow:0 4px 16px #000b;white-space:nowrap;cursor:grab;touch-action:none}
.editor-day-boundary[data-day="day1"]{background:#ffcb83;border-color:#a76829}
.expedition-timeline{margin-top:26px;padding-top:20px;border-top:1px solid #364d3b}.expedition-timeline h3{font-size:23px;font-family:var(--font-head);font-weight:500;margin:8px 0}.timeline-explain,.timeline-empty{font-size:12px;line-height:1.5;color:#aec2b0}.timeline-list{display:grid;gap:7px;max-height:285px;overflow:auto;margin:15px 0}.timeline-event{width:100%;display:grid;grid-template-columns:115px 1fr;text-align:left;gap:12px;background:#203025;border:1px solid #3d5343;color:#f3f3e9;border-radius:6px;padding:12px 10px}.timeline-event:hover,.timeline-event:focus-visible{border-color:#f0a14a;background:#2d4030}.timeline-event strong{font-size:11px;color:#f6bd7d;line-height:1.5}.timeline-event span{display:flex;flex-direction:column;gap:3px}.timeline-event small{color:#9ab2a0;font-weight:800;letter-spacing:.12em;font-size:9px}.timeline-event b{font-size:13px}.timeline-event em{font-style:normal;color:#b5c3b8;font-size:11px}@media(max-width:600px){.timeline-event{grid-template-columns:95px 1fr}.timeline-event strong{font-size:10px}}

/* Camp Chair Studios attribution and clear post-management controls (v4.2) */
.powered-by{display:flex;flex-direction:column;gap:2px;color:#acbda9;font-size:8px;letter-spacing:.14em;text-align:right;line-height:1.25;white-space:nowrap}
.powered-by strong{font-size:11px;color:#e8bc85;letter-spacing:.075em}
.powered-by:hover strong,.footer-studio:hover strong,.admin-footer a:hover strong{color:#fff1d2;text-decoration:underline;text-underline-offset:3px}
.footer-studio strong,.admin-footer strong{color:#f0b56d;letter-spacing:.08em}
.admin-footer{padding:23px 4.5%;display:flex;justify-content:space-between;gap:15px;background:#0c120e;border-top:1px solid var(--line);font-size:10px;letter-spacing:.10em;color:#9bab98;font-weight:700}
.admin-jump{display:inline-block;margin:17px 0 0 14px;color:#f1bc80;font-size:11px;letter-spacing:.08em;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.admin-item-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}
#published-posts{scroll-margin-top:28px}
#published-posts .admin-item>span{min-width:0;overflow-wrap:anywhere;line-height:1.4}
@media(max-width:680px){.top-right{gap:12px}.powered-by{font-size:7px;letter-spacing:.055em}.powered-by strong{font-size:9px;letter-spacing:0}.admin-item{align-items:flex-start;flex-direction:column}.admin-item-actions{width:100%}.admin-item-actions button{flex:1}.admin-jump{display:block;margin:15px 0 0}.admin-footer{flex-direction:column}}

/* v4.3 — Long-form expedition journal. Readable independently of the 3D map. */
.public-nav{display:flex;gap:15px;align-items:center;white-space:nowrap}
.public-nav a{font-size:10px;font-weight:800;letter-spacing:.09em;color:#ecbd7f;text-decoration:none}
.public-nav a:hover{text-decoration:underline;text-underline-offset:4px}
.expedition-about{display:flex;gap:35px;align-items:center;justify-content:space-between;padding:26px clamp(20px,5vw,78px);background:#1b261e;border-block:1px solid #35453a}
.expedition-about>div{min-width:230px;display:grid;gap:6px}
.expedition-about strong{font:500 21px/1.2 var(--font-head);color:#f3ddba}
.expedition-about p{max-width:765px;margin:0;font-size:12px;line-height:1.7;color:#ced3c8}
.story-excerpt{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;white-space:normal!important}
.story-read{display:block;margin-top:14px;color:#edb174;font-size:11px;font-weight:800;letter-spacing:.08em}
.story-card-actions{display:flex;gap:8px;justify-content:space-between;padding:0 15px 14px;flex-wrap:wrap}
.story-card-actions button{background:none;border:1px solid #52624d;color:#e7c392;border-radius:6px;padding:9px 11px;font-size:10px;font-weight:800;letter-spacing:.06em}
.story-card-actions button:hover,.story-card-actions button:focus-visible{background:#303d2e;color:#fff1cd}
.video-teaser{min-height:150px;background:linear-gradient(130deg,#293f35,#846146);color:#fce7c9;display:grid;place-items:center;font-size:13px;font-weight:850;letter-spacing:.12em}
.post-dialog{position:fixed;margin:auto;inset:15px;max-width:850px;width:calc(100% - 30px);max-height:calc(100dvh - 30px);border:1px solid #52634f;border-radius:15px;padding:0;background:#15221a;color:#f6f0e5;overflow:auto;box-shadow:0 25px 105px #000c}
.post-dialog::backdrop{background:rgba(5,10,7,.87);backdrop-filter:blur(6px)}
.post-dialog-inner{min-height:100%;display:flex;flex-direction:column}
.post-dialog-toolbar{position:sticky;top:0;z-index:10;padding:17px clamp(18px,4vw,45px);background:#102018f2;border-bottom:1px solid #4e5d4a;display:flex;align-items:center;justify-content:space-between;gap:15px}
.post-dialog-toolbar span{font-size:9px;font-weight:850;letter-spacing:.13em;color:#eab476}
.post-dialog-toolbar button{background:transparent;border:1px solid #68735a;border-radius:6px;color:#f3e5ce;font-weight:800;font-size:10px;padding:10px 13px}
.post-article{padding:clamp(24px,5vw,55px);width:100%}
.post-article-meta{font-size:11px;letter-spacing:.13em;font-weight:800;color:#f4b76b;margin-bottom:20px}
.post-article h2{font:500 clamp(39px,6vw,68px)/1.08 var(--font-head);margin:0 0 32px;text-wrap:balance;color:#fff0d6}
.post-article-body{font-size:clamp(15px,1.65vw,18px);line-height:1.9;color:#e2e7d9;overflow-wrap:anywhere}
.post-article-body p{white-space:pre-line;margin:0 0 1.4em}
.post-article-body h3{font:500 clamp(25px,3.4vw,33px)/1.24 var(--font-head);color:#eabc87;margin:1.7em 0 .6em;white-space:pre-wrap}
.post-gallery{display:grid;gap:22px;margin:25px 0 35px}
.post-gallery figure{margin:0;border-radius:9px;overflow:hidden;background:#101811;border:1px solid #38473b}
.post-gallery img,.post-gallery video{display:block;width:100%;max-height:72vh;object-fit:contain;background:#08100b}
.post-gallery figcaption{padding:10px 14px;font-size:12px;color:#d6c9ae}
.post-original a{display:inline-block;margin:10px 0 22px;font-size:11px;font-weight:850;color:#f3b572;text-decoration:underline;text-underline-offset:4px}
.post-dialog-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px;padding-top:20px;border-top:1px solid #455444}
.post-action{padding:13px 16px;border-radius:6px;border:1px solid #ba8b4c;background:#293e30;color:#ffe6b9;font-size:11px;font-weight:850;letter-spacing:.08em}
.post-action:hover{background:#c18b49;color:#102018}
.post-action[hidden]{display:none}
.post-brand{margin-top:auto;border-top:1px solid #334738;padding:17px 28px;text-align:center;color:#b3bda6;font-size:10px;letter-spacing:.08em}
.post-brand a{color:#e6bb85;font-weight:850}
.journal-create textarea#journal-body{min-height:280px;line-height:1.7}
.journal-action-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:15px}
.journal-action-row .admin-btn{margin:0;flex:1 1 145px}
.admin-checkbox{display:flex!important;align-items:center;gap:12px;font-size:12px!important;letter-spacing:normal!important;font-weight:500!important}
.admin-checkbox input{width:auto!important;accent-color:#dfab67}
.journal-create progress,.journal-edit-dialog progress{display:block;width:100%;height:13px;margin:12px 0;accent-color:#daa666}
.journal-create progress[hidden],.journal-edit-dialog progress[hidden]{display:none}
.journal-admin-row{padding:17px 0;border-bottom:1px solid #405243;display:flex;align-items:center;gap:14px;justify-content:space-between}
.journal-admin-row>div:first-child{min-width:0;overflow-wrap:anywhere}
.journal-admin-row strong{font-size:15px;color:#ffe9c8}
.journal-admin-row p{color:#eab77b;font-size:10px;font-weight:750;letter-spacing:.09em;margin:8px 0}
.journal-admin-row small{font-size:12px;line-height:1.5;color:#b4c1b3}
.journal-admin-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.journal-admin-actions .admin-btn{padding:10px 12px;min-height:38px;margin:0;font-size:10px}
.journal-edit-dialog{max-width:min(820px,calc(100vw - 22px));width:100%}
.journal-edit-dialog textarea#journal-edit-body{min-height:240px;line-height:1.7}
.journal-state{padding:11px 15px;border:1px solid #9d6c37;background:#342c1e;color:#ffe3b5;border-radius:6px;font-size:11px;font-weight:800;letter-spacing:.08em}
.journal-assets-section{margin:20px 0;border-top:1px solid #40513e;padding-top:15px}
.journal-assets-section h3{font-size:18px;color:#f7dcb4}
.journal-asset-row{display:flex;justify-content:space-between;align-items:center;gap:13px;padding:9px 0;border-bottom:1px solid #344637;overflow-wrap:anywhere;font-size:11px}
.journal-asset-tools{display:flex;gap:5px;flex-shrink:0}
.journal-asset-tools .admin-btn{margin:0;padding:9px;font-size:9px;min-height:36px;flex:initial}
.danger-action{border-color:#b46755!important;color:#f1ac9d!important}
.journal-preview-dialog{max-width:min(720px,calc(100vw - 25px))}
.journal-preview-dialog #journal-preview-content img,.journal-preview-dialog #journal-preview-content video{max-width:100%}
.journal-preview-dialog h2{font:500 33px/1.2 var(--font-head);color:#f5ddad}
.journal-preview-body{white-space:pre-wrap;line-height:1.8;font-size:15px;overflow-wrap:anywhere}
@media(max-width:900px){.public-nav{display:none}.expedition-about{display:block;padding:21px}.expedition-about p{margin-top:10px}}
@media(max-width:550px){.post-dialog{inset:7px;max-height:calc(100dvh - 14px);width:calc(100% - 14px)}.post-dialog-toolbar{padding:13px 15px}.post-dialog-toolbar span{font-size:8px}.post-article{padding:22px 18px}.post-article h2{font-size:42px}.post-article-body{font-size:15px}.journal-admin-row{display:block}.journal-admin-actions{margin-top:12px;justify-content:flex-start}.journal-asset-row{align-items:flex-start;flex-direction:column}.journal-asset-tools{width:100%}.journal-asset-tools .admin-btn{flex:1}.journal-edit-dialog .admin-row{flex-direction:column}}
