/* Page-only, interactive recreation of the desktop launcher. */
#allnight-blue-detail .ab-spec .ab-spec-emphasis{font:inherit;color:#315dea}
#allnight-blue-detail .launcher-preview{padding:40px 0 38px}
#allnight-blue-detail .ld-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#launcher-demo{max-width:793px;margin-inline:auto;font:13px/1.5 'Malgun Gothic',sans-serif;color:#eeeeec}
#launcher-demo *, .ld-dialog *{box-sizing:border-box}
#launcher-demo [hidden]{display:none!important}
#launcher-demo .ld-window{border:1px solid #47494b;border-radius:5px;background:linear-gradient(105deg,#191b1cf0,#1d1f20e8),url('launcher-demo/window-texture.png');box-shadow:0 18px 48px #14233823,0 3px 9px #14233818;overflow:hidden}
#allnight-blue-detail #launcher-demo button{font:inherit;letter-spacing:0;cursor:pointer;border:0;background:transparent;color:inherit;padding:0;border-radius:3px;transition:color .15s,background .15s,box-shadow .15s}
#launcher-demo button:focus-visible,#launcher-demo input:focus-visible + .ld-switch{outline:2px solid #edcf95;outline-offset:3px}
#launcher-demo select:focus,#launcher-demo select:focus-visible{outline:none;box-shadow:none;border-color:#bfa372}
#launcher-demo .ld-header{min-height:48px;display:grid;grid-template-columns:126px 1fr 145px 76px;align-items:center;gap:8px;padding:0 12px}
#launcher-demo .ld-logo{width:119px;height:auto;display:block}
#launcher-demo .ld-menu{display:flex;align-items:center;justify-content:space-between;gap:4px;white-space:nowrap}
#allnight-blue-detail #launcher-demo .ld-menu button{font-size:12px;padding:9px 2px;color:#c1c0c0}
#allnight-blue-detail #launcher-demo .ld-menu button:hover{color:#fff;text-shadow:0 0 12px #ffffff55}
#launcher-demo select{font:12px 'Malgun Gothic',sans-serif;color:#eeeeec;background:#292b2e;border:1px solid #4f5053;border-radius:3px;height:28px;width:100%;padding:0 6px;color-scheme:dark;cursor:pointer;min-width:0}
#launcher-demo #ld-resolution,#launcher-demo #ld-route,#launcher-demo select option{color:#eeeeec;-webkit-text-fill-color:#eeeeec}
#launcher-demo select:hover{border-color:#bfa372}
#launcher-demo .ld-window-actions{display:flex;justify-content:flex-end}
/* Match WPF ModernTheme.ButtonStyle(flat): both window controls share the same states. */
#allnight-blue-detail #launcher-demo .ld-window-actions button{width:36px;height:30px;font:21px Arial,sans-serif;color:#b2b2b5;background:transparent;border:1px solid transparent;border-radius:4px;transition:none}
#allnight-blue-detail #launcher-demo .ld-window-actions button:hover{background:#1d2023;color:#eeeeec}
#allnight-blue-detail #launcher-demo .ld-window-actions button:active{background:#30343b;color:#eeeeec}
#launcher-demo .ld-art{position:relative;margin:0 9px;border:1px solid #45433d;border-radius:5px;overflow:hidden;aspect-ratio:773 / 318;background:#17191d}
/* Display the artwork region of the untouched reference screenshot as a CSS sprite. */
#launcher-demo .ld-art img{display:block;position:absolute;width:102.853437%;max-width:none;height:auto;left:-1.426718%;top:-16.139241%}
#launcher-demo .ld-options{min-height:67px;margin:0 28px;display:grid;grid-template-columns:158px 1fr 190px;align-items:center;gap:0}
#launcher-demo .ld-toggle{display:flex;align-items:center;gap:24px;cursor:pointer;position:relative;min-height:30px;width:fit-content}
#launcher-demo .ld-toggle input{position:absolute;opacity:0;width:34px;height:18px;right:0;margin:0;cursor:pointer}
#launcher-demo .ld-switch{display:block;position:relative;pointer-events:none;width:34px;height:18px;border:1px solid #55585d;border-radius:12px;background:linear-gradient(#36383c,#282a2e);flex-shrink:0;transition:border-color .32s ease}
#launcher-demo .ld-switch:before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(#e2c58f,#c7a166);opacity:0;transition:opacity .32s ease}
#launcher-demo .ld-switch:after{content:'';position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background-color:#a0a3a7;background-image:linear-gradient(#ffffff30,#0000000a);box-shadow:0 1px 2px #0007;transform:translateX(0);transition:transform .32s cubic-bezier(.22,.8,.3,1),background-color .32s ease}
#launcher-demo .ld-toggle input:checked + .ld-switch{border-color:#efce94}
#launcher-demo .ld-toggle input:checked + .ld-switch:before{opacity:1}
#launcher-demo .ld-toggle input:checked + .ld-switch:after{transform:translateX(16px);background-color:#f4f3f0}
#launcher-demo .ld-shader{border-left:1px solid #414346;padding-left:22px;line-height:1.4}
#launcher-demo .ld-shader .ld-toggle{gap:30px;min-height:24px}
#launcher-demo .ld-shader small{display:block;color:#a5a5a8;font-size:11px}
#launcher-demo .ld-route{display:flex;align-items:center;gap:12px;white-space:nowrap}
#launcher-demo .ld-route select{font-size:13px;height:30px}
#launcher-demo .ld-launch-row{border-top:1px solid #393b3d;border-bottom:1px solid #393b3d;padding:12px 24px 10px 28px;display:grid;grid-template-columns:1fr 300px;align-items:center;gap:39px}
#launcher-demo .ld-progress{min-width:0}
#launcher-demo .ld-progress>div{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:13px}
#launcher-demo #ld-progress-label{font-size:14px;font-weight:600}
#launcher-demo #ld-percent{font-size:12px;color:#cdb788}
#launcher-demo progress{appearance:none;-webkit-appearance:none;display:block;width:100%;height:3px;border:0;background:#48433a;color:#d6bc87}
#launcher-demo progress::-webkit-progress-bar{background:#48433a}
#launcher-demo progress::-webkit-progress-value{background:#d6bc87}
#launcher-demo progress::-moz-progress-bar{background:#d6bc87}
#allnight-blue-detail #launcher-demo .ld-start{display:flex;align-items:center;justify-content:center;gap:15px;height:61px;border:1px solid #e1cca3;background:linear-gradient(#d5be91,#c8ac78);color:#28261f;font-size:21px;font-weight:700;border-radius:4px;box-shadow:inset 0 1px #fff3}
#allnight-blue-detail #launcher-demo .ld-start:hover{background:linear-gradient(#dfc99e,#d4ba87);border-color:#eddcba;box-shadow:0 0 18px #d9bb8228,inset 0 1px #fff5}
#allnight-blue-detail #launcher-demo .ld-start:active{background:linear-gradient(#bea272,#b59a6c);transform:translateY(1px)}
#allnight-blue-detail #launcher-demo button:disabled{opacity:.48;cursor:wait}
#launcher-demo .ld-play{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:14px solid currentColor}
#launcher-demo .ld-footer{min-height:35px;padding:6px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#b2b2b5;font-size:12px}
#launcher-demo .ld-footer>div{display:flex;align-items:center;gap:14px}
#launcher-demo .ld-divider{width:1px;height:13px;background:#46484a}
#allnight-blue-detail #launcher-demo .ld-footer button:hover{color:#edcf95}
#launcher-demo .ld-footer strong{color:#d8c3a5;font-weight:400;margin-left:7px}
#allnight-blue-detail .ld-note{text-align:center;color:#8590a1;font-size:12px;line-height:1.7;margin:6px 0 0}
#launcher-demo .ld-resting{padding:50px 20px;display:flex;flex-direction:column;align-items:center;gap:22px;color:#b2b2b5}
#allnight-blue-detail #launcher-demo .ld-resting button{padding:10px 22px;background:#d6bc87;color:#28261f;font-weight:700}
.ld-dialog{position:fixed;inset:auto;margin:0;box-sizing:border-box;width:min(420px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:26px;border:1px solid #78716a;border-radius:8px;background:#242629;color:#eee;font:14px/1.6 'Malgun Gothic',sans-serif;box-shadow:0 12px 32px #0005}
.ld-dialog::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
#allnight-blue-detail .ld-dialog h2{font-size:19px;margin:0 0 8px;color:#eee;letter-spacing:0}
#allnight-blue-detail .ld-dialog p{font-size:13px;color:#b7b7bb;margin:0 0 22px}
.ld-dimensions{display:flex;align-items:flex-end;gap:12px}
.ld-dimensions>span{display:grid;place-items:center;height:40px}
.ld-dimensions input{height:40px}
.ld-dimensions label{flex:1;min-width:0;font-size:12px;color:#c4c4c5}
.ld-dimensions input{display:block;width:100%;margin-top:6px;padding:9px;border:1px solid #555;border-radius:3px;background:#181a1c;color:#eee;font:16px 'Malgun Gothic',sans-serif;color-scheme:dark}
.ld-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}
#allnight-blue-detail .ld-dialog-actions button{padding:9px 22px;border:1px solid #666;border-radius:4px;background:transparent;color:#ddd;font-size:14px}
#allnight-blue-detail .ld-dialog-actions button[type=submit]{background:#d6bc87;color:#28261f;border-color:#d6bc87}
/* Phones keep the desktop layout and shrink it as a whole (see .ld-stage below). */
@media(max-width:600px){#allnight-blue-detail .launcher-preview{padding:28px 0 30px}}
/* Region labels remain outside the launcher so its original layout is preserved. */
#launcher-demo .ld-logo-region{position:relative;display:flex;align-items:center;min-height:40px}
#launcher-demo .ld-logo-region:after,#launcher-demo .ld-art:after{content:'';position:absolute;inset:0;pointer-events:none;border:3px solid transparent;border-radius:4px;transition:border-color .2s,box-shadow .2s,background-color .2s}
#launcher-demo[data-highlight=logo] .ld-logo-region:after,#launcher-demo[data-highlight=art] .ld-art:after{border-color:#ffdb7e;background-color:#ffd37514;box-shadow:0 0 18px #ffcf7166}
#launcher-demo .ld-logo-region:after{inset:5px 2px 5px 0;border-width:2px}
#launcher-demo[data-highlight=logo] .ld-logo-region:after{box-shadow:none}
#launcher-demo .ld-logo-region:before{content:'로고 · 135 × 50 px\A텍스트 · 이미지 설정 가능';position:absolute;z-index:2;top:calc(100% + 10px);left:0;width:max-content;max-width:calc(100vw - 90px);padding:7px 12px;border:1px solid #ffde9b;border-radius:4px;background:#1c2024ed;color:#ffe4a6;font:12px/1.6 'Malgun Gothic',sans-serif;white-space:pre-line;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none}
#launcher-demo[data-highlight=logo] .ld-logo-region:before{opacity:1;visibility:visible}
#launcher-demo .ld-art:before{content:'중앙 이미지 · 771 × 316 px';position:absolute;z-index:1;top:14px;right:14px;padding:7px 12px;border:1px solid #ffde9b;border-radius:4px;background:#1c2024ed;color:#ffe4a6;font:12px/1.5 'Malgun Gothic',sans-serif;opacity:0;transition:opacity .2s;pointer-events:none}
#launcher-demo[data-highlight=art] .ld-art:before{opacity:1}
#launcher-demo .ld-custom-guide{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
#allnight-blue-detail #launcher-demo .ld-custom-card{display:flex;align-items:center;gap:11px;text-align:left;border:1px solid #e1e6ee;border-radius:9px;background:#f8fafc;color:#40516a;padding:17px 15px;font-family:Pretendard,'Malgun Gothic',sans-serif;line-height:1.5}
#allnight-blue-detail #launcher-demo .ld-custom-card:hover,#allnight-blue-detail #launcher-demo .ld-custom-card:focus-visible,#allnight-blue-detail #launcher-demo .ld-custom-card[aria-pressed=true],#allnight-blue-detail #launcher-demo[data-highlight=logo] .ld-custom-card[data-ld-highlight=logo],#allnight-blue-detail #launcher-demo[data-highlight=art] .ld-custom-card[data-ld-highlight=art]{background:#fffaf0;border-color:#d9bc80;box-shadow:0 3px 12px #a57b2910}
#launcher-demo .ld-custom-copy{flex:1}
#launcher-demo .ld-custom-card strong{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;color:#22344d;font-weight:650}
#launcher-demo .ld-custom-card small{font-size:11px;font-weight:500;color:#a27b34;white-space:nowrap}
#launcher-demo .ld-custom-card strong+span{display:block;font-size:11.5px;font-weight:600;margin-top:5px;color:#8e9aac;word-break:keep-all}
#launcher-demo .ld-custom-arrow{font-size:16px;color:#a58a59}
/* Same timing as the WPF text brush: 1.2s sweep + .8s rest. */
#launcher-demo .ld-client-shine{color:#b2b2b5;white-space:nowrap}
@supports (background-clip:text){
  #launcher-demo .ld-client-shine{background:linear-gradient(90deg,#9399a1 0%,#9399a1 40%,#fff7de 47%,#ffffff 50%,#fff7de 53%,#9399a1 60%,#9399a1 100%);background-size:300% 100%;background-position:100% 0;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:ld-client-shine 2s linear infinite}
  #launcher-demo .ld-client-shine strong{color:inherit;-webkit-text-fill-color:inherit}
}
@keyframes ld-client-shine{0%{background-position:100% 0}60%,100%{background-position:0% 0}}
/* 793 × 556 reference: header 49, artwork 318, options 67, actions 85, footer 35. Applies at every width; narrow screens scale the whole window instead of reflowing it. */
@media all{
  #launcher-demo .ld-header{height:49px;min-height:49px;grid-template-columns:140px minmax(0,1fr) 145px 95px;gap:0;padding:0 14px 0 20px}
  #launcher-demo .ld-logo-region{width:135px;height:49px;margin-left:-7px}
  #launcher-demo .ld-menu{justify-content:flex-start;gap:5px}
  #allnight-blue-detail #launcher-demo .ld-menu button{font-size:13px;padding:7px 0 7px 10px;flex-shrink:0;text-align:left;width:76px}
  #allnight-blue-detail #launcher-demo .ld-menu button:nth-child(2){width:65px}
  #allnight-blue-detail #launcher-demo .ld-menu button:last-child{width:114px}
  #launcher-demo #ld-resolution{height:27px;font-size:12.5px}
  #launcher-demo .ld-options{height:67px;min-height:67px;grid-template-columns:158px 334px minmax(0,1fr);margin:0 28px;align-items:start;padding:10px 0}
  #launcher-demo .ld-toggle{display:grid;grid-template-columns:79px 34px;gap:0;min-height:18px;height:18px;margin-top:12px}
  #launcher-demo .ld-shader{padding-left:22px;height:41px;margin-top:3px}
  #launcher-demo .ld-shader .ld-toggle{grid-template-columns:71px 34px;gap:0;min-height:18px;height:18px;margin-top:9px}
  #launcher-demo .ld-shader small{margin-top:3px}
  #launcher-demo .ld-route{display:grid;grid-template-columns:63px minmax(0,1fr);gap:0;margin-top:6px}
  #launcher-demo .ld-route>span{margin-left:-10px}
  #launcher-demo .ld-route select{font-size:14px}
  #launcher-demo .ld-launch-row{height:85px;padding:13px 24px 9px 28px}
  #launcher-demo .ld-progress{height:44px;margin-bottom:6px}
  #launcher-demo .ld-progress>div{height:41px;margin:0;align-items:center}
  #launcher-demo #ld-progress-label{font-size:15px;margin-bottom:5px}
  #launcher-demo #ld-percent{font-size:13px;color:#eeeeec}
  #launcher-demo .ld-footer{height:35px}
}
@media(max-width:600px){#launcher-demo .ld-custom-guide{grid-template-columns:1fr;gap:8px;margin-top:18px}#allnight-blue-detail #launcher-demo .ld-custom-card{padding:14px}#launcher-demo .ld-custom-card strong{font-size:13px}}
/* Keep the specifically requested text-shine demo active; shorten switch motion only. */
.ld-action-dialog{padding:0;overflow:hidden;border:1px solid #414243;border-radius:6px;background:linear-gradient(105deg,#191b1cf0,#1d1f20e8),url('launcher-demo/window-texture.png');color:#f0f0ed}
.ld-action-dialog[open]{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:72px minmax(0,1fr) auto}
#ld-message-dialog{width:480px;height:276px}
#ld-clients-dialog{width:560px;height:370px}
.ld-action-header{display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 24px}
#allnight-blue-detail .ld-action-header h2{font:600 21px/1.5 'Malgun Gothic',sans-serif;color:#f0f0ed;margin:0;letter-spacing:0}
#allnight-blue-detail .ld-action-dialog button{font-family:'Malgun Gothic',sans-serif;cursor:pointer}
#allnight-blue-detail .ld-action-close{width:34px;height:34px;padding:0;border:0;border-radius:4px;background:transparent;color:#a5a6a4;font-size:27px;line-height:1}
.ld-action-close:hover{background:#2b2c2d;color:#fff}
.ld-action-body{min-height:0;overflow:auto;margin:8px 24px 24px;scrollbar-width:thin;scrollbar-color:#696a6a #353636}
#allnight-blue-detail .ld-action-body p{font:16px/28px 'Malgun Gothic',sans-serif;color:#f0f0ed;white-space:pre-line;word-break:keep-all;margin:0}
.ld-action-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 18px;border-top:1px solid #414243}
#allnight-blue-detail .ld-action-footer button{height:42px;min-width:96px;padding:0 20px;border:1px solid #4c4d4d;border-radius:4px;background:transparent;color:#f0f0ed;font-size:17px;white-space:nowrap}
.ld-action-footer button:hover{background:#2b2c2d}
@media(max-width:360px){#allnight-blue-detail .ld-action-footer{padding-inline:12px;gap:6px}#allnight-blue-detail .ld-action-footer button{padding-inline:5px;font-size:13px}}
#allnight-blue-detail .ld-action-footer .ld-action-primary{border-color:#f0ce8f;background:linear-gradient(#d5be91,#c8ac78);color:#141410;font-weight:600}
#allnight-blue-detail .ld-action-footer .ld-action-primary:hover{background:linear-gradient(#dfc99e,#d4ba87)}
.ld-action-dialog button:disabled{opacity:.42;cursor:default!important}
.ld-action-dialog button:focus-visible,.ld-action-dialog input:focus-visible{outline:1px solid #d6bc87;outline-offset:2px}
#ld-clients-dialog .ld-action-body{display:flex;flex-direction:column;gap:12px}
#allnight-blue-detail #ld-clients-instruction{font-size:15px;color:#abb0b8;line-height:24px}
#ld-clients-list{flex:1;min-height:0;overflow:auto;padding:4px;border:1px solid #414243}
#ld-clients-list label{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid transparent;border-radius:4px;cursor:pointer;font:15px/1.5 'Malgun Gothic',sans-serif;color:#f0f0ed}
#ld-clients-list label:hover{background:#2b2c2d;border-color:#525354}
#ld-clients-list label:has(input:checked){background:#202122;color:#d6bc87;border-color:#414243}
#ld-clients-list label:has(input:checked):hover{background:#36322b;border-color:#d6bc87}
#ld-clients-list input{width:17px;height:17px;margin:0;accent-color:#d6bc87;flex-shrink:0;color-scheme:dark}
@media(max-width:600px){.ld-action-dialog[open]{grid-template-rows:62px minmax(0,1fr) auto}.ld-action-header{padding-inline:16px}.ld-action-body{margin:8px 16px 16px}.ld-action-footer{padding:14px 16px;gap:8px}#allnight-blue-detail .ld-action-footer button{min-width:0;flex:1;padding:0 8px;font-size:14px}#allnight-blue-detail .ld-action-header h2{font-size:19px}#allnight-blue-detail .ld-action-body p{font-size:14px;line-height:24px}#ld-clients-list label{padding:8px;font-size:13px}}
/* Current WPF GoldKeyGuideDialog: 720 × 594, nine live text rows. */
#ld-key-dialog{width:720px;height:594px;max-width:calc(100vw - 32px);padding:0;overflow:hidden;border:1px solid #414243;border-radius:6px;background:linear-gradient(105deg,#191b1cf0,#1d1f20e8),url('launcher-demo/window-texture.png');color:#f0f0ed;font:14px/1.5 'Malgun Gothic',sans-serif}
#ld-key-dialog[open]{display:grid;grid-template-rows:72px minmax(0,1fr) 77px}
#ld-key-dialog .ld-key-header{display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 24px}
#allnight-blue-detail #ld-key-dialog h2{font:600 20px/1.5 'Malgun Gothic',sans-serif;color:#f0f0ed;margin:0;letter-spacing:0}
#allnight-blue-detail #ld-key-dialog button{cursor:pointer;font-family:'Malgun Gothic',sans-serif}
#ld-key-dialog .ld-key-close{width:34px;height:34px;padding:0;border:0;border-radius:4px;background:transparent;color:#a5a6a4;font-size:27px;font-weight:300;line-height:1}
#ld-key-dialog .ld-key-close:hover{background:#2b2c2d;color:#fff}
#ld-key-dialog .ld-key-body{min-height:0;overflow-y:scroll;margin:8px 24px 24px;padding-right:14px;scrollbar-width:thin;scrollbar-color:#afa081 #353636}
#ld-key-dialog .ld-key-list{margin:0;padding:0}
#ld-key-dialog .ld-key-list>div{display:grid;grid-template-columns:136px minmax(0,1fr);gap:16px;align-items:center;margin-top:10px}
#allnight-blue-detail #ld-key-dialog .ld-key-section{font:400 13px/1.5 'Malgun Gothic',sans-serif;color:#d6bc87;letter-spacing:0;border-bottom:1px solid #414243;margin:24px 0 2px;padding-bottom:8px}
#allnight-blue-detail #ld-key-dialog .ld-key-section:first-child{margin-top:0}
#ld-key-dialog dd small{display:block;font-size:12px;color:#a5a6a4;margin-top:3px}
#allnight-blue-detail #ld-key-dialog .ld-key-note{font-size:12px;color:#a5a6a4;margin:14px 0 0}
#allnight-blue-detail #ld-key-dialog .ld-key-more{display:inline-flex;align-items:center;gap:8px;margin-right:auto;height:42px;padding:0;border:0;background:transparent;color:#d6bc87;font-size:14px;visibility:hidden}
#allnight-blue-detail #ld-key-dialog .ld-key-more.is-visible{visibility:visible}
#allnight-blue-detail #ld-key-dialog .ld-key-more:hover{color:#f0ce8f}
#ld-key-dialog .ld-key-more.is-visible svg path{animation:ld-more-arrow 1s ease-in-out infinite alternate}
@keyframes ld-more-arrow{from{transform:translateY(0)}to{transform:translateY(3px)}}
#ld-key-dialog dt{display:flex;align-items:center;justify-content:center;min-height:30px;padding:4px 8px;border:1px solid #414243;border-radius:4px;background:#202122;color:#d6bc87;font-size:14px;font-weight:400;white-space:nowrap}
#ld-key-dialog dd{margin:0;font-size:14px;color:#f0f0ed;word-break:keep-all;overflow-wrap:break-word}
#ld-key-dialog .ld-key-footer{display:flex;justify-content:flex-end;align-items:center;padding:16px 24px 18px;border-top:1px solid #414243}
#ld-key-dialog .ld-key-confirm{height:42px;min-width:96px;padding:0 20px;border:1px solid #f0ce8f;border-radius:4px;background:linear-gradient(#d5be91,#c8ac78);color:#141410;font-size:17px;font-weight:600}
#ld-key-dialog .ld-key-confirm:hover{background:linear-gradient(#dfc99e,#d4ba87)}
#ld-key-dialog button:focus-visible,#ld-key-dialog .ld-key-body:focus-visible{outline:1px solid #d6bc87;outline-offset:2px}
@media(max-width:600px){#ld-key-dialog[open]{grid-template-rows:62px minmax(0,1fr) 71px}#ld-key-dialog .ld-key-header{padding-inline:16px}#ld-key-dialog .ld-key-body{margin:4px 16px 16px}#ld-key-dialog .ld-key-list>div{grid-template-columns:104px minmax(0,1fr);gap:12px}#ld-key-dialog dt,#ld-key-dialog dd{font-size:12px}#ld-key-dialog dt{white-space:normal;text-align:center}#ld-key-dialog .ld-key-footer{padding:12px 16px 16px}}


#launcher-demo .ld-resolution-control{position:relative;min-width:0}
#launcher-demo .ld-resolution-control #ld-resolution{-webkit-text-fill-color:transparent}
#launcher-demo .ld-resolution-control #ld-resolution option{-webkit-text-fill-color:#eeeeec;color:#eeeeec}
#launcher-demo .ld-resolution-display{position:absolute;inset:0 25px 0 7px;display:flex;align-items:center;pointer-events:none;white-space:nowrap;overflow:hidden;font:12.5px "Malgun Gothic",sans-serif;color:#eeeeec}
/* Scaled preview: narrow screens shrink the 793px launcher as one piece; the scale is computed in launcher-demo.js (fitStage). */
#launcher-demo .ld-stage{position:relative}
#launcher-demo .ld-stage.is-scaled{height:var(--ld-stage-height)}
#launcher-demo .ld-stage.is-scaled .ld-window{width:793px;transform:scale(var(--ld-scale));transform-origin:0 0}
/* Game Start while working, as in the launcher (WpfMainView GameStartStyle + WpfGameStartContent):
   a dark disabled face, and the play icon and caption give way to a centred ring whose
   gold quarter-arc turns once every 1.2s. */
#allnight-blue-detail #launcher-demo .ld-start:disabled{opacity:1;background:#2b2f30;border-color:#3f4344;color:#7b7f7f;box-shadow:none;transform:none}
#launcher-demo .ld-start-spinner{display:none;width:20px;height:20px;border:2px solid #554e43;border-top-color:#e9d5b3;border-radius:50%;transform:rotate(45deg)}
#launcher-demo .ld-start.is-busy .ld-play,#launcher-demo .ld-start.is-busy .ld-start-label{display:none}
#launcher-demo .ld-start.is-busy .ld-start-spinner{display:block;animation:ld-start-spin 1.2s linear infinite}
@keyframes ld-start-spin{from{transform:rotate(45deg)}to{transform:rotate(405deg)}}
