/* Lottery number generator */
.ccc .lng [hidden] { display: none !important; }
.lng { display: grid; gap: 20px; }
@media (min-width: 1000px) { .lng { grid-template-columns: 1fr 1.25fr; align-items: start; } }
.lng-rule { color: var(--c-muted); font-size: 13.5px; margin: -4px 0 12px; }
.ccc .lng input[type="text"] { max-width: 160px; text-align: left; }
.lng-err { color: var(--danger, #f87171); font-size: 13.5px; margin: 10px 0 0; }
.lng-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 12px; }
.lng-head .cc-panel__title { margin: 0; }
.lng-tools { display: flex; gap: 6px; }
.lng-small { background: none; border: 1px solid var(--c-line); color: var(--c-muted); border-radius: 8px; padding: 6px 12px; font: 600 12.5px var(--font, sans-serif); cursor: pointer; }
.lng-small:hover { color: var(--text, #fff); }
.lng-lines { display: grid; gap: 8px; }
.lng-line { display: flex; align-items: center; gap: 10px; background: var(--surface-2, #1c212a); border: 1px solid var(--c-line); border-radius: 12px; padding: 10px 12px; }
.lng-i { flex: none; font: 700 12px var(--mono, monospace); color: var(--c-muted); width: 14px; }
.lng-balls { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; min-width: 0; }
.lng-b { width: 38px; height: 38px; border-radius: 50%; display: inline-grid; place-items: center; font: 800 15px var(--mono, monospace); color: #10140a; background: radial-gradient(circle at 35% 30%, #fff 0 15%, #e5e7eb 55%, #9ca3af 100%); box-shadow: inset 0 -3px 6px rgba(0, 0, 0, .2); }
.lng-b.is-x { background: radial-gradient(circle at 35% 30%, #f7fee7 0 15%, #bef264 50%, #65a30d 100%); }
.lng-plus { color: var(--c-muted); font-weight: 700; margin: 0 2px; }
.lng-key { display: flex; align-items: center; gap: 8px; color: var(--c-muted); font-size: 12.5px; margin: 4px 0 0; }
.lng-key .lng-b { width: 14px; height: 14px; }
.lng-empty { color: var(--c-muted); margin: 0; }
.lng-odds { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 12px; margin-top: 14px; padding: 10px 14px; border-radius: 10px; border: 1px solid var(--c-line); font-size: 13px; color: var(--c-muted); }
.lng-odds b { font: 700 16px var(--mono, monospace); color: var(--text, #e7eaf0); }
.lng-hist { margin-top: 14px; }
.ccc .lng-hist h3 { font-size: 13px; color: var(--c-muted); margin: 0 0 6px; font-weight: 600; }
.lng-hist ol { margin: 0; padding-left: 18px; font: 12.5px/1.6 var(--mono, monospace); color: var(--c-muted); }
.lng-hist b { font-family: var(--font, sans-serif); color: var(--text, #e7eaf0); margin-right: 4px; }
.lng-link { background: none; border: 0; color: var(--c-accent-2); font: 600 12px var(--font, sans-serif); cursor: pointer; margin-left: 6px; }
@media (max-width: 420px) { .lng-b { width: 32px; height: 32px; font-size: 13px; } .lng-line { padding: 8px; gap: 6px; } }
@media print {
	body.lng-printing * { visibility: hidden; }
	body.lng-printing .lng-out, body.lng-printing .lng-out * { visibility: visible; }
	body.lng-printing .lng-out { position: absolute; left: 0; top: 0; width: 100%; background: #fff; color: #000; border: 0; box-shadow: none; }
	body.lng-printing .lng-tools, body.lng-printing .lng-hist { display: none; }
	body.lng-printing .lng-line { background: #fff; border-color: #bbb; }
}
