:root{--ink:#172a3b;--muted:#586a78;--navy:#102637;--line:#dce4e8;--accent:#ccf36b;--blue:#167d9b;--surface:#f2f5f7;--radius:12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--surface)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button,input,select{border:1px solid var(--line);border-radius:7px}button{background:var(--panel);color:var(--ink);padding:9px 13px;font-size:.875rem;font-weight:650}button:hover:not(:disabled){background:var(--hover)}button:focus-visible,a:focus-visible{outline:3px solid #1a9ac6;outline-offset:3px}input,select{padding:10px;width:100%;color:var(--ink);background:var(--panel);min-width:0}input:focus,select:focus{outline:2px solid var(--blue);outline-offset:1px}.skip{position:absolute;left:12px;top:-80px;z-index:9999;background:var(--panel);padding:12px}.skip:focus{top:10px}header{height:84px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{font-size:40px;line-height:1;color:var(--accent)}.brand strong{font-size:1.125rem;letter-spacing:.12em;display:block}.brand div>span{display:block;font-size:.8125rem;color:#aebfca;margin-top:3px}.header-right{display:flex;align-items:center;gap:9px;font-size:.875rem;color:#c5d3dc}.local-dot{height:7px;width:7px;border-radius:50%;background:var(--accent)}.readonly{margin-left:15px;border:1px solid #415767;padding:6px 10px;border-radius:6px;font-size:.8125rem}main{display:grid;grid-template-columns:360px minmax(0,1fr);min-height:calc(100vh - 84px)}aside{background:var(--panel);border-right:1px solid var(--line);padding:28px 22px 12px;display:flex;flex-direction:column;min-width:0}.eyebrow{font-size:.75rem;font-weight:750;letter-spacing:.13em;color:var(--muted)}h1{font-size:1.7rem;letter-spacing:-.045em;line-height:1.2;margin:9px 0}p{line-height:1.55}.archive-heading p{font-size:.875rem;color:var(--muted);margin:10px 0 22px}.categories{display:grid;grid-template-columns:1.2fr 1.1fr 1.2fr .6fr;border-bottom:1px solid var(--line);margin-bottom:20px;gap:2px}.categories button{border:0;border-radius:0;padding:10px 1px;background:transparent;font-size:.875rem;border-bottom:3px solid transparent;color:var(--muted)}.categories button[aria-pressed=true]{border-color:var(--blue);color:var(--blue)}.categories span{font-size:.75rem;background:#edf2f4;padding:2px 4px;border-radius:4px}label{display:block;font-weight:600;font-size:.875rem;margin-bottom:6px}.date-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}#search{margin-bottom:12px}.filter-actions{display:flex;justify-content:space-between;align-items:center}.apply{background:var(--navy);color:white;border-color:var(--navy)}.apply:hover:not(:disabled){background:#23475f}.text-button{border:0;color:var(--muted)}.list-heading{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);padding:24px 0 10px}.list-heading span:first-child{font-weight:650;color:var(--ink)}.log-list{max-height:560px;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:7px;margin:0 -4px;padding:4px}.record{padding:15px 12px;text-align:left;border-color:transparent;border-left:3px solid transparent;border-radius:8px;flex-shrink:0;font-weight:400;min-width:0}.record:hover{background:var(--hover)}.record[aria-pressed=true]{background:var(--selected);border-color:var(--selected-border);border-left-color:var(--blue)}.record-top,.record-middle{display:flex;justify-content:space-between;align-items:center;gap:5px}.record-top strong{font-size:1rem}.record-top time{font-size:.875rem;color:var(--muted);font-variant-numeric:tabular-nums}.record-middle{margin:6px 0 9px;font-size:.8125rem;color:var(--muted)}.record-status{font-size:.75rem;color:#197347}.record-status.review{color:#8b5c05}.record-status.non_flight{color:#63727e}.record-stats{font-size:.8125rem;color:var(--muted)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:4px;font-size:.8125rem}.pagination button{padding:7px 9px}.sidebar-note{font-size:.75rem;color:var(--muted);line-height:1.7;margin:20px 0 0}.workspace{min-width:0;padding:24px;display:flex;flex-direction:column;gap:20px}.map-panel{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel)}.map-toolbar{padding:15px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px}.map-toolbar strong{display:block;font-size:1rem;margin-top:4px}.map-actions{display:flex;gap:14px;align-items:center}.map-actions label{margin:0;font-weight:400;font-size:.8125rem;display:flex;align-items:center;gap:7px}.map-actions input{width:auto;accent-color:var(--blue)}#map{height:clamp(340px,43vh,590px);background-color:#e6eef0;background-image:linear-gradient(#c9d7df60 1px,transparent 1px),linear-gradient(90deg,#c9d7df60 1px,transparent 1px);background-size:32px 32px;z-index:0}.map-caption{padding:11px 18px;display:flex;justify-content:space-between;gap:12px;font-size:.75rem;color:var(--muted);line-height:1.5}.map-caption>span:first-child{display:flex;align-items:center;gap:7px;flex-shrink:0}.legend-track{width:20px;height:3px;background:var(--blue);display:inline-block}.legend-start{height:8px;width:8px;border-radius:50%;background:#40852f;margin-left:10px}.detail{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0;scroll-margin-top:16px}.detail:focus{outline:0}.detail-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}.detail h2{font-size:1.5rem;letter-spacing:-.035em;margin:7px 0}.detail-date{font-size:.875rem;color:var(--muted);margin:4px 0 0}.badge{font-size:.75rem;background:#eef5e8;color:#387526;padding:7px 10px;border-radius:6px;white-space:nowrap}.badge.review{background:#fff3d9;color:#865905}.badge.non_flight{background:#edf1f4;color:#596777}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:22px 0}.metric{padding:17px;background:var(--panel);min-width:0}.metric span{display:block;font-size:.8125rem;color:var(--muted)}.metric strong{display:block;font-size:1.55rem;letter-spacing:-.035em;margin:7px 0 3px;font-weight:650}.metric small{font-size:.75rem;color:var(--muted)}.scope-note{font-size:.8125rem;color:var(--muted);border-left:3px solid #d4e5ea;padding-left:12px;line-height:1.6}.detail-bottom{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px}.detail h3{font-size:.9375rem;margin:0 0 12px}.quality-list{padding-left:19px;margin:0;font-size:.875rem;color:var(--muted);line-height:1.6}.quality-list li{margin-bottom:7px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;font-size:.875rem}.facts dt{color:var(--muted)}.facts dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.file-info{border-top:1px solid var(--line);padding-top:15px;margin-top:24px;font-size:.75rem;color:var(--muted);overflow-wrap:anywhere}.file-info details{margin-top:10px}.file-info pre{white-space:pre-wrap;max-height:250px;overflow:auto;font-size:.75rem}.empty,.welcome{padding:24px 8px;color:var(--muted);line-height:1.6}.welcome h2{color:var(--ink)}.error{padding:12px;border:1px solid #e7baa9;border-radius:8px;background:#fff4ef;color:#8e3b23;font-size:.875rem;margin:16px 0 0}.error button{margin-top:8px}.error[hidden]{display:none}.leaflet-control-attribution{font-size:12px!important}.leaflet-container{font:inherit}.leaflet-tooltip{font-size:14px}.loading{opacity:.6}.segment-note{font-size:.8125rem;line-height:1.5;color:var(--muted)}
@media(min-width:1450px){main{grid-template-columns:385px minmax(0,1fr)}.workspace{padding:30px}.detail{padding:28px}.log-list{max-height:calc(100vh - 655px);min-height:310px}}
@media(max-width:1100px){main{grid-template-columns:315px minmax(0,1fr)}aside{padding:22px 16px}.workspace{padding:16px}.map-toolbar{align-items:start;padding:13px}.map-actions{flex-direction:column;align-items:end;gap:8px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-bottom{grid-template-columns:1fr}.map-caption{flex-direction:column;gap:3px}}
@media(max-width:760px){header{padding:0 18px;height:76px}.header-right{font-size:0}.readonly{font-size:.75rem;margin-left:0}.brand strong{font-size:.95rem}main{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid var(--line)}.archive-heading h1{font-size:1.5rem}.archive-heading p{margin-bottom:12px}.categories{margin-bottom:12px}#filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}#filters>label{grid-column:1/-1;margin:0}#aircraft,#search{grid-column:1/-1}.date-fields{grid-column:1/-1;margin:3px 0}.filter-actions{grid-column:1/-1}.log-list{max-height:260px}.sidebar-note{display:none}.list-heading{padding-top:16px}.workspace{padding:12px;gap:12px}#map{height:360px}.detail{padding:18px}.detail-heading{flex-direction:column}.map-toolbar strong{font-size:.875rem}.map-actions label{font-size:.75rem}.map-caption{padding:10px}.metrics{margin:16px 0}.metric strong{font-size:1.4rem}.record{padding:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Step 7: recorded-tick inspection and shared analysis scope. */
#metric-scope{width:auto;max-width:100%;font-size:.875rem;margin-top:6px}.explorer-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.stat-group{border:1px solid var(--line);border-radius:9px;padding:16px}.stat-group h3{color:var(--blue);font-size:1rem}.stat-group .facts{font-size:.8125rem;grid-template-columns:1.2fr 1fr}.explorer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px}.tick-toggle{display:flex;align-items:center;gap:9px;white-space:nowrap;margin:0}.tick-toggle input{width:auto;accent-color:var(--blue)}.tick-count{font-size:.8125rem;color:var(--muted)}.tick-navigation{display:flex;gap:10px;align-items:center;margin:16px 0}.tick-navigation input[type=range]{padding:0;accent-color:var(--blue)}.tick-navigation input[type=number]{width:100px;flex-shrink:0}.tick-inspector{border:1px solid #b8d8e2;border-radius:10px;background:var(--panel);padding:18px}.inspector-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.tick-values{grid-template-columns:1fr 1fr 1fr 1fr;margin:10px 0}.tick-values dd{text-align:left}.tick-inspector details{font-size:.875rem;margin-top:14px}.tick-inspector summary{cursor:pointer}.raw-readings{max-height:260px;overflow:auto;margin-top:14px}.raw-readings dd{overflow-wrap:anywhere}.overlap-label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.8125rem;margin-top:14px}.overlap-label select{width:auto;max-width:100%;font-size:.8125rem}.charts-heading{display:flex;justify-content:space-between;align-items:center;margin-top:28px}.charts-heading h3{margin:0}.chart-help{font-size:.8125rem;color:var(--muted);line-height:1.6}.chart-range{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:18px 0}.chart-range label{margin:0;font-size:.8125rem}.chart-range input{display:block;width:110px;margin-top:4px;font-size:.875rem}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.chart-panel{min-width:0;border:1px solid var(--line);border-radius:9px;padding:12px}.chart-controls{display:flex;align-items:end;gap:7px}.chart-controls label{min-width:0;flex:1;margin:0;font-size:.75rem}.chart-controls select{font-size:.8125rem;padding:8px 4px;margin-top:3px}.chart-controls button{padding:8px 10px}.chart-panel canvas{display:block;width:100%;height:240px;cursor:crosshair;touch-action:pan-y}.chart-panel canvas:focus-visible{outline:2px solid #167d9b}.chart-panel .chart-help{margin:0;min-height:40px}.explorer-quality{margin-top:26px;border-top:1px solid var(--line);padding-top:20px}.radio-summary{max-width:500px;margin-top:20px}.workspace .detail{min-width:0}.detail .facts dd{font-variant-numeric:tabular-nums}
@media(max-width:1200px){.chart-grid{grid-template-columns:1fr}.tick-values{grid-template-columns:1fr 1fr}.explorer-stats{grid-template-columns:1fr}.stat-group .facts{font-size:.875rem}.detail-heading{flex-wrap:wrap}}
@media(min-width:1700px){.explorer-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.chart-grid{grid-template-columns:1fr}.tick-navigation{gap:5px}.tick-navigation button{padding:9px}.tick-navigation input[type=number]{width:80px}.tick-inspector{padding:13px}.chart-controls select{font-size:.75rem}.chart-range input{width:90px}.chart-panel{padding:8px}.explorer-stats{gap:9px}.tick-count{line-height:1.5}}
.tick-popup{font-size:.875rem;line-height:1.5}.tick-popup .facts{font-size:.8125rem;margin:12px 0;gap:7px}.tick-popup select{font-size:.8125rem;margin-bottom:10px}.tick-popup p{margin:6px 0}.tick-popup button{display:block;width:100%}
/* Step 8: a flight logbook with focused, persistent views. */
[hidden]{display:none!important}
header{height:68px;padding:0 26px}.brand-icon{font-size:34px}.brand strong{font-size:1rem}.readonly{display:none}
main{grid-template-columns:300px minmax(0,1fr);min-height:calc(100vh - 68px)}
aside{padding:24px 18px;align-self:start;position:sticky;top:0;height:calc(100vh - 68px);overflow-y:auto}
.archive-heading h1{font-size:1.8rem;margin-top:5px}.archive-heading p{margin:8px 0 18px}
.other-toggle{display:flex;align-items:center;gap:9px;font-weight:400;color:var(--muted);margin-bottom:20px;line-height:1.5}.other-toggle input{width:auto;accent-color:var(--blue)}
.categories{grid-template-columns:1fr 1fr;gap:6px;border:0;padding:0 0 14px;margin:0}.categories button{border:1px solid var(--line);border-radius:6px;padding:8px;font-size:.875rem;text-align:left}.categories button[aria-pressed=true]{background:var(--selected)}
.archive-filters{margin:14px 0 6px}.archive-filters summary{font-size:.875rem;color:var(--muted);cursor:pointer;padding:7px 0}.archive-filters[open] summary{margin-bottom:10px}
.list-heading{font-size:.8125rem;padding-top:18px}.log-list{max-height:none;min-height:160px;flex:1}.record{padding:14px 10px}.record-status.confirmed_flight{display:none}.record-stats,.record-middle{font-size:.875rem}
.sidebar-note{margin-top:16px}.workspace{padding:24px;gap:0}.detail{border:0;background:transparent;padding:0!important}.detail-heading{align-items:center;margin:0 0 14px}.detail h2{font-size:1.85rem;line-height:1.2;margin:6px 0}.detail-date{font-size:.875rem}
.scope-control{font-size:.8125rem;color:var(--muted);margin:0;min-width:195px}.scope-control select{display:block;width:100%!important;font-weight:600;color:var(--ink)}.scope-note{margin:10px 0 20px;max-width:960px;font-size:.875rem}
.flight-tabs{display:flex;gap:6px;border-bottom:1px solid #c9d7de;margin-bottom:22px;overflow-x:auto}.flight-tabs button{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;white-space:nowrap;padding:13px 18px;font-size:.9375rem;color:var(--muted)}.flight-tabs button[aria-selected=true]{color:#116981;border-bottom-color:#167d9b;background:var(--selected)}.flight-panel{min-width:0;outline-offset:5px}
.overview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line);border-radius:10px;overflow:hidden;margin-bottom:20px}.overview-stat{background:var(--panel);padding:17px 20px;min-width:0}.overview-stat span{display:block;color:var(--muted);font-size:.875rem;line-height:1.4}.overview-stat strong{display:block;font-size:1.7rem;font-weight:650;letter-spacing:-.03em;margin-top:8px;font-variant-numeric:tabular-nums}
.overview-map #map{height:clamp(270px,33vh,430px)}.full-map #map{height:clamp(340px,52vh,760px)}.map-panel{border-radius:10px}.map-toolbar{padding:12px 16px}.map-toolbar .eyebrow{display:none}.map-toolbar strong{margin:0}.map-actions label{font-size:.875rem}.map-caption{font-size:.8125rem}.map-caption>span:first-child{flex-wrap:wrap}
.more-statistics{margin-top:20px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 20px}.more-statistics>summary{font-size:1rem;font-weight:650;cursor:pointer}.explorer-stats{margin:16px 0 0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.stat-group{padding:14px}.stat-group summary{font-size:.9375rem;font-weight:600;cursor:pointer}.stat-group .facts{margin-top:16px;font-size:.875rem;line-height:1.5}.stat-group .facts dd{overflow-wrap:anywhere}
.explorer-toolbar{padding:0 0 14px;border:0}.tick-count{font-size:.875rem}.point-controls{margin-top:16px}.tick-navigation{padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.tick-inspector{background:var(--panel)}.tick-values{grid-template-columns:1fr 1fr 1fr 1fr;row-gap:14px}.tick-inspector h3{font-size:1rem;margin:0}.tick-inspector .badge{white-space:normal}.tick-inspector details{border-top:1px solid var(--line);padding-top:14px}
.charts-heading{margin:0}.charts-heading h3{font-size:1.1rem}.chart-help{font-size:.875rem}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-panel{background:var(--panel);padding:16px}.chart-controls{align-items:end;flex-wrap:wrap}.chart-controls label{font-size:.875rem;flex-basis:100px}.chart-controls select{font-size:.875rem;padding:8px}.chart-panel canvas{height:260px}.chart-range label{font-size:.875rem}.chart-range input{width:120px}
.explorer-quality{margin:0;border:0;padding:22px;background:var(--panel);border-radius:10px}.quality-list{line-height:1.75}.file-info{font-size:.875rem}.radio-summary{font-size:.875rem;line-height:1.5}
@media(min-width:1600px){main{grid-template-columns:330px minmax(0,1fr)}.workspace{padding:30px 40px}.overview-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.overview-stat{padding:20px 16px}.overview-stat strong{font-size:1.6rem}}
@media(max-width:1100px){main{grid-template-columns:265px minmax(0,1fr)}.workspace{padding:20px 16px}.detail-heading{align-items:start}.scope-control{min-width:175px}.chart-grid{grid-template-columns:1fr}.tick-values{grid-template-columns:1fr 1fr}.overview-stat{padding:14px}.overview-stat strong{font-size:1.4rem}.explorer-stats{grid-template-columns:1fr}.flight-tabs button{padding:12px;font-size:.875rem}}
@media(max-width:760px){header{height:64px;padding:0 18px}main{grid-template-columns:1fr}aside{position:static;height:auto;padding:18px}.archive-heading h1{font-size:1.5rem}.other-toggle{margin:12px 0}.log-list{max-height:240px;min-height:0;flex:auto}#filters{display:block}.workspace{padding:20px 12px}.detail-heading{flex-direction:row;flex-wrap:wrap}.detail h2{font-size:1.6rem}.scope-control{min-width:0;width:100%}.scope-note{margin-bottom:12px}.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.flight-tabs{margin-bottom:16px}.flight-tabs button{padding:12px 10px}.overview-map #map{height:280px}.full-map #map{height:420px}.map-toolbar{flex-wrap:wrap}.map-actions{flex-direction:row;align-items:center;flex-wrap:wrap}.map-caption>span:first-child{flex-shrink:1}.chart-panel{padding:10px}.tick-count{line-height:1.6}.chart-controls label{flex-basis:100px}.more-statistics{padding:15px}.overview-stat strong{font-size:1.45rem}}
/* Personal display settings, a compact flight tray and flexible charts. */
.display-settings{position:relative;font-size:.875rem;color:white}.display-settings>summary{cursor:pointer;list-style:none;padding:8px 12px;border:1px solid #516879;border-radius:7px;font-weight:600}.display-settings>summary::-webkit-details-marker{display:none}.settings-panel{position:absolute;right:0;top:calc(100% + 12px);width:300px;max-width:calc(100vw - 32px);background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px;color:var(--ink);z-index:1500;box-shadow:0 12px 40px #10263730}.settings-panel h2{font-size:1.125rem;margin:0 0 18px}.settings-panel p{font-size:.875rem;color:var(--muted);margin:15px 0}.settings-check{display:flex;align-items:center;gap:9px;margin-top:16px}.settings-check input{width:auto;accent-color:var(--blue)}summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.menu-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px;font-size:.875rem}.menu-toolbar strong{color:var(--muted)}#minimize-menu{font-size:1.25rem;line-height:1;padding:6px 10px;min-width:36px;min-height:36px}.archive-content{display:flex;flex-direction:column;min-height:0;flex:1}.compact-flight{display:flex;flex-direction:column;gap:12px;line-height:1.5;overflow-wrap:anywhere}.compact-flight>strong{font-size:1rem}.compact-flight>span:not(.eyebrow){font-size:.875rem;color:var(--muted)}.compact-nav{display:flex;gap:7px}.compact-nav button{flex:1;padding:8px;min-height:36px}
body.menu-collapsed main{grid-template-columns:120px minmax(0,1fr)}body.menu-collapsed aside{padding:20px 12px}.menu-collapsed .menu-toolbar{flex-wrap:wrap}.menu-collapsed #error{overflow-wrap:anywhere}
body[data-menu-position=top] main{grid-template-columns:minmax(0,1fr)}body[data-menu-position=top] aside{height:auto;position:static;max-height:none;border-right:0;border-bottom:1px solid var(--line);padding:14px 24px}body[data-menu-position=top] .menu-toolbar{margin-bottom:8px}body[data-menu-position=top] .archive-content{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(230px,1fr) minmax(300px,2fr);gap:8px 24px;align-items:start}body[data-menu-position=top] .archive-heading{grid-column:1;grid-row:1}body[data-menu-position=top] .archive-heading h1{font-size:1.3rem;margin:4px 0}body[data-menu-position=top] .archive-heading p{margin:4px 0;font-size:.875rem}body[data-menu-position=top] .other-toggle{grid-column:1;grid-row:2;margin:0}body[data-menu-position=top] .categories{grid-column:1;grid-row:3;padding:0}body[data-menu-position=top] #filters{grid-column:2;grid-row:1 / span 3}body[data-menu-position=top] .list-heading{grid-column:3;grid-row:1;padding:0}body[data-menu-position=top] .log-list{grid-column:3;grid-row:2;flex-direction:row;overflow-x:auto;max-height:180px;min-height:0;margin:0;padding:4px}body[data-menu-position=top] .record{width:240px;min-width:220px}body[data-menu-position=top] .pagination{grid-column:3;grid-row:3;margin:0}body[data-menu-position=top] .sidebar-note{display:none}
body[data-menu-position=top].menu-collapsed aside{display:flex;flex-direction:row;align-items:center;gap:24px}body[data-menu-position=top].menu-collapsed .menu-toolbar{margin:0;flex-wrap:nowrap;flex-shrink:0}body[data-menu-position=top].menu-collapsed .compact-flight{flex-direction:row;align-items:center;gap:18px;flex:1}body[data-menu-position=top].menu-collapsed .compact-flight .eyebrow{display:none}body[data-menu-position=top].menu-collapsed .compact-nav{margin-left:auto}
.kpi-settings{margin:0 0 14px}.kpi-settings>summary{cursor:pointer;font-size:.875rem;font-weight:650;color:var(--blue);width:fit-content;margin-left:auto;padding:8px 10px;border:1px solid var(--line);background:var(--panel);border-radius:7px}.kpi-settings[open]{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.kpi-settings[open]>summary{margin-left:0;border:0;padding-left:0}.kpi-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:16px;margin-top:16px}.kpi-choices fieldset{border:1px solid var(--line);border-radius:8px;padding:14px;min-width:0}.kpi-choices legend{font-size:.9375rem;font-weight:650;padding:0 6px}.kpi-choice{display:flex;align-items:start;gap:8px;font-size:.875rem;font-weight:400;line-height:1.5;margin-bottom:10px}.kpi-choice input{width:auto;margin:4px 0 0;accent-color:var(--blue)}.overview-metrics{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))}
.chart-grid.single-chart{grid-template-columns:minmax(0,1fr)}.chart-panel.chart-wide{grid-column:1 / -1}.chart-sizing{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0}.chart-sizing>label{display:flex;align-items:center;gap:8px;font-size:.875rem;margin:0}.chart-sizing select{width:auto;font-size:.875rem;padding:8px}.chart-sizing button[aria-pressed=true]{background:var(--selected);border-color:var(--blue);color:#126c85}.chart-sizing button:last-child{margin-left:auto}.chart-panel .export-status{display:block;font-size:.875rem;color:var(--muted);margin-top:6px}.chart-panel canvas{max-width:100%}
@media(min-width:1600px){.overview-metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
@media(max-width:1000px){body[data-menu-position=top] .archive-content{grid-template-columns:minmax(180px,1fr) minmax(220px,2fr)}body[data-menu-position=top] #filters{grid-column:2;grid-row:1 / span 3}body[data-menu-position=top] .list-heading{grid-column:1 / -1;grid-row:4}body[data-menu-position=top] .log-list{grid-column:1 / -1;grid-row:5}body[data-menu-position=top] .pagination{grid-column:1 / -1;grid-row:6}body[data-menu-position=top].menu-collapsed .compact-flight{flex-wrap:wrap;gap:8px 16px}}
@media(max-width:760px){body.menu-collapsed main{grid-template-columns:minmax(0,1fr)}body.menu-collapsed aside{height:auto;display:flex;flex-direction:row;align-items:center;gap:14px;flex-wrap:wrap}body.menu-collapsed .menu-toolbar{margin:0;flex-shrink:0;flex-wrap:nowrap}body.menu-collapsed .compact-flight{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 12px;flex:1;min-width:160px}body.menu-collapsed .compact-flight .eyebrow{display:none}body.menu-collapsed .compact-nav{margin-left:auto}body[data-menu-position=top] aside{padding:14px}body[data-menu-position=top] .archive-content{display:flex;gap:12px}.display-settings{font-size:.875rem}.header-right{gap:6px}.display-settings>summary{padding:8px}.overview-metrics{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))}.chart-sizing{gap:8px}.chart-sizing button:last-child{margin-left:0}.chart-sizing select{max-width:145px}}

@media(min-width:761px){body[data-menu-position=left].menu-collapsed .menu-toolbar>strong{display:none}}

.brand{color:inherit;text-decoration:none}.brand:hover{opacity:.9}#map-background{min-width:155px;font-variant-numeric:tabular-nums}
/* Stable controls, adjustable picker space, aligned KPIs and a useful map frame. */
.kpi-settings,.kpi-settings[open]{position:relative;margin:0 0 14px;padding:0;border:0;background:transparent;border-radius:0}
.kpi-settings>summary,.kpi-settings[open]>summary{margin:0 0 0 auto;padding:8px 10px;border:1px solid var(--line);background:var(--panel);border-radius:7px;width:fit-content;min-height:38px}
.kpi-settings[open]>*:not(summary){background:var(--panel)}.kpi-settings>p,.kpi-settings>h3{padding:12px 16px;margin:0}.kpi-settings>.kpi-choices{padding:8px 16px;margin:0}.kpi-settings>button{margin:12px 0}.kpi-order{margin:0;padding:8px 16px;list-style:none;display:grid;gap:6px;max-width:680px}.kpi-order li{display:grid;grid-template-columns:minmax(0,1fr) 38px 38px;align-items:center;gap:5px;font-size:.875rem}.kpi-order button{padding:5px;min-height:34px}
.overview-stat{display:grid;grid-template-rows:minmax(4.2em,1fr) auto;align-items:start;gap:10px;text-align:left}.overview-stat>span{line-height:1.4;overflow-wrap:anywhere}.overview-stat>strong{align-self:end;margin:0;line-height:1.2;white-space:normal;overflow-wrap:anywhere}.overview-metrics{align-items:stretch}
.stat-group h3{font-size:.9375rem;margin:0;color:var(--ink)}
.menu-toolbar{display:grid;grid-template-columns:1fr 44px;align-items:center;gap:8px;margin-bottom:12px;flex-shrink:0}.menu-toolbar>strong{grid-column:1;grid-row:1}#minimize-menu{grid-column:2;grid-row:1;width:44px;height:44px;padding:8px;margin:0}.menu-toolbar>.compact-nav{grid-column:1 / -1;grid-row:2;display:flex;gap:0;justify-self:start;overflow:hidden;border:1px solid var(--line);border-radius:8px}.compact-nav button{width:48px;height:44px;min-height:44px;border:0;border-radius:0;padding:4px;font-size:1.4rem;line-height:1}.compact-nav button+button{border-left:1px solid var(--line)}
body.menu-collapsed .menu-toolbar{display:grid;grid-template-columns:1fr 44px;width:100%;margin-bottom:12px}body.menu-collapsed aside{padding:16px 12px}.compact-flight{gap:8px}.compact-position{font-variant-numeric:tabular-nums}
.archive-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(110px,2fr) 12px minmax(130px,3fr);gap:0;flex:1;overflow:hidden;min-height:280px}
/* Fraction values are assigned as valid fr tracks from the layout controller. */
.archive-filter-pane{min-height:0;overflow:auto;padding-right:3px}.archive-picker-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.archive-picker-pane .list-heading{padding:6px 0}.archive-picker-pane .log-list{flex:1;min-height:0;max-height:none}.archive-content>.sidebar-note{display:none}
.menu-divider{position:relative;touch-action:none;cursor:row-resize;outline-offset:1px}.menu-divider::after{content:'';position:absolute;left:35%;right:35%;top:4px;height:3px;background:#a4b9c5;border-radius:3px}.menu-divider:hover::after,.menu-divider:focus-visible::after{background:var(--blue)}
body[data-menu-position=top] .menu-toolbar{display:grid;grid-template-columns:1fr auto 44px;margin:0 0 10px}body[data-menu-position=top] .menu-toolbar>.compact-nav{grid-column:2;grid-row:1}body[data-menu-position=top] #minimize-menu{grid-column:3;grid-row:1}
body[data-menu-position=top] .archive-content{display:grid;grid-template-columns:minmax(220px,1fr) 12px minmax(260px,2fr);grid-template-rows:minmax(0,1fr);height:250px;min-height:0;gap:0 8px;flex:none}
body[data-menu-position=top] .archive-filter-pane{grid-column:1;grid-row:1;height:100%;padding-right:8px}body[data-menu-position=top] .archive-picker-pane{grid-column:3;grid-row:1;height:100%;min-width:0}
body[data-menu-position=top] .archive-filter-pane .archive-heading h1{font-size:1.25rem}body[data-menu-position=top] .archive-filter-pane .archive-heading p{margin:4px 0 12px}body[data-menu-position=top] .archive-filter-pane .other-toggle{margin-bottom:12px}
body[data-menu-position=top] .archive-picker-pane .log-list{display:flex;flex-direction:row;flex:1;max-height:none;height:auto}body[data-menu-position=top] .archive-picker-pane .pagination{margin-top:6px}
body[data-menu-position=top] .menu-divider{grid-column:2;grid-row:1;cursor:col-resize}body[data-menu-position=top] .menu-divider::after{top:25%;bottom:25%;left:4px;right:auto;width:3px;height:auto}
body[data-menu-position=top].menu-collapsed aside{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:0 18px}body[data-menu-position=top].menu-collapsed .menu-toolbar{display:grid;grid-column:1 / -1;grid-row:1;grid-template-columns:1fr auto 44px;width:100%;margin:0}body[data-menu-position=top].menu-collapsed .menu-toolbar>strong{visibility:hidden}body[data-menu-position=top].menu-collapsed .compact-flight{grid-column:1;grid-row:1;max-width:calc(100% - 210px);display:flex;flex-direction:row;align-items:center;gap:12px;pointer-events:none;z-index:1}body[data-menu-position=top].menu-collapsed .compact-flight>span:last-child{display:none}
.map-format-label{display:flex!important;align-items:center;gap:7px;margin:0!important;font-size:.875rem}.map-format-label select{width:auto;font-size:.875rem;padding:8px}.map-actions{flex-wrap:wrap}.map-toolbar{flex-wrap:wrap}.map-panel{width:100%;max-width:1200px;margin-inline:auto}
.workspace .map-panel #map{height:auto;min-height:0;aspect-ratio:3 / 2;width:100%}.workspace .map-panel[data-shape=square]{max-width:850px}.workspace .map-panel[data-shape=square] #map{aspect-ratio:1}.workspace .map-panel[data-shape=adaptive]{max-width:min(1200px,108vh)}.workspace .map-panel[data-shape=landscape]{max-width:1200px}
.flight-loading{position:sticky;top:8px;align-self:flex-end;z-index:1100;background:var(--panel);border:1px solid #bad9e2;box-shadow:0 3px 12px #10263715;border-radius:8px;padding:8px 12px;font-size:.875rem;color:var(--muted);max-width:100%;margin-bottom:8px}.flight-loading::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--blue);margin-right:8px}#detail[aria-busy=true]{opacity:.8;transition:opacity .15s}
@media(max-width:760px){.archive-content,body[data-menu-position=top] .archive-content{height:450px;min-height:0;flex:none;display:grid;grid-template-columns:minmax(0,1fr)!important;gap:0}.archive-filter-pane,body[data-menu-position=top] .archive-filter-pane{grid-column:1;grid-row:1;height:auto}.archive-picker-pane,body[data-menu-position=top] .archive-picker-pane{grid-column:1;grid-row:3;height:auto}.menu-divider,body[data-menu-position=top] .menu-divider{grid-column:1;grid-row:2;cursor:row-resize}body[data-menu-position=top] .menu-divider::after{left:35%;right:35%;top:4px;bottom:auto;width:auto;height:3px}body[data-menu-position=top] .archive-picker-pane .log-list{flex-direction:column}body[data-menu-position=top] .archive-picker-pane .record{width:100%;min-width:0}body.menu-collapsed aside{display:block}body.menu-collapsed .menu-toolbar{display:grid;grid-template-columns:1fr auto 44px;width:100%;margin:0 0 10px}body.menu-collapsed .menu-toolbar>.compact-nav{grid-column:2;grid-row:1}body.menu-collapsed #minimize-menu{grid-column:3;grid-row:1}body[data-menu-position=top].menu-collapsed aside{display:block}body[data-menu-position=top].menu-collapsed .compact-flight{max-width:none;pointer-events:auto;flex-wrap:wrap}.workspace .map-panel[data-shape=adaptive]{max-width:100%}.overview-stat{padding:14px;gap:6px}.map-actions{flex-direction:row;align-items:center}.map-format-label select{max-width:115px}}

.flight-loading{position:fixed;right:20px;bottom:20px;top:auto;max-width:calc(100vw - 40px);margin:0}

/* Expert review is a stable disclosure above the tabs and hidden by default. */
.flight-review { margin: 12px 0; border: 1px solid #cfdae3; border-radius: 12px; background: #f8fafc; }
.flight-review > summary { padding: 12px 16px; cursor: pointer; font-weight: 650; }
.review-body { padding: 0 16px 16px; max-width: 100%; }
.review-body > label { display: block; margin: 12px 0; }
.review-body > .settings-check { display: flex; }
.review-body select,.review-body textarea { display: block; width: 100%; max-width: 650px; }
.review-range { display: flex; flex-wrap: wrap; gap: 12px; margin: 12px 0; border: 1px solid #cfdae3; border-radius: 8px; min-width: 0; }
.review-boundary { display: grid; gap: 6px; flex: 1 1 200px; min-width: 0; }
.review-boundary input { display: block; width: 100%; }
.review-range > button { align-self: end; }
.review-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.review-actions button,.review-range button,.review-history-row button { min-height: 40px; }
.review-status { font-weight: 600; color: #264b61; overflow-wrap: anywhere; }
.review-history-row { padding: 12px 0; border-bottom: 1px solid #dde5eb; overflow-wrap: anywhere; }
.review-history-row p { margin: 6px 0; white-space: pre-wrap; }
@media(max-width:600px) { .review-actions > button { width: 100%; } .review-body { padding: 0 10px 10px; } }

/* Shared light/dark tokens. A theme change keeps chart exports on a light canvas. */
:root{--panel:#fff;--hover:#eaf0f3;--selected:#edf6f8;--selected-border:#b4dce5;--map-grid:#c9d7df60;--map-base:#e6eef0}
:root[data-theme=dark]{--ink:#e7eff5;--muted:#a9bbc9;--navy:#0b1823;--line:#344653;--blue:#64d4e7;--surface:#101c26;--panel:#1a2a36;--hover:#263c4b;--selected:#203e4b;--selected-border:#458697;--map-base:#142733;--map-grid:#3c526c60;color-scheme:dark}
textarea{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:10px;resize:vertical}
.theme-toggle{width:42px;height:42px;padding:0;background:transparent;color:#eef5dc;border-color:#516879;font-size:25px;line-height:1;flex-shrink:0}
.theme-toggle:hover:not(:disabled){background:#263f50}
.settings-panel{max-height:calc(100dvh - 90px);overflow:auto}.settings-link{display:block;padding:12px 0;margin:10px 0;color:var(--blue);font-weight:650}
[data-theme=dark] .flight-tabs button[aria-selected=true],[data-theme=dark] .chart-sizing button[aria-pressed=true]{color:var(--blue)}
[data-theme=dark] .review-status{color:var(--ink)}
[data-theme=dark] .review-range,[data-theme=dark] .flight-review,[data-theme=dark] .flight-tabs,[data-theme=dark] .review-history-row,[data-theme=dark] .tick-inspector{border-color:var(--line)}
[data-theme=dark] .badge{background:#29452f;color:#c3e5b3}[data-theme=dark] .badge.review{background:#4a3a23;color:#f5d599}
[data-theme=dark] .badge.non_flight,[data-theme=dark] .categories span{background:#30404c;color:var(--ink)}
[data-theme=dark] .record-status.review{color:#f5d599}[data-theme=dark] .record-status.non_flight{color:var(--muted)}
[data-theme=dark] .error{background:#402b27;color:#ffd2c3;border-color:#916051}
[data-theme=dark] .leaflet-popup-content-wrapper,[data-theme=dark] .leaflet-popup-tip,[data-theme=dark] .leaflet-tooltip,[data-theme=dark] .leaflet-bar a,[data-theme=dark] .leaflet-control-attribution{background:var(--panel);color:var(--ink)}
[data-theme=dark] .leaflet-control-attribution a{color:var(--blue)}
[data-theme=dark] .leaflet-tile-pane{filter:brightness(.72) saturate(.85)}
#map{background-color:var(--map-base);background-image:linear-gradient(var(--map-grid) 1px,transparent 1px),linear-gradient(90deg,var(--map-grid) 1px,transparent 1px)}
.pilot-filter{margin:14px 0}.pilot-filter fieldset{border:1px solid var(--line);padding:10px;margin:8px 0;border-radius:8px}.pilot-filter legend{font-size:.875rem}
.pilot-choice{display:flex;gap:8px;align-items:center;font-weight:400}.pilot-choice input{width:auto;accent-color:var(--blue)}
#pilot-filter-status:empty{display:none}.flight-pilot{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}.flight-pilot label{margin:0;color:var(--muted)}.flight-pilot select{width:auto;max-width:240px}.flight-pilot [role=status]{font-size:.875rem;color:var(--muted)}
.settings-layout{display:block;max-width:1150px;margin:auto;padding:28px 24px}.settings-intro{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.settings-intro h1{margin:0}.back-link{color:var(--blue);font-weight:600}
.settings-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:10px}.settings-tabs button{white-space:nowrap}.settings-tabs button[aria-selected=true]{color:var(--blue);border-color:var(--blue);background:var(--selected)}
.settings-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px;margin:0 0 20px}.settings-card h2{font-size:1.15rem;margin:0 0 10px}.settings-card label{margin-top:16px}.settings-card input,.settings-card select{max-width:500px}.settings-card .settings-check input{width:auto}
.settings-card button[type=submit]{margin-top:18px}.settings-card p{color:var(--muted)}.settings-message{min-height:1.5em;color:var(--blue);overflow-wrap:anywhere}
.pilot-admin-row{display:flex;gap:10px;align-items:end;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid var(--line)}.pilot-admin-row label{flex:1;min-width:150px}.pilot-admin-row label.settings-check{flex:0 0 auto;min-width:0;margin-bottom:12px}.pilot-admin-row button{margin-bottom:0;min-height:42px}
.admin-events{padding-left:22px}.admin-events li{padding:7px 0;overflow-wrap:anywhere;line-height:1.5}.admin-status{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-status dd{margin:0;overflow-wrap:anywhere}.admin-status dt{color:var(--muted)}
.settings-empty{border-left:3px solid var(--blue);padding-left:12px}.local-account{font-size:.875rem;color:var(--muted)}
@media(max-width:760px){.settings-layout{padding:20px 12px}.settings-intro{flex-wrap:wrap}.settings-card{padding:18px}.header-right .theme-toggle{width:40px;height:40px}.flight-pilot select{max-width:180px}.settings-panel{width:290px;right:-48px}.admin-status{grid-template-columns:1fr}.admin-status dd{margin-bottom:12px}}

[data-theme=dark] .leaflet-popup a{color:var(--blue)}[data-theme=dark] .leaflet-control-scale-line{background:var(--panel);color:var(--ink);border-color:var(--muted)}

/* Battery catalog and compact recording metadata. */
.flight-battery select{max-width:min(100%,540px)}
.battery-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.battery-toolbar input{flex:1;min-width:160px}
.battery-list{display:grid;gap:8px;max-height:280px;overflow:auto;margin:16px 0}
.battery-list button{text-align:left;white-space:normal;padding:12px}
.battery-list button[aria-pressed=true]{background:var(--selected);border-color:var(--selected-border)}
.battery-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-top:1px solid var(--line);padding-top:16px}
.battery-form>h3,.battery-form>fieldset,.battery-form>p,.battery-form>.battery-toolbar{grid-column:1/-1}
.battery-form label{display:flex;flex-direction:column;gap:6px;min-width:0}
.battery-form label.settings-check{flex-direction:row;align-items:center}
.battery-form input:not([type=checkbox]),.battery-form select,.battery-form textarea{width:100%;box-sizing:border-box}
.battery-form fieldset{border:1px solid var(--line);border-radius:10px;padding:14px}
.battery-form fieldset p,.battery-form>p{color:var(--muted);font-size:13px;line-height:1.5}
@media(max-width:600px){.battery-form{grid-template-columns:1fr}.flight-battery select{width:100%;max-width:100%}.battery-toolbar button{flex:1}}

/* Theme-aware review and direct tile arrangement. */
.flight-review{background:var(--panel);border-color:var(--line);color:var(--ink)}
.review-range,.review-history-row{border-color:var(--line)}.review-status{color:var(--ink)}
.overview-stat.kpi-editable{position:relative;padding-right:40px;cursor:grab}
.kpi-drag-handle{position:absolute;right:4px;top:5px;width:32px;min-height:36px;padding:0;font-size:24px;touch-action:none;cursor:grab}
.kpi-drop-target{outline:2px dashed var(--blue);outline-offset:-3px}.kpi-dragging{opacity:.6}
.chart-smooth{font-size:23px;min-width:40px;line-height:1}.chart-smooth[aria-pressed=true]{background:var(--selected);border-color:var(--blue);color:var(--blue)}
.pilot-readonly{font-size:.9rem}.pilot-edit{min-width:36px;min-height:36px;padding:4px 8px}
.battery-specs{grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px}.battery-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:12px}
.battery-spec-grid .spec-wide{grid-column:1/-1}.battery-checks{border:1px solid var(--line);border-radius:10px;padding:16px;margin:16px 0;background:var(--panel)}
.battery-checks ul{padding-left:20px}.battery-checks li{margin:8px 0;line-height:1.5}.battery-warning{color:#ad5b18}[data-theme=dark] .battery-warning{color:#ffc58b}
@media(max-width:600px){.battery-spec-grid{grid-template-columns:1fr}.kpi-drag-handle{width:36px;min-height:40px}}

.chart-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.chart-actions button{white-space:nowrap}@media(max-width:760px){.chart-actions{margin-left:0}}

.battery-select-row{display:flex;align-items:center;gap:10px}.battery-select-row>button{flex:1}.battery-select-row>input{width:20px;height:20px;flex:none}.bulk-apply{display:inline-flex;align-items:center;gap:6px;margin-right:12px;color:var(--blue)}.bulk-apply input{width:18px;height:18px}.battery-form input:disabled,.battery-form textarea:disabled{opacity:.55}

.flight-videos{margin-top:24px}.flight-videos form{display:flex;gap:10px;flex-wrap:wrap}.flight-videos form input{flex:1;min-width:150px}.video-card{border:1px solid var(--line);border-radius:12px;padding:14px;margin:12px 0;overflow-wrap:anywhere}.video-card input{width:100%;margin-bottom:10px}.video-card button{min-height:40px}

/* One movable player, shared by the Video, Overview and Charts panels. */
.playback {border:1px solid var(--border,#c7d5dd);border-radius:12px;padding:14px;margin:12px 0;background:var(--panel,#fff);color:inherit;min-width:0}
.playback-toolbar,.playback-card-heading,.embedded-video-bar {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.playback-toolbar strong {margin-right:auto}.playback-toolbar select {width:auto;min-width:90px}
.playback-status,.playback-readings {font-size:.85rem;margin:10px 0;line-height:1.5}
.playback-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.playback-grid.dual-video {grid-template-columns:repeat(2,minmax(0,1fr))}
.playback-card {min-width:0}.playback-card-heading {justify-content:space-between}.playback-filename {font-size:.8rem;overflow-wrap:anywhere;margin:8px 0}
.playback video {display:block;width:100%;max-height:65vh;aspect-ratio:16/9;object-fit:contain;background:#080d12;border-radius:8px}.playback video[hidden] {display:none}.playback video.outside-video {opacity:0;pointer-events:none}
.playback-timeline {display:flex;align-items:center;gap:14px;margin-top:14px}.playback-timeline input {flex:1;width:100%;min-width:0}.playback-timeline output {min-width:72px;font-variant-numeric:tabular-nums}
.video-alignment {padding:8px;border:1px solid var(--border,#c7d5dd);border-radius:8px}.video-alignment label {display:inline-flex;flex-direction:column;gap:4px;margin:8px;max-width:180px;font-size:.85rem}.video-alignment button {margin:4px}.video-alignment input {max-width:160px}
.embedded-video {margin:16px 0}.embedded-video-bar {justify-content:space-between}.embedded-video-bar button {margin-left:auto;min-width:110px}
.chart-panel {position:relative}.playback-chart-cursor {position:absolute;width:2px;background:#ee8b25;pointer-events:none;z-index:1}
.flight-videos>summary {cursor:pointer;font-weight:600;padding:14px 0}.video-card button {margin:5px 6px 5px 0}
[data-theme="dark"] .playback {background:#14212c;border-color:#344856}[data-theme="dark"] .video-alignment {border-color:#344856}
@media(max-width:800px){.playback-grid.dual-video{grid-template-columns:minmax(0,1fr)}.playback{padding:10px}.playback-toolbar{gap:8px}.playback-toolbar button,.playback-toolbar select{min-height:40px}}

.embedded-video .playback video {max-height:300px}
/* Category-specific linking stays above the current flight view. */
.video-picker{width:min(1000px,calc(100vw - 48px));height:min(780px,84dvh);max-height:84dvh;box-sizing:border-box;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink);box-shadow:0 24px 90px #0006}
.video-picker::backdrop{background:#0009}.video-picker[open]{display:flex;flex-direction:column;gap:12px}.video-picker-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.video-picker-heading h2{font-size:1.3rem;margin:0}.video-picker-heading button{font-size:1.4rem;min-width:40px;min-height:40px}.video-picker form{display:flex;gap:10px}.video-picker form input{min-width:0;flex:1}.video-picker p{margin:0}.video-root-toggle{display:flex;align-items:center;gap:8px}.video-root-toggle input{width:auto}.video-picker-results{overflow:auto;min-height:0;flex:1;display:flex;flex-direction:column;gap:10px}.video-choice{text-align:left;display:flex;flex-direction:column;gap:8px;width:100%;padding:14px;flex-shrink:0;overflow-wrap:anywhere;line-height:1.4}.video-choice span{font-size:.85rem;color:var(--muted)}.video-choice.recommended{border-color:var(--blue)}.video-choice .video-match{color:var(--blue)}.video-picker-pages{display:flex;justify-content:space-between;gap:12px}.video-link-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}.video-link-actions strong{flex-basis:100%}.video-change{padding:5px 9px;min-width:32px;min-height:32px}.video-audio-menu{position:relative;margin-left:auto}.video-audio-menu>summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:6px;padding:6px 9px;min-width:32px;text-align:center}.video-audio-menu>div{position:absolute;right:0;top:calc(100% + 6px);z-index:20;padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #0003;min-width:210px}.chart-add-row{display:flex;justify-content:flex-end;margin:10px 0 16px}
@media(max-width:600px){.video-picker{width:calc(100vw - 24px);padding:16px;height:86dvh;max-height:86dvh}.video-link-actions button{width:100%}}

/* Optional explanations never include warnings or error messages. */
html[data-hints="hide"] .optional-hint {display:none!important}
.playback audio {display:none}

/* Metric explanations: available on demand even when introductory hints are hidden. */
.metric-help-label {display:inline;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;text-align:inherit;text-decoration:underline dotted;text-underline-offset:4px;cursor:help;box-shadow:none}
.facts .metric-help-label:hover:not(:disabled) {background:transparent;color:inherit}
.metric-help-label:focus-visible,.metric-help-axis:focus-visible {outline:2px solid #167d9b;outline-offset:3px}
.chart-controls label {position:relative;padding-right:28px}
.chart-controls .metric-help-axis {position:absolute;right:0;bottom:5px;width:24px;height:28px;padding:0;cursor:help}
.metric-help-tooltip {position:fixed;z-index:10000;width:320px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow:auto;box-sizing:border-box;padding:14px 16px;border:1px solid #a5bbc7;border-radius:10px;background:#fff;color:#163344;box-shadow:0 6px 24px #0003;font:13px/1.5 system-ui;text-align:left}
.metric-help-tooltip strong {display:block;font-size:14px}
.metric-help-tooltip p {margin:6px 0}
.metric-help-tooltip ul {margin:8px 0 0;padding-left:18px}
.metric-help-tooltip li+li {margin-top:4px}
html[data-theme="dark"] .metric-help-tooltip {background:#192c39;color:#e0edf5;border-color:#527080}
.metric-help-tooltip[hidden],.metric-help-axis[hidden] {display:none!important}

.chart-panel canvas {cursor:ew-resize}
.chart-panel canvas.scrubbing {cursor:grabbing}

/* Flight comparison shares archive filters without mixing selection and navigation. */
.compare-tray{padding:8px 0;flex:none}.compare-tray>button{width:100%}.compare-selection{padding-top:8px;font-size:.82rem}.compare-selection>button{margin:6px 5px 0 0}.compare-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.compare-chips button{font-size:.72rem;padding:5px 7px;text-align:left;overflow-wrap:anywhere}.compare-record{display:flex;align-items:center;gap:7px;min-width:0}.compare-record>.record{flex:1;min-width:0;width:100%}.compare-record>input{width:22px;height:22px;flex:none;accent-color:#17839f;cursor:pointer}.comparison-workspace{min-width:0;padding:24px}.comparison-heading,.comparison-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.comparison-heading{margin-bottom:18px}.comparison-heading h2{margin:0}.comparison-controls{justify-content:flex-start;margin:12px 0}.comparison-controls label,.comparison-charts>label,.comparison-routes label{display:flex;flex-direction:column;gap:5px;font-size:.85rem;min-width:0}.comparison-controls select{max-width:100%}.comparison-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:10px;margin:16px 0}.comparison-flight{border-left:4px solid;padding:8px 12px;background:var(--surface,#f1f6f8);border-radius:6px;min-width:0}.comparison-flight strong,.comparison-flight span{display:block;overflow-wrap:anywhere}.comparison-flight strong{font-size:.9rem}.comparison-flight span{font-size:.8rem;margin-top:5px}.comparison-warning{font-size:.78rem;line-height:1.5;margin:7px 0 0}.comparison-panel{margin-top:18px}.comparison-table-wrap{overflow:auto;border:1px solid #cddce3;border-radius:9px}.comparison-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.88rem}.comparison-table caption{text-align:left;font-weight:600;padding:12px}.comparison-table th,.comparison-table td{padding:12px;text-align:left;border-bottom:1px solid #dbe4e9;min-width:160px}.comparison-table td{font-variant-numeric:tabular-nums;white-space:nowrap}.comparison-table th:first-child{position:sticky;left:0;background:#f3f7f9;z-index:1;min-width:180px;max-width:230px}.comparison-table thead th{vertical-align:top;font-size:.82rem}.comparison-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:14px 0}.comparison-chart-grid.single-chart{grid-template-columns:minmax(0,1fr)}.comparison-chart{border:1px solid #cddce3;border-radius:10px;padding:14px;min-width:0}.comparison-chart .comparison-controls{margin-top:0;flex-wrap:nowrap}.comparison-chart label{flex:1;min-width:0}.comparison-chart canvas{display:block;width:100%;height:300px;touch-action:pan-y;cursor:ew-resize}.comparison-readings{display:grid;gap:5px;font-size:.8rem;font-variant-numeric:tabular-nums}.comparison-readings span{padding-left:7px}.comparison-map{width:100%;height:clamp(320px,65vh,720px);border-radius:10px;background:#e5edf1}.comparison-workspace [role=tab][aria-selected=true]{font-weight:700;border-bottom:3px solid #17839f}.comparison-workspace [role=tablist]{display:flex;gap:8px}.comparison-workspace [hidden]{display:none!important}:root[data-theme=dark] .comparison-flight{background:#1a2c39}:root[data-theme=dark] .comparison-table th:first-child{background:#1a2c39}:root[data-theme=dark] .comparison-table th,:root[data-theme=dark] .comparison-table td,:root[data-theme=dark] .comparison-table-wrap,:root[data-theme=dark] .comparison-chart{border-color:#344856}:root[data-theme=dark] .comparison-map{background:#152530}@media(max-width:1000px){.comparison-chart-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.comparison-workspace{padding:14px}.comparison-table th:first-child{min-width:130px;max-width:160px}.comparison-table th,.comparison-table td{padding:10px}.comparison-map{height:55vh;min-height:320px}.comparison-heading{align-items:flex-start}.comparison-heading h2{font-size:1.3rem}.compare-record>input{width:26px;height:26px}}

.compare-record{flex-shrink:0}.compare-chips{max-height:65px;overflow-y:auto}.compare-selection>span{display:block}.comparison-workspace{gap:8px;background:var(--panel)}@media(min-width:761px){body[data-menu-position=top] .compare-record{flex:0 0 245px;align-items:center}}

.compare-toolbar{display:flex;gap:6px}.compare-toolbar>button{flex:1;min-width:0;padding:8px 5px;font-size:.8rem}.compare-selection{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px}.compare-selection>button{margin:0;padding:3px 7px;font-size:.75rem}.compare-selected-details{grid-column:1/-1;font-size:.75rem}.compare-selected-details summary{cursor:pointer;padding:3px 0}.compare-selection .compare-chips{max-height:70px}.compare-chips button{width:100%}.comparison-chart .metric-help-axis{position:absolute;right:0;top:0}.comparison-chart label{position:relative;padding-right:27px}

.video-match-badge{font-size:.78rem;font-weight:700;align-self:flex-start;padding:3px 8px;border:1px solid currentColor;border-radius:99px;line-height:1.4}

.comparison-plot{position:relative}.comparison-cursor{position:absolute;left:0;width:1px;pointer-events:none}

.flight-export{position:relative;margin-left:auto;align-self:flex-start}.flight-export>summary{cursor:pointer;border:1px solid var(--border,#9cabb5);border-radius:7px;padding:8px 12px;white-space:nowrap}.flight-export>div{position:absolute;right:0;top:100%;min-width:240px;max-width:80vw;padding:12px;display:grid;gap:8px;background:var(--surface,#fff);color:inherit;border:1px solid #9cabb5;border-radius:8px;z-index:800;box-shadow:0 8px 24px #0003}.flight-export small{line-height:1.5}:root[data-theme=dark] .flight-export>div{background:#1a2c39}

/* Small-screen navigation uses the same archive and preserves desktop preferences. */
.mobile-flight-nav[hidden],.mobile-archive:not([open]){display:none}
.mobile-flight-nav{position:sticky;top:0;z-index:900;display:flex;align-items:center;gap:8px;padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));background:var(--panel);border-bottom:1px solid var(--line)}
.mobile-flight-nav button{min-width:44px;min-height:44px;flex:none}.mobile-flight-nav button:not(:first-child){font-size:1.35rem;padding:4px}
.mobile-flight-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem;font-weight:650}
.mobile-archive{width:min(620px,calc(100vw - 24px));height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);max-width:none;margin:auto;padding:0;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:14px;overflow:auto;overscroll-behavior:contain}
.mobile-archive::backdrop{background:#0009}.archive-modal-open{overflow:hidden}
body.mobile-layout #app-layout{display:block;min-height:calc(100dvh - 130px)}
body.mobile-layout .mobile-archive #flight-menu{display:block;position:static;width:100%;height:auto;max-height:none;padding:16px;border:0}
body.mobile-layout .mobile-archive .menu-toolbar{display:grid;grid-template-columns:1fr 44px;position:sticky;top:0;background:var(--panel);z-index:2;padding:4px 0 8px;margin:0;gap:8px}
body.mobile-layout .mobile-archive .menu-toolbar>strong{visibility:visible;display:block}
body.mobile-layout .mobile-archive .compact-nav,body.mobile-layout .mobile-archive #compact-flight,body.mobile-layout .mobile-archive #menu-divider{display:none!important}
body.mobile-layout .mobile-archive #minimize-menu{grid-row:1;grid-column:2}
body.mobile-layout .mobile-archive .archive-content{display:flex!important;flex-direction:column;align-items:stretch;height:auto;min-height:0;overflow:visible;gap:12px}
body.mobile-layout .mobile-archive .archive-filter-pane,body.mobile-layout .mobile-archive .archive-picker-pane{height:auto;overflow:visible;min-width:0;padding:0}
body.mobile-layout .mobile-archive .log-list{display:flex;flex-direction:column;max-height:none;min-height:0;overflow:visible;margin:0;padding:4px}
body.mobile-layout .mobile-archive .compare-record{flex:0 0 auto;min-width:0}
body.mobile-layout .mobile-archive .record{width:100%;min-width:0}
body.mobile-layout .mobile-archive #filters{display:block}
body.mobile-layout .mobile-archive .archive-heading p{margin-bottom:12px}
body.mobile-layout .mobile-archive .compare-tray{position:sticky;bottom:-16px;padding:10px 0;background:var(--panel);z-index:2}
@media(max-width:900px){
 header{height:64px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));gap:8px}
 .header-right{font-size:0;gap:6px;flex-shrink:0}.header-right .local-dot{display:none}
 .brand{gap:6px;min-width:0}.brand-icon{font-size:28px}.brand strong{font-size:.83rem;letter-spacing:.06em}.brand div>span{font-size:.7rem}
 .display-settings{font-size:.875rem}.display-settings>summary,.header-right .theme-toggle{min-height:44px;min-width:44px}
 .settings-panel{position:fixed;top:72px;right:12px;width:340px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 84px)}
 .workspace,.comparison-workspace{padding:16px 12px}.detail-heading{align-items:flex-start;flex-wrap:wrap}.detail h2{font-size:1.5rem;overflow-wrap:anywhere}
 .flight-tabs,.settings-tabs,.view-tabs{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:8px}
 .flight-tabs button,.settings-tabs button,.view-tabs button{flex-shrink:0;min-height:44px}
 .flight-tabs{margin-bottom:16px}.flight-panel{scroll-margin-top:72px}
 .overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-stat{padding:14px}.overview-stat>strong{font-size:1.45rem}
 .chart-grid,.comparison-chart-grid{grid-template-columns:minmax(0,1fr)}
 .tick-values,.raw-readings{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.facts dt,.facts dd{min-width:0;overflow-wrap:anywhere}
 .tick-navigation{flex-wrap:wrap}.tick-navigation input[type=range]{flex:1 0 100%;order:3;height:44px}
 .chart-actions{flex-wrap:wrap;gap:6px}.chart-sizing{align-items:flex-start}.chart-sizing>label{flex-wrap:wrap}
 .chart-panel .chart-controls label{flex:1 1 140px}.chart-controls,.comparison-controls{gap:8px}
 .map-actions{flex-direction:row;flex-wrap:wrap;gap:8px;align-items:center}.map-toolbar{padding:12px}.map-caption{flex-wrap:wrap}.map-caption>span:first-child{flex-shrink:1}
 .workspace .map-panel[data-shape=adaptive]{max-width:100%}.workspace .map-panel[data-shape=adaptive] #map{aspect-ratio:1;max-height:70dvh;min-height:260px}
 .comparison-map{height:60dvh;min-height:260px}.comparison-table-wrap{max-width:100%;overscroll-behavior-x:contain}
 .comparison-table th:first-child{min-width:120px;max-width:140px;overflow-wrap:anywhere}
 .playback-timeline{flex-wrap:wrap;gap:8px}.playback-timeline input{flex:1 0 100%;order:3;min-height:44px}
 .playback video{max-height:60dvh}.video-picker{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:14px;gap:8px}
 .video-picker-heading h2{font-size:1.1rem}.video-picker-heading,.video-picker form,.video-picker-pages{flex-shrink:0}.video-picker>p{font-size:.875rem}
 .settings-card pre{white-space:pre-wrap;overflow-wrap:anywhere}.settings-card{min-width:0}.settings-layout{min-height:calc(100dvh - 64px)}
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}
}
/* Coarse pointers need usable hit areas even on larger tablets. Metric names
   remain inline; dedicated help icons and controls get the full target. */
@media(pointer:coarse),(max-width:900px){
 button,summary,select{min-height:44px}button{touch-action:manipulation}
 .metric-help-label{min-height:0}.chart-controls label,.comparison-chart label{padding-right:48px}
 .chart-controls .metric-help-axis,.comparison-chart .metric-help-axis{width:44px;height:44px;min-height:44px;bottom:0}
 .comparison-chart .metric-help-axis{top:auto}
 .kpi-drag-handle{width:44px;min-height:44px}.overview-stat.kpi-editable{padding-right:48px}
 .settings-check,.pilot-choice,.kpi-choice,.other-toggle,.video-root-toggle{min-height:44px;align-items:center}
 input[type=checkbox]{min-width:22px;min-height:22px}
 .compare-record>input{width:44px;height:44px;flex:0 0 44px}
 .leaflet-touch .leaflet-bar a{width:44px;height:44px;line-height:44px}
 .video-audio-menu>summary,.video-change,.pilot-edit{min-width:44px;min-height:44px}
 .chart-panel canvas,.comparison-chart canvas{touch-action:pan-y pinch-zoom}
}
@media(max-width:380px){.brand div>span{display:none}.brand strong{font-size:.76rem}.mobile-flight-nav{gap:5px}.chart-sizing>label{flex-basis:100%}.overview-stat>strong{font-size:1.3rem}}

.mobile-flight-nav{flex-wrap:wrap}.mobile-flight-error{flex-basis:100%;font-size:.8125rem;color:var(--ink);overflow-wrap:anywhere}.mobile-flight-error[hidden]{display:none}

.mobile-layout-note{display:none}@media(max-width:900px){.mobile-layout-note{display:block;font-size:.875rem;color:var(--muted)}}
.archive-insights-link{display:block;margin:0 0 14px;padding:10px 12px;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--panel);text-align:center;text-decoration:none;font-weight:600}
/* Deployment evidence, kept inside administrator settings. */
.deployment-actions{display:flex;gap:10px;flex-wrap:wrap}.deployment-actions button,#backup-refresh{min-height:44px}.deployment-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.deployment-check{padding:16px;border:1px solid var(--line);border-radius:10px;min-width:0}.deployment-check-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap}.deployment-check h3{margin:0;font-size:1rem}.deployment-check p{font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}.deployment-check .deployment-next{color:var(--muted);margin-bottom:0}.deployment-state{display:inline-block;border:1px solid var(--line);border-radius:20px;padding:4px 8px;font-size:.75rem;white-space:nowrap;color:var(--muted)}.deployment-state[data-state=ready]{color:var(--blue);border-color:var(--blue);background:var(--selected)}.deployment-state[data-state=overdue],.deployment-state[data-state=attention],.deployment-state[data-state=stale]{font-weight:700;color:var(--ink);border-style:dashed}.deployment-help{margin-top:20px;line-height:1.65}.deployment-help summary{cursor:pointer;padding:8px 0}.deployment-help pre{white-space:pre-wrap;overflow-wrap:anywhere}.deployment-help li{margin-bottom:10px}@media(max-width:760px){.deployment-checks{grid-template-columns:minmax(0,1fr)}}

/* Personal logbook controls share the existing responsive archive and theme. */
.saved-views{margin:10px 0}.saved-views summary,.flight-journal summary{cursor:pointer;font-weight:600;padding:8px 0}.saved-views input,.saved-views select{width:100%;min-width:0}.saved-views button{margin:4px 0;min-height:36px}.saved-views label{display:block;margin-top:8px}.flight-journal{border:1px solid var(--line);border-radius:10px;padding:8px 14px;margin:10px 0}.flight-journal form{display:grid;gap:10px}.flight-journal label{display:grid;gap:6px}.flight-journal input:not([type=checkbox]),.flight-journal textarea{width:100%;box-sizing:border-box;min-width:0}.flight-journal textarea{resize:vertical}.flight-journal input[type=checkbox]{width:20px;height:20px}.journal-actions{display:flex;gap:8px}.journal-actions button{min-height:40px}

.flight-journal label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px}.flight-journal label:has(input[type=checkbox]) input{margin:0;accent-color:var(--blue)}
