/* Rankings, single-button wing control and inexpensive composited atmosphere. */
.menu-secondary{flex-wrap:wrap;gap:12px}.menu-secondary button{white-space:nowrap}.complete-secondary{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:19px}.complete-secondary button{border:0;background:none;color:#55786a;font-size:12px}.complete-secondary #return-menu{margin:0}
#touch-special{display:none!important}.touch-actions #touch-jump.wing-ready{background:linear-gradient(145deg,#9dcbbb,#438b80);color:#fff9df;box-shadow:0 5px 0 #25645a85,0 0 25px #b3e4d123}#glider-indicator kbd{font-size:10px;letter-spacing:0}
#modal:has(.leaderboard){width:min(740px,94vw);max-width:94vw;padding:31px 35px 25px}.ranking-title{display:flex;align-items:center;gap:18px;margin:12px 0 22px}.ranking-title>span{display:grid;place-items:center;border-radius:20px;background:#e4bc76;color:#73522f;font-size:42px;width:67px;height:67px;box-shadow:inset 0 0 0 5px #f3d99f}.ranking-title h2{margin:0 0 5px!important;font-size:29px!important;letter-spacing:2px}.ranking-title p{font-size:12px!important;margin:0!important;color:#839080!important}.ranking-tabs{display:flex;align-items:center;gap:7px;border-bottom:1px solid #d8d8bb;padding-bottom:13px}.ranking-tabs button,.ranking-pagination button,.ranking-empty button{border:1px solid #d2d7ba;border-radius:11px;background:#ede9d4;color:#577766;padding:10px 15px;font-size:12px}.ranking-tabs button.active{background:#326f64;border-color:#326f64;color:#fff4d7}.ranking-tabs #rank-refresh{margin-left:auto;background:transparent;border:0}.ranking-summary{display:grid;grid-template-columns:1fr 2fr;gap:15px;padding:21px 0}.ranking-summary>div{display:flex;flex-direction:column;gap:9px;padding:14px 17px;border:1px solid #d9dbc0;border-radius:14px;background:linear-gradient(120deg,#ece9d4,#f6f0de)}.ranking-summary small{font-size:10px;color:#83917c}.ranking-summary strong{font-size:21px;letter-spacing:.3px;font-variant-numeric:tabular-nums;color:#396b59}.ranking-summary em{font-size:10px;font-style:normal;font-weight:400;color:#7a8972;display:inline-block;margin-left:8px}.ranking-row{display:grid;grid-template-columns:47px 1fr 138px;align-items:center;gap:10px;padding:12px 13px;border-bottom:1px solid #dedec766}.ranking-row:last-child{border-bottom:0}.ranking-head{color:#8a967e;font-size:10px;letter-spacing:1px;padding-top:6px;padding-bottom:10px}.ranking-head>:last-child{text-align:right}.ranking-place{display:grid;place-items:center;width:29px;height:32px;font-size:14px;font-weight:600;color:#8e9985}.ranking-row.podium .ranking-place{background:#e8cd94;color:#866136;border-radius:9px}.ranking-row.podium:nth-child(3) .ranking-place{background:#d7e0d2;color:#627566}.ranking-row.podium:nth-child(4) .ranking-place{background:#e9d6bb;color:#997755}.ranking-name{min-width:0}.ranking-name b{font-size:13px;color:#496f5e;overflow-wrap:anywhere}.ranking-name small,.ranking-time small{display:block;font-size:9px;color:#8e9983;margin-top:5px;font-weight:400;letter-spacing:0}.ranking-time{text-align:right;color:#3c7262;font-size:16px;letter-spacing:.5px;font-variant-numeric:tabular-nums;font-weight:650}.ranking-row.is-player{background:#dce8d5;border-radius:11px}.ranking-pagination{display:flex;align-items:center;justify-content:space-between;padding-top:19px;gap:12px}.ranking-pagination span{font-size:11px;color:#849478}.ranking-pagination button{font-size:10px;padding:9px 12px}.ranking-pagination button:disabled{opacity:.35;cursor:default}.ranking-note{font-size:10px!important;line-height:1.8!important;color:#8c987d!important;margin:17px 0 0!important}.ranking-empty{text-align:center;padding:28px 10px 32px;color:#718873}.ranking-empty>span{font-size:45px;color:#b1bfa3}.ranking-empty h3{font-size:18px;font-weight:500;margin:13px 0}.ranking-empty p{font-size:12px!important;line-height:1.85!important;color:#8b9881!important}.ranking-empty button{margin-top:9px;background:#376f61;color:#fff4db}.ranking-loading>span{display:inline-block;animation:ranking-turn 3s linear infinite}@keyframes ranking-turn{to{transform:rotate(360deg)}}
#screen-fx{position:absolute;z-index:3;inset:0;pointer-events:none;overflow:hidden;--wind:0;--impact:0;--reveal:0;--light:255,225,169}#screen-fx>div{position:absolute;inset:0;pointer-events:none}.fx-light{background:radial-gradient(ellipse at 82% 0%,rgba(var(--light),.15),transparent 58%),radial-gradient(ellipse at 50% 43%,transparent 48%,#102b2417);opacity:.8}.fx-wind{opacity:var(--wind);background:repeating-conic-gradient(from 22deg at 50% 49%,transparent 0deg 16deg,#e5ffe64a 16.2deg 16.45deg,transparent 16.7deg 35deg);mask-image:radial-gradient(ellipse,transparent 40%,#000 96%);animation:wing-breath 1.8s ease-in-out infinite}.fx-impact{box-shadow:inset 0 0 130px 24px #2d563b;opacity:var(--impact)}.fx-reveal{box-shadow:inset 0 0 115px 4px #efcf88;opacity:var(--reveal)}#screen-fx.fx-disabled{display:none}body[data-chapter="2"] #screen-fx{--light:203,218,197}body[data-chapter="3"] #screen-fx{--light:234,182,100}body[data-chapter="4"] #screen-fx{--light:247,203,185}body[data-chapter="5"] #screen-fx{--light:147,190,210}body[data-chapter="6"] #screen-fx{--light:246,221,163}body[data-chapter="7"] #screen-fx{--light:255,238,199}#screen-fx[data-film="true"] .fx-light{background:linear-gradient(115deg,transparent 30%,#d5e5d60b 46%,transparent 65%),radial-gradient(ellipse at 50% 40%,transparent 30%,#061c256b);box-shadow:inset 0 16px 0 #18303912,inset 0 -16px 0 #18303912}.fx-disabled~#chapter-arrival{display:none}@keyframes wing-breath{50%{transform:scale(1.08);opacity:calc(var(--wind)*.55)}}
#chapter-arrival{position:absolute;z-index:5;left:50%;top:24%;transform:translate(-50%,15px);opacity:0;text-align:center;pointer-events:none;transition:opacity 1.2s,transform 1.4s;width:min(600px,76vw);padding:25px;color:#fff4cf;text-shadow:0 2px 15px #183b31;background:radial-gradient(ellipse,#274b3960,transparent 70%)}#chapter-arrival.visible{opacity:1;transform:translate(-50%,0)}#chapter-arrival small{font-size:9px;letter-spacing:5px;display:block}#chapter-arrival strong{font-size:32px;letter-spacing:10px;font-weight:450;display:block;margin:15px 0}#chapter-arrival span{font-size:11px;letter-spacing:3px;border-top:1px solid #e7e6bf88;padding-top:12px;display:inline-block}
@media(max-height:530px){#modal:has(.leaderboard){padding:23px 27px}.ranking-title{margin:5px 0 12px}.ranking-title>span{height:46px;width:46px;border-radius:14px;font-size:28px}.ranking-title h2{font-size:23px!important}.ranking-summary{padding:12px 0}.ranking-summary>div{padding:10px 13px}.menu-secondary{margin-top:12px;gap:9px}.menu-secondary button{font-size:11px}.complete-secondary{margin-top:11px}#chapter-arrival{top:23%;padding:14px}#chapter-arrival strong{font-size:25px;margin:9px 0}}
@media(max-width:500px){#modal:has(.leaderboard){padding:29px 17px 21px}.ranking-title{gap:12px}.ranking-title h2{font-size:23px!important;letter-spacing:1px}.ranking-title>span{width:51px;height:57px;font-size:34px;border-radius:14px}.ranking-tabs{gap:5px}.ranking-tabs button{font-size:10px;padding:9px 10px}.ranking-tabs #rank-refresh{font-size:10px;padding:9px 4px}.ranking-summary{gap:8px}.ranking-summary>div{padding:12px 10px;gap:8px}.ranking-summary strong{font-size:17px}.ranking-summary em{font-size:9px;margin-left:4px}.ranking-summary small{font-size:9px}.ranking-row{grid-template-columns:27px 1fr 103px;gap:7px;padding:12px 7px}.ranking-place{width:26px;font-size:12px}.ranking-time{font-size:13px}.ranking-name b{font-size:12px}.ranking-name small{font-size:8px}.ranking-title p{font-size:10px!important}.ranking-note{font-size:9px!important}.menu-secondary{gap:9px}.menu-secondary button{font-size:11px}#chapter-arrival{top:27%}#chapter-arrival strong{font-size:27px;letter-spacing:5px}#chapter-arrival span{font-size:10px;letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){.fx-wind,.ranking-loading>span{animation:none}#chapter-arrival{transition:opacity .2s}}

.ranking-title>span .ui-icon{width:35px;height:35px;stroke-width:1.5}.menu-secondary .ui-icon{width:15px;height:15px;vertical-align:-3px;margin-right:3px}body:not(.touch) #touch-run{right:175px}
.ranking-tabs button{transition:transform .15s}

/* Camera control stays next to the journal; the position pin has no hit area. */
.case-actions #camera-toggle{min-height:44px;gap:7px;background:#315f56ed;border-color:#a8cabc80;color:#fff2d5;box-shadow:0 3px 0 #173f3680,0 5px 14px #14382818}
#camera-toggle[aria-pressed="true"]{background:#e6b56eed;border-color:#fff0c2;color:#573f26}
#camera-toggle kbd{margin:0 0 0 2px;padding:1px 5px;border:1px solid currentColor;border-radius:5px;opacity:.65;font-size:10px;line-height:1.3}
#camera-toggle .camera-swap{font-size:16px;opacity:.75}#camera-toggle .camera-overview-icon,#camera-toggle[aria-pressed="true"] .camera-follow-icon{display:none}#camera-toggle[aria-pressed="true"] .camera-overview-icon{display:block}
body.touch #camera-toggle kbd{display:none}body[data-camera="overview"] #crosshair{display:none}
#neng-map-pin{position:absolute;z-index:2;top:0;left:0;display:flex;align-items:center;flex-direction:column;gap:4px;pointer-events:none;will-change:transform;filter:drop-shadow(0 2px 3px #19362c60)}
#neng-map-pin span{padding:4px 9px;border-radius:9px;background:#fff1cfee;border:1px solid #fff9e6;color:#6b482b;font-size:10px;font-weight:750;letter-spacing:1px;line-height:1.2}
#neng-map-pin i{height:7px;width:7px;background:#ffc47b;border:1px solid #fff6d5;transform:rotate(45deg);border-radius:1px}
#achievement-toast{top:148px}
@media(max-height:530px){.case-actions #camera-toggle{padding:7px 9px;gap:5px}.case-actions #camera-toggle kbd{display:none}#toast{top:116px}#achievement-toast{top:126px}}
@media(max-width:600px) and (orientation:portrait){.case-actions #camera-toggle{position:absolute;right:0;top:46px;min-width:131px;justify-content:center;min-height:44px;padding:10px 12px}.case-actions #camera-toggle kbd{display:none}#toast{top:207px}#achievement-toast{top:215px}}
