@font-face{font-family:"JJDisplayLocal";src:url("./assets/fonts/jj-display.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"JJBodyLocal";src:url("./assets/fonts/jj-body-regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"JJBodyLocal";src:url("./assets/fonts/jj-body-semibold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"JJBodyLocal";src:url("./assets/fonts/jj-body-bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}

:root{
  --ink:#180c08;
  --ink-soft:#2d1710;
  --wood:#4d2918;
  --wood-dark:#26130d;
  --paper:#e8c98f;
  --paper-light:#f3ddb0;
  --gold:#e4aa54;
  --gold-light:#f7d58a;
  --red:#8d342b;
  --red-light:#d87662;
  --line:rgba(239,190,105,.42);
  --shadow:0 20px 50px rgba(0,0,0,.5);
  --display:"JJDisplayLocal","Peralta",Georgia,serif;
  --body:"JJBodyLocal","Bitter",Georgia,serif;
}

*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#0d0705;color:var(--paper-light);font-family:var(--body)}
body{overflow:hidden}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
.page-shell{min-height:100svh;display:grid;place-items:center;background:#0d0705}

.lasso-game{width:min(100vw,1920px);height:100svh;min-height:560px;max-height:1080px;overflow:hidden;background:var(--ink)}
.lasso-game:fullscreen{width:100vw;height:100dvh;min-height:0;max-width:none;max-height:none}
.scene{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate;user-select:none;touch-action:manipulation;background:#925333}
.scene__background{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}
.scene__vignette{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(13,7,5,.46),transparent 23%,transparent 72%,rgba(13,7,5,.38)),radial-gradient(circle at 50% 46%,transparent 45%,rgba(13,7,5,.44) 100%)}
.scene__dust{position:absolute;z-index:3;bottom:4%;left:-40%;width:40vw;height:12vw;min-height:64px;border-radius:50%;background:radial-gradient(ellipse,rgba(232,177,106,.38),transparent 70%);filter:blur(16px);opacity:.25;pointer-events:none;animation:dustDrift 17s linear infinite}
.scene__dust--two{bottom:20%;animation-delay:-9s;animation-duration:23s;opacity:.14}

/* Gameplay */
.spawn-zone{position:absolute;z-index:10;inset:12% 3.5% 5%;pointer-events:none}
.target{position:absolute;width:clamp(108px,9.4vw,184px);aspect-ratio:.74;padding:0;border:0;background:transparent;transform-origin:50% 100%;pointer-events:auto;cursor:crosshair;filter:drop-shadow(0 12px 8px rgba(0,0,0,.5));animation:targetIn .18s cubic-bezier(.2,.8,.2,1) both}
.target img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;transform:scale(var(--slot-scale,1));transform-origin:50% 100%}
.target--jesse{width:clamp(100px,8.6vw,170px)}
.target--rose{width:clamp(106px,8.9vw,176px)}
.target.is-caught{pointer-events:none;animation:caughtPull .42s ease forwards}
.target.is-wrong{pointer-events:none;animation:wrongCatch .46s ease forwards}
.target.is-missed{pointer-events:none;animation:targetOut .28s ease forwards}

.lasso-layer{position:absolute;inset:0;z-index:28;pointer-events:none;overflow:hidden}
.lasso-line{position:absolute;height:5px;border-radius:999px;background:linear-gradient(90deg,#714526,#d7aa6d 45%,#80502f);box-shadow:0 2px 3px #0008;transform-origin:0 50%}
.lasso-ring{position:absolute;width:82px;height:54px;border:6px solid #c99b62;border-radius:50%;box-shadow:0 0 0 2px #704526 inset,0 4px 5px #0008;transform-origin:center;opacity:0}
.lasso-ring.success{border-color:#dfb873}.lasso-ring.wrong{border-color:#a84a40}
.lasso-swish{position:absolute;width:44px;height:44px;border:3px solid #ddb36f;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;opacity:0}
.feedback{position:absolute;z-index:32;pointer-events:none;transform:translate(-50%,-50%);text-align:center;font-family:var(--body);font-weight:900;text-shadow:0 3px 0 #3b1a10,0 0 14px #000;animation:feedbackPop .78s ease forwards}
.feedback__points{display:block;color:var(--gold-light);font-family:var(--display);font-size:clamp(1.35rem,2.4vw,2.2rem)}
.feedback__label{display:block;margin-top:.1rem;color:#f1ddb7;font-size:clamp(.62rem,.9vw,.8rem);letter-spacing:.12em}
.feedback.wrong .feedback__points{color:#ef8c78}

/* HUD */
.hud{position:absolute;z-index:40;inset:0 0 auto;min-height:96px;padding:clamp(12px,2vw,24px) clamp(18px,3vw,44px);display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:start;pointer-events:none;background:linear-gradient(180deg,rgba(19,9,6,.94),rgba(19,9,6,.56) 58%,transparent)}
.hud__block{display:flex;flex-direction:column;line-height:1}
.hud__block--right{align-items:flex-end}
.hud__label,.hud__kicker{color:#d19a50;font-size:clamp(.62rem,.9vw,.84rem);font-weight:700;letter-spacing:.17em}
.hud strong{color:var(--gold-light);font-family:var(--display);font-size:clamp(1.55rem,3vw,2.75rem);text-shadow:0 3px #3b1b10}
.hud__brand{text-align:center}
.hud__kicker{display:block;font-size:clamp(.56rem,.75vw,.72rem)}
.hud__title{display:block;margin-top:.16rem;color:#f1c66d;font-family:var(--display);font-size:clamp(1rem,1.7vw,1.5rem);letter-spacing:.07em;text-shadow:0 2px #35180e}
.streak{position:absolute;z-index:43;top:92px;left:50%;opacity:0;transform:translateX(-50%);color:var(--gold-light);font-weight:900;text-shadow:0 3px #3a1b10,0 0 14px #000;pointer-events:none}
.streak.show{animation:streakPop .72s ease}

.lang-switch,.sound-toggle{position:absolute;z-index:150;bottom:clamp(14px,2vw,28px);min-height:42px;border:1px solid #b97d3c;border-radius:2px;background:rgba(31,15,10,.9);color:#edc77e;padding:.65rem .85rem;font-family:var(--body);font-size:.7rem;font-weight:900;letter-spacing:.07em;text-decoration:none;cursor:pointer;box-shadow:0 5px 16px rgba(0,0,0,.28);transition:background .15s,color .15s,transform .15s}
.lang-switch{left:clamp(14px,2vw,30px);min-width:44px;text-align:center}
.sound-toggle{right:clamp(14px,2vw,30px)}
.lang-switch:hover,.sound-toggle:hover{background:#422519;color:#ffe0a0}
.lang-switch:active,.sound-toggle:active{transform:translateY(1px)}
.scene--playing .lang-switch{opacity:0;pointer-events:none}

/* Shared overlays */
.overlay{position:absolute;inset:0;z-index:100;display:grid;place-items:center;padding:clamp(8px,2vw,20px);background:radial-gradient(circle at 50% 44%,rgba(75,42,24,.32),rgba(9,4,3,.93) 78%);backdrop-filter:blur(3px) saturate(.85);-webkit-backdrop-filter:blur(3px) saturate(.85);opacity:0;visibility:hidden;transition:opacity .2s ease}
.overlay--visible{opacity:1;visibility:visible}
.briefing-overlay{z-index:120}.result-overlay{z-index:125}.rotate-overlay{z-index:180}.loader-overlay{z-index:220}

.briefing-panel,.result-panel,.loader-card,.rotate-card{position:relative;border:2px solid #a86c31;border-radius:4px;background:linear-gradient(145deg,rgba(67,35,20,.98),rgba(37,18,12,.99));box-shadow:inset 0 0 0 5px #2a150e,inset 0 0 0 7px rgba(224,165,76,.25),var(--shadow)}
.briefing-panel::before,.result-panel::before,.loader-card::before,.rotate-card::before{content:"";position:absolute;inset:10px;border:1px solid rgba(232,181,91,.22);pointer-events:none}
.panel-safe{position:relative;z-index:1;min-width:0;min-height:0;color:var(--paper-light)}
.briefing-panel{width:min(94vw,1080px);height:min(92dvh,700px);overflow:hidden}
.briefing-safe{height:100%;padding:clamp(22px,3.3vw,44px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(12px,2vh,22px)}
.result-panel{width:min(92vw,660px)}
.result-safe{padding:clamp(28px,4.5vw,52px);display:grid;justify-items:center;gap:8px;text-align:center}
.loader-card,.rotate-card{width:min(90vw,600px)}
.loader-safe,.rotate-safe{padding:clamp(32px,6vw,64px);display:grid;justify-items:center;text-align:center}

/* Sheriff briefing */
.briefing-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center}
.wood-panel__eyebrow,.result-kicker{color:#ce9349;font-size:clamp(.58rem,.72vw,.7rem);font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.briefing-head h1{margin:4px 0 0;color:var(--gold-light);font-family:var(--display);font-size:clamp(1.6rem,3vw,3rem);line-height:.95;letter-spacing:-.02em;text-shadow:0 3px #35190f}
.briefing-head h1 span{color:#fff0bc}
.briefing-rule{margin:9px 0 0;color:#ead09a;font-size:clamp(.8rem,1vw,1rem)}
.briefing-rule strong{color:#f1a18d}
.briefing-time{display:grid;place-items:center;min-width:118px;padding:10px 14px;border:1px solid var(--line);background:rgba(22,10,7,.45)}
.briefing-time span{color:#ca9148;font-size:.6rem;font-weight:700;letter-spacing:.17em}
.briefing-time strong{margin-top:4px;color:var(--gold-light);font-family:var(--display);font-size:1.35rem;white-space:nowrap}

.wanted-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1.2vw,14px);min-height:0}
.wanted-card{position:relative;min-width:0;min-height:150px;display:grid;grid-template-rows:28px minmax(90px,1fr) 44px;overflow:hidden;border:1px solid #5b351f;border-radius:2px;background:linear-gradient(145deg,#ebd19d,#c7955e);box-shadow:0 8px 18px rgba(0,0,0,.25),inset 0 0 25px rgba(82,42,18,.12);transform:rotate(var(--tilt,-.35deg))}
.wanted-card:nth-child(even){--tilt:.35deg}
.wanted-card--jesse{outline:2px solid rgba(229,174,77,.55)}
.wanted-card--rose{background:linear-gradient(145deg,#e4c49a,#bd8172);outline:2px solid rgba(153,54,43,.6)}
.wanted-card__tag{display:grid;place-items:center;padding:0 5px;background:#422519;color:#efc574;border-bottom:1px solid #2a140c;font-size:clamp(.46rem,.6vw,.58rem);font-weight:900;letter-spacing:.07em;text-align:center;white-space:nowrap}
.wanted-card--jesse .wanted-card__tag{background:#633817}.wanted-card--rose .wanted-card__tag{background:#792e27;color:#ffd2c3}
.wanted-card__figure{position:relative;min-height:0;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;padding:5px 7px 0;background:radial-gradient(circle at 50% 35%,rgba(255,248,220,.36),transparent 62%)}
.wanted-card__figure::after{content:"";position:absolute;inset:auto 12% 0;height:14%;background:radial-gradient(ellipse,rgba(48,21,11,.26),transparent 68%);filter:blur(4px)}
.wanted-card__figure img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 7px 5px rgba(46,20,9,.32))}
.wanted-card__footer{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:5px 8px;border-top:1px solid rgba(68,34,17,.4);background:rgba(246,222,174,.78);color:#31190e}
.wanted-card__footer span{min-width:0}.wanted-card__footer b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.58rem,.72vw,.72rem);letter-spacing:.025em}
.wanted-card__footer>strong{flex:none;color:#5a2b12;font-family:var(--display);font-size:clamp(1rem,1.45vw,1.4rem)}
.wanted-card--rose .wanted-card__footer>strong{color:#8c261d}

.briefing-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}
.briefing-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.briefing-hint{color:#dec08a;font-size:clamp(.68rem,.8vw,.8rem);line-height:1.3}
.briefing-hint span{display:inline-grid;place-items:center;width:21px;height:21px;margin-right:5px;border:1px solid #bd8241;border-radius:50%;color:#e2a95d;font-size:.58rem;vertical-align:middle}
.western-btn{min-height:44px;border:2px solid #2c160c;border-radius:2px;padding:.75rem 1.15rem;background:#3c2418;color:#efd094;font-family:var(--body);font-size:.75rem;font-weight:900;letter-spacing:.065em;cursor:pointer;box-shadow:0 4px 0 #1e0e08;transition:transform .1s,filter .1s,background .1s}
.western-btn--primary{min-width:160px;background:linear-gradient(#f0bd61,#c88436);color:#1b0f09}
.western-btn--secondary{border-color:#a66e36}
.western-btn--return{display:inline-flex;align-items:center;justify-content:center;border-color:rgba(204,145,69,.72);background:rgba(32,16,10,.78);color:#e7c481;text-decoration:none}
.western-btn:hover{filter:brightness(1.1)}
.western-btn:active{transform:translateY(2px);box-shadow:0 2px 0 #1e0e08}

/* Result report */
.result-safe::before{content:"";position:absolute;inset:20px;background:radial-gradient(ellipse at center,rgba(230,177,86,.08),transparent 70%);pointer-events:none}
.result-safe>*{position:relative}
.result-rank{color:var(--gold-light);font-family:var(--display);font-size:clamp(1.2rem,2.2vw,1.75rem);letter-spacing:.05em;text-shadow:0 2px #35190f}
.result-score-main{width:min(100%,430px);padding:8px 10px;border-block:1px solid rgba(219,164,79,.2)}
.result-score-main span,.result-stats span{display:block;color:#c9924b;font-size:.58rem;font-weight:700;letter-spacing:.17em}
.result-score-main strong{display:block;margin-top:3px;color:#ffe09a;font-family:var(--display);font-size:clamp(3.2rem,7vw,5.2rem);line-height:.9;text-shadow:0 3px #35190f}
.result-stats{display:flex;align-items:center;justify-content:center;gap:20px}
.result-stats div{min-width:86px}.result-stats strong{display:block;margin-top:3px;color:#ecd096;font-family:var(--display);font-size:1.1rem}
.result-stats i{width:1px;height:28px;background:rgba(207,151,74,.32)}
.quote{margin:5px 0 9px;color:#dfc08a;font-size:.78rem;font-style:italic;line-height:1.3}
.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.result-panel .western-btn{min-width:150px;font-size:.67rem;padding:.7rem .9rem}
.share-status{min-height:1em;margin:2px 0 0;color:#d7b87f;font-size:.66rem}

/* Loader and rotate */
.loader-seal{width:52px;height:52px;display:grid;place-items:center;margin-bottom:9px;border:2px solid #d0a054;border-radius:50%;background:#6c3b1f;color:#f4cf7d;font-family:var(--display);box-shadow:0 4px 12px #0006,inset 0 0 12px #2b1209}
.loader-card__brand{color:#c88d45;font-size:.58rem;font-weight:900;letter-spacing:.2em}
.loader-card__title{margin:7px 0 5px;color:var(--gold-light);font-family:var(--display);font-size:clamp(1.35rem,3vw,2rem)}
.loader-card p,.rotate-card p{margin:0 auto 14px;max-width:390px;color:#e1c48d;font-size:clamp(.72rem,1vw,.84rem);line-height:1.35}
.loader-bar{width:min(100%,360px);height:10px;border:1px solid #1e0e09;background:#130906;box-shadow:inset 0 2px 6px #0008;overflow:hidden}
.loader-bar span{display:block;width:0;height:100%;background:linear-gradient(90deg,#965a2f,#e6b55c,#c27c3d);transition:width .18s}
.loader-footer{width:min(100%,360px);margin-top:6px;display:flex;justify-content:space-between;color:#ad7c43;font-size:.48rem;letter-spacing:.16em}.loader-percent{color:#efc878;font-size:.65rem}
.phone-rotate{position:relative;width:104px;height:78px;margin-bottom:10px}.phone-rotate__device{position:absolute;left:50%;top:50%;width:34px;height:60px;border:4px solid #e6bd72;border-radius:7px;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #512b19;animation:phoneTurn 1.8s ease-in-out infinite}.phone-rotate__arrow{position:absolute;right:4px;top:8px;color:#e8b55a;font-size:2rem;transform:rotate(-28deg)}
.rotate-card h2{margin:6px 0;color:var(--gold-light);font-family:var(--display);font-size:clamp(1.45rem,3vw,2.1rem)}

button:focus-visible,a:focus-visible{outline:3px solid #ffe29c;outline-offset:4px}
.target:focus-visible{outline-offset:1px;border-radius:45%}

@keyframes targetIn{from{transform:translateY(34px) scale(.72);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
@keyframes targetOut{to{transform:translateY(26px) scale(.92);opacity:0}}
@keyframes caughtPull{30%{transform:scale(1.08) rotate(-3deg)}to{transform:translateY(38px) scale(.62) rotate(8deg);opacity:0}}
@keyframes wrongCatch{25%{transform:translateX(-8px) rotate(-2deg)}50%{transform:translateX(8px) rotate(2deg)}75%{transform:translateX(-4px)}to{transform:translateY(20px);opacity:0}}
@keyframes feedbackPop{0%{opacity:0;transform:translate(-50%,-35%) scale(.7)}20%{opacity:1;transform:translate(-50%,-58%) scale(1.1)}to{opacity:0;transform:translate(-50%,-105%) scale(.92)}}
@keyframes streakPop{0%{opacity:0;transform:translate(-50%,-6px) scale(.8)}25%{opacity:1;transform:translate(-50%,0) scale(1.05)}to{opacity:0;transform:translate(-50%,-16px) scale(.95)}}
@keyframes dustDrift{to{transform:translateX(160vw)}}
@keyframes phoneTurn{0%,18%{transform:translate(-50%,-50%) rotate(0)}58%,82%{transform:translate(-50%,-50%) rotate(90deg)}to{transform:translate(-50%,-50%) rotate(0)}}

/* Lower laptop screens */
@media (max-height:760px) and (min-width:721px){
  .lasso-game{min-height:0}
  .briefing-panel{width:min(94vw,calc(92dvh * 1.92),1080px);height:min(92dvh,700px)}
  .briefing-safe{padding:24px 30px;gap:10px;grid-template-rows:auto minmax(0,1fr) auto}
  .briefing-head h1{font-size:clamp(1.35rem,2.6vw,2.2rem)}
  .briefing-rule{margin-top:5px}.wanted-card{min-height:125px;grid-template-rows:22px minmax(74px,1fr) 36px}
  .result-safe{padding:28px 38px;gap:4px}.result-score-main strong{font-size:clamp(2.7rem,6vw,4rem)}
}

/* Touch phones in landscape */
@media (pointer:coarse) and (orientation:landscape) and (max-height:600px){
  .lasso-game{width:100vw;height:100dvh;min-height:0;max-height:none}
  .hud{min-height:62px;padding:6px max(14px,env(safe-area-inset-right)) 11px max(14px,env(safe-area-inset-left))}
  .hud__label{font-size:.55rem}.hud strong{font-size:clamp(1.2rem,4.5vh,1.75rem)}.hud__kicker{font-size:.48rem}.hud__title{font-size:clamp(.78rem,3.2vh,1rem)}
  .spawn-zone{inset:9% 2% 2%}.target{width:clamp(78px,12vw,126px)}.target--jesse{width:clamp(72px,10.8vw,116px)}.target--rose{width:clamp(75px,11.2vw,120px)}
  .streak{top:60px;font-size:.8rem}.lang-switch,.sound-toggle{min-height:36px;bottom:max(8px,env(safe-area-inset-bottom));font-size:.58rem;padding:.42rem .55rem}.lang-switch{left:max(10px,env(safe-area-inset-left))}.sound-toggle{right:max(10px,env(safe-area-inset-right))}
  .overlay{padding:max(5px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
  .briefing-panel{width:min(96vw,920px);max-height:96dvh}.briefing-safe{padding:14px 20px;grid-template-rows:auto minmax(0,1fr) auto;gap:5px}
  .briefing-head{gap:10px}.wood-panel__eyebrow{font-size:.46rem}.briefing-head h1{font-size:clamp(1rem,4.2vh,1.35rem)}.briefing-rule{margin-top:3px;font-size:.62rem}.briefing-time{min-width:82px;padding:4px 7px}.briefing-time span{font-size:.42rem}.briefing-time strong{font-size:.82rem}
  .wanted-grid{gap:5px}.wanted-card{min-height:0;grid-template-rows:17px minmax(48px,1fr) 25px}.wanted-card__tag{font-size:clamp(.34rem,1.25vh,.43rem)}.wanted-card__figure{padding-top:1px}.wanted-card__footer{padding:2px 4px}.wanted-card__footer b{font-size:.43rem}.wanted-card__footer>strong{font-size:.76rem}
  .briefing-actions{justify-content:flex-start;gap:9px}.briefing-controls{gap:7px}.briefing-hint{font-size:.56rem}.briefing-hint span{width:16px;height:16px}.western-btn{min-height:36px;padding:.42rem .65rem;font-size:.56rem}.western-btn--primary{min-width:104px}.western-btn--return{padding-inline:.55rem}
  .result-panel{width:min(92vw,650px);max-height:94dvh;overflow:hidden}.result-safe{padding:clamp(16px,4vh,24px) clamp(24px,5vw,38px);gap:3px}.result-kicker{font-size:.5rem}.result-rank{font-size:clamp(.95rem,3.8vh,1.2rem)}.result-score-main{padding:4px 8px}.result-score-main span,.result-stats span{font-size:.46rem}.result-score-main strong{font-size:clamp(2.5rem,10vh,3.5rem)}.result-stats{gap:14px}.result-stats div{min-width:68px}.result-stats strong{font-size:.82rem}.result-stats i{height:20px}.quote{max-width:360px;margin:3px 0 6px;font-size:.62rem}.result-panel .western-btn{min-width:125px;min-height:40px;padding:.48rem .68rem;font-size:.56rem}.share-status{font-size:.52rem}
  .loader-card,.rotate-card{width:min(76vw,540px)}.loader-safe,.rotate-safe{padding:18px 30px}.loader-seal{width:38px;height:38px;margin-bottom:4px}.loader-card__title{margin:3px 0;font-size:1rem}.loader-card p,.rotate-card p{margin-bottom:7px;font-size:.56rem}.loader-bar{height:8px}.phone-rotate{transform:scale(.7);margin:-10px 0 -7px}.rotate-card h2{font-size:1rem}
}

/* Portrait is an orientation-gate state on phones */
@media (max-width:720px) and (orientation:portrait){
  .lasso-game{height:100dvh;min-height:0;max-height:none}
  .hud{grid-template-columns:1fr 1fr;min-height:88px;padding-inline:14px}.hud__brand{position:absolute;left:50%;top:9px;width:65%;transform:translateX(-50%)}.hud__block{margin-top:28px}
  .briefing-panel{width:94vw}.briefing-safe{padding:24px 18px;grid-template-rows:auto auto auto}.briefing-head{gap:8px}.briefing-head h1{font-size:clamp(1.2rem,6vw,1.7rem)}.briefing-time{min-width:78px;padding:7px}.briefing-time strong{font-size:.82rem}
  .wanted-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.wanted-card{min-height:130px;grid-template-rows:20px 82px 31px}.wanted-card__tag{font-size:.42rem}.wanted-card__footer>strong{font-size:.82rem}.briefing-actions{align-items:flex-start;flex-direction:column;gap:8px}.briefing-controls{width:100%}.briefing-controls .western-btn{flex:1}.briefing-hint{order:2}
  .result-panel,.loader-card,.rotate-card{width:92vw}.result-safe,.loader-safe,.rotate-safe{padding:34px 24px}.result-actions{width:100%}.result-panel .western-btn{flex:1;min-width:130px}.result-actions .result-return{flex-basis:100%}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
