.app-nav{
  position:fixed;top:18px;left:330px;z-index:905;display:flex;gap:4px;
  padding:4px;border:1px solid var(--line);border-radius:11px;
  background:var(--panel);backdrop-filter:blur(14px);box-shadow:var(--shadow)
}
.app-nav button{
  border:0;border-radius:7px;padding:8px 13px;background:transparent;color:var(--muted);
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer
}
.app-nav button.active{background:var(--canopy-dim);color:var(--text)}
.story-create-action{border-color:rgba(95,174,99,.55)!important;color:var(--canopy)!important}

.story-shell{
  position:fixed;inset:84px 18px 18px;z-index:890;display:none;
  grid-template-columns:minmax(250px,320px) minmax(0,1fr);overflow:hidden;
  background:var(--panel-solid);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)
}
.story-mode .panel,.story-mode .coord-chip{display:none}
.story-mode .story-shell{display:grid}
.story-sidebar{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;background:var(--card)}
.story-sidebar-head{padding:18px;border-bottom:1px solid var(--line)}
.story-sidebar-head h2{font-family:var(--font-display);font-size:20px;letter-spacing:.02em}
.story-sidebar-head p{color:var(--muted);font-size:12px;line-height:1.5;margin:5px 0 13px}
.story-primary,.story-secondary{
  border:1px solid var(--line-strong);border-radius:8px;padding:9px 12px;cursor:pointer;
  font:500 11px var(--font-mono);letter-spacing:.04em
}
.story-primary{background:var(--action-green,#2F7D3B);border-color:var(--action-green,#2F7D3B);color:#fff}
.story-secondary{background:transparent;color:var(--text)}
.story-primary:disabled{opacity:.45;cursor:not-allowed}
.story-list{padding:10px;overflow:auto;display:grid;gap:8px}
.story-list-empty{padding:28px 12px;color:var(--muted);font-size:12px;text-align:center;line-height:1.6}
.story-list-card{border:1px solid var(--line);border-radius:10px;background:var(--card);overflow:hidden;cursor:pointer;text-align:left;color:var(--text)}
.story-list-card:hover,.story-list-card.active{border-color:rgba(95,174,99,.55)}
.story-list-card img{width:100%;height:104px;display:block;object-fit:cover;background:#050805}
.story-list-card-body{padding:11px}
.story-list-card h3{font-size:13px;margin-bottom:5px}
.story-list-card p{font-size:11px;color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.story-list-meta{display:flex;justify-content:space-between;gap:6px;margin-top:8px;font:9px var(--font-mono);text-transform:uppercase;color:var(--faint)}
.story-status{padding:3px 6px;border:1px solid var(--line-strong);border-radius:20px}
.story-status.published{color:var(--canopy);border-color:rgba(95,174,99,.4)}
.story-main{overflow:auto;min-width:0;background:var(--panel-solid)}
.story-empty{min-height:100%;display:grid;place-items:center;padding:32px}
.story-empty-inner{max-width:620px;text-align:center}
.story-empty .eyebrow{margin-bottom:10px}
.story-empty h2{font-family:var(--font-display);font-size:32px;margin-bottom:10px}
.story-empty p{color:var(--muted);line-height:1.65;font-size:14px}

.story-form-wrap{max-width:760px;margin:0 auto;padding:32px}
.story-form-wrap h2{font-family:var(--font-display);font-size:28px;margin:4px 0 8px}
.story-form-wrap>p{color:var(--muted);line-height:1.55;margin-bottom:22px}
.story-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.story-field{display:grid;gap:6px}
.story-field.full{grid-column:1/-1}
.story-field label{font:10px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.story-field input,.story-field textarea,.story-field select{
  width:100%;border:1px solid var(--line-strong);border-radius:8px;background:var(--field);color:var(--text);
  padding:10px 11px;font:13px var(--font-body);outline:none
}
.story-field textarea{min-height:92px;resize:vertical}
.story-form-actions{grid-column:1/-1;display:flex;gap:9px;align-items:center;margin-top:5px}
.story-form-message{font-size:12px;color:var(--muted)}
.story-form-message.error{color:var(--loss)}

.story-detail{max-width:1180px;margin:0 auto;padding:26px 30px 50px}
.story-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}
.story-detail-head h2{font-family:var(--font-display);font-size:30px;line-height:1.1;margin:4px 0 7px}
.story-detail-head p{max-width:760px;color:var(--muted);font-size:13px;line-height:1.6}
.story-detail-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.story-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:24px}
.story-fact{background:var(--card);border:1px solid var(--line);border-radius:9px;padding:10px}
.story-fact span{display:block;color:var(--faint);font:9px var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.story-fact b{font-size:12px;font-weight:600}
.story-section{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}
.story-section-title{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin-bottom:13px}
.story-section-title h3{font-family:var(--font-display);font-size:20px}
.story-section-title p{font-size:11.5px;color:var(--muted);max-width:620px;line-height:1.5}
.story-display-tools{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}
.story-view-tabs,.story-layer-tabs{display:flex;gap:5px;flex-wrap:wrap}
.story-view-tabs button,.story-layer-tabs button{border:1px solid var(--line);background:var(--card);color:var(--muted);padding:7px 10px;border-radius:7px;font:10px var(--font-mono);cursor:pointer}
.story-view-tabs button.active,.story-layer-tabs button.active{color:var(--text);border-color:var(--canopy);background:var(--canopy-dim)}
.story-view-tabs button:disabled{opacity:.45;cursor:not-allowed}
.story-player{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card);outline:none}
.story-player:focus-visible{box-shadow:0 0 0 2px var(--canopy)}
.story-player-viewport{position:relative;aspect-ratio:16/9;min-height:340px;background:#030503;overflow:hidden}
.story-player-slide{position:absolute;inset:0;margin:0;display:grid;place-items:center;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity .65s ease,transform .65s ease,visibility 0s linear .65s}
.story-player-slide.active{opacity:1;visibility:visible;transform:scale(1);transition-delay:0s}
.story-player-slide img,.story-compare-layer img{width:100%;height:100%;object-fit:contain;object-position:50% 50%;display:block}
.story-player-image{position:absolute;inset:0;box-sizing:border-box;width:100%!important;height:100%!important;max-width:100%;max-height:100%;object-fit:contain!important;object-position:50% 50%!important;transform:none!important;background:#030503}
.story-image-unavailable{opacity:0}
.story-image-error{position:absolute;z-index:1;inset:0;display:grid;place-content:center;justify-items:center;gap:12px;padding:28px;text-align:center;background:#030503;color:#aeb7af;font-size:13px;line-height:1.55}
.story-player-slide figcaption{z-index:2}
.story-list-card{position:relative}
.story-list-card>.story-image-error{inset:0 0 auto;height:104px;padding:12px;font-size:10px}
.evidence-card{position:relative}
.evidence-card>.story-image-error{inset:0 0 auto;min-height:160px;padding:16px;font-size:11px}
.story-player-slide figcaption{position:absolute;left:18px;bottom:16px;display:grid;gap:2px;padding:9px 12px;border-radius:8px;background:rgba(2,6,3,.76);color:#fff;backdrop-filter:blur(8px)}
.story-player-slide figcaption span{font:9px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.story-player-slide figcaption strong{font:700 22px var(--font-display)}
.story-player-missing{max-width:440px;padding:24px;text-align:center;color:#aeb7af;font-size:13px;line-height:1.6;display:grid;justify-items:center;gap:12px;z-index:2}
.story-player-missing .story-player-action{display:inline-block}
.story-player-topbar{position:absolute;z-index:3;top:12px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.story-player-topbar>span{padding:6px 9px;border-radius:6px;background:rgba(2,6,3,.76);color:#fff;font:10px var(--font-mono);letter-spacing:.07em;text-transform:uppercase}
.story-player-action{pointer-events:auto;border:1px solid rgba(255,255,255,.32);border-radius:7px;background:rgba(2,6,3,.76);color:#fff;padding:7px 10px;font:10px var(--font-mono);cursor:pointer}
.story-player-controls{display:grid;grid-template-columns:auto auto minmax(120px,1fr) auto;gap:8px;align-items:center;padding:12px 14px 7px}
.story-player-controls button{border:1px solid var(--line-strong);border-radius:7px;background:transparent;color:var(--text);padding:7px 11px;font:10px var(--font-mono);cursor:pointer}
.story-player-controls button:disabled{opacity:.42;cursor:not-allowed}
.story-player-controls output{min-width:40px;text-align:right;font:600 12px var(--font-mono);color:var(--text)}
.story-scrubber{display:flex;align-items:center}
.story-scrubber input{width:100%;accent-color:var(--canopy);cursor:grab}
.story-scrubber input:active{cursor:grabbing}
.story-player-years{display:flex;justify-content:space-between;padding:0 14px 9px;margin-left:144px;margin-right:38px}
.story-player-years button{border:0;background:transparent;color:var(--faint);font:9px var(--font-mono);cursor:pointer}
.story-player-years button.active{color:var(--canopy);font-weight:600}
.story-player-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;border-top:1px solid var(--line);background:var(--line)}
.story-player-metrics span{padding:11px 14px;background:var(--panel-solid);color:var(--muted);font:10px var(--font-mono)}
.story-player-metrics b{display:block;margin-top:4px;color:var(--text);font-size:13px}
.story-player-help{padding:9px 14px;color:var(--faint);font-size:10.5px;line-height:1.5}
.story-player:fullscreen{width:100vw;height:100vh;border:0;border-radius:0;background:#030503;display:grid;grid-template-rows:minmax(0,1fr) auto auto auto}
.story-player:fullscreen .story-player-viewport{aspect-ratio:auto;min-height:0}
.story-player:fullscreen .story-player-controls,.story-player:fullscreen .story-player-years,.story-player:fullscreen .story-player-metrics{background:#08100a}
.story-player:fullscreen .story-player-help{display:none}

.story-layer-legend{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);align-items:center;gap:18px;margin-top:10px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--card)}
.story-layer-legend.context{grid-template-columns:1fr}
.story-layer-legend b{display:block;margin-bottom:4px;font-size:11.5px}
.story-layer-legend>div>span{display:block;color:var(--muted);font-size:10.5px;line-height:1.5}
.story-legend-scale i{display:block;height:10px;border-radius:999px;border:1px solid rgba(0,0,0,.16)}
.story-legend-scale.ndvi i{background:linear-gradient(90deg,#8c2d04,#d94801,#fdbb84,#ffffcc,#c2e699,#78c679,#238443)}
.story-legend-scale.probability i{background:linear-gradient(90deg,#f1eee8,#d9c9a3,#a9c87c,#5fae63,#1e5631)}
.story-legend-scale>span{display:flex!important;justify-content:space-between!important;margin-top:4px;color:var(--faint)!important;font:9px var(--font-mono)!important}
.story-legend-scale em{font-style:normal}

.story-context-map{position:absolute;inset:0;background:#111}
.story-context-map .leaflet-control-container{font-family:var(--font-mono)}
.story-context-player:fullscreen .story-context-map{height:100%}

.story-compare{--compare-position:50%}
.story-compare-layer{position:absolute;inset:0;display:grid;place-items:center;margin:0;overflow:hidden}
.story-compare-layer img{width:100%;height:100%;display:block;object-fit:contain;object-position:50% 50%}
.story-compare-layer figcaption{position:absolute;bottom:16px;display:grid;gap:2px;padding:9px 12px;border-radius:8px;background:rgba(2,6,3,.78);color:#fff;z-index:3}
.story-compare-layer figcaption span{font:9px var(--font-mono);letter-spacing:.1em;color:rgba(255,255,255,.72)}
.story-compare-layer figcaption strong{font:700 22px var(--font-display)}
.story-compare-a{z-index:2;clip-path:inset(0 calc(100% - var(--compare-position)) 0 0)}
.story-compare-a figcaption{left:18px}
.story-compare-b{z-index:1}
.story-compare-b figcaption{right:18px}
.story-compare-divider{position:absolute;z-index:3;top:0;bottom:0;left:var(--compare-position);width:2px;transform:translateX(-1px);background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
.story-compare-divider i{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:34px;height:34px;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;background:rgba(2,6,3,.82);color:#fff;font:16px var(--font-mono);font-style:normal}
.story-compare-controls{display:grid;grid-template-columns:minmax(150px,auto) minmax(160px,1fr) minmax(150px,auto);gap:12px;align-items:end;padding:12px 14px}
.story-compare-controls label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;color:var(--faint);font:10px var(--font-mono)}
.story-compare-controls select{min-width:0;border:1px solid var(--line-strong);border-radius:7px;background:var(--panel-solid);color:var(--text);padding:7px;font:10px var(--font-mono)}
.story-compare-slider{display:block!important}
.story-compare-slider input{width:100%;accent-color:var(--canopy);cursor:ew-resize}
.story-compare-metrics{display:grid;grid-template-columns:1fr 1fr;gap:1px;border-top:1px solid var(--line);background:var(--line)}
.story-compare-metrics>div{padding-top:10px;background:var(--panel-solid)}
.story-compare-metrics>div>b{display:block;padding:0 14px 8px;font:10px var(--font-mono);color:var(--canopy)}
.story-compare-metrics .story-player-metrics{border-top:1px solid var(--line);grid-template-columns:1fr 1fr}
.story-compare:fullscreen{--compare-position:50%;grid-template-rows:minmax(0,1fr) auto auto}

.story-ndvi-card{margin-top:14px;border:1px solid var(--line);border-radius:11px;background:var(--card);padding:16px}
.story-ndvi-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.story-ndvi-head h4{font-family:var(--font-display);font-size:17px;margin-bottom:4px}
.story-ndvi-head p{color:var(--muted);font-size:11.5px;line-height:1.5;max-width:650px}
.story-ndvi-summary{display:flex;gap:18px;flex:none}
.story-ndvi-summary span{color:var(--faint);font:9px var(--font-mono);text-transform:uppercase;letter-spacing:.06em}
.story-ndvi-summary b{display:block;margin-top:4px;color:var(--text);font-size:13px}
.story-ndvi-summary b.gain{color:var(--canopy)}
.story-ndvi-summary b.loss{color:var(--loss)}
.story-ndvi-chart{width:100%;height:auto;min-height:210px;margin-top:8px;overflow:visible}
.story-ndvi-grid{stroke:var(--line);stroke-width:1}
.story-ndvi-baseline{stroke:var(--faint);stroke-width:1;stroke-dasharray:4 4}
.story-ndvi-area{fill:var(--canopy-dim)}
.story-ndvi-line{fill:none;stroke:var(--canopy);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.story-ndvi-point{fill:var(--panel-solid);stroke:var(--canopy);stroke-width:3;transition:r .18s ease,fill .18s ease}
.story-ndvi-point.active{r:8;fill:var(--gold);stroke:#fff}
.story-ndvi-axis{fill:var(--faint);font:9px var(--font-mono)}
.story-ndvi-value{fill:var(--text);font:10px var(--font-mono);font-weight:600}
.story-science-note{border-top:1px solid var(--line);padding-top:10px;color:var(--muted);font-size:10.5px;line-height:1.55}
.story-warning{margin-top:10px;padding:10px;border:1px solid rgba(228,196,82,.3);border-radius:8px;background:rgba(228,196,82,.07);font-size:11px;color:var(--muted);line-height:1.5}
.story-repair{display:block;margin-top:9px;padding:6px 9px!important;font-size:9px!important}

.story-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:20px}
.evidence-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.evidence-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--card)}
.evidence-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#050805;display:block}
.evidence-card-body{padding:10px}
.evidence-card-body b{font-size:12px;text-transform:capitalize}
.evidence-card-body p{font-size:11px;color:var(--muted);line-height:1.45;margin-top:4px}
.story-inline-form{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:14px;display:grid;gap:10px;height:max-content}
.story-inline-form h4{font-size:13px}
.story-inline-form .story-field input,.story-inline-form .story-field textarea,.story-inline-form .story-field select{font-size:12px;padding:8px 9px}
.story-inline-form .story-field textarea{min-height:64px}
.story-coords{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.story-upload-note{font-size:10.5px;line-height:1.45;color:var(--faint)}
.story-timeline{position:relative;margin-left:8px;padding-left:22px;border-left:1px solid var(--line-strong);display:grid;gap:14px}
.story-timeline-item{position:relative}
.story-timeline-item::before{content:"";position:absolute;left:-27px;top:4px;width:8px;height:8px;border-radius:50%;background:var(--canopy);border:2px solid var(--panel-solid)}
.story-timeline-item time{font:10px var(--font-mono);color:var(--faint)}
.story-timeline-item h4{font-size:13px;margin:3px 0}
.story-timeline-item p{font-size:11.5px;color:var(--muted);line-height:1.5}
.story-narrative{color:var(--muted);font-size:13px;line-height:1.7;white-space:pre-wrap}

@media(max-width:980px){
  .story-shell{grid-template-columns:240px minmax(0,1fr)}
  .story-facts{grid-template-columns:repeat(3,1fr)}
  .story-player-viewport{min-height:280px}
  .story-ndvi-head{display:block}
  .story-ndvi-summary{margin-top:12px}
  .story-two-col{grid-template-columns:1fr}
}
@media(max-width:719px){
  .app-nav{top:12px;left:auto;right:60px}
  .app-nav button{padding:7px 8px;font-size:9px}
  .story-shell{inset:68px 0 0;border-radius:14px 14px 0 0;grid-template-columns:1fr}
  .story-sidebar{display:none}
  .story-detail,.story-form-wrap{padding:20px 16px 36px}
  .story-detail-head{display:block}
  .story-detail-actions{justify-content:flex-start;margin-top:12px}
  .story-facts{grid-template-columns:1fr 1fr}
  .story-form{grid-template-columns:1fr}
  .story-field.full,.story-form-actions{grid-column:1}
  .story-player-viewport{min-height:220px;aspect-ratio:4/3}
  .story-player-controls{grid-template-columns:1fr 1fr auto}
  .story-scrubber{grid-column:1/-1;grid-row:2}
  .story-player-years{margin:0;padding-top:2px}
  .story-player-metrics{grid-template-columns:1fr 1fr}
  .story-layer-legend{grid-template-columns:1fr}
  .story-compare-controls{grid-template-columns:1fr 1fr}
  .story-compare-slider{grid-column:1/-1;grid-row:2}
  .story-compare-metrics{grid-template-columns:1fr}
  .story-ndvi-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .story-ndvi-chart{min-height:170px}
  .evidence-gallery{grid-template-columns:1fr}
}
