/* Extend the existing glass theme with directly reachable flight and practice controls. */
.answer-streak{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;padding:5px 9px;margin:0;border:1px solid #ffbc6335;border-radius:99px;background:#f7a44312;font-size:15px;line-height:1.2;font-variant-numeric:tabular-nums;color:inherit}
.answer-streak b{font-size:14px;font-weight:650}.answer-streak[hidden]{display:none!important}
#questionPanel{position:relative}#answerStreak{position:absolute;right:0;top:0}
#questionPanel:has(#answerStreak:not([hidden])) .question-meta{padding-right:64px}
.leaderboard-result{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.leaderboard-result b{display:block}.leaderboard-result .leaderboard-time{display:block;font-size:13px;line-height:1.6;opacity:.8;width:auto;height:auto;background:none;color:inherit;border-radius:0}
#droneProgress{min-height:44px;touch-action:pan-y}.drone-actions select{font-size:16px}.drone-actions select option{background:#15334b;color:#f3f8ff}
@media(max-width:700px), (max-width:1000px) and (pointer:coarse){
 .session-active .sidebar{background:rgba(13,32,49,.93)}
 .session-active #answerStreak{position:absolute;top:0;right:0;margin:0;padding:5px 8px;color:#fff0d9;background:#f7a44314;z-index:1}.session-active #questionPanel:has(#answerStreak:not([hidden])) #mobileQuestionCount{top:35px;right:3px}.session-active .question-heading{margin-right:58px}
 #droneStart{position:absolute;top:auto;bottom:calc(var(--dock-height) + 28px + env(safe-area-inset-bottom) + var(--mobile-bottom));left:14px;right:auto;width:auto;max-width:calc(100% - 90px);min-height:48px;margin:0;padding:11px 18px;z-index:620;white-space:normal;font-size:15px;font-weight:600;line-height:1.3;color:#f4faff;background:rgba(21,49,72,.84);border:1px solid #d7eeff70;border-radius:25px;box-shadow:inset 0 1px #ffffff55,0 6px 22px #00132155;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
 .mobile-sheet-folded #droneStart{bottom:calc(24px + env(safe-area-inset-bottom))}
 .drone-active #droneStart,.mobile-keyboard #droneStart{display:none!important}
 .drone-panel,.sidebar-collapsed .drone-panel{position:absolute;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom) + var(--mobile-bottom));width:auto;max-width:none;max-height:calc(var(--mobile-height) - 100px);padding:14px 16px;border-radius:24px;background:rgba(17,44,64,.83);border-color:#d4eeff66;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
 .drone-panel strong{font-size:20px;overflow-wrap:anywhere}.drone-panel small{font-size:13px}.drone-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}.drone-actions label{display:flex;justify-content:flex-end;min-width:0;font-size:14px}.drone-actions select{min-width:0;max-width:100%;padding:8px;font-size:16px}.drone-actions button{min-height:48px;font-size:15px}.drone-actions button:last-child{grid-column:1/-1;width:100%;margin:0;background:#d0e8ff1c}
 .drone-active .map-stage #globe{width:100%;height:calc(var(--mobile-height) - 76px);top:76px}
 .drone-active .globe-status{top:84px;left:14px;right:14px;max-height:52px}
 @media(min-width:560px) and (max-height:550px){#droneStart{bottom:22px;left:14px;max-width:35%}.drone-panel,.sidebar-collapsed .drone-panel{left:auto;right:12px;width:320px;max-height:calc(var(--mobile-height) - 80px);padding:10px 14px}.drone-panel strong{font-size:17px}.drone-panel small{display:none}.drone-actions{grid-template-columns:1fr 1.4fr}.drone-active .map-stage #globe{top:60px;height:calc(var(--mobile-height) - 60px)}}
 @media(prefers-reduced-transparency:reduce){#droneStart,.drone-panel{background:#17354b;backdrop-filter:none;-webkit-backdrop-filter:none}}
}

@media(max-width:380px){.leaderboard-switch{display:grid;grid-template-columns:1fr 1fr}.leaderboard-switch button{padding:8px 4px}}

/* Compact phone flight controls; full details stay visible on desktop. */
#droneMore,.drone-close-icon{display:none}
.detail{overflow-y:auto;overscroll-behavior:contain}
.detail .place-community{margin-top:14px;padding-top:12px;border-top:1px solid #90a9bd50}
.detail .place-community>p{font-size:14px;line-height:1.5;margin:0 0 6px;color:inherit}
.detail .place-community-rate{font-size:23px;letter-spacing:-.5px;color:inherit}
.detail .place-community-info summary{font-size:13px;line-height:1.5;cursor:pointer;padding:4px 0}
.detail .place-community-info p{font-size:13px;margin:6px 0}
.detail .detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.detail .detail-actions .secondary{flex:1 1 130px;width:auto;margin:0;min-height:44px}
.detail #detailDrone{background:#326ccc;color:#fff}
.detail #detailDroneStatus{margin:8px 0 0}
.feedback-location-label{display:block;margin-bottom:2px;font-size:14px;font-weight:650;color:#edf5ff}
.answer-comparison{border-top:1px solid #ffffff26;margin-top:12px;padding-top:10px}
.answer-comparison p{font-size:14px;color:inherit;margin:0 0 8px}
.answer-comparison button{width:100%;min-height:44px}
#comparisonDialog{width:min(700px,calc(100vw - 24px));max-width:700px;padding:20px;border-radius:24px}
.comparison-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.comparison-heading h2{font-size:22px}
#closeComparison{flex:none;width:44px;height:44px;border:1px solid #ffffff30;border-radius:50%;background:#ffffff0c;font-size:26px}
#comparisonMap{height:300px;width:100%;border-radius:16px;overflow:hidden;background:#b9d4e3;color:#163146}
#comparisonMap .leaflet-control-zoom{margin:10px!important}
#comparisonPlaces{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.comparison-place{display:flex;align-items:flex-start;gap:10px;min-width:0}
.comparison-place>div{min-width:0}.comparison-place small{font-size:14px;color:#c3d1e2}
.comparison-place h3{margin:3px 0 5px;font-size:18px;overflow-wrap:anywhere}
.comparison-place p{margin:0;font-size:15px;line-height:1.5}
.comparison-badge{display:grid;place-items:center;flex:none;width:32px;height:32px;border:2px solid #fff;border-radius:50%;font:700 15px/1 Inter,sans-serif;box-shadow:0 2px 8px #0004;color:#fff;background:#225cad}
.comparison-b .comparison-badge,.comparison-badge.comparison-b{background:#a84324}
#comparisonDialog .comparison-note{font-size:13px;line-height:1.5;margin:16px 0 0;color:#bdccda}
@media(max-width:700px), (max-width:1000px) and (pointer:coarse){
 #dronePanel.drone-panel{padding:8px;max-width:460px;max-height:calc(var(--mobile-height) - 110px);margin-left:auto;margin-right:auto;border-radius:22px}
 #dronePanel .drone-details{display:none;padding:4px 6px 0}
 #dronePanel[data-expanded=true] .drone-details{display:block}
 #dronePanel .drone-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(64px,88px) 44px 44px;gap:6px;align-items:center}
 #dronePanel .drone-actions button,#dronePanel .drone-actions select{min-height:44px;height:44px;padding:6px;border-radius:14px}
 #dronePanel .drone-actions label{display:block;min-width:0}
 #dronePanel .drone-actions label>span,.drone-close-text{display:none}
 #dronePanel .drone-actions select{width:100%;font-size:16px}
 #droneMore{display:block;font-size:24px}
 #dronePanel #droneStop{grid-column:auto;width:44px;margin:0;padding:0}
 .drone-close-icon{display:block;font-size:26px;line-height:1}
 #dronePanel #dronePause{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #comparisonDialog{padding:16px;max-height:calc(var(--mobile-height,100dvh) - 32px)}
 #comparisonMap{height:clamp(180px,32dvh,280px)}
 #comparisonPlaces{grid-template-columns:1fr;gap:14px;margin-top:16px}
 .comparison-heading h2{font-size:20px}
}

@media(max-width:700px), (max-width:1000px) and (pointer:coarse){.detail{max-height:min(46svh,calc(var(--mobile-height,100dvh) - var(--dock-height,240px) - 120px))}}

.brand-title{margin:0;font:inherit;line-height:1.1;color:inherit}
.seo-content{flex-shrink:0;margin-top:24px;padding-top:18px;border-top:1px solid #ffffff16}
.seo-content h2{font-size:20px;letter-spacing:-.3px}
.seo-content p{font-size:14px;line-height:1.55;color:#bdcad9;margin:10px 0 12px}
.seo-content ul{margin:0;padding-left:18px;color:#aebed1;font-size:13px;line-height:1.65}
.seo-content li{padding-left:2px}
