.loot-intro{display:flex;flex-wrap:wrap;gap:20px;padding:18px 0 28px;color:var(--text-muted);font-size:13px}.loot-intro strong{margin-left:auto;color:var(--text)}.loot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:24px}.loot-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.loot-art{height:240px;background:radial-gradient(ellipse at 50% 65%,#24a36a66,transparent 65%),linear-gradient(135deg,#0d251c,#174b35);display:grid;place-items:center;position:relative;overflow:hidden}.loot-art img{width:85%;height:190px;object-fit:contain;filter:drop-shadow(0 15px 18px #0005);transition:transform .4s}.loot-card:hover .loot-art img{transform:translateY(-6px) rotate(-3deg)}.loot-art-tag{position:absolute;top:18px;left:20px;font-size:10px;letter-spacing:.16em;color:#c6f5d9}.loot-gift{width:122px;height:100px;background:linear-gradient(115deg,#94dfb3,#329367);border-radius:8px;position:relative;transform:rotate(-8deg);box-shadow:8px 14px 0 #0002,0 20px 45px #4fda9744}.loot-gift:before{content:'';position:absolute;top:-12px;left:-8px;width:138px;height:27px;border-radius:5px;background:#a5edc1;box-shadow:0 5px 0 #0001}.loot-gift:after{content:'';position:absolute;left:50px;top:-12px;width:22px;height:112px;background:#f4d98d}.loot-gift span:before,.loot-gift span:after{content:'';position:absolute;top:-43px;width:38px;height:28px;border:9px solid #f4d98d;border-radius:35px 35px 0 35px;left:19px;transform:rotate(10deg)}.loot-gift span:after{left:57px;transform:scaleX(-1) rotate(10deg)}.loot-card h2{padding:24px 24px 0;font-size:24px}.loot-prizes{list-style:none;margin:18px 24px;padding:0}.loot-prizes li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border);font-size:14px}.loot-prizes strong{font-size:12px;color:var(--text-muted)}.loot-actions{padding:0 24px 24px;display:grid;gap:10px;margin-top:auto}.loot-actions small{font-size:12px;line-height:1.6}.loot-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;min-height:44px;padding:10px 16px;font:inherit;cursor:pointer}.loot-secondary:disabled{opacity:.6;cursor:default}.loot-history{margin-top:32px}.loot-history ul{list-style:none;padding:0}.loot-history li{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--border);font-size:14px}.loot-history li>span:last-child{text-align:right}.loot-history small{display:block;margin-top:6px}.loot-dialog{width:min(680px,calc(100% - 28px));max-width:100%;padding:28px 0;border:1px solid var(--border);border-radius:24px;background:var(--surface);color:var(--text);text-align:center;overflow:hidden}.loot-dialog::backdrop{background:#111526bb;backdrop-filter:blur(5px)}.loot-dialog h2,.loot-dialog p{padding:0 22px}.loot-dialog p{min-height:44px;line-height:1.6}.loot-reel-window{position:relative;overflow:hidden;margin:28px 0;background:var(--bg);padding:20px 0}.loot-marker{position:absolute;top:0;bottom:0;width:3px;background:var(--accent);left:50%;box-shadow:0 0 18px var(--accent)}.loot-marker:before{content:'';position:absolute;left:-7px;top:0;border-top:13px solid var(--accent);border-left:8px solid transparent;border-right:8px solid transparent}#loot-reel{display:flex;gap:12px;width:max-content;will-change:transform}.loot-reel-item{width:140px;height:140px;flex:none;border-radius:16px;border:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;font-size:15px}.loot-reel-item b{font-size:34px;color:var(--accent)}.loot-reel-item.money{background:linear-gradient(135deg,var(--accent-soft),var(--surface))}.loot-admin-nav{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.loot-admin-nav a{padding:10px 14px;border:1px solid var(--border);border-radius:10px}.loot-admin-nav [aria-current]{background:var(--accent-soft)}.loot-admin{display:grid;gap:22px}.loot-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.loot-admin label{display:grid;gap:8px;font-size:14px}.loot-admin input:not([type=checkbox]):not([type=file]),.loot-admin select{width:100%;min-width:0;padding:12px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface);color:var(--text)}.loot-admin .loot-checkbox{display:flex;align-items:center}.loot-prize-row{display:grid;grid-template-columns:1fr 1fr 1fr 36px;gap:12px;margin-bottom:14px;align-items:end}.loot-remove{border:0;background:transparent;color:var(--text-muted);height:44px;font-size:26px;cursor:pointer}.loot-admin-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.loot-admin-bottom .wheel-primary{margin-left:auto}.loot-admin-preview{height:90px;max-width:100%;object-fit:contain}.loot-admin #loot-total.invalid{color:#d64a4a}@media(max-width:600px){.loot-fields{grid-template-columns:1fr}.loot-prize-row{gap:6px;grid-template-columns:1.2fr 1fr 1fr 26px}.loot-admin input:not([type=checkbox]):not([type=file]),.loot-admin select{padding:8px}.loot-history li{grid-template-columns:1fr auto}.loot-history li>span:last-child{grid-column:1/-1;text-align:left}.loot-intro{gap:12px}.loot-intro strong{margin-left:0;width:100%}}@media(prefers-reduced-motion:reduce){.loot-art img{transition:none}}



/* Призы перечислены обычными полями, без рамок вокруг групп. */
.loot-admin .loot-prize-row { grid-template-columns: minmax(0, 1fr); gap: 18px; margin: 0 0 32px; padding: 0; }
.loot-prize-number { font-size: 16px; color: var(--text); }
.loot-admin .loot-remove { justify-self: start; font: inherit; font-size: 14px; height: auto; padding: 0; color: var(--danger); }
.loot-admin .loot-remove:disabled { opacity: .5; cursor: default; }
.loot-admin .loot-checkbox { margin: 0; }
.loot-admin #loot-total { font-size: 14px; }

.loot-image-field { display: grid; gap: 12px; min-width: 0; }
#loot-image-label { font-size: 14px; font-weight: 600; }
.loot-image-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.loot-admin label.loot-image-button { display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 10px 16px; border: 1px solid var(--accent); border-radius: 12px; background: var(--accent-soft); color: var(--accent); cursor: pointer; }
.loot-image-button:hover { background: var(--accent); color: var(--on-accent); }
#loot-image:focus-visible + .loot-image-button { outline: 2px solid var(--accent); outline-offset: 3px; }
#loot-image-name { min-width: 0; overflow-wrap: anywhere; font-size: 13px; color: var(--text-muted); }
#loot-image-help { color: var(--text-muted); line-height: 1.5; }
#loot-image-error { margin: 0; font-size: 13px; color: var(--danger); }
.loot-image-preview { width: 140px; height: 110px; padding: 8px; border: 1px solid var(--border); border-radius: 14px; background: var(--surface-hover); }
.loot-image-preview img { width: 100%; height: 100%; object-fit: contain; border-radius: 8px; }
.loot-admin .loot-prize-row + .loot-prize-row { padding-top: 24px; border-top: 1px solid var(--border); }

@media (max-width: 767px) {
  .loot-dialog { padding: 20px 0; overflow-y: auto; }
  .loot-dialog #loot-close, .loot-dialog #loot-retry { max-width: calc(100% - 32px); min-height: 44px; }
  .loot-prizes li { gap: 12px; flex-wrap: wrap; }
}
@media (max-width: 480px) {
  .loot-prize-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; padding-bottom: 16px; border-bottom: 1px solid var(--border); }
  .loot-prize-row > :first-child { grid-column: 1 / -1; }
  .loot-remove { width: 44px; justify-self: end; }
}

.loot-label-preview { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 16px; margin: 0; padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-hover); overflow-wrap: anywhere; }
.loot-label-preview small { width: 100%; color: var(--text-muted); }
.loot-label-preview strong { margin-left: auto; font-size: 13px; color: var(--text-muted); }
.loot-prizes li > span, .loot-prizes strong, .loot-reel-item span { min-width: 0; overflow-wrap: anywhere; }
.loot-prizes li { gap: 12px; }
.loot-prizes strong { max-width: 55%; text-align: right; }
.loot-reel-item span { width: 100%; padding: 0 8px; text-align: center; max-height: 80px; overflow-y: auto; line-height: 1.35; }
