/* V14: entrance depth and a single, legible card fallback at every viewport. */
.entrance-canvas .entry-black-zone{position:absolute;z-index:1;right:-4%;top:9%;width:58%;height:83%;overflow:hidden;background:#111114;clip-path:polygon(12% 0,97% 4%,100% 93%,76% 100%,0 86%,9% 47%);box-shadow:inset 18px 0 #28282b;pointer-events:none}
.entry-black-zone::before{content:"";position:absolute;inset:0;background:radial-gradient(#ffffff25 1px,transparent 1.4px) 0 0/25px 25px;opacity:.6}
.entry-black-zone::after{content:"";position:absolute;left:-3%;top:12%;width:22%;height:71%;background:#e80029;clip-path:polygon(0 0,42% 7%,100% 69%,53% 100%,0 97%)}
.entry-white-rings{position:absolute;right:-25%;top:-18%;width:117%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 21px,#f7f7f3 22px 25px,transparent 26px 51px);opacity:.66;transform:rotate(-11deg) scaleY(.78);filter:drop-shadow(8px 8px 0 #e80029)}
.entrance-canvas .entry-art{z-index:2}
.entrance-canvas .entry-copy{z-index:3}
.persona-dialog,.reveal-shell,.reveal-header,.reveal-visual,.reveal-private{min-width:0}
.reveal-header>div{min-width:0;flex:1}
.reveal-header h2{overflow-wrap:anywhere;text-wrap:balance}
.reveal-visual[data-phase=settled],.reveal-visual[data-phase=settling]{background:linear-gradient(153deg,#eb002e 0 23%,transparent 23% 72%,#bd0026 72%),radial-gradient(circle at 58% 48%,#29292e,#111114 68%)}
.reveal-visual[data-phase=settled]::before,.reveal-visual[data-phase=settling]::before{inset:auto auto -53% -20%;width:68%;aspect-ratio:1;border:0;border-radius:50%;clip-path:none;background:repeating-radial-gradient(circle,#f4f3f0 0 4px,transparent 5px 21px);opacity:.25;transform:rotate(-13deg) skew(-9deg)}
.reveal-visual[data-phase=settled]::after,.reveal-visual[data-phase=settling]::after{inset:4% -4% auto auto;width:52%;height:85%;aspect-ratio:auto;border:0;clip-path:polygon(48% 0,55% 29%,97% 7%,70% 43%,100% 63%,63% 59%,68% 100%,44% 71%,11% 94%,27% 54%,0 30%,37% 34%);background:#d8d8d6;opacity:.9;transform:none}
.reveal-visual[data-phase=settled] .reveal-front,.reveal-visual[data-phase=settling] .reveal-front{display:block;inset:0;padding:0}
.reveal-visual[data-phase=settled] #reveal-face,.reveal-visual[data-phase=settling] #reveal-face{position:absolute;left:30%;top:8%;width:auto;height:75%;max-height:none;aspect-ratio:2/3;object-fit:cover;border:6px solid #fff;box-shadow:12px 14px 0 #111,17px 19px 0 #e60030;transform:rotate(-1.4deg);z-index:4}
.reveal-visual[data-phase=settled] #reveal-figure,.reveal-visual[data-phase=settling] #reveal-figure{position:absolute;left:44%;top:auto;bottom:-3%;width:52%;height:90%;object-fit:contain;object-position:center bottom;mask-image:none;-webkit-mask-image:none;z-index:2;filter:brightness(0) saturate(100%) invert(15%) sepia(100%) saturate(7200%) hue-rotate(341deg) drop-shadow(5px 0 0 #fff) drop-shadow(-5px 0 0 #fff) drop-shadow(0 5px 0 #fff) drop-shadow(0 -5px 0 #fff) drop-shadow(11px 11px 0 #111)}
.reveal-final-arcana{position:absolute;z-index:6;top:7%;left:4%;display:grid;color:#fff;transform:rotate(-8deg);text-shadow:5px 5px 0 #111;pointer-events:none}
.reveal-final-arcana[hidden],.reveal-final-ticket[hidden]{display:none!important}
.reveal-final-arcana small{font:1000 italic clamp(15px,2vw,27px)/1 Impact,"Arial Black",sans-serif;letter-spacing:.26em}
.reveal-final-arcana b{font:1000 clamp(66px,13vw,185px)/.9 Impact,"Arial Black",sans-serif;color:#e60030;-webkit-text-stroke:3px #fff;text-shadow:7px 9px 0 #111,11px 13px 0 #fff}
.reveal-final-ticket{position:absolute;z-index:6;right:3.6%;top:5.8%;padding:.7em 1.1em;background:#fff;color:#111;box-shadow:8px 8px 0 #e60030;font:1000 italic clamp(12px,1.5vw,21px)/1 Impact,"Arial Black",sans-serif;letter-spacing:.18em;transform:rotate(6deg);white-space:nowrap}
.reveal-final-meta{left:auto;right:3%;bottom:10%;width:50%;justify-content:flex-end}
.reveal-final-meta>*{overflow-wrap:normal}
.reveal-final-english{font-size:clamp(26px,4.7vw,68px);line-height:.93;text-wrap:balance}
.reveal-final-level{font-size:clamp(30px,5vw,72px)}
.reveal-visual[data-phase=settled][data-level="2"] #reveal-figure{left:44%;top:auto;bottom:-3%;width:52%;height:90%;object-fit:contain;object-position:center bottom}
.reveal-visual[data-phase=settled][data-level="6"] #reveal-figure{mask-image:none;-webkit-mask-image:none}
.chapter,.chapter-body,.goals-map-layout,.goals-map-goals,.goals-map-board,.metric-card,.group-row,.weather-detail,.weather-average,.weather-subject-panel{min-width:0}
.chapter-label,.chapter-label strong,.goals-map-board .gm12-map-copy h3{max-width:100%;overflow-wrap:anywhere}
.weather-subject-list,.group-list,.metric-grid{max-width:100%}
@media(max-width:900px){
  .entrance-canvas .entry-black-zone{top:27%;right:-10%;width:90%;height:69%}
  .entry-white-rings{right:-20%;top:-9%;width:104%}
}
@media(max-width:650px){
  .entrance-canvas .entry-black-zone{top:43%;right:-16%;width:112%;height:54%;clip-path:polygon(14% 0,100% 4%,94% 100%,0 89%,7% 39%)}
  .entry-white-rings{right:-37%;top:-9%;width:137%;opacity:.45}
  .entrance-canvas .entry-copy{padding:4px 2px 0}
  .persona-dialog{width:calc(100% - 8px);max-height:calc(100dvh - 8px);border-width:3px;margin:auto;overflow:auto}
  .reveal-shell{border-width:3px}
  .reveal-header{padding:10px;gap:6px}
  .reveal-header h2{font-size:clamp(22px,6.5vw,36px)}
  #reveal-close{flex-basis:38px;height:38px}
  .reveal-visual{height:clamp(320px,80vw,470px);min-height:0}
  .reveal-visual[data-phase=settled] #reveal-face,.reveal-visual[data-phase=settling] #reveal-face{left:16%;top:20%;height:57%;border-width:4px;box-shadow:7px 8px 0 #111,11px 12px 0 #e60030}
  .reveal-visual[data-phase=settled] #reveal-figure,.reveal-visual[data-phase=settling] #reveal-figure,.reveal-visual[data-phase=settled][data-level="2"] #reveal-figure{left:39%;bottom:4%;width:63%;height:66%;filter:brightness(0) saturate(100%) invert(15%) sepia(100%) saturate(7200%) hue-rotate(341deg) drop-shadow(3px 0 0 #fff) drop-shadow(-3px 0 0 #fff) drop-shadow(0 3px 0 #fff) drop-shadow(0 -3px 0 #fff) drop-shadow(7px 7px 0 #111)}
  .reveal-final-arcana{top:5%;left:5%}.reveal-final-arcana b{font-size:clamp(58px,18vw,112px);-webkit-text-stroke:2px #fff}
  .reveal-final-ticket{top:5%;right:5%;font-size:clamp(8px,2.7vw,14px);letter-spacing:.08em;padding:.6em .7em}
  .reveal-final-meta{right:4%;bottom:6%;width:85%;gap:5px}
  .reveal-final-meta>*{border-width:3px}
  .reveal-final-upgrade{font-size:clamp(13px,4vw,25px)}
  .reveal-final-english{font-size:clamp(18px,5.2vw,35px)}
  .reveal-final-level{font-size:clamp(22px,7vw,43px)}
  .reveal-private{padding:13px}
  .reveal-total{padding:12px;gap:4px 8px}
  .reveal-total>strong{font-size:clamp(25px,9vw,42px)}
  .reveal-actions{padding:12px;flex-wrap:wrap}
  .reveal-actions button{flex:1 1 120px;min-height:42px}
  .gallery-grid{gap:11px 9px}
  .gallery-tile{padding:6px}
  .gallery-tile strong{font-size:clamp(13px,3.6vw,19px)}
  .metric-grid.g7e-settlement .settle-card{min-width:0}
  .metric-grid.g7e-settlement .settle-number,.metric-grid.g7e-settlement .settle-goal .settle-number{font-size:clamp(31px,9vw,52px);letter-spacing:-.07em;white-space:normal;overflow-wrap:anywhere}
  .metric-grid.g7e-settlement .settle-label{font-size:clamp(11px,3vw,14px);max-width:100%;white-space:normal}
  .group-row>summary,.weather-average-grid{min-width:0}
  .weather-subject-panel,.goals-map-board{overflow-wrap:anywhere}
}
@media(max-width:390px){.reveal-visual[data-phase=settled] #reveal-face{left:11%;height:54%}.reveal-final-meta{width:91%}.reveal-final-english{font-size:clamp(16px,5vw,23px)}.reveal-radar-wrap{grid-template-columns:1fr}.reveal-axes{grid-template-columns:repeat(2,minmax(0,1fr))}}
