.share-status { position:fixed; }
.tools { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; }
.runner-sharing { display:flex; align-items:center; gap:4px; width:auto; }
.runner-sharing button { min-height:44px; padding:6px 10px; border:0; border-radius:6px; background:transparent; color:#59645c; font:500 12px/1.3 var(--font); cursor:pointer; white-space:nowrap; }
.runner-sharing button[hidden] { display:none; }
.runner-sharing button:hover:not(:disabled) { background:#e9ece8; }
.runner-sharing button:disabled { color:#747b76; cursor:default; }
.share-status:not(:empty) { position:fixed; z-index:10; top:70px; left:50%; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); background:var(--ink); color:var(--paper); padding:10px 16px; border-radius:8px; font-size:13px; line-height:1.5; text-align:center; pointer-events:none; }
.share-dialog { width:min(430px,calc(100% - 32px)); max-height:calc(100dvh - 24px); overflow:auto; border:1px solid var(--line); border-radius:12px; padding:20px; background:var(--paper); color:var(--ink); }
.share-dialog::backdrop { background:#14171680; }
.share-dialog h2 { margin:0 0 12px; font-size:19px; }
.share-dialog p { font-size:14px; line-height:1.5; }
.share-dialog textarea { width:100%; min-height:130px; padding:10px; font:14px/1.6 var(--font); border:1px solid #909891; background:white; color:var(--ink); user-select:text; -webkit-user-select:text; }
.share-dialog button { min-height:44px; padding:8px 20px; margin-top:12px; border:1px solid var(--line); border-radius:6px; font:14px var(--font); cursor:pointer; }
@media(max-height:540px) and (orientation:landscape) {
 body { grid-template-rows:minmax(0,1fr) 56px 36px; }
 .tools { grid-template-columns:minmax(0,1fr) auto auto auto; gap:8px; }
 .tools .hint { max-width:none; }
 .runner-navigation { position:static; gap:4px; justify-content:normal; }
 .runner-navigation a,.runner-navigation label { padding:2px 4px; min-height:36px; }
 .runner-sharing button { min-height:36px; padding:4px 8px; }
 .mute { min-height:36px; }
 .share-status:not(:empty) { top:8px; }
}
@media(max-width:719px) and (orientation:portrait) {
 .tools { grid-template-columns:minmax(0,1fr) auto; gap:2px 8px; }
 .tools .hint { grid-column:1/-1; }
}
@media(max-width:640px) and (orientation:landscape) {
 .tools { grid-template-columns:minmax(0,1fr) auto auto; }
 /* Keep instructions available to assistive tech without squeezing controls. */
 .tools .hint { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
}
@media(max-height:280px) and (orientation:landscape) {
 body { grid-template-rows:minmax(0,1fr) 48px 36px; }
}
