/* Geometry from version/1.0, matching the owner's first screenshot at 430 × 764.
   Raster art remains the gold/black visual layer. */
:root { --peach: #eeab93; }
.app-shell { height: 100dvh; min-height: 0; }
.screen { border-radius: 0; }

.topbar { top: var(--topbar-top, 94px); left: 21px; right: 21px; height: 40px; display: flex; justify-content: space-between; align-items: center; }
.image-control { width: 36px; height: 36px; }
.brand-logo { width: 104px; height: 40px; max-height: none; transform: translateY(1px); }
.welcome { top: var(--welcome-top, 151px); left: 25px; right: 25px; gap: 8px; }
.welcome__copy { flex: 2 1 0; min-width: 0; }
.welcome__copy h1 { font-size: 21px; line-height: 1.14; letter-spacing: -.012em; }
.welcome__copy p { font-family: "ORA Serif", Georgia, serif; font-size: 13.5px; font-weight: 400; line-height: 1.32; }
.weather { width: auto; flex: 1 1 0; min-width: 0; padding-top: 6px; }
.weather__top { gap: 8px; }
.weather__top svg { width: 31px; height: 31px; }
.weather__top strong { font-size: 21px; }
.weather > span { margin-top: 2px; font-family: "ORA Serif", Georgia, serif; font-size: 12.5px; }
.weather > small { margin-top: 4px; font-size: 9px; }

.context-card { top: var(--context-card-top, 219px); left: 24px; width: 382px; height: 83px; }
.context-card__content { top: 10px; left: 81px; max-width: 226px; }
.context-card__overline { font-size: 8.5px; }
.context-card__content strong { font-size: 17.5px; }
.context-card__content small { font-size: 10.5px; line-height: 1.3; }
.quick-actions { top: var(--quick-actions-top, 314px); left: 36px; width: 358px; height: 51px; gap: 16px; }
.quick-action { width: 171px; height: 51px; flex: 0 0 171px; }
.quick-action--stories .quick-action__art { filter: none; }
.quick-action.is-selected .quick-action__art { filter: brightness(1.07) drop-shadow(0 0 7px rgba(255,197,79,.34)); }
.goal-selector { top: var(--goal-selector-top, 385px); left: 129px; width: 172px; }
.goal-selector__button { display: block; width: 172px; height: 39px; overflow: visible; border-radius: 0; background: transparent; box-shadow: none; }
.goal-selector__button > img { opacity: 1; }
.goal-selector__button > span { padding: 5px 25px 4px 16px; text-align: left; }
.goal-selector__button small { font-size: 8.5px; }
.goal-selector__button strong { font-size: 12.5px; }
.goal-selector__button > .goal-selector__chevron { position: absolute; z-index: 2; top: 12px; right: 12px; width: 14px; height: 14px; color: #fff0be; transition: transform 180ms ease; }
.goal-menu { top: 44px; }

.practice-zone { top: var(--practice-zone-top, 454px); height: 244px; }
.side-control, .archetype-control { width: 62px; height: 62px; }
.side-control button { width: 62px; height: 62px; }
.body-control--lying { top: 18px; left: 44px; }
.body-control--sitting { top: 90px; left: 24px; }
.body-control--dynamic { top: 162px; left: 39px; }
.archetype-control--friend { top: 18px; right: 39px; }
.archetype-control--coach { top: 90px; right: 20px; }
.archetype-control--master { top: 162px; right: 35px; }
.side-control__portrait { width: 62px; height: 62px; margin: 0; }
.archetype-control button::before { inset: -2px; }
.archetype-control button::after { content: ""; position: absolute; z-index: 2; inset: 36px 4px 4px; border-radius: 0 0 30px 30px; background: linear-gradient(transparent, rgba(7,5,2,.9)); pointer-events: none; }
.archetype-control button > span { position: absolute; z-index: 3; left: -4px; right: -4px; bottom: 7px; margin: 0; font-size: 7.3px; line-height: 1.1; letter-spacing: .025em; }
.dial { top: 25px; }
.dial__portrait { top: 24px; left: 24px; width: 144px; height: 144px; }
.dial__time { right: 20px; left: 20px; bottom: 12px; }
.dial__time strong { margin-bottom: 2px; font-size: 13px; }
.dial__time small { margin-top: 0; font-size: 7px; line-height: 1.22; }
.active-archetype { top: 223px; left: 151px; display: flex; align-items: center; flex-direction: column; width: 128px; pointer-events: none; }
.active-archetype strong { letter-spacing: .015em; }
.active-archetype span { display: flex; gap: 5px; margin-top: 2px; }
.active-archetype span i { width: 4px; height: 4px; }

.content-shelf { top: var(--content-shelf-top, 728px); left: 24px; width: 382px; height: 85px; }
.content-shelf__copy { top: 11px; left: 43px; right: auto; width: 270px; display: flex; flex-direction: column; gap: 0; }
.content-shelf__copy .quote-mark { top: -5px; left: -28px; font-size: 29px; line-height: 1; }
.content-shelf__copy strong { margin-bottom: 5px; font-size: 16px; line-height: normal; }
.content-shelf__copy small { font-size: 10.5px; line-height: 1.38; }
.content-shelf__arrow { top: auto; right: 13px; bottom: 9px; width: 23px; height: 23px; }
.content-shelf__arrow svg { width: 15px; height: 15px; }
.bottom-nav { position: absolute; bottom: var(--bottom-nav-bottom, 0px); left: 0; width: 430px; height: 80px; padding-bottom: max(0px, env(safe-area-inset-bottom, 0px)); }
.bottom-nav__area { inset: auto 13px 5px; width: 404px; height: 67px; }
.nav-item { top: auto; bottom: 13px; width: 70px; height: 49px; display: grid; place-items: center; }
.nav-item img { width: 49px; height: 49px; }
.nav-item--home { left: 27px; }
.nav-item--sos { left: 102px; }
.nav-item--calendar { right: 102px; }
.nav-item--resource { right: 27px; }
.command-orb { top: -2px; left: 176px; width: 78px; height: 78px; }
.command-orb picture { display: block; width: 100%; height: 100%; }
.command-orb img { object-fit: cover; }

/* 2026-10-16 header wordmark: only the ORA lettering (no symbol), larger, centred between menu and profile. Splash keeps ora_logo_title. */
.topbar > .image-control { flex: 0 0 auto; }
.topbar__brand { flex: 1 1 auto; min-width: 0; margin: 0 8px; }
.topbar__brand .brand-logo.brand-logo--wordmark { flex: 0 1 auto; min-width: 0; width: auto; height: auto; max-width: 150px; max-height: 44px; object-fit: contain; transform: none; }

/* ORA_HOME_COPY_PLUS1_V1: only the two requested home captions, +1px. */

/* ORA_ASSISTANT_BRAND_MOTION_V1: keep the owner logo and reuse its existing breathing motion; no rotation. */
#commandOrbArt { transform-origin: center; animation: preloaderLogoBreathing 3.6s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { #commandOrbArt { animation: none; } }

/* ORA_MENU_BRAND_LAYOUT_V1: retain the current full logo; wider, scrollable drawer. */
.menu-panel { width: 352px; max-width: calc(100% - 24px); padding-top: max(16px, env(safe-area-inset-top, 0px)); }
.menu-panel__header { position: relative; display: grid; grid-template-columns: 1fr; justify-content: stretch; justify-items: center; min-height: 142.6px; margin-bottom: 16px; }
.menu-panel__brand { justify-self: center; width: 202.4px; max-width: calc(100% - 64px); }
.menu-panel__brand img { display: block; width: 100%; height: 142.6px; object-fit: cover; }
.menu-panel__header #menuClose { position: absolute; top: 6px; right: 0; }
.menu-practice-format { flex-shrink: 0; padding: 16px; border-radius: 16px; background: linear-gradient(145deg, rgba(255,230,151,.075), rgba(255,230,151,.025)); }
.menu-practice-format__header { flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.menu-practice-format__title { font-size: 12px; line-height: 1.35; letter-spacing: .055em; }
.menu-practice-format__badge { font-size: 10px; line-height: 1.3; padding: 4px 8px; }
.menu-segmented-switch { height: 44px; border-radius: 22px; }
.menu-segmented-switch__btn { min-width: 0; font-size: 12px; gap: 7px; white-space: nowrap; }
.menu-format-hint { margin-top: 12px; min-height: 32px; font-size: 11px; line-height: 1.45; text-align: left; color: rgba(245,220,159,.82); }
