:root{--frame-w: 480px;--ob-bg: #f6e8de;--ob-card: #fffaf5;--ob-card-soft: #f9ede3;--ob-ink: #3a2a22;--ob-sub: #8a6f60;--ob-faint: #b69c8c;--ob-brand: #b8472a;--ob-brand-deep: #9c3a20;--ob-brand-soft: #f3d9cc;--ob-line: #ecd9cb;--ob-green: #5f8a63;--ob-green-soft: #e3efe3;--paper: var(--ob-bg);--paper-2: var(--ob-card-soft);--ink: var(--ob-ink);--ink-soft: var(--ob-sub);--violet: var(--ob-brand);--violet-deep: var(--ob-brand-deep);--line: var(--ob-line);--mute: var(--ob-faint);--bisque: var(--ob-brand-soft);--ob-cfx-coral: #d9a875;--ob-cfx-gold: #c4892b;--ob-cfx-green: #5f8a63}html,body{overscroll-behavior:none}.app-frame{position:relative;display:flex;flex-direction:column;background:var(--paper);padding-top:var(--wing-nav-clearance, 76px);min-height:calc(100vh - 120px);min-height:calc(100dvh - 120px)}@media(min-width:600px)and (min-height:700px){body{padding:var(--wing-nav-clearance, 96px) 0 32px}.app-frame{width:var(--frame-w);max-width:100%;min-height:0;height:min(900px,calc(100vh - 160px));height:min(900px,calc(100dvh - 160px));margin:0 auto;padding-top:0;border-radius:34px;box-shadow:0 24px 60px #5a321e47;overflow:hidden}.app-frame .ob-body{overflow-y:auto}}.ob-header{flex:0 0 auto;padding:calc(env(safe-area-inset-top) + 14px) 18px 14px;display:flex;align-items:center;gap:14px;min-height:40px;box-sizing:content-box}.ob-back{width:40px;height:40px;border-radius:999px;background:var(--bisque);border:none;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto;transition:background .15s ease}.ob-back:hover{background:#efd2c2}.ob-back:disabled{opacity:0;pointer-events:none}.ob-back svg{width:22px;height:22px}.ob-body{flex:1 1 auto;overflow-x:hidden;padding:16px 24px 12px;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch;position:relative}.ob-step{flex:1 1 auto;display:none;flex-direction:column;animation:slide-in .34s cubic-bezier(.22,1,.36,1) both}.ob-step.active{display:flex}.ob-step[data-step=done]{animation:none}@keyframes slide-in{0%{transform:translate(16px)}to{transform:translate(0)}}.ob-eyebrow{font-family:var(--font-display);font-style:normal;font-weight:700;color:var(--ob-brand);font-size:12.5px;letter-spacing:.03em;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;margin-bottom:10px}.ob-eyebrow:before{display:none}.ob-question{font-family:var(--font-display);font-weight:800;font-size:clamp(1.3rem,5.5vw,1.45rem);line-height:1.25;letter-spacing:0;color:var(--ob-ink);margin:0 0 8px}.ob-question em{font-style:normal;color:var(--ob-brand)}.ob-helper{font-family:var(--font-display);font-size:14px;color:var(--ink-soft);line-height:1.55;margin:6px 0 14px}.ob-brand{display:flex;align-items:center;justify-content:center;margin-top:4px}.ob-brand-word{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.01em;color:var(--ob-ink)}.ob-note{border-radius:14px;padding:13px 15px;margin-top:16px;background:var(--ob-card-soft);border:none}.ob-note.ok{background:var(--ob-green-soft);border:1px solid rgba(95,138,99,.35)}.ob-note-t{font:700 13px var(--font-display);color:var(--ob-brand);margin-bottom:4px}.ob-note.ok .ob-note-t{color:var(--ob-green);display:inline-flex;align-items:center;gap:7px}.ob-note-b{font-size:12.5px;color:var(--ink-soft);line-height:1.55}.ob-input{width:100%;box-sizing:border-box;background:var(--ob-card);border:1.5px solid var(--ob-line);border-radius:12px;padding:15px 16px;font-family:var(--font-display);font-size:16px;color:var(--ink);-webkit-appearance:none;appearance:none;outline:none;transition:border-color .15s,box-shadow .15s}.ob-input::placeholder{color:var(--mute);opacity:.6}.ob-input:focus{border-color:var(--ob-brand);box-shadow:0 0 0 4px #b8472a1f}.ob-field-label{font:600 13px var(--font-display);color:var(--ink);display:block;margin-bottom:7px}.ob-field-label .req{color:var(--violet);font-style:normal;margin-left:2px}.ob-chip,.tag-chip{display:inline-flex;align-items:center;gap:5px;background:var(--ob-card-soft);border:none;border-radius:999px;padding:8px 14px;font-family:var(--font-display);font-weight:500;font-size:13.5px;color:var(--ob-sub);cursor:pointer;min-height:38px;white-space:nowrap;transition:transform .12s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease,color .14s ease}.ob-chip:hover,.tag-chip:hover{background:#f1e0d2}.ob-chip.selected,.tag-chip.is-selected{background:var(--ob-ink);color:#fff;font-weight:700;box-shadow:none}.tag-catalog{display:flex;flex-direction:column;gap:14px;margin-top:8px}.tag-cat-head{font:700 12px var(--font-display);color:var(--ob-brand);letter-spacing:.03em;margin:0 0 6px}.tag-chip-grid,.ob-chip-grid{display:flex;flex-wrap:wrap;gap:8px}.ob-footer{flex:0 0 auto;position:sticky;bottom:0;padding:14px 24px calc(env(safe-area-inset-bottom) + 24px);background:var(--ob-bg);display:flex;flex-direction:column;gap:10px}.ob-footer:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:18px;background:linear-gradient(180deg,rgba(246,232,222,0),var(--ob-bg));pointer-events:none}.ob-cta{width:100%;box-sizing:border-box;min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ob-brand);color:var(--paper);border:none;border-radius:16px;padding:15px 24px;font-family:var(--font-display);font-weight:800;font-size:16px;cursor:pointer;text-decoration:none;box-shadow:0 6px 18px #3a2a222e;transition:filter .15s ease,transform .12s ease,opacity .15s ease}.ob-cta svg{width:18px;height:18px;flex:0 0 auto}.ob-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}.ob-cta:active{transform:scale(.985)}.ob-cta:disabled{opacity:.36;cursor:default;transform:none;box-shadow:none}.ob-cta.loading{pointer-events:none;opacity:.7}.ob-cta.ob-cta--grad{background:linear-gradient(135deg,var(--ob-brand),var(--ob-brand-deep));box-shadow:0 8px 22px #b8472a59}.ob-skip{background:none;border:none;color:var(--mute);font-family:var(--font-display);font-weight:500;font-size:13.5px;cursor:pointer;padding:6px;align-self:center}.ob-skip:hover{color:var(--violet)}.ob-error{color:#c2371e;font-family:var(--font-display);font-size:13px;min-height:1em;text-align:center}
