body #loader {
  --ls-line:rgba(218,211,234,.18);
  --ls-text:#eeedf6;
  --ls-muted:#a09aaf;
  box-sizing:border-box;
  padding:28px 24px;
  gap:30px;
  overflow-y:auto;
  background:#07080d;
  color:var(--ls-text);
}
#loader .loader-status {display:flex;flex-direction:column;align-items:center;gap:18px;width:min(600px,100%);flex-shrink:0;}
#loader .singularity {width:96px;height:96px;}
#loader .singularity::before,#loader .singularity::after {content:"";position:absolute;border:1px solid rgba(229,218,243,.14);border-radius:50%;inset:6px;}
#loader .singularity::after {inset:20px;border-color:rgba(229,218,243,.22);}
#loader .singularity .core {width:6px;height:6px;margin:-3px 0 0 -3px;box-shadow:0 0 14px 3px rgba(255,246,226,.6),0 0 32px 8px rgba(218,207,238,.15);}
body #loader .ltext {font-size:22px;line-height:1.5;letter-spacing:0;text-indent:0;color:var(--ls-text);animation:none;text-align:center;overflow-wrap:anywhere;}
body #loader .lbar {width:min(320px,80%);height:3px;background:rgba(226,215,235,.12);border-radius:2px;}
body #loader .lbar i {background:#e8dcb3;box-shadow:0 0 8px rgba(238,220,161,.25);}
#loader #loader-game {width:min(600px,100%);flex-shrink:0;border:1px solid var(--ls-line);border-radius:6px;background:#0c0d15;box-shadow:0 18px 64px rgba(0,0,0,.22);font-family:system-ui,"Microsoft YaHei",sans-serif;letter-spacing:0;}
#loader #loader-game[hidden] {display:none;}
#loader .ls-toolbar {display:flex;align-items:center;gap:10px;min-height:72px;padding:14px 18px;border-bottom:1px solid var(--ls-line);box-sizing:border-box;}
#loader .ls-heading {flex:1;min-width:0;}
#loader .ls-heading h2 {margin:0 0 3px;font-size:17px;line-height:1.4;font-weight:600;letter-spacing:0;color:var(--ls-text);}
#loader .ls-status {display:block;font-size:12px;line-height:1.5;color:var(--ls-muted);}
#loader .ls-score {display:flex;align-items:baseline;gap:9px;color:var(--ls-muted);font-size:13px;margin-right:8px;white-space:nowrap;}
#loader .ls-score output {font:500 24px/1.2 Consolas,monospace;min-width:3ch;text-align:right;color:var(--ls-text);font-variant-numeric:tabular-nums;}
#loader .ls-toolbar button {position:relative;display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;padding:0;border:1px solid var(--ls-line);border-radius:4px;background:transparent;cursor:pointer;transition:background .15s,border-color .15s;}
#loader .ls-toolbar button:hover {background:#262330;border-color:#e8dcb3;}
#loader .ls-toolbar button:disabled {opacity:.35;cursor:default;}
#loader .ls-toolbar button:focus-visible,#loader canvas:focus-visible {outline:2px solid #e8dcb3;outline-offset:4px;}
#loader .ls-toolbar button img {width:20px;height:20px;filter:invert(92%);pointer-events:none;}
#loader .ls-toolbar button::after {content:attr(data-tooltip);display:none;position:absolute;bottom:calc(100% + 8px);right:0;width:max-content;padding:5px 8px;border:1px solid var(--ls-line);border-radius:3px;background:#211e2b;color:var(--ls-text);font:12px/1.5 system-ui,"Microsoft YaHei",sans-serif;white-space:nowrap;pointer-events:none;z-index:1;}
#loader .ls-toolbar button:hover::after,#loader .ls-toolbar button:focus-visible::after {display:block;}
#loader .ls-board {padding:16px;}
#loader canvas {display:block;width:100%;height:auto;aspect-ratio:12/7;border-radius:2px;touch-action:none;}
@media (max-height:700px) {
  body #loader {gap:16px;padding-top:20px;padding-bottom:20px;}
  #loader .singularity {width:60px;height:60px;}
  #loader .loader-status {gap:10px;}
  #loader #loader-game {width:min(500px,100%);}
}
@media (max-width:480px) {
  body #loader {padding-left:16px;padding-right:16px;}
  #loader .ls-toolbar {padding:12px;gap:6px;}
  #loader .ls-score {margin-right:2px;gap:4px;}
  #loader .ls-board {padding:10px;}
}
@media (max-height:480px) {body #loader {justify-content:flex-start;}}
@media (prefers-reduced-motion:reduce) {
  #loader .singularity .core,#loader .dust {animation:none;}
  #loader .lbar i,#loader .ls-toolbar button {transition:none;}
}
