/*! KidsBook AI v2.0.0 — montempz design language */
#kb{--ink:#111111;--ink2:#1c1a17;--cream:#F4EFE6;--cream2:#EAE2D3;--coral:#E8643C;--coral2:#C9502A;--gold:#F2C14E;--text:#161412;--muted:#6f675c;
  font-family:'Manrope',system-ui,sans-serif !important;color:var(--text) !important;background:var(--cream);-webkit-font-smoothing:antialiased;overflow-x:clip;line-height:1.5 !important;text-align:left}
#kb{letter-spacing:normal !important;text-transform:none !important;text-decoration:none !important;font-size:16px !important;font-weight:400 !important;text-shadow:none !important;word-spacing:normal !important}
/* Theme shield: the site's theme / Elementor / custom snippets must not restyle KidsBook text.
   Lowest-specificity #kb rules; every KidsBook rule below wins over these, theme rules never do. */
#kb :where(h1,h2,h3,h4,h5,h6,p,li,a,span,label,small,b,strong,em,i,button,input,textarea,select,div):not(:where(.kbp,.kbp *)){color:inherit !important;font-family:inherit !important;text-transform:none !important;letter-spacing:inherit !important;text-decoration:none !important;text-shadow:none !important}
#kb :where(h1,h2,h3,h4,h5,h6):not(:where(.kbp,.kbp *)){font-size:inherit !important;font-weight:inherit !important;line-height:inherit !important;margin:0;padding:0;border:0;background:none}
#kb *,#kb *::before,#kb *::after{box-sizing:border-box}
#kb h1,#kb h2,#kb h3,#kb p,#kb ol,#kb ul,#kb figure{margin:0;padding:0}
#kb ol,#kb ul{list-style:none}
#kb a{color:inherit !important;text-decoration:none !important}
#kb button{font:inherit !important;color:inherit !important;background:none;border:0;cursor:pointer;margin:0;text-transform:none !important;letter-spacing:normal !important;line-height:inherit !important}
#kb button:disabled{cursor:default}
#kb .kb-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
#kb .kb-disp{font-family:'Montserrat',sans-serif !important;letter-spacing:-.025em !important}
#kb .kb-eyebrow{font-size:12px !important;font-weight:700 !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--coral) !important}
#kb .kb-eyebrow.kb-dark{color:var(--coral2) !important}
html.kb-lock,html.kb-lock body{overflow:hidden}

/* Buttons */
#kb .kb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;min-height:46px;border-radius:999px;font-weight:700 !important;font-size:15px !important;
  background:var(--ink);color:#fff !important;transition:transform .2s,box-shadow .2s,background .2s,opacity .2s;white-space:nowrap}
#kb .kb-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px rgba(17,17,17,.22)}
#kb .kb-btn:disabled{opacity:.4}
#kb .kb-btn:focus-visible,#kb .kb-tile:focus-visible,#kb .kb-chipbtn:focus-visible,#kb .kb-pc:focus-visible,#kb .kb-opt:focus-visible,#kb .kb-round:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
#kb .kb-lg{padding:16px 28px;font-size:16px !important;min-height:54px}
#kb .kb-pink{background:var(--coral);color:var(--ink) !important}
#kb .kb-pink:hover:not(:disabled){background:#ef7550}
#kb .kb-ink{background:var(--ink);color:#fff !important}
#kb .kb-soft{background:transparent;color:var(--text) !important;box-shadow:0 0 0 1.5px rgba(17,17,17,.16) inset}
#kb .kb-ghost-light{background:transparent;color:#fff !important;box-shadow:0 0 0 1.5px rgba(255,255,255,.28) inset}
#kb .kb-wide{width:100%}
#kb .kb-linkbtn{font-size:14px !important;font-weight:700 !important;color:var(--coral2) !important;text-decoration:underline !important;text-underline-offset:3px;padding:6px 0;align-self:flex-start}
#kb .kb-round{width:46px;height:46px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 6px 18px rgba(40,30,20,.14);transition:transform .2s,opacity .2s}
#kb .kb-round:hover:not(:disabled){transform:scale(1.06)}
#kb .kb-round:disabled{opacity:.35}

/* ---------- Book mockups ---------- */
#kb .kb-book{position:relative;width:240px;aspect-ratio:4/5;container-type:inline-size}
#kb .kb-book-cover{position:absolute;inset:0;border-radius:6px 18px 18px 6px;overflow:hidden;z-index:2;
  box-shadow:inset 10px 0 12px -8px rgba(0,0,0,.35),0 28px 60px rgba(0,0,0,.35)}
#kb .kb-book-cover::after{content:'';position:absolute;left:10px;top:0;bottom:0;width:2px;background:rgba(255,255,255,.28)}
#kb .kb-book-cover svg{position:absolute;inset:0;width:100%;height:100%;display:block}
#kb .kb-book-pages{position:absolute;inset:6px -8px 6px 10px;border-radius:4px 14px 14px 4px;background:repeating-linear-gradient(90deg,#fff 0 2px,#e9e2d6 2px 3px);z-index:1}
#kb .kb-book-title{position:absolute;left:0;right:0;top:0;padding:7.5cqw 6.5cqw 16cqw;text-align:center;color:#fff !important;background:linear-gradient(180deg,rgba(17,17,17,.5),transparent);z-index:3}
#kb .kb-book-title small{display:block;font-size:3.8cqw !important;font-weight:800 !important;letter-spacing:.3em !important;opacity:.9}
#kb .kb-book-title b{display:block;font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:8.8cqw !important;line-height:1.1 !important;margin-top:2.5cqw;letter-spacing:-.02em !important;overflow-wrap:anywhere}
#kb .kb-book-title.dark{color:var(--ink) !important;background:linear-gradient(180deg,rgba(255,255,255,.95) 40%,transparent)}
#kb .kb-book-title.dark small{color:var(--coral2) !important}
#kb .kb-book-title.dark b{font-size:10.5cqw !important;font-weight:900 !important}

/* ---------- HERO ---------- */
#kb .kb-hero{position:relative;background:radial-gradient(120% 90% at 50% 0%,#2e2923 0%,var(--ink2) 45%,var(--ink) 100%);color:#fff !important;overflow:hidden;padding:120px 0 110px}
#kb .kb-glow{position:absolute;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(232,100,60,.22),transparent 65%);right:-80px;top:40%;transform:translateY(-50%);pointer-events:none}
#kb .kb-hero-grid{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
#kb .kb-hero h1{font-weight:800 !important;font-size:clamp(40px,6vw,76px) !important;line-height:1.04 !important;margin-top:18px}
#kb .kb-tw{background:linear-gradient(90deg,#F2C14E,#E8643C);-webkit-background-clip:text;background-clip:text;color:transparent !important}
#kb .kb-caret{display:inline-block;width:.07em;height:.85em;background:#fff;margin-left:4px;vertical-align:-.06em;animation:kbblink 1s steps(1) infinite}
@keyframes kbblink{50%{opacity:0}}
#kb .kb-lead{font-size:18px !important;line-height:1.65 !important;color:rgba(255,255,255,.72) !important;margin-top:22px;max-width:500px}
#kb .kb-cta{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
#kb .kb-hero-art{position:relative;height:460px}
#kb .kb-hero-art .kb-book{position:absolute}
#kb .kb-float-a{left:6%;top:30px;width:270px;transform:rotate(-7deg);animation:kbfloat 7s ease-in-out infinite}
#kb .kb-float-b{right:4%;top:120px;width:230px;transform:rotate(6deg);animation:kbfloat 7s ease-in-out -3.5s infinite}
@keyframes kbfloat{50%{translate:0 -14px}}
#kb .kb-chip{position:absolute;z-index:4;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--ink) !important;border-radius:16px;padding:12px 16px;font-size:13px !important;font-weight:800 !important;box-shadow:0 14px 30px rgba(0,0,0,.25)}
#kb .kb-chip svg{color:var(--coral) !important}
#kb .kb-chip-a{left:0;bottom:40px;animation:kbfloat 5s ease-in-out -1s infinite}
#kb .kb-chip-b{right:0;top:14px;animation:kbfloat 6s ease-in-out -2s infinite}
#kb .kb-chip-b i{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:-4px}
#kb .kb-chip-b i:nth-child(1){background:#E8643C}#kb .kb-chip-b i:nth-child(2){background:#F2C14E}#kb .kb-chip-b i:nth-child(3){background:#7fb3d5}#kb .kb-chip-b i:nth-child(4){background:#9cc58a;margin-right:4px}
@media (max-width:900px){
  #kb .kb-hero{padding:84px 0 70px}
  #kb .kb-hero-grid{grid-template-columns:1fr}
  #kb .kb-hero-art{height:360px;max-width:460px;width:100%;margin:0 auto}
  #kb .kb-float-a{width:210px;left:4%}
  #kb .kb-float-b{width:180px;top:90px}
}

