.move-prize { width:28px; height:28px; border:1px solid #d8e1d9; border-radius:6px; background:#f7faf6; color:#31533c; font-size:14px; font-weight:900; cursor:pointer; }.move-prize:hover { border-color:#9fbc74; background:#eff8dc; }.move-prize:disabled { opacity:.3; cursor:not-allowed; }
.loss-segment-control { margin-top:12px; padding-top:10px; border-top:1px solid #f0ddd5; }.loss-segment-control>label { display:block; margin-bottom:6px; color:#926b5e; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }.loss-segment-control>div { display:flex; gap:6px; }.loss-segment-control input { width:58px; padding:7px 6px; border:1px solid #e7cfc5; border-radius:6px; background:#fff; color:#7f5143; font:700 11px 'DM Mono',monospace; }.loss-segment-control button { border:1px solid #d9a994; border-radius:6px; padding:7px 9px; background:#fff; color:#a85f47; font-size:9px; font-weight:800; cursor:pointer; }.loss-segment-control button:hover { background:#fff1eb; }.loss-segment-control button:disabled { opacity:.55; cursor:wait; }.loss-segment-control small { display:block; margin-top:6px; color:#a5877d; font-size:9px; }
@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --ink: #18201b;
  --muted: #78817a;
  --line: #e6ebe5;
  --paper: #f7f9f5;
  --card: #ffffff;
  --forest: #1d3329;
  --forest-2: #294b3b;
  --lime: #d8ff5c;
  --lime-soft: #efffc2;
  --blue: #a8e8f3;
  --orange: #ffb36b;
  --pink: #ff90ad;
  --shadow: 0 16px 40px rgba(25, 49, 37, .07);
}
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Manrope, ui-sans-serif, system-ui, sans-serif; font-size: 14px; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }
.app-shell { min-height: 100vh; display: flex; }
.login-shell { min-height:100vh; display:grid; place-items:center; padding:24px; background:radial-gradient(circle at 70% 20%, #294835 0, #15271d 38%, #0d1711 100%); }
.login-card { width:min(100%,420px); padding:38px; border-radius:18px; background:#fff; box-shadow:0 26px 80px rgba(0,0,0,.32); }
.login-brand { padding:0 0 36px; color:var(--forest); }
.login-card h1 { margin:8px 0 10px; font-size:34px; }
.login-card p { color:#6d776f; line-height:1.55; margin:0 0 25px; }
.login-card label { display:block; margin-bottom:8px; color:var(--forest); font-size:12px; font-weight:800; }
.login-card input { width:100%; min-height:48px; padding:0 13px; border:1px solid #ccd6cd; border-radius:8px; font:inherit; margin-bottom:14px; }
.login-card input:focus { outline:3px solid rgba(216,255,92,.5); border-color:var(--forest); }
.login-card .primary-button { min-height:48px; margin-top:4px; }
.login-error { margin:0 0 14px; padding:10px 12px; border-radius:7px; background:#fff0f1; color:#a32937; font-size:12px; font-weight:700; }
.sidebar { width: 254px; flex-shrink: 0; background: var(--forest); color: #e9f0e9; padding: 27px 15px 17px; display: flex; flex-direction: column; }
.brand { display: flex; align-items: center; gap: 10px; padding: 0 12px 32px; font-size: 20px; letter-spacing: -.06em; }
.brand strong { font-weight: 800; }.brand em { font-style: normal; font-weight: 400; color: var(--lime); }
.brand-mark { width: 28px; height: 28px; border: 2px solid var(--lime); border-radius: 50%; position: relative; transform: rotate(12deg); }
.brand-mark span { position: absolute; height: 2px; width: 9px; background: var(--lime); left: 7px; top: 11px; transform-origin: left center; }.brand-mark span:nth-child(1){transform:rotate(-48deg)}.brand-mark span:nth-child(2){transform:rotate(38deg)}.brand-mark span:nth-child(3){transform:rotate(126deg)}.brand-mark span:nth-child(4){transform:rotate(215deg)}
.workspace-label { color: #7e9a8b; font-size: 9px; font-weight: 800; letter-spacing: .14em; padding: 0 12px 9px; }
.workspace-switcher { background: #294637; border: 1px solid #3a5a49; border-radius: 10px; padding: 10px; display: flex; align-items: center; gap: 9px; margin: 0 3px 23px; }
.workspace-dot { width: 22px; height: 22px; background: var(--lime); border-radius: 6px; display: inline-block; position: relative; }.workspace-dot:after { content: "A"; color: #314534; font-size: 12px; font-weight: 800; position: absolute; inset: 2px 0 0 6px; }
.workspace-switcher strong, .workspace-switcher small, .user-card strong, .user-card small, .support-card strong, .support-card small { display: block; }.workspace-switcher strong { font-size: 11px; }.workspace-switcher small { color: #8ba797; font-size: 10px; margin-top: 2px; }.chevron { margin-left: auto; color: #8ba797; }
.main-nav { display: grid; gap: 3px; }.nav-item { border: 0; border-radius: 8px; background: transparent; color: #a9bcb0; text-align: left; padding: 10px 12px; display: flex; align-items: center; gap: 12px; font-size: 12px; transition: .2s; }.nav-item:hover { background: #294637; color: white; }.nav-item.active { background: var(--lime); color: var(--forest); font-weight: 800; }.nav-icon { width: 18px; text-align: center; font-weight: 700; font-size: 14px; }.nav-count { margin-left: auto; background: #5d7668; color: white; border-radius: 20px; min-width: 19px; text-align: center; padding: 2px 5px; font-size: 10px; }.nav-item.active .nav-count { background: var(--forest); color: var(--lime); }.nav-dot { width: 6px; height: 6px; background: var(--orange); border-radius: 50%; margin-left: auto; }.nav-divider { height: 1px; background: #355143; margin: 14px 12px; }
.sidebar-bottom { margin-top: auto; }.support-card { padding: 12px 10px; display: flex; align-items: center; gap: 9px; color: #a9bcb0; }.support-card strong { color: #dce9df; font-size: 10px; }.support-card small { font-size: 9px; margin-top: 3px; }.support-card > span:last-child { margin-left: auto; }.support-orb { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #638070; color: var(--lime); }
.user-card { display: flex; align-items: center; gap: 9px; border-top: 1px solid #355143; padding: 16px 7px 0; }.avatar { background: #f1c7a7; color: #6a4431; font-size: 10px; font-weight: 800; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; }.user-card strong { font-size: 10px; }.user-card small { color: #8ba797; font-size: 9px; margin-top: 2px; }.user-card button { border: 0; background: transparent; color: #8ba797; margin-left: auto; letter-spacing: 2px; }
.main-content { min-width: 0; flex: 1; }.topbar { height: 76px; border-bottom: 1px solid var(--line); background: #fff; padding: 0 37px; display: flex; align-items: center; justify-content: space-between; }.breadcrumbs { display: flex; align-items: center; gap: 10px; font-size: 12px; }.breadcrumbs span { color: #8f9990; }.breadcrumbs b { color: #c1c9c1; font-weight: 400; }.breadcrumbs strong { font-weight: 700; }.topbar-actions { display: flex; align-items: center; gap: 9px; }.icon-button { border: 0; background: transparent; color: #7b857c; width: 29px; height: 29px; border-radius: 50%; position: relative; }.icon-button:hover { background: var(--paper); }.has-notification:after { content: ""; position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--orange); right: 3px; top: 3px; }.outline-button, .primary-button { border-radius: 7px; padding: 10px 14px; border: 1px solid #dce5dc; background: white; color: var(--forest); font-size: 11px; font-weight: 800; }.outline-button:hover { border-color: var(--forest-2); }.primary-button { background: var(--forest); color: var(--lime); border-color: var(--forest); }.primary-button:hover { background: var(--forest-2); }.primary-button span { margin-left: 8px; font-size: 14px; }.main-content > #view-root { padding: 34px 37px 50px; max-width: 1500px; }
.page-heading { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 27px; }.eyebrow { color: #9aa49b; font-size: 9px; letter-spacing: .15em; font-weight: 800; margin-bottom: 7px; }.page-heading h1 { margin: 0; font-size: 27px; letter-spacing: -.055em; line-height: 1.1; }.page-heading p { margin: 9px 0 0; color: var(--muted); font-size: 12px; }.page-actions { display: flex; gap: 8px; }.select-control { background: white; border: 1px solid var(--line); border-radius: 7px; padding: 10px 12px; color: var(--ink); font-size: 11px; font-weight: 700; }
.kpi-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; margin-bottom: 15px; }.kpi-card { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 18px 19px 16px; min-height: 124px; }.kpi-top { display: flex; justify-content: space-between; align-items: flex-start; color: #8e988f; font-size: 11px; font-weight: 600; }.kpi-icon { width: 26px; height: 26px; border-radius: 7px; display: grid; place-items: center; color: var(--forest); background: var(--lime-soft); font-weight: 800; }.kpi-card:nth-child(2) .kpi-icon { background: #e0f7fa; }.kpi-card:nth-child(3) .kpi-icon { background: #ffeddc; }.kpi-card:nth-child(4) .kpi-icon { background: #f1e3ff; }.kpi-number { font-size: 25px; letter-spacing: -.06em; font-weight: 800; margin: 13px 0 6px; }.kpi-foot { font-size: 10px; color: #8b958c; }.positive { color: #449264; font-weight: 700; }.negative { color: #c77850; font-weight: 700; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .85fr); gap: 15px; }.panel { background: white; border: 1px solid var(--line); border-radius: 10px; padding: 21px; }.panel-heading { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 19px; }.panel-heading h2 { margin: 0; font-size: 14px; letter-spacing: -.03em; }.panel-heading p { margin: 5px 0 0; color: var(--muted); font-size: 10px; }.panel-link { border: 0; background: transparent; color: #6e8174; font-size: 10px; font-weight: 800; }.panel-link:hover { color: var(--forest); }.chart-legend { display: flex; gap: 15px; color: var(--muted); font-size: 10px; }.legend-dot { width: 7px; height: 7px; display: inline-block; border-radius: 50%; margin-right: 5px; }.legend-dot.lime { background: #b9e95b; }.legend-dot.blue { background: #9bdce6; }
.chart { height: 202px; display: flex; gap: 12px; position: relative; padding: 15px 0 22px 29px; }.chart:before { content: "2k\\A 1k\\A 0"; white-space: pre; position: absolute; left: 0; top: 14px; bottom: 18px; color: #b0b9b1; font: 9px/80px 'DM Mono', monospace; }.chart-grid { position: absolute; inset: 15px 0 22px 28px; background: repeating-linear-gradient(to bottom, #eef1ed 0, #eef1ed 1px, transparent 1px, transparent 52px); }.bar-group { flex: 1; position: relative; z-index: 1; display: flex; align-items: flex-end; justify-content: center; gap: 3px; }.bars { height: 100%; display: flex; align-items: flex-end; gap: 3px; }.bar { width: 7px; min-height: 3px; border-radius: 3px 3px 1px 1px; background: #b9e95b; }.bar.secondary { background: #9bdce6; }.bar-label { position: absolute; bottom: 0; color: #a0aaa1; font-size: 9px; }.inventory-panel { min-height: 273px; }.inventory-list { display: grid; gap: 12px; }.inventory-row { display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 9px; }.inventory-swatch { width: 8px; height: 8px; border-radius: 50%; }.inventory-label { font-size: 10px; font-weight: 700; }.inventory-meta { color: #a0a9a1; font: 9px 'DM Mono', monospace; margin-top: 3px; }.inventory-number { text-align: right; font: 10px 'DM Mono', monospace; color: #5d6c61; }.progress { grid-column: 2 / 4; height: 4px; background: #edf0eb; border-radius: 4px; margin-top: -5px; }.progress span { display: block; height: 100%; border-radius: 4px; background: var(--lime); }
.bottom-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-top: 15px; }.activity-list { display: grid; }.activity-row { display: grid; grid-template-columns: 29px 1fr auto; gap: 9px; align-items: center; padding: 10px 0; border-top: 1px solid #f0f2ef; }.activity-avatar { width: 27px; height: 27px; background: #e5f5cd; border-radius: 50%; display: grid; place-items: center; color: #55733a; font-size: 10px; font-weight: 800; }.activity-main { font-size: 10px; }.activity-main strong { font-weight: 800; }.activity-main small { display: block; color: #98a29a; margin-top: 3px; }.activity-time { font: 9px 'DM Mono', monospace; color: #9ca59d; }.status-pill { border-radius: 20px; font-size: 9px; font-weight: 800; padding: 4px 8px; }.status-pill.win { color: #528531; background: #e7f7c9; }.status-pill.loss { color: #9b8462; background: #fff3de; }
.view-card { background: white; border: 1px solid var(--line); border-radius: 10px; padding: 22px; }.toolbar { display: flex; align-items: center; gap: 8px; margin-bottom: 15px; }.search { position: relative; flex: 1; }.search input { width: 100%; border: 1px solid var(--line); padding: 10px 12px 10px 34px; border-radius: 7px; outline: none; font-size: 11px; }.search span { position: absolute; left: 13px; top: 9px; color: #a4aea5; }.table-wrap { overflow-x: auto; }.data-table { width: 100%; border-collapse: collapse; text-align: left; white-space: nowrap; }.data-table th { text-transform: uppercase; color: #9da69e; font-size: 9px; letter-spacing: .08em; font-weight: 800; padding: 10px 10px; border-bottom: 1px solid var(--line); }.data-table td { padding: 13px 10px; border-bottom: 1px solid #f0f2ef; font-size: 10px; }.data-table tr:last-child td { border-bottom: 0; }.person-cell { display: flex; align-items: center; gap: 8px; }.person-cell strong { font-size: 10px; }.mini-avatar { width: 26px; height: 26px; border-radius: 50%; background: #eaf4d4; color: #567541; display: grid; place-items: center; font-size: 9px; font-weight: 800; }.mono { color: #69776e; font: 10px 'DM Mono', monospace; }.muted { color: var(--muted); }.tag { background: #f0f3ed; color: #68786c; border-radius: 5px; padding: 4px 6px; font-size: 9px; font-weight: 700; }
.company-field input { min-width:240px; }.prize-actions { display:flex; gap:7px; }.danger-button { border:1px solid #efcaca; background:#fff7f7; color:#a54848; border-radius:6px; padding:8px 10px; font-size:9px; font-weight:800; }.danger-button:hover { background:#ffecec; }.share-cta { display:block; width:100%; margin-top:15px; padding:14px 16px; border-color:var(--lime); background:var(--lime); color:var(--forest); box-shadow:0 4px 0 #a8c94a; font-size:11px; }.share-cta:hover { color:var(--forest); filter:brightness(1.04); }.reveal-share { border-color:var(--forest); box-shadow:none; background:var(--forest); color:white; }.reveal-share:hover { color:var(--lime); }
.settings-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr); gap: 15px; }.setting-row { display: flex; align-items: center; justify-content: space-between; padding: 17px 0; border-bottom: 1px solid #f0f2ef; }.setting-row:first-child { padding-top: 4px; }.setting-row:last-child { border-bottom: 0; }.setting-row strong { font-size: 11px; display: block; }.setting-row small { color: var(--muted); display: block; font-size: 10px; margin-top: 5px; }.field-control { display: flex; align-items: center; gap: 5px; }.field-control input, .field-control select, .form-grid input, .form-grid textarea { border: 1px solid var(--line); border-radius: 6px; padding: 10px; outline: none; background: #fbfcfa; color: var(--ink); }.field-control input { width: 67px; text-align: right; font-family: 'DM Mono', monospace; font-size: 11px; }.field-control .unit { color: #8b978e; font-size: 11px; }.save-bar { display: flex; justify-content: flex-end; margin-top: 17px; }.toggle { width: 39px; height: 21px; background: #dce4dc; border-radius: 20px; padding: 3px; }.toggle.on { background: var(--lime); }.toggle span { width: 15px; height: 15px; background: white; display: block; border-radius: 50%; transition: .2s; }.toggle.on span { transform: translateX(18px); }.preview-card { min-height: 490px; background: var(--forest); border-radius: 9px; padding: 22px; color: white; position: relative; overflow: hidden; }.preview-card:after { content:""; width: 220px; height: 220px; border-radius: 50%; background: var(--lime); opacity: .08; position: absolute; right: -70px; bottom: -80px; }.preview-card h3 { font-size: 13px; margin: 0 0 4px; }.preview-card p { color: #92aa9b; font-size: 10px; margin: 0; }.mini-wheel { width: 190px; height: 190px; border-radius: 50%; margin: 38px auto 25px; border: 8px solid #335344; background: conic-gradient(#d8ff5c 0 12.5%, #b9f3ff 12.5% 25%, #ffb86b 25% 37.5%, #e3c6ff 37.5% 50%, #ff7f9c 50% 62.5%, #ffe98a 62.5% 75%, #d8ff5c 75% 87.5%, #b9f3ff 87.5% 100%); position: relative; box-shadow: 0 0 0 4px rgba(216,255,92,.1), 0 15px 35px rgba(0,0,0,.2); }.mini-wheel:before { content: "✦"; position: absolute; inset: 68px; border-radius: 50%; background: var(--forest); z-index: 2; display: grid; place-items: center; color: var(--lime); font-size: 24px; }.preview-pointer { width: 0; height: 0; border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 21px solid var(--lime); position: absolute; top: 231px; left: calc(50% - 9px); z-index: 2; }.preview-button { background: var(--lime); color: var(--forest); text-align: center; padding: 11px; border-radius: 6px; font-size: 10px; font-weight: 800; position: relative; z-index: 2; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }.form-grid label { color: #68756b; font-size: 10px; font-weight: 800; }.form-grid input, .form-grid textarea { width: 100%; margin-top: 6px; }.form-grid textarea { min-height: 76px; resize: vertical; }.form-grid .full { grid-column: 1 / -1; }.prize-card { display: grid; grid-template-columns: 8px 1fr auto; gap: 11px; align-items: center; border-bottom: 1px solid #f0f2ef; padding: 13px 0; }.prize-card:first-child { padding-top: 3px; }.prize-card:last-child { border-bottom: 0; }.prize-card .color-bar { width: 8px; height: 42px; border-radius: 4px; }.prize-card h3 { margin: 0; font-size: 11px; }.prize-card p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }.prize-stats { text-align: right; font: 10px 'DM Mono', monospace; }.prize-stats small { display: block; color: var(--muted); font: 9px Manrope; margin-top: 3px; }
.public-shell { min-height:100vh; background-color:var(--public-bg,#101911); padding:20px; color:white; position:relative; overflow:hidden; background-repeat:no-repeat; background-size:cover; background-position:center; }.public-shell:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 42%,rgba(216,255,92,.11),transparent 48%),linear-gradient(180deg,rgba(5,18,10,.08),rgba(5,18,10,.28)); pointer-events:none; }.back-to-admin { position:relative; z-index:5; border:1px solid rgba(255,255,255,.24); color:#d8e8dc; background:rgba(10,26,16,.6); border-radius:9px; padding:9px 12px; font-size:11px; backdrop-filter:blur(8px); }.public-content { max-width:680px; margin:24px auto 0; position:relative; z-index:1; text-align:center; }.public-logo { position:fixed; z-index:4; width:min(150px,24vw); max-height:72px; object-fit:contain; filter:drop-shadow(0 5px 14px rgba(0,0,0,.28)); }.logo-top-left { top:24px; left:24px; }.logo-top-right { top:24px; right:24px; }.logo-bottom-left { bottom:24px; left:24px; }.logo-bottom-right { bottom:24px; right:24px; }.public-kicker { color:var(--lime); font:10px 'DM Mono',monospace; letter-spacing:.16em; }.public-content h1 { font-size:clamp(30px,5vw,52px); letter-spacing:-.075em; margin:14px 0 8px; line-height:.98; }.public-content>p { color:#c4d1c7; margin:0 auto; max-width:430px; line-height:1.6; font-size:13px; text-shadow:0 1px 8px rgba(0,0,0,.4); }.game-card { margin:26px auto 0; max-width:560px; border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.96); color:var(--ink); border-radius:28px; padding:30px 28px 24px; box-shadow:0 24px 80px rgba(0,0,0,.34); backdrop-filter:blur(12px); }.wheel-wrap { width:min(420px,76vw); aspect-ratio:1; margin:0 auto; position:relative; }.wheel-pointer { position:absolute; top:-8px; left:calc(50% - 16px); z-index:5; width:0; height:0; border-left:16px solid transparent; border-right:16px solid transparent; border-top:36px solid #ff9d24; filter:drop-shadow(0 4px 3px rgba(0,0,0,.3)); }.wheel-disc { width:100%; height:100%; border-radius:50%; border:14px solid #dfe8ec; background:var(--wheel-gradient); box-shadow:0 0 0 3px rgba(18,45,29,.12),0 18px 38px rgba(8,30,16,.25); transition:transform 4.4s cubic-bezier(.12,.7,.14,1); position:relative; overflow:hidden; }.wheel-disc:after { content:""; position:absolute; inset:0; border-radius:50%; background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.65) 0 1px,transparent 1px calc(360deg / var(--segment-count))); pointer-events:none; }.wheel-center { position:absolute; z-index:4; width:23%; aspect-ratio:1; left:38.5%; top:38.5%; background:linear-gradient(145deg,#ff9d24,#cc4d70); border:5px solid rgba(255,255,255,.55); border-radius:50%; color:white; display:grid; place-items:center; font-size:26px; font-weight:900; box-shadow:0 5px 18px rgba(53,17,55,.35); }.wheel-labels { position:absolute; inset:0; z-index:2; pointer-events:none; }.wheel-label { position:absolute; left:50%; top:50%; width:112px; margin-left:-56px; margin-top:-20px; display:flex; flex-direction:column; align-items:center; gap:4px; text-align:center; color:var(--wheel-text,#10261a); font-size:clamp(9px,1.25vw,13px); line-height:1.08; font-weight:900; transform-origin:50% 20px; transform:rotate(var(--angle)) translateY(calc(-1 * var(--label-radius))) rotate(var(--counter-angle)); text-shadow:0 1px 1px rgba(255,255,255,.42); }.wheel-label-visual { font-size:clamp(15px,2vw,24px); filter:drop-shadow(0 1px 1px rgba(255,255,255,.45)); }.wheel-label b { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }.game-footer { display:flex; align-items:center; gap:12px; margin-top:25px; }.spin-button { flex:1; border:0; background:var(--lime); color:var(--forest); border-radius:10px; padding:15px; font-size:12px; font-weight:900; box-shadow:0 4px 0 #a8c94a; }.spin-button:disabled { opacity:.45; cursor:not-allowed; box-shadow:none; }.sound-button { width:47px; height:47px; border:1px solid #dce5de; background:#f4f7f4; color:var(--forest); border-radius:10px; }.public-hint { color:#7e8d82; font-size:10px; margin:14px 0 0; }.public-message { margin:20px auto 0; border-radius:12px; padding:14px; background:#183626; color:#dcebdc; text-align:left; font-size:11px; line-height:1.55; }.public-message strong { color:var(--lime); display:block; font-size:12px; margin-bottom:3px; }.share-options { display:flex; gap:8px; margin-top:15px; flex-wrap:wrap; }.share-btn { flex:1; min-width:120px; padding:10px; border:1px solid #4b6855; color:#d9e7db; background:#294637; border-radius:6px; font-size:10px; font-weight:800; }.share-btn:hover { border-color:var(--lime); color:var(--lime); }.claim-card { text-align:left; margin:25px auto 0; max-width:560px; background:#fff; color:var(--ink); border:1px solid #e6ece7; border-radius:12px; padding:24px; }.claim-card h2 { margin:0 0 5px; font-size:19px; }.claim-card p { color:var(--muted); font-size:11px; line-height:1.5; margin:0 0 17px; }.claim-form { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.claim-form label { font-size:10px; color:#657167; font-weight:800; }.claim-form input { width:100%; padding:10px; border:1px solid var(--line); border-radius:6px; margin-top:5px; outline:none; }.claim-form .full { grid-column:1/-1; }.consent { display:flex; gap:7px; align-items:flex-start; color:var(--muted); font-size:10px; font-weight:400!important; line-height:1.4; margin:4px 0; }.consent input { width:auto; margin:2px 0 0; }.claim-form .primary-button { grid-column:1/-1; }.prize-reveal { padding:28px; background:var(--lime); color:var(--forest); border-radius:12px; }.prize-reveal .eyebrow { color:#58742c; }.prize-reveal h2 { margin:0 0 11px; font-size:25px; letter-spacing:-.06em; }.coupon { font:700 19px 'DM Mono',monospace; background:rgba(255,255,255,.55); padding:14px; border-radius:8px; letter-spacing:.04em; text-align:center; margin:15px 0; }.copy-coupon { border:1px solid var(--forest); background:transparent; color:var(--forest); border-radius:6px; padding:10px; font-size:10px; font-weight:800; width:100%; }
.section-divider { display:flex; align-items:center; gap:12px; margin:24px 0 15px; color:#819087; font-size:9px; font-weight:900; letter-spacing:.12em; }.section-divider:after { content:""; height:1px; background:#e9ede8; flex:1; }.visual-form { display:grid; grid-template-columns:1fr 1fr; gap:13px; }.visual-form label { font-size:10px; color:#66746a; font-weight:800; }.visual-form input,.visual-form select,.visual-form textarea { width:100%; margin-top:6px; padding:10px; border:1px solid var(--line); border-radius:7px; background:#fbfcfa; color:var(--ink); }.visual-form textarea { min-height:72px; resize:vertical; }.visual-form .full { grid-column:1/-1; }.image-setting small { display:block; margin:6px 0 2px; color:#9aa59d; font-weight:500; }.prize-card-copy { display:flex; align-items:center; gap:10px; }.prize-visual { width:32px; height:32px; border-radius:9px; background:#f0f4ed; display:grid; place-items:center; font-size:17px; flex:none; }
.workspace-switcher { width:100%; border:0; color:inherit; text-align:left; font:inherit; cursor:pointer; }.campaign-modal-card { width:min(680px,100%); max-height:88vh; overflow:auto; }.campaign-list { display:grid; gap:8px; margin:18px 0; }.campaign-row { width:100%; display:grid; grid-template-columns:38px 1fr auto; align-items:center; gap:11px; border:1px solid var(--line); background:#fbfcfa; padding:12px; border-radius:10px; text-align:left; color:var(--ink); }.campaign-row:hover,.campaign-row.selected { border-color:#b7dc6c; background:#f7ffe8; }.campaign-row span:nth-child(2) strong,.campaign-row span:nth-child(2) small { display:block; }.campaign-row span:nth-child(2) strong { font-size:11px; }.campaign-row span:nth-child(2) small { color:var(--muted); font-size:9px; margin-top:4px; }.campaign-row>b { font-size:8px; color:#64833c; letter-spacing:.06em; }.campaign-orb { width:36px; height:36px; border-radius:10px; display:grid; place-items:center; background:var(--forest); color:var(--lime); font-size:15px; }.campaign-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:15px; }.campaign-card { background:white; border:1px solid var(--line); border-radius:14px; padding:20px; box-shadow:0 8px 24px rgba(22,48,29,.04); }.campaign-card.active { border-color:#b3d95e; box-shadow:0 0 0 2px rgba(216,255,92,.3),0 14px 34px rgba(22,48,29,.08); }.campaign-card-top { display:flex; justify-content:space-between; align-items:center; }.campaign-card h3 { font-size:18px; margin:18px 0 4px; }.campaign-card>p { margin:0; color:var(--muted); font-size:11px; }.campaign-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:20px 0; padding:14px 0; border-top:1px solid #edf0ec; border-bottom:1px solid #edf0ec; color:var(--muted); font-size:9px; }.campaign-metrics b { display:block; color:var(--ink); font-size:15px; margin-bottom:3px; }.campaign-actions { display:flex; gap:8px; }.campaign-actions .primary-button { flex:1; }.campaign-actions .outline-button { display:flex; align-items:center; text-decoration:none; }
.status-pill.scheduled { color:#7454a8; background:#eee6ff; }.status-pill.ended { color:#8a6570; background:#f6e7eb; }.campaign-schedule { margin-top:9px; color:#728078; font-size:9px; font-weight:700; }.campaign-actions { flex-wrap:wrap; }.campaign-actions .primary-button { min-width:135px; }.campaign-actions .outline-button { justify-content:center; }.campaign-edit-form { margin-top:18px; padding-top:18px; border-top:1px solid var(--line); }.campaign-edit-form.hidden { display:none; }
.live-admin-preview { background-color:var(--preview-bg,#173c29); background-size:cover; background-position:center; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; }.live-admin-preview>small { color:var(--lime); font-size:9px; letter-spacing:.12em; }.live-admin-preview h2 { max-width:300px; margin:18px auto 6px; font-size:26px; line-height:1.02; }.live-admin-preview>p { color:#c2d3c6; }.admin-preview-wheel { width:210px; height:210px; border:9px solid #e7eef0; border-radius:50%; background:var(--preview-wheel); margin:22px auto; box-shadow:0 15px 32px rgba(0,0,0,.26); position:relative; }.admin-preview-wheel:after { content:"✦"; position:absolute; inset:37%; border-radius:50%; display:grid; place-items:center; color:white; background:linear-gradient(145deg,#ff9d24,#cc4d70); border:4px solid rgba(255,255,255,.7); }.live-admin-preview .preview-button { width:100%; }.preview-open { margin-top:12px; color:white; border-color:rgba(255,255,255,.3); background:rgba(0,0,0,.1); }.preview-logo { position:absolute; width:80px; max-height:50px; object-fit:contain; z-index:2; }.popup-preview { display:grid; place-items:center; background:linear-gradient(145deg,#112d1e,#234c33); }.popup-preview-box { width:min(340px,100%); background:white; color:var(--ink); border-radius:20px; padding:30px; text-align:center; box-shadow:0 22px 60px rgba(0,0,0,.35); }.popup-preview-box small { color:#7c8a80; font-size:8px; letter-spacing:.12em; }.popup-preview-box h2 { margin:12px 0 7px; font-size:25px; }.popup-preview-box p { color:var(--muted); font-size:11px; }.popup-preview-box button { width:100%; margin-top:15px; border:0; background:var(--lime); color:var(--forest); padding:12px; border-radius:8px; font-weight:900; }.popup-switch { padding:13px; border:1px solid #dce7d5; background:#f8ffeb; border-radius:9px; }.campaign-popup { position:fixed; inset:0; z-index:20; background:rgba(4,15,8,.72); display:grid; place-items:center; padding:20px; backdrop-filter:blur(7px); }.campaign-popup>div { width:min(430px,100%); background:white; color:var(--ink); border-radius:24px; padding:34px; text-align:center; position:relative; box-shadow:0 26px 80px rgba(0,0,0,.4); }.campaign-popup>div>button:first-child { position:absolute; right:15px; top:12px; border:0; background:#f0f3ef; color:#728078; width:30px; height:30px; border-radius:50%; }.campaign-popup small { color:#6b7d70; font-size:8px; letter-spacing:.13em; }.campaign-popup h2 { font-size:28px; margin:14px 0 8px; }.campaign-popup p { color:var(--muted); font-size:12px; }.campaign-popup .primary-button { margin-top:18px; width:100%; }
.visual-form input[type="color"] { -webkit-appearance:none; appearance:none; display:block; width:100%; height:44px; min-height:44px; padding:4px; border:1px solid #cfd9ce; border-radius:8px; background:#fff; cursor:pointer; overflow:hidden; }.visual-form input[type="color"]::-webkit-color-swatch-wrapper { padding:0; }.visual-form input[type="color"]::-webkit-color-swatch { border:0; border-radius:5px; }.visual-form input[type="color"]::-moz-color-swatch { border:0; border-radius:5px; }.visual-form label:has(input[type="color"]) { position:relative; }.visual-form label:has(input[type="color"])::after { content:attr(data-color); position:absolute; right:11px; bottom:13px; color:white; mix-blend-mode:difference; font:10px 'DM Mono',monospace; text-transform:uppercase; pointer-events:none; }
.copy-settings-grid { align-items:start; }.copy-settings-grid>.preview-card { position:sticky; top:92px; }.text-style-card { grid-column:1/-1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; border:1px solid #dfe7dc; border-radius:10px; padding:15px; margin:-2px 0 12px; background:#f9fbf8; }.text-style-card legend { padding:0 7px; color:#627066; font-size:9px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }.text-style-card label { position:relative; font-size:9px; font-weight:800; color:#66746a; }.text-style-card input,.text-style-card select { width:100%; margin-top:5px; height:38px; padding:8px; border:1px solid var(--line); border-radius:7px; background:white; color:var(--ink); }.text-style-card label>span { position:absolute; right:8px; bottom:11px; color:#88958c; font-size:9px; }.text-style-card input[type="color"] { -webkit-appearance:none; appearance:none; padding:3px; cursor:pointer; }.text-style-card input[type="color"]::-webkit-color-swatch-wrapper { padding:0; }.text-style-card input[type="color"]::-webkit-color-swatch { border:0; border-radius:4px; }.text-style-card input[type="color"]::-moz-color-swatch { border:0; border-radius:4px; }.preview-description { max-width:90%; margin:4px auto 0!important; }.preview-footer { margin-top:8px; width:100%; }.public-copy { margin:8px auto 24px; max-width:620px; }.public-copy>div+div { margin-top:5px; }
@media (max-width: 760px) { .text-style-card { grid-template-columns:repeat(2,minmax(0,1fr)); }.copy-settings-grid>.preview-card { position:relative; top:auto; } }
.text-style-card input[type="color"]::-webkit-color-swatch { border:1px solid #c8d1c7; }.text-style-card input[type="color"]::-moz-color-swatch { border:1px solid #c8d1c7; }.text-style-card label>.color-code { right:7px; bottom:7px; padding:3px 5px; border-radius:4px; color:#fff; background:rgba(0,0,0,.58); font-family:'DM Mono',monospace; pointer-events:none; }
.design-section-title { grid-column:1/-1; margin:8px 0 -2px; padding-top:18px; border-top:1px solid var(--line); color:#627066; font-size:9px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.visual-form output { float:right; color:var(--forest-2); font:700 10px 'DM Mono',monospace; }
.visual-form input[type=range] { accent-color:var(--forest-2); padding:0; }
.public-shell { padding:0; min-height:100dvh; background-color:var(--public-bg,#16241e); background-attachment:fixed; }
.public-shell:before { background:linear-gradient(110deg,rgba(4,13,9,.72),rgba(4,13,9,.16) 68%),radial-gradient(circle at 68% 42%,rgba(221,255,104,.12),transparent 40%); }
.back-to-admin { position:fixed; top:18px; left:18px; border-color:rgba(255,255,255,.38); z-index:12; }
.public-content { max-width:none; width:100%; min-height:100dvh; margin:0; padding:clamp(74px,8vw,110px) 5vw 56px; text-align:var(--content-align,left); display:grid; grid-template-columns:minmax(220px, .8fr) minmax(360px, 1.2fr); grid-template-rows:auto auto 1fr; column-gap:clamp(25px,7vw,110px); align-content:center; align-items:center; }
.public-content h1,.public-copy,.public-kicker { grid-column:1; max-width:560px; }
.public-content h1 { text-align:var(--content-align,left); text-shadow:0 4px 22px rgba(0,0,0,.3); }
.public-copy { margin:0; }
.public-kicker { grid-row:1; }
.public-content h1 { grid-row:2; }
.public-copy { grid-row:3; }
.game-card { grid-column:2; grid-row:1 / 4; width:min(100%,650px); margin:0; padding:clamp(20px,3vw,42px); background:rgba(255,250,239,.10); border:1px solid rgba(255,255,255,.32); border-radius:32px; box-shadow:0 30px 100px rgba(0,0,0,.35); backdrop-filter:blur(10px); color:#fff; }
.wheel-wrap { width:var(--wheel-size); min-width:300px; margin:0 auto; }
.wheel-disc { border:12px solid rgba(255,255,255,.84); box-shadow:0 0 0 2px rgba(25,72,98,.42),0 26px 60px rgba(0,0,0,.32); }
.wheel-center { width:var(--center-size); left:calc((100% - var(--center-size)) / 2); top:calc((100% - var(--center-size)) / 2); border:6px solid rgba(255,255,255,.82); background:linear-gradient(145deg,#e85c40,#b62d66); color:#fff!important; cursor:pointer; font-size:clamp(10px,1.3vw,16px); line-height:1.05; letter-spacing:.08em; text-transform:uppercase; text-shadow:0 1px 4px rgba(0,0,0,.42); padding:9px; transform:scale(var(--button-scale,1)); transition:transform .2s, filter .2s; }
.wheel-center:hover { transform:scale(calc(var(--button-scale,1) * 1.06)); filter:saturate(1.15); }
.wheel-center:disabled { opacity:.55; cursor:wait; }
.center-arrow { display:block; font-size:16px; margin-top:5px; opacity:.8; }
.game-footer { justify-content:flex-start; margin-top:18px; }
.sound-button { width:auto; height:36px; padding:0 12px; background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.3); color:#fff; border-radius:99px; font-size:10px; }
.public-hint { color:rgba(255,255,255,.72); text-align:left; }
.placement-top-left,.placement-top-center,.placement-top-right { align-content:start; padding-top:clamp(80px,10vh,140px); }
.placement-bottom-left,.placement-bottom-center,.placement-bottom-right { align-content:end; padding-bottom:clamp(64px,9vh,120px); }
.placement-top-center,.placement-center,.placement-bottom-center { text-align:center; }
.placement-top-right,.placement-center-right,.placement-bottom-right { text-align:right; }
.placement-top-right h1,.placement-center-right h1,.placement-bottom-right h1,.placement-top-right .public-copy,.placement-center-right .public-copy,.placement-bottom-right .public-copy,.placement-top-right .public-kicker,.placement-center-right .public-kicker,.placement-bottom-right .public-kicker { margin-left:auto; text-align:right; }
.placement-center-left,.placement-center,.placement-center-right { align-content:center; }
.public-content h1.placement-top-right,.public-content h1.placement-center-right,.public-content h1.placement-bottom-right,.public-content .public-copy.placement-top-right,.public-content .public-copy.placement-center-right,.public-content .public-copy.placement-bottom-right { margin-left:auto; text-align:right; }
.public-content h1.placement-top-center,.public-content h1.placement-center,.public-content h1.placement-bottom-center,.public-content .public-copy.placement-top-center,.public-content .public-copy.placement-center,.public-content .public-copy.placement-bottom-center { margin-left:auto; margin-right:auto; text-align:center; }
.public-content h1.placement-top-left,.public-content h1.placement-center-left,.public-content h1.placement-bottom-left,.public-content .public-copy.placement-top-left,.public-content .public-copy.placement-center-left,.public-content .public-copy.placement-bottom-left { margin-right:auto; text-align:left; }
.live-admin-preview { container-type:inline-size; background-size:var(--preview-fit,cover); background-position:var(--preview-position,center); padding:0; overflow:hidden; }
.preview-public-frame { min-height:490px; width:100%; padding:42px 22px 28px; display:grid; grid-template-columns:1fr; grid-template-rows:auto auto auto 1fr auto; align-content:center; justify-items:stretch; text-align:var(--preview-align,left); position:relative; }
.preview-public-frame.preview-placement-center { text-align:center; }
.preview-public-frame.preview-placement-right { text-align:right; }
.preview-title { margin:12px 0 0; max-width:90%; }
.preview-supporting { max-width:90%; }
.preview-supporting p { margin:4px 0 0; }
.preview-title,.preview-supporting,.preview-supporting p,
.public-content h1,.public-copy,.public-copy>div {
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.preview-title.placement-top-left,.preview-title.placement-center-left,.preview-title.placement-bottom-left,.preview-supporting.placement-top-left,.preview-supporting.placement-center-left,.preview-supporting.placement-bottom-left { justify-self:start; text-align:left; }
.preview-title.placement-top-center,.preview-title.placement-center,.preview-title.placement-bottom-center,.preview-supporting.placement-top-center,.preview-supporting.placement-center,.preview-supporting.placement-bottom-center { justify-self:center; text-align:center; }
.preview-title.placement-top-right,.preview-title.placement-center-right,.preview-title.placement-bottom-right,.preview-supporting.placement-top-right,.preview-supporting.placement-center-right,.preview-supporting.placement-bottom-right { justify-self:end; text-align:right; }
.preview-game-card { width:100%; align-self:center; margin-top:16px; padding:14px 18px 10px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.3); border-radius:18px; }
.preview-wheel-wrap { width:var(--preview-wheel-size,52%); min-width:150px; margin:0 auto; }
.admin-preview-wheel { position:relative; }
.preview-wheel-center { inset:calc((100% - var(--preview-center-size,24%)) / 2); width:var(--preview-center-size,24%); height:var(--preview-center-size,24%); padding:4px; border:3px solid rgba(255,255,255,.75); cursor:pointer; font-size:clamp(7px,1vw,11px); text-transform:uppercase; line-height:1; transform:scale(var(--preview-button-scale,1)); }
.preview-wheel-center span { display:block; opacity:.78; margin-top:2px; }
.live-admin-preview .preview-footer { margin:8px auto 0; }
.preview-spin-timer {
  margin:9px auto 0;
  padding:8px 10px;
  border:1px solid rgba(216,255,92,.42);
  border-radius:8px;
  background:rgba(255,255,255,.7);
  text-align:center;
}
.preview-timer-line { display:flex; align-items:baseline; justify-content:center; gap:5px; }
.preview-spin-timer small { display:block; margin-top:3px; }
.funnel-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin-bottom:18px;
}
.funnel-step {
  position:relative;
  padding:18px;
  border:1px solid var(--line);
  border-radius:9px;
  background:white;
}
.funnel-step:not(:last-child):after {
  content:"›";
  position:absolute;
  right:-9px;
  top:50%;
  z-index:2;
  width:18px;
  height:18px;
  margin-top:-9px;
  border-radius:50%;
  background:var(--forest);
  color:white;
  text-align:center;
  line-height:17px;
}
.funnel-step span,.funnel-step small { display:block; color:var(--muted); font-size:10px; }
.funnel-step strong { display:block; margin:6px 0; font-size:25px; color:var(--forest); }
.export-list { display:grid; gap:9px; }
.export-list a {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:8px;
  color:var(--forest);
  text-decoration:none;
  background:#fbfcfa;
}
.export-list a:hover { border-color:var(--forest); }
.export-list span { color:var(--muted); font-size:10px; }
.metric-breakdown { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.metric-breakdown>div { padding:16px; border-radius:8px; background:#f4f7f3; }
.metric-breakdown span { display:block; color:var(--muted); font-size:10px; }
.metric-breakdown strong { display:block; margin-top:5px; color:var(--forest); font-size:22px; }
.integration-code {
  margin:12px 0;
  padding:17px;
  overflow:auto;
  border-radius:8px;
  background:#102b1d;
  color:#d8ff5c;
  font:10px/1.65 "DM Mono",monospace;
}
.integration-steps { padding-left:20px; color:#516057; font-size:11px; line-height:1.8; }
.danger-outline-button {
  padding:11px 14px;
  border:1px solid #c94b4b;
  border-radius:7px;
  background:#fff7f7;
  color:#a52f2f;
  font-family:inherit;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.danger-outline-button:hover { background:#a52f2f; color:white; }
.danger-outline-button:disabled { opacity:.55; cursor:wait; }
.universal-color-control {
  --selected-color:#000000;
  display:grid;
  grid-template-columns:52px minmax(76px,1fr) 38px;
  align-items:center;
  gap:7px;
  width:100%;
  margin-top:6px;
}
.universal-color-control input[type="color"] {
  display:block;
  width:100% !important;
  min-width:58px;
  height:42px !important;
  min-height:42px !important;
  margin:0 !important;
  padding:3px !important;
  border:1px solid #bcc9bd !important;
  border-radius:7px !important;
  background:white !important;
  cursor:pointer;
}
.color-hex-input {
  width:100% !important;
  height:42px !important;
  margin:0 !important;
  padding:8px !important;
  border:1px solid var(--line) !important;
  border-radius:7px !important;
  background:white !important;
  color:var(--ink) !important;
  font:700 10px "DM Mono",monospace !important;
  text-transform:uppercase;
}
.color-rgb-value {
  display:flex;
  align-items:center;
  height:42px;
  padding:0 9px;
  border:1px solid var(--line);
  border-radius:7px;
  background:#f6f8f5;
  color:#526158;
  font:700 9px "DM Mono",monospace;
  white-space:nowrap;
  grid-column:1/-1;
  grid-row:2;
}
.color-eyedropper {
  display:grid;
  place-items:center;
  width:38px;
  height:42px;
  padding:0;
  border:1px solid #9aaa9d;
  border-radius:7px;
  background:var(--selected-color);
  color:white;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  text-shadow:0 1px 3px #000;
}
.color-eyedropper:hover { outline:2px solid var(--lime); outline-offset:1px; }
label:has(.universal-color-control)>.color-code,
.share-color-grid label:has(.universal-color-control)>span { display:none; }
.text-style-card { grid-template-columns:repeat(2,minmax(0,1fr)); }
.share-color-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:700px) {
  .text-style-card,.share-color-grid { grid-template-columns:1fr; }
}
@media (max-width:900px) {
  .funnel-grid { grid-template-columns:1fr; }
  .funnel-step:not(:last-child):after { display:none; }
  .export-list a { flex-direction:column; gap:4px; }
}
.placement-top-center h1,.placement-center h1,.placement-bottom-center h1,.placement-top-center .public-copy,.placement-center .public-copy,.placement-bottom-center .public-copy,.placement-top-center .public-kicker,.placement-center .public-kicker,.placement-bottom-center .public-kicker { margin-left:auto; margin-right:auto; text-align:center; }
.placement-center { align-content:center; }
@media (max-width: 820px) {
  .public-content { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; padding:82px 18px 40px; text-align:center; }
  .public-content h1,.public-copy,.public-kicker { max-width:620px; width:100%; text-align:center; }
  .public-content h1 { margin-left:auto; margin-right:auto; }
  .game-card { width:100%; order:4; margin-top:22px; padding:20px 12px 18px; }
  .wheel-wrap { width:min(var(--wheel-size),88vw); min-width:0; }
  .public-copy { order:3; }
  .public-kicker { order:1; }
  .public-content h1 { order:2; }
  .public-shell .public-logo { position:absolute; max-width:110px; }
}
.sharing-form { max-width:760px; }.sharing-form label small { display:block; margin-top:6px; color:var(--muted); font-size:9px; font-weight:500; }.sharing-example { align-self:end; min-height:62px; display:flex; flex-direction:column; justify-content:center; padding:11px 14px; border-radius:8px; background:#f4ffe0; border:1px solid #dceeb9; }.sharing-example strong { font-size:10px; }.sharing-example span { margin-top:5px; color:#617052; font-size:9px; line-height:1.4; }.spin-timer { margin:14px auto 0; max-width:440px; padding:12px 16px; border:1px solid rgba(216,255,92,.42); border-radius:10px; background:rgba(22,56,36,.08); color:#173c29; text-align:center; }.spin-timer strong,.spin-timer small { display:block; }.spin-timer strong { font-size:11px; letter-spacing:.04em; }.spin-timer strong b { color:#b94312; font-family:'DM Mono',monospace; font-size:15px; margin-left:4px; }.spin-timer small { margin-top:5px; color:#66756a; font-size:9px; }
.sharing-settings-grid { align-items:start; }.sharing-settings-grid .sharing-form { max-width:none; }.share-admin-preview { min-height:530px; position:sticky; top:92px; border-radius:12px; padding:28px; background:var(--share-bg); color:var(--share-text); box-shadow:0 15px 40px rgba(20,48,30,.12); overflow:hidden; }.share-admin-preview:after { content:""; position:absolute; width:250px; height:250px; border-radius:50%; right:-90px; bottom:-100px; background:rgba(255,255,255,.06); }.share-admin-preview>small { display:block; margin-bottom:60px; color:var(--share-text); opacity:.7; font-size:9px; font-weight:800; letter-spacing:.12em; }.share-admin-preview h2,.share-admin-preview p { position:relative; z-index:1; }.share-admin-preview h2 { margin:0 0 10px; }.share-preview-buttons { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:34px; }.share-preview-buttons button,.social-share-button { display:flex; align-items:center; justify-content:center; gap:9px; border:1px solid rgba(255,255,255,.14); border-radius:9px; padding:13px; background:var(--share-button); color:var(--share-button-text); font-weight:800; }.share-preview-buttons svg,.social-share-button svg { width:18px; height:18px; fill:currentColor; flex:none; }.share-preview-buttons button:last-child { grid-column:1/-1; }.share-color-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }.share-color-grid label { position:relative; font-size:9px; font-weight:800; color:#66746a; }.share-color-grid input[type="color"] { -webkit-appearance:none; appearance:none; display:block; width:100%; height:42px; margin-top:6px; padding:3px; border:1px solid var(--line); border-radius:7px; background:white; }.share-color-grid input[type="color"]::-webkit-color-swatch-wrapper { padding:0; }.share-color-grid input[type="color"]::-webkit-color-swatch { border:0; border-radius:4px; }.share-color-grid label>span { position:absolute; right:7px; bottom:6px; padding:3px 5px; border-radius:4px; background:rgba(0,0,0,.58); color:white; font:8px 'DM Mono',monospace; pointer-events:none; }.share-result-panel { background:var(--share-bg)!important; color:var(--share-text)!important; }.share-result-panel>strong { color:var(--share-text)!important; }.share-options .social-share-button { background:var(--share-button); color:var(--share-button-text); border-color:color-mix(in srgb,var(--share-button-text) 18%,transparent); }.share-options .social-share-button.share-cta { box-shadow:inset 0 -3px 0 color-mix(in srgb,var(--share-button-text) 55%,transparent); }.claim-card>.social-share-button { width:100%; margin-top:14px; background:var(--share-button); color:var(--share-button-text); }
.share-preview-image { position:relative; z-index:1; width:100%; aspect-ratio:1200/630; display:grid; place-items:center; margin:0 0 24px; overflow:hidden; border:1px solid rgba(255,255,255,.18); border-radius:12px; background:rgba(255,255,255,.07); color:var(--share-text); font-size:11px; font-weight:800; }.share-preview-image img { width:100%; height:100%; display:block; object-fit:cover; }.share-admin-preview>small { margin-bottom:18px; }
@media (max-width:760px) { .share-color-grid { grid-template-columns:1fr 1fr; }.share-admin-preview { position:relative; top:auto; min-height:420px; } }
.network-reward-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }.network-reward-grid label { padding:10px; border:1px solid #dfe7dc; border-radius:9px; background:#fafcfa; text-align:center; }.network-reward-grid input { width:100%; margin:9px 0 2px; text-align:center; font:700 15px 'DM Mono',monospace; }.network-label { min-height:20px; display:flex; align-items:center; justify-content:center; gap:6px; font-size:9px; font-weight:900; }.network-label svg { width:15px; height:15px; fill:#315941; }.survey-toggle { padding:13px; border:1px solid #dce7d5; background:#f8ffeb; border-radius:9px; }.survey-questions-heading { display:flex; justify-content:space-between; align-items:center; margin:4px 0 9px; }.survey-questions-heading strong { font-size:10px; }.survey-question-row { display:grid; grid-template-columns:24px 1fr 32px; gap:7px; align-items:center; margin-bottom:7px; }.survey-question-row>span { width:24px; height:24px; display:grid; place-items:center; border-radius:50%; background:#eaf5d4; color:#446426; font-size:9px; font-weight:900; }.survey-question-row input { width:100%; }.remove-survey-question { border:1px solid #efcccc; background:#fff5f5; color:#a63a3a; border-radius:7px; height:34px; font-size:17px; }.survey-cta { width:100%; margin-top:12px; padding:13px; border:1px dashed color-mix(in srgb,var(--share-text) 45%,transparent); border-radius:9px; background:transparent; color:var(--share-text); font-weight:900; }.survey-card { margin-top:18px; padding:24px; border:1px solid #dfe8dc; border-radius:14px; background:white; color:var(--ink); text-align:left; }.survey-card h2 { margin:8px 0; font-size:24px; }.survey-card>p { color:var(--muted); }.survey-card fieldset { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:12px; margin:13px 0; padding:13px; border:1px solid #e2e8e0; border-radius:9px; }.survey-card legend { float:left; width:auto; font-size:11px; font-weight:800; }.survey-card fieldset label { display:flex; gap:5px; align-items:center; font-size:10px; }.survey-email { display:block; margin:15px 0; font-size:10px; font-weight:800; }.survey-email span { color:var(--muted); font-weight:500; }.survey-email input { display:block; width:100%; margin-top:6px; padding:11px; border:1px solid var(--line); border-radius:7px; }.survey-card .primary-button { width:100%; }
.thank-you-modal { position:fixed; inset:0; z-index:20; display:grid; place-items:center; padding:20px; background:rgba(5,20,11,.68); backdrop-filter:blur(8px); animation:fade-in .2s ease; }.thank-you-dialog { width:min(430px,100%); position:relative; padding:34px 30px 28px; border:1px solid rgba(216,255,92,.5); border-radius:20px; background:#fbfff8; color:var(--ink); text-align:center; box-shadow:0 28px 90px rgba(0,0,0,.42); }.thank-you-close { position:absolute; top:11px; right:14px; width:30px; height:30px; border:0; border-radius:50%; background:#edf5e9; color:#31533d; font-size:20px; line-height:1; }.thank-you-mark { width:54px; height:54px; display:grid; place-items:center; margin:0 auto 15px; border-radius:50%; background:var(--lime); color:var(--forest); font-size:28px; font-weight:900; box-shadow:0 4px 0 #a8c94a; }.thank-you-dialog h2 { margin:8px 0 10px; font-size:28px; letter-spacing:-.06em; }.thank-you-dialog p { margin:0 auto 18px; max-width:330px; color:#637168; font-size:12px; line-height:1.55; }.thank-you-prize { margin:0 auto 20px; padding:12px; border-radius:9px; background:#eff8df; }.thank-you-prize small,.thank-you-prize strong { display:block; }.thank-you-prize small { color:#607d39; font-size:9px; font-weight:900; letter-spacing:.12em; }.thank-you-prize strong { margin-top:4px; font-size:16px; }.thank-you-dialog .primary-button { width:100%; }
.claim-modal { position:fixed; inset:0; z-index:19; display:grid; place-items:center; padding:20px; background:rgba(5,20,11,.68); backdrop-filter:blur(8px); animation:fade-in .2s ease; }.claim-dialog { width:min(540px,100%); max-height:calc(100vh - 40px); overflow:auto; padding:30px; border:1px solid rgba(216,255,92,.55); border-radius:20px; background:#fbfff8; color:var(--ink); box-shadow:0 28px 90px rgba(0,0,0,.42); }.claim-dialog h2 { margin:7px 0 8px; font-size:28px; letter-spacing:-.06em; }.claim-dialog>p { margin:0 0 20px; color:#637168; font-size:12px; line-height:1.5; }.claim-dialog .claim-form input { background:white; }.win-notice { margin:25px auto 0; max-width:560px; padding:24px; border:1px solid rgba(216,255,92,.65); border-radius:12px; background:#eff8df; color:var(--forest); text-align:center; }.win-notice h2 { margin:5px 0; font-size:23px; }.win-notice p { margin:5px 0 0; color:#637548; font-size:11px; }
@keyframes fade-in { from { opacity:0; } to { opacity:1; } }
@media (max-width:760px) { .network-reward-grid { grid-template-columns:1fr 1fr; }.survey-card fieldset { grid-template-columns:1fr 1fr; }.survey-card legend { grid-column:1/-1; } }
.share-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.share-options .social-share-button,.share-options .social-share-button.share-cta { width:100%; min-width:0; height:46px; box-sizing:border-box; margin:0; padding:0 9px; border:1px solid rgba(255,255,255,.14); border-radius:9px; background:var(--share-button); color:var(--share-button-text); box-shadow:none; filter:none; font:800 10px/1 'Arial',sans-serif; }.share-options .social-share-button:hover,.share-options .social-share-button.share-cta:hover { border-color:var(--share-button-text); color:var(--share-button-text); filter:brightness(1.08); }.share-options .social-share-button svg { width:17px; height:17px; }.share-options .social-share-button span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.win-share-heading { margin:18px 0 9px; color:#58742c; font-size:9px; font-weight:900; letter-spacing:.08em; text-align:left; }
.survey-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }.survey-contact-grid label { display:block; color:#657167; font-size:10px; font-weight:800; }.survey-contact-grid input { display:block; width:100%; margin-top:5px; padding:10px; border:1px solid var(--line); border-radius:6px; outline:none; }.survey-consent { margin:13px 0 16px; }
 .live-admin-preview { min-height:760px; padding:20px; background-color:var(--preview-bg,#0b1b12); background-size:cover; background-position:center; display:block; overflow:hidden; }.preview-public-frame { position:relative; z-index:1; width:100%; min-height:720px; display:flex; flex-direction:column; align-items:center; text-align:center; }.preview-public-frame>small { color:var(--lime); font-size:8px; font-weight:800; letter-spacing:.14em; }.live-admin-preview .preview-public-frame>h2 { max-width:390px; margin:12px auto 5px; line-height:1!important; transform:scale(.82); transform-origin:center bottom; }.live-admin-preview .preview-public-frame>.preview-subtitle,.live-admin-preview .preview-public-frame>.preview-description { max-width:390px; transform:scale(.82); transform-origin:center top; }.preview-game-card { width:min(410px,100%); margin:14px auto 0; padding:20px 20px 17px; border:1px solid rgba(255,255,255,.6); border-radius:22px; background:rgba(255,255,255,.97); color:var(--ink); box-shadow:0 20px 55px rgba(0,0,0,.32); }.preview-wheel-wrap { width:min(300px,80%); aspect-ratio:1; position:relative; margin:0 auto; }.live-admin-preview .admin-preview-wheel { width:100%; height:100%; margin:0; border:11px solid #dfe8ec; background:var(--preview-wheel); box-shadow:0 0 0 2px rgba(18,45,29,.12),0 14px 30px rgba(8,30,16,.24); overflow:hidden; }.preview-wheel-pointer { position:absolute; z-index:5; top:-5px; left:calc(50% - 12px); width:0; height:0; border-left:12px solid transparent; border-right:12px solid transparent; border-top:28px solid #ff9d24; filter:drop-shadow(0 3px 2px rgba(0,0,0,.25)); }.preview-wheel-labels { position:absolute; inset:0; z-index:2; }.preview-wheel-label { position:absolute; left:50%; top:50%; width:76px; margin-left:-38px; margin-top:-14px; display:flex; flex-direction:column; align-items:center; gap:2px; color:var(--preview-wheel-text,#10261a); transform-origin:50% 14px; transform:rotate(var(--preview-angle)) translateY(-98px) rotate(var(--preview-counter-angle)); text-align:center; font-size:8px; font-style:normal; font-weight:900; line-height:1.05; text-shadow:0 1px 1px rgba(255,255,255,.45); }.preview-wheel-label b { font-size:15px; font-style:normal; }.preview-wheel-label em { max-width:76px; display:-webkit-box; overflow:hidden; -webkit-line-clamp:2; -webkit-box-orient:vertical; font-style:normal; }.preview-wheel-center { position:absolute; z-index:4; inset:38%; display:grid; place-items:center; border:4px solid rgba(255,255,255,.65); border-radius:50%; background:linear-gradient(145deg,#ff9d24,#cc4d70); color:white; font-size:20px; box-shadow:0 4px 14px rgba(53,17,55,.3); }.live-admin-preview .preview-button { width:100%; box-sizing:border-box; margin-top:17px; padding:12px; border-radius:9px; background:var(--lime); color:var(--forest); box-shadow:0 3px 0 #a8c94a; }.live-admin-preview .preview-footer { margin:9px auto 0; color:#9aa59d; transform:scale(.75); }.live-admin-preview .preview-open { margin-top:12px; color:white; border-color:rgba(255,255,255,.35); background:rgba(0,0,0,.2); }.live-admin-preview .preview-logo { position:absolute; width:72px; max-height:45px; object-fit:contain; z-index:6; }.live-admin-preview .logo-top-left { top:10px; left:10px; }.live-admin-preview .logo-top-right { top:10px; right:10px; }.live-admin-preview .logo-bottom-left { bottom:42px; left:10px; }.live-admin-preview .logo-bottom-right { right:10px; bottom:42px; }
@media (max-width:1050px) { .live-admin-preview { min-height:700px; }.preview-public-frame { min-height:660px; }.preview-wheel-wrap { width:min(280px,75vw); } }
@media (max-width:760px) { .live-admin-preview { min-height:620px; padding:14px; }.preview-public-frame { min-height:590px; }.preview-game-card { padding:14px; }.preview-wheel-wrap { width:min(250px,72vw); }.preview-wheel-label { transform:rotate(var(--preview-angle)) translateY(-80px) rotate(var(--preview-counter-angle)); font-size:7px; } }
.modal { position:fixed; inset:0; background:rgba(13,24,17,.65); display:grid; place-items:center; z-index:30; padding:20px; }.modal-card { width:min(560px, 100%); background:#fff; border-radius:12px; padding:27px; position:relative; box-shadow:var(--shadow); }.compact-modal { width:min(480px, 100%); }.modal-card h2 { margin:0 0 8px; font-size:22px; letter-spacing:-.06em; }.modal-close { border:0; background:transparent; color:#839087; font-size:24px; position:absolute; right:17px; top:12px; }.code-box { margin:18px 0; background:#f1f4ef; border:1px solid #e3eae1; color:#5c6b60; border-radius:7px; padding:14px; font:10px 'DM Mono', monospace; line-height:1.5; word-break:break-all; }.full-width { width:100%; }.toast { position:fixed; top:90px; right:25px; z-index:50; background:var(--forest); color:white; border-left:4px solid var(--lime); padding:13px 16px; border-radius:7px; box-shadow:var(--shadow); font-size:11px; animation:slide-in .25s ease; }.toast.error { border-color:var(--pink); } @keyframes slide-in { from { transform:translateX(15px); opacity:0; } to { transform:none; opacity:1; } }
.weight-overview { margin-bottom:15px; }.weight-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:18px; }.weight-summary-grid>div { min-height:86px; padding:15px; border:1px solid #e4ebe3; border-radius:9px; background:#f8faf6; display:flex; flex-direction:column; justify-content:center; }.weight-summary-grid small { color:#78877c; font-size:9px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.weight-summary-grid strong { margin-top:6px; color:var(--forest); font-size:22px; letter-spacing:-.04em; }.weight-summary-grid span { margin-top:4px; color:#6d7a70; font-size:10px; }.weight-summary-grid .loss-summary { border-color:#f0d9d0; background:#fff8f4; }.weight-summary-grid .loss-summary strong { color:#bd6245; }.weight-table { width:100%; border-collapse:collapse; }.weight-table th { padding:9px 11px; border-bottom:1px solid var(--line); color:#8a958c; text-align:left; font-size:9px; text-transform:uppercase; letter-spacing:.06em; }.weight-table td { padding:11px; border-bottom:1px solid #eff2ee; color:#5f6e63; font-size:10px; }.weight-table tr:last-child td { border-bottom:0; }.weight-table td:first-child { display:flex; align-items:center; gap:8px; color:var(--ink); }.weight-table td:first-child small { display:block; margin-left:4px; }.weight-color { width:10px; height:10px; border-radius:50%; flex:none; }.weight-color.loss { background:#d58a70; }.weight-table .loss-row { background:#fffaf7; }.weight-live-summary { display:grid; grid-template-columns:1fr 1fr; gap:5px 12px; padding:12px 14px; border:1px solid #dce8d7; border-radius:8px; background:#f6faef; color:#607061; font-size:10px; }.weight-live-summary span { display:block; }.weight-live-summary strong { color:var(--forest); }.weight-live-summary small { grid-column:1/-1; color:#879287; }.field-help { display:block; margin-top:5px; color:#8d998f; font-size:9px; font-weight:500; }.segment-type-badge { display:inline-block; margin-left:5px; padding:3px 6px; border-radius:999px; background:#fff0e9; color:#b85d40; font-size:8px; letter-spacing:.06em; vertical-align:middle; }.loss-prize-card { background:#fffaf7; }.loss-segment-form input[name="weight"] { background:#eef1ee; color:#9aa39c; cursor:not-allowed; }
@media (max-width: 1050px) { .sidebar { width: 214px; }.dashboard-grid, .settings-grid { grid-template-columns:1fr; }.inventory-panel { min-height:0; }.main-content > #view-root { padding:28px 25px 40px; }.topbar { padding:0 25px; } }
@media (max-width: 760px) { .sidebar { width:62px; padding:20px 8px; }.brand { padding:0 9px 25px; }.brand > div:last-child, .workspace-label, .workspace-switcher, .nav-item:not(.active)::after, .nav-item { font-size:0; }.nav-item { justify-content:center; padding:12px 0; gap:0; }.nav-item.active { font-size:0; }.nav-icon { font-size:15px; }.nav-count, .nav-dot, .sidebar-bottom { display:none; }.nav-divider { margin:12px 8px; }.topbar { height:auto; min-height:67px; padding:14px 15px; gap:8px; }.topbar-actions .icon-button { display:none; }.topbar-actions .outline-button { font-size:0; padding:9px; }.topbar-actions .outline-button span { font-size:13px; margin:0; }.topbar-actions .primary-button { font-size:0; padding:9px; }.topbar-actions .primary-button span { font-size:14px; margin:0; }.main-content > #view-root { padding:22px 15px 35px; }.page-heading { align-items:flex-start; gap:16px; flex-direction:column; }.page-heading h1 { font-size:24px; }.kpi-grid { grid-template-columns:1fr 1fr; gap:9px; }.kpi-card { padding:13px; min-height:108px; }.kpi-number { font-size:21px; }.bottom-grid { grid-template-columns:1fr; }.panel { padding:16px; }.form-grid { grid-template-columns:1fr; }.form-grid .full { grid-column:auto; }.weight-summary-grid { grid-template-columns:1fr; }.weight-table { min-width:620px; }.weight-live-summary { grid-template-columns:1fr; }.weight-live-summary small { grid-column:auto; }.public-shell { padding:14px; }.public-content { margin-top:26px; }.game-card { padding:17px; }.claim-form { grid-template-columns:1fr; }.claim-form .full, .claim-form .primary-button { grid-column:auto; }.wheel-wrap { width:min(320px, 78vw); }.wheel-label { font-size:7px; width:70px; margin-left:-35px; } }

/* Segment content follows each slice and stays inside its available arc. */
.wheel-label {
  width: var(--label-width, 82px);
  max-height: 68px;
  margin-left: calc(var(--label-width, 82px) / -2);
  margin-top: -12px;
  padding: 0 2px;
  justify-content: center;
  gap: 3px;
  overflow: hidden;
  font-size: clamp(8px, 1.05vw, 12px);
  line-height: 1.04;
  transform-origin: 50% 12px;
  transform: rotate(var(--angle)) translateY(calc(-1 * var(--label-radius)));
}
.wheel-label.compact {
  max-height: 58px;
  font-size: clamp(7px, .8vw, 9px);
}
.wheel-label-visual {
  display: block;
  flex: 0 0 auto;
  max-width: 100%;
  max-height: 22px;
  overflow: hidden;
  font-size: clamp(13px, 1.65vw, 21px);
  line-height: 1;
}
.wheel-label.compact .wheel-label-visual {
  max-height: 17px;
  font-size: 15px;
}
.wheel-label b {
  width: 100%;
  max-height: 2.1em;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.preview-wheel-label {
  width: 52px;
  max-height: 48px;
  margin-left: -26px;
  margin-top: -8px;
  gap: 2px;
  overflow: hidden;
  transform-origin: 50% 8px;
  transform: rotate(var(--preview-angle)) translateY(-92px);
  font-size: 7px;
  line-height: 1.02;
}
.preview-wheel-label b {
  max-height: 14px;
  overflow: hidden;
  font-size: 13px;
  line-height: 1;
}
.preview-wheel-label em {
  width: 100%;
  max-height: 2.05em;
  overflow: hidden;
  overflow-wrap: anywhere;
}
@media (max-width: 760px) {
  .wheel-label {
    width: var(--label-width, 54px);
    margin-left: calc(var(--label-width, 54px) / -2);
  }
  .preview-wheel-label {
    width: 46px;
    margin-left: -23px;
    transform: rotate(var(--preview-angle)) translateY(-76px);
    font-size: 6px;
  }
}

/* Keep the central action and slice labels legible at every configured size. */
.wheel-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 8% !important;
  font-size: clamp(8px, 1vw, 13px) !important;
  line-height: 1.02 !important;
  letter-spacing: .02em !important;
  overflow-wrap: anywhere;
  word-break: normal;
  white-space: normal;
  text-wrap: balance;
}

.design-group {
  min-width:0;
  margin:0;
  padding:18px;
  border:1px solid #dfe7dc;
  border-radius:11px;
  background:#fbfcfa;
}
.design-group legend {
  padding:0 8px;
  color:var(--forest);
  font-size:12px;
  font-weight:900;
}
.design-group>p {
  margin:0 0 16px;
  color:#748078;
  font-size:10px;
  line-height:1.5;
}
.design-group-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  align-items:start;
}
.design-group-grid label {
  min-width:0;
}
.design-group-grid label>small {
  display:block;
  margin-top:5px;
  color:#8a958d;
  font-size:9px;
  font-weight:500;
  line-height:1.4;
}
.design-group-grid .image-setting input[type="url"] {
  overflow:hidden;
  text-overflow:ellipsis;
}
.design-control-title {
  display:block;
  margin-bottom:8px;
  color:#59675d;
  font-size:10px;
  font-weight:900;
}
.layout-choice-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
.layout-choice,.alignment-choice {
  display:block;
  padding:9px;
  border:1px solid #dce4da;
  border-radius:9px;
  background:white;
  cursor:pointer;
  text-align:center;
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.layout-choice:has(input:checked),.alignment-choice:has(input:checked) {
  border-color:#315c43;
  background:#f4ffe0;
  box-shadow:0 0 0 2px rgba(49,92,67,.13);
}
.layout-choice input,.alignment-choice input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.layout-choice strong,.alignment-choice strong {
  display:block;
  margin-top:7px;
  color:#34483a;
  font-size:9px;
  line-height:1.3;
}
.layout-mini {
  height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:9px;
  border-radius:7px;
  background:#eaf0e9;
}
.layout-mini-right { flex-direction:row-reverse; }
.layout-mini-center { flex-direction:column; gap:5px; }
.mini-text {
  width:42%;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.mini-text b { height:4px; border-radius:4px; background:#315c43; }
.mini-text b:nth-child(2) { width:78%; }
.mini-text b:nth-child(3) { width:55%; }
.mini-wheel {
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  aspect-ratio:1 / 1;
  flex:none;
  position:static;
  margin:0;
  border:4px solid white;
  border-radius:50%;
  background:conic-gradient(#d8ff5c 0 25%,#d390f2 0 50%,#ff9e79 0 75%,#9de6ed 0);
  box-shadow:0 2px 7px rgba(29,61,42,.18);
}
.layout-choice .mini-wheel:before { display:none; content:none; }
.layout-mini-center .mini-text { width:65%; }
.layout-mini-center .mini-wheel { width:31px; height:31px; min-width:31px; min-height:31px; }
.alignment-choice-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
}
.alignment-choice { padding:7px; }
.align-mini {
  height:40px;
  display:flex;
  flex-direction:column;
  gap:4px;
  justify-content:center;
  padding:6px;
  border-radius:5px;
  background:#edf2ec;
}
.align-mini i { width:70%; height:3px; border-radius:3px; background:#47705a; }
.align-mini i:nth-child(2) { width:48%; }
.align-center { align-items:center; }
.align-right { align-items:flex-end; }

/* The chosen content side controls the actual columns, not only text alignment. */
.public-content.content-right h1,.public-content.content-right .public-copy,.public-content.content-right .public-kicker { grid-column:2; }
.public-content.content-right .game-card { grid-column:1; }
.public-content.content-center {
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto auto auto;
  justify-items:center;
  text-align:center;
}
.public-content.content-center h1,.public-content.content-center .public-copy,.public-content.content-center .public-kicker,.public-content.content-center .game-card {
  grid-column:1;
  width:min(100%,650px);
}
.public-content.content-center .public-kicker { grid-row:1; }
.public-content.content-center h1 { grid-row:2; }
.public-content.content-center .public-copy { grid-row:3; }
.public-content.content-center .game-card { grid-row:4; margin-top:24px; }
.preview-public-frame.preview-placement-left,.preview-public-frame.preview-placement-right {
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(180px,1.2fr);
  grid-template-rows:auto auto 1fr auto;
  column-gap:20px;
  align-items:center;
}
.preview-public-frame.preview-placement-left>small,.preview-public-frame.preview-placement-left>.preview-title,.preview-public-frame.preview-placement-left>.preview-supporting { grid-column:1; }
.preview-public-frame.preview-placement-left>.preview-game-card { grid-column:2;grid-row:1/4; }
.preview-public-frame.preview-placement-right>small,.preview-public-frame.preview-placement-right>.preview-title,.preview-public-frame.preview-placement-right>.preview-supporting { grid-column:2; }
.preview-public-frame.preview-placement-right>.preview-game-card { grid-column:1;grid-row:1/4; }
.preview-public-frame.preview-placement-left>.preview-open,.preview-public-frame.preview-placement-right>.preview-open { grid-column:1/-1; }
.preview-public-frame.preview-placement-center { display:grid; grid-template-columns:1fr; justify-items:center; text-align:center; }
.public-content h1.placement-top-left,
.public-content .public-copy.placement-top-left,
.public-content .public-copy.placement-top-left>div {
  text-align:left !important;
}
.public-content h1.placement-top-center,
.public-content .public-copy.placement-top-center,
.public-content .public-copy.placement-top-center>div {
  text-align:center !important;
}
.public-content h1.placement-top-right,
.public-content .public-copy.placement-top-right,
.public-content .public-copy.placement-top-right>div {
  text-align:right !important;
}
.preview-title.placement-top-left,
.preview-supporting.placement-top-left,
.preview-supporting.placement-top-left p {
  text-align:left !important;
}
.preview-title.placement-top-center,
.preview-supporting.placement-top-center,
.preview-supporting.placement-top-center p {
  text-align:center !important;
}
.preview-title.placement-top-right,
.preview-supporting.placement-top-right,
.preview-supporting.placement-top-right p {
  text-align:right !important;
}
.live-admin-preview .preview-game-card {
  width:min(100%,360px);
  padding:16px;
}
.live-admin-preview .preview-wheel-wrap {
  width:min(var(--preview-wheel-size,52%),250px);
  min-width:130px;
}
.live-admin-preview .preview-spin-timer {
  max-width:300px;
}
@container (max-width:560px) {
  .preview-public-frame {
    min-height:620px;
    padding:38px 20px 20px;
  }
  .preview-public-frame.preview-placement-left,
  .preview-public-frame.preview-placement-right {
    grid-template-columns:minmax(125px,.85fr) minmax(190px,1.15fr);
    grid-template-rows:auto auto 1fr auto;
    column-gap:16px;
  }
  .preview-public-frame.preview-placement-left>.preview-title,
  .preview-public-frame.preview-placement-right>.preview-title {
    font-size:clamp(18px,5.8cqw,27px) !important;
    line-height:1.02 !important;
    margin-top:8px;
  }
  .preview-public-frame.preview-placement-left>.preview-supporting p,
  .preview-public-frame.preview-placement-right>.preview-supporting p {
    font-size:clamp(11px,3.4cqw,16px) !important;
    line-height:1.22 !important;
  }
  .preview-public-frame.preview-placement-left>.preview-supporting,
  .preview-public-frame.preview-placement-right>.preview-supporting {
    width:100%;
    max-width:100%;
    align-self:center;
  }
  .preview-public-frame.preview-placement-left>.preview-game-card,
  .preview-public-frame.preview-placement-right>.preview-game-card {
    width:100%;
    max-width:245px;
    justify-self:center;
  }
  .live-admin-preview .preview-wheel-wrap {
    width:min(var(--preview-wheel-size,52%),210px);
    min-width:125px;
  }
  .preview-public-frame.preview-placement-left>.preview-open,
  .preview-public-frame.preview-placement-right>.preview-open {
    margin-top:18px;
  }
}
@media (max-width:760px) {
  .design-group-grid { grid-template-columns:1fr; }
  .layout-choice-grid { grid-template-columns:1fr; }
}
.wheel-center .center-arrow,
.wheel-center > span {
  flex: 0 0 auto;
  margin-top: 2px;
  font-size: 10px;
  line-height: 1;
}
.wheel-label {
  color: var(--wheel-text, #10261a);
  text-shadow:
    0 1px 0 rgba(255,255,255,.95),
    1px 0 0 rgba(255,255,255,.7),
    -1px 0 0 rgba(255,255,255,.7);
}
.wheel-label b {
  font-weight: 900;
}
.preview-wheel-center {
  overflow: hidden;
  padding: 7%;
  font-size: 9px;
  line-height: 1.02;
  overflow-wrap: anywhere;
}
@media (min-width: 761px) {
  .public-content.has-logo.logo-top-left,
  .public-content.has-logo.logo-top-right {
    padding-top: max(145px, 12vh);
  }
  .public-content.has-logo.logo-bottom-left,
  .public-content.has-logo.logo-bottom-right {
    padding-bottom: max(130px, 10vh);
  }
}
@media (max-width: 760px) {
  .public-content.has-logo.logo-top-left,
  .public-content.has-logo.logo-top-right {
    padding-top: 125px;
  }
  .public-content.has-logo.logo-bottom-left,
  .public-content.has-logo.logo-bottom-right {
    padding-bottom: 110px;
  }
  .wheel-center {
    font-size: 8px !important;
  }
}

/* Final fit rules for long spin labels and denser wheels. */
.wheel-center {
  padding: 6px !important;
  border-radius: 50% !important;
  overflow-wrap: normal;
  word-break: keep-all;
}
.wheel-label.compact {
  max-height: 58px;
  font-size: clamp(10px, 1.15vw, 13px);
}
.preview-wheel-center {
  padding: 4px !important;
  border-radius: 50% !important;
  overflow-wrap: normal;
  word-break: keep-all;
}