/* A single path through multiplayer: choose, customize, share, play, compare. */
.challenge-sheet{
  display:flex;flex-direction:column;overflow:hidden!important;
  width:min(calc(100vw - 22px),490px)!important;max-width:490px!important;
  max-height:min(91dvh,790px)!important;padding:0!important;
  background:linear-gradient(155deg,#204457,#102c40 75%)!important;
}
.challenge-top{padding:19px 20px 13px;border-bottom:1px solid #ffffff20;flex:none;
  background:#14364a;position:relative;z-index:2;gap:16px}
.challenge-top h2{font:clamp(21px,5vw,28px)/1.1 Georgia,serif;margin:7px 0 0}
.challenge-top .sheet-close{flex:none;width:43px;height:43px;font-size:26px}
.challenge-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px;
  -webkit-overflow-scrolling:touch}
.challenge-scroll > section[hidden],.challenge-scroll [hidden]{display:none!important}
.challenge-lead{font-size:15px!important;line-height:1.55!important;margin:0 0 17px;color:#deebea!important}
.challenge-action-card{display:flex;align-items:center;width:100%;gap:15px;text-align:left;
  min-height:93px;padding:15px;margin:10px 0;background:#ffffff0b;
  border:1px solid #d7e4dd38;color:#fff5e8;border-radius:16px}
.challenge-action-card:hover,.challenge-action-card:focus-visible{background:#f0c78d1d;border-color:#eac88e}
.challenge-action-card > span:nth-child(2){flex:1;min-width:0;display:grid;gap:7px}
.challenge-action-card strong{font-size:17px;font-weight:800;letter-spacing:-.2px}
.challenge-action-card small{font-size:12px;color:#bfced1;line-height:1.4}
.challenge-action-card > span:last-child{font-size:23px;color:#f0cc96}
.challenge-action-icon{height:48px;width:48px;border-radius:14px;background:#ebc88f1c;
  border:1px solid #f0cb8b55;color:#ffe0a6;font-size:26px;display:grid;place-items:center;flex:none}
.challenge-fine{font-size:11px!important;line-height:1.65!important;color:#a3c5c8!important;margin:14px 0 0}
.challenge-step-label{color:#f2cb93;font-size:11px;letter-spacing:1.5px;font-weight:850}
.challenge-scroll h3{font:26px/1.13 Georgia,serif;margin:11px 0 12px;color:#fff6e8}
.challenge-scroll label.field-label{margin:16px 0 7px}
.challenge-preset{display:flex;justify-content:space-between;align-items:center;gap:13px;
  border:1px solid #ecc78e55;border-radius:14px;padding:15px;margin:18px 0 0;background:#ebc98b16}
.challenge-preset > div{display:grid;gap:6px}
.challenge-preset strong{font-size:15px}
.challenge-preset small{font-size:11px;color:#c7d9d9;line-height:1.4}
.challenge-preset button,.challenge-code-line button{min-height:38px;white-space:nowrap;
  border:1px solid #f0ce9f7a;background:#f0d39824;color:#ffdda3;
  border-radius:9px;padding:8px 11px;font-size:12px;font-weight:800}
.challenge-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;margin-top:13px;padding:14px;border:1px solid #ffffff25;
  border-radius:13px;background:#051c2d55}
.challenge-fields label{font-size:10px;letter-spacing:1px;color:#c5d7d6;
  font-weight:800;display:flex;flex-direction:column;gap:6px}
.challenge-fields label:last-child{grid-column:1/-1}
.challenge-fields select{font-size:13px;min-width:0;padding:10px 8px}
.challenge-back{display:block;margin:12px 0 0;min-height:40px;width:100%;padding:9px;
  background:none;border:0;color:#c1dadb;font-size:13px;font-weight:700}
.challenge-scroll .sheet-primary{margin-top:15px}
.challenge-preview{background:#ffffff13;border-radius:11px;padding:13px;margin-top:14px;
  font-size:12px;color:#d9eee9}
.challenge-current{font-size:13px!important;color:#d5e6e5!important;line-height:1.5!important}
.challenge-invitation{border:1px solid #e8c99152;border-radius:15px;padding:16px;
  margin:15px 0;background:#ffffff0a}
.challenge-invitation>strong{display:block;font-size:16px}
.challenge-invitation>.note{margin:6px 0 13px}
.challenge-code-line{display:flex;align-items:center;gap:9px;border:1px dashed #ebcc9570;
  padding:10px 9px;border-radius:11px;background:#051c2d77;flex-wrap:wrap}
.challenge-code-line small{font-size:9px;letter-spacing:1px;color:#a8bdc4;white-space:nowrap}
.challenge-code-line strong{font:700 13px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;
  letter-spacing:.3px;color:#ffdaa1;flex:1}
.challenge-qr{display:flex;justify-content:center;align-items:center;margin:13px auto 14px;
  width:166px;height:166px;background:#fff;padding:10px;border-radius:13px}
.challenge-qr svg{width:100%;height:100%}
.challenge-invitation #challenge-link{font-size:12px;padding:10px}
.challenge-separator{font-size:10px;letter-spacing:1.5px;color:#f0c791;
  font-weight:850;border-top:1px solid #ffffff27;margin:17px 0 11px;padding-top:13px}
.challenge-rank-row{display:flex;align-items:center;justify-content:space-between;
  gap:10px;border-radius:10px;padding:12px;background:#ffffff0e;
  border:1px solid #ffffff20;font-size:12px}
.challenge-rank-row strong{color:#ffdaa0;font-size:12px;font-variant-numeric:tabular-nums}
.challenge-standings,.challenge-recent{display:grid;gap:8px;max-height:35dvh;overflow-y:auto}
.challenge-recent-row{display:flex;flex-direction:column;align-items:flex-start;text-align:left;
  border-radius:12px;border:1px solid #ffffff29;padding:14px;gap:6px;min-height:64px;
  background:#ffffff0e;color:#fff4e5}
.challenge-recent-row strong{font-size:13px}
.challenge-recent-row small{font-size:11px;color:#b5cdd1}
.challenge-recent-row:hover{border-color:#e6c58c}
#challenge-refresh,#challenge-load-more{padding:10px 15px;margin:10px 4px 0 0}
.challenge-status{min-height:14px;font-size:12px!important;line-height:1.5!important;
  color:#f6cd91!important;margin:13px 0 0}
#challenge-return{border-top:1px solid #ffffff25;margin-top:15px}
.challenge-scroll .field-select{min-height:44px}
@media(max-width:380px){
  .challenge-scroll{padding:15px}.challenge-action-card{min-height:78px;padding:12px;gap:10px}
  .challenge-action-icon{height:41px;width:41px;font-size:23px}
  .challenge-action-card strong{font-size:15px}.challenge-action-card small{font-size:11px}
  .challenge-fields{gap:8px;padding:10px}
}

/* Make the first decision obvious; advanced choices and history stay quiet. */
.challenge-quick-name{min-height:45px;margin:0 0 8px}
.challenge-quiet-link{width:100%;border:0;background:none;color:#ead1a6;
 text-align:left;padding:5px 12px 13px;font-size:13px;font-weight:750;min-height:38px}
.challenge-quiet-link span{float:right}
#challenge-home #challenge-new{min-height:88px;background:#eac58c24;border-color:#eac58c99}
#challenge-home #challenge-new strong{font-size:18px}
#challenge-home #challenge-games-open{min-height:66px}
#challenge-home #challenge-games-open .challenge-action-icon{width:35px;height:35px;font-size:20px}
#challenge-home #challenge-games-open strong{font-size:14px}
#challenge-home #challenge-games-open small{font-size:11px}
#challenge-home .field-label{margin:3px 0 6px}
html[data-theme="ink"] #challenge-home #challenge-new{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}
html[data-theme="ink"] #challenge-new strong,
html[data-theme="ink"] #challenge-new small,
html[data-theme="ink"] #challenge-new .challenge-action-icon,
html[data-theme="ink"] #challenge-new > span:last-child{color:var(--primary-text)}
html[data-theme="ink"] #challenge-new .challenge-action-icon{border-color:var(--rule);background:transparent}

html[data-theme="ink"] .challenge-action-card > span:last-child{color:var(--graphite)}
html[data-theme="ink"] #challenge-home #challenge-new > span:last-child{color:var(--primary-text)}

/* Second-pass hierarchy: one primary game action at a time. */
#challenge-home .challenge-lead{margin-bottom:12px}
#challenge-home #challenge-new{margin:11px 0 3px}
#challenge-home #challenge-join-open{min-height:78px;margin-top:11px}
#challenge-home #challenge-join-open .challenge-action-icon{width:40px;height:40px;font-size:22px}
#challenge-home #challenge-games-open{margin-top:5px;text-align:center;padding:9px 14px;min-height:44px}
.challenge-main-action{min-height:52px}
.challenge-invitation{padding:14px;margin-top:17px}
.challenge-invitation > strong{font-size:14px;margin-bottom:12px}
.challenge-invitation .challenge-code-line{margin-bottom:10px}
.challenge-share-button{display:block;border:1px solid #f0ce9f7a;border-radius:11px;
  color:#ffdda3;background:#f0d39824;font-weight:800;
  width:100%;min-height:46px;font-size:13px;cursor:pointer}
.challenge-share-more{margin:11px 0 0;font-size:12px}
.challenge-share-more summary{padding:8px 5px;cursor:pointer;font-weight:700;min-height:40px}
.challenge-share-more summary:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.challenge-share-more .challenge-qr{margin-top:10px}
.challenge-end-link{width:100%;min-height:44px;margin-top:8px;background:transparent;
  color:#f5d7ba;border:0;text-decoration:underline;text-underline-offset:3px;font-size:12px}