/* ---------- HOW ---------- */
#kb .kb-how{padding:110px 0 100px;background:linear-gradient(180deg,var(--cream),#f8f4ec)}
#kb .kb-head{text-align:center;margin-bottom:44px}
#kb .kb-h2{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:clamp(32px,4.6vw,54px) !important;letter-spacing:-.025em !important;line-height:1.08 !important;margin-top:10px}
#kb .kb-head p{color:var(--muted) !important;margin-top:12px;font-size:16px !important}
#kb .kb-steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#kb .kb-step{background:#fff;border-radius:24px;padding:30px 28px;box-shadow:0 20px 50px rgba(40,30,20,.08);position:relative;overflow:hidden}
#kb .kb-step b{display:block;font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:64px !important;line-height:1 !important;letter-spacing:-.04em !important;background:linear-gradient(135deg,#E8643C,#F2C14E);-webkit-background-clip:text;background-clip:text;color:transparent !important}
#kb .kb-step h3{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:22px !important;margin-top:18px}
#kb .kb-step p{color:var(--muted) !important;margin-top:8px;font-size:15px !important;line-height:1.6 !important}
@media (max-width:820px){#kb .kb-steps3{grid-template-columns:1fr}}

/* ---------- MARQUEE ---------- */
#kb .kb-mq{background:var(--ink);color:#fff !important;padding:22px 0;overflow:hidden}
#kb .kb-track{display:flex;gap:48px;width:max-content;animation:kbmq 34s linear infinite}
#kb .kb-track span{font-family:'Montserrat',sans-serif !important;font-weight:700 !important;font-size:18px !important;display:flex;align-items:center;gap:14px;white-space:nowrap}
#kb .kb-track span::before{content:'✦';color:var(--coral) !important}
@keyframes kbmq{to{transform:translateX(-50%)}}

/* ---------- PRODUCTS ---------- */
#kb .kb-work{padding:110px 0 100px;background:linear-gradient(180deg,#f8f4ec,var(--cream2))}
#kb .kb-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;max-width:980px;margin:0 auto}
#kb .kb-cards.kb-n1{grid-template-columns:minmax(0,480px);justify-content:center}
#kb .kb-pc{display:block;width:100%;text-align:left;background:#fff;border-radius:28px;padding:14px;box-shadow:0 20px 50px rgba(40,30,20,.12);transition:transform .25s ease-out,box-shadow .25s;position:relative}
#kb .kb-pc:hover{box-shadow:0 30px 70px rgba(40,30,20,.22)}
#kb .kb-pc-art{aspect-ratio:5/4;border-radius:20px;display:grid;place-items:center;overflow:hidden;position:relative}
#kb .kb-pc-story{background:radial-gradient(90% 90% at 30% 20%,#ffe3c8,#f6b58f)}
#kb .kb-pc-color{background:radial-gradient(90% 90% at 70% 20%,#e7f0f7,#bcd3e6)}
#kb .kb-pc-art .kb-book{width:44%;transform:rotate(-5deg);transition:transform .4s}
#kb .kb-pc:hover .kb-pc-art .kb-book{transform:rotate(0) scale(1.05)}
#kb .kb-badge{position:absolute;top:26px;left:26px;z-index:5;background:var(--ink);color:#fff !important;font-size:11px !important;font-weight:700 !important;padding:6px 11px;border-radius:999px}
#kb .kb-badge.kb-gold{background:var(--gold);color:var(--ink) !important}
#kb .kb-pc-meta{padding:20px 12px 8px}
#kb .kb-pc h3{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:26px !important;letter-spacing:-.02em !important}
#kb .kb-pc p{color:var(--muted) !important;margin-top:6px;font-size:15px !important;line-height:1.55 !important}
#kb .kb-feats{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
#kb .kb-feats span{font-size:12.5px !important;font-weight:700 !important;padding:6px 11px;border-radius:999px;background:var(--cream)}
#kb .kb-go{display:flex;justify-content:flex-end;align-items:center;margin-top:18px}
#kb .kb-go small{font-size:13px !important;font-weight:800 !important;color:#2f8f5b !important;display:flex;align-items:center;gap:6px}
#kb .kb-go small::before{content:'';width:8px;height:8px;border-radius:50%;background:#2f8f5b}
#kb .kb-go b{font-family:'Montserrat',sans-serif !important;font-size:24px !important;font-weight:800 !important}
#kb .kb-go span{display:flex;align-items:center;gap:10px;font-size:14px !important;font-weight:800 !important;color:var(--coral2) !important}
#kb .kb-go i{width:42px;height:42px;border-radius:50%;background:var(--cream);display:grid;place-items:center;transition:transform .25s,background .25s;color:var(--ink) !important}
#kb .kb-pc:hover .kb-go i{transform:rotate(-45deg);background:var(--coral)}
@media (max-width:760px){#kb .kb-cards{grid-template-columns:1fr}}

/* ---------- END CTA ---------- */
#kb .kb-end{background:linear-gradient(180deg,var(--cream2),var(--cream));padding:110px 0 100px}
#kb .kb-end h2{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:clamp(36px,6.4vw,92px) !important;line-height:1 !important;letter-spacing:-.04em !important}
#kb .kb-end h2 span{display:block;background:linear-gradient(90deg,#E8643C,#a9401f);-webkit-background-clip:text;background-clip:text;color:transparent !important;padding-bottom:.08em}
#kb .kb-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-top:36px}
#kb .kb-row p{max-width:440px;color:var(--muted) !important;line-height:1.6 !important}

/* reveal */
#kb .kb-rv{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1)}
#kb .kb-rv.in{opacity:1;transform:none}

/* ---------- MODAL ---------- */
#kb .kb-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px}
#kb .kb-modal[hidden]{display:none}
#kb .kb-scrim{position:absolute;inset:0;background:rgba(17,17,17,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .25s}
#kb .kb-sheet{position:relative;width:min(960px,100%);max-height:min(860px,calc(100vh - 48px));background:var(--cream);border-radius:30px;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,.4);transform:translateY(24px) scale(.98);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s}
#kb .kb-modal.on .kb-scrim{opacity:1}
#kb .kb-modal.on .kb-sheet{transform:none;opacity:1}
#kb .kb-m-head{display:flex;align-items:center;gap:16px;padding:18px 20px 14px 24px}
#kb .kb-m-prod{display:flex;align-items:center;gap:10px;font-family:'Montserrat',sans-serif !important;font-size:16px !important;white-space:nowrap}
#kb .kb-dot{width:10px;height:10px;border-radius:50%;background:var(--coral)}
#kb .kb-steps{display:flex;gap:6px;margin:0 auto;counter-reset:s}
#kb .kb-steps li{counter-increment:s;font-size:13px !important;font-weight:700 !important;color:var(--muted) !important;display:flex;align-items:center;gap:7px;padding:6px 12px 6px 6px;border-radius:999px}
#kb .kb-steps li::before{content:counter(s);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--cream2);font-size:11px !important;color:var(--muted) !important}
#kb .kb-steps li.on{background:#fff;color:var(--ink) !important}
#kb .kb-steps li.on::before{background:var(--ink);color:#fff !important}
#kb .kb-steps li.done::before{background:var(--coral);color:var(--ink) !important;content:'✓'}
#kb .kb-x{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;flex-shrink:0;transition:transform .2s}
#kb .kb-x:hover{transform:rotate(90deg)}
#kb .kb-prog{height:3px;background:var(--cream2);margin:0 24px;border-radius:99px;overflow:hidden}
#kb .kb-prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--coral),var(--gold));border-radius:99px;transition:width .5s cubic-bezier(.2,.8,.2,1)}
#kb .kb-m-body{flex:1;overflow:auto;padding:30px 40px 24px}
#kb .kb-m-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 24px 20px;border-top:1px solid rgba(17,17,17,.06);background:var(--cream)}
#kb .kb-m-foot[hidden]{display:none}
#kb .kb-pane{max-width:640px;margin:0 auto;animation:kbin .45s cubic-bezier(.2,.8,.2,1)}
@keyframes kbin{from{opacity:0;transform:translateY(14px)}}
#kb .kb-q{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:clamp(26px,3.4vw,38px) !important;line-height:1.1 !important;letter-spacing:-.025em !important}
#kb .kb-sub{color:var(--muted) !important;margin-top:10px;font-size:15.5px !important;line-height:1.6 !important}
#kb .kb-err{color:#B3261E !important;font-size:14px !important;font-weight:700 !important;margin-top:12px;min-height:1px}
#kb .kb-err:empty{display:none}
#kb .kb-count{font-size:13px !important;font-weight:800 !important;color:var(--coral2) !important;margin-bottom:10px;letter-spacing:.04em !important}
@media (max-width:760px){
  #kb .kb-modal{padding:0}
  #kb .kb-sheet{width:100%;height:100%;max-height:none;border-radius:0}
  #kb .kb-steps{display:none}
  #kb .kb-m-prod{margin-right:auto}
  #kb .kb-m-body{padding:24px 20px}
  #kb .kb-m-foot{padding:12px 16px calc(14px + env(safe-area-inset-bottom))}
}

/* choose */
#kb .kb-choose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
#kb .kb-opt{text-align:left;background:#fff;border-radius:24px;padding:12px;box-shadow:0 14px 34px rgba(40,30,20,.1);transition:transform .2s,box-shadow .2s}
#kb .kb-opt:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(40,30,20,.18)}
#kb .kb-opt-art{aspect-ratio:4/3;border-radius:16px;display:grid;place-items:center;overflow:hidden}
#kb .kb-opt-art .kb-book{width:40%;transform:rotate(-5deg)}
#kb .kb-opt-meta{padding:14px 8px 6px;display:flex;flex-direction:column;gap:4px}
#kb .kb-opt-meta b{font-family:'Montserrat',sans-serif !important;font-size:20px !important;font-weight:800 !important}
#kb .kb-opt-meta small{color:var(--muted) !important;font-size:13.5px !important;line-height:1.5 !important}
#kb .kb-opt-meta em{font-style:normal;font-weight:800 !important;font-size:13px !important;color:#2f8f5b !important;margin-top:6px}
@media (max-width:560px){#kb .kb-choose{grid-template-columns:1fr}}

/* photo */
#kb .kb-drop{position:relative;display:grid;place-items:center;margin:26px auto 0;width:min(320px,100%);aspect-ratio:1;border-radius:50%;background:#fff;
  box-shadow:0 0 0 2px var(--cream2) inset,0 20px 50px rgba(40,30,20,.1);cursor:pointer;transition:box-shadow .2s,transform .2s;overflow:hidden}
#kb .kb-drop::before{content:'';position:absolute;inset:10px;border-radius:50%;border:2px dashed #cdbfa8;pointer-events:none}
#kb .kb-drop:hover,#kb .kb-drop.over{transform:scale(1.02);box-shadow:0 0 0 3px var(--coral) inset,0 24px 60px rgba(232,100,60,.2)}
#kb .kb-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
#kb .kb-drop:focus-within{outline:3px solid var(--coral);outline-offset:4px}
#kb .kb-drop-in{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;pointer-events:none}
#kb .kb-drop-ic{width:66px;height:66px;border-radius:50%;background:var(--coral);color:var(--ink) !important;display:grid;place-items:center;margin-bottom:8px}
#kb .kb-drop-in b{font-family:'Montserrat',sans-serif !important;font-size:18px !important}
#kb .kb-drop-in small{color:var(--muted) !important;font-size:13px !important}
#kb .kb-drop.has::before{display:none}
#kb .kb-drop-img{position:absolute;inset:0;background:center/cover no-repeat;pointer-events:none}
#kb .kb-drop-change{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);background:rgba(17,17,17,.78);color:#fff !important;font-size:13px !important;font-weight:700 !important;padding:8px 14px;border-radius:999px;pointer-events:none;white-space:nowrap}
#kb .kb-pickrow{display:flex;justify-content:center;margin-top:18px}
#kb .kb-pickrow svg{width:18px;height:18px}
#kb .kb-tips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:22px}
#kb .kb-tips li{display:flex;align-items:center;gap:6px;font-size:13px !important;font-weight:700 !important;padding:7px 12px;border-radius:999px;background:#fff}
#kb .kb-tips li.ok svg{color:#2f8f5b !important}#kb .kb-tips li.no svg{color:#C9502A !important}
#kb .kb-check{display:flex;gap:12px;align-items:flex-start;margin-top:24px;font-size:13.5px !important;line-height:1.55 !important;color:var(--muted) !important;cursor:pointer;background:#fff;padding:14px 16px;border-radius:16px}
#kb .kb-check input{width:20px;height:20px;margin:1px 0 0;flex-shrink:0;accent-color:var(--coral2)}

/* quiz */
#kb .kb-quiz{padding-top:10px}
#kb .kb-input{display:block;width:100%;margin-top:26px;font-family:'Montserrat',sans-serif !important;font-weight:700 !important;font-size:clamp(22px,3vw,30px) !important;color:var(--ink) !important;
  background:#fff;border:0;border-radius:20px;padding:20px 24px;box-shadow:0 0 0 2px var(--cream2) inset;outline:none;transition:box-shadow .2s}
#kb .kb-input:focus{box-shadow:0 0 0 3px var(--coral) inset}
#kb .kb-input::placeholder{color:#b3a896 !important;font-weight:600 !important}
#kb .kb-sugg{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#kb .kb-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
#kb .kb-chipbtn{padding:12px 20px;min-height:46px;border-radius:999px;background:#fff;font-weight:700 !important;font-size:15px !important;box-shadow:0 0 0 1.5px var(--cream2) inset;transition:transform .15s,background .15s,box-shadow .15s}
#kb .kb-chipbtn:hover{transform:translateY(-2px);box-shadow:0 0 0 1.5px #cdbfa8 inset}
#kb .kb-chipbtn.on{background:var(--ink);color:#fff !important;box-shadow:none}
#kb .kb-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px}
#kb .kb-tiles.wide{grid-template-columns:repeat(3,minmax(0,1fr))}
#kb .kb-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px 12px;border-radius:22px;background:#fff;box-shadow:0 0 0 2px transparent inset,0 10px 26px rgba(40,30,20,.08);transition:transform .15s,box-shadow .2s}
#kb .kb-tile:hover{transform:translateY(-3px)}
#kb .kb-tile.on{box-shadow:0 0 0 3px var(--coral) inset,0 14px 30px rgba(232,100,60,.2)}
#kb .kb-emo{font-size:40px !important;line-height:1 !important}
#kb .kb-tile b{font-size:15px !important;font-weight:800 !important;text-align:center}
@media (max-width:560px){#kb .kb-tiles.wide{grid-template-columns:repeat(2,minmax(0,1fr))}#kb .kb-tile{padding:18px 10px}}

/* generating */
#kb .kb-gen{text-align:center;display:flex;flex-direction:column;align-items:center}
#kb .kb-orb{position:relative;width:220px;height:220px;display:grid;place-items:center;margin:4px 0 22px}
#kb .kb-orb::before{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,rgba(232,100,60,.22),transparent 68%);animation:kbpulse 2.4s ease-in-out infinite}
#kb .kb-orb-book .kb-book{width:108px;animation:kbfloat 3s ease-in-out infinite}
#kb .kb-orb i{position:absolute;inset:0;animation:kbspin 6s linear infinite}
#kb .kb-orb i::after{content:'✦';position:absolute;left:50%;top:-4px;transform:translateX(-50%);color:var(--coral) !important;font-size:20px !important}
#kb .kb-orb i:nth-child(3){animation-duration:8s;animation-direction:reverse}#kb .kb-orb i:nth-child(3)::after{color:var(--gold) !important;font-size:16px !important}
#kb .kb-orb i:nth-child(4){animation-duration:11s;inset:24px}#kb .kb-orb i:nth-child(4)::after{color:#7fb3d5 !important;font-size:13px !important}
#kb .kb-orb i:nth-child(5){animation-duration:5s;animation-direction:reverse;inset:-12px}#kb .kb-orb i:nth-child(5)::after{font-size:11px !important}
@keyframes kbspin{to{transform:rotate(360deg)}}
@keyframes kbpulse{50%{transform:scale(1.1);opacity:.7}}
#kb .kb-gen-msg{transition:opacity .25s;min-height:1.6em}
#kb .kb-bar{width:min(420px,100%);height:10px;border-radius:99px;background:var(--cream2);overflow:hidden;margin-top:22px}
#kb .kb-bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--coral),var(--gold));transition:width .4s}
#kb .kb-gen-steps{display:flex;flex-direction:column;gap:8px;margin-top:24px;text-align:left;width:min(360px,100%)}
#kb .kb-gen-steps li{display:flex;align-items:center;gap:12px;font-size:14px !important;font-weight:700 !important;color:var(--muted) !important}
#kb .kb-gen-steps li span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--cream2);font-size:12px !important;flex-shrink:0}
#kb .kb-gen-steps li.on{color:var(--ink) !important}
#kb .kb-gen-steps li.on span{background:var(--ink);color:#fff !important;animation:kbpulse 1.4s ease-in-out infinite}
#kb .kb-gen-steps li.done span{background:var(--coral);color:var(--ink) !important}
#kb .kb-gen-steps li.err span{background:#B3261E;color:#fff !important}
#kb .kb-note{margin-top:22px;color:var(--muted) !important;font-size:13px !important}

/* preview */
#kb .kb-pv{max-width:none;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;align-items:start}
#kb .kb-pv-main{display:flex;flex-direction:column;align-items:center;gap:16px}
#kb .kb-pv-stage{display:grid;place-items:center;width:100%}
#kb .kb-pv-nav{display:flex;align-items:center;gap:16px;font-weight:800 !important;font-size:14px !important}
#kb .kb-pv-side{display:flex;flex-direction:column;gap:14px}
#kb .kb-pv-side .kb-q{font-size:clamp(24px,2.6vw,32px) !important}
#kb .kb-locked{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
#kb .kb-lk{aspect-ratio:3/4;border-radius:10px;background:linear-gradient(135deg,#e7ddcd,#d6cab5);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted) !important}
#kb .kb-lk small{font-size:11px !important;font-weight:800 !important}
#kb .kb-inc{display:flex;flex-direction:column;gap:8px}
#kb .kb-inc li{display:flex;align-items:center;gap:10px;font-weight:700 !important;font-size:14.5px !important}
#kb .kb-inc svg{color:#2f8f5b !important}
#kb .kb-paybox{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border-radius:22px;padding:14px 14px 14px 20px;box-shadow:0 14px 34px rgba(40,30,20,.1);margin-top:4px}
#kb .kb-paybox small{display:block;font-size:12px !important;font-weight:700 !important;color:var(--muted) !important}
#kb .kb-paybox b{font-family:'Montserrat',sans-serif !important;font-size:26px !important;font-weight:800 !important}
@media (max-width:820px){#kb .kb-pv{grid-template-columns:minmax(0,1fr)}#kb .kb-locked{gap:4px}#kb .kb-paybox{flex-direction:column;align-items:stretch;text-align:center}}

/* rendered book page */
#kb .kbp-box{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 24px 60px rgba(40,30,20,.25);background:#fff;flex-shrink:0}
#kb .kbp-scale{position:absolute;left:0;top:0;transform-origin:0 0}
#kb .kbp{position:relative;overflow:hidden;color:#161412}
#kb .kbp-img{background-size:cover;background-position:center;background-repeat:no-repeat}
#kb .kbp-wait{background:linear-gradient(110deg,#ece4d6 30%,#f7f2ea 50%,#ece4d6 70%);background-size:300% 100%;animation:kbshim 1.6s linear infinite;display:grid;place-items:center}
#kb .kbp-wait span{font:700 22px Manrope,sans-serif;color:#9b8f7d}
@keyframes kbshim{to{background-position:-150% 0}}
#kb .kbp-wm{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:9}
#kb .kbp-wm span{position:absolute;white-space:nowrap;font:800 30px Montserrat,sans-serif;letter-spacing:.08em;color:rgba(255,255,255,.34);text-shadow:0 0 1px rgba(0,0,0,.25);transform:rotate(-26deg);transform-origin:0 0}
#kb .kb-export{position:fixed;left:-14000px;top:0;pointer-events:none}

/* ---------- FINAL PAGE ---------- */
#kb .kb-fhero{position:relative;background:radial-gradient(120% 90% at 50% 0%,#2e2923 0%,var(--ink2) 45%,var(--ink) 100%);color:#fff !important;padding:54px 0 44px;overflow:hidden}
#kb .kb-fhero .kb-wrap{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
#kb .kb-fh1{font-weight:800 !important;font-size:clamp(30px,4.6vw,56px) !important;line-height:1.06 !important}
#kb .kb-fhero .kb-lead{margin-top:0;font-size:16px !important}
#kb .kb-bar-light{background:rgba(255,255,255,.14);margin-top:6px}
#kb .kb-fbody{padding:44px 0 80px}
#kb .kb-fgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:36px;align-items:start}
#kb .kb-viewer{display:flex;flex-direction:column;align-items:center;gap:18px;min-width:0}
#kb .kb-vstage{width:100%;display:grid;place-items:center;min-height:320px}
#kb .kb-fside{background:#fff;border-radius:26px;padding:22px;box-shadow:0 20px 50px rgba(40,30,20,.1);display:flex;flex-direction:column;gap:16px;position:sticky;top:20px}
#kb .kb-h3{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:18px !important}
#kb .kb-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:420px;overflow:auto;padding:4px}
#kb .kb-th{display:grid;place-items:center;padding:6px;border-radius:12px;background:var(--cream);transition:box-shadow .2s}
#kb .kb-th .kbp-box{box-shadow:0 4px 12px rgba(40,30,20,.18);border-radius:3px}
#kb .kb-th.on{box-shadow:0 0 0 3px var(--coral) inset}
#kb .kb-small{font-size:12.5px !important;color:var(--muted) !important;line-height:1.55 !important}
@media (max-width:900px){#kb .kb-fgrid{grid-template-columns:1fr}#kb .kb-fside{position:relative;top:0}#kb .kb-thumbs{grid-template-columns:repeat(5,minmax(0,1fr))}}

@media (prefers-reduced-motion:reduce){#kb *{animation:none!important;transition:none!important}#kb .kb-rv{opacity:1;transform:none}}

#kb .kb-demo{background:#FFF3D6;color:#6b4a00 !important;border-radius:14px;padding:10px 14px;font-size:13px !important;font-weight:700 !important;line-height:1.5 !important}

/* ---------- v3: choices ---------- */
#kb .kb-tile small{font-size:12.5px !important;color:var(--muted) !important;font-weight:600 !important;text-align:center;line-height:1.4 !important}
#kb .kb-tiles.kb-big{margin-top:26px}
#kb .kb-tiles.kb-big .kb-tile{padding:30px 16px}
#kb .kb-tiles.kb-big .kb-emo{font-size:48px !important}
#kb .kb-tiles.kb-big b{font-size:17px !important}
#kb .kb-style{padding:12px 12px 16px}
#kb .kb-sw{display:block;width:100%;aspect-ratio:4/3;border-radius:14px;overflow:hidden;position:relative}
#kb .kb-sw svg{position:absolute;inset:0;width:100%;height:100%;mix-blend-mode:luminosity;opacity:.55}
#kb .kb-lines{display:block;width:120px;aspect-ratio:1;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 0 0 1.5px var(--cream2) inset}
#kb .kb-lines svg{width:100%;height:100%;display:block}
#kb .kb-lines-simple svg *{stroke-width:5}
#kb .kb-lines-detailed svg *{stroke-width:1.6}

#kb .kb-srcs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}
#kb .kb-src{position:relative;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 20px rgba(40,30,20,.08)}
#kb .kb-src>span{position:absolute;inset:0;background:center/cover no-repeat}
#kb .kb-src b{position:absolute;left:8px;top:8px;background:rgba(17,17,17,.75);color:#fff !important;font-size:11px !important;border-radius:99px;padding:2px 8px}
#kb .kb-src button{position:absolute;right:6px;top:6px;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center}
#kb .kb-src button svg{width:14px;height:14px}
#kb .kb-src-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;border:2px dashed #cdbfa8;box-shadow:none;background:transparent;color:var(--muted) !important}
#kb .kb-src-add input{position:absolute;inset:0;opacity:0;cursor:pointer}
#kb .kb-src-add small{font-weight:700 !important;font-size:12.5px !important}
#kb .kb-src-add:hover,#kb .kb-src-add.over{border-color:var(--coral);color:var(--coral2) !important}
#kb .kb-count2{margin-top:10px;font-weight:700 !important}
@media (max-width:560px){#kb .kb-srcs{grid-template-columns:repeat(3,minmax(0,1fr))}}

#kb .kb-extras{display:flex;flex-direction:column;gap:12px;margin-top:24px}
#kb .kb-ex{position:relative;display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:20px;padding:14px;box-shadow:0 10px 26px rgba(40,30,20,.08)}
#kb .kb-ex-photo{position:relative;flex-shrink:0;width:86px;height:86px;border-radius:50%;background:var(--cream) center/cover no-repeat;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;border:2px dashed #cdbfa8;color:var(--muted) !important}
#kb .kb-ex-photo.has{border:0}
#kb .kb-ex-photo.has small{position:absolute;bottom:-4px;background:#111;color:#fff !important;border-radius:99px;padding:2px 8px}
#kb .kb-ex-photo svg{width:22px;height:22px}
#kb .kb-ex-photo small{font-size:11px !important;font-weight:800 !important}
#kb .kb-ex-photo input{position:absolute;inset:0;opacity:0;cursor:pointer}
#kb .kb-ex-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px;padding-right:30px}
#kb .kb-ex-rel{display:flex;flex-wrap:wrap;gap:6px}
#kb .kb-mini{padding:7px 12px;border-radius:999px;font-size:13px !important;font-weight:700 !important;background:var(--cream);transition:background .15s}
#kb .kb-mini.on{background:var(--ink);color:#fff !important}
#kb .kb-ex-name{width:100%;font:600 15px Manrope,sans-serif !important;padding:11px 14px;border-radius:12px;border:0;background:var(--cream);outline:none;color:var(--ink) !important}
#kb .kb-ex-name:focus{box-shadow:0 0 0 2px var(--coral) inset}
#kb .kb-ex-x{position:absolute;right:10px;top:10px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--cream)}
#kb .kb-ex-x svg{width:14px;height:14px}
#kb .kb-ex-add{padding:18px;border-radius:20px;border:2px dashed #cdbfa8;font-weight:800 !important;color:var(--coral2) !important;transition:border-color .2s,background .2s}
#kb .kb-ex-add:hover{border-color:var(--coral);background:#fff}

#kb .kb-formats{display:flex;flex-direction:column;gap:8px}
#kb .kb-fmt{display:grid;grid-template-columns:1fr auto;gap:2px 12px;text-align:left;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:0 0 0 2px transparent inset;transition:box-shadow .15s}
#kb .kb-fmt b{font-size:15px !important}
#kb .kb-fmt small{grid-column:1;font-size:12.5px !important;color:var(--muted) !important}
#kb .kb-fmt em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;font-family:'Montserrat',sans-serif !important;font-weight:800 !important}
#kb .kb-fmt.on{box-shadow:0 0 0 3px var(--coral) inset}

/* AI test panel (demo) */
#kb .kb-test{position:fixed;right:18px;bottom:18px;z-index:99990;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
#kb .kb-test-btn{display:flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:#fff;color:var(--ink) !important;font-weight:800 !important;font-size:14px !important;box-shadow:0 12px 30px rgba(0,0,0,.2)}
#kb .kb-test-btn svg{color:var(--coral) !important}
#kb .kb-test-btn i{width:9px;height:9px;border-radius:50%;background:#c9c1b4}
#kb .kb-test-btn i.on{background:#2f8f5b}
#kb .kb-test-card{width:min(340px,calc(100vw - 36px));background:#fff;border-radius:22px;padding:18px;box-shadow:0 24px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:10px;font-size:13px !important}
#kb .kb-test-card[hidden]{display:none}
#kb .kb-test-card p{color:var(--muted) !important;line-height:1.5 !important}
#kb .kb-test-card label{display:flex;flex-direction:column;gap:4px;font-weight:700 !important}
#kb .kb-test-card input,#kb .kb-test-card select,#kb .kb-test-card textarea{font:500 14px Manrope,sans-serif !important;padding:10px 12px;border-radius:10px;border:1.5px solid var(--cream2);background:var(--cream)}
#kb .kb-test-status{color:var(--muted) !important;font-weight:700 !important}
html.kb-lock #kb .kb-test{display:none}
#kb .kb-tiles:has(.kb-style){grid-template-columns:repeat(4,minmax(0,1fr))}
#kb .kb-style .kb-sw{aspect-ratio:1}
@media (max-width:560px){#kb .kb-tiles:has(.kb-style){grid-template-columns:repeat(2,minmax(0,1fr))}}

#kb .kb-pages3{grid-template-columns:repeat(3,minmax(0,1fr))}
#kb .kb-pgnum{font:900 44px/1 Montserrat,sans-serif !important;color:var(--coral2) !important}
#kb .kb-price{font-style:normal;font:800 16px Montserrat,sans-serif !important;color:var(--ink) !important;background:var(--cream);padding:6px 12px;border-radius:999px}
#kb .kb-sw-img{background-size:cover;background-position:center}
#kb .kb-sw-watercolor svg{filter:blur(1.2px) saturate(.7) brightness(1.1)}
#kb .kb-sw-anime svg{filter:saturate(1.6) contrast(1.15)}
#kb .kb-sw-classic svg{filter:sepia(.6) saturate(1.1)}
@media (max-width:560px){#kb .kb-pages3{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}#kb .kb-pgnum{font-size:32px !important}#kb .kb-price{font-size:13px !important;padding:5px 8px}}

#kb .kb-privacy{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;font-size:13.5px !important;font-weight:700 !important;color:var(--muted) !important;text-align:center}
#kb .kb-privacy svg{flex-shrink:0;color:#2f8f5b !important}
#kb .kb-test-card textarea{resize:vertical;min-height:70px}
#kb .kb-test-card{max-height:calc(100vh - 110px);overflow:auto}
#kb .kb-area{font:600 17px/1.55 Manrope,sans-serif !important;resize:vertical;min-height:120px}

/* v3.4 — new products, party form, packs */
#kb .kb-cards.kb-n3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1180px;gap:22px}
#kb .kb-cards.kb-n3 .kb-pc h3{font-size:23px !important}
@media (max-width:980px){#kb .kb-cards.kb-n3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){#kb .kb-cards.kb-n3{grid-template-columns:1fr}}
#kb .kb-cards.kb-n4{max-width:1060px}
#kb .kb-pc-picture{background:radial-gradient(90% 90% at 30% 20%,#e4f5d9,#a9d98f)}
#kb .kb-pc-invite{background:radial-gradient(90% 90% at 70% 20%,#fde6ef,#f2a9c4)}
#kb .kb-book-invite .kb-book-cover{aspect-ratio:3/4}
#kb .kb-invite-mock{position:absolute;left:8%;right:8%;bottom:7%;background:rgba(255,255,255,.93);border-radius:12px;padding:8px 6px;text-align:center;line-height:1.15 !important}
#kb .kb-invite-mock small{display:block;font-size:7px !important;font-weight:800 !important;letter-spacing:.12em !important;color:var(--coral2) !important}
#kb .kb-invite-mock b{display:block;font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:17px !important;color:var(--ink) !important}
#kb .kb-invite-mock span{display:block;font-size:8px !important;font-weight:700 !important;color:var(--muted) !important}
#kb .kb-party{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin-top:22px}
#kb .kb-pf{display:block}
#kb .kb-pf:nth-child(3){grid-column:1/-1}
#kb .kb-pf span{display:block;font-size:12px !important;font-weight:800 !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--muted) !important;margin:0 0 6px 4px}
#kb .kb-input.kb-input-sm{margin-top:0;font-size:17px !important;padding:14px 18px;border-radius:16px}
@media (max-width:560px){#kb .kb-party{grid-template-columns:1fr}}
#kb .kb-ideas{padding:100px 0 90px;background:var(--cream)}
#kb .kb-idgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#kb .kb-idea{display:flex;flex-direction:column;gap:8px;text-align:left;padding:22px 20px 18px;border-radius:24px;background:var(--ib,#fff);transition:transform .25s,box-shadow .25s;min-height:230px}
#kb .kb-idea:hover{transform:translateY(-4px) rotate(-.4deg);box-shadow:0 18px 40px rgba(40,30,20,.14)}
#kb .kb-idea-e{font-size:34px !important;line-height:1 !important;width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:rgba(255,255,255,.7)}
#kb .kb-idea h3{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:19px !important;letter-spacing:-.01em !important;margin-top:6px}
#kb .kb-idea p{font-size:14px !important;line-height:1.5 !important;color:#5d554b !important}
#kb .kb-idea-go{margin-top:auto;padding-top:8px;display:flex;align-items:center;gap:6px;font-size:13px !important;font-weight:800 !important;color:var(--coral2) !important}
#kb .kb-idea-go svg{width:16px;height:16px}
@media (max-width:980px){#kb .kb-idgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){#kb .kb-idgrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -24px;padding:0 24px 8px}#kb .kb-idea{flex:0 0 78%;scroll-snap-align:start}}
#kb .kb-designs{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:640px){#kb .kb-designs{grid-template-columns:repeat(2,minmax(0,1fr))}}
#kb .kb-dsg b{font-size:14px !important}
#kb .kb-dsg{align-items:center}
#kb .kb-dsg-box{display:block;position:relative;width:124px;height:175px;border-radius:10px;overflow:hidden;box-shadow:0 8px 20px rgba(40,30,20,.16);margin:0 auto;pointer-events:none}
#kb .kb-dsg-in{position:absolute;left:0;top:0;width:794px;height:1123px;transform:scale(.15617);transform-origin:0 0}
#kb .kb-dsg-in .kbp{position:relative;overflow:hidden}
/* product card mockups */
#kb .kb-pc-art.has-img{background:#f3ede3}
#kb .kb-card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
#kb .kb-pc:hover .kb-card-img{transform:scale(1.04)}
#kb .kb-cm{position:relative;width:46%;aspect-ratio:300/380;container-type:inline-size;transition:transform .45s}
#kb .kb-pc:hover .kb-cm{transform:scale(1.05)}
#kb .kb-cm-front,#kb .kb-cm-back{position:absolute;inset:0;border-radius:6px 16px 16px 6px;overflow:hidden;background:#fff}
#kb .kb-cm-front{transform:rotate(-6deg) translateX(-14%);box-shadow:inset 9px 0 10px -8px rgba(0,0,0,.35),0 26px 50px rgba(40,20,10,.32);z-index:2;transition:transform .45s}
#kb .kb-cm-back{transform:rotate(7deg) translateX(30%) translateY(4%);box-shadow:0 18px 40px rgba(40,20,10,.22);z-index:1;transition:transform .45s}
#kb .kb-pc:hover .kb-cm-front{transform:rotate(-8deg) translateX(-20%)}
#kb .kb-pc:hover .kb-cm-back{transform:rotate(9deg) translateX(38%) translateY(3%)}
#kb .kb-cm svg{position:absolute;inset:0;width:100%;height:100%;display:block}
#kb .kb-cm-title{position:absolute;left:0;right:0;top:0;padding:8cqw 7cqw 18cqw;text-align:center;color:#fff !important;background:linear-gradient(180deg,rgba(17,17,17,.45),transparent)}
#kb .kb-cm-title small{display:block;font-size:4cqw !important;font-weight:800 !important;letter-spacing:.28em !important}
#kb .kb-cm-title b{display:block;font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:10cqw !important;line-height:1.05 !important;margin-top:2cqw;letter-spacing:-.02em !important;text-shadow:0 2px 10px rgba(0,0,0,.25) !important}
#kb .kb-cm-title.dark{color:var(--ink) !important;background:linear-gradient(180deg,rgba(255,255,255,.95) 45%,transparent)}
#kb .kb-cm-title.dark small{color:var(--coral2) !important}
#kb .kb-cm-title.bottom{top:auto;bottom:6cqw;left:7cqw;right:7cqw;padding:4cqw 3cqw;border-radius:5cqw;background:rgba(255,255,255,.94);color:var(--ink) !important}
#kb .kb-cm-title.bottom small{color:var(--coral2) !important;font-size:3.4cqw !important}
#kb .kb-cm-title.bottom b{text-shadow:none !important;font-size:11cqw !important}
#kb .kb-cm-title em{display:block;font-style:normal;font-weight:800 !important;font-size:4.2cqw !important;color:var(--coral) !important;margin-top:1cqw}
#kb .kb-cm-text{padding:14cqw 10cqw;display:flex;flex-direction:column;gap:5cqw;background:#FFFBF4}
#kb .kb-cm-text i{display:block;height:3.2cqw;border-radius:2cqw;background:#e6dccb}
#kb .kb-cm-text i.s{width:62%}
#kb .kb-cm-thanks{background:#FBE6F0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6cqw}
#kb .kb-cm-thanks b{font-family:'Nunito','Montserrat',sans-serif !important;font-weight:900 !important;font-size:10cqw !important;color:#5b2a6e !important}
#kb .kb-cm-thanks span{width:50cqw;height:50cqw;border-radius:50%;border:4cqw solid #fff;background:radial-gradient(circle at 50% 40%,#FFC9A8,#FF8FB8)}
#kb .kb-cm-stick{display:grid;grid-template-columns:1fr 1fr;gap:4cqw;padding:8cqw}
#kb .kb-cm-stick span{position:relative;border:2px dashed #b7ab98;border-radius:6cqw}
#kb .kb-cm-stick svg{position:absolute;inset:8% 22%;width:56%;height:84%}
/* multi-book offer, cart bar, toast */
#kb .kb-multi{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:start;margin-top:14px;padding:14px 16px;border-radius:18px;background:#FFF4E4;box-shadow:0 0 0 1.5px #F6DDBA inset}
#kb .kb-multi-ic{font-size:24px !important;line-height:1.2 !important}
#kb .kb-multi p{font-size:14px !important;line-height:1.5 !important;color:#4a4238 !important}
#kb .kb-multi b{color:var(--coral2) !important}
#kb .kb-multi .kb-more{grid-column:2;justify-self:start;text-align:left;margin:4px 0 0;padding:0;font-weight:800 !important;color:var(--coral2) !important;text-decoration:underline !important;text-underline-offset:3px}
#kb .kb-cartbar{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:14px;padding:10px 12px 10px 10px;border-radius:999px;background:var(--ink);color:#fff !important;box-shadow:0 16px 40px rgba(0,0,0,.3);font-size:14px !important;font-weight:600 !important;white-space:nowrap;max-width:calc(100% - 32px)}
#kb .kb-cartbar-n{width:34px;height:34px;border-radius:50%;background:var(--coral);color:var(--ink) !important;display:grid;place-items:center;font-weight:900 !important}
#kb .kb-cartbar b{color:var(--gold) !important}
#kb .kb-cartbar strong{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;background:#fff;color:var(--ink) !important}
#kb .kb-toast{position:fixed;left:50%;top:22px;transform:translate(-50%,-20px);opacity:0;z-index:2000;background:var(--ink);color:#fff !important;padding:12px 20px;border-radius:999px;font-weight:700 !important;font-size:14px !important;box-shadow:0 14px 30px rgba(0,0,0,.25);transition:opacity .3s,transform .3s;max-width:calc(100% - 32px)}
#kb .kb-toast.on{opacity:1;transform:translate(-50%,0)}
#kb .kb-pc-greet{background:radial-gradient(90% 90% at 30% 20%,#fff1cf,#ffc58f)}
#kb .kb-cm-before{background:#EDE6DA;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-top:8cqw}
#kb .kb-cm-before small{position:absolute;top:7cqw;left:0;right:0;text-align:center;font-weight:900 !important;font-size:4.4cqw !important;letter-spacing:.3em !important;color:#8a7f70 !important}
#kb .kb-cm-before span{width:70cqw;height:84cqw;background:radial-gradient(circle at 50% 28%,#b9ad9c 0 21cqw,transparent 21.5cqw),radial-gradient(ellipse at 50% 100%,#b9ad9c 0 34cqw,transparent 34.5cqw)}
#kb .kb-chip-long{text-align:left;white-space:normal;line-height:1.35 !important;font-size:14px !important}
#kb .kb-adult{padding:90px 0 90px;background:linear-gradient(180deg,var(--cream2),var(--cream))}
#kb .kb-adult-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:40px;align-items:center;max-width:1060px;margin:0 auto;padding:30px;border-radius:32px;background:#fff;box-shadow:0 20px 50px rgba(40,30,20,.12)}
#kb .kb-adult-art{aspect-ratio:5/4;border-radius:22px;display:grid;place-items:center;overflow:hidden;position:relative}
#kb .kb-adult-card+.kb-adult-card{margin-top:24px}
#kb .kb-adult-card.flip .kb-adult-art{order:2}
@media (max-width:820px){#kb .kb-adult-card.flip .kb-adult-art{order:0}}
#kb .kb-adult-art .kb-cm{width:48%}
#kb .kb-adult-copy .kb-h2{font-size:clamp(28px,3.4vw,42px) !important;line-height:1.1 !important;margin:10px 0 14px}
#kb .kb-adult-copy p{color:var(--muted) !important;font-size:16px !important;line-height:1.6 !important}
#kb .kb-adult-copy .kb-btn{margin-top:22px}
@media (max-width:820px){#kb .kb-adult-card{grid-template-columns:1fr;gap:22px;padding:18px}}
#kb .kb-orb-photo{display:block;width:108px;height:108px;border-radius:50%;background-size:cover;background-position:center;border:5px solid #fff;box-shadow:0 12px 30px rgba(0,0,0,.25)}

/* ideas: dark with orange */
#kb .kb-ideas{background:var(--ink);color:#fff !important}
#kb .kb-ideas .kb-h2{color:#fff !important}
#kb .kb-ideas .kb-eyebrow.kb-dark{color:var(--coral) !important}
#kb .kb-ideas .kb-head p{color:#bdb4a6 !important}
#kb .kb-ideas .kb-idea{background:#1f1c19;box-shadow:0 0 0 1px rgba(255,255,255,.07) inset;color:#fff !important}
#kb .kb-ideas .kb-idea:hover{background:#27221d;box-shadow:0 0 0 1.5px var(--coral) inset,0 18px 40px rgba(0,0,0,.35)}
#kb .kb-ideas .kb-idea-e{background:rgba(232,100,60,.16);box-shadow:0 0 0 1px rgba(232,100,60,.35) inset}
#kb .kb-ideas .kb-idea h3{color:#fff !important}
#kb .kb-ideas .kb-idea p{color:#bdb4a6 !important}
#kb .kb-ideas .kb-idea-go{color:var(--coral) !important}
#kb .kb-cardnote{display:flex;gap:10px;align-items:flex-start;margin:10px 0 4px;padding:12px 14px;border-radius:16px;background:#FFF4E4;box-shadow:0 0 0 1.5px #F6DDBA inset;font-size:14px !important;line-height:1.5 !important;font-weight:600 !important;color:#4a4238 !important}
#kb .kb-cardnote svg{flex:none;width:18px;height:18px;color:var(--coral) !important;margin-top:2px}
#kb .kb-fside [data-act="final-regen"]{margin-top:12px}
/* celebrations: two cards side by side */
#kb .kb-adult-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:1180px;margin:0 auto}
#kb .kb-adult-grid.kb-n1{grid-template-columns:minmax(0,560px);justify-content:center}
#kb .kb-adult-grid .kb-adult-card{grid-template-columns:1fr;gap:20px;padding:14px 14px 24px;margin:0;align-items:stretch;max-width:none;border-radius:28px}
#kb .kb-adult-grid .kb-adult-card+.kb-adult-card{margin-top:0}
#kb .kb-adult-grid .kb-adult-art{aspect-ratio:16/10}
#kb .kb-adult-grid .kb-adult-art .kb-cm{width:34%}
#kb .kb-adult-grid .kb-adult-copy{padding:0 12px;display:flex;flex-direction:column;align-items:flex-start}
#kb .kb-adult-grid .kb-adult-copy .kb-h2{font-size:clamp(24px,2.4vw,30px) !important;margin:8px 0 10px}
#kb .kb-adult-grid .kb-adult-card>*{min-width:0}
#kb .kb-adult-grid .kb-adult-art{width:100%}
#kb .kb-adult-grid .kb-adult-copy p{font-size:15px !important}
#kb .kb-adult-grid .kb-adult-copy .kb-btn{margin-top:auto}
#kb .kb-adult-grid .kb-feats{margin-bottom:20px}
@media (max-width:820px){#kb .kb-adult-grid{grid-template-columns:1fr}}
#kb .kb-adult-grid .kb-adult-card{grid-template-rows:auto 1fr;align-content:stretch}

/* Break out of the theme / Elementor container so the page is always edge-to-edge */
#kb{position:relative;width:100vw;max-width:100vw;left:50%;right:50%;margin-left:-50vw!important;margin-right:-50vw!important;box-sizing:border-box}
body:has(#kb){overflow-x:clip}
.elementor-widget-shortcode:has(#kb),.elementor-shortcode:has(#kb),.entry-content:has(#kb){max-width:none}
#kb .kb-opt-art .kb-cm{width:30%}
#kb .kb-share{display:flex;gap:10px;align-items:flex-start;margin:14px 2px 0;font-size:13.5px !important;line-height:1.5 !important;color:#4a4238 !important;cursor:pointer}
#kb .kb-share input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--coral)}
#kb .kb-share small{display:block;color:var(--muted) !important;font-size:12.5px !important}

/* v3.14 — Дадлын самбар (routine) + утасны апп */
#kb .kb-cards.kb-n4{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1280px;gap:20px}
#kb .kb-cards.kb-n4 .kb-pc h3{font-size:21px !important}
@media (max-width:1100px){#kb .kb-cards.kb-n4{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px}}
@media (max-width:640px){#kb .kb-cards.kb-n4{grid-template-columns:1fr}}
#kb .kb-pc-routine{background:radial-gradient(90% 90% at 30% 20%,#dff5ef,#9fd9cb)}
#kb .kb-cm-phone{background:#1c1a17;border-radius:9cqw;padding:10cqw 7cqw;display:flex;flex-direction:column;gap:4cqw}
#kb .kb-cm-phone span{height:9cqw;border-radius:4cqw;background:#F2C14E;width:60%}
#kb .kb-cm-phone i{flex:1;border-radius:4cqw;background:#fff}
#kb .kb-cm-phone i:nth-child(odd){background:#DFF5EF}
/* tasks step */
#kb .kb-tcount{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:#E7F6EE;color:#1d7a47 !important;font-size:14px !important;font-weight:700 !important;margin-bottom:14px}
#kb .kb-tcount b{font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:16px !important}
#kb .kb-tcount.warn{background:#FDEBE3;color:var(--coral2) !important}
#kb .kb-tgroup{margin:0 0 16px}
#kb .kb-tg-h{font-size:12px !important;font-weight:800 !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--muted) !important;margin:0 0 8px}
#kb .kb-tcustom{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:16px;border:2px dashed var(--cream2);margin-top:4px}
#kb .kb-tc-when{align-items:center}
#kb .kb-tc-when .kb-btn{margin-left:auto;padding:10px 18px}
/* preview + formats */
#kb .kb-fmt-tag{display:inline-block;vertical-align:2px;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--coral);color:#fff !important;font-size:10.5px !important;font-weight:800 !important;letter-spacing:.02em !important}
#kb .kb-rt-locked{grid-template-columns:repeat(4,minmax(0,1fr))}
#kb .kb-lk-w{aspect-ratio:auto;min-height:62px;padding:8px 4px;text-align:center}
#kb .kb-lk-w small{font-size:10.5px !important;line-height:1.2 !important}
/* order page app box */
#kb .kb-appbox{margin-top:22px;padding:20px;border-radius:22px;background:#fff;box-shadow:0 10px 30px -18px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:12px}
#kb .kb-appbox .kb-h3{margin:0 !important}
#kb .kb-appsteps{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:6px}
#kb .kb-appsteps li{font-size:14px !important;line-height:1.5 !important;color:var(--text) !important}
#kb .kb-appbox .kb-btn.is-wait{opacity:.5;pointer-events:none}
#kb .kb-appview{display:flex;justify-content:center;align-items:flex-start}
/* phone frame */
#kb .kb-phone{position:relative;width:min(360px,100%);height:min(720px,calc(100vh - 80px));border-radius:44px;background:#111;padding:12px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
#kb .kb-phone-in{width:100%;height:100%;border-radius:34px;overflow:hidden auto;background:var(--cream);position:relative}
#kb .kb-app-ov{position:fixed;inset:0;z-index:100000;background:rgba(17,17,17,.72);display:flex;align-items:center;justify-content:center;padding:16px}
#kb .kb-app-x{position:absolute;top:-8px;right:-8px;z-index:3;width:40px;height:40px;border-radius:50%;background:#fff;color:#111 !important;font-size:24px !important;line-height:1 !important;box-shadow:0 4px 14px rgba(0,0,0,.3)}
/* the app */
#kb .kb-app{min-height:100%;display:flex;flex-direction:column;background:var(--cream);position:relative;font-family:'Manrope',sans-serif}
#kb .kb-app-h{background:#fff;padding:18px 16px 12px;border-radius:0 0 26px 26px;box-shadow:0 6px 20px -14px rgba(0,0,0,.3);position:sticky;top:0;z-index:2}
#kb .kb-app-top{display:flex;align-items:center;gap:10px}
#kb .kb-app-av{width:46px;height:46px;border-radius:50%;background:#F2C14E center/cover no-repeat;flex-shrink:0;box-shadow:0 0 0 3px #FFE68A}
#kb .kb-app-t{flex:1;min-width:0;display:flex;flex-direction:column}
#kb .kb-app-t small{font-size:10.5px !important;font-weight:800 !important;letter-spacing:.14em !important;color:var(--coral) !important}
#kb .kb-app-t b{font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:18px !important;line-height:1.2 !important;color:var(--text) !important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#kb .kb-app-stars{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;background:#FFF4D6}
#kb .kb-app-stars b{font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:15px !important}
#kb .kb-app-prog{margin-top:12px}
#kb .kb-app-prog>div{display:flex;justify-content:space-between;font-size:12.5px !important;font-weight:700 !important;color:var(--muted) !important;margin-bottom:6px}
#kb .kb-app-prog i{display:block;height:10px;border-radius:999px;background:var(--cream2);overflow:hidden}
#kb .kb-app-prog em{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2FB36B,#7ED957);transition:width .35s}
#kb .kb-app-tabs{display:flex;gap:6px;margin-top:12px;padding:4px;border-radius:999px;background:var(--cream)}
#kb .kb-app-tabs button{flex:1;padding:9px 0;border-radius:999px;font-weight:800 !important;font-size:14px !important;color:var(--muted) !important;background:transparent}
#kb .kb-app-tabs button.on{background:var(--ink);color:#fff !important}
#kb .kb-app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}
#kb .kb-app-card{display:flex;flex-direction:column;border-radius:20px;background:#fff;overflow:hidden;text-align:left;box-shadow:0 6px 16px -12px rgba(0,0,0,.4);transition:transform .15s}
#kb .kb-app-card:active{transform:scale(.97)}
#kb .kb-app-pic{position:relative;display:block;aspect-ratio:1;background-position:center;background-size:cover;background-repeat:no-repeat}
#kb .kb-app-card.done .kb-app-pic{filter:saturate(.75)}
#kb .kb-app-ok{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(47,179,107,.42)}
#kb .kb-app-ok svg{width:54px;height:54px;padding:10px;border-radius:50%;background:#2FB36B;box-shadow:0 6px 16px rgba(0,0,0,.25)}
#kb .kb-app-lbl{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 12px}
#kb .kb-app-lbl span{font-weight:800 !important;font-size:14px !important;line-height:1.25 !important;color:var(--text) !important}
#kb .kb-app-lbl i{width:22px;height:22px;flex-shrink:0;border-radius:50%;border:2.5px solid #d9cfc2}
#kb .kb-app-card.done .kb-app-lbl i{border-color:#2FB36B;background:#2FB36B}
#kb .kb-app-cheer{margin:0 14px 12px;padding:14px;border-radius:18px;background:#FFF4D6;display:flex;gap:12px;align-items:center}
#kb .kb-app-cheer>div{display:flex;flex-direction:column}
#kb .kb-app-cheer b{font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:16px !important}
#kb .kb-app-cheer span{font-size:13px !important;color:var(--muted) !important}
#kb .kb-app-week{margin-top:auto;padding:12px 14px 18px;background:#fff;border-radius:22px 22px 0 0}
#kb .kb-app-week small{display:block;font-size:10.5px !important;font-weight:800 !important;letter-spacing:.14em !important;color:var(--muted) !important;margin-bottom:8px}
#kb .kb-app-week>div{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
#kb .kb-app-week span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;border-radius:12px;color:#d9cfc2 !important}
#kb .kb-app-week span.part{color:#F2C14E !important;opacity:.6}
#kb .kb-app-week span.full{color:#F2C14E !important}
#kb .kb-app-week span.today{background:var(--cream)}
#kb .kb-app-week em{font-style:normal;font-size:10.5px !important;font-weight:800 !important;color:var(--muted) !important}
#kb .kb-app-reward{position:absolute;inset:0;z-index:5;background:rgba(17,17,17,.75);display:flex;align-items:center;justify-content:center;padding:20px}
#kb .kb-app-reward>div{background:#fff;border-radius:26px;padding:24px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
#kb .kb-app-reward small{font-size:11px !important;font-weight:800 !important;letter-spacing:.14em !important;color:var(--coral) !important}
#kb .kb-app-rw-av{width:140px;height:140px;border-radius:50%;background:#FFE68A center/cover no-repeat;box-shadow:0 0 0 6px #F2C14E}
#kb .kb-app-reward b{font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:20px !important;line-height:1.25 !important}
#kb .kb-app-reward p{margin:0 !important;font-size:14px !important;color:var(--muted) !important}
/* standalone ?kb_app page */
#kb.kb-app-page{width:100%;max-width:520px;left:auto;right:auto;margin:0 auto !important;min-height:100vh;min-height:100dvh}
#kb.kb-app-page .kb-app{min-height:100vh;min-height:100dvh}
#kb .kb-fside .kb-appbox{box-shadow:none;padding:0;background:transparent}
#kb .kb-fside .kb-appbox:first-child{margin-top:0}
#kb .kb-appsteps{list-style:decimal outside !important;padding-left:22px !important}
#kb .kb-appsteps li{display:list-item !important;padding-left:2px}
#kb .kb-appsteps li::marker{font-weight:900;color:var(--coral)}
#kb .kb-viewer.kb-appview{width:100%;justify-content:center}
#kb .kb-appview .kb-phone{margin:0 auto}
/* v3.15 — ideas: colourful cards, illustrated icons, vertical list on phones */
#kb .kb-ideas .kb-idea{background:var(--ib,#fff) !important;box-shadow:none;color:var(--text) !important}
#kb .kb-ideas .kb-idea:hover{background:var(--ib,#fff) !important;box-shadow:0 0 0 3px var(--coral) inset,0 18px 40px rgba(0,0,0,.35)}
#kb .kb-ideas .kb-idea-e{width:64px;height:64px;background:none !important;box-shadow:none !important;border-radius:50%}
#kb .kb-idea-e svg{width:64px;height:64px;display:block;filter:drop-shadow(0 6px 10px rgba(0,0,0,.14))}
#kb .kb-ideas .kb-idea h3{color:var(--text) !important}
#kb .kb-ideas .kb-idea p{color:#5d554b !important}
#kb .kb-ideas .kb-idea-go{color:var(--coral2) !important}
@media (max-width:560px){
  #kb .kb-ideas{padding:64px 0 56px}
  #kb .kb-idgrid{display:grid !important;grid-template-columns:1fr !important;overflow:visible !important;margin:0 !important;padding:0 !important;gap:10px}
  #kb .kb-idea{flex:none !important;display:grid !important;grid-template-columns:52px minmax(0,1fr);column-gap:14px;row-gap:2px;align-items:start;min-height:0;padding:16px 16px 14px;border-radius:20px}
  #kb .kb-ideas .kb-idea-e,#kb .kb-idea-e svg{width:52px;height:52px}
  #kb .kb-idea-e{grid-row:1/4}
  #kb .kb-idea h3{margin-top:2px;font-size:17px !important}
  #kb .kb-idea p{font-size:13.5px !important}
  #kb .kb-idea-go{padding-top:4px}
}
#kb .kb-fmt-list{list-style:none !important;margin:6px 0 0 !important;padding:0 !important;display:flex;flex-direction:column;gap:3px}
#kb .kb-fmt-list li{position:relative;padding-left:20px !important;font-size:12.5px !important;line-height:1.45 !important;color:#5d554b !important}
#kb .kb-fmt-list li::before{content:'';position:absolute;left:2px;top:.42em;width:11px;height:6px;border-left:2.4px solid #2FB36B;border-bottom:2.4px solid #2FB36B;transform:rotate(-45deg)}
#kb .kb-fmt.on{background:#FFF8F3}
#kb .kb-inc li svg{flex-shrink:0;width:16px;height:16px}
/* v3.16 — real sample pictures on the two-sheet card mock */
#kb .kb-cm-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
#kb .kb-cm-real.kb-cm-sq{aspect-ratio:1;width:52%}
/* v3.17 — coloring book add-on next to a book */
#kb .kb-addon{display:grid;grid-template-columns:64px minmax(0,1fr) 28px;gap:12px;align-items:center;width:100%;text-align:left;padding:12px 14px;border-radius:18px;background:#fff;border:2px dashed #e0d5c3;margin:4px 0 10px;transition:border-color .15s,background .15s}
#kb .kb-addon:hover{border-color:var(--coral)}
#kb .kb-addon.on{border:2px solid var(--coral);background:#FFF6F0}
#kb .kb-addon-art{position:relative;display:block;width:64px;aspect-ratio:300/380;border-radius:4px 10px 10px 4px;overflow:hidden;box-shadow:0 6px 14px rgba(40,20,10,.18);transform:rotate(-4deg)}
#kb .kb-addon-art svg{position:absolute;inset:0;width:100%;height:100%}
#kb .kb-addon-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
#kb .kb-addon-txt b{font-size:14.5px !important;line-height:1.3 !important;color:var(--text) !important}
#kb .kb-addon-txt small{font-size:12px !important;line-height:1.4 !important;color:var(--muted) !important}
#kb .kb-addon-price{display:flex;align-items:baseline;gap:8px;margin-top:2px}
#kb .kb-addon-price em{font-style:normal;font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:17px !important;color:var(--coral2) !important}
#kb .kb-addon-price s{font-size:12.5px !important;color:var(--muted) !important}
#kb .kb-addon-chk{width:28px;height:28px;border-radius:8px;border:2px solid #d9cfc2;display:grid;place-items:center;background:#fff;color:#fff !important}
#kb .kb-addon.on .kb-addon-chk{background:var(--coral);border-color:var(--coral)}
#kb .kb-addon-chk svg{width:16px;height:16px}
#kb .kb-addon{grid-template-columns:76px minmax(0,1fr) 28px}
#kb .kb-addon-art{width:76px;background:#fff}
#kb .kb-addon-kid{position:absolute;left:50%;top:54%;width:58%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:#eee center/cover no-repeat;box-shadow:0 0 0 3px #fff,0 0 0 4.5px #111}
#kb .kb-addon-lbl{position:absolute;left:0;right:0;top:7%;text-align:center;font-size:7px !important;font-weight:900 !important;letter-spacing:.12em !important;color:#111 !important}

/* ===== v3.18 — KidsBook's own cart window + QPay ===== */
#kb .kb-cartbar{cursor:pointer;border:0;font-family:inherit !important}
#kb .kb-cart{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:24px}
#kb .kb-cart[hidden]{display:none}
#kb .kb-cart.on .kb-scrim{opacity:1}
#kb .kb-csheet{position:relative;width:min(520px,100%);max-height:min(860px,calc(100vh - 48px));background:var(--cream);border-radius:30px;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,.4);transform:translateY(24px) scale(.98);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s}
#kb .kb-cart.on .kb-csheet{transform:none;opacity:1}
#kb .kb-c-head{display:flex;align-items:center;gap:12px;padding:18px 18px 10px 24px}
#kb .kb-c-head b{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:20px !important;margin-right:auto}
#kb .kb-c-head .kb-c-back{margin-left:-8px}
#kb .kb-c-head .kb-c-back[hidden]{display:none}
#kb .kb-c-body{flex:1;overflow:auto;padding:8px 24px 24px;display:flex;flex-direction:column;gap:12px}
#kb .kb-c-list{display:flex;flex-direction:column;gap:10px}
#kb .kb-c-item{display:grid;grid-template-columns:56px minmax(0,1fr) auto 32px;align-items:center;gap:12px;background:#fff;border-radius:18px;padding:10px 8px 10px 10px;box-shadow:0 8px 22px rgba(40,30,20,.06)}
#kb .kb-c-th{width:56px;height:56px;border-radius:12px;background:var(--cream2) center/cover no-repeat;overflow:hidden;display:block}
#kb .kb-c-th-art svg{width:100%;height:100%;display:block}
#kb .kb-c-meta b{display:block;font-weight:800 !important;font-size:15px !important;line-height:1.25 !important}
#kb .kb-c-meta small{display:block;color:var(--muted) !important;font-size:13px !important;margin-top:2px}
#kb .kb-c-meta em{color:var(--coral2) !important;font-style:normal !important;font-weight:700 !important}
#kb .kb-c-pr{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:15px !important;white-space:nowrap}
#kb .kb-c-rm{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--muted) !important}
#kb .kb-c-rm:hover{background:var(--cream2)}
#kb .kb-c-rm svg{width:16px;height:16px}
#kb .kb-c-sum{display:flex;flex-direction:column;gap:6px;padding:4px 6px}
#kb .kb-c-sum>div{display:flex;justify-content:space-between;gap:12px;font-size:14px !important;color:var(--muted) !important}
#kb .kb-c-sum .kb-c-tot{color:var(--ink) !important;align-items:baseline}
#kb .kb-c-tot span{font-weight:800 !important}
#kb .kb-c-tot b{font-family:'Montserrat',sans-serif !important;font-size:26px !important;font-weight:800 !important}
#kb .kb-c-mail{display:flex;flex-direction:column;gap:6px;margin-top:4px}
#kb .kb-c-mail span{font-size:13px !important;font-weight:800 !important}
#kb .kb-c-hint{font-size:14px !important;color:var(--ink) !important;margin:0}
#kb .kb-c-hint:empty{display:none}
#kb .kb-c-hint .kb-linkbtn{padding:0}
#kb .kb-m-body .kb-c-hint{margin-top:12px}
#kb .kb-c-coupon{text-transform:uppercase !important}
#kb .kb-c-addmore{align-self:center}
#kb .kb-c-load,#kb .kb-c-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 0;text-align:center;color:var(--muted) !important}
#kb .kb-c-spin{width:22px;height:22px;border-radius:50%;border:3px solid var(--cream2);border-top-color:var(--coral);animation:kbspin .8s linear infinite;flex-shrink:0;display:inline-block}
@keyframes kbspin{to{transform:rotate(360deg)}}
#kb .kb-c-pay{display:flex;flex-direction:column;gap:12px}
#kb .kb-c-total{display:flex;justify-content:space-between;align-items:baseline;background:#fff;border-radius:18px;padding:14px 18px}
#kb .kb-c-total small{font-size:13px !important;font-weight:800 !important;color:var(--muted) !important}
#kb .kb-c-total b{font-family:'Montserrat',sans-serif !important;font-size:28px !important;font-weight:800 !important}
#kb .kb-c-qr{display:flex;flex-direction:column;align-items:center;gap:8px;background:#fff;border-radius:22px;padding:18px}
#kb .kb-c-qr img{width:min(240px,70vw);height:auto;display:block;image-rendering:pixelated}
#kb .kb-c-qr small{font-size:13px !important;color:var(--muted) !important;text-align:center}
#kb .kb-c-lbl{font-size:14px !important;font-weight:800 !important;margin-top:4px}
#kb .kb-c-banks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#kb .kb-c-bank{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;background:#fff;border-radius:16px;text-align:center;font-size:12px !important;font-weight:700 !important;line-height:1.2 !important;min-height:84px;justify-content:center;transition:transform .15s}
#kb .kb-c-bank:active{transform:scale(.96)}
#kb .kb-c-bank img{width:36px;height:36px;border-radius:10px;object-fit:contain}
#kb .kb-c-more summary{cursor:pointer;font-weight:700 !important;font-size:14px !important;color:var(--coral2) !important;padding:6px 0;list-style:revert}
#kb .kb-c-more .kb-c-qr{margin-top:8px}
#kb .kb-c-warn{background:#FFF3CD;border:1px solid #FFE08A;border-radius:14px;padding:12px 14px;font-size:14px !important;line-height:1.5 !important}
#kb .kb-c-wait{display:flex;align-items:center;gap:12px;background:#fff;border-radius:16px;padding:12px 14px;font-size:14px !important;font-weight:700 !important}
#kb .kb-c-short a{color:var(--coral2) !important;font-weight:700 !important}
#kb .kb-c-paid{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:40px 0}
#kb .kb-c-paid h3{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:22px !important}
#kb .kb-c-paid p{color:var(--muted) !important}
#kb .kb-c-ok{width:64px;height:64px;border-radius:50%;background:var(--coral);display:grid;place-items:center;color:var(--ink) !important}
#kb .kb-c-ok svg{width:30px;height:30px}
@media (max-width:760px){
  #kb .kb-cart{padding:0;place-items:end stretch}
  #kb .kb-csheet{width:100%;max-height:92vh;border-radius:26px 26px 0 0}
  #kb .kb-c-body{padding:6px 18px 22px}
}
@media (max-width:380px){#kb .kb-c-banks{grid-template-columns:repeat(2,minmax(0,1fr))}#kb .kb-c-item{grid-template-columns:48px minmax(0,1fr) auto 28px;gap:8px}#kb .kb-c-th{width:48px;height:48px}}

/* Order page: progress note, products of the order, next step */
#kb .kb-fnote2{font-size:14px !important;color:rgba(255,255,255,.72) !important;margin:0}
#kb .kb-fnote2[hidden]{display:none}
#kb .kb-onav{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px !important;color:rgba(255,255,255,.7) !important}
#kb .kb-onav b,#kb .kb-onav a{padding:7px 14px;border-radius:999px;font-weight:700 !important}
#kb .kb-onav b{background:#fff;color:var(--ink) !important}
#kb .kb-onav a{box-shadow:0 0 0 1.5px rgba(255,255,255,.3) inset;color:#fff !important}
#kb .kb-again{display:flex;flex-direction:column;gap:8px}
#kb .kb-again.on .kb-soft{box-shadow:0 0 0 2px var(--coral) inset}
#kb .kb-c-mailrow{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border-radius:16px;padding:10px 14px;font-size:14px !important}
#kb .kb-c-mailrow span{min-width:0;overflow-wrap:anywhere}
#kb .kb-c-mailrow .kb-linkbtn{padding:0;flex-shrink:0}
#kb .kb-pv-stage{position:relative}
#kb .kb-pv-tag{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:rgba(17,17,17,.82);color:#fff !important;padding:12px 18px;border-radius:999px;font-weight:800 !important;font-size:14px !important;white-space:normal;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.3);pointer-events:none;max-width:calc(100% - 24px)}
#kb .kb-focusbox{display:flex;align-items:center;gap:14px;margin:18px auto 0;max-width:420px;background:#fff;border-radius:18px;padding:12px}
#kb .kb-focus{position:relative;flex-shrink:0;width:96px;height:128px;border-radius:48px 48px 12px 12px;background-size:cover;background-repeat:no-repeat;cursor:grab;touch-action:none;box-shadow:0 0 0 3px var(--coral)}
#kb .kb-focus span{position:absolute;right:6px;bottom:6px;width:26px;height:26px;border-radius:50%;background:rgba(17,17,17,.7);color:#fff !important;display:grid;place-items:center;font-size:15px !important}
#kb .kb-focusbox small{font-size:13px !important;color:var(--muted) !important;line-height:1.45 !important}

/* v3.20 phone app: week days as buttons, morning / evening in one scroll */
#kb .kb-app-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:14px}
#kb .kb-app-days button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 7px;border-radius:16px;background:var(--cream);color:#d9cfc2 !important;min-height:64px;touch-action:manipulation}
#kb .kb-app-days button em{font-style:normal;font-size:11px !important;font-weight:800 !important;color:var(--muted) !important}
#kb .kb-app-days button b{font-family:'Montserrat',sans-serif !important;font-size:17px !important;font-weight:900 !important;color:var(--ink) !important;line-height:1.1 !important}
#kb .kb-app-days button.part{color:#F2C14E !important}
#kb .kb-app-days button.full{color:#F2C14E !important;background:#FFF4D6}
#kb .kb-app-days button.today{box-shadow:0 0 0 2px var(--coral) inset}
#kb .kb-app-days button.on{background:var(--ink)}
#kb .kb-app-days button.on em{color:rgba(255,255,255,.7) !important}
#kb .kb-app-days button.on b{color:#fff !important}
#kb .kb-app-days button:disabled{opacity:.35}
#kb .kb-app-sec{padding:6px 0 4px}
#kb .kb-app-sec h3{display:flex;align-items:center;gap:10px;margin:14px 14px 0 !important;padding:10px 14px !important;border-radius:16px;font-family:'Montserrat',sans-serif !important;font-weight:900 !important;font-size:18px !important}
#kb .kb-app-sec-m h3{background:linear-gradient(90deg,#FFF1C9,#FFE3D2)}
#kb .kb-app-sec-e h3{background:linear-gradient(90deg,#E4E9FF,#EFE6FF)}
#kb .kb-app-sec h3 em{margin-left:auto;font-style:normal;font-size:13px !important;font-weight:800 !important;color:var(--muted) !important}
#kb .kb-app-card{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#kb .kb-app-sec .kb-app-cheer{margin:0 14px 6px}

/* v3.21 share card + coupon */
#kb .kb-share{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:20px;background:linear-gradient(160deg,#1d1846,#2b2266);color:#fff !important}
#kb .kb-share>b{font-family:'Montserrat',sans-serif !important;font-weight:800 !important;font-size:17px !important;line-height:1.3 !important;color:#fff !important}
#kb .kb-share>small{font-size:13px !important;line-height:1.5 !important;color:rgba(255,255,255,.75) !important}
#kb .kb-share-art{display:flex;justify-content:center}
#kb .kb-share-btns{display:flex;gap:8px;flex-wrap:wrap}
#kb .kb-share-btns .kb-btn{flex:1;min-width:120px}
#kb .kb-share-btns .kb-soft{color:#fff !important;box-shadow:0 0 0 1.5px rgba(255,255,255,.35) inset}
#kb .kb-share-code{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#fff;color:var(--ink) !important;border-radius:14px;padding:12px 14px}
#kb .kb-share-code[hidden]{display:none}
#kb .kb-share-code span{font-size:13px !important;font-weight:700 !important}
#kb .kb-share-code b{font-family:'Montserrat',sans-serif !important;font-size:20px !important;font-weight:900 !important;letter-spacing:.12em !important;border:2px dashed var(--coral);border-radius:10px;padding:4px 10px}
#kb .kb-share-code small{flex-basis:100%;font-size:12px !important;color:var(--muted) !important}
#kb .kb-share-code .kb-linkbtn{padding:0}

/* v3.22 real covers: dark band after the ideas, 6×2 fading pages on computers, flowing lanes on phones */
#kb .kb-sc{background:var(--ink);color:#fff !important;padding:10px 0 100px}
#kb .kb-sc .kb-h2{color:#fff !important}
#kb .kb-sc .kb-eyebrow.kb-dark{color:var(--coral) !important}
#kb .kb-sc .kb-head p{color:#bdb4a6 !important}
#kb .kb-sc-pages{display:grid;margin-top:28px}
#kb .kb-sc-grid{grid-area:1/1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-content:start;opacity:0;visibility:hidden;transition:opacity .9s,visibility .9s}
#kb .kb-sc-grid.on{opacity:1;visibility:visible}
#kb .kb-sc-item{display:flex;flex-direction:column;gap:3px;text-align:left;padding:8px 8px 12px;border-radius:20px;background:#1f1c19;box-shadow:0 0 0 1px rgba(255,255,255,.07) inset;color:#fff !important;transition:transform .25s,box-shadow .25s;cursor:pointer;min-width:0}
#kb .kb-sc-item:hover{transform:translateY(-4px);box-shadow:0 0 0 2px var(--coral) inset,0 18px 40px rgba(0,0,0,.35)}
#kb .kb-sc-cover{display:block;aspect-ratio:1;border-radius:14px;background:center/cover no-repeat #2a2622;margin-bottom:7px}
#kb .kb-sc-item b{font-size:13px !important;line-height:1.3 !important;font-weight:700 !important;color:#fff !important;padding:0 4px}
#kb .kb-sc-item small{font-size:12px !important;color:#bdb4a6 !important;padding:0 4px}
#kb .kb-sc-flow{display:none}
@media (max-width:980px){#kb .kb-sc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#kb .kb-sc-grid .kb-sc-item:nth-child(n+9){display:none}}
@media (max-width:640px){
  #kb .kb-sc-pages{display:none}
  #kb .kb-sc-flow{display:flex;flex-direction:column;gap:12px;margin:24px -24px 0;overflow:hidden}
  #kb .kb-sc-lane{overflow:hidden}
  #kb .kb-sc-track{display:flex;gap:12px;width:max-content;animation:kbScFlow calc(var(--n) * 5s) linear infinite}
  #kb .kb-sc-lane.kb-rev .kb-sc-track{animation-direction:reverse}
  #kb .kb-sc-lane:active .kb-sc-track,#kb .kb-sc-lane:hover .kb-sc-track{animation-play-state:paused}
  #kb .kb-sc-track .kb-sc-item{flex:0 0 150px}
}
@keyframes kbScFlow{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 6px))}}
@media (prefers-reduced-motion:reduce){#kb .kb-sc-track{animation:none}#kb .kb-sc-lane{overflow-x:auto}}

/* v3.23 reel studio (admin): the finished book as a 3D page-turning video */
#kb .kb-reel-btn{margin-top:10px}
.kb-rv-ov{position:fixed;inset:0;z-index:99999;background:rgba(14,12,10,.92);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;font-family:Manrope,system-ui,sans-serif;color:#f3ece2}
.kb-rv-box{position:relative;display:flex;gap:24px;align-items:center;max-height:100%;max-width:100%}
.kb-rv-x{position:absolute;right:-6px;top:-6px;width:38px;height:38px;border-radius:50%;border:0;background:#2a2521;color:#fff;font-size:16px;cursor:pointer;z-index:2}
.kb-rv-screen{position:relative;height:min(86vh,820px);aspect-ratio:9/16;max-width:100%;border-radius:16px;overflow:hidden;background:#000;flex:none}
.kb-rv-screen.drag{cursor:grab;touch-action:none}
.kb-rv-screen canvas,.kb-rv-screen video{position:absolute;inset:0;width:100%;height:100%;display:block}
.kb-rv-screen [hidden]{display:none !important}
.kb-rv-busy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(10,8,6,.75);font-weight:700;font-size:15px;text-align:center;padding:20px}
.kb-rv-busy[hidden]{display:none}
.kb-rv-track{width:62%;height:8px;border-radius:99px;background:rgba(255,255,255,.18);overflow:hidden}
.kb-rv-track i{display:block;height:100%;width:0;background:#E8643C;border-radius:99px;transition:width .2s}
.kb-rv-side{width:300px;display:flex;flex-direction:column;gap:10px;max-height:86vh;overflow:auto}
.kb-rv-side h3{margin:0 0 4px;font:800 24px Montserrat,sans-serif;color:#fff}
.kb-rv-lab{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#a59c90;margin-top:6px}
.kb-rv-bgs{display:flex;flex-wrap:wrap;gap:6px}
.kb-rv-bgs button,.kb-rv-seg button{font:700 13px Manrope,sans-serif;color:#f3ece2;background:#1f1b18;border:1px solid #3a342e;border-radius:999px;padding:8px 12px;cursor:pointer}
.kb-rv-bgs button.on,.kb-rv-seg button.on{background:#E8643C;border-color:#E8643C;color:#1a120d}
.kb-rv-bgs .kb-rv-ph{width:46px;height:46px;padding:0;border-radius:12px;background-size:cover;background-position:center}
.kb-rv-bgs .kb-rv-ph.on{box-shadow:0 0 0 3px #E8643C}
.kb-rv-seg{display:flex;gap:6px}
.kb-rv-place{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;font-size:12.5px;color:#a59c90}
.kb-rv-place[hidden]{display:none}
.kb-rv-place label{display:flex;flex-direction:column;gap:4px}
.kb-rv-place input{width:100%;accent-color:#E8643C}
.kb-rv-place small,.kb-rv-place .kb-rv-del{grid-column:1/-1}
.kb-rv-del{background:none;border:0;color:#e88a7a;font:600 12.5px Manrope,sans-serif;cursor:pointer;text-align:left;padding:0}
.kb-rv-check{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;line-height:1.4;margin-top:6px;cursor:pointer}
.kb-rv-check[hidden]{display:none}
.kb-rv-check input{accent-color:#E8643C;margin-top:2px}
.kb-rv-go{margin-top:10px;font:800 15px Manrope,sans-serif;color:#1a120d;background:#E8643C;border:0;border-radius:999px;padding:14px 18px;cursor:pointer}
.kb-rv-go:disabled{opacity:.5;cursor:default}
.kb-rv-go:focus-visible,.kb-rv-bgs button:focus-visible,.kb-rv-seg button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.kb-rv-msg{color:#bdb4a6 !important;font-size:13px;line-height:1.5;margin:0}
@media (max-width:760px){.kb-rv-ov{align-items:flex-start;overflow:auto}.kb-rv-box{flex-direction:column;gap:14px}.kb-rv-screen{height:auto;width:min(100%,380px)}.kb-rv-side{width:min(100%,380px);max-height:none}}
