/* Camera results: a readable score console between hand-sized action targets. */
dialog.result-modal.camera-result{
  --camera-panel:#071528eb;
  --camera-edge:#7de8ff9c;
  overflow:auto;
  background:linear-gradient(90deg,#020817d6 0%,#04132446 24%,#04132438 76%,#020817d6 100%),linear-gradient(0deg,#020817e6,transparent 26%,#0208178f);
}
dialog.result-modal.camera-result .result-panel{max-width:none;min-height:100dvh;padding:clamp(16px,2vw,30px) clamp(18px,3.5vw,72px) 100px}
dialog.result-modal.camera-result .result-topline{min-height:60px}
dialog.result-modal.camera-result .result-layout{
  display:grid;grid-template-columns:minmax(170px,1fr) minmax(350px,560px) minmax(170px,1fr);
  grid-template-rows:auto minmax(0,1fr);gap:0;align-items:start;padding:clamp(18px,3vh,34px) 0 0;
}
dialog.result-modal.camera-result .result-art{grid-column:1;grid-row:1/3;width:min(14vw,190px);max-width:190px;margin:0;justify-self:start;align-self:start;transform:rotate(-4deg)}
dialog.result-modal.camera-result .result-art-frame{max-height:min(28vh,270px);border-width:2px;border-radius:16px;box-shadow:0 0 0 2px #092844,0 0 27px #41d9ff61,0 20px 36px #0009}
dialog.result-modal.camera-result .result-camera-stage{grid-column:2;grid-row:1/3;display:block;min-height:0;height:100%;background:none;filter:none;pointer-events:none}
dialog.result-modal.camera-result .result-lead{grid-column:2;grid-row:1;align-self:start;z-index:2;pointer-events:none}
dialog.result-modal.camera-result .result-intro{margin:0;padding:18px 22px 4px;background:var(--camera-panel);border:1px solid var(--camera-edge);border-bottom:0;border-radius:24px 24px 0 0;box-shadow:0 -8px 38px #42d2ff20}
dialog.result-modal.camera-result h2{font-size:clamp(46px,4.5vw,82px);line-height:.88;text-shadow:0 4px 18px #000,0 0 30px #43d4ff4a}
dialog.result-modal.camera-result h2 span{color:#63dcff}
dialog.result-modal.camera-result .result-description{padding:6px 24px 14px;margin:0;background:var(--camera-panel);border-inline:1px solid var(--camera-edge);font-size:clamp(14px,1vw,18px);color:#cde9f6}
dialog.result-modal.camera-result .result-data{
  grid-column:2;grid-row:2;align-self:start;width:100%;margin:0;padding:clamp(16px,1.6vw,26px);
  max-height:min(63vh,calc(100dvh - 355px));min-height:0;overflow:auto;
  background:linear-gradient(160deg,#09213aef,#061326f5);border:1px solid var(--camera-edge);border-top:1px solid #58ccec4d;
  border-radius:0 0 24px 24px;box-shadow:0 20px 55px #000a,0 0 38px #36cfff2b;
  scrollbar-width:thin;scrollbar-color:#58d9f4 #132b3f;
}
.result-scroll-controls{display:none}
dialog.result-modal.camera-result .result-scroll-controls{position:sticky;z-index:4;top:8px;float:right;display:flex;flex-direction:column;gap:8px;width:0;height:0;overflow:visible;pointer-events:none}
dialog.result-modal.camera-result .result-scroll-controls button{position:relative;right:clamp(52px,4vw,70px);flex:none;display:grid;place-items:center;width:clamp(52px,4vw,70px);height:clamp(52px,4vw,70px);border:1px solid #86e6ffb0;border-radius:50%;background:radial-gradient(circle at 38% 25%,#24627bef,#08263ef5 70%);color:#e9fbff;font:900 clamp(28px,2.5vw,40px) var(--display);box-shadow:0 6px 25px #0009,0 0 24px #36dfff6b;pointer-events:auto}
dialog.result-modal.camera-result .result-scroll-controls button.gesture-button{background-image:linear-gradient(0deg,#43d2ff var(--gesture-fill),transparent var(--gesture-fill))!important;outline:3px solid #d9f9ff;outline-offset:3px}
dialog.result-modal.camera-result .result-scroll-controls button:hover,dialog.result-modal.camera-result .result-scroll-controls button:focus-visible{filter:brightness(1.25);transform:scale(1.05)}
dialog.result-modal.camera-result .result-core{text-align:center;padding-bottom:9px}
dialog.result-modal.camera-result .result-score-kicker{font-size:clamp(12px,1vw,16px);letter-spacing:.18em}
dialog.result-modal.camera-result .result-score{font-size:clamp(68px,6vw,108px);padding-top:4px;line-height:.85;font-variant-numeric:tabular-nums}
dialog.result-modal.camera-result .result-score-label{margin-top:8px;font-size:12px;letter-spacing:.15em}
dialog.result-modal.camera-result .result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;margin:10px 0 0;padding:13px 0}
dialog.result-modal.camera-result .result-stat{padding:10px 8px;border:1px solid #91e4ff3f;border-radius:13px;background:#0d2e4973;min-width:0}
dialog.result-modal.camera-result .result-stat::before{margin-bottom:3px;font-size:17px}
dialog.result-modal.camera-result .result-stat span{font-size:clamp(10px,.85vw,13px);line-height:1.15;overflow-wrap:anywhere}
dialog.result-modal.camera-result .result-stat strong{font-size:clamp(22px,1.8vw,31px);line-height:1.05;overflow-wrap:anywhere}
dialog.result-modal.camera-result .result-bonuses{margin-top:9px;padding:10px 0 0}
dialog.result-modal.camera-result .result-bonus{padding:5px 8px;gap:10px}
dialog.result-modal.camera-result .result-bonus span{font-size:clamp(13px,1.05vw,18px)}
dialog.result-modal.camera-result .result-bonus strong{font-size:clamp(22px,1.9vw,33px)}
dialog.result-modal.camera-result .result-achievement{max-width:100%;margin:11px 0 0}
dialog.result-modal.camera-result .result-highscore{margin-top:10px;padding:10px 13px;gap:12px}
dialog.result-modal.camera-result .result-record-note{margin-top:8px;padding:9px 13px}
dialog.result-modal.camera-result .result-community{width:100%;margin:12px 0 0;padding-top:12px;border-top:1px solid #84dfff55;text-align:center}
dialog.result-modal.camera-result .result-community-outcome strong{font-size:clamp(18px,1.5vw,25px)}
dialog.result-modal.camera-result .result-community-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;pointer-events:auto}
dialog.result-modal.camera-result .result-community-actions button{min-width:0;min-height:58px;padding:8px 10px;border-radius:13px;font-size:clamp(14px,1.1vw,18px);line-height:1.05}
dialog.result-modal.camera-result .result-actions{position:fixed;z-index:5;inset:0;width:auto;margin:0;display:block;transform:none;pointer-events:none}
dialog.result-modal.camera-result .result-actions button{
  position:absolute;top:50%;width:clamp(148px,13.4vw,230px);height:clamp(148px,13.4vw,230px);min-height:0;aspect-ratio:1;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:22px 16px;
  border:0;border-radius:50%;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 38% 25%,#24627bbd,#08263edc 66%,#041627f2);
  color:#f0fbff;font-size:clamp(19px,1.55vw,28px);line-height:1.03;text-align:center;white-space:normal;
  box-shadow:0 14px 48px #00101ed1,0 0 38px #4ce0ff80,inset 0 6px 17px #c1f6ff32;
  transform:translateY(-50%);pointer-events:auto;transition:transform .2s,filter .2s,box-shadow .2s;
}
dialog.result-modal.camera-result .result-actions button::before{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:var(--gesture-fill,0%);background:linear-gradient(180deg,#76e7ff9c,#1caceee6);pointer-events:none;transition:height .09s linear}
dialog.result-modal.camera-result .result-actions #again-btn{left:clamp(16px,4vw,80px);background:radial-gradient(circle at 38% 25%,#fff,#f5fbff 60%,#d2eafa);color:#08263f;box-shadow:0 14px 48px #00101ed1,0 0 45px #eefbffb8,inset 0 7px 20px #fff}
dialog.result-modal.camera-result .result-actions #again-btn::before{background:linear-gradient(180deg,#fff,#d9f3ff)}
dialog.result-modal.camera-result .result-actions #result-exit{left:auto;right:clamp(16px,4vw,80px)}
dialog.result-modal.camera-result .result-actions #result-save{
  display:flex!important;left:50%;right:auto;top:auto;bottom:20px;width:min(330px,42vw);height:72px;min-height:72px;
  flex-direction:row;gap:12px;padding:10px 20px;border-radius:999px;font-size:clamp(17px,1.35vw,22px);
  background:radial-gradient(circle at 38% 25%,#24627bbd,#08263edc 66%,#041627f2);color:#d9f7ff;box-shadow:0 14px 35px #00101ed1,0 0 25px #35cfff70,inset 0 6px 17px #c1f6ff32;
  transform:translateX(-50%);
}
dialog.result-modal.camera-result .result-actions button.gesture-button{background-image:none!important;outline:3px solid #aaf3ff;outline-offset:5px}
dialog.result-modal.camera-result .result-actions button span{font-size:1.25em;line-height:1}
dialog.result-modal.camera-result .result-actions button:hover,dialog.result-modal.camera-result .result-actions button:focus-visible{transform:translateY(-50%) scale(1.06);filter:brightness(1.14)}
dialog.result-modal.camera-result .result-actions #result-save:hover,dialog.result-modal.camera-result .result-actions #result-save:focus-visible{transform:translateX(-50%) scale(1.04)}
dialog.result-modal.camera-result .dialog-gesture-hint{position:fixed;z-index:3;top:115px;right:clamp(18px,4vw,80px);left:auto;bottom:auto;width:min(260px,20vw);margin:0!important;text-align:right;font-size:12px!important;color:#d7f3ff;text-shadow:0 2px 12px #000}
@media(max-width:1100px) and (min-width:761px){
  dialog.result-modal.camera-result .result-layout{grid-template-columns:minmax(150px,1fr) minmax(330px,500px) minmax(150px,1fr)}
  dialog.result-modal.camera-result .result-art{display:none}
  dialog.result-modal.camera-result .result-actions button{width:clamp(130px,15vw,170px);height:clamp(130px,15vw,170px);font-size:clamp(17px,1.8vw,22px);padding:16px 11px}
  dialog.result-modal.camera-result .result-scroll-controls button{width:52px;height:52px;right:52px}
  dialog.result-modal.camera-result .result-actions #again-btn{left:15px}
  dialog.result-modal.camera-result .result-actions #result-exit{right:15px}
}
@media(max-height:760px) and (min-width:761px){
  dialog.result-modal.camera-result .result-panel{padding-top:12px}
  dialog.result-modal.camera-result .result-layout{padding-top:10px}
  dialog.result-modal.camera-result .result-intro{padding-top:10px}
  dialog.result-modal.camera-result h2{font-size:clamp(39px,4vw,65px)}
  dialog.result-modal.camera-result .result-description{padding-bottom:8px}
  dialog.result-modal.camera-result .result-data{max-height:calc(100dvh - 285px)}
  dialog.result-modal.camera-result .result-actions button{top:46%}
  dialog.result-modal.camera-result .result-actions #result-save{top:auto;bottom:14px;height:60px;min-height:60px}
  dialog.result-modal.camera-result .dialog-gesture-hint{display:none}
}
@media(max-width:760px){
  dialog.result-modal.camera-result .result-panel{padding:12px 14px 110px}
  dialog.result-modal.camera-result .result-layout{display:flex;flex-direction:column;gap:0;padding:12px 0 0}
  dialog.result-modal.camera-result .result-art{display:none}
  dialog.result-modal.camera-result .result-camera-stage{display:none}
  dialog.result-modal.camera-result .result-lead{order:0;width:100%;align-self:stretch}
  dialog.result-modal.camera-result .result-data{order:1;width:100%;max-height:none;overflow:visible;margin:0;padding:14px}
  dialog.result-modal.camera-result h2{font-size:clamp(40px,9vw,60px)}
  dialog.result-modal.camera-result .result-score{font-size:clamp(66px,15vw,94px)}
  dialog.result-modal.camera-result .result-actions{position:fixed;inset:auto 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:9px 8px max(9px,env(safe-area-inset-bottom));background:#041021f2;border-top:1px solid #65dcff68}
  dialog.result-modal.camera-result .result-actions button,dialog.result-modal.camera-result .result-actions #result-save{position:static;top:auto;left:auto;right:auto;bottom:auto;width:100%;height:auto;min-height:64px;aspect-ratio:auto;transform:none;padding:8px 5px;border-width:1px;border-radius:14px;font-size:clamp(12px,3vw,16px);gap:2px;box-shadow:none}
  dialog.result-modal.camera-result .result-actions #result-exit{grid-column:auto}
  dialog.result-modal.camera-result .result-actions #result-save{grid-column:auto;min-height:64px}
  dialog.result-modal.camera-result .result-actions button:hover,dialog.result-modal.camera-result .result-actions button:focus-visible,dialog.result-modal.camera-result .result-actions #result-save:hover,dialog.result-modal.camera-result .result-actions #result-save:focus-visible{transform:scale(1.02)}
  dialog.result-modal.camera-result .dialog-gesture-hint{display:none}
}
@media(prefers-reduced-motion:reduce){dialog.result-modal.camera-result .result-actions button{transition:none}}

/* Camera result only: clean overlays and direct, hand-sized scrolling. */
dialog.result-modal.camera-result :is(.result-panel,.result-topline>span,.result-art-frame,.result-intro,.result-description,.result-data,.result-stats,.result-stat,.result-bonuses,.result-bonus,.result-achievement,.result-highscore,.result-record-note,.result-community,.result-community-actions button){border:0!important}
dialog.result-modal.camera-result :is(.result-intro,.result-data){box-shadow:none}
dialog.result-modal.camera-result .result-scroll-controls{position:fixed;z-index:8;right:clamp(22px,2.2vw,42px);bottom:clamp(22px,3vh,42px);top:auto;float:none;width:auto;height:auto;display:flex;flex-direction:column;gap:14px;overflow:visible;pointer-events:none}
dialog.result-modal.camera-result .result-scroll-controls button{position:relative;right:auto;width:clamp(76px,6.5vw,104px);height:clamp(76px,6.5vw,104px);border:0;background:radial-gradient(circle at 38% 25%,#2c7895f2,#08263ef5 70%);font-size:clamp(38px,3.4vw,56px);box-shadow:0 12px 35px #00101ed1,0 0 38px #4ce0ff91,inset 0 5px 15px #c1f6ff38}
dialog.result-modal.camera-result .result-scroll-controls button.gesture-button{background:radial-gradient(circle at 38% 25%,#6ce6ff,#12658a 72%)!important;outline:5px solid #e8fdff;outline-offset:5px;transform:scale(1.08)}
@media(max-width:760px){dialog.result-modal.camera-result .result-scroll-controls{display:none}}
