.kk-mg{background:var(--kk-panel);border:1px solid var(--kk-line);border-radius:16px;flex-direction:column;gap:10px;width:100%;max-width:420px;margin:0 auto;padding:16px;display:flex}.kk-mg-title{color:var(--kk-paper);margin:0;font-size:1rem;font-weight:700}.kk-mg-sub{color:var(--kk-muted);margin:4px 0 0;font-size:.8125rem;font-weight:400;line-height:1.4}.kk-mg-score{justify-content:space-between;align-items:baseline;gap:8px;min-height:28px;display:flex}.kk-mg-score-label{letter-spacing:.08em;text-transform:uppercase;color:var(--kk-muted);font-size:.75rem;font-weight:600}.kk-mg-score-value{font-variant-numeric:tabular-nums;text-align:right;min-width:2ch;color:var(--kk-moon);font-size:1.25rem;font-weight:700;transition:color .4s}.kk-mg-score-value--lost{color:var(--kk-blood)}.kk-mg-record{letter-spacing:.04em;color:var(--kk-muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:600}.kk-mg-field{aspect-ratio:1/1.2;border:1px solid var(--kk-line);background:radial-gradient(circle at 50% 18%,#e8d9a80f,transparent 55%),var(--kk-bg-2);border-radius:12px;width:100%;position:relative;overflow:hidden}.kk-mg-firefly{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;place-items:center;width:56px;height:56px;padding:0;animation-name:kk-mg-life;animation-timing-function:linear;animation-fill-mode:forwards;display:grid;position:absolute;transform:translate(-50%,-50%)}@keyframes kk-mg-life{0%,62%{opacity:1;scale:1}to{opacity:0;scale:.55}}.kk-mg-firefly:focus-visible{outline:2px solid var(--kk-moon);outline-offset:2px}.kk-mg-glow{background:radial-gradient(circle,#e8d9a88c,#e8d9a800 70%);border-radius:50%;width:34px;height:34px;animation:1.8s ease-in-out infinite kk-mg-pulse;position:absolute}.kk-mg-body{background:var(--kk-moon);border-radius:50%;width:10px;height:10px;box-shadow:0 0 10px 3px #e8d9a8b3}.kk-mg-burst{border:2px solid var(--kk-moon);opacity:0;pointer-events:none;border-radius:50%;width:40px;height:40px;animation:.42s ease-out forwards kk-mg-pop;position:absolute}.kk-mg-hint{text-align:center;color:var(--kk-muted);pointer-events:none;margin:0;font-size:.75rem;font-weight:400;position:absolute;bottom:10px;left:12px;right:12px}@keyframes kk-mg-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}@keyframes kk-mg-pop{0%{opacity:.9;transform:translate(-50%,-50%)scale(.4)}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)}}@keyframes kk-mg-life-still{0%,62%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.kk-mg-glow,.kk-mg-burst{animation:none}.kk-mg-firefly{animation-name:kk-mg-life-still}}
.kk-night-sky{margin-bottom:18px}.kk-night-clock{text-align:center;font-variant-numeric:tabular-nums;color:var(--kk-moon);margin:0 0 10px;font-size:40px;font-weight:700;line-height:1}.kk-night-clock[data-frozen=true]{color:var(--kk-muted)}.kk-night-unconfirmed{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:28;text-align:center;color:#ffe4e8;background:#7c1c28;border-radius:12px;justify-content:center;align-items:center;min-height:40px;margin:0;padding:8px 12px;font-size:13px;font-weight:600;animation:1.1s ease-in-out infinite alternate kk-night-nag;display:flex;position:fixed;box-shadow:0 10px 26px -14px #000000e6}@keyframes kk-night-nag{0%{background-color:#6a1722}to{background-color:#9c2433}}@media (prefers-reduced-motion:reduce){.kk-night-unconfirmed{animation:none}}.kk-night-panels{flex-direction:column;gap:14px;min-width:0;display:flex}.kk-night-panel,.kk-night-panel .kk-target-grid{min-width:0}.kk-night-panel-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin:0 0 8px;display:flex}.kk-night-panel-title{min-width:0;color:var(--kk-paper);overflow-wrap:anywhere;margin:0;font-size:17px;font-weight:700;line-height:1.3}.kk-night-charge{border:1px solid var(--kk-moon);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--kk-moon);border-radius:999px;flex:none;padding:3px 10px;font-size:11.5px;font-weight:600}.kk-night-desc{color:var(--kk-muted);overflow-wrap:anywhere;margin:0 0 12px;font-size:14px;line-height:1.55}.kk-night-note{color:var(--kk-muted);overflow-wrap:anywhere;margin:12px 0 0;font-size:13px;line-height:1.5}.kk-night-warning{border:1px solid var(--kk-blood);color:var(--kk-paper);overflow-wrap:anywhere;background:#b3293a1f;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:13.5px;font-weight:600;line-height:1.5}.kk-night-incomplete{min-height:34px;margin:14px 0 0}.kk-night-empty{color:var(--kk-muted);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.55}.kk-night-chip-label{color:var(--kk-paper);margin:14px 0 8px;font-size:13px;font-weight:600}.kk-night-chips{flex-wrap:wrap;gap:8px;display:flex}.kk-night-chip{border:2px solid var(--kk-line);background:var(--kk-bg-2);min-height:48px;color:var(--kk-paper);cursor:pointer;border-radius:999px;padding:10px 16px;font-family:inherit;font-size:14.5px;font-weight:600;transition:border-color .12s,background .12s,transform .12s}.kk-night-chip:active{transform:scale(.97)}.kk-night-chip--selected{border-color:var(--kk-blood);background:#b3293a29}.kk-night-submit{width:100%}.kk-night-ready{width:100%;color:var(--kk-paper);background:#ece5d817;margin-bottom:12px}.kk-night-ready:disabled{color:var(--kk-muted);cursor:default}.kk-night-status{text-align:center;flex-direction:column;justify-content:center;gap:2px;min-height:48px;display:flex}.kk-night-status-ok{color:var(--kk-village);overflow-wrap:anywhere;margin:0;font-size:13.5px;font-weight:600;line-height:1.5}.kk-night-status-error{color:#f0a9b2;overflow-wrap:anywhere;margin:0;font-size:13.5px;font-weight:600;line-height:1.5}@media (prefers-reduced-motion:reduce){.kk-night-chip{transition:none}.kk-night-chip:active{transform:none}}
.kk-peek{flex:none;display:inline-flex;position:relative}.kk-peek-btn{border:1px solid var(--kk-line);min-width:44px;min-height:44px;color:var(--kk-muted);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;background:0 0;border-radius:10px;padding:4px 12px;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1.2;transition:border-color .14s,color .14s}.kk-peek-btn--open{color:var(--kk-paper);border-color:#e8d9a866}.kk-peek-panel{z-index:40;border:1px solid var(--kk-line);background:var(--kk-panel-2);text-align:left;-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;width:max-content;max-width:min(78vw,300px);padding:10px 12px;animation:.14s ease-out both kk-peek-in;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 26px #00000073}@keyframes kk-peek-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.kk-peek-role{color:#ece5d875;overflow-wrap:anywhere;font-size:16px;font-weight:700;line-height:1.25}.kk-peek-charges{color:#ece5d857;overflow-wrap:anywhere;font-size:11.5px;font-weight:600;line-height:1.3}.kk-peek-intel{border-top:1px solid var(--kk-line);flex-direction:column;gap:5px;width:100%;margin-top:2px;padding-top:7px;display:flex}.kk-peek-intel-title{letter-spacing:.12em;color:#ece5d84d;font-size:9.5px;font-weight:700;line-height:1.2}.kk-peek-intel-list{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.kk-peek-intel-item{color:#ece5d870;overflow-wrap:anywhere;font-size:12px;font-weight:400;line-height:1.4}.kk-peek-hint{color:#ece5d842;overflow-wrap:anywhere;font-size:10.5px;font-weight:400;line-height:1.3}@media (prefers-reduced-motion:reduce){.kk-peek-btn{transition:none}.kk-peek-panel{animation:none}}
