/* AGBLCT v2.2 - stable viewport / explicit feedback overlay */
@media (max-width:680px) {
  /* svh stays the same when mobile browser controls appear or disappear. */
  .shell {height:calc(100svh - 45px);max-height:calc(100svh - 45px)}
  .grid-layout {align-items:stretch;min-width:0}
  .map-card {width:100%;min-width:0;align-self:stretch;flex:1 1 0}
  .board-shell {width:100%;min-width:0;flex:1 1 0;overflow:hidden}
  /* All feedback is displayed in the dialog, not in the layout flow. */
  .sidebar .result-card {display:none !important}
  /* Editor height never changes when RUN highlights different commands. */
  .program {height:46px;min-height:46px;max-height:46px;flex:0 0 46px;overflow-y:auto}
}
@media (max-width:680px) and (max-height:740px) {
  .shell {height:calc(100svh - 41px);max-height:calc(100svh - 41px)}
  .program {height:45px;min-height:45px;max-height:45px;flex:0 0 45px}
}
@media (max-width:680px) and (max-height:610px) {
  .program {height:40px;min-height:40px;max-height:40px;flex:0 0 40px}
}
.run-outcome {
  box-sizing:border-box;
  position:fixed;
  inset:0;
  margin:auto;
  width:min(390px,calc(100% - 36px));
  max-height:min(85svh,560px);
  padding:24px 22px 20px;
  border:1px solid #d7e6e4;
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 70px #0a28465a;
  overflow-y:auto;
  overscroll-behavior:contain;
  text-align:center;
  color:#15344a;
}
.run-outcome::backdrop{background:rgba(8,26,45,.68)}
.run-outcome:not([open]){display:none}
.run-outcome .outcome-icon{
  width:72px;height:72px;border-radius:50%;margin:0 auto 13px;
  display:grid;place-items:center;font-size:36px;font-weight:900;
  background:#d9f8eb;color:#0a886d;border:2px solid #b6ead6;
}
.run-outcome[data-kind="retry"] .outcome-icon{background:#fff0db;color:#b77220;border-color:#f0d1a0}
.run-outcome[data-kind="exhausted"] .outcome-icon{background:#fff0d2;color:#a56b17;border-color:#f3d491}
.run-outcome[data-kind="error"] .outcome-icon{background:#ffe6e1;color:#a83e32;border-color:#ffc6bd}
.run-outcome .outcome-tag{text-transform:uppercase;color:#0a817b;font-size:11px;font-weight:850;letter-spacing:1.25px}
.run-outcome[data-kind="retry"] .outcome-tag,.run-outcome[data-kind="exhausted"] .outcome-tag{color:#9b6119}
.run-outcome[data-kind="error"] .outcome-tag{color:#a83e32}
.run-outcome h2{font-size:23px;line-height:1.18;letter-spacing:-.5px;margin:8px 0 10px;color:#17344d}
.run-outcome p{font-size:14px;line-height:1.55;margin:0 0 21px;color:#506477;overflow-wrap:anywhere}
.run-outcome .outcome-primary{width:100%;min-height:50px;border:0;border-radius:12px;background:#007d76;color:#fff;font-size:15px;font-weight:850;padding:12px 14px;cursor:pointer;box-shadow:0 3px 0 #005e57}
.run-outcome .outcome-primary:hover,.run-outcome .outcome-primary:focus-visible{background:#006a65}
.run-outcome[data-kind="retry"] .outcome-primary{background:#264b69;box-shadow:0 3px 0 #18344a}
.run-outcome[data-kind="exhausted"] .outcome-primary{background:#9c671e;box-shadow:0 3px 0 #704813}
@media(max-width:370px){.run-outcome{padding:17px 15px 16px}.run-outcome .outcome-icon{width:54px;height:54px;font-size:28px;margin-bottom:9px}.run-outcome h2{font-size:20px}.run-outcome p{font-size:12px;margin-bottom:16px}.run-outcome .outcome-primary{min-height:46px}}
@media(prefers-reduced-motion:reduce){.run-outcome{animation:none}}
