/* Pro movement wallpaper. Full-bleed canvas; the clock and legend sit top right, the round plate bottom left. In picker mode a panel sits on the left; in wallpaper mode (?ui=0) only the HUD. */
body.wall { height: 100vh; overflow: hidden; background: var(--ink); }
#gl { position: fixed; inset: 0; width: 100%; height: 100%; display: block; }

.hud { position: fixed; inset: 0; pointer-events: none; }
.clock { position: absolute; right: 4vw; top: 5vh; text-align: right; }
.clock > b { display: block; font: 900 clamp(48px, 7vw, 120px)/.85 var(--display); letter-spacing: .02em; }
.clock > span { display: block; margin-top: 10px; color: var(--mute); font: 800 clamp(12px, 1vw, 16px)/1 var(--display); letter-spacing: .12em; }
.plate { position: absolute; left: 4vw; bottom: 6vh; max-width: 70vw; transition: opacity .8s ease; }
.plate p { margin: 0; }
.pl-ev { color: var(--mute); font: 800 clamp(12px, 1vw, 16px)/1.3 var(--display); letter-spacing: .1em; }
.pl-name { font: 900 clamp(56px, 8vw, 140px)/.86 var(--display); letter-spacing: .01em; margin: 8px 0 12px !important; overflow-wrap: anywhere; }
.pl-line { display: flex; flex-wrap: wrap; gap: .4em 1.6em; font: 800 clamp(14px, 1.2vw, 20px)/1.2 var(--display); letter-spacing: .05em; color: var(--fg); }
.pl-line .t { color: var(--t); } .pl-line .ct { color: var(--ct); } .pl-line .w { color: #46c47e; } .pl-line .l { color: var(--me); }
.mark { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 8px 16px; margin-top: 18px;
  color: var(--mute); font-size: 13px; }
.lg i { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 7px; vertical-align: .02em; }
.c-path { background: #7fb2ff; } .c-view { background: transparent; border-radius: 0; width: 0; height: 0; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 10px solid rgba(140,195,255,.75); } .c-kill { background: var(--t); } .c-death { background: var(--me); }
.brand-s { display: inline-flex; align-items: center; gap: 6px; font: 900 18px/1 var(--display); letter-spacing: .05em; color: var(--fg); margin-left: 6px; } .brand-s b { color: var(--t); font-weight: 900; }

.picker { position: fixed; left: 0; top: 0; bottom: 0; width: min(380px, 100%); overflow-y: auto; padding: 22px 24px 28px;
  background: rgba(8, 11, 16, .86); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-right: 1px solid var(--line); }
.pk-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 26px; }
.pk-hide, .pk-show { font: 700 14px/1 var(--body); color: var(--fg); background: var(--ink-2); border: 1px solid var(--line); border-radius: 6px; padding: 9px 12px; cursor: pointer; }
.pk-show { position: fixed; left: 16px; top: 16px; }
.pk-hide:hover, .pk-show:hover { border-color: var(--mute); }
.picker h1 { font: 800 26px/1.25 var(--body); margin: 0 0 8px; }
.picker .lede { color: var(--mute); font-size: 15px; line-height: 1.6; margin: 0 0 20px; }
.pk-f { display: block; margin: 0 0 14px; }
.pk-f span { display: block; font-size: 13px; color: var(--mute); margin-bottom: 6px; }
.pk-f input, .pk-f select { width: 100%; font: 400 16px/1.3 var(--body); color: var(--fg); background: var(--ink-2); border: 1px solid var(--line); border-radius: 6px; padding: 10px 12px; }
.pk-pros { list-style: none; margin: -6px 0 16px; padding: 0; max-height: 34vh; overflow-y: auto; border: 1px solid var(--line); border-radius: 6px; }
.pk-pros li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; padding: 9px 12px; cursor: pointer; border-bottom: 1px solid var(--line); }
.pk-pros li:last-child { border-bottom: 0; }
.pk-pros li b { font: 900 19px/1.1 var(--display); letter-spacing: .02em; }
.pk-pros li small { color: var(--dim); font-size: 12px; align-self: center; }
.pk-pros li:hover, .pk-pros li:focus-visible { background: rgba(93, 143, 240, .1); outline: none; }
.pk-pros li[aria-selected="true"] { background: rgba(93, 143, 240, .18); box-shadow: inset 3px 0 0 var(--ct); }
.pk-use { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 8px; }
.pk-use h2 { font: 800 18px/1.3 var(--body); margin: 0 0 6px; }
.pk-use p { color: var(--mute); font-size: 14px; line-height: 1.6; margin: 0 0 10px; }
.pk-url { display: flex; gap: 8px; }
.pk-url input { flex: 1; min-width: 0; font: 400 13px/1.3 ui-monospace, Menlo, Consolas, monospace; color: var(--fg); background: var(--ink-2); border: 1px solid var(--line); border-radius: 6px; padding: 9px 10px; }
.pk-url button { font: 700 14px/1 var(--body); color: #0b1018; background: var(--ct); border: 0; border-radius: 6px; padding: 0 14px; cursor: pointer; }
.pk-apply { width: 100%; font: 800 16px/1 var(--body); color: #0b1018; background: var(--t); border: 0; border-radius: 6px; padding: 14px; cursor: pointer; }
.pk-apply:disabled { opacity: .6; cursor: progress; }
.pk-dl { display: grid; gap: 8px; margin: 4px 0 8px; }
a.pk-apply { display: block; text-align: center; text-decoration: none; }
.pk-dl-alt { display: block; text-align: center; text-decoration: none; font: 700 15px/1 var(--body); color: var(--fg); border: 1px solid var(--line); border-radius: 6px; padding: 13px; }
.pk-dl-alt:hover { border-color: var(--mute); }
.pk-dl-note { font-size: 12px !important; color: var(--dim) !important; }
.pk-alt-h { font: 700 15px/1.3 var(--body); margin: 18px 0 4px; color: var(--fg); }
.pk-msg { color: #46c47e; font-size: 14px; margin: 10px 0 0; min-height: 1.4em; }
.pk-how { color: var(--mute); font-size: 13px; line-height: 1.6; padding-left: 18px; margin: 12px 0 0; }
.pk-how li { margin-bottom: 6px; }
.picker .fine { color: var(--dim); font-size: 12px; line-height: 1.6; margin: 18px 0 0; }
:focus-visible { outline: 2px solid var(--ct); outline-offset: 2px; }

body.wall.picking .plate { left: calc(min(380px, 100%) + 4vw); }
@media (max-width: 760px) {
  .picker { top: auto; height: 62vh; width: 100%; border-right: 0; border-top: 1px solid var(--line); }
  body.wall.picking .plate { display: none; }
  .clock b { font-size: 44px; }
  .mark { display: none; }
}
@media (prefers-reduced-motion: reduce) { .plate { transition: none; } }

/* embed (signed-in home hero): the page supplies its own greeting, so only the round plate stays */
.embed .clock { display: none; }
.embed .plate { left: auto; right: 4vw; bottom: 5vh; text-align: right; max-width: 46vw; }
.embed .pl-name { display: none; }
@media (max-width: 640px) { .embed .plate { display: none; } }
.embed .pl-line { justify-content: flex-end; }
