/* Iteration design system: neutral everyday UI, expressive results. */
:root { --tblr-primary:#5145cd; --tblr-primary-rgb:81,69,205; --tblr-body-bg:#f7f8fb; --tblr-body-color:#202638; }
body { background:#f7f8fb; background-attachment:initial; color:#202638; }
.studio-header { min-height:72px; background:#fff; border-bottom:1px solid #e4e7ee; }
.studio-container { max-width:1280px; margin:auto; padding:12px 32px; gap:16px; }
.brand { font-size:21px; letter-spacing:-.5px; }
.brand-mark,.eyebrow { color:#5145cd; }
.btn { min-height:44px; border-radius:10px; font-weight:600; }
.btn-primary { background:#5145cd; border-color:#5145cd; box-shadow:none; }
.btn-primary:hover { background:#4034b5; border-color:#4034b5; }
.btn-outline-primary { color:#5145cd; border-color:#d3d0ed; background:#fff; }
.btn-outline-primary:hover { background:#f0eefb; border-color:#5145cd; color:#4034b5; }
:focus-visible { outline:3px solid #776bea; outline-offset:3px; }
.form-control,.form-select { min-height:46px; border-radius:9px; border-color:#cbd1dd; }
.form-label { font-weight:600; color:#30384b; }
.form-hint,.text-secondary { color:#596579 !important; }
.card,.giveaway-table,.payment-card,.choice-card { border-color:#e0e4ed; box-shadow:0 4px 16px #20263804; }
.giveaway-main { max-width:1180px; width:calc(100% - 64px); }
.is-landing { display:block; min-height:0; }
.url-step { padding:64px 0 40px; max-width:880px; }
.url-step h1 { font-size:clamp(34px,4.2vw,56px); line-height:1.12; letter-spacing:-1.8px; margin:16px 0; }
.hero-description { font-size:18px; line-height:1.6; color:#596579; max-width:660px; margin:0 auto 28px; }
.url-entry .form-control { height:58px; padding:16px 20px; font-size:17px; border-radius:10px; }
.url-entry .btn { padding:14px 24px; border-radius:10px; }
.journey { margin-top:32px; gap:16px; font-size:14px; flex-wrap:wrap; }
.landing-information { max-width:1060px; margin:16px auto 48px; padding:32px 0; border-top:1px solid #e0e4ed; }
.landing-information h2 { font-size:26px; letter-spacing:-.5px; }
.landing-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:24px 0 40px; }
.landing-benefits article { padding:24px; background:#fff; border:1px solid #e0e4ed; border-radius:14px; }
.landing-benefits h3 { font-size:18px; }
.landing-benefits p { color:#596579; line-height:1.6; margin-bottom:0; }
.landing-faq details { padding:18px 0; border-bottom:1px solid #e0e4ed; }
.landing-faq summary { font-weight:600; cursor:pointer; }
.landing-faq p { padding-top:12px; color:#596579; line-height:1.6; max-width:760px; }
.language-menu { position:relative; flex-shrink:0; }
.language-menu > summary { display:flex; gap:8px; align-items:center; justify-content:center; min-width:58px; min-height:44px; padding:8px 10px; cursor:pointer; border:1px solid #d3d0ed; border-radius:10px; background:#fff; color:#4034b5; font-weight:600; list-style:none; }
.language-menu summary::-webkit-details-marker { display:none; }
.language-options { position:absolute; right:0; top:calc(100% + 8px); width:190px; padding:8px; z-index:1100; background:#fff; border:1px solid #dddfee; border-radius:12px; box-shadow:0 12px 32px #20263818; }
.language-options a { display:block; text-decoration:none; }
.language-options button, .language-options a { width:100%; background:transparent; border:0; border-radius:8px; min-height:44px; text-align:left; padding:10px 12px; color:#202638; }
.language-options a:hover,.language-options a[aria-current=true],.language-options button:hover,.language-options button[aria-current=true] { background:#f0eefb; color:#4034b5; }
.giveaway-table-heading,.giveaway-table-row { grid-template-columns:minmax(180px,1fr) 160px minmax(140px,.7fr) 160px 36px; gap:20px; }
.giveaway-table-row > * { min-width:0; }
.giveaway-table-row .badge { max-width:100%; white-space:normal; line-height:1.45; text-align:left; overflow-wrap:anywhere; }
.giveaway-post a { overflow-wrap:anywhere; }
.recovery-modal-header { background:#f4f3fb; }
.recovery-modal-footer { display:flex; gap:12px; flex-wrap:wrap; padding:20px 24px; }
.recovery-modal-footer > * { margin:0 !important; }
.recovery-code-modal { max-height:calc(100dvh - 32px); overflow-y:auto; border-color:#e0e4ed; }
.recovery-modal-body { padding:24px; }
.draw-setup { padding-top:28px; }
.setup-grid { gap:24px; }
.setup-rules { padding:24px; }
.optional-settings { margin-bottom:24px; padding:16px; border:1px solid #e0e4ed; border-radius:10px; }
.optional-settings summary { font-weight:600; cursor:pointer; }
.optional-settings[open] summary { margin-bottom:16px; }
.optional-settings .form-label { margin-top:16px; }
.optional-settings .form-hint { margin-top:10px; line-height:1.5; }
.results { margin-top:24px !important; }
.winner-content > h2 { font-size:clamp(28px,3.5vw,42px); line-height:1.15; letter-spacing:-1px; margin:10px 0; }
.reveal-trophy { display:none; }
.result-subtitle { margin-bottom:24px; }
.reveal-card { max-width:960px; margin-inline:auto; }
.reveal-card-main { padding:24px; gap:24px; }
.reveal-portrait .winner-avatar { width:112px; height:112px; }
.winner-identity h3 { overflow-wrap:anywhere; }
.selection-grid:not(.selection-many) .winners-group .selection-group { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.selection-grid .result-groups { display:block; }
.selection-grid .winner-card { min-width:0; }
.selection-grid .winner-name-and-stats h3 { font-size:24px; }
.selection-many .winners-group .selection-group,.substitutes-group .selection-group { display:grid; grid-template-columns:1fr; gap:12px; }
.single-substitutes { max-width:960px; margin:24px auto; text-align:left; }
.single-substitutes .winner-card { padding:16px; margin-top:12px; }
.single-substitutes summary { cursor:pointer; }
.single-substitutes p { margin:12px 0 0; }
.result-draw-details { text-align:left; padding:16px 0; }
.result-draw-details summary { cursor:pointer; font-weight:600; }
.winner-share-actions { gap:12px; flex-wrap:wrap; }
.studio-footer { display:flex; gap:20px; flex-wrap:wrap; align-items:center; justify-content:center; padding:24px; background:#fff; border-top:1px solid #e0e4ed; }
.policy-page { max-width:780px; margin:32px auto; padding:32px; background:white; border:1px solid #e0e4ed; border-radius:14px; line-height:1.75; }
.policy-page h1 { font-size:32px; }
.policy-page h2 { font-size:21px; margin-top:28px; }
.policy-draft { padding:14px 18px; background:#fff4d9; border-radius:10px; }
@media(max-width:1000px) { .giveaway-table-heading { display:none; } .giveaway-table-row { grid-template-columns:minmax(0,1fr) 44px; gap:14px; } .giveaway-table-row > div:not(.giveaway-menu-cell),.giveaway-table-row > time { grid-column:1; } .giveaway-menu-cell { grid-column:2; grid-row:1; } .giveaway-row-actions { justify-content:flex-start; } }
@media(max-width:640px) {
 .studio-container { padding:12px 16px; flex-wrap:wrap; }
 .studio-header .brand { font-size:18px; }
 .workspace-nav-actions { gap:8px; flex-wrap:wrap; }
 .workspace-nav-actions .btn { font-size:13px; padding:8px 10px; }
 .giveaway-main { width:calc(100% - 32px); }
 .url-step { padding:32px 0 24px; }
 .url-step h1 { letter-spacing:-1px; }
 .hero-description { font-size:16px; margin-bottom:24px; }
 .url-entry { flex-direction:column; gap:12px; }
 .url-entry .form-control { width:100%; }
 .url-entry .btn { width:100%; justify-content:center; }
 .journey { gap:12px; font-size:12px; margin-top:24px; }
 .journey-line { display:none; }
 .landing-information { padding-top:24px; }
 .landing-benefits { grid-template-columns:1fr; gap:16px; }
 .landing-benefits article { padding:20px; }
 .setup-rules { padding:20px; }
 .setup-grid { grid-template-columns:1fr; }
 .setup-summary { position:static; }
 .setup-post-strip { flex-wrap:wrap; gap:12px; }
 .selection-grid:not(.selection-many) .winners-group .selection-group { grid-template-columns:1fr; }
 .reveal-card-main { display:flex; flex-direction:column; padding:20px; }
 .reveal-context { border:0; padding:0; width:100%; }
 .reveal-card .winner-identity h3 { font-size:28px; }
 .recovery-modal-footer > .btn { flex:1 1 auto; }
 .policy-page { padding:24px 20px; margin:20px 0; }
 .checkout-shell,.payment-main { padding-inline:16px; }
 .giveaway-table-row { padding:20px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; } }

.landing-pricing { margin:24px 0 40px; border:1px solid #e0e4ed; border-radius:12px; background:#fff; overflow:hidden; }
.landing-pricing table { width:100%; border-collapse:collapse; }
.landing-pricing th,.landing-pricing td { padding:16px 20px; text-align:left; border-bottom:1px solid #e0e4ed; }
.landing-pricing th { background:#f1f3f8; }

.reel-account { display:flex; align-items:center; justify-content:center; gap:16px; min-height:88px; }
.reel-avatar { position:relative; display:grid; place-items:center; width:64px; height:64px; flex:0 0 64px; border-radius:50%; overflow:hidden; background:#ece9fc; color:#5145cd; font-size:28px; font-weight:700; }
.reel-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.video-music-option { display:flex; gap:10px; align-items:center; justify-content:center; margin:24px 0 12px; }
.video-music-option input { width:20px; height:20px; }

@media(max-width:640px) {
 .giveaway-workspace { display:flex; flex-direction:column; }
 .giveaway-workspace > section { width:100%; order:-1; }
 .giveaway-workspace > .post-column { width:100%; }
 .giveaway-workspace .post-preview { max-height:280px; overflow:hidden; }
 body:has(.draw-setup) { padding-bottom:86px; }
 .draw-setup #draw-button { position:fixed; left:16px; right:16px; bottom:max(16px,env(safe-area-inset-bottom)); width:calc(100% - 32px) !important; z-index:90; box-shadow:0 0 0 12px #f7f8fb,0 -12px 24px #20263812; }
 /* Keep the action stationary when fields blur so a tap cannot move its target. */
}

.result-toolbar { display:flex; gap:12px 20px; align-items:center; justify-content:center; flex-wrap:wrap; margin:20px 0 24px; }
.result-toolbar .video-music-option,.result-toolbar .winner-share-actions { margin:0; }
.single-substitutes .winner-card { width:100%; max-width:none; text-align:left; border:1px solid #e0e4ed; border-radius:12px; background:#fff; box-shadow:none; }
.single-substitutes summary { display:flex; align-items:center; gap:16px; text-align:left; }
.single-substitutes .winner-identity { display:flex; align-items:center; gap:12px; margin:0; }
.single-substitutes .winner-avatar { width:40px; height:40px; margin:0; font-size:18px; }
.single-substitutes .winner-identity h3 { margin:0; font-size:18px; }
.single-substitutes .badge { background:#f0eefb; color:#4034b5; }
.single-substitutes .selection-comment { padding:16px 0 0; }
/* Override the legacy landing-specific selectors explicitly. */
.is-landing .url-step { max-width:880px; padding:48px 0 36px; }
.is-landing .url-step h1 { font-size:clamp(34px,4.2vw,56px); line-height:1.12; letter-spacing:-1.8px; margin:16px auto; font-weight:750; }
.is-landing .hero-description { font-size:18px; line-height:1.6; color:#596579; margin:0 auto 28px; }
.is-landing .url-entry { border-color:#d6dae5; border-radius:12px; box-shadow:0 6px 18px #20263806; }
.is-landing .url-entry .btn { background:#5145cd; border-color:#5145cd; border-radius:9px; box-shadow:none; }
@media(max-width:640px) {
 .studio-header .studio-container:has(.workspace-nav-actions) { flex-wrap:nowrap; padding:12px 16px; gap:12px; }
 .studio-header .brand { font-size:16px; gap:8px; }
 .studio-header .brand-mark { width:32px; height:32px; font-size:24px; }
 .workspace-nav-actions { width:auto; margin-left:auto; flex-wrap:nowrap; justify-content:flex-end; }
 .workspace-nav-actions > a[href='/'] { display:none; }
 .is-landing .url-step { padding:24px 0; }
 .is-landing .url-step h1 { font-size:34px; letter-spacing:-1px; }
 .is-landing .hero-description { font-size:16px; margin-bottom:24px; }
 .is-landing .url-entry { display:grid; grid-template-columns:24px minmax(0,1fr); gap:8px; padding:8px; align-items:center; }
 .is-landing .url-entry .url-link-icon { margin:0; width:22px; height:22px; }
 .is-landing .url-entry .form-control { min-width:0; width:100%; height:48px; padding:8px 0; font-size:15px; }
 .is-landing .url-entry .btn { grid-column:1/-1; min-height:48px; width:100%; padding:12px 16px; }
 .is-landing .journey { flex-direction:row; align-items:center; justify-content:center; width:auto; gap:12px; }
 .is-landing .journey span { white-space:normal; }
 .is-landing .journey b { margin-right:4px; }
}
@media(max-width:640px) { .giveaway-workspace > .import-workflow-column { width:100%; order:-1; } }
/* A few winners get cards; six or more get compact, readable rows. */
#winner-stage .selection-grid:not(.selection-many) .winners-group .selection-toggle { display:flex; flex-direction:column; gap:16px; padding:24px; }
#winner-stage .selection-grid:not(.selection-many) .winners-group .winner-identity { display:flex; flex-direction:column; align-items:center; gap:12px; }
#winner-stage .selection-grid:not(.selection-many) .winners-group .winner-avatar { width:88px; height:88px; flex-basis:88px; margin:0; }
#winner-stage .selection-many .selection-toggle { display:flex; flex-direction:row; align-items:center; gap:16px; padding:16px 20px; }
#winner-stage .selection-many .winner-identity { display:flex; flex-direction:row; align-items:center; gap:14px; text-align:left; flex:1; min-width:0; }
#winner-stage .selection-many .winner-avatar,#winner-stage .substitutes-group .winner-avatar { display:grid; width:44px; height:44px; flex:0 0 44px; margin:0; font-size:20px; }
#winner-stage .selection-many .winner-avatar::before,#winner-stage .selection-many .winner-avatar::after { content:none; }
#winner-stage .selection-many .winner-avatar > span { display:block; }
#winner-stage .selection-many .winner-name-and-stats h3 { font-size:18px; margin:4px 0 0; overflow-wrap:anywhere; }
#winner-stage .selection-many .winner-card { border:1px solid #e0e4ed; box-shadow:none; border-radius:12px; }
#winner-stage .selection-many .selection-chevron { flex:0 0 auto; }
#winner-stage .selection-many .selection-chevron .person-details-label { display:none; }
@media(max-width:360px) {
 .studio-header .studio-container:has(.workspace-nav-actions) { flex-wrap:wrap; }
 .workspace-nav-actions { width:100%; }
}
@media(max-width:640px) { .is-landing .url-entry .form-control { font-size:16px; } }
.giveaway-more > summary { min-width:44px; min-height:44px; }
.recovery-modal-close { min-width:44px; min-height:44px; }
/* Warm, celebratory direction: color belongs to the experience, not just the CTA. */
:root { --tblr-primary:#7043df; --tblr-primary-rgb:112,67,223; --tblr-body-bg:#fffaf6; --tblr-body-color:#29213d; }
body { color:#29213d; background:radial-gradient(ellipse at 8% 15%,#eee3ff 0,transparent 44%),radial-gradient(ellipse at 94% 28%,#ffe6d9 0,transparent 42%),#fffaf6; }
.studio-header { background:#fffdfaf2; border-top:3px solid #8955e8; border-bottom-color:#eadff3; }
.brand-mark { color:white; background:linear-gradient(135deg,#7645e1,#bd63dc); box-shadow:0 4px 12px #8451d524; }
.eyebrow { color:#7640bd; }
.btn { border-radius:12px; transition:background .18s,box-shadow .18s,transform .18s; }
.btn-primary,.is-landing .url-entry .btn { background:linear-gradient(115deg,#7541dc,#9651dc); border-color:#7541dc; box-shadow:0 5px 14px #8544cf26; }
.btn-primary:hover,.is-landing .url-entry .btn:hover { background:#6633c8; border-color:#6633c8; box-shadow:0 7px 20px #8544cf32; transform:translateY(-1px); }
.btn-outline-primary { color:#6834ba; border-color:#d7bee9; background:#fffcff; }
.btn-outline-primary:hover { background:#f1e5ff; color:#54259d; border-color:#ae82dc; }
.is-landing .url-step { position:relative; isolation:isolate; }
.is-landing .url-step h1 { color:#35204e; font-weight:800; }
.is-landing .hero-description { color:#665673; }
.is-landing .hero-emblem { background:linear-gradient(140deg,#8c50ed,#dc78b4); box-shadow:0 12px 30px #a464dc2b; }
.is-landing .url-entry { border:1px solid #d9bdea; border-radius:20px; background:#ffffffed; box-shadow:0 12px 36px #9661bb18,0 0 0 6px #ffffff65; }
.is-landing .url-entry:focus-within { border-color:#9862d8; box-shadow:0 12px 36px #9661bb20,0 0 0 4px #e9d5ff; }
.journey b { background:#ead9ff; color:#6936a8; }
.journey span:nth-of-type(3) b { background:#ffdec8; color:#9b4b22; }
.journey span:nth-of-type(5) b { background:#d5f1e6; color:#236950; }
.landing-information { border-top:0; }
.landing-information h2 { color:#38214f; }
.landing-benefits { gap:22px; }
.landing-benefits article { position:relative; border:1px solid #e1c9f4; border-radius:22px; padding:26px; background:linear-gradient(145deg,#f0e1ff,#fbf5ff); box-shadow:0 8px 22px #79529b08; }
.landing-benefits article:nth-child(2) { background:linear-gradient(145deg,#ffead7,#fff8ee); border-color:#f3d6bd; }
.landing-benefits article:nth-child(3) { background:linear-gradient(145deg,#dff3e9,#f3fcf6); border-color:#bfdfd0; }
.landing-benefits article::before { content:'\2197' / ''; display:grid; place-items:center; width:44px; height:44px; margin-bottom:20px; border-radius:14px; background:#8150c8; color:white; font-size:26px; font-weight:600; box-shadow:0 4px 10px #8050ba16; }
.landing-benefits article:nth-child(2)::before { content:'\2713' / ''; background:#bd652f; }
.landing-benefits article:nth-child(3)::before { content:'\2726' / ''; background:#338569; }
.landing-benefits h3 { color:#392546; }
.landing-benefits p { color:#60526a; }
.landing-pricing { border-color:#e4cfef; border-radius:20px; box-shadow:0 6px 24px #8b58930a; }
.landing-pricing th { background:#eee0fa; color:#553173; border-bottom-color:#dfc5ed; }
.landing-pricing td { background:#fffdfb; border-bottom-color:#f0e5ee; }
.landing-pricing tr:nth-child(even) td { background:#fbf4ff; }
.landing-pricing td:last-child { font-weight:700; color:#703eae; }
.landing-faq { padding:28px; background:#ffffffb3; border:1px solid #eadbea; border-radius:22px; }
.landing-faq details { border-color:#eadfed; }
.landing-faq details:last-child { border-bottom:0; }
.landing-faq summary { color:#44314f; }
.studio-footer { background:#f8effb; border-top-color:#e9d8ee; }
.card,.giveaway-table,.payment-card,.choice-card { border-color:#e8d8ee; box-shadow:0 6px 24px #81519b08; }
.giveaway-table-heading { background:#f3e9fb; }
.recovery-modal-header { background:#f0e1fb; }
@media(prefers-reduced-motion:no-preference) {
 .is-landing .url-step { animation:warm-welcome .55s ease-out both; }
 .landing-benefits article { transition:transform .2s,box-shadow .2s; }
 @media(hover:hover) { .landing-benefits article:hover { transform:translateY(-3px); box-shadow:0 12px 28px #79529b16; } }
}
@keyframes warm-welcome { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:640px) {
 .landing-benefits article { padding:22px; }
 .landing-benefits article::before { margin-bottom:16px; }
 .landing-faq { padding:22px; }
 .is-landing .url-entry { border-radius:16px; }
 .draw-setup #draw-button { box-shadow:0 0 0 12px #fffaf6,0 -12px 24px #7043df12; }
}
/* One continuous canvas, even when expanding rules makes the document taller. */
html { min-height:100%; background:#fffaf6; }
body { min-height:100vh; background-repeat:no-repeat; background-attachment:fixed; background-size:cover; }
.setup-rules h2 { margin-bottom:20px; }
.rules-section-heading { margin-top:12px; padding-top:24px; }
.mention-rule { row-gap:10px; margin-bottom:24px; }
.mention-rule .form-hint { line-height:1.6; }
.requirement-group { display:grid; grid-template-columns:minmax(0,1fr) 155px; gap:16px; margin-top:20px; }
.requirement-group > div { min-width:0; }
.optional-settings .requirement-group .form-label { margin-top:0; margin-bottom:8px; }
.optional-settings > .form-hint { margin-top:16px; margin-bottom:0; }
.setup-rules .form-switch { padding-top:8px; padding-bottom:8px; line-height:1.5; }
.setup-rules .form-switch + p { margin-top:8px; line-height:1.6; }
.setup-access .recovery-code-trigger { display:block; margin-top:16px; line-height:1.5; }
.setup-access p { line-height:1.6; }
@media(max-width:540px) { .requirement-group { grid-template-columns:1fr; gap:12px; } }
/* Keep photos above the initial fallback in every winner layout. */
#winner-stage .winner-avatar { position:relative; }
#winner-stage .winner-avatar img { position:absolute; inset:0; z-index:1; display:block; width:100%; height:100%; object-fit:cover; border-radius:50%; }
#winner-stage .winner-avatar img[hidden] { display:none; }
/* A quiet, centered raffle reel with a distinct selection window. */
#winner-stage .reveal-intro { max-width:760px; margin-inline:auto; width:100%; }
#winner-stage .reveal-intro h2 { font-size:clamp(28px,4vw,42px); letter-spacing:-1px; margin:12px 0 24px; }
#winner-stage .reel-window { position:relative; max-width:720px; padding:12px 30px; margin:24px auto; border:1px solid #e4d4f1; border-radius:24px; background:linear-gradient(180deg,#fffafc,#fff 48%,#fffafc); box-shadow:0 16px 40px #7948a712,inset 0 1px 0 #fff; }
#winner-stage .reel-account { position:relative; display:flex; min-height:80px; gap:0; border-radius:16px; background:linear-gradient(110deg,#f1e5ff,#f9efff); border:1px solid #dfc6f5; }
#winner-stage .reel-account::before { content:''; position:absolute; left:-19px; top:calc(50% - 6px); border-top:6px solid transparent; border-bottom:6px solid transparent; border-left:8px solid #8b50cc; }
#winner-stage .reel-avatar { display:none; }
#winner-stage .name-reel { display:flex; align-items:center; justify-content:center; height:80px; min-height:80px; line-height:1.25; padding:12px 20px; margin:0; background:transparent; border-radius:0; color:#713ab7; font-weight:750; letter-spacing:-.6px; }
#winner-stage .reel-neighbor { display:flex; align-items:center; justify-content:center; height:56px; line-height:1.3; padding:10px 20px; color:#8b759f; opacity:.48; font-weight:600; }
#winner-stage .reel-before { mask-image:linear-gradient(transparent,#000 75%); }
#winner-stage .reel-after { mask-image:linear-gradient(#000 25%,transparent); }
#winner-stage .reveal-intro > p[role=status] { max-width:440px; margin:20px auto; line-height:1.6; color:#665673; }
#winner-stage .reel-explanation { font-size:13px; color:#756580; margin:16px auto 0; max-width:440px; line-height:1.5; }
#winner-stage .skip-reveal { min-height:48px; padding:12px 24px; }
@media(max-width:480px) { #winner-stage .reel-window { padding:8px 22px; border-radius:20px; } #winner-stage .name-reel { height:68px; min-height:68px; padding:10px 12px; } #winner-stage .reel-account { min-height:68px; } #winner-stage .reel-neighbor { height:46px; } #winner-stage .reel-account::before { left:-15px; } }

/* Import progress leads; actions and optional reading follow. */
.import-progress-card { width:min(100%,680px); margin:12px auto 32px; padding:clamp(24px,4vw,40px); border:1px solid #ded6ee; border-radius:22px; background:linear-gradient(145deg,#fcf9ff,#fffefd 45%); box-shadow:0 12px 36px #34205009; }
.import-progress-card h1 {font-size:clamp(1.65rem,4vw,2rem);line-height:1.2;margin:0 0 8px;}
.import-description {color:#626079;font-size:1rem;line-height:1.5;margin:0;}
.import-progress-meter {margin:28px 0 24px;padding:22px;background:#f2ecfc;border:1px solid #e7dcf7;border-radius:16px;display:flex;flex-direction:column;gap:12px;}
.import-progress-meter #import-count {order:-1;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:700;color:#39235c;margin:0;}
.import-progress-meter #import-state {order:2;margin:0;font-size:.9rem;color:#5c5270;line-height:1.5;}
.import-progress-meter progress {display:block;width:100%;height:8px;border:0;border-radius:99px;overflow:hidden;appearance:none;background:#e2d7ef;accent-color:#8045d5;}
.import-progress-meter progress::-webkit-progress-bar {background:#e2d7ef;border-radius:99px;}
.import-progress-meter progress::-webkit-progress-value {background:linear-gradient(90deg,#7641d3,#b164dc);border-radius:99px;}
.import-progress-meter progress::-moz-progress-bar {background:#8045d5;border-radius:99px;}
.import-progress-meter progress:indeterminate {background:linear-gradient(90deg,#e2d7ef 30%,#9360d6 50%,#e2d7ef 70%);background-size:200% 100%;animation:import-wait 2s ease-in-out infinite;}
.import-progress-meter progress:indeterminate::-webkit-progress-bar {background:transparent;}
@keyframes import-wait {from{background-position:100% 0}to{background-position:-100% 0}}
.import-leave-note {font-size:.95rem;line-height:1.5;color:#48405c;margin:0 0 14px;}
.import-actions {display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px;}
.import-actions .btn {min-height:44px;}
.import-actions .import-recovery-action {background:transparent;border-color:transparent;box-shadow:none;color:#6b3eaa;text-decoration:underline;text-underline-offset:4px;}
.import-guarantee {font-size:.875rem;color:#5f566e;line-height:1.6;}
.import-guarantee summary {cursor:pointer;padding:8px 0;}
.import-guarantee p {margin:8px 0 0;max-width:60ch;}
.import-history {border-top:1px solid #e8e1ed;margin-top:20px;padding-top:16px;}
.import-history-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px;}
.import-history h2 {font-size:.85rem;margin:0;color:#666074;font-weight:600;}
.import-history .import-facts-control {background:transparent;border-color:transparent;color:#6b587f;font-size:.8rem;min-height:44px;box-shadow:none;}
.import-history p {min-height:3.2em;line-height:1.55;margin:0 0 8px;font-size:.875rem;color:#696175;}
.import-history a {color:#6b3eaa;text-decoration:underline;text-underline-offset:3px;font-size:.825rem;}
@media(prefers-reduced-motion:reduce){.import-progress-meter progress:indeterminate{animation:none;}}
@media(max-width:540px){.import-progress-card{margin:0 auto 20px;border-radius:16px;padding:24px 20px}.import-actions{gap:6px}.import-actions .btn{flex:1 1 180px}.import-history p{min-height:6.2em}}

/* Status contrast and touch targets remain legible in both languages. */
.giveaway-table-row .badge.bg-purple-lt {color:#642c85 !important;background:#f3eafa !important;}
.giveaway-table-row .badge.bg-green-lt {color:#17633b !important;background:#e7f4e9 !important;}
.result-toolbar {max-width:960px;margin:24px auto 16px;padding-top:20px;border-top:1px solid #e7deed;}
.result-toolbar .btn {min-height:44px;}
.result-toolbar .winner-share-actions {margin-top:0;}
.checkout-duration {max-width:600px;margin:0 auto 24px;color:#4c5265;line-height:1.6;}
@media(max-width:540px){.draw-setup .row > .col-sm-6 {width:50%;}.result-toolbar{gap:12px}.video-music-option{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px}}

/* An editorial sequence instead of repeated icon tiles. */
.landing-benefits {counter-reset:landing-step;gap:32px;}
.landing-benefits article,.landing-benefits article:nth-child(2),.landing-benefits article:nth-child(3){counter-increment:landing-step;background:transparent;border:0;border-radius:0;box-shadow:none;padding:20px 0 24px;border-top:2px solid #d7b9ed;}
.landing-benefits article:nth-child(2){border-top-color:#edbd98;}
.landing-benefits article:nth-child(3){border-top-color:#9ccdb7;}
.landing-benefits article::before,.landing-benefits article:nth-child(2)::before,.landing-benefits article:nth-child(3)::before{content:'0' counter(landing-step);display:block;width:auto;height:auto;background:transparent;color:#8052ad;font-size:32px;line-height:1;margin-bottom:24px;border-radius:0;box-shadow:none;font-weight:500;}
.landing-benefits article:nth-child(2)::before{color:#ad6638;}
.landing-benefits article:nth-child(3)::before{color:#328368;}
.landing-benefits article:hover{transform:none;box-shadow:none;}

/* Winner announcement: one scoped presentation system. */
#winner-stage.winner-announcement{background:transparent;border:0;box-shadow:none;padding:0;color:#101c38;font-family:inherit;}
.winner-announcement .winner-content{width:min(1040px,100%);margin:auto;}
#winner-stage.winner-announcement .reveal-card{display:flex;flex-direction:column;position:relative;isolation:isolate;width:100%;max-width:none;height:auto;min-height:0;padding:24px 28px 0;border:1px solid #e3d8ff;border-radius:20px;background:radial-gradient(ellipse at 50% 26%,#fffffff2,transparent 48%),radial-gradient(ellipse at 18% 8%,#e8dbff99,transparent 58%),radial-gradient(ellipse at 88% 12%,#ede1ff80,transparent 58%),#fffcf9;box-shadow:0 12px 40px #47267d0a;overflow:hidden;}
.announcement-heading{text-align:center;}.announcement-heading .eyebrow{font-size:11px;letter-spacing:.16em;color:#743cf0;}.announcement-heading .eyebrow span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#9761ed,#d15acb);color:white;margin-right:8px;}
.winner-announcement #winner-heading{font-size:clamp(28px,3.2vw,36px);line-height:1.15;margin:14px 0 0;letter-spacing:-.035em;}
.winner-announcement .result-subtitle,.winner-announcement .reveal-winner-badge,.winner-announcement .winning-mentions{display:none;}
#winner-stage .reveal-card-main{display:flex;flex-direction:column;align-items:center;gap:0;padding:0 0 22px;}
#winner-stage .reveal-card .winner-identity{display:flex;flex-direction:column;align-items:center;width:100%;padding:0;border:0;text-align:center;}
#winner-stage .reveal-portrait{position:relative;width:120px;height:120px;margin:22px 0 0;}
#winner-stage .reveal-card .winner-avatar{width:120px;height:120px;border:3px solid #c5afff;background:#eee8ff;box-shadow:inset 0 0 0 4px white,0 8px 24px #743cf014;font-size:44px;}
#winner-stage .portrait-trophy{position:absolute;right:-3px;bottom:4px;display:grid;place-items:center;width:44px;height:44px;border:3px solid white;border-radius:50%;background:#ffc44d;font-size:22px;}
#winner-stage .reveal-card .winner-identity h3{font-size:clamp(30px,4vw,48px);font-weight:800;line-height:1.08;letter-spacing:-.045em;margin:16px 0 6px;max-width:100%;overflow-wrap:anywhere;}
#winner-stage .reveal-context{width:min(100%,420px);padding:0;border:0;margin-top:20px;text-align:center;}
#winner-stage .reveal-context h4{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#64748b;margin-bottom:10px;}
#winner-stage .winning-comment{position:relative;margin:0;padding:14px 20px 14px 44px;border-radius:12px;background:#ede5ffb8;font-size:16px;line-height:1.6;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;}
#winner-stage .winning-comment::before{content:'\201C';position:absolute;left:18px;top:8px;font-size:38px;color:#743cf0;}
#winner-stage .reveal-card-header{order:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;background:transparent;border:0;border-top:1px solid #e3d8ff;padding:14px 0;font-size:13px;}
#winner-stage .reveal-card-header details{margin:0;max-width:65%;text-align:left;}.reveal-card-header summary{color:#743cf0;cursor:pointer;}.reveal-card-header .reveal-summary{margin-top:16px;}
.winner-announcement .result-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px;border:0;padding:20px 0;margin:0;max-width:none;}
.share-moment-heading{margin-right:auto;}.share-moment-heading h3{font-size:22px;margin:4px 0;}.share-moment-heading p{color:#64748b;margin:0;font-size:14px;}
.video-action-group{display:flex;flex-direction:column;gap:10px;max-width:360px;}.winner-share-actions{display:flex;flex-wrap:wrap;gap:10px;}
.winner-announcement .result-toolbar .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;border-radius:10px;padding:11px 20px;font-weight:600;}.action-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.winner-announcement .video-music-option{display:flex;align-items:center;gap:9px;font-size:13px;color:#64748b;margin:0;}.video-music[role=switch]{appearance:none;position:relative;flex:0 0 36px;width:36px;height:22px;border:0;border-radius:20px;background:#aaa2b4;margin:0;cursor:pointer;}.video-music[role=switch]::after{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;background:white;border-radius:50%;}.video-music[role=switch]:checked{background:#743cf0;}.video-music[role=switch]:checked::after{transform:translateX(14px);}
.story-status{font-size:13px;color:#64748b;margin:0;}.substitute-management{display:flex;justify-content:space-between;gap:16px;border-block:1px solid #e3d8ff;padding:18px 0;margin-bottom:16px;}
.portrait-confetti{position:absolute;inset:-15px -150px;pointer-events:none;}.portrait-confetti i{position:absolute;width:10px;height:17px;background:#ffc44d;transform:rotate(28deg);left:6%;top:10%;}.portrait-confetti i:nth-child(2){left:26%;top:26%;background:#a667ee;transform:rotate(-30deg);}.portrait-confetti i:nth-child(3){left:13%;top:74%;}.portrait-confetti i:nth-child(4){left:28%;top:91%;background:#a667ee;}.portrait-confetti i:nth-child(5){left:81%;top:7%;transform:rotate(55deg);}.portrait-confetti i:nth-child(6){left:95%;top:40%;background:#a667ee;}.portrait-confetti i:nth-child(7){left:77%;top:72%;background:#a667ee;}.portrait-confetti i:nth-child(8){left:93%;top:95%;}
.winner-announcement :is(button,a,input,summary):focus-visible{outline:3px solid #743cf0;outline-offset:4px;}
@media(max-width:600px){#winner-stage.winner-announcement .reveal-card{padding:22px 18px 0;}#winner-stage .reveal-card .winner-identity h3{font-size:clamp(28px,8vw,40px);}.portrait-confetti{inset:-8px -70px;}.share-moment-heading,.video-action-group,.winner-announcement .result-toolbar>.btn,.winner-share-actions,.winner-share-actions .btn{width:100%;max-width:none;}#winner-stage .reveal-card-header{flex-direction:column;}#winner-stage .reveal-card-header details{max-width:100%;}}

.video-studio-modal{width:min(560px,calc(100% - 32px));max-height:90dvh;overflow:auto;border:1px solid #ddc9f3;border-radius:24px;padding:32px;background:radial-gradient(ellipse at 0 0,#eee0ff,transparent 65%),#fffaf6;color:#101c38;box-shadow:0 24px 90px #25103940;text-align:center;}
.video-studio-modal::backdrop{background:#21152b88;backdrop-filter:blur(5px);}.video-studio-modal h2{font-size:26px;margin:0 0 14px;}.video-studio-notice{color:#635572;line-height:1.6;}.video-studio-spinner{width:44px;height:44px;border:4px solid #e8d8f6;border-top-color:#8044d4;border-radius:50%;margin:24px auto;animation:video-studio-spin .9s linear infinite;}.video-studio-modal progress{width:100%;height:10px;accent-color:#8044d4;margin-bottom:16px;}.video-studio-fact{border-top:1px solid #e4d8ec;padding-top:20px;margin-top:24px;color:#685776;font-size:14px;line-height:1.6;}.video-studio-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;}.video-studio-modal .winner-video-preview{display:block;max-height:55dvh;width:100%;margin:20px auto;}.video-studio-modal [hidden]{display:none!important;}.video-studio-controls .btn{min-height:44px;}@keyframes video-studio-spin{to{transform:rotate(360deg);}}@media(prefers-reduced-motion:reduce){.video-studio-spinner{animation:none;}}@media(max-width:540px){.video-studio-modal{padding:24px 20px;}.video-studio-controls .btn{flex:1 1 140px;}}

/* Native dialog centering must not inherit the results card's offsets. */
dialog.video-studio-modal{position:fixed;inset:auto;top:50%;left:50%;margin:0;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));height:auto;max-height:calc(100dvh - 40px);padding:32px;}
.video-studio-modal .video-studio-spinner{position:relative;display:grid;place-items:center;width:88px;height:88px;margin:28px auto;border:0;border-radius:50%;background:radial-gradient(circle,#fff 35%,#eee2fb 72%);animation:none;box-shadow:0 8px 28px #8144c515;}
.video-studio-spinner::before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 12%,#d7b2f3 45%,#8144d4 85%,#b462d8);mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));animation:video-studio-spin 1.25s linear infinite;}
.video-studio-spinner::after{content:'';position:absolute;inset:10px;border:1px solid #e3d1f1;border-radius:50%;}
.video-studio-spinner .action-icon{width:30px;height:30px;color:#8345c8;stroke-width:1.6;}
.video-studio-modal progress{appearance:none;border:0;border-radius:20px;overflow:hidden;background:#e9def2;height:8px;}
.video-studio-modal progress::-webkit-progress-bar{background:#e9def2;border-radius:20px;}.video-studio-modal progress::-webkit-progress-value{background:linear-gradient(90deg,#7840d0,#bc74d9);border-radius:20px;transition:width .3s ease;}.video-studio-modal progress::-moz-progress-bar{background:#884acb;border-radius:20px;}
.video-studio-controls .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;}.video-studio-modal .story-status{margin:8px 0 0;font-weight:500;}
@media(prefers-reduced-motion:reduce){.video-studio-spinner::before{animation:none;}.video-studio-modal progress::-webkit-progress-value{transition:none;}}
@media(max-width:540px){dialog.video-studio-modal{padding:24px 20px;max-height:calc(100dvh - 24px);}}

/* A clear decision after an interrupted import. */
#import-failed-modal .modal-dialog {max-width:560px;}
#import-failed-modal .modal-content {border:1px solid #e2d7f1;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 24px 70px #28144225;}
#import-failed-modal .modal-header {padding:24px;border:0;align-items:center;background:#f0e1fb;gap:12px;}
#import-failed-modal .modal-title {font-size:22px;line-height:1.3;font-weight:700;color:#21153c;padding-right:12px;margin:0;}
#import-failed-modal .recovery-modal-close {flex-shrink:0;min-width:44px;min-height:44px;display:grid;place-items:center;}
#import-failed-modal .modal-body {padding:24px;}
#import-failed-description {font-size:1rem;line-height:1.65;color:#494058;margin:0 0 16px;}
#import-failed-modal .import-failure-note {font-size:.875rem;line-height:1.5;color:#696074;margin:0;}
#import-failed-modal .import-failed-actions {padding:20px 24px;border-top:1px solid #e9e0f2;display:flex;gap:12px;}
#import-failed-modal .import-failed-actions>* {margin:0;}
#import-failed-modal .import-failed-actions .btn {min-height:44px;}
@media(max-width:540px){#import-failed-modal .modal-header{padding:20px}#import-failed-modal .modal-title{font-size:20px}#import-failed-modal .modal-body{padding:24px 20px}#import-failed-modal .import-failed-actions{padding:16px 20px 20px;flex-direction:column}#import-failed-modal .import-failed-actions>*{width:100%}#import-failed-modal .import-failed-actions form .btn{width:100%}#import-failed-modal .import-failed-actions>.btn-primary{order:-1}}

.giveaway-history-page{max-width:800px;margin:12px auto 36px;padding:clamp(22px,4vw,36px);border:1px solid #e4d9f2;border-radius:22px;background:linear-gradient(145deg,#f7f0ff,#fffdfa 45%);box-shadow:0 12px 36px #34205009}
.history-back{display:inline-block;margin-bottom:24px}.history-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.history-heading h1{font-size:clamp(1.6rem,4vw,2rem);margin-bottom:8px}.history-heading p{color:#655a72;line-height:1.5}.history-post{display:flex;justify-content:space-between;gap:16px;padding:18px 0;border-block:1px solid #e8def2;overflow-wrap:anywhere}.history-post span{white-space:nowrap}.history-note{font-size:.85rem;color:#70657a;margin:16px 0 24px}.giveaway-timeline{list-style:none;padding:0;margin:0 0 24px}.giveaway-timeline li{position:relative;display:flex;gap:18px;padding:0 0 26px}.giveaway-timeline li:not(:last-child):before{content:"";position:absolute;left:5px;top:15px;bottom:0;width:1px;background:#ded0ee}.history-event-dot{flex:0 0 11px;height:11px;border-radius:50%;background:#8a51d1;margin-top:6px}.giveaway-timeline strong{font-size:1rem}.giveaway-timeline p{margin:5px 0;color:#655a72;font-size:.9rem}.giveaway-timeline time{display:block;margin-top:6px;color:#74677d;font-size:.8rem}@media(max-width:540px){.history-heading,.history-post{flex-direction:column}.history-heading .badge{margin-bottom:16px}}

/* Durable retries stay in a centered modal above the unchanged workspace. */
.loading-overlay.durable-import-overlay {background:color-mix(in srgb,var(--tblr-gray-800, #1e293b) 32%,transparent);backdrop-filter:none;padding:20px;}
/* Avoid stacking two dim layers while Bootstrap hands off between retry modals. */
body.is-loading:has(.durable-import-overlay:not([hidden])) .modal-backdrop {opacity:0 !important;}
.durable-import-overlay .loading-content {background:linear-gradient(145deg,#f7edff,#fffdfa 65%);padding:28px;border:1px solid #eadcf7;border-radius:22px;box-shadow:0 24px 80px #25123733;max-height:calc(100dvh - 40px);overflow:auto;}
.durable-import-overlay .loading-scene {transform:scale(.75);margin-block:-12px;}
.durable-import-overlay .loading-content h2 {font-size:clamp(22px,4vw,28px);line-height:1.3;letter-spacing:-.4px;}
.durable-import-overlay .loading-content p {font-size:.9rem;line-height:1.5;}
.durable-import-overlay .loading-reassurance {border-top:1px solid #e5d7f0;padding-top:16px;margin-top:20px;}

.modal-backdrop.import-transition-backdrop {transition:none !important;}

.checkout-payment-action .checkout-duration {max-width:34ch;margin:8px 0 0;font-size:.85rem;line-height:1.5;color:#6b6075;text-align:inherit;}

/* Parent brand endorsement stays secondary to the giveaway experience. */
.studio-footer { padding:24px; }
.studio-footer-inner { width:min(100%,1120px); display:flex; align-items:center; justify-content:space-between; gap:24px 40px; }
.studio-parent-brand { display:flex; align-items:center; gap:16px; color:#58657a; font-size:.8125rem; }
.studio-parent-brand img { display:block; width:100px; height:100px; object-fit:contain; }
.studio-footer-links { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:12px 24px; }
.studio-footer-links a { padding:10px 0; }
@media (max-width:600px) {
 .studio-footer-inner { flex-direction:column; gap:12px; }
 .studio-footer-links { justify-content:center; gap:8px 20px; }
}

/* Administrator requests use the same centered, softly lit loader as video creation. */
dialog.refund-working-modal{width:min(460px,calc(100vw - 32px));padding:30px 32px 34px;}
.refund-working-modal .video-studio-spinner{margin:4px auto 24px;}
.refund-working-modal h2{font-size:24px;line-height:1.3;margin-bottom:12px;outline:none;}
.refund-working-modal .video-studio-notice{margin:0;line-height:1.65;}
.refund-working-track{height:5px;margin-top:26px;border-radius:99px;overflow:hidden;background:#e9def2;}
.refund-working-track span{display:block;width:38%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8144d4,#c683dc);animation:refund-working-slide 1.6s ease-in-out infinite alternate;}
@keyframes refund-working-slide{from{transform:translateX(-100%);}to{transform:translateX(365%);}}
@media(prefers-reduced-motion:reduce){.refund-working-track span{animation:none;margin:auto;}}
@media(max-width:540px){dialog.refund-working-modal{padding:26px 22px 30px;}}

/* History scrolls inside the dialog; heading and Close remain visible. */
dialog.giveaway-history-modal{position:fixed;inset:0;margin:auto;width:min(720px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 40px);padding:0;overflow:hidden;}
dialog.giveaway-history-modal[open]{display:flex;flex-direction:column;}
.giveaway-history-modal .recovery-modal-header,.giveaway-history-modal .recovery-modal-footer{flex:0 0 auto;}
.giveaway-history-modal .history-modal-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
body:has(.giveaway-history-modal[open]){overflow:hidden;}
.history-modal-intro{margin:0 0 20px;color:#655a72;}
.history-modal-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:96px;color:#655a72;}
.history-modal-loading[hidden],.history-modal-error[hidden]{display:none;}
.history-modal-error{padding:18px;border:1px solid #e7d8f1;border-radius:12px;background:#faf5ff;}
.giveaway-history-modal .giveaway-timeline{padding-left:0;margin-top:24px;}
.giveaway-history-modal .history-post{padding-top:0;}
.giveaway-history-modal .history-note{margin-bottom:24px;}
.giveaway-history-modal [data-history-older][aria-disabled="true"]{opacity:.55;cursor:wait;}
@media(max-width:540px){dialog.giveaway-history-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);}.giveaway-history-modal .recovery-modal-body{padding:20px;}}

/* Keep the preview flush with the adjacent import panels on wider screens. */
@media(min-width:641px){
 .giveaway-workspace > .post-column:has(> .post-preview:only-child){align-self:stretch;display:flex;}
 .giveaway-workspace > .post-column > .post-preview:only-child{display:flex;flex-direction:column;flex:1;min-width:0;margin:0;}
 .giveaway-workspace > .post-column > .post-preview:only-child .preview-details{margin-top:auto;}
}

.import-receipt{margin:18px 0 24px;padding:16px 18px;border:1px solid #e4d9f2;border-radius:14px;background:#fffdfb;}
.import-receipt-result{display:flex;align-items:center;gap:8px;margin:0;color:#26765e;font-size:15px;}
.import-receipt-result svg{flex-shrink:0;}
.import-receipt-counts{font-size:14px;color:#655a72;margin:8px 0 0;line-height:1.6;}
.import-receipt-details{font-size:14px;margin-top:10px;}
.import-receipt-details summary{cursor:pointer;color:#7542bd;}
.import-receipt-details p{margin:12px 0;color:#655a72;line-height:1.65;}
.import-receipt-times{margin:14px 0 0;display:grid;gap:8px;}
.import-receipt-times>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;}
.import-receipt-times dt{font-weight:500;}.import-receipt-times dd{margin:0;color:#655a72;}
.import-clock{margin:12px 0 0;font-size:13px;color:#70657a;font-variant-numeric:tabular-nums;}
.reveal-card-header .import-receipt{text-align:left;}

/* Approved GS identity: preserve the supplied wordmark and its optical proportions. */
.studio-header .brand{flex-shrink:0;padding:0;letter-spacing:normal;}
.brand-logo-frame{position:relative;display:block;width:236px;height:54px;overflow:hidden;}
.brand-logo-frame .giveaway-brand-logo{position:absolute;left:0;top:50%;display:block;width:100%;height:auto;max-width:none;transform:translateY(-50%);}
@media(max-width:640px){.brand-logo-frame{width:166px;height:40px;}}
@media(max-width:380px){.brand-logo-frame{width:40px;height:40px;}.brand-logo-frame .giveaway-brand-logo{width:40px;height:40px;object-fit:contain;}}

/* Keep celebration actions within the result card and details in their own dialog. */
#winner-stage.winner-announcement .reveal-card{box-shadow:0 12px 32px #4b277d0e,0 3px 10px #4b277d06;}
#winner-stage .winning-comment{border:1px solid #e5d8fb;box-shadow:0 5px 14px #6d43a410;}
#winner-stage .reveal-card-header{align-items:center;padding:14px 0;}
#winner-stage .draw-details-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 14px;border-radius:10px;flex-shrink:0;}
#winner-stage .reveal-card>.result-toolbar{order:3;border-top:1px solid #e9dff4;padding:18px 0 22px;gap:14px;}
.reveal-card>.result-toolbar .share-moment-heading h3{font-size:18px;}
.reveal-card>.result-toolbar .share-moment-heading p{font-size:13px;}
dialog.draw-details-modal{position:fixed;inset:0;margin:auto;width:min(620px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 40px);padding:0;overflow:hidden;text-align:left;}
dialog.draw-details-modal[open]{display:flex;flex-direction:column;}
.draw-details-modal .recovery-modal-header,.draw-details-modal .recovery-modal-footer{flex:0 0 auto;}
.draw-details-modal .draw-details-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
.draw-details-scroll>h3{font-size:17px;margin:0 0 16px;}
.draw-details-summary{margin:0;display:grid;gap:0;}
.draw-details-summary>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:12px;padding:12px 0;border-bottom:1px solid #eee5f6;}
.draw-details-summary dt{font-weight:500;color:#655a72;}
.draw-details-summary dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere;white-space:pre-wrap;}
.draw-details-summary dd small{display:block;color:#70657a;font-weight:400;margin-top:4px;}
.draw-details-modal .import-receipt{margin-bottom:0;}
body:has(.draw-details-modal[open]){overflow:hidden;}
@media(max-width:600px){#winner-stage .reveal-card-header{flex-direction:row;flex-wrap:wrap;gap:12px;}#winner-stage .reveal-card>.result-toolbar{padding:18px 0 20px;}.draw-details-summary>div{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);}}

/* Celebration particles sit above result cards without intercepting any controls. */
#winner-stage.winner-announcement{position:relative;isolation:isolate;}
#winner-stage.winner-announcement>.winner-content{position:relative;z-index:1;}
#winner-stage.winner-announcement>.confetti{z-index:2;pointer-events:none;}

/* Horizontal portrait reveal: scoped separately so the classic reel remains restorable. */
#winner-stage .face-spinner { max-width:900px; }
.face-carousel { position:relative;overflow:hidden;width:100%;padding:32px 0 22px;margin:20px auto;background:linear-gradient(120deg,#f1e7ff99,#fff8f2,#fce9e899);border:1px solid #e7d9f4;border-radius:24px;box-shadow:inset 0 1px 0 #fff;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent); }
.face-carousel-track { position:relative;display:flex;gap:24px;width:max-content;will-change:transform; }
.face-carousel-item { flex:0 0 128px;width:128px;text-align:center;padding:10px 0; }
.face-carousel-portrait { position:relative;display:grid;place-items:center;width:112px;height:112px;margin:auto;border:4px solid white;border-radius:50%;background:linear-gradient(145deg,#e6d5ff,#f8dcdd);box-shadow:0 6px 18px #56277c20;color:#7540bc;font-size:36px;font-weight:750;transition:box-shadow .25s,border-color .25s,scale .25s; }
.face-carousel-portrait img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%; }
.face-carousel-username { display:block;margin-top:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:600;color:#59436f;padding:0 3px; }
.face-carousel-marker { position:absolute;top:12px;left:calc(50% - 7px);border-left:7px solid transparent;border-right:7px solid transparent;border-top:10px solid #9b56df;z-index:1; }
.face-carousel-item.is-selected .face-carousel-portrait { border-color:#b389ed;box-shadow:0 0 0 5px #e8d6ff,0 8px 26px #9752d52e;scale:1.06; }
#winner-stage .face-spinner .skip-reveal { display:inline-flex;align-items:center;gap:8px; }
@media(max-width:480px) { .face-carousel-track {gap:16px;} .face-carousel-item {width:104px;flex-basis:104px;} .face-carousel-portrait {width:88px;height:88px;font-size:30px;} .face-carousel {padding:28px 0 14px;border-radius:18px;} }

/* Spinner preview shares the same partials and lifecycle as a real result. */
#winner-stage .start-reveal {display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 26px;border-radius:12px;font-size:18px;}
#winner-stage .start-reveal[hidden], #winner-stage .skip-reveal[hidden] {display:none!important;}
.spinner-preview-variants {display:flex;gap:12px;flex-wrap:wrap;margin:22px 0;}
#winner-stage.spinner-preview-stage {position:relative;isolation:isolate;background:linear-gradient(125deg,#f4ebff,#fffaf6);padding:24px;border:1px solid #e3d0f7;border-radius:24px;box-shadow:0 10px 30px #5022780c;}
.spinner-preview-result {text-align:center;padding:35px 12px;}
.spinner-preview-result img {border-radius:50%;margin:20px;border:4px solid #d8baf5;}
.spinner-preview-result h3 {margin-bottom:24px;}

/* Brief cheers occupy their own strip, clear of participant portraits and buttons. */
#winner-stage .face-spinner {position:relative;}
.spinner-cheers {position:relative;height:46px;max-width:660px;margin:0 auto;pointer-events:none;}
.spinner-cheers>span {position:absolute;top:0;left:5%;max-width:90%;padding:8px 16px;border:1px solid #e6cff7;border-radius:18px 18px 18px 5px;background:linear-gradient(115deg,#f0dfff,#fff1e4);box-shadow:0 4px 12px #75469d10;color:#713c9b;font-size:clamp(14px,2.5vw,17px);font-weight:700;opacity:0;transform:translateY(6px) scale(.96);transition:opacity .2s,transform .25s;}
.spinner-cheers>span:nth-child(2) {left:auto;right:5%;border-radius:18px 18px 5px 18px;background:linear-gradient(115deg,#ffebda,#ffefed);color:#9a5535;}
.spinner-cheers>span:nth-child(3) {left:18%;background:linear-gradient(115deg,#e1f4ed,#f1f9e7);color:#33755c;}
.spinner-cheers>span:nth-child(4) {left:auto;right:12%;}
.spinner-cheers>span.is-visible {opacity:1;transform:translateY(0) scale(1);}
@media(prefers-reduced-motion:reduce) {.spinner-cheers {display:none;} .spinner-cheers>span {transition:none;}}

.spinner-preview-options {display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 24px;}
.spinner-preview-options .form-select {min-width:110px;}
.spinner-preview-winners {display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:16px 0 24px;}
.spinner-preview-winner {flex:0 1 210px;min-width:0;padding:12px;border:1px solid #e4d6f4;border-radius:18px;background:#ffffff90;box-shadow:0 5px 16px #603b8610;}
.spinner-preview-winner h3 {font-size:18px;overflow-wrap:anywhere;margin:0 0 12px;}
@media(max-width:480px) {.spinner-preview-winner {flex-basis:100%;}}

/* Multiple winners collect above the queue as their portraits cross the marker. */
.spinner-announcement {min-height:122px;display:grid;align-items:center;}
.spinner-announcement .spinner-question[hidden], .spinner-selected[hidden] {display:none!important;}
.spinner-selected-label {font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#795298;margin-bottom:10px;}
.spinner-selected-accounts {display:flex;justify-content:safe center;gap:12px;overflow-x:auto;padding:6px 8px 12px;min-height:102px;max-width:100%;scrollbar-width:thin;}
.spinner-selected-account {position:relative;flex:0 0 112px;max-width:112px;padding:8px 5px;border:1px solid #dfc8f2;border-radius:15px;background:linear-gradient(140deg,#fff,#f4e7ff);box-shadow:0 5px 14px #8249af14;animation:winner-collect .5s cubic-bezier(.2,.7,.2,1) both;}
.spinner-selected-account .face-carousel-portrait {width:52px;height:52px;font-size:22px;border-width:2px;box-shadow:0 0 0 3px #eddcff;}
.spinner-selected-account .face-carousel-username {margin-top:8px;font-size:11px;}
.spinner-selected-rank {position:absolute;top:4px;right:6px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ffcf63;color:#6f4616;font-size:11px;font-weight:800;}
.face-carousel-item.is-picked .face-carousel-portrait {animation:winner-pick-flash .55s ease-out;}
@keyframes winner-collect {from {opacity:0;transform:translateY(14px) scale(.85);} to {opacity:1;transform:translateY(0) scale(1);}}
@keyframes winner-pick-flash {40% {box-shadow:0 0 0 8px #efc45a70,0 0 28px #c18afa80;border-color:#ffd56c;}}
@media(prefers-reduced-motion:reduce) {.spinner-selected-account,.face-carousel-item.is-picked .face-carousel-portrait {animation:none;}}

/* Compact the face spinner while retaining readable names and comfortable controls. */
#winner-stage .face-spinner {max-width:800px;padding-top:22px;padding-bottom:18px;}
#winner-stage .face-spinner .spinner-question {font-size:clamp(26px,3.6vw,36px);margin:8px 0 18px;}
.face-spinner .spinner-announcement {min-height:104px;}
.face-spinner .face-carousel {padding:26px 0 16px;margin:12px auto;border-radius:20px;}
.face-spinner .face-carousel-track {gap:20px;}
.face-spinner .face-carousel-item {flex-basis:112px;width:112px;padding:8px 0;}
.face-spinner .face-carousel-portrait {width:94px;height:94px;font-size:30px;border-width:3px;}
.face-spinner .face-carousel-username {margin-top:10px;}
.face-spinner .spinner-cheers {height:40px;}
.face-spinner .spinner-selected-accounts {min-height:86px;gap:10px;padding:4px 6px 8px;}
.face-spinner .spinner-selected-account {flex-basis:100px;max-width:100px;padding:6px 4px;}
.face-spinner .spinner-selected-account .face-carousel-portrait {width:44px;height:44px;font-size:20px;border-width:2px;}
.face-spinner .spinner-selected-account .face-carousel-username {margin-top:6px;font-size:11px;}
#winner-stage .face-spinner>p[role=status] {margin:14px auto;}
@media(max-width:480px) {
    .face-spinner .face-carousel-track {gap:14px;}
    .face-spinner .face-carousel-item {flex-basis:94px;width:94px;}
    .face-spinner .face-carousel-portrait {width:78px;height:78px;font-size:26px;}
    .face-spinner .face-carousel {padding:24px 0 12px;}
    .face-spinner .spinner-selected-account {flex-basis:92px;max-width:92px;}
    .face-spinner .spinner-selected-account .face-carousel-portrait {width:42px;height:42px;font-size:19px;}
}

.spinner-substitutes[hidden] {display:none!important;}
.spinner-substitutes .spinner-selected-label {color:#628173;}
.spinner-selected-account.is-substitute {background:linear-gradient(130deg,#fff,#eaf5ee);border-color:#c9dfd2;box-shadow:none;}
.spinner-selected-account.is-substitute .spinner-selected-rank {background:#d5eadc;color:#3a6751;}
.face-carousel-item.is-substitute .face-carousel-portrait {border-color:#9dcab0;box-shadow:0 0 0 4px #dceee2;animation:none;}
.spinner-preview-substitute {background:#edf6f0;}

/* Standalone draw record uses the same header, panels and footer as recovery dialogs. */
.draw-record-card {max-width:780px;margin:24px auto 40px;background:#fff;border:1px solid #e4d5f2;border-radius:22px;overflow:hidden;box-shadow:0 12px 35px #5936810c;}
.draw-record-header {display:flex;align-items:center;gap:16px;padding:26px 30px;background:linear-gradient(115deg,#eee0fb,#f4e8fc);border-bottom:1px solid #e9d9f6;}
.draw-record-header .eyebrow {font-size:11px;margin:0 0 7px;}
.draw-record-header h1 {margin:0;font-size:clamp(23px,4vw,30px);line-height:1.25;overflow-wrap:anywhere;}
.draw-record-icon {display:grid;place-items:center;flex:0 0 46px;height:46px;background:#ffffff75;border-radius:13px;color:#8852cf;}
.draw-record-icon .action-icon {width:26px;height:26px;}
.draw-record-body {padding:26px 30px;}
.draw-record-meta {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:26px;}
.draw-record-meta time {font-size:13px;color:#68718b;}
.draw-record-selection {margin:0 0 26px;}
.draw-record-selection h2 {font-size:18px;margin:0 0 14px;}
.draw-record-winners {list-style:none;padding:0;margin:0;display:grid;gap:14px;}
.draw-record-winners>li {padding:18px;background:linear-gradient(120deg,#f8f3ff,#fffcf8);border:1px solid #e9def4;border-radius:14px;}
.draw-record-person {display:flex;align-items:center;gap:12px;overflow-wrap:anywhere;}
.draw-record-avatar {display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:50%;background:#eaddfa;color:#8151bd;font-size:20px;font-weight:700;}
.draw-record-winners blockquote {margin:12px 0 0;padding:12px 14px;border-left:3px solid #c9a5ec;background:#fff9;border-radius:0 10px 10px 0;font-size:14px;line-height:1.6;overflow-wrap:anywhere;}
.draw-record-substitutes {padding-left:24px;line-height:1.9;color:#53617a;}
.draw-record-body .optional-settings {margin-bottom:24px;}
.draw-record-share {margin:24px 0 4px;padding:18px;background:#f8f4fd;border:1px solid #e3d2f6;border-radius:14px;}
.draw-record-link {display:flex;align-items:center;gap:10px;margin-top:12px;}
.draw-record-link input {min-width:0;background:#fff;}
.draw-record-link button {flex-shrink:0;display:inline-flex;align-items:center;gap:7px;min-height:44px;}
.draw-record-copy-status {font-size:13px;margin:6px 0;min-height:18px;color:#596b60;}
.draw-record-share .form-hint {margin:0;line-height:1.6;}
.draw-record-footer {display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:20px 30px;border-top:1px solid #e8ddf3;background:#fefcff;}
.draw-record-footer a {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;}
@media(max-width:560px){.draw-record-header {padding:22px 18px;gap:12px;}.draw-record-body {padding:22px 18px;}.draw-record-footer {padding:18px;flex-wrap:wrap;}.draw-record-footer a {flex:1 1 100%;}.draw-record-link {align-items:stretch;flex-direction:column;}.draw-record-link button {align-self:flex-end;}}

.draw-record-link-field {margin-top:12px;}
.draw-record-link-field .form-control {background:#fff;}

/* Shared draw editor: visible groups and a live, navigable summary. */
.draw-setup .setup-rules {background:transparent;border:0;box-shadow:none;padding:0;gap:18px;display:flex;flex-direction:column;}
.draw-setup .rule-group {padding:24px;border:1px solid #dfcef6;border-radius:18px;background:linear-gradient(125deg,#fcf9ff,#fffaf5);box-shadow:0 5px 18px #57318a08;}
.draw-setup .rule-group h2 {display:flex;align-items:center;gap:12px;font-size:21px;margin:0 0 22px;}
.draw-setup .rule-group h2>span {display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e9dcff;color:#6932ca;font-size:13px;flex-shrink:0;}
.draw-setup .rule-selections {border-top:3px solid #8751de;}
.draw-setup .rule-comments {border-top:3px solid #e8a05c;}
.draw-setup .rule-entries {border-top:3px solid #50a68d;}
.draw-setup .rule-accounts {border-top:3px solid #9180d5;}
.draw-setup .rule-identity h2 {font-size:17px;margin-bottom:16px;}
.draw-setup .rule-identity .form-control {margin-bottom:14px;}
.draw-setup .rule-requirements {border-top:1px solid #e6dbf2;margin-top:22px;padding-top:22px;}
.draw-setup .rule-requirements h3 {font-size:17px;margin:0 0 8px;}
.draw-setup .form-hint {line-height:1.55;color:#58627c;}
.draw-setup .form-switch {padding:16px 0;margin:0!important;border-bottom:1px solid #e7def1;}
.draw-setup .rule-entries>p {margin:14px 0 0!important;}
.draw-setup .manual-check-note,.winner-follow-check {padding:14px 16px;border-left:3px solid #dca74b;background:#fff3da;border-radius:8px;font-size:14px;line-height:1.6;margin:14px 0 24px;}
.draw-setup .setup-summary {background:linear-gradient(145deg,#f0e5ff,#fff9ee);border-color:#cdb0f1;box-shadow:0 10px 28px #61348a10;}
.chosen-rules {border-top:1px solid #daccE9;padding-top:18px;margin:18px 0;}
.chosen-rules h3 {font-size:16px;margin-bottom:12px;}
.chosen-rules dl>div {display:block!important;padding:10px 0;border-bottom:1px solid #e5daee;}
.chosen-rules dt button {border:0;background:none;padding:0;color:#532d86;text-align:left;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.chosen-rules dd {margin:5px 0 0!important;text-align:left!important;font-size:14px;color:#172441;overflow-wrap:anywhere;}
.chosen-rules small {display:block;color:#62677d;margin-top:12px;}
.draw-settings>summary {padding:18px 22px;background:linear-gradient(110deg,#ecddff,#fff0df);border:1px solid #d7bcef;border-radius:14px;font-weight:700;color:#532b87;}
#winner-stage.winner-announcement .reveal-card {background:radial-gradient(ellipse at 50% 32%,#fffdfb 0%,#fff9f2a0 36%,transparent 65%),linear-gradient(125deg,#e2ccff,#f8e8ff 48%,#ffdfbc);border-color:#ceb0f2;box-shadow:0 14px 40px #5d2d951a;}
#winner-stage .announcement-heading .eyebrow {padding:7px 13px;border-radius:30px;background:#7436c8;color:white;letter-spacing:.13em;}
#winner-stage .winning-comment {background:#fff9;border:1px solid #d8c0f5;box-shadow:0 5px 15px #6835a014;}
#winner-stage .winner-avatar {box-shadow:0 0 0 9px #ffffff70,0 12px 30px #713f9a20;}
#winner-stage .portrait-confetti {overflow:hidden;inset:-30px -140px;}
#winner-stage .portrait-confetti i {animation:celebration-drift 4.6s linear infinite;opacity:0;}
#winner-stage .portrait-confetti i:nth-child(2n){animation-delay:-2.3s;animation-duration:5.2s;}
#winner-stage .portrait-confetti i:nth-child(3n){animation-delay:-1.1s;}
#winner-stage .portrait-confetti i:nth-child(5n){animation-delay:-3.5s;}
@keyframes celebration-drift {0%{translate:0 -90px;rotate:0deg;opacity:0;}15%{opacity:1;}85%{opacity:1;}100%{translate:18px 170px;rotate:280deg;opacity:0;}}
.celebration-toggle {display:block;margin:12px auto 0;border:0;background:transparent;color:#5d3689;font-size:12px;text-decoration:underline;text-underline-offset:3px;min-height:30px;}
.celebration-paused .portrait-confetti i {animation-play-state:paused!important;}
@media(max-width:600px){.draw-setup .rule-group {padding:18px;}.draw-setup .setup-sidebar{position:static;}#winner-stage .portrait-confetti{inset:-20px -65px;}}
@media(prefers-reduced-motion:reduce){#winner-stage .portrait-confetti i{animation:none;opacity:0;}.celebration-toggle{display:none;}}
.draw-setup .rule-identity {display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;}
.draw-setup .rule-identity h2 {grid-column:1/-1;}
.draw-setup .rule-identity label[for=Input_Title]{grid-column:1;grid-row:2;}
.draw-setup .rule-identity #Input_Title{grid-column:1;grid-row:3;}
.draw-setup .rule-identity label[for=Input_Prize]{grid-column:2;grid-row:2;}
.draw-setup .rule-identity #Input_Prize{grid-column:2;grid-row:3;}
.draw-setup .rule-identity .field-error:empty{display:none;}
.chosen-rules dl>div {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(50px,.7fr);gap:10px;padding:8px 0;}
.chosen-rules dd {margin:0!important;text-align:right!important;}
@media(max-width:600px){.draw-setup .rule-identity {display:block;}.draw-setup .setup-summary {position:static;}.chosen-rules dl>div {grid-template-columns:1fr 1fr;}}

/* Keep the draw controls alongside the editor while the rules scroll. */
@media (min-width: 761px) {
    .draw-setup .setup-sidebar {
        position: sticky;
        top: 20px;
        align-self: start;
        max-height: none;
        overflow: visible;
    }
}

/* One shared, bounded confetti layer for every winner layout. */
#winner-stage > .confetti {display:none;}
#winner-stage.is-revealed > .confetti {display:block;}
#winner-stage > .confetti i {animation:confetti-fall 6s var(--delay) linear infinite;background:#a16be9;opacity:0;}
#winner-stage > .confetti i:nth-child(3n) {background:#ffbd4b;}
#winner-stage > .confetti i:nth-child(3n + 1) {background:#ee91b7;width:7px;height:11px;}
#winner-stage > .confetti i:nth-child(4n) {border-radius:50%;width:8px;height:8px;background:#6fc7b2;}
@keyframes confetti-fall {0%{transform:translateY(0) rotate(0);opacity:0;}5%{opacity:.85;}85%{opacity:.85;}100%{transform:translateY(1100px) rotate(var(--turn));opacity:0;}}
#winner-stage.celebration-paused > .confetti i {animation-play-state:paused;}
#winner-stage .celebration-toggle {position:relative;z-index:3;}
@media(prefers-reduced-motion:reduce){#winner-stage.is-revealed > .confetti{display:none;}#winner-stage > .confetti i{animation:none;}}
.import-email-choice {margin:18px 0 0;padding:15px 16px;border:1px solid #e5d6f1;background:#f8f1fd;border-radius:12px;}
.import-email-choice .form-check {margin:0;min-height:24px;}
.import-email-choice .form-hint {margin:7px 0 0;font-size:13px;line-height:1.5;}
.import-email-modal .recovery-modal-header h2 {display:flex;align-items:center;gap:10px;}
.email-recovery-note {padding:14px 16px;margin:18px 0;background:#f5edff;border:1px solid #e4d4f5;border-radius:12px;font-size:14px;line-height:1.6;}
.email-recovery-note p {margin:6px 0 0;}
.email-save-spinner {width:16px;height:16px;border:2px solid #fff7;border-top-color:white;border-radius:50%;animation:email-save-spin .8s linear infinite;}
@keyframes email-save-spin {to{transform:rotate(360deg);}}
@media(prefers-reduced-motion:reduce){.email-save-spinner{animation:none;}}
