.ob-shell{--ink: var(--kare-text-primary);--ink-2: var(--kare-text-secondary);--ink-3: var(--kare-text-tertiary);--canvas: var(--kare-background);--surface: var(--kare-surface-secondary);--surface-faint: var(--kare-surface-faint);--surface-medium: var(--kare-surface-medium);--hairline: var(--kare-stroke);--cta: var(--kare-brand);--cta-pressed: var(--kare-brand-pressed);--on-cta: var(--kare-on-brand);--accent: var(--kare-accent);--danger: var(--kare-danger);--chrome: var(--kare-chrome);--ok: var(--kare-ok);--sp-xs: var(--kare-space-xs);--sp-s: var(--kare-space-s);--sp-m: var(--kare-space-m);--sp-l: var(--kare-space-l);--sp-xl: var(--kare-space-xl);--r-m: var(--kare-radius-m);--r-search: var(--kare-radius-search);--r-card: var(--kare-radius-card);--r-pill: var(--kare-radius-pill);--d-press: var(--kare-duration-press);--d-fast: var(--kare-duration-fast);--d-base: var(--kare-duration-base);--d-slow: var(--kare-duration-slow);--ease: var(--kare-ease);--ease-emphasized: var(--kare-ease-emphasized);--bar-h: 56px;--gutter: var(--sp-m);position:relative;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--canvas);color:var(--ink);font-family:var(--kare-font-sans);font-size:17px;line-height:22px;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}.ob-shell button,.ob-shell input{font-family:inherit}.ob-shell :is(button,a):focus-visible{outline:2px solid var(--chrome);outline-offset:2px}.ob-bar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;height:var(--bar-h);padding-inline:var(--sp-s);background:var(--canvas)}.ob-bar__back,.ob-bar .kare-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:var(--r-pill);background:none;color:var(--ink);cursor:pointer;transition:opacity var(--d-press) var(--ease)}.ob-bar__back:active,.ob-bar .kare-theme-toggle:active{opacity:.4}.ob-bar__back svg{width:24px;height:24px}.ob-bar__spacer{width:40px;height:40px}.ob-bar__steps{display:flex;justify-content:center;align-items:center;gap:6px}.ob-bar__seg{width:6px;height:6px;border-radius:3px;background:color-mix(in srgb,var(--accent) 18%,transparent);transition:width var(--d-fast) var(--ease-emphasized),background var(--d-fast) var(--ease)}.ob-bar__seg.is-current{width:18px;background:var(--accent)}.ob-bar__brand{justify-self:center;font-size:15px;font-weight:600;letter-spacing:-.2px}.ob-main{flex:1;width:100%;max-width:520px;margin-inline:auto;padding-inline:var(--gutter)}.ob-step{display:flex;flex-direction:column;min-height:calc(100vh - var(--bar-h));min-height:calc(100dvh - var(--bar-h))}.ob-step--forward{animation:ob-enter-forward var(--d-base) var(--ease) both}.ob-step--back{animation:ob-enter-back var(--d-base) var(--ease) both}@keyframes ob-enter-forward{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes ob-enter-back{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes ob-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ob-header{padding:var(--sp-m) 0 var(--sp-l)}.ob-eyebrow{margin:0 0 var(--sp-s);font-size:11px;line-height:13px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent)}.ob-title{margin:0;font-size:28px;line-height:34px;font-weight:700;letter-spacing:-.4px;text-wrap:balance;outline:none}.ob-subtitle{margin:var(--sp-s) 0 0;font-size:17px;line-height:22px;color:var(--ink-2)}.ob-form{display:flex;flex:1;flex-direction:column;gap:var(--sp-m)}.ob-form--shake{animation:ob-shake var(--d-slow) var(--ease) both}@keyframes ob-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(3px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.ob-field{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;border:0;min-width:0}.ob-field__surface{display:flex;flex-direction:column;gap:2px;padding:13px 14px;border-radius:var(--r-search);background:var(--surface);cursor:text;transition:box-shadow var(--d-fast) var(--ease)}.ob-field__surface:focus-within{box-shadow:inset 0 0 0 1.5px var(--chrome)}.ob-field--error .ob-field__surface{box-shadow:inset 0 0 0 1.5px var(--danger)}.ob-field__label{font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-field__row{display:flex;align-items:center;gap:var(--sp-s)}.ob-field__input{flex:1;min-width:0;padding:0;border:0;background:none;font-size:17px;line-height:22px;color:var(--ink);caret-color:var(--chrome);outline:none;appearance:none;border-radius:0}.ob-field__input::placeholder{color:var(--ink-3)}.ob-field__input:autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 100px var(--canvas) inset}.ob-field__toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-5px -6px -5px 0;padding:0;border:0;border-radius:var(--r-pill);background:none;color:var(--ink-2);cursor:pointer;transition:opacity var(--d-press) var(--ease)}.ob-field__toggle:active{opacity:.4}.ob-field__hint,.ob-field__error{margin:0;padding-inline:14px;font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-field__error{color:var(--danger)}.ob-strength{display:flex;align-items:center;gap:var(--sp-s);padding-inline:14px}.ob-strength__track{display:flex;flex:1;gap:4px}.ob-strength__bar{flex:1;height:4px;border-radius:2px;background:var(--surface);transition:background var(--d-fast) var(--ease)}.ob-strength__bar--on{background:var(--ok)}.ob-strength__label{font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-group{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;border:0;min-width:0}.ob-group__label{padding:0;font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-chips{display:flex;flex-wrap:wrap;gap:var(--sp-s)}.ob-chip{display:inline-flex;align-items:center;height:36px;padding-inline:var(--sp-m);border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:13px;line-height:16px;font-weight:500;cursor:pointer;transition:background var(--d-fast) var(--ease),color var(--d-fast) var(--ease),transform var(--d-press) var(--ease)}.ob-chip:active{transform:scale(.97)}.ob-chip--on{background:var(--cta);color:var(--on-cta)}.ob-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.ob-day{height:44px;padding:0;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:13px;line-height:16px;font-weight:500;cursor:pointer;transition:background var(--d-fast) var(--ease),color var(--d-fast) var(--ease),transform var(--d-press) var(--ease)}.ob-day:active{transform:scale(.95)}.ob-day--on{background:var(--cta);color:var(--on-cta)}.ob-form>.ob-field__error{padding-inline:0}.ob-actions{position:sticky;bottom:0;z-index:2;display:flex;flex-direction:column;gap:var(--sp-xs);margin-top:auto;padding:var(--sp-m) 0 max(var(--sp-m),env(safe-area-inset-bottom));background:linear-gradient(to top,var(--canvas) 72%,transparent)}.ob-submit,.ob-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-s);width:100%;height:56px;padding-inline:var(--sp-m);border:0;border-radius:var(--r-pill);background:var(--cta);color:var(--on-cta);font-size:17px;line-height:22px;font-weight:600;text-decoration:none;cursor:pointer;transition:background var(--d-press) var(--ease),transform var(--d-press) var(--ease),opacity var(--d-fast) var(--ease)}.ob-submit:active,.ob-btn:active{background:var(--cta-pressed);transform:scale(.97)}.ob-submit:disabled{opacity:.35;cursor:default;transform:none}.ob-btn--secondary{background:var(--canvas);color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline)}.ob-btn--secondary:active{background:var(--surface)}.ob-textlink{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0;border:0;background:none;color:var(--ink-2);font-size:13px;line-height:16px;font-weight:500;cursor:pointer;transition:opacity var(--d-press) var(--ease)}.ob-textlink:active{opacity:.4}.ob-legal{margin:0;padding-top:var(--sp-xs);font-size:13px;line-height:16px;color:var(--ink-3);text-align:center;text-wrap:balance}.ob-spinner{display:inline-block;width:20px;height:20px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ob-spin .7s linear infinite}@keyframes ob-spin{to{transform:rotate(360deg)}}.ob-recap{display:flex;flex-direction:column;border-top:1px solid var(--hairline)}.ob-recap__row{display:flex;align-items:center;gap:var(--sp-m);width:100%;min-height:64px;padding:12px 0;border:0;border-bottom:1px solid var(--hairline);background:none;color:inherit;text-align:left;cursor:pointer;transition:opacity var(--d-press) var(--ease)}.ob-recap__row:active{opacity:.5}.ob-recap__text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.ob-recap__label{font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-recap__value{font-size:17px;line-height:22px;font-weight:500;color:var(--ink);overflow-wrap:anywhere}.ob-recap__edit{display:inline-flex;align-items:center;gap:2px;flex:none;font-size:13px;line-height:16px;font-weight:500;color:var(--ink-3)}.ob-recap__edit svg{width:16px;height:16px}.ob-alert{margin:0;padding:12px 14px;border-radius:var(--r-m);background:color-mix(in srgb,var(--danger) 8%,transparent);color:var(--danger);font-size:15px;line-height:19px;font-weight:500}.ob-provision{display:flex;flex-direction:column;gap:var(--sp-l);padding-top:var(--sp-m)}.ob-provision__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;border-top:1px solid var(--hairline)}.ob-provision__task{display:flex;align-items:center;gap:var(--sp-m);min-height:56px;padding:12px 0;border-bottom:1px solid var(--hairline);font-size:17px;line-height:22px;font-weight:500;color:var(--ink-3);transition:color var(--d-base) var(--ease);animation:ob-rise var(--d-slow) var(--ease) both;animation-delay:calc(var(--ob-task-index, 0) * 60ms)}.ob-provision__task--active,.ob-provision__task--done{color:var(--ink)}.ob-provision__icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;color:var(--ok)}.ob-provision__task--active .ob-provision__icon{color:var(--ink-2)}.ob-provision__task--pending .ob-provision__icon:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--surface-medium)}.ob-provision__checkpath{stroke-dasharray:22;stroke-dashoffset:22;animation:ob-draw .28s var(--ease) forwards}@keyframes ob-draw{to{stroke-dashoffset:0}}.ob-handoff{display:flex;flex-direction:column;gap:var(--sp-l);padding-bottom:max(var(--sp-l),env(safe-area-inset-bottom))}.ob-handoff>*{animation:ob-rise var(--d-slow) var(--ease) both}.ob-handoff>*:nth-child(2){animation-delay:60ms}.ob-handoff>*:nth-child(3){animation-delay:.12s}.ob-handoff>*:nth-child(4){animation-delay:.18s}.ob-card{display:flex;flex-direction:column;gap:var(--sp-m);padding:var(--sp-l) var(--sp-m);border-radius:var(--r-card);background:var(--canvas);box-shadow:var(--kare-e1),inset 0 0 0 1px var(--hairline)}.ob-card__label{margin:0;font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-card__url{margin:0;font-size:17px;line-height:22px;font-weight:600;color:var(--ink);overflow-wrap:anywhere;text-decoration:none}.ob-card__actions{display:flex;flex-direction:column;gap:var(--sp-s)}.ob-section{display:flex;flex-direction:column;gap:10px}.ob-section__label{margin:0;font-size:13px;line-height:16px;font-weight:500;color:var(--ink-2)}.ob-section__actions{display:flex;flex-direction:column;gap:var(--sp-s)}.ob-qr{display:none;align-items:center;gap:var(--sp-m);padding:var(--sp-m);border-radius:var(--r-card);background:var(--surface-faint)}.ob-qr__tile{flex:none;padding:10px;border-radius:var(--r-m);background:#fff}.ob-qr__code svg,.ob-qr__skeleton{display:block;width:112px;height:112px}.ob-qr__skeleton{border-radius:4px;background:#0000000d;animation:ob-pulse 1.2s var(--ease) infinite}@keyframes ob-pulse{50%{opacity:.5}}.ob-qr__text{margin:0;font-size:15px;line-height:19px;color:var(--ink-2)}.ob-qr__text strong{display:block;color:var(--ink);font-weight:600}.ob-howto{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;border-top:1px solid var(--hairline)}.ob-howto li{display:flex;align-items:center;gap:var(--sp-m);min-height:56px;padding:12px 0;border-bottom:1px solid var(--hairline);font-size:15px;line-height:19px;font-weight:500}.ob-howto__index{display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--surface);font-size:12px;font-weight:600}.ob-reassure{margin:0;font-size:13px;line-height:16px;color:var(--ink-3);text-align:center;text-wrap:balance}@media(min-width:720px){.ob-shell{--gutter: var(--sp-l)}.ob-bar{width:100%;max-width:calc(520px + 2 * var(--sp-m));height:64px;margin-inline:auto;padding-inline:var(--sp-m)}.ob-main{padding-top:var(--sp-xl);padding-bottom:64px}.ob-step{min-height:0}.ob-header{padding-top:0}.ob-title{font-size:34px;line-height:40px;letter-spacing:-.6px}.ob-actions{position:static;margin-top:var(--sp-s);padding-bottom:0;background:none}.ob-card__actions{flex-direction:row}.ob-card__actions>*{flex:1}.ob-qr{display:flex}}@media(prefers-reduced-motion:reduce){.ob-step--forward,.ob-step--back,.ob-handoff>*,.ob-provision__task,.ob-form--shake,.ob-qr__skeleton{animation:none}.ob-provision__checkpath{stroke-dashoffset:0;animation:none}.ob-bar__seg,.ob-chip,.ob-day,.ob-submit,.ob-btn{transition:none}}
