/* R4: six-state visual editor matched to the public frontend. */
.demo-note{display:none}
.dashboard-participation .panel-head{border-bottom:0}
.visual-workspace-r4{display:grid;grid-template-columns:minmax(390px,450px) minmax(0,1fr);gap:22px;align-items:start}
.visual-preview-r4{position:sticky;top:118px;padding:18px}
.visual-device-r4{width:min(100%,390px);height:780px;margin:auto;border:10px solid #171719;border-radius:42px;background:#171719;overflow:hidden;box-shadow:0 18px 55px rgba(0,0,0,.16)}
.visual-screen-r4{height:100%;overflow:auto;background:#fff;scrollbar-width:thin;background-position:center;background-size:cover}
.public-head-r4{padding:22px 20px 18px;background:#171719;color:#fff;text-align:center;background-position:center;background-size:cover}
.public-head-r4 small{display:block;font-size:10px;letter-spacing:.5em}.public-head-r4 h3{margin:10px 0 5px;font-size:21px;line-height:1.16}.public-head-r4 p{margin:0;color:#c8c8cc;font-size:11px}
.public-body-r4{padding:22px 18px 28px;color:#111}.public-body-r4 h4{margin:0 0 14px;text-align:center;font-size:18px}.public-body-r4 p{margin:8px 0;font-size:11px;line-height:1.65}
.public-btn-r4{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;margin-top:18px;border:0;border-radius:12px;background:#171719;color:#fff;font-size:17px;font-weight:850}.public-btn-r4 img{width:44px;height:44px;object-fit:contain}
.intro-card-r4{padding:17px;border:1px solid #e4e4e8;border-radius:16px;background:#fff}.intro-card-r4 h4{text-align:left;margin-bottom:8px}.intro-art-r4{display:block;width:100%;max-height:270px;object-fit:contain;margin:14px auto}.hint-r4{padding:10px 12px;border:1px solid #f0cf6b;border-radius:10px;background:#fff9e8;color:#7a5a00;text-align:center}
.puzzle-svg-r4{display:block;width:100%;height:315px;margin:4px auto 8px;overflow:visible}.ratio-helper-r4{padding:7px 9px;border-radius:999px;background:#faf7f5;text-align:center;color:#666}
.verify-title-r4{margin-top:17px!important}.verify-copy-r4{text-align:center;color:#777}.verify-fields-r4{display:grid;grid-template-columns:1fr 1fr;gap:9px}.verify-fields-r4 label{font-size:10px;font-weight:750;text-align:center}.verify-fields-r4 input{width:100%;height:44px;margin-top:5px;padding:0 9px;border:1px solid #d2d2d7;border-radius:10px;text-align:center}
.draw-welcome-r4{font-size:17px!important;font-weight:850}.draw-count-r4{text-align:center;color:#555}.chance-r4{display:block;width:max-content;margin:10px auto 15px;padding:7px 10px;border-radius:9px;background:#fff0f3;color:#e52d64;font-size:11px}.pie-r4{width:260px;aspect-ratio:1;margin:12px auto;border-radius:50%;position:relative}.pie-r4:after{content:"";position:absolute;inset:32%;border-radius:50%;background:#fff}.pie-legend-r4{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0 14px}.pie-legend-r4 span{text-align:center;font-size:9px;line-height:1.35}
.result-card-r4{width:86%;margin:8px auto 13px;padding:8px;border:2px solid var(--card-color);border-radius:14px;background:color-mix(in srgb,var(--card-color) 14%,#fff);text-align:center}.result-card-r4 img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px}.result-card-r4 b{display:block;margin:8px 0 2px;font-size:13px}
.identity-badge-r4{margin:-7px auto 14px;padding:9px 12px;border:1px solid #cfe9d7;border-radius:16px;background:#f2fbf5;color:#168a43;text-align:center;font-weight:800}.identity-badge-r4 small{display:block;color:#777;font-weight:500}.result-instruction-r4{padding:8px 10px;border-radius:11px;background:#fbf8f6;text-align:center;color:#666}.result-instruction-r4 em{color:#ef315f;font-style:normal}
.card-grid-r4{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:12px 0}.mini-result-r4{grid-column:span 2;padding:5px;border:2px solid var(--card-color);border-radius:12px;background:#fff;text-align:center}.mini-result-r4.large{grid-column:span 3}.mini-result-r4 img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:8px}.mini-result-r4 b,.mini-result-r4 small{display:block;margin-top:5px;font-size:8px}.mini-result-r4.selected{box-shadow:0 0 0 2px #171719 inset}.status-chip-r4{display:inline-flex!important;width:max-content;margin:5px auto 0!important;padding:4px 7px;border-radius:999px;background:#e9faee;color:#199349}.status-chip-r4.exchange{background:#fff0f3;color:#e63262}
.result-actions-r4{display:grid;grid-template-columns:1fr 1fr;gap:9px}.result-actions-r4 button{min-height:44px;border:2px solid #171719;border-radius:12px;font-weight:850}.result-actions-r4 .ship{background:#70dc64}.result-actions-r4 .swap{background:#ff6268}.result-actions-r4 .refresh{grid-column:1/-1;background:#111;color:#fff}
.done-art-r4{display:block;width:84%;max-height:130px;margin:20px auto 8px;object-fit:contain}.warning-r4{text-align:center;color:#ef315f!important;font-size:9px!important}
.visual-tabs-r4{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:14px}.visual-tabs-r4 button{min-height:43px;padding:6px;border:1px solid var(--line);border-radius:11px;background:#fff;font-size:11px}.visual-tabs-r4 button.active{background:#171719;color:#fff}
.visual-controls-r4{padding:22px}.visual-controls-r4 .visual-controls-head{margin-bottom:6px}.visual-controls-r4 .control-section{padding:18px 0}.visual-controls-r4 .member-style-grid,.visual-controls-r4 .member-count-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.sync-control-r4{display:grid;justify-items:end;gap:7px}.sync-success-r4{display:none;color:#168a43;font-size:11px;font-weight:750}.sync-success-r4.show{display:block}.sync-success-r4:before{content:"✓ ";font-weight:900}
.preflight-head-r4{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.preflight-head-r4 h2{margin:0}.preflight-actions-r4{display:flex;justify-content:flex-end;margin-top:20px}
.picker-actions{grid-template-columns:1fr auto auto;grid-template-rows:auto auto;align-items:center}.picker-actions #clearDate{grid-column:1;grid-row:1/3;justify-self:start}.picker-actions .picker-quick{display:contents}.picker-actions #todayDate{grid-column:2;grid-row:1;align-self:end}.picker-actions #nowDate{grid-column:3;grid-row:1}.picker-actions #confirmDate{grid-column:3;grid-row:2;min-width:92px}
@media(max-width:1080px){.visual-workspace-r4{grid-template-columns:1fr}.visual-preview-r4{position:static}.visual-controls-r4 .member-style-grid,.visual-controls-r4 .member-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.visual-device-r4{width:100%;height:720px;border-width:7px;border-radius:30px}.visual-tabs-r4{grid-template-columns:repeat(2,1fr)}.visual-controls-r4 .member-style-grid,.visual-controls-r4 .member-count-grid{grid-template-columns:1fr}.preflight-head-r4{display:block}.preflight-head-r4 .btn{margin-top:12px}.picker-actions{grid-template-columns:1fr auto;grid-template-rows:auto auto auto}.picker-actions #clearDate{grid-column:1;grid-row:1/4}.picker-actions #todayDate{grid-column:2;grid-row:1}.picker-actions #nowDate{grid-column:2;grid-row:2}.picker-actions #confirmDate{grid-column:2;grid-row:3}}
