:root{--bg:#07111f;--bg2:#0b1d33;--panel:#0c1728;--panel2:#102846;--text:#f1f7ff;--muted:#a9bbd5;--line:#1f5788;--line2:#17436d;--accent:#2ecbff;--accent2:#357cff;--good:#72e2a2;--bad:#ff7380;--warn:#ffd166;--shadow:rgba(0,0,0,.38)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#0b2846 0,#07111f 42%,#02060c 100%);color:var(--text);font:18px/1.42 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;padding:32px 16px calc(68px + env(safe-area-inset-bottom));-webkit-text-size-adjust:100%}body::before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 20% 0,rgba(56,166,255,.22),transparent 36%),radial-gradient(circle at 100% 12%,rgba(46,203,255,.13),transparent 34%);pointer-events:none}.heroCard,main,footer{position:relative;z-index:1}.heroCard{display:flex;gap:28px;align-items:center;width:min(1120px,100%);margin:0 auto 26px;background:linear-gradient(145deg,#122e50,#07111f 74%);border:1px solid var(--line);border-radius:56px;padding:38px 38px;box-shadow:0 22px 55px var(--shadow)}.logoButton{border:0;background:transparent;padding:0;min-width:150px;min-height:150px}.logoButton img{width:150px;height:150px;border-radius:32px;object-fit:cover;border:1px solid var(--accent);box-shadow:0 0 0 1px rgba(46,203,255,.16),0 18px 38px rgba(0,0,0,.5)}.eyebrow{color:var(--accent);letter-spacing:.28em;text-transform:uppercase;font-weight:900;font-size:15px;margin:0 0 12px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(56px,10vw,104px);line-height:.95;margin-bottom:26px;letter-spacing:-.06em}h2{font-size:clamp(34px,7vw,58px);line-height:1;margin-bottom:14px;letter-spacing:-.04em}h3{font-size:clamp(28px,6vw,44px);line-height:1.05;margin-bottom:10px;letter-spacing:-.035em}h4{font-size:24px;margin-bottom:12px}.heroText p:not(.eyebrow),.card p,.notice,.version,.safeText{color:var(--muted);font-weight:700}.heroText p:not(.eyebrow){font-size:clamp(25px,5.3vw,45px);line-height:1.25}.version,.safeText{font-size:16px}.safeText code{color:#dceeff}main{width:min(1120px,100%);margin:0 auto}.card,.notice{background:linear-gradient(180deg,rgba(14,28,50,.98),rgba(5,10,19,.98));border:1px solid var(--line);border-radius:46px;padding:34px;margin:22px 0;box-shadow:0 18px 40px rgba(0,0,0,.26)}.compact{border-radius:28px;padding:18px 22px}.toolbar{display:flex;gap:18px;align-items:center;justify-content:space-between}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.raffleCard h3{font-size:28px}.pill{display:inline-flex;align-items:center;border:1px solid var(--line2);border-radius:999px;padding:5px 12px;color:var(--muted);font-size:13px;font-weight:800;margin:0 6px 6px 0}.money{font-weight:900;color:var(--good)}button{min-height:54px;border:1px solid var(--line);border-radius:18px;background:#0b1829;color:var(--text);font-weight:900;padding:12px 18px;font-size:17px;touch-action:manipulation}button.primary{background:linear-gradient(135deg,#2ecbff,#2f6fff);border-color:#84d9ff;color:#06101c}button.big{width:100%;min-height:68px;border-radius:24px;font-size:22px}button.danger{background:linear-gradient(135deg,#8f2430,#ff6b78);border-color:#ff94a0;color:white}button.ghost{background:rgba(255,255,255,.04)}input,textarea,select{width:100%;min-height:58px;border-radius:20px;border:1px solid #315c8c;background:#07111f;color:var(--text);padding:14px 16px;font:inherit;font-weight:800}textarea{min-height:128px}label{display:block;margin:14px 0;color:var(--muted);font-size:16px;font-weight:900}.adminDialog,.sensitiveDialog{width:min(1100px,96vw);max-height:92vh;border:1px solid var(--line);border-radius:42px;background:#06101d;color:var(--text);padding:0;box-shadow:0 24px 70px rgba(0,0,0,.62)}.adminDialog::backdrop,.sensitiveDialog::backdrop{background:rgba(0,0,0,.76);backdrop-filter:blur(5px)}.adminShell{padding:30px}.compactShell{padding:28px}.adminTop{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.hidden{display:none!important}.gatePanel .gateCard{margin-top:18px}.walletButtons{display:grid;gap:14px;margin:22px 0}.sessionBar{display:flex;align-items:center;justify-content:space-between;gap:12px}.tabs{display:flex;gap:10px;overflow:auto;padding:14px 0 18px;scrollbar-width:none}.tabs button{white-space:nowrap;min-width:max-content}.tabs button.active{border-color:var(--accent);box-shadow:0 0 0 3px rgba(46,203,255,.18);color:#fff}.tabs button[data-sensitive="true"]::after{content:"  🔒"}.tabPane{display:none}.tabPane.active{display:block}.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.resultCard pre,pre{white-space:pre-wrap;word-break:break-word;background:#040a13;border:1px solid var(--line2);border-radius:24px;padding:18px;max-height:460px;overflow:auto}.miniList{display:grid;gap:10px}.miniItem{border:1px solid var(--line2);border-radius:22px;padding:16px;background:rgba(255,255,255,.035)}.walletRow{display:grid;grid-template-columns:1fr 2fr .7fr;gap:10px;margin:10px 0}.tableWrap{overflow:auto}.tableWrap table{width:100%;border-collapse:collapse;font-size:14px}.tableWrap td,.tableWrap th{border:1px solid var(--line2);padding:10px;vertical-align:top}.buttonRow{display:flex;gap:12px;flex-wrap:wrap}code{color:#bee4ff}footer{text-align:center;color:var(--muted);padding:28px 12px;font-weight:900}@media(max-width:760px){body{padding:22px 14px calc(82px + env(safe-area-inset-bottom));font-size:16px}.heroCard{display:block;border-radius:34px;padding:28px 24px}.logoButton{min-width:104px;min-height:104px;margin-bottom:18px}.logoButton img{width:104px;height:104px;border-radius:28px}h1{font-size:64px}.heroText p:not(.eyebrow){font-size:29px}.toolbar,.adminTop,.twoCol,.sessionBar{display:block}.card,.notice{border-radius:32px;padding:24px}.adminShell{padding:22px}.walletRow{grid-template-columns:1fr}.adminDialog,.sensitiveDialog{width:94vw;border-radius:32px}button{width:auto}.tabs{padding-bottom:16px}}

/* v0.1.26 surgical UI continuation */
body[data-theme="rilegato-legacy-gold"]{--accent:#ffd166;--accent2:#c7922b;--line:#7d642c;--line2:#5c4823;--bg2:#261d0d}
body[data-theme="empire-red"]{--accent:#ff6b78;--accent2:#b82f3b;--line:#74303a;--line2:#54242c;--bg2:#260b10}
body[data-theme="midnight-violet"]{--accent:#b990ff;--accent2:#734bff;--line:#59418a;--line2:#423166;--bg2:#140f29}
.heroText .eyebrow{margin-bottom:18px}.heroText #siteDescription{max-width:820px}.tokenAddRow{display:grid;grid-template-columns:1fr 1.4fr auto;gap:10px;align-items:end}.tokenRows{display:grid;gap:8px;margin:12px 0}.tokenRow{display:grid;grid-template-columns:.8fr 1.8fr auto;gap:8px;align-items:center;border:1px solid var(--line2);border-radius:16px;padding:10px}.splitField{display:grid;grid-template-columns:1fr 1fr;gap:10px}.splitField label:first-child{grid-column:1/-1}.checkLabel{display:flex;align-items:center;gap:10px}.checkLabel input{width:auto;min-height:auto}.twoCol.tight{grid-template-columns:1fr 1fr}.formCard,.resultCard{min-width:0}.formCard input,.formCard select,.formCard textarea{min-width:0}.adminDialog .card{overflow:hidden}#acceptedTokenRows code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.heroCard{padding:24px 22px}.heroText p:not(.eyebrow){font-size:26px}.heroText #siteDescription{font-size:24px}.card,.notice{padding:22px}.formCard{padding:20px}.formCard label{font-size:15px}.formCard input,.formCard select,.formCard textarea{font-size:16px;min-height:52px;padding:12px 14px}.splitField,.tokenAddRow,.tokenRow,.twoCol.tight{grid-template-columns:1fr}.tokenRow button{width:100%}.adminDialog{max-width:96vw}.adminShell{padding:18px}.tabs button{font-size:15px}.logoButton{min-width:96px;min-height:96px}.logoButton img{width:96px;height:96px}h1{font-size:58px}h2{font-size:38px}h3{font-size:34px}}

/* v0.1.26 raffle calculation field corrections */
.rateRow{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:end}.rateRow button{margin-bottom:14px}.inlineCheck{display:flex;align-items:center;gap:10px;margin:14px 0 14px;color:var(--muted);font-weight:900}.inlineCheck input{width:auto;min-height:auto}.rateOverrideCheck{white-space:nowrap}.miniCalcCard{border:1px solid var(--line2);border-radius:24px;padding:16px;margin:16px 0;background:rgba(255,255,255,.03)}.calcLines{display:grid;gap:8px;color:var(--muted);font-weight:800}.priceRows{display:grid;gap:8px}.priceRow{display:grid;grid-template-columns:.8fr 1fr;gap:8px;align-items:center;border:1px solid var(--line2);border-radius:16px;padding:10px}.priceRow span{font-weight:900}.priceRow small{color:var(--muted);font-weight:800}.formCard input[readonly]{opacity:1;background:#081523;border-color:var(--line);color:#fff;-webkit-text-fill-color:#fff}.tokenRow{grid-template-columns:.7fr 1fr auto}.tokenRow code{font-size:13px}.tokenRow button{min-height:44px;padding:8px 12px}.adminDialog .formCard{overflow:visible}.adminDialog .card{max-width:100%}
@media(max-width:760px){.rateRow,.priceRow{grid-template-columns:1fr}.rateRow button{width:100%;margin-bottom:0}.inlineCheck{margin:4px 0 0}.miniCalcCard{padding:14px}.priceRow small{display:block}.tokenRows{gap:6px}.tokenRow{padding:9px}.tokenRow code{white-space:normal;word-break:break-word}.formCard .primary{width:100%}}

.sectionHeading{margin-top:.85rem;padding:.7rem .85rem;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.045)}
.sectionHeading h4{margin:0}
.raffleSubmodes{display:flex;gap:.6rem;flex-wrap:wrap;margin:.8rem 0 1rem}
.raffleSubmodes button.active{outline:2px solid rgba(255,255,255,.28)}
.raffleSubmodePane.hidden{display:none}
.raffleSubmodePane.active{display:block}

/* v0.1.26 surgical create/confirm corrections */
input.costAttention::placeholder{color:var(--bad);opacity:1;font-weight:900}
input.costAttention::-webkit-input-placeholder{color:var(--bad);opacity:1;font-weight:900}
.confirmWorkflowGrid .compact{margin:12px 0}
.webhookStatusGood{color:var(--good);font-weight:900}
.webhookStatusWarn{color:var(--warn);font-weight:900}

/* v0.1.26 vault and multi-prize acquisition surgical corrections */
.extraPrizeCostField{margin-top:10px}
#vaultKeypairFile{padding-top:15px}
.selectCard{display:block;width:100%;text-align:left;border:1px solid var(--line2);border-radius:22px;padding:16px;background:rgba(255,255,255,.035);min-height:auto}.selectCard.selected{border-color:var(--accent);box-shadow:0 0 0 3px rgba(46,203,255,.18);background:rgba(46,203,255,.08)}.goodText{color:var(--good);font-weight:900}.warnText{color:var(--warn);font-weight:900}

/* v0.1.27 public ledger containment and filters */
.ledgerDropdown{padding:0;overflow:hidden}
.ledgerDropdown details{padding:24px}
.ledgerDropdown summary{cursor:pointer;font-weight:900;font-size:24px;list-style:none}
.ledgerDropdown summary::-webkit-details-marker{display:none}
.ledgerDropdown summary::after{content:'▾';float:right;color:var(--accent)}
.ledgerDropdown details:not([open]) summary::after{content:'▸'}
.ledgerControls{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 12px}
.ledgerControls .filterButton.active{border-color:var(--accent);box-shadow:0 0 0 3px rgba(46,203,255,.18);color:#fff}
.raffleScrollShell{max-height:760px;overflow:auto;border:1px solid var(--line2);border-radius:32px;padding:14px;background:rgba(255,255,255,.025);-webkit-overflow-scrolling:touch}
.raffleScrollShell .grid{grid-template-columns:1fr}
@media(max-width:760px){.ledgerDropdown details{padding:18px}.ledgerControls .filterButton{min-height:46px;padding:9px 12px;font-size:14px}.raffleScrollShell{max-height:690px;padding:10px;border-radius:24px}.raffleScrollShell .card{margin:12px 0}}

/* v0.1.29 confirmed/settled audit UI and title helper corrections */
input.attentionPlaceholder::placeholder{color:var(--bad);opacity:1;font-weight:900;text-transform:uppercase}
input.attentionPlaceholder::-webkit-input-placeholder{color:var(--bad);opacity:1;font-weight:900;text-transform:uppercase}
.containedMiniList,.settledMiniList{max-height:430px;overflow:auto;border:1px solid var(--line2);border-radius:24px;padding:10px;background:rgba(255,255,255,.025);-webkit-overflow-scrolling:touch}
.settledMiniList{max-height:520px}
.detailPre{margin-top:12px}
@media(max-width:760px){.containedMiniList{max-height:390px}.settledMiniList{max-height:470px}}

/* v1.2.6 webhook router controls */
.checkGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:10px 0 16px}
.checkGrid .checkLabel{margin:0;min-height:44px}


/* v1.2.7 mobile-safe webhook endpoint wrapping */
.endpointLine{display:block;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word;white-space:normal}
.endpointLine strong{display:block;margin-bottom:4px}
.endpointCode{display:block;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word;white-space:normal;line-height:1.35}
#tab-webhooks .card,#tab-webhooks .formCard,#tab-webhooks .miniPanel,#tab-webhooks .miniItem{min-width:0;max-width:100%;overflow-wrap:anywhere}
#tab-webhooks code{overflow-wrap:anywhere;word-break:break-word;white-space:normal}


/* v1.2.13 mobile containment fixes */
*, *::before, *::after { box-sizing: border-box; }
.card, .miniItem, .formCard, .tabPane, .adminShell { max-width: 100%; }
.miniItem, .quoteSettingRow, .adminWalletItem {
  min-width: 0;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.wrapText, .wrapCode, .miniItem code, .quoteSettingRow code, .adminWalletItem code {
  display: inline-block;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.quoteSettingRow label,
.adminWalletItem label {
  min-width: 0;
}
.quoteSettingRow input,
.adminWalletItem input,
#quoteSettingsRows input,
#adminWalletRows input {
  max-width: 100%;
}
#quoteSettingsRows,
#adminWalletRows {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
@media(max-width:760px){
  .miniItem, .quoteSettingRow, .adminWalletItem { padding: 14px; }
  .miniItem .buttonRow, .adminWalletItem .buttonRow { gap: 10px; }
  .miniItem .buttonRow button, .adminWalletItem .buttonRow button { max-width: 100%; }
}


/* v1.2.17 Raffle Statistics read-only dashboard */
.statsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:14px 0}
.statCard{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;background:rgba(8,18,34,.72);min-width:0}
.statCard h4{margin:0 0 8px 0;font-size:.9rem;line-height:1.25}
.statValue{font-size:1.35rem;font-weight:800;line-height:1.15;overflow-wrap:anywhere}
.statSub{font-size:.82rem;opacity:.78;margin-top:6px;overflow-wrap:anywhere}
.tableWrap{overflow-x:auto;max-width:100%}
.statsTable{width:100%;border-collapse:collapse;min-width:680px}
.statsTable th,.statsTable td{padding:8px;border-bottom:1px solid rgba(255,255,255,.1);text-align:left;vertical-align:top}
.statsTable th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;opacity:.78}
.walletRank{font-weight:800}


/* v1.2.19 Image Upload Foundation */
.imageUploadsCard h5{margin:16px 0 8px 0;font-size:1rem}
.displayPrizeUploadRow input[type="file"], .imageUploadsCard input[type="file"]{max-width:100%;overflow-wrap:anywhere}
.imageUploadsCard .miniItem{overflow-wrap:anywhere}


/* v1.2.21 media thumbnails and support panels */
.raffleThumbWrap{margin:0 0 12px 0;max-width:100%;overflow:hidden;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.22)}
.raffleThumb{display:block;width:100%;max-height:260px;object-fit:cover}
.miniItem .raffleThumbWrap{border-radius:12px;margin-bottom:10px}
.miniItem .raffleThumb{max-height:180px}
.settlementMediaPanel{margin-bottom:14px}
.settlementMediaPanel .raffleThumb{max-height:320px}
#settlementResult pre{white-space:pre-wrap;overflow:auto;margin:0}.settlementResultBox{white-space:pre-wrap;overflow:auto}


/* v1.2.23 compact homepage raffle cards */
.publicRaffleCompactCard{display:flex;align-items:flex-start;gap:14px;padding:18px}
.publicRaffleCompactCard .publicRaffleThumbColumn{flex:0 0 112px;max-width:112px}
.publicRaffleCompactCard .raffleThumbWrap{margin:0;border-radius:14px}
.publicRaffleCompactCard .raffleThumb{width:112px;height:112px;max-height:112px;object-fit:cover}
.publicRaffleCompactDetails{min-width:0;flex:1}
.publicRaffleCompactCard .eyebrow{margin:0 0 5px;font-size:.72rem;letter-spacing:.32em}
.publicRaffleCompactCard h3{font-size:clamp(1.15rem,4.8vw,1.65rem);line-height:1.04;margin:0 0 7px;overflow-wrap:anywhere}
.publicRaffleCompactCard .publicRafflePrize{font-size:.95rem;line-height:1.2;margin:0 0 8px}
.publicRaffleCompactCard .publicRafflePills{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 8px}
.publicRaffleCompactCard .pill{font-size:.73rem;line-height:1;padding:7px 10px}
.publicRaffleCompactCard .publicRaffleProfit{font-size:.92rem;line-height:1.25}
.publicRaffleCompactCard .publicRaffleProfit p{margin:.2rem 0 0}
.publicRaffleCompactCard.noThumb{display:block;padding:18px}
@media (max-width:520px){
  .publicRaffleCompactCard{gap:10px;padding:14px}
  .publicRaffleCompactCard .publicRaffleThumbColumn{flex-basis:96px;max-width:96px}
  .publicRaffleCompactCard .raffleThumb{width:96px;height:96px;max-height:96px}
  .publicRaffleCompactCard h3{font-size:1.16rem}
  .publicRaffleCompactCard .publicRafflePrize{font-size:.86rem}
  .publicRaffleCompactCard .pill{font-size:.66rem;padding:6px 8px}
  .publicRaffleCompactCard .publicRaffleProfit{font-size:.82rem}
}
@media (max-width:380px){
  .publicRaffleCompactCard .publicRaffleThumbColumn{flex-basis:84px;max-width:84px}
  .publicRaffleCompactCard .raffleThumb{width:84px;height:84px;max-height:84px}
  .publicRaffleCompactCard{gap:9px;padding:12px}
}


/* support media delete controls */
.mediaAssetItem .smallDangerBtn{margin-top:10px;width:auto;min-width:190px}
.dangerOutlineBtn{border-color:rgba(255,111,111,.7);color:#ffd1d1;background:rgba(120,10,10,.18)}
.dangerOutlineBtn:hover{background:rgba(120,10,10,.28)}


/* v3 Rilegato Raffles theme foundation */
body[data-theme="rilegato-raffles"]{
  --bg:#050203;
  --panel:#170607;
  --panel2:#230b0d;
  --ink:#fff6dc;
  --muted:#d8b984;
  --accent:#f7c75e;
  --accent2:#ff5b2f;
  --line:#7e3f17;
  --line2:#3a1711;
  --good:#60f0a0;
  --warn:#ffcf5e;
  --bad:#ff6464;
  --bg2:#0d0304;
  background:
    radial-gradient(circle at top left, rgba(255,91,47,.18), transparent 34%),
    radial-gradient(circle at 85% 10%, rgba(247,199,94,.14), transparent 28%),
    linear-gradient(180deg,#050203 0%,#130506 48%,#050203 100%);
}
body[data-theme="rilegato-raffles"] .heroCard,
body[data-theme="rilegato-raffles"] .card,
body[data-theme="rilegato-raffles"] .notice,
body[data-theme="rilegato-raffles"] .adminShell{
  background:linear-gradient(145deg,rgba(35,11,13,.94),rgba(10,3,4,.96));
  border-color:rgba(247,199,94,.32);
  box-shadow:0 16px 48px rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,91,47,.08);
}
body[data-theme="rilegato-raffles"] .logoButton{
  background:radial-gradient(circle,rgba(247,199,94,.2),rgba(255,91,47,.08));
  border-color:rgba(247,199,94,.5);
  box-shadow:0 0 34px rgba(247,199,94,.18);
}
body[data-theme="rilegato-raffles"] h1,
body[data-theme="rilegato-raffles"] h2,
body[data-theme="rilegato-raffles"] h3{
  color:#fff6dc;
  text-shadow:0 0 18px rgba(247,199,94,.18);
}
body[data-theme="rilegato-raffles"] .eyebrow,
body[data-theme="rilegato-raffles"] summary{
  color:#f7c75e;
}
body[data-theme="rilegato-raffles"] button.primary,
body[data-theme="rilegato-raffles"] .tabs button.active,
body[data-theme="rilegato-raffles"] .filterButton.active{
  background:linear-gradient(135deg,#f7c75e,#ff5b2f);
  color:#180505;
  border-color:rgba(255,246,220,.28);
}
body[data-theme="rilegato-raffles"] button,
body[data-theme="rilegato-raffles"] input,
body[data-theme="rilegato-raffles"] select,
body[data-theme="rilegato-raffles"] textarea{
  border-color:rgba(247,199,94,.28);
}
body[data-theme="rilegato-raffles"] .raffleScrollShell{
  background:rgba(0,0,0,.2);
  border-color:rgba(247,199,94,.25);
}
body[data-theme="rilegato-raffles"] code{
  color:#ffe7a3;
}


/* RILEGATO_V3_NO_BLUE_FLASH_OVERRIDE */
html,
body,
body[data-theme="rilegato-raffles"] {
  background:
    radial-gradient(circle at 20% 10%, rgba(255, 91, 24, 0.16), transparent 30%),
    linear-gradient(180deg, #050000 0%, #120000 45%, #050000 100%) !important;
  color: #fff4d8 !important;
}

body[data-theme="rilegato-raffles"] .heroCard,
body[data-theme="rilegato-raffles"] .introCard,
body[data-theme="rilegato-raffles"] .adminShell,
body[data-theme="rilegato-raffles"] .adminPanel,
body[data-theme="rilegato-raffles"] .card,
body[data-theme="rilegato-raffles"] .raffleCard,
body:not([data-theme]) .heroCard,
body:not([data-theme]) .introCard,
body:not([data-theme]) .card,
body:not([data-theme]) .raffleCard {
  background: linear-gradient(180deg, rgba(45, 4, 5, 0.96), rgba(10, 0, 0, 0.98)) !important;
  border-color: rgba(255, 190, 75, 0.45) !important;
  color: #fff4d8 !important;
  box-shadow: 0 0 0 1px rgba(255, 93, 24, 0.14), 0 24px 70px rgba(0, 0, 0, 0.45) !important;
}

body[data-theme="rilegato-raffles"] .eyebrow,
body[data-theme="rilegato-raffles"] .sectionEyebrow,
body[data-theme="rilegato-raffles"] .statLabel,
body:not([data-theme]) .eyebrow,
body:not([data-theme]) .sectionEyebrow,
body:not([data-theme]) .statLabel {
  color: #ffd36e !important;
}

body[data-theme="rilegato-raffles"] .siteVersion,
body[data-theme="rilegato-raffles"] .versionBadge,
body[data-theme="rilegato-raffles"] [data-version-public="true"] {
  display: none !important;
}

/* v3.0.2 workflow contrast + upload-prize foundation */
body[data-theme="rilegato-raffles"] .formCard,
body[data-theme="rilegato-raffles"] .miniCalcCard,
body[data-theme="rilegato-raffles"] .miniItem,
body[data-theme="rilegato-raffles"] .resultCard,
body[data-theme="rilegato-raffles"] .assetPickerPanel,
body[data-theme="rilegato-raffles"] .assetScrollWindow,
body[data-theme="rilegato-raffles"] .prizeUploadCard,
body[data-theme="rilegato-raffles"] .statCard,
body[data-theme="rilegato-raffles"] .adminDialog .card {
  background: linear-gradient(180deg, rgba(8, 1, 2, 0.98), rgba(2, 0, 0, 0.99)) !important;
  border-color: rgba(255, 190, 75, 0.42) !important;
  color: #fff4d8 !important;
  box-shadow: 0 0 0 1px rgba(255, 190, 75, 0.08), 0 18px 42px rgba(0, 0, 0, 0.34) !important;
}
body[data-theme="rilegato-raffles"] input,
body[data-theme="rilegato-raffles"] select,
body[data-theme="rilegato-raffles"] textarea,
body[data-theme="rilegato-raffles"] pre {
  background: #050101 !important;
  color: #fff4d8 !important;
  border-color: rgba(255, 190, 75, 0.48) !important;
}
body[data-theme="rilegato-raffles"] .tabs button.active,
body[data-theme="rilegato-raffles"] .raffleSubmodes button.active {
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(255, 190, 75, 0.22) !important;
}
.floorActions{align-items:center;justify-content:flex-end}.floorActions button{min-width:150px}.walletAssetToolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 14px}.assetScrollWindow{max-height:650px;overflow:auto;border:1px solid var(--line2);border-radius:24px;padding:12px;display:grid;gap:10px;-webkit-overflow-scrolling:touch}.assetCard{display:grid;grid-template-columns:72px 1fr;gap:12px;text-align:left;align-items:center;width:100%;min-height:96px;border-radius:18px;background:rgba(0,0,0,.36)}.assetCard.selected{border-color:#ffd36e!important;box-shadow:0 0 0 3px rgba(255,211,110,.18)}.assetCard.disabled{opacity:.5}.assetThumb{width:72px;height:72px;border-radius:14px;object-fit:cover;border:1px solid rgba(255,190,75,.22)}.assetThumbFallback{display:grid;place-items:center;background:rgba(255,190,75,.12);font-size:24px}.assetBody{display:grid;gap:4px;min-width:0}.assetBody span,.assetBody small{color:#e7c98e;font-weight:800;overflow-wrap:anywhere}.prizeSlot.empty{border-style:dashed}.splPrizeAmount{margin-top:8px}.prizeUploadCard h5{margin:16px 0 8px}
@media(max-width:760px){.walletAssetToolbar{display:block}.walletAssetToolbar button{width:100%;margin-top:10px}.assetScrollWindow{max-height:560px}.assetCard{grid-template-columns:64px 1fr;min-height:88px}.assetThumb{width:64px;height:64px}.floorActions{justify-content:stretch}.floorActions button{width:100%;min-width:0}}

/* RILEGATO_V303_MOBILE_PICKER_AND_VAULT_REPAIR */
.heroSubtitle.hidden,
#siteSubtitle.hidden { display: none !important; }
.publicWalletBar {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0 0 18px;
}
.publicWalletButton {
  max-width: 100%;
  white-space: nowrap;
}
.publicWalletBar .safeText {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.assetScrollWindow,
.selectableAssetWindow {
  overflow-y: auto !important;
  overflow-x: hidden !important;
  max-height: min(620px, 66vh);
  width: 100%;
  box-sizing: border-box;
  padding: 12px;
}
.assetCard,
.vaultInventoryCard .vaultAssetRow {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  overflow: hidden;
  text-align: left;
}
.assetCard .assetThumb,
.vaultInventoryCard .assetThumb {
  width: 64px !important;
  height: 64px !important;
  min-width: 64px;
  object-fit: cover;
  border-radius: 16px;
}
.assetBody {
  min-width: 0 !important;
  max-width: 100%;
  display: grid;
  gap: 4px;
}
.assetBody strong,
.assetBody span,
.assetBody small {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  overflow-wrap: anywhere;
}
.assetBody strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
}
.assetBody span {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
}
.assetStatusBadge {
  display: inline-block;
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(255, 211, 110, .35);
  border-radius: 999px;
  padding: 3px 8px;
  background: rgba(0,0,0,.45);
  color: #e6c88f;
  font-size: 12px;
}
.vaultSubmodes,
.vaultCardScroll {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 16px 0;
}
.vaultSubmodePane { display: none; }
.vaultSubmodePane.active { display: block; }
.vaultCardScroll {
  display: grid;
  max-height: 620px;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 12px;
  border: 1px solid rgba(255,190,75,.35);
  border-radius: 24px;
  background: rgba(0,0,0,.38);
}
@media(max-width:760px){
  .heroCard { overflow: hidden; }
  .publicWalletBar { margin-top: 4px; }
  .publicWalletButton { width: 100%; }
  .assetScrollWindow,.selectableAssetWindow { max-height: 560px; padding: 10px; }
  .assetCard,.vaultInventoryCard .vaultAssetRow { grid-template-columns: 64px minmax(0,1fr); gap: 10px; padding: 12px !important; }
  .assetCard .assetThumb,.vaultInventoryCard .assetThumb { width: 56px !important; height: 56px !important; min-width: 56px; }
  .vaultSubmodes button { width: auto; max-width: 100%; }
}

/* v3.9.2 workflow contrast */
body[data-theme="rilegato-raffles"] .prizeUploadCard, body[data-theme="rilegato-raffles"] .formCard, body[data-theme="rilegato-raffles"] .resultCard { background: rgba(8, 1, 2, 0.98) !important; }

/* RILEGATO_V305_ENTERPRISE_WALLET_MODAL_HERO_REPAIR */
body[data-theme="rilegato-raffles"] .compactHero {
  display: grid !important;
  gap: 18px !important;
  align-items: stretch !important;
}
.heroIdentityRow {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 22px;
  align-items: center;
}
.heroTitleBlock {
  min-width: 0;
}
.heroTitleBlock h1 {
  font-size: clamp(42px, 7.2vw, 78px) !important;
  line-height: .95 !important;
  margin: 0 0 14px !important;
}
.heroTitleBlock #siteDescription {
  font-size: clamp(21px, 3.4vw, 34px) !important;
  line-height: 1.22 !important;
  margin: 0 !important;
}
.compactHero .logoButton {
  margin: 0 !important;
}
.compactHero .publicWalletBar {
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}
.compactHero .publicWalletButton {
  width: 100%;
  min-height: 58px;
}
.compactHero .publicWalletBar .safeText {
  grid-column: 1 / -1;
  min-height: 20px;
}
@media(max-width:760px){
  body[data-theme="rilegato-raffles"] .compactHero {
    padding: 24px 22px !important;
    border-radius: 34px !important;
    gap: 16px !important;
  }
  .heroIdentityRow {
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 16px;
  }
  .heroTitleBlock h1 {
    font-size: clamp(32px, 10.2vw, 48px) !important;
    letter-spacing: -.06em;
  }
  .heroTitleBlock #siteDescription {
    font-size: clamp(17px, 5vw, 23px) !important;
  }
  .compactHero .publicWalletBar {
    grid-template-columns: 1fr;
  }
  .compactHero .publicWalletButton { width: 100%; }
}


/* RILEGATO_V305_ENTERPRISE_WALLET_MODAL_ADMIN_PROMOTION_REPAIR */
body[data-theme="rilegato-raffles"] .compactHero {
  display: grid !important;
  gap: 16px !important;
  align-items: stretch !important;
}
body[data-theme="rilegato-raffles"] .heroIdentityRow {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 20px !important;
  align-items: center !important;
}
body[data-theme="rilegato-raffles"] .heroTitleBlock h1 {
  font-size: clamp(38px, 7vw, 72px) !important;
  line-height: .96 !important;
  margin: 0 !important;
}
body[data-theme="rilegato-raffles"] .compactHero .heroDescription {
  font-size: clamp(21px, 4.8vw, 36px) !important;
  line-height: 1.23 !important;
  margin: 0 !important;
  color: var(--muted) !important;
  font-weight: 900 !important;
}
body[data-theme="rilegato-raffles"] .compactHero .publicWalletBar {
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: center !important;
}
body[data-theme="rilegato-raffles"] .compactHero .publicWalletButton {
  width: 100% !important;
  min-height: 58px !important;
}
body[data-theme="rilegato-raffles"] .compactHero .publicWalletBar .safeText {
  min-height: 20px !important;
  overflow-wrap: anywhere !important;
}
@media(max-width:760px){
  body[data-theme="rilegato-raffles"] .compactHero { padding: 24px 22px !important; border-radius: 34px !important; gap: 14px !important; }
  body[data-theme="rilegato-raffles"] .heroIdentityRow { grid-template-columns: 104px minmax(0, 1fr) !important; gap: 14px !important; }
  body[data-theme="rilegato-raffles"] .heroTitleBlock h1 { font-size: clamp(30px, 10vw, 46px) !important; letter-spacing: -.06em !important; }
  body[data-theme="rilegato-raffles"] .compactHero .heroDescription { font-size: clamp(19px, 5.3vw, 25px) !important; }
}

/* v3.9.2 JSON Body Action Token Fix + Cost Upsert + Summary Simplification */
#calcResult.projectionPreviewCard,
.projectionPreviewCard{
  white-space:normal;
  word-break:normal;
  background:linear-gradient(180deg,rgba(18,7,9,.98),rgba(6,2,3,.98));
  border:1px solid rgba(255,209,102,.38);
  border-radius:26px;
  padding:18px;
  display:grid;
  gap:14px;
  max-height:none;
  overflow:visible;
}
.projectionSection{border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:14px;background:rgba(255,255,255,.035)}
.projectionSection h5{margin:0 0 10px;font-size:17px;color:var(--accent);letter-spacing:.04em;text-transform:uppercase}
.projectionPrizeRow{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}
.projectionPrizeRow .assetThumb{width:58px;height:58px;border-radius:16px;object-fit:cover;border:1px solid var(--line)}
.projectionGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8px 12px;align-items:center}
.projectionGrid span{color:var(--muted);font-weight:900}
.projectionGrid strong{overflow-wrap:anywhere}
.projectionChips{display:flex;gap:8px;flex-wrap:wrap}
.projectionChip{display:inline-grid;gap:2px;border:1px solid var(--line2);border-radius:999px;padding:8px 12px;background:rgba(255,255,255,.045);font-weight:900;color:var(--text)}
.projectionChip strong{font-size:12px;color:var(--accent);letter-spacing:.08em}
.projectionDebug{border-top:1px solid rgba(255,255,255,.12);padding-top:8px}
.projectionDebug summary{cursor:pointer;color:var(--muted);font-weight:900}
.projectionDebug pre{max-height:220px;margin:10px 0 0}
.projectionResultEmpty{white-space:pre-wrap;word-break:break-word;background:#040a13;border:1px solid var(--line2);border-radius:24px;padding:18px;}
@media(max-width:760px){.projectionGrid{grid-template-columns:1fr}.projectionPrizeRow{grid-template-columns:52px minmax(0,1fr)}.projectionPrizeRow .assetThumb{width:52px;height:52px}.projectionSection{padding:12px}.projectionChip{width:calc(50% - 4px)}}

/* v3.9.2 public raffle presentation + recovery attempt controls */
.publicRafflePlayableCard { display:grid; grid-template-columns:minmax(96px, 140px) 1fr; gap:1rem; align-items:center; cursor:pointer; }
.publicRafflePlayableCard.selectedPublicRaffle { outline:2px solid rgba(255,203,94,.75); box-shadow:0 0 0 4px rgba(255,203,94,.12); }
.raffleThumbPlaceholder { min-height:110px; border:1px dashed rgba(255,203,94,.45); border-radius:1rem; display:grid; place-items:center; text-align:center; color:var(--muted); padding:.75rem; }
.publicRafflePriceLine { margin:.65rem 0; color:var(--cream); font-weight:800; }
.publicRaffleDetail { margin-top:1rem; }
.publicRaffleSelectedCard .raffleThumbWrap { max-width:260px; }
.publicTicketPriceGrid { display:grid; grid-template-columns:repeat(auto-fit, minmax(120px, 1fr)); gap:.65rem; margin:.75rem 0; }
.ticketPriceButton { min-height:72px; }
.prizeMiniPublic { display:grid; grid-template-columns:76px 1fr; gap:.75rem; align-items:center; }
.recoveryAttemptRemoveButton { background:linear-gradient(135deg,#8f2435,#ef4d6d); color:#fff; }
@media (max-width: 720px) { .publicRafflePlayableCard { grid-template-columns:1fr; } .publicRafflePlayableCard .raffleThumbWrap { max-width:220px; } }

/* v3.9.2 public raffle purchase modal */
.publicRaffleModal.hidden{display:none!important}
.publicRaffleModal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.72)}
.publicRaffleModalBackdrop{position:absolute;inset:0}
.publicRaffleModalPanel{position:relative;z-index:1;max-height:86vh;overflow:auto;width:min(720px,94vw);padding-bottom:calc(28px + env(safe-area-inset-bottom))}
.publicRaffleModalClose{position:sticky;top:0;float:right;z-index:2}
.publicTicketPriceGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:12px 0}
.ticketPriceButton{min-height:72px}

/* v3.9.2 mobile modal and purchase UX repair */
.publicRaffleModalPanel{padding:0!important;overflow:hidden;display:flex;flex-direction:column;max-height:min(88vh, calc(100vh - 32px));}
.publicRaffleModalHeader{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:linear-gradient(180deg,rgba(39,0,0,.98),rgba(12,0,0,.94));border-bottom:1px solid rgba(255,203,94,.28);border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;}
.publicRaffleModalHeader h3{margin:0;min-width:0;overflow-wrap:anywhere;font-size:clamp(24px,6vw,42px);}
.publicRaffleModalBody{overflow:auto;padding:18px;padding-bottom:calc(28px + env(safe-area-inset-bottom));}
.publicRaffleModalClose{position:static!important;float:none!important;flex:0 0 auto;min-width:auto;padding:12px 16px;}
.buyTicketsBlock{margin-top:18px;padding-top:12px;border-top:1px solid rgba(255,203,94,.28)}
.publicTicketInstructions{margin-top:-4px;margin-bottom:14px;line-height:1.35;}
.purchaseActionPanel{border:1px solid rgba(255,203,94,.42);border-radius:22px;padding:14px;margin:12px 0 14px;background:rgba(0,0,0,.22)}
.purchaseActionPanel button{width:100%;margin:8px 0;}
.activeRaffleModal .raffleDetailCard{border:0;padding:0;background:transparent;box-shadow:none;}
.activeRaffleDetailGrid{display:block;}
@media(max-width:720px){.publicRaffleModal{align-items:flex-start;padding:8px;padding-top:calc(8px + env(safe-area-inset-top));}.publicRaffleModalPanel{width:min(96vw,720px);max-height:calc(100vh - 18px - env(safe-area-inset-top));}.publicRaffleModalHeader{padding:12px}.publicRaffleModalBody{padding:14px}.publicTicketPriceGrid{grid-template-columns:repeat(2,minmax(0,1fr));}.ticketPriceButton{min-height:82px;}}

/* v3.9.2 Revenue Wallet submodes + active raffle top-layer modal repair */
.walletSubmodeButtons{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0 1rem;}
.walletSubmodeButtons button.active{border-color:rgba(218,169,79,.9);box-shadow:0 0 0 1px rgba(218,169,79,.35) inset;}
.walletSubmodePane{display:none;}
.walletSubmodePane.active{display:block;}
.platformFeePanel{margin-top:1rem;}
.platformFeeRows .walletRow,.walletRows .walletRow{display:grid;grid-template-columns:1fr;gap:.65rem;margin:.75rem 0;padding:.75rem;border:1px solid rgba(218,169,79,.18);border-radius:14px;background:rgba(9,3,4,.72);}
.platformFeeRows .walletRow input,.walletRows .walletRow input{width:100%;}
.activeRaffleModal{z-index:99999;}
#adminDialog .activeRaffleModal{position:fixed;inset:0;padding:env(safe-area-inset-top) .75rem calc(env(safe-area-inset-bottom) + 1rem);display:flex;align-items:center;justify-content:center;}
#adminDialog .activeRaffleModal.hidden{display:none!important;}
#adminDialog .activeRaffleModal .publicRaffleModalPanel{max-height:min(86dvh,840px);overflow:hidden;display:flex;flex-direction:column;width:min(760px,96vw);}
#adminDialog .activeRaffleModal .publicRaffleModalHeader{position:sticky;top:0;z-index:2;gap:.75rem;align-items:flex-start;}
#adminDialog .activeRaffleModal .publicRaffleModalClose{flex:0 0 auto;margin-left:auto;min-height:44px;}
#adminDialog .activeRaffleModal .publicRaffleModalBody{overflow:auto;padding-bottom:calc(env(safe-area-inset-bottom) + 1.5rem);}

/* v3.9.2 mode bar consistency + public raffle card containment */
body[data-theme="rilegato-raffles"] .tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:12px !important;
  overflow:visible !important;
  padding:16px 0 20px !important;
  max-width:100% !important;
}
body[data-theme="rilegato-raffles"] .tabs button{
  white-space:normal !important;
  min-width:min(100%, 220px) !important;
  max-width:100% !important;
  flex:0 1 220px !important;
  text-align:center !important;
}
body[data-theme="rilegato-raffles"] .raffleBoardOpen{padding:24px;}
body[data-theme="rilegato-raffles"] .raffleBoardHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;}
body[data-theme="rilegato-raffles"] .raffleBoardHeader h2{margin:0;color:#ffd36e;}
body[data-theme="rilegato-raffles"] .ledgerDropdown summary{display:none!important;}
body[data-theme="rilegato-raffles"] .ledgerDropdown summary::after{content:none!important;}
body[data-theme="rilegato-raffles"] .raffleScrollShell{max-height:none;overflow:visible;}
body[data-theme="rilegato-raffles"] .raffleScrollShell .grid,
body[data-theme="rilegato-raffles"] #raffleGrid.grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit, minmax(280px, 360px)) !important;
  justify-content:start !important;
  align-items:start !important;
  gap:18px !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard,
body[data-theme="rilegato-raffles"] .publicRafflePlayableCard{
  width:100% !important;
  max-width:360px !important;
  min-height:360px !important;
  align-self:start !important;
  justify-self:start !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  align-content:start !important;
  gap:14px !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn,
body[data-theme="rilegato-raffles"] .publicRafflePlayableCard .raffleThumbWrap{
  max-width:160px !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .assetThumb,
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard img{
  max-width:160px !important;
  max-height:160px !important;
  object-fit:cover !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard h3{font-size:clamp(28px, 5vw, 38px) !important;}
body[data-theme="rilegato-raffles"] .platformFeeShare{grid-column:1/-1;margin:.15rem 0 0;}
@media(max-width:760px){
  body[data-theme="rilegato-raffles"] .tabs{justify-content:center !important;}
  body[data-theme="rilegato-raffles"] .tabs button{flex:1 1 260px !important;min-width:min(100%, 260px) !important;}
  body[data-theme="rilegato-raffles"] .raffleBoardOpen{padding:18px;}
  body[data-theme="rilegato-raffles"] .raffleScrollShell .grid,
  body[data-theme="rilegato-raffles"] #raffleGrid.grid{grid-template-columns:minmax(0, 1fr) !important;justify-content:center !important;}
  body[data-theme="rilegato-raffles"] .publicRaffleCompactCard,
  body[data-theme="rilegato-raffles"] .publicRafflePlayableCard{max-width:360px !important;justify-self:center !important;}
}
@media(min-width:900px){
  body[data-theme="rilegato-raffles"] .raffleScrollShell .grid,
  body[data-theme="rilegato-raffles"] #raffleGrid.grid{grid-template-columns:repeat(auto-fit, minmax(300px, 360px)) !important;}
}

/* v3.9.2 raffle card media tightening + zero-sold cancel + platform fee row containment */
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn{
  width:fit-content !important;
  max-width:150px !important;
  justify-self:start !important;
  align-self:start !important;
  display:inline-block !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn .raffleThumbWrap{
  width:fit-content !important;
  max-width:150px !important;
  display:block !important;
  margin:0 !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn .assetThumb,
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn img{
  width:150px !important;
  height:150px !important;
  max-width:150px !important;
  max-height:150px !important;
  display:block !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactDetails{min-width:0;width:100%;}
body[data-theme="rilegato-raffles"] .zeroSoldCancelPanel{margin-top:1rem;padding:1rem;border:1px solid rgba(255,190,75,.32);border-radius:18px;background:rgba(70,6,8,.44);}
body[data-theme="rilegato-raffles"] .zeroSoldCancelPanel label{max-width:100%;}
body[data-theme="rilegato-raffles"] .platformFeeRows,
body[data-theme="rilegato-raffles"] .walletRows{max-width:100%;overflow:hidden;}
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow{
  max-width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
  padding:1rem !important;
}
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow label,
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow input,
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow .safeText{
  max-width:100% !important;
  min-width:0 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow input[data-platform-field="wallet"]{
  font-size:clamp(13px, 3.3vw, 16px) !important;
  line-height:1.25 !important;
}
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow .checkLabel{
  display:flex !important;
  align-items:center !important;
  gap:.6rem !important;
  width:100% !important;
}
body[data-theme="rilegato-raffles"] .platformFeeRows .platformFeeRow .checkLabel input{
  width:auto !important;
  flex:0 0 auto !important;
}
body[data-theme="rilegato-raffles"] .platformFeeShare{white-space:normal !important;overflow-wrap:anywhere !important;}
@media(max-width:760px){
  body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn,
  body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn .raffleThumbWrap{max-width:132px !important;}
  body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn .assetThumb,
  body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn img{width:132px !important;height:132px !important;max-width:132px !important;max-height:132px !important;}
}

/* v3.9.2 workflow contrast */

/* v3.9.2 end-date authority + accepted tokens mobile collapse */
.raffleEndDateHelp{margin-top:-4px;margin-bottom:14px}.acceptedTokensDetails{overflow:visible}.acceptedTokensDetails summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:1000;font-size:20px;list-style:none}.acceptedTokensDetails summary::-webkit-details-marker{display:none}.acceptedTokensDetails summary::after{content:'▸';color:var(--accent);font-size:22px}.acceptedTokensDetails[open] summary::after{content:'▾'}.acceptedTokensDetails summary .safeText{font-size:14px;font-weight:800;text-align:right}.acceptedTokensBody{margin-top:14px}.acceptedTokensDetails:not([open]){padding-bottom:16px}.acceptedTokensDetails[open] .tokenRows{display:grid}.acceptedTokensDetails .tokenRows{max-height:none;overflow:visible}
@media(max-width:760px){.acceptedTokensDetails summary{font-size:18px;align-items:flex-start}.acceptedTokensDetails summary .safeText{display:block;font-size:13px}.acceptedTokensBody .tokenAddRow{grid-template-columns:1fr}.acceptedTokensDetails .tokenRow{grid-template-columns:1fr}.acceptedTokensDetails .tokenRow button{width:100%}}

/* v3.9.2 date picker mobile containment + modal detail cleanup */
.dateTimeField{display:block;max-width:100%;min-width:0;overflow:hidden}.containedDateInput{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.containedDateInput input[type="datetime-local"],input#raffleEndsAt{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.allRaffleInspectGrid{display:grid;grid-template-columns:minmax(110px, .42fr) minmax(0, 1fr);gap:8px 12px}.allRaffleInspectGrid span{color:var(--muted);font-weight:800}.allRaffleInspectGrid strong{min-width:0;overflow-wrap:anywhere;word-break:break-word}.allRaffleInspectTokens{display:flex;flex-wrap:wrap;gap:8px}.allRaffleInspectTokens .projectionChip{max-width:100%;overflow-wrap:anywhere}
@media(max-width:760px){.dateTimeField{width:100%}.containedDateInput input[type="datetime-local"],input#raffleEndsAt{font-size:clamp(13px,3.4vw,16px);padding-left:10px;padding-right:10px;-webkit-appearance:none;appearance:none}.allRaffleInspectGrid{grid-template-columns:1fr}.allRaffleInspectGrid span{margin-top:4px}.publicRaffleModalPanel{max-width:min(94vw,720px)}}


/* v3.9.2 public mobile cleanup: footer must not overlay raffle cards/details */
body[data-theme="rilegato-raffles"] footer{display:none!important;}
body.public-raffle-modal-open footer{display:none!important;}

/* v3.9.2 winner draw recovery card */
.winnerDrawRequiredItem{
  border-color:rgba(242,207,138,.72)!important;
  box-shadow:0 0 0 1px rgba(242,207,138,.18),0 18px 48px rgba(0,0,0,.32);
}
.winnerDrawRequiredItem .buttonRow button{
  min-width:min(100%,260px);
}

/* v3.9.2 public wallet profile action row and modal */
.publicActionPair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.publicActionPair button{width:100%;min-width:0}
.walletProfileModalPanel .profileStatsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:12px 0 18px}
.walletProfileModalPanel .profileStatCard{border:1px solid var(--line2);border-radius:22px;padding:14px;background:rgba(255,255,255,.035)}
.walletProfileModalPanel .profileStatCard strong{display:block;font-size:clamp(24px,7vw,42px);line-height:1;color:var(--text);overflow-wrap:anywhere}
.walletProfileModalPanel .profileStatCard span{display:block;margin-top:6px;color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.walletProfileModalPanel .profileSection{border:1px solid var(--line2);border-radius:24px;padding:14px;margin:12px 0;background:rgba(255,255,255,.025)}
.walletProfileModalPanel .profileSection h4{margin:0 0 10px}
.walletProfileModalPanel .profileRows{display:grid;gap:8px;max-height:300px;overflow:auto;-webkit-overflow-scrolling:touch}
.walletProfileModalPanel .profileRow{border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:10px;background:rgba(0,0,0,.22);overflow-wrap:anywhere}
.walletProfileModalPanel .profileRow p{margin:0 0 6px}
.walletProfileModalPanel .profileTokenLine{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(255,255,255,.08);padding:7px 0;overflow-wrap:anywhere}
.walletProfileModalPanel .profileTokenLine:last-child{border-bottom:0}
@media(max-width:760px){.publicActionPair{grid-template-columns:1fr 1fr}.walletProfileModalPanel .profileStatsGrid{grid-template-columns:1fr 1fr}.walletProfileModalPanel .profileRow{font-size:14px}}
/* v3.9.2 Public Create token toggle repair */
.publicCreateManualTokenDrawer{margin-top:16px;}
.publicCreateManualTokenDrawer summary{font-size:1.05rem;font-weight:900;}
.publicCreatePriceRows .publicTicketPriceRow{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;}
.publicCreatePriceRows .publicTicketPriceRow.notAccepted{opacity:.72;}
.smallTokenToggle{min-height:42px;padding:8px 14px;font-size:.95rem;}
.publicProjectionCard .projectionPriceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.publicProjectionCard .pricePill{border:1px solid rgba(141,78,38,.45);border-radius:18px;padding:12px;background:rgba(34,7,8,.55);}
.publicProjectionCard .pricePill strong{display:block;color:#ffd46a;letter-spacing:.08em;}
@media (max-width:640px){.publicCreatePriceRows .publicTicketPriceRow{grid-template-columns:1fr;}.smallTokenToggle{width:100%;}.publicProjectionCard .projectionPriceGrid{grid-template-columns:1fr 1fr;}}

/* v3.9.2 Public Create Accepted Tokens drawer runtime visibility repair */
.publicCreateManualTokenDrawer{display:block !important;visibility:visible !important;opacity:1 !important;clear:both;margin:16px 0 18px;border:1px solid rgba(141,78,38,.55);border-radius:18px;padding:12px;background:rgba(17,3,5,.72);}
.publicCreateManualTokenDrawer[hidden],.publicCreateManualTokenDrawer.hidden{display:block !important;}
.publicCreateManualTokenDrawer summary{min-height:48px;cursor:pointer;}
.createPublicRafflePanel #publicCreateAcceptedTokensDetails{display:block !important;}


/* v3.9.2 Public Create drawer and token status rendering repair */
.createPublicRafflePanel .publicCreateManualTokenDrawer{display:block !important;visibility:visible !important;opacity:1 !important;width:100%;box-sizing:border-box;clear:both;margin:18px 0 20px;border:1px solid rgba(141,78,38,.72);border-radius:22px;padding:0;background:rgba(17,3,5,.86);}
.createPublicRafflePanel .publicCreateManualTokenDrawer[hidden],.createPublicRafflePanel .publicCreateManualTokenDrawer.hidden{display:block !important;}
.createPublicRafflePanel .publicCreateManualTokenDrawer summary{display:flex;flex-direction:column;gap:4px;min-height:54px;padding:14px 16px;cursor:pointer;list-style:revert;color:var(--cream,#fff4d8);}
.createPublicRafflePanel .publicCreateManualTokenDrawer .drawerTitle{display:block;font-weight:900;font-size:1.05rem;color:var(--cream,#fff4d8);}
.createPublicRafflePanel .publicCreateManualTokenDrawer .drawerHint{display:block;font-size:.92rem;}
.createPublicRafflePanel .publicCreateManualTokenDrawer .acceptedTokensBody{padding:0 16px 16px;}
.createPublicRafflePanel .publicCreateManualTokenDrawer .tokenAddRow{display:grid;grid-template-columns:1fr;gap:10px;}
.createPublicRafflePanel .publicCreatePriceRows .publicTicketPriceRow.notAccepted span::after{content:none !important;display:none !important;}

/* v3.9.2 Public Create drawer final visible-summary repair */
body[data-theme="rilegato-raffles"] .createPublicRaffleModalPanel #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer,
.createPublicRaffleModalPanel #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer,
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  clear:both !important;
  margin:18px 0 20px !important;
  border:1px solid rgba(255,190,75,.48) !important;
  border-radius:22px !important;
  padding:0 !important;
  background:linear-gradient(180deg,rgba(22,4,5,.96),rgba(7,1,2,.98)) !important;
  color:#fff4d8 !important;
  min-height:unset !important;
  overflow:visible !important;
}
body[data-theme="rilegato-raffles"] .createPublicRaffleModalPanel #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary,
.createPublicRaffleModalPanel #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary,
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:6px 12px !important;
  align-items:center !important;
  width:100% !important;
  min-height:62px !important;
  padding:14px 18px !important;
  box-sizing:border-box !important;
  cursor:pointer !important;
  list-style:none !important;
  color:#fff4d8 !important;
  background:rgba(255,190,75,.045) !important;
  border-radius:22px !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:1000 !important;
  overflow:visible !important;
}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary::-webkit-details-marker{display:none !important;}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary::after{
  content:'▸' !important;
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  color:#ffd36e !important;
  font-size:22px !important;
  line-height:1 !important;
}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer[open] > summary::after{content:'▾' !important;}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer .drawerTitle{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#fff4d8 !important;
  font-size:18px !important;
  line-height:1.18 !important;
  font-weight:1000 !important;
  min-height:auto !important;
  height:auto !important;
  overflow:visible !important;
  white-space:normal !important;
}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer .drawerHint{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#e5c68b !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  text-align:left !important;
  min-height:auto !important;
  height:auto !important;
  overflow:visible !important;
  white-space:normal !important;
}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer .acceptedTokensBody{
  padding:0 18px 18px !important;
  color:#fff4d8 !important;
}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer:not([open]) .acceptedTokensBody{display:none !important;}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer[open] .acceptedTokensBody{display:block !important;}
#publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer .tokenAddRow{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
@media(max-width:760px){
  #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary{min-height:58px !important;padding:13px 16px !important;}
  #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer .drawerTitle{font-size:17px !important;}
  #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer .drawerHint{font-size:12.5px !important;}
}

/* v3.9.2 compact existing home hero card; wallet button remains unchanged */
body[data-theme="rilegato-raffles"] .compactHero{
  padding:18px 20px !important;
  gap:10px !important;
  border-radius:30px !important;
}
body[data-theme="rilegato-raffles"] .heroIdentityRow{
  grid-template-columns:68px minmax(0,1fr) !important;
  gap:12px !important;
}
body[data-theme="rilegato-raffles"] .compactHero .logoButton{
  min-width:68px !important;
  width:68px !important;
  min-height:68px !important;
  height:68px !important;
}
body[data-theme="rilegato-raffles"] .compactHero .logoButton img{
  width:68px !important;
  height:68px !important;
  border-radius:18px !important;
}
body[data-theme="rilegato-raffles"] .heroTitleBlock h1{
  font-size:clamp(25px,6.5vw,36px) !important;
  line-height:.96 !important;
  margin:0 !important;
}
body[data-theme="rilegato-raffles"] .compactHero .heroDescription{
  font-size:clamp(15px,4.1vw,18px) !important;
  line-height:1.2 !important;
  margin:0 !important;
}
body[data-theme="rilegato-raffles"] .compactHero .publicWalletButton{
  min-height:58px !important;
  font-size:17px !important;
}
@media(max-width:760px){
  body[data-theme="rilegato-raffles"] .compactHero{padding:18px 20px !important;gap:10px !important;border-radius:30px !important;}
  body[data-theme="rilegato-raffles"] .heroIdentityRow{grid-template-columns:68px minmax(0,1fr) !important;gap:12px !important;}
  body[data-theme="rilegato-raffles"] .heroTitleBlock h1{font-size:clamp(25px,8vw,34px) !important;}
  body[data-theme="rilegato-raffles"] .compactHero .heroDescription{font-size:clamp(15px,4.2vw,18px) !important;}
}

/* v3.9.2 reduce Raffle Floor Refresh button vertical height only */
body[data-theme="rilegato-raffles"] #refreshPublic{
  min-height:44px !important;
  padding-top:7px !important;
  padding-bottom:7px !important;
  line-height:1.1 !important;
}
/* v3.9.2 public create prize media carry-forward */
.publicProjectionCard .projectionSummaryRow,.publicPrizeSlotSelected .projectionSummaryRow{display:flex;align-items:center;gap:12px;min-width:0;}
.publicProjectionCard .projectionSummaryRow p{margin:0;}
.publicPrizeSlotSelected .projectionSummaryRow{margin-bottom:10px;}

/* v3.9.2 Public Create drawer final visible-summary repair */
.createPublicRaffleModalPanel #publicCreateAcceptedTokensDetails.publicCreateManualTokenDrawer > summary { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.drawerTitle { font-weight:800; }
.drawerHint { opacity:.8; }
/* v3.9.2 compact existing home hero card */
.heroIdentityRow { grid-template-columns:68px minmax(0,1fr); }
.compactHero .siteLogo { width:68px; height:68px; }
.compactHero .publicWalletButton { min-height:58px; }
/* v3.9.2 reduce Raffle Floor Refresh button vertical height only */
#refreshPublic { min-height:44px; }
.reviewPrizeCard { display:grid; grid-template-columns:92px minmax(0,1fr); gap:12px; align-items:start; }
.reviewPrizeImage { width:92px; height:92px; object-fit:cover; border-radius:14px; }
.prizeFallback { width:92px; min-height:92px; display:flex; align-items:center; justify-content:center; border-radius:14px; border:1px solid rgba(255,255,255,.18); }
.reviewDetailCards { display:grid; gap:12px; }

/* v3.9.2 public review containment and NFT card alignment */
.publicReviewDetailScroll{max-height:min(62vh,680px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:4px;scrollbar-gutter:stable;}
.reviewPrizeCard{grid-template-columns:minmax(96px,112px) minmax(0,1fr);align-items:start;overflow:hidden;}
.reviewPrizeMedia{width:100%;display:flex;align-items:flex-start;justify-content:center;min-width:0;}
.reviewPrizeImage,.reviewPrizeMedia .prizeFallback{width:100%;aspect-ratio:1/1;height:auto;min-height:96px;max-height:112px;object-fit:cover;}
.reviewPrizeBody{min-width:0;overflow-wrap:anywhere;}
.reviewPrizeBody .safeText,.custodyTxList .safeText{overflow-wrap:anywhere;word-break:break-word;}
@media(max-width:560px){.publicReviewDetailScroll{max-height:58vh;padding-right:2px}.reviewPrizeCard{grid-template-columns:88px minmax(0,1fr);gap:10px}.reviewPrizeImage,.reviewPrizeMedia .prizeFallback{min-height:88px;max-height:96px}}
@media(max-width:390px){.reviewPrizeCard{grid-template-columns:1fr}.reviewPrizeMedia{max-width:132px}.reviewPrizeImage,.reviewPrizeMedia .prizeFallback{min-height:112px;max-height:132px}}

/* v3.9.2 public review identifiers stay compact and copyable on mobile */
.reviewAddressField{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;}
.reviewAddressField code{font-size:12px;line-height:1.25;max-width:100%;overflow-wrap:anywhere;word-break:break-word;}
.copyReviewValue{min-height:34px!important;padding:6px 10px!important;font-size:12px!important;width:auto!important;flex:0 0 auto;}

/* v3.9.2 public leaderboard and mobile card correction */
.publicLeaderboardCard{margin-top:1rem}.leaderboardToggle{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:1rem}.leaderboardToggle strong{display:block;font-size:1.35rem}.publicLeaderboardColumns{align-items:start}.leaderboardRank{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center}.leaderboardRank .rank{font-size:1.25rem;font-weight:800}.reviewAddressRow{min-width:0}.reviewAddressRow code{overflow-wrap:anywhere;word-break:break-word}.custodyReconciliationCard{border-style:dashed}.periodSnapshotGrid{display:grid;gap:.75rem}
@media(max-width:640px){.reviewPrizeCard{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;width:100%!important;min-width:0!important}.reviewPrizeMedia{width:100%!important;max-width:240px!important;margin:0 auto .85rem!important}.reviewPrizeMedia img{width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover}.reviewPrizeBody{width:100%!important;min-width:0!important}.reviewPrizeBody .safeText,.reviewPrizeBody p{max-width:100%!important;overflow-wrap:anywhere}.publicRaffleCompactCard{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.publicRaffleThumbColumn{width:100%!important;max-width:280px!important;margin:0 auto .75rem!important}.publicRaffleCompactDetails{width:100%!important;min-width:0!important;box-sizing:border-box!important}.publicRaffleCompactDetails h3,.publicRafflePriceLine{max-width:100%!important;overflow-wrap:anywhere!important}.publicRaffleCompactDetails .buttonRow button{width:100%!important;max-width:100%!important}.raffleScrollShell{overflow-x:hidden!important}.publicLeaderboardColumns{grid-template-columns:1fr!important}.leaderboardRank{grid-template-columns:auto minmax(0,1fr);}.leaderboardRank .leaderboardValue{grid-column:2}}


/* v3.9.2 surgical homepage headings and leaderboard header */
body[data-theme="rilegato-raffles"] .toolbar h2,
body[data-theme="rilegato-raffles"] .raffleBoardHeader h2{
  color:var(--cream, #fff3d6)!important;
  font-size:clamp(25px,6.5vw,36px)!important;
  font-weight:900!important;
  line-height:.96!important;
  letter-spacing:-.035em!important;
}
.leaderboardToggle{position:relative;gap:12px;padding:.9rem 1rem!important;min-height:0!important}
.leaderboardHeadingText{display:flex;flex-direction:column;min-width:0}
.leaderboardHeadingText strong{order:1;font-size:1.35rem;line-height:1.05}
.leaderboardHeadingText .eyebrow{order:2;margin-top:.35rem;font-size:.78rem;line-height:1.1}
.leaderboardToggleIcon{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:1.35rem;line-height:1;border:1px solid rgba(255,255,255,.18)}
@media(max-width:640px){.leaderboardToggle{padding:.8rem .85rem!important}.leaderboardHeadingText strong{font-size:1.18rem}.leaderboardToggleIcon{width:32px;height:32px}}
@media(max-width:760px){
  body[data-theme="rilegato-raffles"] .toolbar h2,
  body[data-theme="rilegato-raffles"] .raffleBoardHeader h2{font-size:clamp(25px,8vw,34px)!important;}
}
/* v3.9.2 custody reconciliation result containment */
.custodyReconciliationCard .safeText{overflow-wrap:anywhere;word-break:break-word}.custodyReconciliationCard .buttonRow button{min-height:52px}


/* v3.9.2 Site Settings submodes and mobile containment */
#tab-site,.siteSettingsMode,.siteSettingsScrollShell,.siteSettingsSubmodePane,#tab-site .card,#tab-site .formCard,#tab-site .miniItem,#tab-site label,#tab-site code,#tab-site pre{min-width:0;max-width:100%;box-sizing:border-box}
#tab-site{overflow-x:hidden}.siteSettingsSubmodeNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 18px}.siteSettingsSubmodeNav button{min-width:0;min-height:52px;padding:10px 12px;font-size:15px;overflow-wrap:anywhere}.siteSettingsSubmodeNav button.active{background:linear-gradient(135deg,#f7c75e,#ff5b2f);color:#180505;border-color:rgba(255,246,220,.28)}
.siteSettingsScrollShell{max-height:none;overflow:visible;border:0;border-radius:0;padding:0;background:transparent}.siteSettingsSubmodePane{display:none;width:100%;overflow-x:hidden}.siteSettingsSubmodePane.active{display:block}.siteSettingsSubmodePane[hidden]{display:none!important}
#tab-site input,#tab-site textarea,#tab-site select,#tab-site button{max-width:100%;min-width:0}.settingsStatusCode,.safeJson,#tab-site .safeText,#tab-site code{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}.technicalDisclosure{max-width:100%;overflow:hidden;border:1px solid var(--line2);border-radius:18px;padding:12px;margin:12px 0}.settingsStatusCard{border:1px solid var(--line2);border-radius:20px;padding:15px;margin-top:14px;background:rgba(255,255,255,.03)}
.runtimeEventFilters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.runtimeEventCard .eventMeta{display:flex;flex-wrap:wrap;gap:6px}.runtimeEventCard code,.rpcProviderCard code{overflow-wrap:anywhere;word-break:break-word}.safeJson{max-height:360px;overflow:auto;background:rgba(0,0,0,.28);border-radius:16px;padding:12px}.rpcHealthGood{color:var(--good)}.rpcHealthWarn{color:var(--warn)}.rpcHealthBad{color:var(--bad)}
@media(max-width:520px){.siteSettingsSubmodeNav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.siteSettingsSubmodeNav button{font-size:13px;padding:9px 7px}.siteSettingsScrollShell{padding:0;border-radius:0;max-height:none;overflow:visible}#tab-site .card{padding:22px 18px;border-radius:30px}.runtimeEventFilters{grid-template-columns:1fr}}

/* v5.0.23 canonical two-column administrative navigation */
.canonicalSubmodeNav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:14px 0 18px!important}.canonicalSubmodeNav button{min-width:0!important;min-height:52px!important;padding:10px 12px!important;font-size:15px!important;overflow-wrap:anywhere!important;width:auto!important}.canonicalSubmodeNav button.active{background:linear-gradient(135deg,#f7c75e,#ff5b2f)!important;color:#180505!important;border-color:rgba(255,246,220,.28)!important}.recoveryMode,.recoveryScrollShell,.recoverySubmodePane,#tab-recovery .card,#tab-recovery .miniItem{min-width:0;max-width:100%;box-sizing:border-box}.recoveryMode{overflow-x:hidden}.recoverySubmodePane{display:none;width:100%;overflow-x:hidden}.recoverySubmodePane.active{display:block}.recoverySubmodePane[hidden]{display:none!important}@media(max-width:520px){.canonicalSubmodeNav{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.canonicalSubmodeNav button{font-size:13px!important;padding:9px 7px!important}}

/* v5.0.24 Primary Admin Mode mobile grid specificity repair. Desktop retains the existing themed tab layout. */
@media(max-width:760px){body[data-theme="rilegato-raffles"] .tabs.primaryAdminModeNav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important}body[data-theme="rilegato-raffles"] .tabs.primaryAdminModeNav button{white-space:normal!important;min-width:0!important;width:auto!important;max-width:100%!important;flex:none!important}}

/* v5.0.29 Ticket Recovery operator inspection and action-result containment */
.ticketRecoveryInspectPanel,.ticketRecoveryActionResult{max-width:100%;min-width:0;overflow:hidden}
.ticketRecoveryInspectPanel h4,.ticketRecoveryActionResult strong{overflow-wrap:anywhere}
.ticketRecoveryInspectGrid{display:grid;grid-template-columns:minmax(130px,.42fr) minmax(0,1fr);gap:8px 12px;margin:12px 0}
.ticketRecoveryInspectGrid dt{color:var(--muted);font-weight:800}
.ticketRecoveryInspectGrid dd{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word}
.ticketRecoveryLongValue{max-width:100%;overflow-x:auto;overflow-wrap:anywhere;-webkit-overflow-scrolling:touch;padding-bottom:2px}
.ticketRecoveryTechnicalRecord{max-width:100%;margin-top:14px}
.ticketRecoveryTechnicalRecord pre{max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-overflow-scrolling:touch}
.ticketRecoveryPreviewPanel{border-left:3px solid var(--gold)}
.ticketRecoveryError{border-left:3px solid #d66}
.ticketRecoverySuccess{border-left:3px solid #6b8}
@media(max-width:760px){.ticketRecoveryInspectGrid{grid-template-columns:1fr;gap:4px}.ticketRecoveryInspectGrid dt{margin-top:8px}.ticketRecoveryInspectGrid dd{width:100%}}

/* v5.0.62 Ticket Recovery application-rendered exact confirmation */
.ticketRecoveryConfirmationPanel{max-width:100%;min-width:0;overflow:hidden;border-left:3px solid var(--warn)}
.ticketRecoveryWarning{overflow-wrap:anywhere}
.ticketRecoveryConfirmationPhrase{display:grid;gap:8px;min-width:0;margin-top:14px}
.ticketRecoveryConfirmationPhrase strong{overflow-wrap:anywhere;word-break:break-word}
.ticketRecoveryConfirmationPhrase input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;font-size:16px}
.ticketRecoveryConfirmationButtons{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ticketRecoveryConfirmationButtons button{min-width:min(180px,100%);max-width:100%;flex:1 1 180px}
@media(max-width:520px){.ticketRecoveryConfirmationPanel{padding:14px}.ticketRecoveryConfirmationButtons{display:grid;grid-template-columns:1fr}.ticketRecoveryConfirmationButtons button{width:100%;min-width:0}}

/* v5.2.2 canonical Webhook Settings secondary navigation. */
.webhookModeNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;min-width:0;max-width:100%;padding:.4rem 0 .8rem;overflow:visible}
@media(min-width:600px){.webhookModeNav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.webhookModeNav{grid-template-columns:repeat(4,minmax(0,1fr))}}
.webhookModeNav button{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:.6rem .55rem;white-space:normal;overflow-wrap:anywhere}
.webhookModeNav button[aria-pressed="true"]{outline:2px solid currentColor;outline-offset:1px}
.webhookSubmodePane{min-width:0;max-width:100%;overflow-wrap:anywhere}
.webhookSubmodePane.hidden{display:none!important}
.canonicalPrizeDetail,.publicPrizeSlotSelected,.prizeSlot,.tokenRow{box-sizing:border-box;min-width:0;max-width:100%;overflow-wrap:anywhere}
.canonicalPrizeCopy,.projectionSummaryRow>div,.publicPrizeSlotSelected .projectionSummaryRow>div{min-width:0;max-width:100%;overflow-wrap:anywhere}
.canonicalPrizeDetail .assetThumb,.tokenRow .assetThumb{width:56px;height:56px;object-fit:contain;flex:0 0 56px}
.publicPrizeSlotSelected input,.prizeSlot input{box-sizing:border-box;min-width:0;max-width:100%;width:100%}
.publicPrizeSlotSelected .buttonRow button,.webhookModeNav button{min-height:44px}
.webhookSubmodePane input:not([type="checkbox"]),.webhookSubmodePane select,.webhookSubmodePane textarea{box-sizing:border-box;min-width:0;max-width:100%;width:100%}
.notificationRecipientCard{min-width:0;overflow-wrap:anywhere}
.notificationRecipientCard label{display:block;min-width:0;margin:.7rem 0}
.notificationRecipientCard .checkLabel{display:flex;align-items:center;gap:.5rem}
.webhookSubmodePane button{min-height:44px;max-width:100%;overflow-wrap:anywhere}
@media(max-width:640px){.webhookSubmodePane{padding-bottom:4rem}.notificationRecipientCard{width:100%;padding:.65rem}.webhookModeNav{margin-right:0}.webhookSubmodePane .checkGrid{display:grid;grid-template-columns:1fr;gap:.3rem}}

/* v5.2.9 R5: scoped mobile recovery and live listing progression. */
.recoveryCleanupList, .recoveryContextTools, #recoverySelectedDetail, .listingProcessPanel { min-width:0; max-width:100%; box-sizing:border-box; overflow-wrap:anywhere; }
.recoveryCleanupList .vaultCardScroll { max-height:min(46dvh,390px); overflow-y:auto; overscroll-behavior:contain; }
.recoveryContextTools[hidden] { display:none !important; }
.recoveryContextTools > summary { cursor:pointer; overflow-wrap:anywhere; }
.listingProgressStages { display:grid; gap:10px; margin:12px 0; }
.listingProgressStages > div { min-width:0; padding:10px; border:1px solid rgba(190,147,73,.55); border-radius:12px; overflow-wrap:anywhere; }
@media (max-width: 640px) {
  .listingProcessPanel,.recoveryCleanupList,.recoveryContextTools,#recoverySelectedDetail { width:100%; max-width:100%; min-width:0; }
  .listingProcessPanel .buttonRow button,.recoveryCleanupList .buttonRow button,#recoverySelectedDetail .buttonRow button { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
  .recoveryScrollShell { max-width:100%; min-width:0; overflow-x:hidden; }
  .recoveryContextTools label { max-width:100%; min-width:0; }
  .recoveryContextTools input { max-width:100%; width:100%; min-width:0; box-sizing:border-box; }
}

/* v5.2.9: server-authoritative three-stage listing progress; no wallet approval inferred by color. */
.listingProgressStages > div { display:flex; align-items:center; gap:10px; }
.listingStageBubble { flex:0 0 34px; display:inline-grid; place-items:center; height:34px; border-radius:50%; background:#4a4b50; color:#fff; font-weight:800; border:2px solid #777; }
.listingProgressStages [data-progress-state="active"] .listingStageBubble { background:#1769d3; border-color:#79b6ff; color:#fff; }
.listingProgressStages [data-progress-state="complete"] .listingStageBubble { background:#147845; border-color:#75d9a0; color:#fff; }
.listingProgressStages [data-progress-state="active"] { border-color:#579cef; }
.listingProgressStages [data-progress-state="complete"] { border-color:#4cbd87; }
.listingStageCopy { flex:1; min-width:0; }
.listingStatusInButton { display:none !important; }
#publicCreatePreview[data-listing-in-flight="1"],#saveAndCalc[data-listing-in-flight="1"] { white-space:normal; min-height:54px; line-height:1.45; overflow-wrap:anywhere; opacity:1; cursor:wait; }

/* v5.2.12 UI corrective overlay: restore main grid geometry with optional DAS media. */
.ticketPriceButton{min-width:0;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
.ticketPriceIdentity{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;min-width:0}
.ticketPriceButton .ticketPriceIdentity .priceTokenThumb{display:block;width:42px;height:42px;max-width:42px;min-width:0;object-fit:contain;border-radius:9px}
.priceRow .priceTokenIdentity{display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}
.priceRow .priceTokenIdentity strong{min-width:0;overflow-wrap:anywhere}
.priceRow .priceTokenIdentity .priceTokenThumb{display:block;flex:0 0 36px;width:36px;height:36px;max-width:36px;object-fit:contain;border-radius:8px}
.priceRow.publicTicketPriceRow{min-width:0;max-width:100%;box-sizing:border-box}
.priceRow.publicTicketPriceRow>span{min-width:0;overflow-wrap:anywhere}
.assetCard.noAssetMedia{grid-template-columns:minmax(0,1fr)}
.projectionPrizeRow.noPrizeMedia{grid-template-columns:minmax(0,1fr)}
@media(max-width:760px){.assetCard.noAssetMedia,.projectionPrizeRow.noPrizeMedia{grid-template-columns:minmax(0,1fr)}.ticketPriceButton{padding:10px 6px}}

/* v5.2.12: only multi-prize Raffle Board card media (not custody/purchase). */
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleThumbColumn.publicRaffleMultiThumbColumn {
  width:min(100%, 280px) !important; max-width:280px !important;
  flex:0 1 280px !important; display:block !important; justify-self:center !important;
  align-self:center !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleMultiThumbColumn .publicRaffleThumbGridWrap {
  display:block !important; width:100% !important; max-width:none !important;
  padding:4px !important; box-sizing:border-box !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleMultiThumbColumn .publicRaffleThumbGrid {
  display:grid !important;
  grid-template-columns:repeat(var(--raffle-thumb-cols),minmax(0,1fr)) !important;
  gap:4px !important; width:100% !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleMultiThumbColumn .publicRaffleThumbTile {
  aspect-ratio:1 / 1; min-width:0; overflow:hidden; border-radius:8px;
  background:rgba(255,255,255,.06);
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleMultiThumbColumn .publicRaffleThumbTile img {
  display:block !important; width:100% !important; height:100% !important;
  max-width:100% !important; max-height:100% !important; object-fit:cover !important;
}
body[data-theme="rilegato-raffles"] .publicRaffleCompactCard .publicRaffleMultiThumbColumn .publicRaffleThumbMissing {
  display:grid; place-items:center; width:100%; height:100%;
  padding:2px; box-sizing:border-box; font-size:clamp(8px,1.8vw,11px);
  text-align:center; color:var(--muted);
}
