/* UORealms DOS player: the Save / Load bar above the game window. */
html, body { margin: 0; height: 100%; background: #000; }
body { display: flex; flex-direction: column; font-family: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif; }
#dos { position: relative; flex: 1 1 auto; min-height: 0; width: 100%; }
.loading-spinner { position: absolute; top: 50%; left: 50%; width: 220px; height: 220px; transform: translate(-50%, -50%); background: url('/game-experience-review/assets/uorealms-logo.png') no-repeat center / contain; z-index: 10; animation: uor-spin 9s linear infinite; }
@keyframes uor-spin { from { transform: translate(-50%, -50%) rotate(0); } to { transform: translate(-50%, -50%) rotate(360deg); } }

.uor-bar { position: relative; flex: 0 0 auto; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 8px 12px; background: linear-gradient(180deg, #1a2140, #0e1328); border-bottom: 1px solid rgba(227,197,106,.35); color: #d6dcf0; font-size: 14px; z-index: 20; }
.uor-status { flex: 1 1 260px; min-width: 0; color: #d6dcf0; }
.uor-status a { color: #e3c56a; font-weight: 700; }
.uor-btn { font: inherit; font-weight: 700; font-size: 14px; min-height: 34px; padding: 0 14px; border-radius: 9px; border: 0; cursor: pointer; background: linear-gradient(180deg, #f0d27a, #c8a84b); color: #1d1404; }
.uor-btn.ghost { background: rgba(255,255,255,.06); color: #f3ead2; border: 1px solid rgba(255,236,190,.3); }
.uor-btn.small { min-height: 28px; padding: 0 10px; font-size: 13px; }
.uor-btn:disabled { opacity: .45; cursor: default; }
.uor-btn:focus-visible { outline: 2px solid #e3c56a; outline-offset: 2px; }
.uor-list { position: absolute; right: 12px; top: calc(100% + 6px); width: min(420px, calc(100vw - 24px)); max-height: 60vh; overflow: auto; padding: 10px; border-radius: 12px; background: #141a30; border: 1px solid rgba(255,236,190,.25); box-shadow: 0 20px 40px rgba(0,0,0,.6); }
.uor-list[hidden] { display: none; }
.uor-row { display: flex; align-items: center; gap: 8px; padding: 6px 4px; border-bottom: 1px solid rgba(255,255,255,.06); }
.uor-row:last-child { border-bottom: 0; }
.uor-name { flex: 1 1 auto; min-width: 0; color: #f3ead2; }
/* Favorites star (30 Sep 2026): outline until starred, then gold. */
.uor-btn.uor-fav { background: rgba(255,255,255,.06); color: #f3ead2; border: 1px solid rgba(255,236,190,.3); }
.uor-btn.uor-fav[aria-pressed="true"] { background: rgba(227,197,106,.16); color: #f6dd92; border-color: rgba(227,197,106,.7); }
/* Optional note when saving, and the note and saved file names in the Load list (1 Oct 2026) */
.uor-note { flex: 1 1 100%; display: flex; gap: 8px; align-items: center; }
.uor-note[hidden] { display: none; }
.uor-note input { flex: 1; min-width: 0; min-height: 32px; padding: 0 10px; border-radius: 8px; border: 1px solid rgba(255,236,190,.3); background: #0b1022; color: #f3ead2; font: inherit; font-size: 14px; }
.uor-save-note { display: block; margin-top: 2px; color: #f6dd92; font-weight: 600; }
.uor-save-files { display: block; margin-top: 1px; color: #a5aecb; font-size: 12px; font-family: ui-monospace, Consolas, monospace; }
/* Our own yes/no box (2 Oct 2026), instead of the browser's: Load save and Delete save */
.uor-ask { width: min(440px, calc(100vw - 32px)); padding: 24px 24px 20px; border-radius: 18px; text-align: center; color: #f3ead2; font-family: inherit;
  background: linear-gradient(180deg, rgba(30,36,74,.97), rgba(14,18,40,.98)); border: 1px solid rgba(227,197,106,.35); box-shadow: 0 30px 80px rgba(0,0,0,.6); }
.uor-ask::backdrop { background: rgba(4,6,16,.6); }
.uor-ask-text { margin: 0 0 20px; font-size: 16px; line-height: 1.55; }
.uor-ask-actions { display: flex; justify-content: center; gap: 10px; }
.uor-ask-actions .uor-btn { min-width: 110px; min-height: 38px; }
.uor-ask .uor-ask-yes.danger { background: linear-gradient(180deg, #e8806a, #b94a36); color: #fff; }
