/* Jornada de ativação: isolada da vitrine All Black / All White e do painel existente. */
.onb-shell{--onb-ink:#f7f5fc;--onb-dim:#aca7bc;--onb-line:#34313c;--onb-purple:#b69af5;color:var(--onb-ink);background:#0d0d11;min-height:100svh;font-family:inherit;overflow-x:hidden}
.onb-shell *, .onb-shell *::before,.onb-shell *::after{box-sizing:border-box}
.onb-shell button,.onb-shell input,.onb-shell textarea,.onb-shell select{font:inherit}
.onb-shell button{cursor:pointer}
.onb-shell :is(button,input,select,textarea):focus-visible{outline:2px solid #d9beff;outline-offset:3px}
.onb-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:27px clamp(20px,5vw,56px);border-bottom:1px solid #22212b}
.onb-wordmark{font-weight:850;font-size:18px;letter-spacing:-.055em;color:#f9f9fb}
.onb-wordmark span{color:#b7a1ed}.onb-wordmark i{font-style:normal;color:#ab87f6}
.onb-top-note{font-size:10px;font-weight:760;letter-spacing:.18em;color:#85808e}
.onb-main{width:min(1030px,100% - 36px);margin:0 auto;padding:37px 0 28px}
.onb-progress-caption{display:flex;justify-content:space-between;color:#a7a0b4;font-size:12px;font-weight:650;letter-spacing:.01em;margin-bottom:12px}
.onb-progress{height:5px;width:100%;background:#282631;overflow:hidden;border-radius:10px;margin-bottom:27px}
.onb-progress>div{height:100%;border-radius:10px;background:linear-gradient(90deg,#9678e7,#d4affd);transition:width .45s cubic-bezier(.2,.85,.25,1)}
.onb-card{min-height:590px;border:1px solid #35313d;border-radius:29px;background:radial-gradient(circle at 8% 8%,#2f273d60,transparent 40%),#17171d;box-shadow:0 30px 70px #0005;overflow:hidden}
.onb-stage,.onb-intro{display:grid;grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);align-items:center;gap:clamp(14px,3vw,44px);padding:clamp(26px,5vw,62px)}
.onb-scene{align-self:stretch;display:flex;justify-content:center;align-items:center;position:relative;background:radial-gradient(circle at 50% 50%,#604a9b30,transparent 65%);min-height:290px}
.onb-art{width:min(100%,410px);height:auto;max-height:310px;filter:drop-shadow(0 22px 16px #09091059);animation:onb-arrive .55s ease both}
@keyframes onb-arrive{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.onb-copy{max-width:515px;min-width:0}
.onb-eyebrow{display:block;color:#c0a8ff;font-size:11px;letter-spacing:.15em;font-weight:850;margin-bottom:18px}
.onb-copy h1,.onb-done h1{font-size:clamp(28px,3.8vw,43px);letter-spacing:-.062em;line-height:1.12;margin:0 0 15px;color:#f8f7fa;font-weight:820}
.onb-copy>p,.onb-done>p{line-height:1.63;font-size:14px;color:#ada8b7;margin:0 0 25px;max-width:450px}
.onb-inline-note,.onb-side-tip{font-size:12px;color:#aca5b9;line-height:1.6}
.onb-inline-note{display:flex;align-items:center;gap:9px;margin:20px 0 29px}
.onb-note-dot{width:8px;height:8px;border-radius:50%;background:#b99afd;box-shadow:0 0 0 4px #b99afd19;flex:none}
.onb-fields{display:flex;flex-direction:column;gap:15px;width:100%}
.onb-field{display:flex;flex-direction:column;gap:7px;min-width:0;color:#e8e6ed;font-size:12px;font-weight:650}
.onb-field em{font-style:normal;font-weight:500;color:#827c90}
.onb-field input,.onb-field select,.onb-field textarea,.onb-rate-cell input{width:100%;min-width:0;border:1px solid #47414f;background:#24232c;color:#fff;border-radius:11px;min-height:44px;padding:11px 13px;font-size:16px;outline:none;transition:border-color .16s,box-shadow .16s}
.onb-field textarea{resize:vertical;min-height:73px}
.onb-field input::placeholder,.onb-field textarea::placeholder,.onb-rate-cell input::placeholder{color:#77717f}
.onb-field :is(input,textarea,select):focus,.onb-rate-cell input:focus{border-color:#b398f3;box-shadow:0 0 0 3px #a389ec23}
.onb-primary,.onb-secondary,.onb-text-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:45px;padding:12px 18px;border-radius:11px;font-size:13px;font-weight:800;border:1px solid transparent;text-align:center;transition:transform .16s,background .16s}
.onb-primary{background:#b69af5;color:#191224;border-color:#c7aeff}.onb-primary:hover{background:#d0b6ff;transform:translateY(-1px)}
.onb-primary span{font-size:17px}.onb-secondary{background:#26242e;color:#d5cede;border-color:#46404f}.onb-secondary:hover{background:#34313e}
.onb-text-button{background:transparent;color:#b5a6d2;border:0;padding-inline:8px}.onb-text-button:hover{text-decoration:underline}
.onb-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.onb-actions-wrap{flex-wrap:wrap}
.onb-actions-wrap .onb-primary{margin-left:auto}
.onb-brand-upload{display:flex;align-items:center;gap:17px;padding:14px;border:1px solid #393440;border-radius:15px;background:#212029}
.onb-brand-preview{display:grid;place-items:center;width:97px;min-width:97px;height:92px;border-radius:12px;border:1px solid #56505d;background:linear-gradient(135deg,#19191e 50%,#34333c 50%);overflow:hidden}
.onb-brand-preview img{max-width:90%;max-height:80%;object-fit:contain}.onb-logo-placeholder{font-size:11px;letter-spacing:.04em;color:#d8c2ff;font-weight:800;text-align:center}
.onb-brand-upload strong{display:block;font-size:13px}.onb-brand-upload p{font-size:11px;line-height:1.5;color:#b4adbc;margin:5px 0 8px}
.onb-brand-upload input[type=file]{position:absolute;width:1px;height:1px;opacity:0}
.onb-upload{display:inline-block;border-radius:8px;padding:8px 13px;border:1px solid #726389;background:#332d41;color:#f6eaff;font-size:12px;font-weight:750;cursor:pointer}
.onb-brand-upload small{display:block;overflow-wrap:anywhere;color:#8d8797;font-size:10px;margin-top:6px}
.onb-choice-label{font-size:12px;color:#ddd6e6;font-weight:750}
.onb-theme-grid,.onb-stock-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.onb-theme,.onb-stock-option{display:block;position:relative;min-width:0;cursor:pointer}
.onb-theme input,.onb-stock-option input{position:absolute;opacity:0;width:1px;height:1px}
.onb-theme-card,.onb-stock-content{display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid #47414e;border-radius:13px;background:#22212a;transition:border-color .18s,background .18s}
.onb-theme input:checked+.onb-theme-card,.onb-stock-option input:checked+.onb-stock-content{border-color:#b99aff;background:#31273f;box-shadow:0 0 0 1px #b99aff77}
.onb-theme input:focus-visible+.onb-theme-card,.onb-stock-option input:focus-visible+.onb-stock-content{outline:2px solid #ceafff;outline-offset:3px}
.onb-theme-card strong,.onb-stock-content strong{font-size:12px;color:#f3f0f8}.onb-theme-card small,.onb-stock-content small{font-size:11px;line-height:1.45;color:#aaa4b7}
.onb-theme-mini{height:46px;display:flex;align-items:flex-end;gap:7px;padding:9px;border-radius:7px}.onb-theme-mini i{display:block;width:27%;height:21px;border-radius:4px}.onb-theme-mini i:nth-child(2){height:28px}
.onb-theme-mini.dark{background:#08080b;border:1px solid #57545c}.onb-theme-mini.dark i{background:#414048}
.onb-theme-mini.white{background:#f8f8f9;border:1px solid #dad9df}.onb-theme-mini.white i{background:#dddde3}
.onb-rate-intro,.onb-side-tip{padding:11px 13px;background:#24212d;border:1px solid #3d354d;border-radius:12px;font-size:12px;line-height:1.55;color:#bcb3ca}
.onb-rate-intro strong{color:#e8d5fa}
.onb-rate-top{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.onb-rate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:215px;overflow-y:auto;padding:2px 4px 3px 1px}
.onb-rate-cell{min-width:0;display:flex;flex-direction:column;gap:5px;font-size:12px;color:#d8cfec}
.onb-rate-cell input{padding:8px 10px;min-height:40px;font-size:16px}
.onb-stock-content{min-height:185px;align-items:flex-start;padding:14px}
.onb-stock-illustration{width:100%;display:grid;place-items:center;height:115px;background:radial-gradient(circle,#59487a36,transparent 76%);border-radius:12px}
.onb-stock-illustration .onb-art{height:100px;max-height:100px;width:auto}
.onb-error{margin-top:12px;border:1px solid #ad5a67;border-radius:9px;padding:11px;background:#552735;color:#ffd7db;font-size:12px}
.onb-footer{text-align:center;color:#706a7d;font-size:11px;padding:23px 0}
.onb-done{display:flex;flex-direction:column;align-items:center;text-align:center;padding:35px 25px 52px}
.onb-confetti-scene{position:relative;width:min(380px,100%);margin:0 auto 3px}
.onb-confetti-scene .onb-art{max-height:250px}
.onb-done-check{display:grid;place-items:center;position:absolute;top:12px;right:23%;width:53px;height:53px;border-radius:50%;font-size:29px;font-weight:800;background:#c9afff;color:#1b1630;box-shadow:0 9px 35px #bba0fa50;animation:onb-arrive .7s both}
.onb-done>p{margin-inline:auto}.onb-done-actions{display:flex;gap:11px;flex-wrap:wrap;justify-content:center}
@media(max-width:790px){.onb-card{min-height:0}.onb-stage,.onb-intro{grid-template-columns:1fr;gap:3px;padding:24px}.onb-scene{min-height:120px;max-height:190px}.onb-scene .onb-art{max-height:185px}.onb-intro .onb-scene{max-height:260px}.onb-intro .onb-art{max-height:248px}.onb-copy{max-width:100%}.onb-main{padding-top:23px}.onb-top{padding:20px}.onb-progress{margin-bottom:19px}}
@media(max-width:420px){.onb-stage,.onb-intro{padding:19px}.onb-scene{max-height:156px}.onb-scene .onb-art{max-height:156px}.onb-copy h1{font-size:30px}.onb-brand-upload{gap:9px;padding:10px}.onb-brand-preview{width:74px;min-width:74px;height:78px}.onb-rate-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.onb-actions .onb-primary,.onb-actions .onb-secondary{padding:11px 13px}.onb-stock-content{padding:10px}}
@media(prefers-reduced-motion:reduce){.onb-art,.onb-done-check{animation:none}.onb-shell *{transition-duration:0s!important}}

/* Pequena celebração ao salvar cada etapa, sem sobrecarregar a interface. */
.onb-celebrate{position:fixed;z-index:30;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:16px;max-width:calc(100vw - 36px);padding:18px 25px;border:1px solid #745d9b;border-radius:19px;background:#342941;box-shadow:0 24px 90px #0009;color:#fff;animation:onb-cheer 1.15s ease both;pointer-events:none}
.onb-celebrate strong{font-size:15px;line-height:1.3;white-space:nowrap}
.onb-celebrate-mark{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:#c7afff;color:#241636;font-size:27px;font-weight:900}
@keyframes onb-cheer{0%{opacity:0;transform:translate(-50%,-45%) scale(.93)}15%,70%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-54%) scale(1.02)}}
@media(prefers-reduced-motion:reduce){.onb-celebrate{animation:none}}
