/* Chen Wealth install sheet, update bar, offline bar. Uses the existing brand variables. */
.cw-sheet{position:fixed;inset:0;z-index:9999;display:flex;align-items:flex-end;justify-content:center;visibility:hidden}
.cw-sheet.is-open{visibility:visible}
.cw-scrim{position:absolute;inset:0;background:rgba(6,11,31,.55);opacity:0;transition:opacity .2s ease}
.cw-sheet.is-open .cw-scrim{opacity:1}
.cw-card{position:relative;width:100%;max-width:440px;background:var(--surface,#fff);color:var(--ink,#0e1832);border-radius:20px 20px 0 0;padding:20px 20px calc(20px + env(safe-area-inset-bottom,0px));box-shadow:0 -12px 40px rgba(6,11,31,.25);transform:translateY(24px);opacity:0;transition:transform .22s ease,opacity .22s ease}
.cw-sheet.is-open .cw-card{transform:none;opacity:1}
@media (min-width:600px){.cw-sheet{align-items:center}.cw-card{border-radius:20px;padding-bottom:20px}}
.cw-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.cw-icon{width:56px;height:56px;border-radius:14px;box-shadow:0 2px 10px rgba(6,11,31,.18)}
.cw-title{margin:0;font-size:1.2rem;line-height:1.25}
.cw-lead{margin:0 0 6px;font-weight:600;font-size:1.02rem}
.cw-sub{margin:0 0 6px;color:var(--ink-2,#37446a);font-size:.95rem;line-height:1.5}
.cw-steps{list-style:none;margin:8px 0 10px;padding:0;display:grid;gap:10px}
.cw-step{display:flex;gap:12px;align-items:flex-start;font-size:.95rem;line-height:1.45}
.cw-step-n{flex:0 0 26px;height:26px;border-radius:50%;background:var(--brand-soft,#e8eeff);color:var(--brand,#2c59ea);font-weight:700;display:grid;place-items:center;font-size:.85rem}
.cw-foot{display:flex;gap:10px;margin-top:14px}
.cw-btn{font:inherit;font-weight:600;border-radius:12px;border:1px solid var(--line,#e2e8f5);padding:0 18px;min-height:48px;cursor:pointer;flex:1;background:var(--surface,#fff);color:var(--ink,#0e1832)}
.cw-primary{background:var(--brand,#2c59ea);border-color:var(--brand,#2c59ea);color:var(--on-brand,#fff)}
.cw-ghost{background:transparent}
.cw-btn:disabled{opacity:.7;cursor:wait}
.cw-btn:focus-visible{outline:3px solid var(--brand-2,#587bff);outline-offset:2px}
.cw-small{min-height:40px;flex:0 0 auto;padding:0 14px}
.cw-bar{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:9998;display:none;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border-radius:14px;background:var(--ink,#0e1832);color:#fff;font-size:.92rem;box-shadow:0 8px 24px rgba(6,11,31,.3);max-width:520px;margin:0 auto}
.cw-bar.is-on{display:flex}
.cw-bar-text{flex:1 1 180px}
.cw-offline{background:#7a4b00}
.cw-bar .cw-btn{border-color:rgba(255,255,255,.4);color:#fff}
.cw-bar .cw-primary{background:#fff;color:var(--ink,#0e1832);border-color:#fff}
@media (min-width:900px){.cw-bar{bottom:20px}}
@media (prefers-reduced-motion:reduce){.cw-scrim,.cw-card{transition:none}.cw-card{transform:none}}
.cw-linkbtn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.cw-foot{flex-wrap:wrap}
