/* Preserved v9 participant theme. Adapters below retain the new research protocol. */

    :root {
      --ink:#20222d; --muted:#7b7f90; --soft:#f6f7fb; --paper:rgba(255,255,255,.86);
      --line:#e9ebf2; --violet:#6857dc; --violet-2:#9c8ff1; --mint:#dff5ed;
      --peach:#fff0e7; --blue:#e8efff; --shadow:0 24px 70px rgba(36,39,75,.12);
      --radius:24px;
    }
    *{box-sizing:border-box}
    html,body{margin:0;min-height:100%;background:var(--soft);color:var(--ink);font:14px/1.65 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
    body{overflow-x:hidden} button,input,textarea{font:inherit} button{cursor:pointer}
    button:disabled{cursor:wait;opacity:.55}.hidden{display:none!important}:focus-visible{outline:3px solid rgba(104,87,220,.38);outline-offset:3px}
    .page{min-height:100vh}.center-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:radial-gradient(circle at 10% 0,#fff0e8 0,transparent 30rem),radial-gradient(circle at 100% 100%,#e7e9ff 0,transparent 34rem),var(--soft)}
    .eyebrow{color:#7667d3;font-size:11px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.muted{color:var(--muted)}
    .card{border:1px solid rgba(255,255,255,.9);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
    .primary{border:0;border-radius:14px;padding:13px 19px;color:#fff;background:linear-gradient(135deg,var(--violet),#9385ed);box-shadow:0 12px 24px rgba(104,87,220,.22);font-weight:800;transition:transform .18s ease,box-shadow .18s ease}.primary:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(104,87,220,.28)}
    .secondary{border:1px solid var(--line);border-radius:13px;padding:12px 16px;color:#5f6375;background:#fff;font-weight:700}.ghost{border:0;background:transparent;color:#6f63cc;padding:10px 0;font-weight:700}
    .text-input{width:100%;border:1px solid var(--line);border-radius:13px;padding:13px 14px;outline:0;color:var(--ink);background:rgba(255,255,255,.8)}.text-input:focus{border-color:#a198ee;box-shadow:0 0 0 4px rgba(104,87,220,.1)}
    .input-label{display:block;margin:0 0 7px;color:#616576;font-size:12px;font-weight:750}.form-row{margin-top:16px}.form-error{display:none;margin-top:12px;padding:11px 13px;border-radius:12px;color:#a84f56;background:#fff0f0;font-size:12px}.form-error.show{display:block}

    .landing{width:min(1100px,100%);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.landing-copy{padding:clamp(30px,6vw,72px)}.landing h1{max-width:600px;margin:15px 0 17px;font-size:clamp(34px,5vw,63px);line-height:1.08;letter-spacing:-.065em}.landing h1 em{color:var(--violet);font-style:normal}.landing-lede{max-width:550px;color:var(--muted);font-size:15px}.meta-row{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0}.meta{padding:8px 11px;border:1px solid var(--line);border-radius:99px;color:#686c7c;background:rgba(255,255,255,.65);font-size:12px}.entry-box{max-width:410px;margin-top:29px}.entry-actions{display:flex;align-items:center;gap:18px;margin-top:17px}.landing-visual{position:relative;display:grid;place-items:center;min-height:560px;padding:30px;background:linear-gradient(145deg,#e8e8fb,#fff1e8 58%,#def3ec);overflow:hidden}.landing-visual:before,.landing-visual:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.48);filter:blur(1px)}.landing-visual:before{width:230px;height:230px;top:-40px;right:-40px}.landing-visual:after{width:150px;height:150px;bottom:20px;left:-40px}.visual-stack{position:relative;z-index:1;width:min(340px,90%);aspect-ratio:.75;transform:rotate(3deg);padding:13px;border:1px solid rgba(255,255,255,.75);border-radius:28px;background:rgba(255,255,255,.44);box-shadow:0 25px 60px rgba(88,83,137,.18)}.visual-inner{height:100%;position:relative;overflow:hidden;border-radius:21px;background:linear-gradient(160deg,#fff 0 36%,#f0eeff 36%)}.visual-top{display:flex;justify-content:space-between;padding:16px;color:#9293a3;font-size:10px}.visual-avatar{position:absolute;left:50%;top:25%;width:130px;height:210px;transform:translateX(-50%);border-radius:70px 70px 25px 25px;background:linear-gradient(155deg,#8c88b9,#414158);box-shadow:0 22px 34px rgba(72,69,119,.25)}.visual-avatar:before{content:"";position:absolute;left:28px;top:-43px;width:74px;height:85px;border-radius:50%;background:#f0c2ad;box-shadow:inset 0 9px 0 #403a51}.visual-tag{position:absolute;right:16px;bottom:16px;left:16px;padding:12px;border-radius:14px;color:#626577;background:rgba(255,255,255,.82);font-size:11px}.visual-tag b{color:#333545}

    .topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 clamp(18px,4vw,58px);border-bottom:1px solid rgba(40,42,60,.07);background:rgba(255,255,255,.82);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;color:#fff;background:linear-gradient(140deg,#242635,#8c80ea);font-weight:900;box-shadow:0 8px 18px rgba(104,87,220,.2)}.brand-title{font-size:15px;font-weight:850;letter-spacing:.04em}.brand-sub{margin-left:6px;color:#999ba7;font-size:10px}.top-meta{display:flex;align-items:center;gap:10px;color:#898c9b;font-size:12px}.step-pill{padding:7px 11px;border-radius:99px;color:#6557c8;background:#f1efff;font-weight:800}.page-shell{min-height:100vh;background:radial-gradient(circle at 8% 0,#fff0e6 0,transparent 32rem),radial-gradient(circle at 96% 100%,#e8eaff 0,transparent 32rem),var(--soft)}.content{width:min(1160px,100%);margin:auto;padding:36px clamp(16px,4vw,42px) 70px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:24px}.section-head h1{margin:7px 0 8px;font-size:clamp(28px,4vw,45px);line-height:1.1;letter-spacing:-.06em}.section-head p{max-width:680px;margin:0;color:var(--muted)}.content-card{padding:clamp(23px,4vw,42px)}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px}.notice{padding:14px 16px;border-radius:15px;color:#686c7b;background:#f7f7fb;font-size:12px}.notice.mint{background:var(--mint)}.notice.peach{background:var(--peach)}

    .consent-list{display:grid;gap:12px;margin:25px 0}.consent-item{display:grid;grid-template-columns:27px 1fr;gap:11px;padding:15px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.72);color:#666a7a}.consent-item:before{content:"✓";display:grid;place-items:center;width:23px;height:23px;border-radius:8px;color:#5f54c3;background:#f0efff;font-weight:900}.consent-check{display:flex;align-items:flex-start;gap:9px;margin-top:21px;color:#4e5262;font-weight:750}.consent-check input{accent-color:var(--violet);margin-top:4px}
    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:27px 0}.step-card{min-height:150px;padding:17px;border:1px solid var(--line);border-radius:17px;background:#fff}.step-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:13px;border-radius:11px;color:#6154c9;background:#f0efff;font-size:17px}.step-card h3{margin:0 0 5px;font-size:13px}.step-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
    .assistant-reveal{display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:center;padding:24px;border-radius:20px;background:linear-gradient(135deg,#f2efff,#fff7f2)}.assistant-reveal-avatar{display:grid;place-items:center;min-height:145px;border-radius:23px;background:linear-gradient(150deg,#7d76ad,#39394c);box-shadow:0 17px 28px rgba(63,60,105,.2)}.assistant-reveal-avatar img{width:100%;height:100%;max-height:145px;object-fit:cover;border-radius:23px}.assistant-reveal h2{margin:0 0 8px;font-size:24px;letter-spacing:-.04em}.assistant-reveal p{margin:0;color:#747887}
    .comprehension-grid{display:grid;gap:18px}.check-question{padding:19px;border:1px solid var(--line);border-radius:17px;background:#fff}.check-question h3{margin:0 0 13px;font-size:14px}.choice-grid{display:flex;flex-wrap:wrap;gap:8px}.choice{position:relative}.choice input{position:absolute;opacity:0}.choice label{display:block;padding:10px 13px;border:1px solid var(--line);border-radius:11px;color:#6d7180;background:#fff;cursor:pointer;font-size:12px}.choice input:checked+label{border-color:#8b80e7;color:#554ac0;background:#f1efff;box-shadow:0 0 0 3px rgba(104,87,220,.08)}

    .shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px}.shop-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px}.shop-head h1{margin:7px 0 7px;font-size:clamp(27px,3.6vw,42px);line-height:1.1;letter-spacing:-.06em}.shop-head p{max-width:640px;margin:0;color:var(--muted)}.count-note{white-space:nowrap;color:#999ca8;font-size:12px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.toolbar-tabs{display:flex;gap:5px;overflow:auto}.tab{border:0;border-radius:10px;padding:8px 11px;color:#9699a8;background:transparent;white-space:nowrap;font-size:12px}.tab.active{color:#fff;background:#292b3a}.toolbar select{border:1px solid var(--line);border-radius:11px;padding:9px 11px;color:#747787;background:#fff}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.product-card{position:relative;overflow:hidden;border:1px solid rgba(42,44,63,.07);border-radius:19px;padding:8px;cursor:pointer;background:rgba(255,255,255,.88);transition:.2s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(48,50,77,.11);border-color:#d8d3fb}.product-art{position:relative;display:grid;place-items:center;aspect-ratio:1.04;border-radius:14px;overflow:hidden;color:#fff;background:linear-gradient(145deg,var(--from),var(--to))}.product-art:after{content:"";position:absolute;width:145px;height:145px;border-radius:50%;right:-34px;top:-43px;background:rgba(255,255,255,.18)}.art-icon{position:relative;z-index:1;display:grid;place-items:center;width:76px;height:76px;border:1px solid rgba(255,255,255,.35);border-radius:25px;background:rgba(255,255,255,.18);font-size:29px;box-shadow:0 17px 29px rgba(22,25,56,.16)}.product-pill{position:absolute;left:10px;top:10px;z-index:1;padding:5px 8px;border-radius:99px;color:#fff;background:rgba(29,30,45,.25);backdrop-filter:blur(8px);font-size:10px;font-weight:800}.product-info{padding:11px 5px 6px}.product-brand{color:#a0a2ae;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.product-title{margin-top:4px;font-size:13px;font-weight:800}.product-tagline{overflow:hidden;margin-top:3px;white-space:nowrap;text-overflow:ellipsis;color:#878a99;font-size:11px}.product-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.price{font-size:17px;font-weight:900;letter-spacing:-.04em}.category{color:#7569d4;font-size:11px}
    .assistant-card{position:sticky;top:96px;min-height:560px;overflow:hidden;padding:20px;border-radius:25px;color:#fff;background:linear-gradient(155deg,#2d3041,#615d83);box-shadow:0 20px 50px rgba(39,40,60,.2)}.assistant-card:before{content:"";position:absolute;right:-90px;top:-90px;width:220px;height:220px;border-radius:50%;background:rgba(211,205,255,.2)}.assistant-card>*{position:relative;z-index:1}.assistant-head{display:flex;justify-content:space-between;gap:12px}.assistant-head h2{margin:0;font-size:17px}.assistant-head p{margin:4px 0 0;color:rgba(255,255,255,.56);font-size:11px}.assistant-chip{padding:5px 8px;border-radius:99px;color:#ddd8ff;background:rgba(215,209,255,.13);font-size:10px;white-space:nowrap}.assistant-portrait{display:grid;place-items:center;min-height:250px;margin:18px 0 14px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:19px;background:linear-gradient(155deg,#8b88b5,#272838)}.assistant-portrait img{width:100%;height:100%;min-height:250px;object-fit:cover}.portrait-fallback{font-size:58px;font-weight:900;color:#fff}.assistant-message{min-height:96px;padding:13px;border-radius:15px;color:rgba(255,255,255,.8);background:rgba(255,255,255,.1);font-size:12px;line-height:1.7}.assistant-message strong{display:block;margin-bottom:5px;color:#fff;font-size:11px}.assistant-progress{margin-top:18px}.progress-line{display:flex;justify-content:space-between;margin-bottom:7px;color:rgba(255,255,255,.55);font-size:10px}.progress-bar{height:5px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.14)}.progress-bar i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#c8c0ff,#8edbc9);transition:width .25s ease}.cart-button{width:100%;margin-top:16px;border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:11px;color:#fff;background:rgba(255,255,255,.12);font-weight:750}.empty-assistant{display:grid;place-items:center;min-height:330px;text-align:center;color:rgba(255,255,255,.55)}.empty-assistant .empty-mark{display:grid;place-items:center;width:64px;height:64px;margin-bottom:13px;border:1px dashed rgba(255,255,255,.35);border-radius:20px;font-size:25px}

    .modal-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:17px;background:rgba(25,26,39,.38);backdrop-filter:blur(15px)}.detail-modal{position:relative;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(300px,.72fr);width:min(1080px,100%);max-height:min(820px,calc(100vh - 34px));overflow:hidden;border:1px solid rgba(255,255,255,.82);border-radius:26px;background:rgba(255,255,255,.96);box-shadow:0 30px 90px rgba(20,21,33,.27)}.detail-scroll{min-height:0;overflow-y:auto;padding:25px;scrollbar-width:thin;scrollbar-color:#d3d0e7 transparent}.detail-scroll::-webkit-scrollbar{width:7px}.detail-scroll::-webkit-scrollbar-thumb{border-radius:99px;background:#d3d0e7}.detail-art{display:grid;place-items:center;min-height:310px;border-radius:19px;color:#fff;background:linear-gradient(145deg,var(--from),var(--to))}.detail-art .art-icon{width:105px;height:105px;font-size:38px}.detail-brand{margin-top:17px;color:#999ba6;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.detail-scroll h2{margin:6px 0 0;font-size:29px;line-height:1.13;letter-spacing:-.055em}.detail-price{margin-top:13px;font-size:28px;font-weight:900;letter-spacing:-.05em}.detail-desc{margin:9px 0;color:#747886}.detail-section{padding-top:17px;margin-top:19px;border-top:1px solid #ededef}.detail-label{margin-bottom:9px;color:#676b7b;font-size:12px;font-weight:800}.attribute-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.attribute{padding:10px 11px;border-radius:11px;background:#f7f7fa}.attribute span{display:block;color:#9a9ca8;font-size:10px}.attribute b{display:block;margin-top:2px;color:#555967;font-size:12px}.detail-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:21px}.detail-actions .primary{flex:1}.close-modal{position:absolute;z-index:2;top:13px;right:13px;width:38px;height:38px;border:0;border-radius:50%;color:#585b6a;background:rgba(255,255,255,.94);box-shadow:0 5px 15px rgba(31,33,50,.12);font-size:22px}.modal-assistant{position:relative;display:flex;flex-direction:column;min-height:0;padding:23px;color:#fff;background:linear-gradient(155deg,#2d3041,#605d83)}.modal-assistant .assistant-portrait{flex:1;min-height:300px;margin:17px 0}.modal-assistant .assistant-message{min-height:120px}.modal-assistant .assistant-footnote{margin-top:10px;color:rgba(255,255,255,.53);font-size:11px}

    .cart-list{display:grid;gap:10px;margin-top:20px}.cart-item{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:13px;padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff}.cart-item:has(.final-choice:checked){border-color:#968bec;box-shadow:0 0 0 3px rgba(104,87,220,.08)}.cart-thumb{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;color:#fff;background:linear-gradient(145deg,var(--from),var(--to));font-size:19px}.cart-item h3{margin:0;font-size:13px}.cart-item p{margin:2px 0 0;color:var(--muted);font-size:11px}.cart-item strong{font-size:15px}.final-choice-label{display:inline-flex;align-items:center;gap:5px;margin-top:6px;color:#6559c8;font-size:10px;font-weight:800}.final-choice{accent-color:var(--violet)}.remove{border:0;background:transparent;color:#a3a5b0;font-size:12px}.total-box{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding:16px;border-radius:16px;background:#f7f5ff}.total-box span{color:#777a8a}.total-box strong{color:#4c43ae;font-size:25px;letter-spacing:-.05em}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:23px}.decision{padding:18px;border:1px solid var(--line);border-radius:16px;text-align:left;background:#fff}.decision h3{margin:0 0 4px;font-size:14px}.decision p{margin:0;color:var(--muted);font-size:12px}.decision.purchase{border-color:#d8d1ff;background:#f6f4ff}

    .survey-block{padding:20px 0;border-top:1px solid var(--line)}.survey-block:first-child{border-top:0;padding-top:0}.survey-block h2{margin:0 0 16px;font-size:17px;letter-spacing:-.025em}.survey-item{margin:18px 0}.survey-question{margin-bottom:9px;color:#555967;font-size:13px;font-weight:700}.survey-options{display:flex;flex-wrap:wrap;gap:7px}.survey-option{position:relative}.survey-option input{position:absolute;opacity:0}.survey-option label{display:block;min-width:64px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;color:#777a88;background:#fff;text-align:center;font-size:11px;cursor:pointer}.survey-option input:checked+label{border-color:#8c82e7;color:#554ac0;background:#f1efff;box-shadow:0 0 0 3px rgba(104,87,220,.08)}.survey-text{min-height:96px;resize:vertical}.scale-labels{display:flex;justify-content:space-between;margin-top:6px;color:#a0a2ad;font-size:10px}.survey-error{display:none;margin-top:12px;padding:10px 12px;border-radius:11px;color:#a84f56;background:#fff0f0;font-size:12px}.survey-error.show{display:block}
    .debrief h1,.done h1{margin:8px 0;font-size:35px;letter-spacing:-.06em}.debrief-body{display:grid;gap:11px;margin:23px 0;color:#676b7b}.completion-code{display:inline-flex;align-items:center;padding:9px 12px;border-radius:11px;color:#554ac0;background:#f0efff;font-weight:850}
    .toast{position:fixed;left:50%;bottom:24px;z-index:100;padding:10px 16px;border-radius:99px;color:#fff;background:rgba(35,36,48,.92);box-shadow:0 10px 24px rgba(25,26,36,.2);opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:.2s ease;font-size:12px}.toast.show{opacity:1;transform:translate(-50%,0)}
    @media(max-width:940px){.landing{grid-template-columns:1fr}.landing-visual{min-height:360px}.shop-layout{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assistant-card{position:relative;top:auto;min-height:0}.assistant-portrait{min-height:190px}.assistant-portrait img{min-height:190px}.steps{grid-template-columns:1fr 1fr}.detail-modal{display:block;max-height:calc(100vh - 20px);overflow-y:auto}.detail-scroll{overflow:visible}.modal-assistant{display:flex;min-height:430px}.modal-assistant .assistant-portrait{min-height:210px}}
    @media(max-width:620px){.topbar{height:62px}.brand-sub{display:none}.top-meta span:first-child{display:none}.content{padding-top:24px}.section-head{display:block}.count-note{display:block;margin-top:12px}.product-grid{grid-template-columns:1fr 1fr}.toolbar{align-items:flex-start;flex-direction:column}.toolbar-tabs{width:100%}.toolbar select{align-self:flex-end}.steps{grid-template-columns:1fr}.assistant-reveal{grid-template-columns:1fr}.assistant-reveal-avatar{min-height:130px}.decision-grid{grid-template-columns:1fr}.landing-copy{padding:30px 23px}.landing-visual{display:none}.attribute-grid{grid-template-columns:1fr}.detail-scroll{padding:18px}.detail-art{min-height:230px}}
    .baseline-rail{color:#6f7280;background:linear-gradient(155deg,#fff,#f4f5fa);border:1px solid #e5e7ef;box-shadow:0 18px 42px rgba(50,53,80,.08)}.baseline-rail:before{background:rgba(210,214,230,.35)}.baseline-rail-inner{display:grid;place-items:center;min-height:500px;border:1px dashed #dfe2eb;border-radius:18px;color:#969aa9;text-align:center}.baseline-rail-inner span{display:block;font-weight:800;letter-spacing:.04em}.baseline-rail-inner small{display:block;margin-top:6px;color:#b0b3be;font-size:11px}.text-only-blank{width:100%;min-height:250px;background:linear-gradient(145deg,#f0f1f7,#dfe1eb)}.text-only-reveal{display:block;width:72px;height:72px;border-radius:24px;background:linear-gradient(145deg,#dfe1eb,#f7f7fb)}.retry-panel{margin-top:21px;padding:17px;border:1px solid #f0d8c8;border-radius:16px;background:#fff6f0;color:#6c5d58}.retry-panel strong{display:block;color:#a55c49}.retry-panel p{margin:5px 0 12px;color:#8c7770;font-size:12px}.retry-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.retry-steps div{padding:9px;border-radius:11px;background:rgba(255,255,255,.7)}.retry-steps b,.retry-steps span{display:block}.retry-steps b{font-size:11px}.retry-steps span{margin-top:3px;color:#927f79;font-size:10px}.retry-highlight{border-color:#e9a58e!important;box-shadow:0 0 0 3px rgba(233,165,142,.14)}
    @media(max-width:940px){.modal-assistant{display:flex;max-height:300px;overflow:auto;padding:15px}.modal-assistant .assistant-card{position:relative;top:auto;min-height:0;padding:0;background:transparent;box-shadow:none}.modal-assistant .assistant-card:before{display:none}.modal-assistant .assistant-portrait{min-height:130px;margin:10px 0}.modal-assistant .assistant-portrait img{min-height:130px}.modal-assistant .assistant-progress,.modal-assistant .cart-button{display:none}.modal-assistant .assistant-message{min-height:0}.modal-assistant .baseline-rail{width:100%;color:#6f7280}.modal-assistant .baseline-rail-inner{min-height:120px}.modal-assistant .assistant-footnote{margin-top:7px}}
    @media(max-width:620px){.retry-steps{grid-template-columns:1fr 1fr}}
    .landing h1{font-size:clamp(31px,4.2vw,50px)}
    .visual-avatar{top:28%;width:178px;height:150px;border-radius:30px}
    .visual-avatar:before{left:46px;top:-38px;width:78px;height:58px;border:10px solid #55526f;border-bottom:0;border-radius:40px 40px 0 0;background:transparent;box-shadow:none}
    .visual-avatar:after{content:"◇  □  ○";position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.78);font-size:27px;letter-spacing:.24em}
    .product-card{width:100%;color:inherit;text-align:left;font:inherit}
    .product-info,.product-brand,.product-title,.product-tagline{display:block}
    .pause-button{border:0;background:transparent;color:#777b8b;font-size:11px;cursor:pointer}
    .choice input:focus-visible+label,.survey-option input:focus-visible+label{outline:3px solid rgba(104,87,220,.35);outline-offset:2px}
    .researcher-entry{display:flex;align-items:center;justify-content:space-between;max-width:410px;margin-top:18px;padding:12px 14px;border:1px solid rgba(104,87,220,.14);border-radius:15px;color:#686b7b;background:rgba(255,255,255,.62);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.researcher-entry:hover{transform:translateY(-2px);border-color:rgba(104,87,220,.32);box-shadow:0 12px 26px rgba(67,65,111,.1)}.researcher-entry small{display:block;color:#9b9daa;font-size:9px;font-weight:850;letter-spacing:.14em}.researcher-entry strong{display:block;margin-top:2px;color:#4e4a9c;font-size:12px}.researcher-entry-arrow{display:grid;place-items:center;width:29px;height:29px;border-radius:10px;color:#675bd0;background:#f0efff;font-size:16px}
    .assistant-message-copy{white-space:pre-wrap}.assistant-message-copy.typing:after{content:"";display:inline-block;width:2px;height:1em;margin-left:3px;vertical-align:-.12em;background:currentColor;animation:typing-caret .75s steps(1,end) infinite}@keyframes typing-caret{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.assistant-message-copy.typing:after{display:none}}
    .reading-card{font-size:16px;line-height:1.78}.reading-card>.muted{font-size:15px}.reading-card .consent-item{padding:17px 18px;color:#555968;font-size:15px;line-height:1.72}.reading-card .consent-check{font-size:15px}.survey-reading-card{width:min(940px,100%);margin-inline:auto}.survey-reading-card>.muted{max-width:800px}.survey-progress{margin:27px 0 22px;padding:16px 18px;border:1px solid #e3e0f8;border-radius:16px;background:linear-gradient(135deg,#f8f7ff,#fff)}.survey-progress-copy{display:flex;justify-content:space-between;gap:18px;color:#686c7c;font-size:14px}.survey-progress-copy strong{color:#4f45ad;font-size:15px}.survey-progress-track{height:8px;margin-top:11px;overflow:hidden;border-radius:99px;background:#e9e7f6}.survey-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),#9c8ff1);transition:width .22s ease}.survey-page[hidden]{display:none}.survey-reading-card .survey-block{padding:4px 0 8px}.survey-reading-card .survey-block h2{margin-bottom:19px;font-size:21px}.survey-reading-card .survey-item{margin:21px 0;padding:14px 15px;border:1px solid transparent;border-radius:14px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.survey-reading-card .survey-question{margin-bottom:12px;color:#464a59;font-size:15px;line-height:1.65}.survey-reading-card .survey-option label{min-width:82px;padding:11px 13px;font-size:13px;line-height:1.45}.survey-reading-card .scale-labels{font-size:12px}.survey-item.invalid{border-color:#df737d!important;background:#fff5f5;box-shadow:0 0 0 3px rgba(204,75,88,.08)}.survey-item.invalid .survey-question{color:#a43e48}.survey-item-error{display:none;margin-top:9px;color:#b04751;font-size:13px;font-weight:700}.survey-item.invalid .survey-item-error{display:block}.survey-actions{justify-content:space-between}.survey-actions .primary{margin-left:auto}.survey-error{font-size:14px}
    @media(max-width:620px){.reading-card{font-size:15px}.reading-card .consent-item{font-size:14px}.survey-progress-copy{align-items:flex-start;flex-direction:column;gap:2px}.survey-reading-card .survey-item{padding:12px 8px}.survey-reading-card .survey-option{flex:1 1 calc(50% - 7px)}.survey-reading-card .survey-option label{min-width:0;width:100%;font-size:13px}.survey-reading-card .survey-options{gap:8px}.survey-reading-card .survey-block h2{font-size:19px}}
    .brand-mark svg{width:21px;height:21px}.likert-options{display:grid;grid-template-columns:repeat(var(--scale-points,7),minmax(38px,1fr));gap:9px;max-width:760px}.survey-reading-card .likert-options .survey-option{min-width:0}.survey-reading-card .likert-options .survey-option label{display:grid;place-items:center;min-width:0;height:46px;padding:0;border-radius:12px;font-size:15px;font-weight:850}.likert-options .survey-option.anchor label{border-color:#c8c3e8;color:#4f4a7e;background:#faf9ff}.likert-anchors{display:grid;grid-template-columns:1fr 1fr 1fr;max-width:760px;margin-top:9px;color:#9a9cab;font-size:11px}.likert-anchors span:nth-child(2){text-align:center}.likert-anchors span:last-child{text-align:right}.likert-anchors strong{display:block;color:#55506f;font-size:12px}.role-context{margin-top:20px;padding:22px;border:1px solid #ded9fa;border-radius:19px;background:linear-gradient(135deg,#f7f5ff,#fff)}.role-context-head{display:flex;align-items:center;gap:10px;margin-bottom:9px}.role-badge{padding:6px 10px;border-radius:99px;color:#fff;background:#6557c8;font-size:12px;font-weight:850}.role-context h3{margin:0;font-size:18px}.role-context p{margin:8px 0 16px;color:#555a69;font-size:15px}.role-points{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.role-point{padding:12px;border-radius:13px;color:#606473;background:#fff;font-size:12px}.role-point:before{content:"✓";margin-right:6px;color:#5d51c5;font-weight:900}
    .practice-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px;margin-top:25px}.practice-product{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.practice-product .product-art{min-height:190px}.practice-product h2{margin:7px 0;font-size:25px}.practice-guide{padding:20px;border-radius:20px;background:#282a38;color:#fff}.practice-guide h2{margin:0 0 5px;font-size:18px}.practice-guide>p{margin:0;color:rgba(255,255,255,.58);font-size:12px}.practice-steps{display:grid;gap:9px;margin-top:17px}.practice-step{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;padding:10px;border-radius:12px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.65)}.practice-step i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.1);font-style:normal;font-weight:900}.practice-step strong,.practice-step span{display:block}.practice-step strong{color:#fff;font-size:12px}.practice-step span{font-size:10px}.practice-step.done{background:rgba(98,211,169,.15);color:#bdf0db}.practice-step.done i{background:#4eaa88}.practice-cart{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:11px;border:1px solid rgba(255,255,255,.12);border-radius:12px}.practice-cart button{border:0;border-radius:9px;padding:8px 10px;color:#fff;background:#a94c55}.practice-cart.empty{color:rgba(255,255,255,.45)}
    .store-frame{overflow:hidden;border:1px solid #ececec;border-radius:18px;background:#fff;box-shadow:0 18px 48px rgba(30,32,45,.08)}.store-utility{display:flex;justify-content:space-between;padding:7px 18px;color:#888;background:#f5f5f5;font-size:11px}.store-header{display:grid;grid-template-columns:180px minmax(260px,1fr) auto;gap:20px;align-items:center;padding:20px 22px}.store-logo{display:flex;align-items:center;gap:10px;color:#d9363e;font-size:22px;font-weight:950;letter-spacing:-.04em}.store-logo-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:#fff;background:#e4393c}.store-logo-mark svg{width:23px}.store-search{display:flex;height:42px;border:2px solid #e4393c}.store-search input{min-width:0;flex:1;border:0;padding:0 13px;outline:0}.store-search button{width:62px;border:0;color:#fff;background:#e4393c;font-weight:850}.store-cart-link{border:1px solid #ddd;padding:10px 13px;color:#555;background:#fafafa;font-size:12px}.store-nav{display:flex;gap:7px;padding:0 22px 12px;overflow:auto;border-bottom:1px solid #eee}.store-nav button{border:0;border-radius:8px;padding:8px 12px;color:#555;background:transparent;white-space:nowrap;font-size:12px}.store-nav button.active{color:#fff;background:#e4393c}.store-body{padding:20px}.store-body .shop-layout{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.store-body .product-grid{gap:12px}.store-body .product-card{border-radius:10px;padding:9px;box-shadow:none}.store-body .product-card:hover{border-color:#e4393c;box-shadow:0 10px 25px rgba(60,30,30,.1)}.store-body .product-art{border-radius:7px;aspect-ratio:1.12}.store-body .product-title{font-size:14px}.store-body .price{color:#e4393c;font-size:20px}.product-service{display:block;margin-top:7px;color:#999;font-size:10px}.product-service b{margin-right:5px;padding:2px 4px;color:#fff;background:#e4393c;font-weight:750}.store-empty{display:none;padding:35px;text-align:center;color:#888}
    .store-body .assistant-card{min-height:420px;padding:16px;border-radius:16px}.store-body .assistant-head h2{font-size:15px}.store-body .assistant-portrait{min-height:116px;max-height:130px;margin:13px 0 11px}.store-body .assistant-portrait img{min-height:116px;max-height:130px}.assistant-symbol{display:grid;place-items:center;width:64px;height:64px;margin:15px auto 12px;border:1px solid rgba(255,255,255,.2);border-radius:20px;color:#fff;background:rgba(255,255,255,.1);font-size:24px}.assistant-message{position:relative;background:#fff;color:#555;border-radius:14px;font-size:12px}.assistant-message:before{content:"";position:absolute;top:-7px;left:22px;width:14px;height:14px;background:#fff;transform:rotate(45deg)}.assistant-message strong{position:relative;color:#3f4050}.assistant-message-copy{position:relative}.store-body .assistant-progress{margin-top:14px}.store-body .cart-button{margin-top:13px}
    .detail-modal{grid-template-columns:minmax(0,1fr) 270px;width:min(1120px,100%);border-radius:18px}.detail-modal.no-assistant{display:block;width:min(900px,100%)}.detail-scroll{padding:27px}.detail-commerce{display:grid;grid-template-columns:minmax(260px,.88fr) minmax(310px,1.12fr);gap:27px}.detail-summary{min-width:0}.detail-art{min-height:340px}.detail-brand{margin-top:0}.detail-price-box{margin:14px 0;padding:13px 15px;background:#fff4f4}.detail-price-box small{color:#999}.detail-price{display:inline;margin-left:12px;color:#e4393c}.detail-benefits{display:grid;gap:8px;margin-top:14px}.detail-benefit{display:grid;grid-template-columns:66px 1fr;gap:10px;padding-bottom:8px;border-bottom:1px dashed #eee;color:#666;font-size:12px}.detail-benefit b{color:#999}.modal-assistant{padding:17px}.modal-assistant .assistant-card{min-height:0;padding:0;overflow:visible;background:transparent;box-shadow:none}.modal-assistant .assistant-card:before{display:none}.modal-assistant .assistant-head{align-items:center}.modal-assistant .assistant-portrait{flex:none;min-height:92px;max-height:108px;margin:13px 0}.modal-assistant .assistant-portrait img{min-height:92px;max-height:108px}.modal-assistant .assistant-symbol{margin:13px auto}.modal-assistant .assistant-message{min-height:120px}.modal-assistant .assistant-progress,.modal-assistant .cart-button{display:none}.modal-assistant .assistant-footnote{margin-top:10px}
    .completion-hero{display:grid;grid-template-columns:74px 1fr;gap:18px;align-items:center}.completion-check{display:grid;place-items:center;width:70px;height:70px;border-radius:23px;color:#fff;background:#4ba17f;font-size:34px;font-weight:900}.completion-hero h1{margin:0;font-size:34px}.completion-hero p{margin:4px 0 0}.completion-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:24px 0}.completion-field{padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.completion-field span,.completion-field strong{display:block}.completion-field span{color:#999;font-size:11px}.completion-field strong{margin-top:3px;color:#4c4f5e;font-size:14px}.completion-code-card{padding:19px;border-radius:17px;color:#fff;background:linear-gradient(135deg,#554ac0,#8175df)}.completion-code-card span,.completion-code-card strong{display:block}.completion-code-card strong{margin-top:5px;font-size:25px;letter-spacing:.08em}.debrief-panel{margin-top:20px;padding:20px;border-radius:17px;background:#f7f7fb}.debrief-panel h2{margin:0 0 10px;font-size:18px}.debrief-panel p{margin:8px 0;color:#626675}.study-note{margin-top:12px;padding-top:12px;border-top:1px solid #e5e5ed;color:#555;font-size:12px}
    @media(max-width:940px){.practice-layout{grid-template-columns:1fr}.store-header{grid-template-columns:1fr auto}.store-logo{grid-column:1}.store-search{grid-column:1/-1;grid-row:2}.store-body .shop-layout{grid-template-columns:1fr}.store-body .assistant-card{position:relative}.detail-commerce{grid-template-columns:1fr}.modal-assistant{min-height:0}.role-points{grid-template-columns:1fr}}
    .store-body .shop-layout.no-assistant{display:block}
    @media(max-width:940px){.detail-modal{display:block;max-height:calc(100vh - 20px);overflow-y:auto}}
    @media(max-width:620px){.likert-options{gap:5px;grid-template-columns:repeat(7,minmax(35px,1fr))}.survey-reading-card .likert-options .survey-option{flex:auto}.survey-reading-card .likert-options .survey-option label{height:40px;font-size:14px}.likert-anchors span{font-size:9px}.likert-anchors strong{font-size:11px}.practice-product{grid-template-columns:1fr}.store-utility span:last-child{display:none}.store-header{grid-template-columns:1fr}.store-cart-link{display:none}.store-body{padding:12px}.store-nav{padding-inline:12px}.store-body .product-grid{grid-template-columns:1fr 1fr}.detail-scroll{padding:17px}.completion-grid{grid-template-columns:1fr}.completion-hero{grid-template-columns:56px 1fr}.completion-check{width:54px;height:54px;border-radius:17px}.completion-hero h1{font-size:27px}}
  
/* Bridge new endpoints/states to the preserved v9 components. */
.wb-app{--green:#6857dc;--pale:#f1efff;background:radial-gradient(circle at 8% 0,#fff0e6 0,transparent 32rem),radial-gradient(circle at 96% 100%,#e8eaff 0,transparent 32rem),#f6f7fb}
.wb-app>.top{max-width:none;height:72px;padding:0 clamp(18px,4vw,58px);border-bottom:1px solid rgba(40,42,60,.07);background:rgba(255,255,255,.82);backdrop-filter:blur(18px)}.wb-app .brand{font-size:15px;letter-spacing:.04em}.wb-app .brandmark{background:linear-gradient(140deg,#242635,#8c80ea);box-shadow:0 8px 18px rgba(104,87,220,.2)}.wb-app #release{font-size:12px;font-weight:750;padding:7px 11px;border-radius:99px;color:#6557c8;background:#f1efff}.wb-app>.banner{font-size:12px;background:#f6f4fc;border:0;color:#8b819b}.wb-app>main{width:min(1160px,100%);max-width:1160px;padding:32px clamp(16px,3vw,36px) 55px;margin:auto}.wb-app .narrow{max-width:940px}.wb-app .content-card{padding:clamp(23px,3.5vw,42px)}.wb-app .content-card h1{font-size:clamp(28px,3.4vw,35px);letter-spacing:-.055em;margin:8px 0 12px}.wb-app .content-card>.eyebrow{margin:0}.wb-app .eyebrow{color:#7667d3;font-size:11px;font-weight:850;letter-spacing:.14em}.wb-app>.top .small{color:#898c9b;font-size:11px}.wb-app button:not(.product-card):not(.decision):not(.practice-product):not(.close-modal):not(.ghost):not(.secondary):not(.text):not(.remove):not(.cart-button):not(.store-cart-link){background:linear-gradient(135deg,#6857dc,#9385ed);color:white;font-weight:750}.wb-app button.secondary{background:white;border:1px solid #e9ebf2;color:#5f6375}.wb-app button.text,.wb-app button.ghost{background:transparent;color:#7767c8;border:0;box-shadow:none;padding:10px 0}.wb-app .footactions{justify-content:space-between;margin:18px 0 0}.wb-app .footactions button{font-size:11px;color:#9294a1}.wb-app button:disabled{cursor:not-allowed}.wb-app .check,.wb-app .consent-check{font-size:15px;line-height:1.75}.wb-app input[type=checkbox],.wb-app input[type=radio]{accent-color:#6857dc}.wb-app .consent-check{display:flex;gap:10px;align-items:flex-start}.wb-app .consent-check input{flex:0 0 18px;margin-top:5px}.wb-app .prose{color:#5c6070;line-height:1.9}.wb-app .upload{background:#f8f7ff;border-color:#c7bfe9}.wb-app .notice{color:#696d7b;background:#f7f7fb}.wb-app .notice.peach{background:#fff0e7}.wb-app .notice.mint{background:#dff5ed}.wb-app .actions{margin-top:26px}.wb-app .reading-card p{font-size:15px}.wb-app .status-icon{color:#8070d4;font-size:32px}
.wb-app .survey-form label{margin:0}.wb-app .survey-form fieldset{min-inline-size:0}.wb-app .survey-item legend{padding:0;font-weight:500}.wb-app .survey-item{width:100%}.wb-app .survey-options{display:flex;flex-wrap:wrap;gap:8px}.wb-app .survey-option{position:relative}.wb-app .survey-option input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}.wb-app .survey-option label{border:1px solid #e1deef;color:#6a6681;background:white;cursor:pointer}.wb-app .survey-option input:checked+label{border-color:#8273d9;color:#fff;background:#8273d9;box-shadow:0 0 0 3px #6857dc12}.wb-app .likert-options{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));max-width:760px}.wb-app .likert-options.scale-5{grid-template-columns:repeat(5,minmax(0,1fr))}.wb-app .likert-options.scale-9{grid-template-columns:repeat(9,minmax(0,1fr))}.wb-app .likert-options.scale-11{grid-template-columns:repeat(11,minmax(0,1fr))}.wb-app .survey-progress progress{display:block;appearance:none;width:100%;height:8px;border:0;border-radius:99px;overflow:hidden;margin-top:11px;background:#e9e7f6}.wb-app progress::-webkit-progress-bar{background:#e9e7f6;border-radius:99px}.wb-app progress::-webkit-progress-value{background:linear-gradient(90deg,#6857dc,#9c8ff1);border-radius:99px}.wb-app progress::-moz-progress-bar{background:#8273d9}.wb-app .survey-progress-copy{font-size:14px}.wb-app .survey-actions{display:flex;gap:18px;align-items:center}.wb-app .survey-actions .primary{margin-left:auto}.wb-app .survey-error:not([hidden]){display:block;margin:15px 0;padding:12px 15px;color:#a43e48;background:#fff0f0;border-radius:12px}.wb-app .survey-save-note{color:#9a9cab;font-size:11px;margin:13px 0 0}.wb-app .survey-reading-card .survey-item{border-bottom:1px solid #f0eef6}.wb-app .survey-block>h2{font-size:19px;color:#595369}.wb-app .survey-question{white-space:normal}
.wb-app .art-icon svg{width:60px;height:60px}.wb-app .tone-0{--from:#afa8ce;--to:#6c638d;background:linear-gradient(145deg,var(--from),var(--to))}.wb-app .tone-1{--from:#9db9bd;--to:#456a72;background:linear-gradient(145deg,var(--from),var(--to))}.wb-app .tone-2{--from:#c1aca5;--to:#846858;background:linear-gradient(145deg,var(--from),var(--to))}.wb-app .tone-3{--from:#a9b6d2;--to:#5a709c;background:linear-gradient(145deg,var(--from),var(--to))}.wb-app .product-card{background:white;color:#20222d;font-weight:400}.wb-app .product-card:hover{filter:none}.wb-app .store-body .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wb-app .store-body .product-art{max-height:170px;min-height:120px}.wb-app .store-body .assistant-card{top:24px;min-height:430px}.wb-app .store-body .assistant-portrait{max-height:150px;height:150px}.wb-app .store-body .assistant-portrait img{height:150px;max-height:150px;object-fit:contain}.wb-app .store-search{margin:0}.wb-app .store-search input{margin:0;border:0;border-radius:0;font-size:13px;background:white}.wb-app .store-search button{border-radius:0;background:#e4393c!important}.wb-app .store-nav{margin:0}.wb-app .store-nav button{background:transparent!important;color:#555!important}.wb-app .store-nav button.active{background:#e4393c!important;color:white!important}.wb-app .store-cart-link{background:#fafafa;color:#555;border:1px solid #ddd;border-radius:4px;font-size:12px}.wb-app .store-bottom{justify-content:flex-end}.wb-app .assistant-role{color:#e4e1f0;font-size:12px;line-height:1.8}.wb-app .assistant-message{padding:16px;line-height:1.85;min-height:110px}.wb-app .assistant-message strong,.wb-app .assistant-message-copy{display:block}.wb-app .assistant-message strong{margin-bottom:8px;font-size:13px}.wb-app .assistant-progress progress{width:100%;height:6px;appearance:none;border:0;border-radius:99px;overflow:hidden}.wb-app .cart-button{width:100%;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25);color:white;border-radius:11px;padding:11px;font-size:12px}.wb-app .progress-line{display:flex;justify-content:space-between;color:#ddd9ee;font-size:11px}.wb-app .assistant-reveal-avatar img{object-fit:contain}.wb-app .assistant-reveal p{color:#656274}.wb-app .role-context .assistant-message-copy{min-height:55px;line-height:1.9}.wb-app .role-context-head{flex-wrap:wrap}.wb-app .exposure-note{margin-top:22px;color:#9a94ab;font-size:12px}
.wb-app .commerce-dialog{max-width:min(1120px,calc(100vw - 32px));width:1120px;padding:0;border-radius:18px;overflow:auto;max-height:calc(100dvh - 32px)}.wb-app .commerce-dialog .detail-modal{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 270px;max-height:none;border-radius:0;box-shadow:none;overflow:visible;background:white}.wb-app .commerce-dialog .detail-commerce{grid-template-columns:minmax(160px,.9fr) minmax(200px,1.1fr);gap:24px}.wb-app .detail-art{min-height:260px}.wb-app .commerce-dialog .detail-scroll{max-height:calc(100dvh - 32px);overflow:auto}.wb-app .commerce-dialog .modal-assistant{background:linear-gradient(155deg,#2d3041,#615d83);color:white;padding-top:44px}.wb-app .commerce-dialog .modal-assistant .assistant-card{position:static}.wb-app .commerce-dialog .modal-assistant .assistant-portrait{height:108px}.wb-app .commerce-dialog .assistant-portrait img{width:100%;height:100%;object-fit:contain}.wb-app .commerce-dialog .assistant-footnote{font-size:11px;line-height:1.8;color:#ccc7df}.wb-app .commerce-dialog .detail-actions{display:flex;flex-wrap:wrap;gap:10px}.wb-app .close-modal{position:absolute;right:10px;top:10px;z-index:10;background:#f5f3fb;color:#645778;border:0;box-shadow:none;padding:0;font-size:24px;line-height:34px;width:34px;height:34px;border-radius:50%}.wb-app .detail-price{font-size:28px}.wb-app .detail-modal h2{font-size:25px}.wb-app .detail-summary p{font-size:14px}
.wb-app .practice-product{background:white;color:inherit;box-shadow:none;text-align:left;grid-template-columns:150px 1fr}.wb-app .practice-product .product-art{min-height:170px}.wb-app .practice-product-title{display:block;font-size:24px;margin:9px 0}.wb-app .practice-product .muted{display:block;font-size:13px;font-weight:400}.wb-app .practice-cta{display:inline-block;font-size:12px;margin-top:15px}.wb-app .practice-guide{background:#282a38}.wb-app .practice-guide h2{color:white}.wb-app .practice-step{font-weight:400}.wb-app #practiceComplete{margin-top:25px}.wb-app .practice-cart button{font-size:11px}.wb-app .cart-item{display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:center}.wb-app .cart-thumb{width:90px;height:90px;min-height:0;border-radius:14px}.wb-app .cart-thumb .art-icon{width:60px;height:60px;box-shadow:none}.wb-app .cart-item h3{font-size:16px}.wb-app .final-choice-label{color:#8273b0;font-size:12px}.wb-app .cart-item-actions{text-align:right}.wb-app .remove{display:block;background:transparent;color:#a38387;font-size:12px;border:0;box-shadow:none;padding:5px 0;margin-left:auto}.wb-app .cart-empty{margin-top:20px}.wb-app .decision{display:block;text-align:left;border:1px solid #e8e5f0;background:white;color:#57586c;padding:23px;border-radius:18px}.wb-app .decision strong{display:block;font-size:17px}.wb-app .decision span{display:block;font-weight:400;font-size:12px;margin-top:7px}.wb-app .decision.purchase{background:linear-gradient(135deg,#6555d4,#9b8deb);color:white;border-color:transparent}.wb-app .completion-code-card{background:linear-gradient(135deg,#554ac0,#8175df)}.wb-app .completion-code-card strong{overflow-wrap:anywhere}
.wb-app.wb-entry .visual-avatar{top:28%;width:178px;height:150px;border-radius:30px}.wb-app.wb-entry .visual-avatar:before{left:46px;top:-38px;width:78px;height:58px;border:10px solid #55526f;border-bottom:0;border-radius:40px 40px 0 0;background:transparent;box-shadow:none}.wb-app.wb-entry .visual-avatar:after{content:"◇  □  ○";position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.78);font-size:27px;letter-spacing:.24em}.wb-app.wb-entry .researcher-entry{padding:12px 14px;border:1px solid rgba(104,87,220,.14);border-radius:15px;background:rgba(255,255,255,.62)}
@media(max-width:940px){.wb-app .commerce-dialog .detail-modal{display:block}.wb-app .commerce-dialog .detail-scroll{overflow:visible;max-height:none}.wb-app .commerce-dialog .detail-commerce{grid-template-columns:1fr 1fr}.wb-app .commerce-dialog .modal-assistant{display:block;max-height:none;padding:20px}.wb-app .commerce-dialog .modal-assistant .assistant-card{display:grid;grid-template-columns:100px 1fr;gap:14px}.wb-app .commerce-dialog .assistant-head{grid-column:1/-1}.wb-app .commerce-dialog .assistant-role{margin:0}.wb-app .commerce-dialog .assistant-message{grid-column:1/-1}.wb-app .store-body .assistant-card{display:block;position:static}.wb-app .store-body .assistant-portrait{max-width:160px;margin-inline:auto}.wb-app .practice-layout{grid-template-columns:1fr}}
@media(max-width:620px){.wb-app>main{padding:22px 16px 35px}.wb-app>.top{height:62px;padding:0 16px}.wb-app>.top .small{display:none}.wb-app #release{display:block;white-space:nowrap;font-size:10px}.wb-app .top .brand{font-size:13px}.wb-app .content-card{padding:24px 19px}.wb-app .likert-options{gap:5px}.wb-app .survey-reading-card .likert-options .survey-option label{height:42px;border-radius:9px;font-size:14px}.wb-app .likert-options.scale-9{gap:3px}.wb-app .likert-options.scale-9 .survey-option label{font-size:12px}.wb-app .survey-actions{gap:10px}.wb-app .survey-actions button{font-size:12px;padding:10px 12px}.wb-app .survey-progress{padding:13px}.wb-app .survey-progress-copy{font-size:12px}.wb-app .survey-form .survey-item{padding:12px 0}.wb-app .practice-product{grid-template-columns:1fr}.wb-app .commerce-dialog .detail-commerce{grid-template-columns:1fr}.wb-app .commerce-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}.wb-app .detail-art{min-height:200px}.wb-app .cart-item{grid-template-columns:65px 1fr;gap:12px}.wb-app .cart-thumb{width:65px;height:65px}.wb-app .cart-item-actions{grid-column:2;display:flex;align-items:center;justify-content:space-between;text-align:left}.wb-app .decision-grid{grid-template-columns:1fr}.wb-app .store-body .product-grid{gap:10px}.wb-app .store-body .product-art{min-height:100px}.wb-app .store-header{gap:12px}.wb-app .store-body .product-title{font-size:13px}.wb-app .store-body .product-service{font-size:10px}.wb-app .store-body .product-card{padding:7px}.wb-app .role-context{padding:18px}.wb-app .assistant-reveal{padding:18px;gap:18px}.wb-app .assistant-reveal-avatar{width:120px;min-height:120px}.wb-app .assistant-reveal-avatar img{height:120px}.wb-app .role-context h3{font-size:16px}}

.wb-app #storeEmpty:not([hidden]){display:block}.wb-app .scenario-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0}.wb-app .scenario-steps>div{padding:22px;border:1px solid #e8e3f3;border-radius:20px;background:#faf9ff}.wb-app .scenario-steps b{display:block;font-size:12px;letter-spacing:.14em;color:#7862cc;margin-bottom:12px}.wb-app .scenario-steps strong{font-size:18px}.wb-app .scenario-steps p{margin-bottom:0;color:#74717f;line-height:1.7}@media(max-width:600px){.wb-app .scenario-steps{grid-template-columns:1fr}}
.wb-app button.practice-product{background:#fff!important;border:1px solid #e8e5f0!important}.wb-app .practice-product .product-art{width:100%;aspect-ratio:auto;min-width:0}.wb-app .practice-product>span{min-width:0}.wb-app .completion-hero>div:last-child{min-width:0}@media(max-width:620px){.wb-app .completion-hero{gap:14px}.wb-app .completion-hero h1{font-size:24px;white-space:normal;overflow-wrap:anywhere}.wb-app .completion-hero .eyebrow{font-size:10px}}
.wb-app .product-card>.product-art{width:100%;height:auto;aspect-ratio:1.65;min-height:170px}.wb-app .store-search button{white-space:nowrap;min-width:76px;padding:10px 16px!important;flex-shrink:0}@media(max-width:620px){.wb-app .store-body .product-card>.product-art{min-height:90px;aspect-ratio:1.1}}

/* Keep the bound assistant present during shopping and checkout. */
.wb-app .cart-with-assistant{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:22px;align-items:start}
.wb-app .cart-with-assistant>.assistant-card{position:sticky;top:24px}
.wb-app .checkout-product{display:flex;align-items:center;gap:20px;margin:24px 0}
.wb-app .checkout-modal .detail-scroll{padding:32px}
.wb-app .cart-with-assistant .assistant-portrait img{width:100%;height:190px;object-fit:contain}
@media(max-width:940px){
 .wb-app .cart-with-assistant{display:block}
 .wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{position:fixed;z-index:25;right:12px;bottom:12px;top:auto;width:150px;min-height:0;max-height:65dvh;overflow:auto;margin:0;padding:10px;border-radius:18px;box-shadow:0 8px 26px #17182740}
 .wb-app .store-body .shop-layout>.assistant-card .assistant-portrait,.wb-app .cart-with-assistant>.assistant-card .assistant-portrait{height:90px;min-height:0;margin:0 auto;max-height:90px}
 .wb-app .store-body .shop-layout>.assistant-card .assistant-portrait img,.wb-app .cart-with-assistant>.assistant-card .assistant-portrait img{height:90px;min-height:0;max-height:90px;width:100%;object-fit:contain}
 .wb-app .store-body .shop-layout>.assistant-card .assistant-head,.wb-app .cart-with-assistant>.assistant-card .assistant-head,.wb-app .store-body .shop-layout>.assistant-card .assistant-progress,.wb-app .cart-with-assistant>.assistant-card .assistant-progress,.wb-app .store-body .shop-layout>.assistant-card .cart-button{display:none}
 .wb-app .assistant-card:not(.messages-expanded)>.assistant-role{display:none}
 .wb-app .store-body .shop-layout>.assistant-card.messages-expanded,.wb-app .cart-with-assistant>.assistant-card.messages-expanded{width:min(300px,calc(100vw - 24px))}
 .wb-app .store-body,.wb-app .cart-with-assistant>.card{padding-bottom:180px}
 .wb-app .commerce-dialog .detail-modal{display:flex;flex-direction:column}
 .wb-app .commerce-dialog .modal-assistant{order:-1;position:sticky;top:0;z-index:3;padding:12px 46px 12px 12px}
 .wb-app .commerce-dialog .modal-assistant .assistant-card{display:grid;grid-template-columns:65px minmax(0,1fr);gap:6px;min-height:0}
 .wb-app .commerce-dialog .modal-assistant .assistant-head,.wb-app .commerce-dialog .modal-assistant .assistant-footnote{display:none}
 .wb-app .commerce-dialog .modal-assistant .assistant-mini{grid-column:1/-1;display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center;min-width:0}
 .wb-app .commerce-dialog .modal-assistant .assistant-portrait{grid-column:1;height:70px;min-height:0;margin:0}
 .wb-app .commerce-dialog .modal-assistant .assistant-portrait img{height:70px;min-height:0;max-height:70px}
 .wb-app .commerce-dialog .modal-assistant .assistant-mini-copy{grid-column:2;min-width:0}
 .wb-app .commerce-dialog .modal-assistant .assistant-mini-copy span{display:block;line-height:1.55}
 .wb-app .commerce-dialog .modal-assistant .assistant-role,.wb-app .commerce-dialog .modal-assistant .assistant-message{grid-column:1/-1;max-height:25dvh;overflow:auto}
}
@media(max-width:940px){.wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{overflow-x:hidden}}
/* Preserve the existing questionnaire cards while supporting 0–3 and 1–5 scales. */
.wb-app .likert-options.scale-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.wb-app .survey-item[hidden]{display:none}
.wb-app .survey-na-note{padding:18px;background:#f8f7ff;border-radius:12px}

.wb-app .likert-anchors.no-mid{grid-template-columns:1fr 1fr}
.wb-app .likert-anchors.no-mid span:last-child{text-align:right}

/* Refine the shopping surface without changing the task or its event model. */
.wb-app .store-frame{border-color:rgba(104,87,220,.13);border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 24px 70px rgba(42,40,85,.12)}
.wb-app .store-utility{padding:9px 24px;color:#918aa6;background:#f8f6ff;font-size:10px;letter-spacing:.03em}
.wb-app .store-header{padding:24px 28px 20px;gap:22px}
.wb-app .store-logo{color:#5145b6;font-size:24px}
.wb-app .store-logo-mark{background:linear-gradient(140deg,#5e4ec8,#9788ed);box-shadow:0 10px 20px rgba(104,87,220,.2)}
.wb-app .store-search{height:48px;border:1px solid #ddd8f2;border-radius:15px;overflow:hidden;box-shadow:0 6px 18px rgba(84,73,160,.06)}
.wb-app .store-search input{padding-inline:16px;color:#4f5060}
.wb-app .store-search button{width:74px;margin:4px;border-radius:11px!important;background:linear-gradient(135deg,#6857dc,#9385ed)!important}
.wb-app .store-cart-link{border-color:#e1dff0;border-radius:12px;background:#fbfaff;color:#5b51ad;padding:11px 14px}
.wb-app .store-nav{padding:0 28px 14px;gap:8px;background:#fcfbff}
.wb-app .store-nav button{border-radius:99px;padding:8px 14px;color:#77738a!important}
.wb-app .store-nav button.active{background:#6857dc!important;color:#fff!important;box-shadow:0 7px 15px rgba(104,87,220,.18)}
.wb-app .store-body{padding:26px 28px 32px}
.wb-app .store-body .shop-layout{gap:24px}
.wb-app .store-body .product-grid{gap:16px}
.wb-app .store-body .product-card{padding:10px;border-color:#eceaf4;border-radius:19px;background:#fff;box-shadow:0 6px 18px rgba(51,49,75,.035);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.wb-app .store-body .product-card:hover,.wb-app .store-body .product-card:focus-visible{transform:translateY(-3px);border-color:#c9c1f0;box-shadow:0 17px 34px rgba(66,58,129,.12)}
.wb-app button.product-card-main{background:#fff!important;color:#343342!important}
.wb-app .store-body .product-card-main>.product-art{aspect-ratio:1.25;min-height:170px;border-radius:15px}
.wb-app .store-body .product-card-main .product-info{display:block;color:#343342;background:#fff}
.wb-app .store-body .product-info{padding:13px 6px 7px}
.wb-app .store-body .product-brand{color:#9a97a9;font-size:10px}
.wb-app .store-body .product-title{margin-top:6px;color:#343342;font-size:15px;letter-spacing:-.02em}
.wb-app .store-body .product-tagline{margin-top:5px;color:#888596}
.wb-app .store-body .product-bottom{margin-top:12px}
.wb-app .store-body .price{color:#5e50bf;font-size:21px}
.wb-app .store-body .category{color:#7667d3}
.wb-app .store-body .product-service{display:inline-block;margin-top:10px;padding:4px 7px;border-radius:99px;background:#f5f3fc;color:#817b98;font-size:10px}

/* Product details remain a dialog, while the content column becomes the scroll container. */
.wb-app .commerce-dialog{width:min(1080px,calc(100vw - 32px));height:min(780px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);overflow:hidden;border-radius:26px}
.wb-app .commerce-dialog .detail-modal{height:100%;max-height:none;min-height:0;overflow:hidden;border-radius:0}
.wb-app .commerce-dialog .detail-scroll{min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-behavior:smooth;padding:30px}
.wb-app .commerce-dialog .modal-assistant{min-height:0;overflow-y:auto;overscroll-behavior:contain}
.wb-app .product-gallery{min-width:0}
.wb-app .reading-card{padding:28px 32px}.wb-app .reading-card h1{margin-bottom:13px}.wb-app .consent-list{gap:8px;margin:17px 0}.wb-app .consent-item{padding:12px 14px}.wb-app .initial-checks{display:grid;gap:7px;margin:14px 0}.wb-app .initial-checks .consent-check{margin:0;padding:11px 13px;border:1px solid #eceaf4;border-radius:12px;background:#fff}.wb-app .task-brief{margin:17px 0;padding:17px 19px;border:1px solid #e8e3f5;border-radius:17px;background:linear-gradient(135deg,#faf9ff,#fffaf7)}.wb-app .task-brief-label{display:block;color:#7867d3;font-size:11px;font-weight:850;letter-spacing:.12em}.wb-app .task-brief p{margin:7px 0 0;color:#555967;font-size:14px;line-height:1.8}.wb-app .task-brief-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.wb-app .task-brief-meta span{padding:5px 9px;border-radius:99px;color:#6e65a9;background:#f1efff;font-size:10px;font-weight:750}
.wb-app .gallery-stage{position:relative;aspect-ratio:auto;min-height:0;overflow:hidden;border-radius:20px;background:#f0eff8;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.wb-app .gallery-slide{display:none;position:relative;height:100%;margin:0}
.wb-app .gallery-slide.active{display:grid;grid-template-rows:minmax(265px,min(58vh,520px)) auto}
.wb-app .gallery-slide>.gallery-art,.wb-app .gallery-slide>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.wb-app .gallery-slide>.gallery-art{border-radius:0}
.wb-app .gallery-slide>img{background:#f0eff8}
.wb-app .gallery-slide figcaption{position:static;display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0;padding:9px 11px;border-top:1px solid #e8e5f2;color:#656177;background:#fff;font-size:11px}
.wb-app .gallery-slide figcaption small{overflow:hidden;color:#9a96aa;font-size:10px;white-space:nowrap;text-overflow:ellipsis}
.wb-app .gallery-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:11px}
.wb-app .gallery-thumb{min-width:0;padding:5px;border:1px solid #e5e2f2!important;border-radius:13px;color:#77728c!important;background:#fff!important;text-align:left;box-shadow:none!important}
.wb-app .gallery-thumb.active{border-color:#8273d9!important;box-shadow:0 0 0 3px rgba(104,87,220,.1)!important}
.wb-app .gallery-thumb .gallery-thumb-art,.wb-app .gallery-thumb>img{display:block;width:100%;height:58px;min-height:0;object-fit:cover;border-radius:9px}
.wb-app .gallery-thumb .gallery-thumb-art{border-radius:9px}
.wb-app .gallery-thumb>span{display:block;overflow:hidden;margin:5px 3px 1px;white-space:nowrap;text-overflow:ellipsis;color:#77728c;font-size:10px}
.wb-app .gallery-helper{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:#9a96aa;font-size:10px}
.wb-app .gallery-helper span:first-child{color:#6f62c7;font-weight:800}
.wb-app .detail-long-images{margin-top:25px;padding-top:21px;border-top:1px solid #ededef}.wb-app .detail-long-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.wb-app .detail-long-head h3{margin:0;color:#393848;font-size:17px}.wb-app .detail-long-head p{margin:5px 0 0;color:#9a96aa;font-size:11px}.wb-app .detail-long-head>span{padding:5px 9px;border-radius:999px;color:#6f62c7;background:#f2efff;font-size:10px;font-weight:800;white-space:nowrap}.wb-app .detail-long-list{display:grid;gap:11px;max-width:780px;margin:0 auto}.wb-app .detail-long-card{margin:0;overflow:hidden;border:1px solid #ece9f3;border-radius:15px;background:#faf9fd}.wb-app .detail-long-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.wb-app .detail-long-card figcaption{padding:8px 11px;color:#918da0;background:#fff;font-size:10px;line-height:1.5}
@media(max-width:940px){
 .wb-app .commerce-dialog{height:min(820px,calc(100dvh - 20px));max-height:calc(100dvh - 20px)}
 .wb-app .commerce-dialog .detail-modal{display:flex;flex-direction:column;height:100%;max-height:none;min-height:0}
 .wb-app .commerce-dialog .modal-assistant{position:relative;top:auto;order:-1;flex:0 0 auto;max-height:205px;overflow-y:auto;overflow-x:hidden}
 .wb-app .commerce-dialog .detail-scroll{flex:1 1 auto;max-height:none;overflow-y:auto;overflow-x:hidden;padding:22px}
}
@media(max-width:620px){
 .wb-app .store-header,.wb-app .store-body{padding-inline:17px}
 .wb-app .store-nav{padding-inline:17px}
 .wb-app .store-body .product-card-main>.product-art{aspect-ratio:1.08;min-height:96px}
 .wb-app .store-body .product-title{font-size:13px}
 .wb-app .commerce-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}
 .wb-app .commerce-dialog .modal-assistant{max-height:185px;padding:12px 46px 12px 12px}
 .wb-app .commerce-dialog .detail-scroll{padding:17px}
 .wb-app .gallery-stage{aspect-ratio:auto;min-height:0}
 .wb-app .gallery-thumbs{grid-template-columns:repeat(3,minmax(76px,1fr));overflow-x:auto}
 .wb-app .gallery-thumb .gallery-thumb-art,.wb-app .gallery-thumb>img{height:54px}
}

/* Keep real product hero images intact in cards, galleries, cart, and checkout. */
.wb-app .product-cover{background:#f7f6fb}
.wb-app .product-cover img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
.wb-app .store-body .product-card-main>.product-cover{aspect-ratio:1;min-height:0;border-radius:15px}
.wb-app .cart-thumb.product-cover{aspect-ratio:auto}
.wb-app .cart-thumb.product-cover img{border-radius:14px}
.wb-app .gallery-slide>img{object-fit:contain}

/* Desktop detail dialogs use a real two-column modal; the assistant stays inside it. */
@media(min-width:941px){
 .wb-app .commerce-dialog .detail-modal{display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-template-rows:minmax(0,1fr);height:100%;min-height:0;overflow:hidden}
 .wb-app .commerce-dialog .detail-scroll{grid-column:1;grid-row:1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden}
 .wb-app .commerce-dialog .modal-assistant{grid-column:2;grid-row:1;display:flex;align-items:flex-start;min-width:0;min-height:0;padding:24px;background:transparent;color:#fff;overflow:visible}
 .wb-app .commerce-dialog .modal-assistant>.assistant-card{position:sticky;top:24px;width:100%;min-width:0;min-height:0;max-height:calc(100dvh - 80px);overflow-x:hidden;overflow-y:auto;padding:18px;background:linear-gradient(155deg,#2d3041,#615d83);border-radius:22px;box-shadow:0 18px 45px rgba(39,40,60,.25)}
 .wb-app .commerce-dialog .modal-assistant .assistant-mini{display:block;min-width:0;margin:14px 0 0}
 .wb-app .commerce-dialog .modal-assistant .assistant-portrait{width:100%;height:154px;min-width:0;min-height:154px;margin:0 0 12px}
 .wb-app .commerce-dialog .modal-assistant .assistant-portrait img{width:100%;height:100%;min-height:0;object-fit:contain}
 .wb-app .commerce-dialog .modal-assistant .assistant-message{max-height:none;overflow:visible}
}

@media(max-width:940px){
 .wb-app .commerce-dialog .modal-assistant{background:transparent;padding:12px 46px 12px 12px;color:#fff}
 .wb-app .commerce-dialog .modal-assistant>.assistant-card{position:relative;width:100%;min-width:0;min-height:0;max-height:none;padding:14px;border-radius:20px;background:linear-gradient(155deg,#2d3041,#615d83);box-shadow:0 12px 30px rgba(39,40,60,.2)}
}

/* Avoid a second horizontal scrollbar on the floating assistant. */
.wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{box-sizing:border-box;overflow-x:hidden}
.wb-app #app.dialog-open .store-body .shop-layout>.assistant-card{visibility:hidden}
.wb-app .commerce-dialog .practice-assistant>.assistant-message{display:block;min-height:0;color:rgba(255,255,255,.82);background:rgba(255,255,255,.1)}
.wb-app .commerce-dialog .practice-assistant>.assistant-message:before{display:none}

/* Shopping surface: closer to a real catalogue/cart while preserving the existing event model. */
.wb-app .store-breadcrumb{padding:0 28px 13px;color:#aaa6b6;font-size:11px}.wb-app .store-breadcrumb span{padding:0 7px;color:#d0cde0}.wb-app .shop-head{align-items:center;padding-bottom:15px;border-bottom:1px solid #efedf5}.wb-app .store-results{display:flex;align-items:baseline;gap:12px}.wb-app .store-results strong{color:#3e3b50;font-size:18px;letter-spacing:-.03em}.wb-app .shop-tools{display:flex;align-items:center;gap:14px}.wb-app .sort-control{display:flex;align-items:center;gap:7px;margin:0;color:#9a96a7;font-size:11px;white-space:nowrap}.wb-app .sort-control select{margin:0;padding:9px 11px;border:1px solid #e4e1ee;border-radius:10px;color:#666174;background:#fff;font-size:11px}.wb-app .store-search{position:relative}.wb-app .store-search-icon{display:grid;place-items:center;width:28px;color:#aaa4be;font-size:23px;line-height:1}.wb-app .store-search input{padding-left:0}.wb-app .store-cart-link{display:flex;align-items:center;gap:8px;white-space:nowrap}.wb-app .store-cart-link b{display:grid;place-items:center;min-width:22px;height:22px;border-radius:99px;color:#fff;background:#6857dc;font-size:11px}.wb-app .product-card{display:flex;flex-direction:column;min-width:0}.wb-app .product-card-main{display:block;width:100%;padding:0;border:0;border-radius:0;color:inherit;background:transparent;text-align:left;font-weight:400;box-shadow:none}.wb-app .product-card-main:hover{filter:none}.wb-app .product-card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 6px 4px;border-top:1px solid #f0eef6}.wb-app .product-status{overflow:hidden;color:#9b97a8;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.wb-app .quick-add{padding:6px 8px;border:1px solid #ddd8f2;border-radius:9px;color:#6658c4;background:#faf9ff;font-size:10px;white-space:nowrap}.wb-app .quick-add:hover{filter:none;background:#f1efff}.wb-app .product-card-main:focus-visible{outline:3px solid rgba(104,87,220,.3);outline-offset:-3px}.wb-app .initial-checks+.actions{margin-top:15px}.wb-app .eligibility-form .consent-check{margin:9px 0}.wb-app .task-brief+.muted{margin-top:12px}
@media(max-width:940px){.wb-app .shop-tools{align-items:flex-start;flex-direction:column;gap:8px}.wb-app .store-breadcrumb{padding-inline:20px}}
@media(max-width:620px){.wb-app .reading-card{padding:22px 19px}.wb-app .store-breadcrumb{padding:0 17px 10px}.wb-app .shop-tools{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.wb-app .sort-control select{max-width:130px}.wb-app .product-card-actions{padding-inline:3px}.wb-app .product-status{font-size:8px}.wb-app .quick-add{padding:6px 7px;font-size:9px}}

.wb-app .cart-selection-bar{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:20px;padding:13px 15px;border:1px solid #e7e3f4;border-radius:13px;background:#fbfaff;color:#77728b;font-size:11px}.wb-app .cart-selection-bar strong{color:#5145b6;font-size:13px}.wb-app .inline-error{margin-top:14px;padding:11px 13px;border:1px solid #f0caca;border-radius:11px;color:#a24848;background:#fff6f6;font-size:12px;line-height:1.6}
@media(max-width:620px){.wb-app .cart-selection-bar{display:block}.wb-app .cart-selection-bar span{display:block;margin-top:3px}}
.wb-app .budget-brief{display:grid;grid-template-columns:150px 1fr;gap:22px;margin:20px 0;padding:20px;border:1px solid #e8e2f5;border-radius:19px;background:linear-gradient(135deg,#f8f6ff,#fffaf7)}.wb-app .budget-amount{display:flex;flex-direction:column;justify-content:center;padding-right:20px;border-right:1px solid #e7e1f0}.wb-app .budget-amount span,.wb-app .budget-amount small{color:#7d7890;font-size:11px}.wb-app .budget-amount strong{margin:6px 0 2px;color:#5849ba;font-size:29px;letter-spacing:-.06em}.wb-app .budget-copy p{margin:0;color:#555967;font-size:13px;line-height:1.75}.wb-app .budget-copy .budget-label{margin-bottom:6px;color:#7867d3;font-size:10px;font-weight:850;letter-spacing:.08em}.wb-app .budget-copy .budget-en{margin-top:10px;color:#888496;font-size:11px;line-height:1.7}.wb-app .task-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0 18px}.wb-app .task-rules>div{padding:13px 15px;border:1px solid #ece8f5;border-radius:13px;background:#fff}.wb-app .task-rules b{display:block;margin-bottom:4px;color:#6253c1;font-size:12px}.wb-app .task-rules span{color:#777487;font-size:11px;line-height:1.6}
@media(max-width:620px){.wb-app .budget-brief{grid-template-columns:1fr;gap:13px;padding:16px}.wb-app .budget-amount{padding:0 0 12px;border-right:0;border-bottom:1px solid #e7e1f0}.wb-app .budget-amount strong{font-size:26px}.wb-app .task-rules{grid-template-columns:1fr}}

/* Keep every consent checkbox on one shared left edge, including the primary acknowledgement. */
.wb-app #consent>.consent-check{margin:0;padding:11px 13px;border:1px solid #eceaf4;border-radius:12px;background:#fff}
.wb-app #consent>.initial-checks{margin:7px 0 0}
.wb-app #consent>.initial-checks .consent-check{padding-left:13px}
.wb-app #consent>.actions{margin-top:14px}

/* Give the task setup page a clear reading order without leaving large empty gaps. */
.wb-app .task-start-card{max-width:900px;margin-inline:auto}
.wb-app .task-start-card>h1{margin-bottom:9px}
.wb-app .task-start-card>.muted{max-width:720px;margin-top:0}
.wb-app .task-start-card .budget-brief{margin-top:17px}
.wb-app .task-start-card .task-brief{margin-top:15px}
.wb-app .task-start-card .task-rules{margin-top:12px}
.wb-app .task-start-card #taskConsent>.consent-check{margin-top:0}
.wb-app .task-start-card #taskConsent>.actions{margin-top:14px}

/* Put the task framing before the store and keep the catalog focused on browsing. */
.wb-app .task-store-intro{margin:17px 0 4px;padding:18px 20px;border:1px solid #e8e2f5;border-radius:17px;background:linear-gradient(135deg,#f8f6ff,#fffaf7)}
.wb-app .task-store-kicker{display:block;color:#7667d3;font-size:11px;font-weight:850;letter-spacing:.12em}
.wb-app .task-store-intro h2{margin:6px 0 4px;color:#38334c;font-size:22px;letter-spacing:-.04em}
.wb-app .task-store-intro p{margin:0;color:#656174;font-size:14px;line-height:1.75;font-weight:650}
.wb-app .task-brief-meta span,.wb-app .task-rules span{font-weight:800}

/* A compact status page gives the asynchronous avatar job a visible, honest rhythm. */
.wb-app .preparation-status{display:flex;align-items:center;gap:17px;margin:22px 0 18px;padding:18px;border:1px solid #e8e3f5;border-radius:17px;background:linear-gradient(135deg,#faf9ff,#fff)}
.wb-app .status-orb{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:16px;background:#f0edff;box-shadow:0 0 0 8px #f7f5ff}
.wb-app .status-orb span{display:block;width:19px;height:19px;border:3px solid #c8c1f1;border-top-color:#6857dc;border-radius:50%;animation:wb-spin 1s linear infinite}
.wb-app .preparation-status strong{display:block;color:#46405b;font-size:15px}
.wb-app .preparation-status p{margin:3px 0 0;color:#777387;font-size:12px;line-height:1.7}
.wb-app .preparation-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0 10px}
.wb-app .preparation-step{display:flex;align-items:center;gap:7px;color:#a19dae;font-size:11px;line-height:1.4}
.wb-app .preparation-step i{display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border:1px solid #e2deed;border-radius:50%;font-style:normal;font-size:10px}
.wb-app .preparation-step.done,.wb-app .preparation-step.current{color:#6657c3;font-weight:750}
.wb-app .preparation-step.done i{color:#fff;border-color:#7c6cda;background:#7c6cda}
.wb-app .preparation-step.current i{border-color:#9b8de8;background:#f1efff;box-shadow:0 0 0 4px #f5f3ff}
.wb-app .preparation-meter{height:7px;overflow:hidden;border-radius:99px;background:#eeecf5}
.wb-app .preparation-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8e7de2,#c3bbfa);transition:width .4s ease}
.wb-app .preparation-meta{margin:10px 0 0;font-size:11px}
@keyframes wb-spin{to{transform:rotate(360deg)}}

/* The assistant stays available as a small floating control instead of taking a store column. */
.wb-app .store-body .shop-layout{display:block}
.wb-app .store-body .shop-layout>section{min-width:0;padding-right:290px}
.wb-app .store-body .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{position:fixed;right:24px;top:50%;bottom:auto;transform:translateY(-50%);z-index:25;width:300px;min-height:0;max-height:min(480px,calc(100dvh - 48px));overflow-x:hidden;overflow-y:auto;padding:18px;border-radius:22px;box-shadow:0 18px 45px rgba(39,40,60,.25)}
.wb-app .assistant-card .assistant-head h2{margin-top:2px}
.wb-app .assistant-label{display:block;color:#cfc9f8;font-size:10px;letter-spacing:.1em}
.wb-app .assistant-live{align-self:flex-start;padding:4px 7px;border-radius:99px;color:#d8f5e9;background:rgba(142,219,193,.13);font-size:10px}
.wb-app .store-body .assistant-card .assistant-mini,.wb-app .cart-with-assistant .assistant-card .assistant-mini{display:block;margin:14px 0 0}
.wb-app .store-body .assistant-card .assistant-portrait,.wb-app .cart-with-assistant .assistant-card .assistant-portrait{width:100%;height:154px;min-height:154px;margin:0 0 12px;border-radius:18px}
.wb-app .store-body .assistant-card .assistant-portrait img,.wb-app .cart-with-assistant .assistant-card .assistant-portrait img{width:100%;height:100%;min-height:0;object-fit:contain}
.wb-app .assistant-mini-copy strong,.wb-app .assistant-mini-copy span{display:block}
.wb-app .assistant-mini-copy strong{color:#fff;font-size:12px}
.wb-app .assistant-mini-copy span{margin-top:4px;color:rgba(255,255,255,.64);font-size:11px;line-height:1.65}
.wb-app .assistant-card>.assistant-message{display:block}
.wb-app .assistant-message{position:relative;margin-top:10px;max-height:145px;min-height:0;padding:12px;overflow:auto;border-radius:17px 17px 17px 6px;box-shadow:0 8px 16px rgba(32,31,57,.08);line-height:1.75}
.wb-app .store-body .assistant-card .assistant-message{color:#555;background:#fff}
.wb-app .store-body .assistant-card .assistant-message:before{background:#fff}
.wb-app .store-body .assistant-card .assistant-message strong{color:#3f4050}
.wb-app .assistant-question-box{display:flex;align-items:center;gap:8px;min-width:0;margin-top:10px;padding:9px 10px;border:1px solid rgba(255,255,255,.18);border-radius:12px;color:rgba(255,255,255,.72);background:rgba(255,255,255,.07);font-size:10px;line-height:1.55}
.wb-app .assistant-question-icon{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:8px;color:#d8d1ff;background:rgba(255,255,255,.12);font-size:17px;line-height:1}
.wb-app .store-body .assistant-question-box{border-color:#e6e1f2;color:#807b94;background:#faf9ff}
.wb-app .store-body .assistant-question-icon{color:#6b5bc9;background:#f0edff}
.wb-app .store-body{padding-bottom:48px}
.wb-app .store-cart-link{font-weight:750}

.wb-app .target-reveal-card{max-width:780px;margin-inline:auto}
.wb-app .target-reveal-card>.muted{max-width:650px}
.wb-app .target-reveal-card .assistant-reveal{max-width:690px;margin:18px auto 12px;padding:22px;gap:22px;background:#f5f5f7}
.wb-app .target-reveal-card .assistant-reveal-avatar{background:transparent;box-shadow:none;border:0;border-radius:0}
.wb-app .target-reveal-card .assistant-reveal-avatar img{border-radius:0}
.wb-app .assistant-reveal-copy{min-width:0}
.wb-app .assistant-reveal-copy .role-badge{display:inline-block;padding:4px 9px;line-height:1.5}
.wb-app .assistant-reveal-copy h2{margin:5px 0 6px;font-size:22px}
.wb-app .assistant-reveal-copy p{margin:0;min-height:0;color:#656274;line-height:1.7}
.wb-app .assistant-condition{margin-top:12px;padding:12px 14px;border:1px solid #e7e7ec;border-radius:13px;background:#fff}
.wb-app .assistant-condition strong{display:block;color:#5f51bd;font-size:11px}
.wb-app .assistant-condition p{min-height:0;margin:4px 0 0;color:#5f5a70;font-size:12px;line-height:1.75}
.wb-app .assistant-instruction{max-width:690px;margin:14px auto;padding:15px 17px;border:1px solid #e8e2f5;border-radius:14px;background:#faf9ff}
.wb-app .assistant-instruction strong{color:#5f51bd}
.wb-app .assistant-instruction p{margin:5px 0 0;color:#5f5a70;line-height:1.8}
.wb-app .exposure-gate{max-width:690px;margin:19px auto 0;padding-top:15px;border-top:1px solid #eeeaf5;display:flex;align-items:center;justify-content:space-between;gap:18px}
.wb-app .exposure-gate .exposure-note{margin:0}
.wb-app .exposure-gate button{min-width:150px}
.wb-app .task-check-card{max-width:780px;margin-inline:auto}
.wb-app .task-check-card .comprehension-grid{max-width:650px;margin:20px auto 0}
.wb-app .task-check-card .button-row{max-width:650px;margin-inline:auto;justify-content:flex-end}

@media(max-width:940px){
 .wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{right:16px;top:50%;bottom:auto;transform:translateY(-50%);width:250px}
 .wb-app .store-body .shop-layout>section{padding-right:0}
 .wb-app .store-body .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .wb-app .store-body .shop-layout>.assistant-card .assistant-head,.wb-app .cart-with-assistant>.assistant-card .assistant-head{display:flex}
}
@media(max-width:620px){
 .wb-app .preparation-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 8px}
 .wb-app .preparation-status{align-items:flex-start;padding:15px}
 .wb-app .store-cart-link{display:flex!important;justify-content:center}
 .wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{right:12px;top:auto;bottom:12px;transform:none;width:min(230px,calc(100vw - 24px));padding:12px}
 .wb-app .store-body .assistant-card .assistant-portrait,.wb-app .cart-with-assistant .assistant-card .assistant-portrait{height:112px;min-height:112px}
 .wb-app .store-body{padding-bottom:205px}
 .wb-app .target-reveal-card .assistant-reveal{margin-top:16px;padding:16px;gap:14px}
 .wb-app .target-reveal-card .assistant-reveal-avatar{justify-self:center}
 .wb-app .assistant-reveal-copy h2{font-size:18px}
 .wb-app .assistant-reveal-copy p{min-height:0}
 .wb-app .exposure-gate{display:block}
 .wb-app .exposure-gate button{width:100%;margin-top:12px}
}

/* The shopping assistant prompt is an actual local input, not a decorative note. */
.wb-app .assistant-question-form{display:flex;align-items:center;gap:7px;min-width:0;margin-top:10px;padding:6px 7px 6px 9px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:rgba(255,255,255,.08)}
.wb-app .assistant-question-form .assistant-question-icon{flex:0 0 22px}
.wb-app .assistant-question-form input{min-width:0;flex:1;padding:4px 0;border:0;outline:0;color:#fff;background:transparent;font-size:11px;line-height:1.5}
.wb-app .assistant-question-form input::placeholder{color:rgba(255,255,255,.62)}
.wb-app .assistant-question-form input:focus{box-shadow:none}
.wb-app .assistant-question-form button{flex:0 0 auto;padding:6px 8px;border:0;border-radius:9px;color:#fff;background:rgba(255,255,255,.16);font-size:10px;font-weight:800}
.wb-app .assistant-question-form button:hover{background:rgba(255,255,255,.25)}
.wb-app .store-body .assistant-question-form{border-color:#e5e0f2;background:#faf9ff}
.wb-app .store-body .assistant-question-form input{color:#4d4b5e}
.wb-app .store-body .assistant-question-form input::placeholder{color:#9993ad}
.wb-app .store-body .assistant-question-form button{color:#fff;background:#7667d3}

/* Make the detail modal read like a product page: clear hierarchy, useful information, and no dead white space. */
.wb-app .commerce-dialog .detail-scroll{background:#fff}
.wb-app .commerce-dialog .detail-commerce{align-items:start}
.wb-app .commerce-dialog .detail-summary{padding-top:2px}
.wb-app .commerce-dialog .detail-summary h2{max-width:580px;font-size:30px;line-height:1.2}
.wb-app .commerce-dialog .detail-price-box{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:0 12px;margin-top:18px;padding:15px 17px;border:1px solid #f4dfe4;border-radius:15px;background:linear-gradient(135deg,#fff6f7,#fffaf7)}
.wb-app .commerce-dialog .detail-price-box small{color:#9c8f94;font-size:11px}
.wb-app .commerce-dialog .detail-price-box .detail-price{margin:0;color:#d63c52;font-size:30px}
.wb-app .commerce-dialog .detail-price-box>span{grid-column:1/-1;margin-top:4px;color:#a18f96;font-size:10px}
.wb-app .commerce-dialog .detail-benefits{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.wb-app .commerce-dialog .detail-benefit{display:block;min-height:65px;padding:11px 12px;border:1px solid #eeeaf4;border-radius:12px;background:#fcfbfe}
.wb-app .commerce-dialog .detail-benefit b{display:block;margin-bottom:4px;color:#6b5dbf;font-size:11px}
.wb-app .commerce-dialog .detail-benefit span{display:block;color:#747181;font-size:11px;line-height:1.65}
.wb-app .detail-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:11px}
.wb-app .detail-section-heading h3{margin:0;color:#3f3d4c;font-size:17px}
.wb-app .detail-section-heading span{color:#9c97aa;font-size:10px}
.wb-app .detail-highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.wb-app .detail-highlight{display:flex;gap:9px;align-items:flex-start;min-height:58px;padding:11px 12px;border:1px solid #ece9f4;border-radius:12px;background:#faf9fd}
.wb-app .detail-highlight i{flex:0 0 auto;color:#8071d1;font-size:10px;font-style:normal;font-weight:850;letter-spacing:.05em}
.wb-app .detail-highlight span{color:#5f5c6d;font-size:11px;line-height:1.65}
.wb-app .detail-chip-list{display:flex;flex-wrap:wrap;gap:8px}
.wb-app .detail-chip-list span{padding:7px 10px;border-radius:99px;color:#6559b3;background:#f3f0ff;font-size:11px}
.wb-app .detail-source-note{margin:20px 0 0;padding-top:12px;border-top:1px solid #f0edf5;color:#aaa5b1;font-size:10px;line-height:1.65}
.wb-app .commerce-dialog .modal-assistant .assistant-question-form{margin-top:12px}
.wb-app .commerce-dialog .modal-assistant .assistant-message{border-radius:17px 17px 17px 6px}
@media(max-width:620px){
 .wb-app .commerce-dialog .detail-summary h2{font-size:24px}
 .wb-app .commerce-dialog .detail-price-box .detail-price{font-size:26px}
 .wb-app .commerce-dialog .detail-benefits,.wb-app .detail-highlight-grid{grid-template-columns:1fr}
}

/* Square source images should fill the gallery width; do not create large letterbox gaps. */
.wb-app .commerce-dialog .gallery-stage{aspect-ratio:auto;overflow:visible;background:transparent;box-shadow:none}
.wb-app .commerce-dialog .gallery-slide{height:auto}
.wb-app .commerce-dialog .gallery-slide.active{display:block}
.wb-app .commerce-dialog .gallery-slide>.gallery-art,.wb-app .commerce-dialog .gallery-slide>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#f0eff8;border-radius:19px}
.wb-app .commerce-dialog .gallery-slide figcaption{border:1px solid #e8e5f2;border-top:0;border-radius:0 0 13px 13px}

/* Keep the configuration block directly above the purchase action, and make highlights scan like a real product page. */
.wb-app .commerce-dialog .detail-options{margin-top:17px;padding-top:15px;border-top:1px solid #eeeaf4}
.wb-app .commerce-dialog .detail-options .detail-section-heading{margin-bottom:9px}
.wb-app .detail-option-list{display:grid;gap:8px}
.wb-app .detail-option{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-height:40px;padding:6px 9px;border:1px solid #eeeaf4;border-radius:11px;background:#fcfbfe}
.wb-app .detail-option>span{color:#777183;font-size:11px;font-weight:800}
.wb-app .detail-option select{width:100%;min-width:0;padding:7px 28px 7px 9px;border:1px solid #e3def2;border-radius:8px;color:#554c89;background:#fff;font:inherit;font-size:11px}
.wb-app .detail-option select:focus{outline:3px solid rgba(118,103,211,.15);border-color:#8d7ee0}
.wb-app .detail-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wb-app .detail-highlight{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:9px;min-height:0;padding:12px 13px;border:1px solid #e7e2f2;border-radius:13px;background:linear-gradient(135deg,#fbfaff,#fff)}
.wb-app .detail-highlight i{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;color:#6b5bc5;background:#f0edff;font-size:10px;font-style:normal;font-weight:850;letter-spacing:0}
.wb-app .detail-highlight span{align-self:center;color:#5b5868;font-size:11px;line-height:1.6;font-weight:650}
.wb-app .commerce-dialog .detail-actions{align-items:stretch;margin-top:16px}
.wb-app .commerce-dialog .detail-actions .secondary{min-width:92px}
@media(max-width:620px){
 .wb-app .detail-highlight-grid{grid-template-columns:1fr}
 .wb-app .detail-option{grid-template-columns:50px minmax(0,1fr)}
}

/* Reserve the floating assistant's space so sorting and purchase controls remain usable. */
@media(min-width:941px){
 .wb-app .store-body .shop-head{margin-right:290px}
}
@media(max-width:940px){
 .wb-app #app:has(.store-frame),.wb-app #app:has(.cart-with-assistant){padding-bottom:255px}
 .wb-app .store-body .shop-layout>.assistant-card,.wb-app .cart-with-assistant>.assistant-card{
  position:fixed;left:12px;right:12px;top:auto;bottom:12px;transform:none;width:auto;
  display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;max-height:220px;padding:12px;
 }
 .wb-app .store-body .shop-layout>.assistant-card .assistant-head,.wb-app .cart-with-assistant>.assistant-card .assistant-head,
 .wb-app .store-body .assistant-mini-copy,.wb-app .cart-with-assistant .assistant-mini-copy{display:none}
 .wb-app .store-body .assistant-card .assistant-mini,.wb-app .cart-with-assistant .assistant-card .assistant-mini{margin:0;grid-column:1;grid-row:1}
 .wb-app .store-body .assistant-card .assistant-portrait,.wb-app .cart-with-assistant .assistant-card .assistant-portrait{height:90px;min-height:90px;margin:0}
 .wb-app .store-body .assistant-card>.assistant-message,.wb-app .cart-with-assistant .assistant-card>.assistant-message{grid-column:2;grid-row:1;margin:0;max-height:100px;min-height:0;overflow:auto}
 .wb-app .store-body .assistant-card>.assistant-question-form,.wb-app .cart-with-assistant .assistant-card>.assistant-question-form{grid-column:1/-1;margin:0}
}
@media(max-width:620px){
 .wb-app .store-results{gap:7px;flex-wrap:wrap}
 .wb-app .store-results strong{font-size:16px;white-space:nowrap}
}

/* Order confirmation: selected item, simulated balance, and a compact companion column. */
.wb-app .commerce-dialog.checkout-dialog{width:960px;height:auto;min-height:0;max-height:calc(100dvh - 32px)}
.wb-app .checkout-dialog .checkout-modal{height:auto;min-height:0;align-items:start}
.wb-app .checkout-dialog .checkout-summary{padding:30px;max-height:calc(100dvh - 32px);overflow-y:auto}
.wb-app .checkout-summary h2{margin:4px 0 8px;font-size:25px;letter-spacing:-.03em}
.wb-app .checkout-summary>.muted{font-size:13px;line-height:1.7}
.wb-app .checkout-account{margin:20px 0;padding:20px;border:1px solid #e5dff7;border-radius:18px;background:linear-gradient(135deg,#f3efff,#faf9ff)}
.wb-app .checkout-account-main{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid #e4ddf4}
.wb-app .checkout-account-main>span{color:#625680;font-size:13px}
.wb-app .checkout-account-main small{display:block;margin-top:6px;font-size:10px;color:#9990ae}
.wb-app .checkout-account-main>strong{font-size:29px;color:#6654bc;white-space:nowrap}
.wb-app .checkout-account-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;font-size:13px;color:#777080}
.wb-app .checkout-account-row b,.wb-app .checkout-account-row strong{color:#494055;white-space:nowrap}
.wb-app .checkout-remaining strong{color:#6552b9;font-size:21px}
.wb-app .checkout-account>p{margin:13px 0 0;font-size:11px;color:#958bA5}
.wb-app .checkout-order{padding:16px;border:1px solid #ece8f2;border-radius:16px}
.wb-app .checkout-order-title{display:flex;justify-content:space-between;font-size:13px;color:#554e63}
.wb-app .checkout-order-title span{font-size:11px;color:#a39bad}
.wb-app .checkout-order .checkout-product{display:grid;grid-template-columns:80px minmax(0,1fr);gap:14px;margin:16px 0;padding:0;align-items:center}
.wb-app .checkout-order .cart-thumb{width:80px;height:80px}
.wb-app .checkout-order h3{margin:0;font-size:14px;line-height:1.6}
.wb-app .checkout-order .checkout-product p{margin:7px 0 0;font-size:11px;color:#8c8496;line-height:1.65}
.wb-app .checkout-order .checkout-product p strong{float:right;color:#56466f;font-size:13px}
.wb-app .checkout-order>.checkout-account-row{border-top:1px solid #efecf4}
.wb-app .checkout-notice{margin:18px 0;font-size:12px;color:#92899f;line-height:1.75}
.wb-app .checkout-actions{display:flex;flex-wrap:wrap;gap:10px}
.wb-app .checkout-actions>button{flex:1;white-space:nowrap}
@media(max-width:940px){
 .wb-app .checkout-dialog .checkout-modal{max-height:calc(100dvh - 32px)}
 .wb-app .checkout-dialog .checkout-summary{padding:20px;overflow:auto;min-height:0}
 .wb-app .checkout-dialog .modal-assistant{flex-shrink:0}
}
@media(max-width:620px){
 .wb-app .checkout-account{padding:15px}
 .wb-app .checkout-account-main>strong{font-size:25px}
 .wb-app .checkout-order .checkout-product{grid-template-columns:64px minmax(0,1fr)}
 .wb-app .checkout-order .cart-thumb{width:64px;height:64px}
}
.wb-app .commerce-dialog.checkout-dialog{top:50%;bottom:auto;transform:translateY(-50%);margin-block:0}
.wb-app #app.dialog-open .cart-with-assistant>.assistant-card{visibility:hidden}

/* One row of response numbers; endpoint wording appears only once beneath it. */
.wb-app .likert-anchors.no-mid{display:flex;justify-content:space-between;gap:20px;margin-top:8px}
.wb-app .likert-anchors.no-mid>span{font-size:12px;line-height:1.5;font-weight:400}
.wb-app .likert-anchors.no-mid>span:last-child{text-align:right}
.wb-app .task-budget-simple{margin:24px 0;padding:22px;border:1px solid #e4dff4;border-radius:18px;background:linear-gradient(135deg,#f5f1ff,#faf9fe)}
.wb-app .task-budget-simple>span{display:block;color:#80748f;font-size:13px}
.wb-app .task-budget-simple>strong{display:block;margin:5px 0 14px;color:#6653b4;font-size:34px}
.wb-app .task-budget-simple>p{margin:0;font-size:15px;line-height:1.8}
.wb-app .task-step-list{margin:24px 0;padding-left:24px}
.wb-app .task-step-list li{padding:0 0 14px 8px;font-size:15px;line-height:1.8}
.wb-app .task-step-list li::marker{color:#7963c4;font-weight:700}

/* Product details share a top-aligned grid and a restrained typography scale. */
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-scroll{padding:24px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-commerce{gap:24px;align-items:start}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-summary{padding:0}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-brand{margin:0 0 10px;font-size:11px;line-height:1.5;letter-spacing:.04em}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-summary h2{margin:0 0 12px;font-size:23px;line-height:1.4;letter-spacing:-.025em;overflow-wrap:anywhere}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-desc{margin:0;font-size:12px;line-height:1.8;color:#82798c}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-price-box{margin-top:16px;padding:14px 16px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-price-box .detail-price{font-size:26px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-price-box>span{flex-basis:100%;margin:0}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-options{margin-top:18px;padding-top:0;border:0}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-options h3{font-size:13px;color:#746b82}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-option{padding:0;min-height:36px;border:0;background:transparent;grid-template-columns:40px minmax(0,1fr);gap:8px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-option select{padding:8px 25px 8px 10px;font-size:12px;min-height:36px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-actions{margin-top:20px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-actions button{min-width:0;padding:12px;font-size:12px;white-space:nowrap}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .gallery-stage{margin:0}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .gallery-slide{margin:0}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .gallery-slide figcaption{padding:8px 10px;font-size:10px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-section{margin-top:24px;padding-top:20px;border-top:1px solid #ede9f3}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-section-heading h3{font-size:16px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant{padding:24px 20px 24px 0}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant>.assistant-card{top:0;padding:16px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant .assistant-head h2{font-size:20px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant .assistant-portrait{height:136px;min-height:136px}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant .assistant-message{font-size:12px;line-height:1.8;max-height:240px;overflow-y:auto}
@media(min-width:941px){
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-commerce{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
}
@media(max-width:940px){
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant{padding:12px 42px 12px 12px}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-scroll{padding:18px}
}
@media(max-width:620px){
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-commerce{grid-template-columns:1fr;gap:20px}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-summary h2{font-size:21px}
}
.wb-app .multi-cart .cart-item{display:grid;grid-template-columns:24px 76px minmax(0,1fr) auto;gap:15px;align-items:center}
.wb-app .multi-cart .cart-item .cart-thumb{width:76px;height:76px}
.wb-app .multi-cart .cart-item-info h3{margin:0;font-size:15px;line-height:1.6}
.wb-app .multi-cart .cart-item-info p{font-size:12px;color:#908699}
.wb-app .cart-pick{margin:0}
.wb-app .multi-cart input[type=checkbox]{width:18px;height:18px;accent-color:#7961cb}
.wb-app .cart-settlement{margin:24px 0;padding:20px;border:1px solid #e1daf4;border-radius:18px;background:#f7f4ff}
.wb-app .cart-funds{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;font-size:12px;color:#8d819d}
.wb-app .cart-funds b,.wb-app .cart-funds strong{display:block;margin-top:5px;color:#605071;font-size:20px}
.wb-app .cart-funds #selectedTotal{color:#7257c2;font-size:25px}
.wb-app .cart-settlement small{display:block;color:#9b8eab;font-size:11px;line-height:1.7}
.wb-app .cart-settlement .over-budget,.wb-app .cart-funds .over-budget{color:#b65262}
@media(max-width:620px){
 .wb-app .multi-cart .cart-item{grid-template-columns:20px 54px minmax(0,1fr);gap:10px}
 .wb-app .multi-cart .cart-item .cart-thumb{width:54px;height:54px}
 .wb-app .multi-cart .cart-item-actions{grid-column:3;display:flex;align-items:center;justify-content:space-between}
 .wb-app .cart-funds b{font-size:16px}
}

/* Shared survey instructions precede their question group; response meanings stay visible. */
.survey-context-note{margin:8px 0 24px;padding:16px 20px;border-left:3px solid #8771d8;border-radius:0 12px 12px 0;background:#f6f3fc;color:#514965;font-size:14px;line-height:1.7}
.survey-context-note p{margin:4px 0}.survey-context-note strong{display:block;font-size:13px;color:#756a8e}.survey-context-note .survey-reference-product{font-weight:650;font-size:16px;color:#302940}
.survey-question-group+.survey-question-group{margin-top:28px}
.labelled-scale .survey-option label{display:flex;flex-direction:column;gap:6px;padding:12px 6px}.labelled-scale .survey-option label small{font-size:12px;font-weight:400;line-height:1.4;white-space:normal}
.survey-progress-copy{gap:8px;flex-wrap:wrap}.survey-progress-copy #surveyAnswerLabel{font-size:13px}
@media(max-width:600px){.survey-context-note{padding:12px 14px}.survey-progress-copy{align-items:flex-start;flex-direction:column}.labelled-scale .survey-option label small{font-size:11px}}

.wb-app .survey-reading-card .likert-options.labelled-scale .survey-option label{display:flex;flex-direction:column;justify-content:center;height:auto;min-height:60px;gap:5px;padding:8px 4px}
/* Narrow order review uses one scroll area; the assistant message is not clipped. */
@media(max-width:940px){
 .wb-app .commerce-dialog.checkout-dialog{overflow-y:auto}
 .wb-app .checkout-dialog .checkout-modal{display:flex;flex-direction:column;height:auto;max-height:none;overflow:visible}
 .wb-app .checkout-dialog .checkout-summary{order:2;flex:none;width:100%;max-height:none;overflow:visible}
 .wb-app .checkout-dialog .modal-assistant{order:1;position:static;width:100%;height:auto;max-height:none;overflow:visible;padding:14px 40px 0 14px}
 .wb-app .checkout-dialog .modal-assistant>.assistant-card{position:static;display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;max-height:none;height:auto;overflow:visible;padding:12px;margin:0;width:100%;transform:none}
 .wb-app .checkout-dialog .modal-assistant .assistant-head,.wb-app .checkout-dialog .modal-assistant .assistant-mini-copy{display:none}
 .wb-app .checkout-dialog .modal-assistant .assistant-mini{grid-column:1;grid-row:1;margin:0;display:block}
 .wb-app .checkout-dialog .modal-assistant .assistant-portrait{height:72px;min-height:72px;margin:0}
 .wb-app .checkout-dialog .modal-assistant .assistant-message{grid-column:2;grid-row:1;margin:0;min-height:0;max-height:none;overflow:visible;font-size:12px}
 .wb-app .checkout-dialog .modal-assistant .assistant-question-form{grid-column:1/-1;margin:0}
}

.wb-app .consent-section h2{margin:0 0 8px;font-size:16px;line-height:1.5;color:#51476d}.wb-app .consent-section p{margin:0;line-height:1.85;font-size:14px}.wb-app .consent-list{display:grid;gap:12px}.wb-app .research-contact{padding:18px 20px 28px;margin:0;text-align:center;line-height:1.8;font-size:13px;color:#746985}.wb-app .research-contact a{color:#6953b5;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.wb-app.wb-entry>footer{display:block}
.wb-app .consent-item.consent-section{display:block}.wb-app .consent-item.consent-section::before{content:none;display:none}

.wb-app .shopping-clock{position:sticky;top:8px;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;margin:0 0 16px;border:1px solid #ddd4ef;border-radius:14px;background:#faf8ff;color:#665181;box-shadow:0 4px 14px #362d5910}
.wb-app .shopping-clock strong{margin-left:8px;font-size:22px;font-variant-numeric:tabular-nums;color:#674eb3}.wb-app .shopping-clock small{font-size:12px;line-height:1.5}.wb-app .shopping-clock.time-low{border-color:#dfb6a6;background:#fff6ef}.wb-app .shopping-clock.time-low strong{color:#a75231}
.wb-app .commerce-dialog .shopping-clock{top:0;z-index:5;margin-bottom:16px;padding:10px 12px;flex-wrap:wrap}
@media(max-width:620px){.wb-app .shopping-clock{align-items:flex-start;flex-direction:column;gap:2px;padding:10px 12px}.wb-app .shopping-clock strong{font-size:20px}}

/* Speech above the robot's head; shared by shelf, detail and checkout. */
.wb-app .assistant-card.speech-assistant{display:flex!important;flex-direction:column;align-items:stretch;gap:10px;background:#f4f4f7!important;color:#363342;border:1px solid #e6e4ec;box-shadow:0 8px 28px #29203d12;border-radius:22px}
.wb-app .assistant-card.speech-assistant .assistant-head,.wb-app .assistant-card.speech-assistant .assistant-mini-copy{display:none!important}
.wb-app .assistant-card.speech-assistant>.assistant-message{order:0;position:relative;overflow:visible!important;max-height:none!important;min-height:0;margin:0 0 10px!important;padding:14px 16px;background:#fff;color:#40394c;border:1px solid #ddd7ea;border-radius:18px!important;font-size:13px;line-height:1.75;box-shadow:0 3px 12px #33234508}
.wb-app .assistant-card.speech-assistant>.assistant-message::before{display:none}
.wb-app .assistant-card.speech-assistant>.assistant-message::after{content:'';position:absolute;top:100%;left:calc(50% - 9px);width:16px;height:16px;background:#fff;border-right:1px solid #ddd7ea;border-bottom:1px solid #ddd7ea;transform:translateY(-8px) rotate(45deg)}
.wb-app .assistant-card.speech-assistant .assistant-message-copy{display:block;max-height:220px;overflow-y:auto}
.wb-app .assistant-card.speech-assistant>.assistant-mini{order:1;display:block;margin:0!important}
.wb-app .assistant-card.speech-assistant .assistant-portrait{height:145px!important;min-height:0!important;width:100%;margin:0!important;background:transparent!important;border:0;box-shadow:none}
.wb-app .assistant-card.speech-assistant .assistant-portrait img{height:100%;width:100%;object-fit:contain}
.wb-app .assistant-card.speech-assistant>.assistant-question-form{order:2;margin:0;border-color:#ded9e9;background:#fff}
.wb-app .assistant-card.speech-assistant .assistant-question-form input{color:#40394c}
.wb-app .assistant-card.speech-assistant .assistant-question-form input::placeholder{color:#8b8398}
.wb-app .assistant-card.speech-assistant .assistant-question-form button{background:#7667d3;color:#fff}
[data-shopping-requirement]{display:block;margin-top:3px}
[data-minimum-wait]{font-size:13px;color:#68568d}
@media(max-width:760px){
 .wb-app .assistant-card.speech-assistant{gap:4px;padding:10px!important}
 .wb-app .assistant-card.speech-assistant .assistant-portrait{height:66px!important}
 .wb-app .assistant-card.speech-assistant .assistant-message-copy{max-height:105px;font-size:12px}
 .wb-app .assistant-card.speech-assistant>.assistant-message{padding:9px 12px;margin-bottom:8px!important}
 .wb-app #app:has(.store-frame),.wb-app #app:has(.cart-with-assistant){padding-bottom:300px}
}
/* Give the desktop assistant a real column so it cannot cover the cart button. */
@media(min-width:941px){
 .wb-app .store-body .shop-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 270px;gap:22px;align-items:start}
 .wb-app .store-body .shop-layout>section{padding-right:0!important;min-width:0}
 .wb-app .store-body .shop-layout>.speech-assistant,.wb-app .cart-with-assistant>.speech-assistant{position:sticky!important;top:20px!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;width:100%!important;max-height:calc(100dvh - 50px);overflow-y:auto;align-self:start}
}
@media(max-width:940px){
 .wb-app .store-body .shop-layout>.speech-assistant,.wb-app .cart-with-assistant>.speech-assistant{max-height:min(280px,45dvh);overflow-y:auto}
 .wb-app .store-body .speech-assistant .assistant-portrait,.wb-app .cart-with-assistant .speech-assistant .assistant-portrait{height:48px!important}
 .wb-app .store-body .speech-assistant .assistant-message-copy,.wb-app .cart-with-assistant .speech-assistant .assistant-message-copy{max-height:78px}
 .wb-app #app:has(.store-frame),.wb-app #app:has(.cart-with-assistant){padding-bottom:300px}
}

/* Persistent shopping frame: header + clock stay put; only product content scrolls. */
@media(min-width:941px){
 .wb-app.wb-shopping{height:100dvh;overflow:hidden}
 .wb-app.wb-shopping>.top{height:62px;min-height:62px;padding-block:10px}
 .wb-app.wb-shopping>#app{height:calc(100dvh - 62px);margin:0 auto;padding:8px 22px 8px!important;max-width:1440px}
 .wb-app.wb-shopping>#app>div{height:100%;display:flex;flex-direction:column;min-height:0}
 .wb-app.wb-shopping .shopping-clock{position:relative;top:auto;z-index:40;flex-shrink:0;margin-bottom:10px;padding:8px 16px}
 .wb-app.wb-shopping .store-frame{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
 .wb-app.wb-shopping .store-header{padding:12px 20px;flex-shrink:0}
 .wb-app.wb-shopping .store-utility{padding-block:4px;flex-shrink:0}
 .wb-app.wb-shopping .store-breadcrumb{padding-block:5px;flex-shrink:0}
 .wb-app.wb-shopping .store-nav{padding-bottom:8px;flex-shrink:0}
 .wb-app.wb-shopping .store-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 18px}
 .wb-app.wb-shopping .shop-head{flex-shrink:0;margin-bottom:10px}
 .wb-app.wb-shopping .store-body .shop-layout{flex:1;min-height:0;overflow:hidden}
 .wb-app.wb-shopping .shop-layout>section{min-height:0;overflow:auto;overscroll-behavior:contain;padding-bottom:24px}
 .wb-app.wb-shopping .shop-layout>.speech-assistant,.wb-app.wb-shopping .cart-with-assistant>.speech-assistant{position:relative!important;top:0!important;max-height:100%;min-height:0;z-index:1;overflow-y:auto}
 .wb-app.wb-shopping .cart-with-assistant{flex:1;min-height:0;overflow:hidden}
 .wb-app.wb-shopping .cart-with-assistant>section{height:100%;overflow:auto;overscroll-behavior:contain}
 .wb-app.wb-shopping .footactions{flex-shrink:0;margin:3px 0 0;gap:12px;min-height:28px}
 .wb-app.wb-shopping .footactions button{padding:4px 10px;font-size:12px}
 /* Two visual panels in one accessible modal layer, each with its own scroll area. */
 .wb-app :is(.product-detail-dialog,.checkout-dialog){background:transparent;border:0;box-shadow:none;overflow:visible;width:min(1400px,calc(100vw - 40px));max-width:none;padding:0}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-modal{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;overflow:visible;background:transparent}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-scroll{padding:26px;border-radius:24px;background:#fff;box-shadow:0 18px 54px #20183222;scrollbar-gutter:stable}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant{padding:0;overflow:visible;background:transparent;align-self:start;max-height:100%}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant>.speech-assistant{position:relative;top:0;width:100%;max-height:calc(100dvh - 48px);margin:0;overflow:auto;border-radius:24px;padding:18px}
 .wb-app :is(.product-detail-dialog,.checkout-dialog)>.close-modal{right:calc(290px + 32px);top:8px;z-index:5;background:#f3f1f8}
}
/* On small screens the assistant has its own area, never over the time notice. */
@media(max-width:940px){
 .wb-app.wb-shopping .shopping-clock{z-index:45}
 .wb-app.wb-shopping .shop-layout>.speech-assistant,.wb-app.wb-shopping .cart-with-assistant>.speech-assistant{z-index:20}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant{background:#f4f4f7;border-radius:22px;margin:10px}
}
.task-rule-summary{display:flex;gap:12px;flex-wrap:wrap;padding:14px 18px;margin:16px 0;background:#f5f2fb;border:1px solid #e4ddf0;border-radius:14px;color:#594479}
.task-rule-summary strong{font-size:15px}
.assistant-response-source{display:block;margin:4px 0 0;font-size:10px;line-height:1.5;color:#82798d}
.detail-section-nav{position:sticky;top:-26px;z-index:4;display:flex;gap:6px;padding:10px 0;margin-bottom:20px;background:#fff;border-bottom:1px solid #ece7f4;overflow:auto}
.detail-section-nav button{background:#f4f1fa;color:#615073;font-size:12px;padding:8px 12px;white-space:nowrap;border-radius:10px}
:is(.product-detail-dialog,.checkout-dialog) [id^="detail"]{scroll-margin-top:62px}
@media(max-width:940px){.detail-section-nav{top:0;padding:8px;background:#fff}}
.assistant-card.speech-assistant>.assistant-message,.assistant-card.speech-assistant>.assistant-mini,.assistant-card.speech-assistant>.assistant-question-form{flex-shrink:0!important}
@media(min-width:941px){
 .wb-app.wb-shopping .store-body .shop-layout{grid-template-rows:minmax(0,1fr)}
 .wb-app.wb-shopping .shop-layout>section{height:100%;max-height:100%;min-height:0}
 .wb-app.wb-shopping .store-header{padding:8px 18px}
 .wb-app.wb-shopping .store-breadcrumb{margin:0;padding:4px 20px;font-size:11px;line-height:18px}
 .wb-app.wb-shopping .store-nav{padding:0 18px 6px}
 .wb-app.wb-shopping .store-nav button{padding:7px 12px}
 .wb-app.wb-shopping .shop-head{margin-top:0;padding:0 0 8px;min-height:0}
 .wb-app.wb-shopping .shop-layout>.speech-assistant{padding:12px!important;gap:7px}
 .wb-app.wb-shopping .shop-layout>.speech-assistant .assistant-portrait{height:88px!important}
 .wb-app.wb-shopping .shop-layout>.speech-assistant .assistant-message-copy{max-height:130px}
 .wb-app.wb-shopping .shop-layout>.speech-assistant>.assistant-message{padding:10px 12px}
}
@media(min-width:941px){.wb-app.wb-shopping .shop-layout>.speech-assistant .assistant-message-copy{max-height:90px}}
.wb-app :is(.product-detail-dialog,.checkout-dialog):focus-visible{outline:none}

/* A taller companion panel, with full messages instead of an inner scrollbox. */
.wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-message-copy{max-height:none!important;overflow:visible!important;white-space:pre-line;overflow-wrap:anywhere}
.wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait,.wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait img{max-height:none!important}
@media(min-width:941px){
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-modal{grid-template-columns:minmax(0,1fr) 320px}
 .wb-app :is(.product-detail-dialog,.checkout-dialog)>.close-modal{right:calc(320px + 32px)}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant>.speech-assistant{min-height:calc(100dvh - 40px);max-height:none;overflow:visible;padding:20px;gap:14px}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant>.assistant-mini{flex:0 0 auto;display:flex;align-items:center;justify-content:center;margin:0!important}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait{height:clamp(180px,29dvh,260px)!important}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant>.assistant-question-form{margin-top:0}
}
@media(max-width:940px){
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait{height:140px!important}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant,.wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant{max-height:none!important;overflow:visible!important}
}
/* Readable instructions: decisions/actions carry the strongest emphasis. */
.wb-app .consent-summary{display:grid;gap:9px}
.wb-app .consent-summary .consent-section{padding:14px 18px}
.wb-app .consent-summary .consent-section h2{font-size:16px;margin:0 0 7px}
.wb-app .consent-summary .consent-section p{font-size:14px;line-height:1.85;margin:0}
.wb-app .consent-summary strong{color:#363044;font-weight:750}
.wb-app .target-reveal-card{max-width:920px}
.wb-app .target-reveal-card>h1{font-size:29px;line-height:1.35}
.wb-app .target-reveal-card .assistant-reveal{max-width:none;grid-template-columns:150px minmax(0,1fr);align-items:center;padding:24px;gap:26px}
.wb-app .target-reveal-card .assistant-reveal-avatar{width:150px;height:190px;min-height:0}
.wb-app .target-reveal-card .assistant-reveal-avatar img{width:100%;height:100%;object-fit:contain}
.wb-app .assistant-reveal-copy .assistant-action-heading{font-size:15px;font-weight:500;color:#746b7f;margin:0 0 12px}
.wb-app .assistant-action-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0 0 15px;counter-reset:actions}
.wb-app .assistant-action-list li{display:grid;grid-template-columns:25px minmax(0,1fr);column-gap:7px;row-gap:5px;align-content:start;counter-increment:actions;padding:14px 10px;background:#fff;border:1px solid #e9e5f0;border-radius:13px}
.wb-app .assistant-action-list li:before{content:counter(actions);grid-row:1/3;background:#e7e0f5;border-radius:50%;height:25px;display:grid;place-items:center;color:#6a4da2;font-size:13px;font-weight:700}
.wb-app .assistant-action-list strong{font-size:16px;line-height:1.55;color:#332b41}
.wb-app .assistant-action-list span{font-size:12px;line-height:1.6;color:#776f81}
.wb-app .assistant-reveal-copy #exposureCopy{font-size:13px;line-height:1.7}
.wb-app .assistant-condition{margin-top:16px;padding:15px 18px;border-left:3px solid #9981cc}
.wb-app .assistant-condition h3{font-size:14px;line-height:1.5;margin:0 0 7px;color:#6c558e}
.wb-app .assistant-condition .role-prose{font-size:15px;line-height:1.8;color:#534b60}
.wb-app .assistant-condition .role-prose strong{display:inline;font-size:17px;line-height:inherit;color:#42334f;font-weight:800}
@media(min-width:941px){
 /* Both panels inherit the dialog's one capped height, not the viewport independently. */
 .wb-app :is(.product-detail-dialog,.checkout-dialog){height:min(780px,calc(100dvh - 40px));max-height:calc(100dvh - 40px)}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-modal{height:100%;grid-template-rows:minmax(0,1fr);align-items:stretch}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-scroll{height:100%;max-height:100%;box-sizing:border-box}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant{height:100%;max-height:100%;align-self:stretch;min-height:0}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .modal-assistant>.speech-assistant{height:100%;min-height:0;max-height:100%;box-sizing:border-box;padding:18px;gap:14px;justify-content:flex-start;overflow-y:auto}
 /* Center the complete conversation group, not the avatar inside an empty flex row.
    Auto outer margins collapse for long replies, keeping their first line reachable. */
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant>.assistant-message{margin-top:auto!important}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant>.assistant-question-form{margin:0 0 auto}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait{height:clamp(170px,29dvh,240px)!important;min-height:0!important;max-height:240px!important}
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait img{height:100%!important;min-height:0!important;max-height:100%!important}
 /* Increase the mall companion without obstructing its separate countdown/header. */
 .wb-app.wb-shopping .store-body .shop-layout{grid-template-columns:minmax(0,1fr) 310px}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant{height:100%;padding:14px!important;gap:9px;container-type:size}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant .assistant-portrait{height:clamp(140px,22dvh,210px)!important;max-height:210px!important}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant .assistant-portrait img{height:100%!important;max-height:100%!important;min-height:0!important}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant>.assistant-message{margin-top:auto!important}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant>.assistant-mini{flex:0 0 auto;margin:0!important}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant>.assistant-question-form{margin:0 0 auto}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant .assistant-message-copy{max-height:none;overflow:visible;font-size:14px}
 .wb-app.wb-shopping .store-utility,.wb-app.wb-shopping .store-breadcrumb{display:none}
 .wb-app.wb-shopping .store-body{padding-top:8px}
}
@media(max-width:620px){
 .wb-app .target-reveal-card .assistant-reveal{grid-template-columns:1fr;padding:18px;gap:15px}
 .wb-app .target-reveal-card .assistant-reveal-avatar{width:100px;height:115px}
 .wb-app .target-reveal-card>h1{font-size:25px}
 .wb-app .assistant-action-list{grid-template-columns:1fr;gap:8px}
 .wb-app .assistant-action-list strong{font-size:16px}
}

.wb-app .purchase-facts{margin:14px 0 18px;border-block:1px solid #eeebf2;padding:14px 0;font-size:12px}
.wb-app .purchase-feature-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.wb-app .purchase-feature-tags span{background:#f5f2fa;color:#74628b;padding:5px 8px;border-radius:6px;line-height:1.5}
.wb-app .purchase-spec-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.wb-app .purchase-spec-strip>div{padding-right:10px;border-right:1px solid #ebe7ee;min-width:0}
.wb-app .purchase-spec-strip>div:last-child{border:0}
.wb-app .purchase-spec-strip strong{display:block;font-size:13px;font-weight:600;line-height:1.65;overflow-wrap:anywhere;color:#3c3545}
.wb-app .purchase-spec-strip span{display:block;color:#96909e;font-size:11px;margin-top:5px}
.wb-app .purchase-info-row{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:7px 0;line-height:1.7}
.wb-app .purchase-info-row>span{color:#96909e}
.wb-app .purchase-service-list{border-top:1px solid #eeebf2;padding-top:7px}
.wb-app .purchase-info-row>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 8px;color:#494252}
.wb-app .purchase-info-row i{font-style:normal;color:#b8b1bf}
.wb-app .purchase-info-row .delivery-highlight{font-size:13px;color:#d34459;background:#fff1f3;border-radius:4px;padding:1px 6px}
.wb-app .detail-section-nav [data-detail-top]{margin-left:auto;background:#f4f2f8;color:#74658b}
.wb-app .detail-summary .detail-options{margin-top:12px}

/* JD detail slices form one continuous image sequence. */
.wb-app .detail-long-images.stitched .detail-long-list{display:block;max-width:750px;margin:0 auto}
.wb-app .detail-long-images.stitched .detail-long-card{margin:0;padding:0;border:0;border-radius:0;background:#f5f5f5}
.wb-app .detail-long-images.stitched .detail-long-image{display:block;width:100%;height:auto;border:0;border-radius:0}
.wb-app .detail-long-card.image-failed{min-height:90px;display:grid;place-items:center;padding:16px!important}
.wb-app .detail-long-card.image-failed img{display:none}
.wb-app .long-image-retry{margin:12px;font-size:13px}

/* All speech surfaces use the same readable type size. */
.wb-app .assistant-card.speech-assistant .assistant-message-copy{font-size:14px!important;line-height:1.8;max-height:none!important;overflow:visible!important}
@media(min-width:941px){.wb-app.wb-shopping .cart-with-assistant{grid-template-columns:minmax(0,1fr) 310px}}
@media(max-width:940px){.wb-app .assistant-card.speech-assistant .assistant-message-copy{font-size:13px!important}}
@media(min-width:941px){
 .wb-app.wb-shopping .store-body .shop-head{width:calc(100% - 330px)}
 .wb-app.wb-shopping .shop-layout>.speech-assistant{margin-top:-52px!important;height:calc(100% + 52px);max-height:calc(100% + 52px)}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant{padding:10px!important;gap:8px}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant .assistant-portrait{height:clamp(120px,20dvh,190px)!important;max-height:190px!important}
 .wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant>.assistant-message{padding:10px 12px}
}
@media(min-width:941px){.wb-app.wb-shopping .store-body .shop-layout{overflow:visible}}
@media(min-width:941px){
 .wb-app .commerce-dialog:is(.product-detail-dialog,.checkout-dialog){width:min(1400px,calc(100vw - 40px));height:min(780px,calc(100dvh - 40px));max-height:calc(100dvh - 40px)}
}

/* Final bilingual questionnaire: a clear overall total and compact optional occupation field. */
.survey-total-label { display:block; font-size:19px; margin-bottom:10px; color:#514283; }
.survey-item[data-item="STATUS-OTHER"] { margin-top:-12px; padding-top:0; }
.survey-item[data-item="STATUS-OTHER"] textarea { min-height:54px; height:54px; }

/* Task requirements: visible before entry, with a compact reminder at the entry button. */
.wb-app .task-requirements{margin:22px 0 26px;padding:24px;border:2px solid #b2a0e9;border-radius:20px;background:#f6f3ff;color:#302646}
.wb-app .task-requirements h2{font-size:22px;margin:0 0 18px;font-weight:750}
.wb-app .task-requirement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.wb-app .task-requirement-grid>div{padding:18px;background:#fff;border:1px solid #e5def4;border-radius:14px;display:flex;flex-direction:column;gap:6px}
.wb-app .task-requirement-grid span{font-size:14px;color:#615875}
.wb-app .task-requirement-grid strong{font-size:42px;line-height:1.2;color:#6244b4}
.wb-app .task-requirement-grid small{font-size:18px}
.wb-app .task-requirement-grid b{font-size:17px}
.wb-app .task-requirement-grid p{font-size:14px;line-height:1.6;margin:0;color:#615875}
.wb-app .task-requirement-decision{font-size:17px;line-height:1.7;margin:18px 0 6px}
.wb-app .task-requirement-note{font-size:14px;line-height:1.7;margin:0;color:#615875}
.wb-app .store-entry-rules{padding:14px 18px;margin:18px 0 0;background:#f3effb;border-left:4px solid #8568d0;border-radius:8px;font-size:16px;line-height:1.7;color:#44345e}
.wb-app .store-entry-rules strong{display:block}
@media(max-width:600px){.wb-app .task-requirements{padding:16px}.wb-app .task-requirements h2{font-size:20px}.wb-app .task-requirement-grid{grid-template-columns:1fr;gap:10px}.wb-app .task-requirement-grid>div{padding:14px}.wb-app .task-requirement-grid strong{font-size:34px}}

/* September review: compact status, balanced checkout, separate close control. */
.wb-app .product-detail-dialog .detail-section-nav{padding-right:62px;box-sizing:border-box;flex-wrap:wrap;overflow:visible}
.wb-app .product-detail-dialog .detail-section-nav [data-detail-top]{margin-left:0}
.wb-app .assistant-card.speech-assistant .assistant-message-copy{font-size:16px!important;line-height:1.75}
.wb-app .shopping-clock small{font-size:14px;white-space:nowrap}
.wb-app .cart-funds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;text-align:center;align-items:start}
.wb-app .cart-funds>span{min-width:0;padding:8px}
.wb-app .cart-funds b,.wb-app .cart-funds #selectedTotal{font-size:clamp(21px,2.4vw,28px);line-height:1.3;font-variant-numeric:tabular-nums}
.wb-app .cart-settlement .actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.wb-app .cart-settlement .actions button{width:100%;min-height:52px}
.wb-app .cart-settlement>small{display:block;text-align:center;margin-top:12px}
@media(max-width:620px){.wb-app .shopping-clock{flex-direction:row;align-items:center;gap:8px}.wb-app .shopping-clock small{font-size:12px}.wb-app .shopping-clock strong{font-size:19px}.wb-app .cart-funds{gap:6px}.wb-app .cart-funds>span{padding:4px;font-size:12px}.wb-app .cart-funds b,.wb-app .cart-funds #selectedTotal{font-size:20px}.wb-app .assistant-card.speech-assistant .assistant-message-copy{font-size:15px!important}}
@media(max-width:380px){.wb-app .shopping-clock{padding:8px}.wb-app .shopping-clock>span{font-size:12px}.wb-app .shopping-clock small{font-size:11px}.wb-app .cart-funds b,.wb-app .cart-funds #selectedTotal{font-size:18px}}

/* Detail reading gate and a wider, balanced assistant pane. */
.wb-app .detail-reading-note{margin:8px 0 18px;padding:10px 14px;border-radius:10px;background:#f3effb;color:#51407a;font-size:14px;font-weight:650}
.wb-app .product-detail-dialog[data-reading-locked="yes"] :is(.close-modal,.close-detail,#cartToggle){cursor:wait;opacity:.55}
.wb-app .completion-contact{padding:16px 0;line-height:1.8;overflow-wrap:anywhere;text-align:center}
@media(min-width:941px){
 .wb-app :is(.product-detail-dialog,.checkout-dialog) .detail-modal{grid-template-columns:minmax(0,1fr) clamp(360px,29vw,420px)}
 .wb-app .product-detail-dialog .detail-commerce{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:24px}
}
@media(min-width:941px){.wb-app :is(.product-detail-dialog,.checkout-dialog)>.close-modal{right:calc(clamp(360px,29vw,420px) + 32px)}}

/* Questions take priority over rotating recommendations. */
.wb-app .assistant-card.speech-assistant>.assistant-quick-questions{order:2;display:flex;flex-wrap:wrap;gap:6px;margin:0;flex-shrink:0}
.wb-app .assistant-card.speech-assistant>.assistant-question-form{order:3}
.wb-app .assistant-quick-questions button{padding:7px 9px;border:1px solid #d9d2ed;border-radius:12px;background:#faf8ff;color:#594783;font-size:12px;line-height:1.35;font-weight:500;box-shadow:none;text-align:left}
.wb-app .assistant-quick-questions button:hover{background:#eee7fb}
.wb-app .assistant-quick-questions button:disabled{opacity:.55;cursor:wait}
.wb-app .assistant-loading{display:flex;align-items:center;gap:12px;min-height:76px;color:#675487}
.wb-app .loading-dots{display:flex;gap:5px;flex:none}
.wb-app .loading-dots i{width:7px;height:7px;border-radius:50%;background:#8b74d3;animation:reply-pulse 1.1s infinite ease-in-out}
.wb-app .loading-dots i:nth-child(2){animation-delay:.15s}.wb-app .loading-dots i:nth-child(3){animation-delay:.3s}
@keyframes reply-pulse{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-4px)}}
.wb-app .product-grid .product-card.product-viewed{border-color:#80bdad;box-shadow:0 0 0 1px #8bcdbf66,0 0 13px #66bda930;background:#fbfefd}
.wb-app .product-viewed .product-status{color:#247a66;font-weight:650;font-size:11px}
@media(max-height:780px) and (min-width:941px){.wb-app :is(.product-detail-dialog,.checkout-dialog) .speech-assistant .assistant-portrait{height:150px!important}.wb-app.wb-shopping :is(.shop-layout,.cart-with-assistant)>.speech-assistant .assistant-portrait{height:125px!important}}
@media(prefers-reduced-motion:reduce){.wb-app .loading-dots i{animation:none;opacity:.6}}

/* Clear, stance-neutral route to the final decision. */
.wb-app .store-header .store-cart-link.enter-cart{display:flex;align-items:center;justify-content:center;gap:12px;background:#6751cf;color:#fff;border:2px solid #6751cf;box-shadow:0 4px 14px #6751cf26;padding:12px 18px;border-radius:14px;min-height:66px}
.wb-app .store-cart-link.enter-cart svg{width:26px;height:26px;flex:none}.wb-app .store-cart-link.enter-cart strong{display:block;font-size:18px}.wb-app .store-cart-link.enter-cart small{display:block;margin-top:4px;font-size:12px;color:#fff}
.wb-app .store-cart-link.enter-cart:hover{background:#5641b8}.wb-app .store-cart-link.enter-cart:focus-visible{outline:3px solid #32236f;outline-offset:3px}
.wb-app .shopping-next-step{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;margin-top:22px;background:#f3f0ff;border:1px solid #d8d0f4;border-radius:14px}
.wb-app .shopping-next-step strong{font-size:18px;color:#423469}.wb-app .shopping-next-step p{font-size:14px;line-height:1.7;margin:8px 0 0}.wb-app .shopping-next-step button{flex-shrink:0}

@media(min-width:941px){
 .wb-app.wb-shopping>main{width:min(1480px,100%);max-width:1480px;padding-inline:24px}
 .wb-app.wb-shopping .store-header{grid-template-columns:155px minmax(160px,1fr) minmax(270px,auto);gap:18px}
 .wb-app .store-search{min-width:0}.wb-app .store-cart-link.enter-cart{white-space:normal;min-width:0}
}
@media(min-width:941px) and (max-width:1100px){
 .wb-app.wb-shopping>main{padding-inline:12px}.wb-app.wb-shopping .store-header{grid-template-columns:155px minmax(120px,1fr) 255px;gap:10px;padding-inline:12px}
 .wb-app .store-header .store-cart-link.enter-cart{padding:10px}.wb-app .store-logo{font-size:20px}
 .wb-app.wb-shopping .store-body .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .wb-app .shopping-next-step{flex-wrap:wrap}
}
