.nh-cabinet,.nh-preview-card,.nh-illustration{--nh-ink:#f3f1ff;--nh-accent:#94f1e5;--nh-edge:#78609f;box-sizing:border-box;color:var(--nh-ink)}
.nh-cabinet{max-width:56rem;margin:1rem auto;padding:clamp(.85rem,3vw,1.8rem);border:2px solid var(--nh-edge);border-radius:1.35rem;background:radial-gradient(ellipse at 90% 0,#442753 0,transparent 50%),linear-gradient(140deg,#191c3c,#0e172a);box-shadow:0 12px 36px #0005;text-align:left;overflow:hidden}
.nh-cabinet[data-nh-game="harbor-bells"],.nh-preview-card[data-nh-game="harbor-bells"]{--nh-accent:#ffda9c;--nh-edge:#917957;background:radial-gradient(ellipse at 85% 0,#325462 0,transparent 55%),linear-gradient(140deg,#123247,#102330)}
.nh-cabinet *,.nh-preview-card *{box-sizing:border-box}
.nh-heading{text-align:center;margin:0 0 1.1rem}
.nh-heading h3{color:var(--nh-accent);font-size:clamp(1.4rem,4.5vw,2rem);line-height:1.2;margin:.25rem 0 .7rem;overflow-wrap:anywhere}
.nh-heading p{margin:.4rem 0;line-height:1.5}
.nh-heading .nh-kicker{font-size:.74rem;letter-spacing:.15em;font-weight:800;color:var(--nh-accent)}
.nh-window{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.25rem,1.4vw,.7rem);padding:clamp(.4rem,1.8vw,.85rem);border:2px solid var(--nh-edge);border-radius:1rem;background:#080e20;box-shadow:inset 0 2px 15px #0008}
[data-nh-game="harbor-bells"] .nh-window{grid-template-columns:repeat(3,minmax(0,1fr));background:#081d2a}
.nh-reel{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;aspect-ratio:4/5;max-height:10.5rem;border:2px solid #47526f;border-radius:.65rem;background:linear-gradient(#2d3357,#1b2240 25%,#202b4b 80%,#344159);box-shadow:inset 0 0 15px #0005}
[data-nh-game="harbor-bells"] .nh-reel{background:linear-gradient(#305160,#143447 25%,#214757 80%,#355663);border-color:#5c787d}
.nh-reel .nh-symbol{display:block;width:88%;height:auto;max-height:8rem}
.nh-reel.nh-hit{border-color:var(--nh-accent);box-shadow:inset 0 0 13px #9ae4d21c,0 0 0 1px var(--nh-accent)}
[data-nh-motion="true"][aria-busy="true"] .nh-cabinet .nh-window,.nh-cabinet[data-nh-motion="true"][aria-busy="true"] .nh-window{border-color:var(--nh-accent);animation:nh-wait-outline 1.8s ease-in-out infinite}
@keyframes nh-wait-outline{0%,100%{box-shadow:inset 0 2px 15px #0008,0 0 0 1px #94f1e518}50%{box-shadow:inset 0 2px 15px #0008,0 0 0 3px #94f1e538}}
.nh-counted{position:absolute;right:.17rem;bottom:.17rem;display:grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--nh-accent);color:#0e2633;font-size:.85rem;font-weight:900;line-height:1}
.nh-placeholder{color:#a8a8d5;font-size:clamp(1.5rem,7vw,3rem)}
.nh-receipt{margin:.95rem 0;padding:.9rem 1rem;border:1px solid #647394;border-radius:.75rem;background:#070e1e99;text-align:center;line-height:1.5;overflow-wrap:anywhere}
.nh-receipt p{margin:0}
.nh-receipt[data-nh-ready="true"]{border-color:var(--nh-accent)}
.nh-outcome{font-size:1rem;font-weight:750;color:var(--nh-accent)}
.nh-totals{display:flex;justify-content:center;gap:.75rem 2rem;flex-wrap:wrap;margin:.8rem 0 .3rem}
.nh-totals>div{min-width:8rem}
.nh-totals dt{font-size:.8rem;color:#ccd5e4;line-height:1.5}
.nh-totals dd{font-size:clamp(1.15rem,3.8vw,1.55rem);font-weight:800;margin:0;font-variant-numeric:tabular-nums;line-height:1.4}
.nh-receipt .nh-multiplier{margin-top:.6rem;font-size:.82rem;color:#d4d9e6}
.nh-rules{margin-top:1rem;border-top:1px solid #596482;padding-top:.8rem;line-height:1.6;font-size:.92rem}
.nh-rules summary{cursor:pointer;color:var(--nh-accent);font-size:1rem;font-weight:750;line-height:1.5;padding:.2rem .1rem .5rem;min-height:2.5rem}
.nh-rules:not([open])>:not(summary){display:none}
.nh-rules summary:focus-visible,.nh-preview-card a:focus-visible{outline:3px solid #fbe9a5;outline-offset:4px;border-radius:.25rem}
.nh-rules p{margin:.85rem 0;overflow-wrap:anywhere}
.nh-paytable{width:100%;table-layout:fixed;border-collapse:collapse;border:1px solid #596781;border-radius:.5rem;margin:.5rem 0 .9rem;font-variant-numeric:tabular-nums;font-size:.86rem;line-height:1.35}
.nh-paytable caption{text-align:left;color:#d6dce9;line-height:1.5;font-size:.82rem;padding:.2rem 0 .6rem;caption-side:top}
.nh-paytable th,.nh-paytable td{padding:.55rem .4rem;border-bottom:1px solid #485572;text-align:center;vertical-align:middle;overflow-wrap:anywhere}
.nh-paytable thead th{background:#0a1424;color:#e8eef6;font-size:.8rem}
.nh-paytable th:first-child{width:44%;text-align:left}
.nh-paytable tbody tr:nth-child(2n){background:#ffffff06}
.nh-paytable tbody th{font-weight:600;color:#f0eff7}
.nh-paytable tbody td{color:var(--nh-accent);font-weight:800}
.nh-table-symbol{display:flex;align-items:center;gap:.5rem;text-align:left}
.nh-table-symbol>.nh-symbol{width:2.25rem;height:2.25rem;flex:0 0 2.25rem}
.nh-wild{display:block;margin-top:.13rem;font-size:.65rem;line-height:1.4;letter-spacing:.02em;color:var(--nh-accent);font-weight:650}
.nh-demo-notice{padding:.8rem;border-left:3px solid var(--nh-accent);border-radius:.2rem;background:#ffffff08;color:#e4e9f0;font-size:.85rem}
.nh-cover{display:block;min-width:0;width:100%;line-height:0;overflow:hidden;border-radius:.8rem}
.nh-cover>svg{display:block;width:100%;height:auto;aspect-ratio:32/15}
#neon-harbor-preview{margin-top:1rem;color:#edf0f5}
.nh-preview-note{padding:.95rem 1.1rem;border:1px solid #818196;border-radius:.8rem;background:#10182a;font-size:.95rem;line-height:1.6;color:#e4e9f2}
.nh-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));gap:1.2rem;align-items:start}
.nh-preview-card{min-width:0;padding:clamp(.85rem,2vw,1.2rem);border:1px solid var(--nh-edge);border-radius:1.15rem;background:linear-gradient(145deg,#27213f,#121b30);line-height:1.6}
.nh-preview-card h3{margin:.15rem 0 .8rem;color:var(--nh-accent);font-size:clamp(1.2rem,3.5vw,1.6rem);line-height:1.3;overflow-wrap:anywhere}
.nh-preview-card p{margin:.8rem 0;overflow-wrap:anywhere}
.nh-preview-card .nh-illustration{margin:1rem 0 .6rem}
.nh-preview-card .nh-fixed-caption{color:#d2dbe8;font-size:.8rem;line-height:1.5}
.nh-preview-card .nh-preview-link{display:flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.7rem 1rem;margin-top:1rem;border:1px solid var(--nh-accent);border-radius:.65rem;color:var(--nh-accent);background:#0b182c;text-decoration:none;font-weight:750;text-align:center;line-height:1.4}
.nh-preview-card .nh-preview-link:hover{background:#23334b;text-decoration:underline}
@media(max-width:420px){.nh-cabinet{padding:.7rem;border-radius:1rem}.nh-window{gap:.22rem;padding:.35rem}.nh-reel{border-radius:.4rem}.nh-counted{width:.95rem;height:.95rem;font-size:.7rem}.nh-totals{gap:.7rem 1rem}.nh-totals>div{min-width:6rem}.nh-paytable{font-size:.75rem}.nh-paytable th,.nh-paytable td{padding:.48rem .25rem}.nh-paytable thead th{font-size:.7rem}.nh-table-symbol{gap:.3rem}.nh-table-symbol>.nh-symbol{width:1.65rem;height:1.65rem;flex-basis:1.65rem}.nh-rules{font-size:.85rem}}
[data-nh-motion="false"] .nh-cabinet *,[data-motion="false"] .nh-cabinet *,.nh-cabinet[data-motion="false"] *,.no-motion .nh-cabinet *,.nh-cabinet.no-motion *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.nh-cabinet *,.nh-preview-card *,.nh-cover *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
