.cup-cs { z-index: 140; }
.cup-cs-p { width: 400px; gap: 10px; }
.cup-cs-drop { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; height: 220px; border: 1px solid #262626; border-radius: 14px; background: var(--bg-raised); cursor: pointer; transition: border-color .14s, background .14s; }
.cup-cs-drop:hover, .cup-cs-drop.over { border-color: #3a3a3a; background: var(--bg-card-hover); }
.cup-cs-drop.busy { cursor: progress; opacity: .6; }
.cup-cs-drop-b { font-size: 1rem; font-weight: 700; color: var(--white); }
.cup-cs-drop-s { font-size: .8rem; color: #8a8a8a; }
.cup-cs-edit { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.cup-cs-stage { position: relative; width: 240px; height: 240px; overflow: hidden; border-radius: 12px; background: #111; cursor: grab; touch-action: none; user-select: none; }
.cup-cs-stage.drag { cursor: grabbing; }
.cup-cs-stage img { position: absolute; max-width: none; pointer-events: none; }
.cup-cs-ring { position: absolute; inset: 0; border-radius: 50%; box-shadow: 0 0 0 200px rgba(0,0,0,.6); outline: 1px solid rgba(255,255,255,.7); pointer-events: none; }
.cup-cs-zoom { display: flex; align-items: center; gap: 10px; width: 240px; color: #8a8a8a; font-size: .8rem; }
.cup-cs-zoom input { flex: 1; min-width: 0; }
.cup-cs-link { flex-shrink: 0; padding: 4px 0; border: 0; background: none; color: var(--text-2); font: inherit; font-size: .8rem; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.cup-cs-link:hover:not(:disabled) { color: var(--white); }
.cup-cs-link:disabled { color: var(--text-mute); cursor: default; }
.cup-cs-f { display: flex; flex-direction: column; gap: 5px; margin-top: 4px; font-size: .84rem; font-weight: 600; color: var(--text); }
.cup-cs-f > span { display: flex; align-items: baseline; gap: 8px; }
.cup-cs-f i { font-style: normal; font-weight: 400; font-size: .76rem; color: #8a8a8a; }
.cup-cs-p .cup-adm-in { height: 40px; font-size: .92rem; }
.cup-cs-err { margin-top: -4px; font-size: .78rem; color: #ef4444; }
.cup-cs-note { font-size: .8rem; color: #8a8a8a; }
.cup-cs-buy { width: 100%; height: 46px; margin-top: 6px; }
.cup-cs-p .cup-cs-buy:disabled { opacity: 1; background: rgba(255,255,255,.08); color: rgba(255,255,255,.35); cursor: default; }
.cup-cs-p .cup-cs-buy:disabled { border-color: rgba(255,255,255,.1); }
.cup-cs-coin { width: 14px; height: 14px; margin-left: 4px; vertical-align: -2px; }
.cup-cs-buy:not(:disabled) .cup-cs-coin { filter: invert(1); }
button:disabled .cup-cs-coin { opacity: .35; }
.cup-cs-row { display: flex; gap: 8px; }
.cup-cs-p .cup-cs-gen { margin-left: auto; padding: 0; font-weight: 400; }
#cupCsMOwn .cup-cs-f { margin-top: 10px; }
#cupCsMOwn .cup-cs-row + .cup-cs-row, .cup-cs-p .cup-cs-row + .cup-cs-off, .cup-cs-p .cup-cs-err + .cup-cs-off { margin-top: 8px; }
#cupCsMOwn .cup-cs-note { margin-top: 6px; }
.cup-cs-old { display: flex; align-items: center; min-height: 40px; }
.cup-cs-pw { position: relative; flex: 1; min-width: 0; display: flex; }
.cup-cs-p .cup-cs-pw .cup-adm-in { padding-right: 42px; letter-spacing: .04em; background: transparent; border-color: #262626; cursor: default; }
.cup-cs-eye { position: absolute; top: 4px; right: 4px; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 8px; background: none; color: #8a8a8a; font-size: .84rem; cursor: pointer; transition: color .14s; }
.cup-cs-eye:hover, .cup-cs-eye:focus-visible { color: var(--white); }
.cup-cs-p .cup-adm-btn { flex-shrink: 0; height: 40px; padding: 0 14px; font-size: .84rem; font-weight: 600; color: #fff; border-color: #3a3a3a; }
.cup-cs-p .cup-adm-btn:disabled { color: rgba(255,255,255,.35); background: var(--bg-raised); border-color: #222; cursor: default; }
.cup-cs-p .cup-cs-off { width: 100%; height: 36px; color: #bbb; font-weight: 500; border-color: #2a2a2a; }
.cup-cs-p .cup-cs-off:hover:not(:disabled) { color: #fff; }
.cup-cs-p .cup-adm-btn:disabled:hover { color: rgba(255,255,255,.35); background: var(--bg-raised); border-color: #222; }
.cup-cs-ball { flex-shrink: 0; width: 52px; height: 52px; overflow: hidden; border-radius: 50%; background: #111; }
.cup-cs-ball img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cup-cs-who { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.cup-cs-who .cup-set-t { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cup-cs-who span { font-size: .8rem; color: #8a8a8a; }
.cup-cs-bal { margin-top: 6px; font-size: .78rem; color: #8a8a8a; }
.cup-cs-p #cupCsMGot { display: flex; }
.cup-cs-p #cupCsMGot[hidden] { display: none; }
.cup-cs-p #cupCsMGot .cup-over-a { width: 100%; }
.cup-cs-head { color: rgba(255,255,255,.9); }
.cup-skin.cup-cs-new { display: flex; align-items: center; justify-content: center; background: #1a1a1a; border: none; color: #8a8a8a; font-size: 1.25rem; }
.cup-skin.cup-cs-new:hover { background: #222; color: #fff; }
.cup-cs-ed { position: absolute; right: -2px; bottom: -2px; display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: #1b1b1b; border: 1px solid #3a3a3a; color: #bbb; font-size: .62rem; opacity: 0; transition: opacity .14s, color .14s; }
.cup-skin.cs:hover .cup-cs-ed, .cup-skin.cs.sel .cup-cs-ed, .cup-cs-ed:focus { opacity: 1; }
.cup-cs-ed:hover { color: var(--white); }
.cup-skins-none button { display: inline-flex; align-items: center; flex-shrink: 0; height: 40px; padding: 0 18px; border: 1px solid var(--border); border-radius: 12px; background: var(--bg-raised); color: var(--text); font: inherit; font-size: .9rem; font-weight: 600; cursor: pointer; }
.cup-skins-none button:hover { background: var(--bg-card-hover); border-color: #3a3a3a; }
@media (pointer: coarse) {
    .cup-cs-ed { opacity: 1; }
    .cup-cs-eye { top: 0; right: 0; width: 40px; height: 40px; }
}
@media (max-width: 480px) {
    .cup-cs-p { padding: 16px 16px 18px; }
    .cup-cs-drop { height: 180px; }
}
@media (min-width: 2200px) and (min-height: 1300px) {
    .cup-cs-p, body:has(.cup-cs:not([hidden])) .cf-box { zoom: 1.3; }
}
@media (min-width: 3200px) and (min-height: 1800px) {
    .cup-cs-p, body:has(.cup-cs:not([hidden])) .cf-box { zoom: 1.6; }
}
.cup-cs-ups { display: flex; flex-direction: column; gap: 8px; }
.cup-cs-ups .cup-cset-row { min-height: 40px; cursor: default; }
.cup-cs-ups label.cup-cset-row { cursor: pointer; }
.cup-cs-p .cup-cs-hd { margin-top: 4px; }
.cup-cs-p .cup-cs-hd b { width: auto; font-family: var(--body); color: #8a8a8a; }
.cup-cs-ups .cup-cset-row b { width: auto; white-space: nowrap; font-weight: 500; color: var(--text); }
.cup-cs-ups .cup-cset-row > span { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cup-cs-ups .cup-adm-btn { min-width: 92px; }
@media (max-width: 480px) {
    .cup-cs-ups .cup-cset-row { gap: 10px; }
    .cup-cs-ups .cup-adm-btn { min-width: 0; padding: 0 12px; }
}
