/* Shared 56px app bar (Remmy SHARED.md) — replaces per-app notebook header. Load after tokens.css. */
.binding,.washi,.brand-sticker,.spread-header .eyebrow,.spread-header .place,.store-back{display:none!important}
.appbar-date{display:none!important}
header.appbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:var(--space-3,12px);min-height:56px;margin:0 calc(-1 * var(--appbar-bleed,0px)) var(--space-5,24px);padding:env(safe-area-inset-top,0px) var(--gutter,16px) 0;border:0!important;background:var(--appbar-bg,transparent);color:var(--appbar-ink,inherit);box-shadow:0 1px 0 var(--appbar-line,rgba(128,128,128,.22));grid-template-columns:none!important}
header.appbar .back{flex:1 1 0;min-width:0;color:var(--appbar-mute,inherit);opacity:var(--appbar-mute-o,.62);text-decoration:none;font-size:var(--step--1,.8125rem);font-weight:400;border:0;white-space:nowrap;min-height:44px;display:flex;align-items:center}
header.appbar .title{flex:none;max-width:50vw;min-width:0;margin:0!important;font-size:var(--step-0,1rem)!important;font-weight:800!important;line-height:1.2!important;letter-spacing:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit;font-family:inherit}
header.appbar .appbar-tools{flex:1 1 0;min-width:max-content;display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2,8px)}
header.appbar .user-badge,header.appbar .appbar-badge{flex:none;width:36px;height:36px;min-width:36px;border-radius:50%;display:inline-grid;place-items:center;overflow:hidden;background:#1c1f24;color:#e7e9ea;border:1px solid #2f3336;font:800 12px/1 Nunito,system-ui,sans-serif;text-decoration:none;padding:0;cursor:pointer}
header.appbar .user-badge img{width:100%;height:100%;object-fit:cover;border-radius:50%}
/* paper apps (Dad Mode, Homestead): bar matches the paper */
body.paper-bar header.appbar{--appbar-line:rgba(44,38,32,.14)}
body[data-theme="light"] header.appbar{--appbar-ink:#0f1419}
body[data-theme="dark"] header.appbar{--appbar-ink:#e7e9ea}

/* v2 (Remmy): flush + sticky bar, surface bg, hairline only after scroll; no floating decorative stickers */
.deco,.plant-sticker{display:none!important}
.notebook{overflow:visible!important;overflow-x:clip!important}
header.appbar{background:inherit!important;box-shadow:none;transition:box-shadow .2s}
header.appbar.is-scrolled{box-shadow:0 1px 0 var(--appbar-line,rgba(128,128,128,.22))}
header.appbar .appbar-menu-items{display:none}
/* intrinsic: no width breakpoints — flat full-bleed surface at every size */
.desk{padding:0 0 calc(72px + env(safe-area-inset-bottom,0px))!important}
.notebook{border-radius:0!important;box-shadow:none!important;border:0!important;padding-block:0 var(--space-6,32px)!important;min-height:100dvh}

/* items moved into the badge menu (e.g. Trips theme + preferences) */
.appbar-menu-extra{display:flex;flex-direction:column;gap:var(--space-2,8px);padding:var(--space-3,12px) 0;margin-bottom:var(--space-3,12px);border-bottom:1px solid var(--appbar-line,rgba(128,128,128,.22))}
.appbar-menu-extra button{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:var(--space-3,12px);min-height:44px;padding:0 var(--space-3,12px);border-radius:12px;cursor:pointer;font-weight:700}
.appbar-menu-extra button:hover,.appbar-menu-extra button:focus-visible{background:rgba(128,128,128,.12)}
.appbar-menu-extra button::after{content:attr(data-menu-label);font-weight:700}

/* ── Theme toggle icon (sun/moon, quick rotate+fade) ── */
.theme-icon,header.appbar #theme-toggle{all:unset;box-sizing:border-box;position:relative;flex:none;width:36px;height:36px;border-radius:50%;display:inline-grid;place-items:center;cursor:pointer;color:inherit;font-size:16px;line-height:1;text-align:center}
.theme-icon:hover,header.appbar #theme-toggle:hover{background:rgba(128,128,128,.14)}
.theme-icon:focus-visible,header.appbar #theme-toggle:focus-visible{outline:2px solid var(--accent,#1d9bf0);outline-offset:2px}
.theme-icon svg{width:22px;height:22px;overflow:visible}
.theme-icon .ti-core{transform-origin:12px 12px;transform-box:view-box;transition:transform 400ms cubic-bezier(.5,1.25,.75,1.25)}
.theme-icon .ti-cut{transform-box:view-box;transition:transform 400ms cubic-bezier(.4,0,.2,1)}
.theme-icon .ti-rays{transform-origin:12px 12px;transform-box:view-box;transition:transform 400ms cubic-bezier(.4,0,.2,1),opacity 300ms ease}
.theme-icon[data-scheme=dark] .ti-core{transform:scale(1.75)}
.theme-icon[data-scheme=dark] .ti-cut{transform:translate(-8px,3px)}
.theme-icon[data-scheme=dark] .ti-rays{transform:rotate(-45deg) scale(.4);opacity:0}
header.appbar #theme-toggle{transition:transform .35s cubic-bezier(.2,.8,.2,1)}
header.appbar #theme-toggle[aria-pressed=true]{transform:rotate(-360deg)}
@media (prefers-reduced-motion:reduce){.theme-icon *,header.appbar #theme-toggle{transition:none!important}}

/* ── Scheme tokens via light-dark(); only on apps that load theme.js (html.sbs-themed) ── */
html.sbs-themed{color-scheme:light dark;
  --t-bg:light-dark(#ffffff,#0b0c0e);--t-surface:light-dark(#f5f6f7,#16181c);--t-raise:light-dark(#ffffff,#1c1f24);
  --t-ink:light-dark(#0f1419,#e7e9ea);--t-ink-2:light-dark(#3d4650,#b8bec6);--t-ink-3:light-dark(#66707a,#8b929a);--t-line:light-dark(#e1e4e8,#2f3336)}
html.sbs-themed[data-theme=light]{color-scheme:light}
html.sbs-themed[data-theme=dark]{color-scheme:dark}
html.sbs-themed body,html.sbs-themed .desk,html.sbs-themed .notebook{background:var(--t-bg)!important;background-image:none!important;color:var(--t-ink)!important}
html.sbs-themed .notebook :is(h1,h2,h3,h4,p,li,label,summary,strong,b,span:not([class*="tag"]):not([class*="pill"])){color:inherit}
html.sbs-themed .notebook :is([class*="card"],[class*="panel"]:not([hidden]),.life-auth,details,.feed-item,.post,.note,.entry,blockquote){background:var(--t-surface)!important;background-image:none!important;color:var(--t-ink)!important;border-color:var(--t-line)!important;box-shadow:none!important}
html.sbs-themed .notebook :is(input,textarea,select){background:var(--t-raise)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
html.sbs-themed .notebook :is(input,textarea)::placeholder{color:var(--t-ink-3)}
html.sbs-themed .notebook :is(.page-hint,.zone-line,.meta,.muted,small,em,.hint,[class*="sub"]){color:var(--t-ink-3)!important}
html.sbs-themed .notebook :is(.chip,[class*="-chip"]:not(.build-chip),.tab,[class*="btn"]:not(.btn-ink):not([class*="mint"]):not([class*="primary"]),button.status-btn){background:var(--t-raise)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important;box-shadow:none!important}
html.sbs-themed .notebook :is(.btn-ink,[class*="primary"]){background:var(--t-ink)!important;color:var(--t-bg)!important;border-color:var(--t-ink)!important}
html.sbs-themed header.appbar .user-badge,html.sbs-themed header.appbar .appbar-badge{background:var(--t-raise);color:var(--t-ink);border-color:var(--t-line)}
html.sbs-themed header.appbar{--appbar-line:var(--t-line)}
body[data-theme="light"]{color-scheme:light}
body[data-theme="dark"]{color-scheme:dark}

/* ── Content-first wrapper + grid on shared-bar apps (replaces the 640/720px single column) ── */
.desk{max-width:none!important;padding-inline:0!important}
.notebook{width:min(100%,var(--wrapper-max,1200px));margin-inline:auto!important;padding-inline:var(--wrapper-pad,clamp(16px,4vw,48px))!important}
header.appbar{margin-inline:calc(-1 * var(--wrapper-pad,clamp(16px,4vw,48px)))!important;padding-inline:var(--wrapper-pad,clamp(16px,4vw,48px))!important}
.auto-flow>:is(header,footer,.colophon,nav,.zone-line,.intro-hint,.page-hint,.frost-wrap,.spread,.passed-wrap,.life-auth,#lifestyle-lock,#desk-tabs,#planner-view,.about-pricing){flex-basis:100%}
.auto-flow>*{margin-top:0!important;margin-bottom:0!important}

/* theme leftovers found by scan */
html.sbs-themed :is(.desk-tabs,.desk-tab,form.compose,p.empty,li.empty,article.log-entry,.idea-board button:not(.is-on)){background:var(--t-raise)!important;color:var(--t-ink)!important;border-color:var(--t-line)!important}
html.sbs-themed .desk-tab.is-on{background:var(--t-ink)!important;color:var(--t-bg)!important}
/* bar spans the full viewport at any width; content inside aligns with the wrapper */
header.appbar{margin-inline:calc(50% - 50vw)!important;padding-inline:max(var(--wrapper-pad,16px),calc(50vw - var(--wrapper-max,1200px)/2 + var(--wrapper-pad,16px)))!important}

/* Trips: search full width, Preferences + Recently saved side by side when there is room */
#planner-view{width:100%}
#planner-view .lookup-hero{display:flex;flex-wrap:wrap;gap:var(--space-5,24px);align-items:flex-start;max-width:none!important;width:100%}
#planner-view .lookup-hero>#trip-form{display:contents}
#planner-view .lookup-hero .airbnb-search,#planner-view .lookup-hero .date-range-panel{flex:1 1 100%;max-width:none!important;width:auto!important}
#planner-view .lookup-hero .prefs-drawer,#planner-view .lookup-hero .recent-saves{flex:1 1 var(--grid-min,22rem);min-width:0;margin:0!important}
/* dev footer → small disclosure */
.about-pricing{font-size:var(--step--1,.8125rem);opacity:.75}
.about-pricing>summary{cursor:pointer;min-height:44px;display:inline-flex;align-items:center}
.about-pricing p{margin:var(--space-2,8px) 0 0;max-width:65ch}
.appbar-version{margin:var(--space-2,8px) 0 0;padding:0 var(--space-3,12px);font-size:var(--step--1,.8125rem);opacity:.6}
.auto-grid>:is(.group-label,h2,h3){grid-column:1/-1;margin:0!important}
