:root{--brand: #183C34;--secondary: #C85A17;--ground: #FAF7F2;--ink: #111A16;--positive: #2D8A56;--attention: #D97706;--background-base: var(--ground);--glow-top-right: #CAE5DD;--glow-bottom-left: #F9CBA9;--glow-radius-top-right: min(37vw, 560px);--glow-radius-bottom-left: min(32vw, 480px);--glow-layer-top-right: radial-gradient(circle var(--glow-radius-top-right) at 88% 0%, rgb(from var(--glow-top-right) r g b / .85), rgb(from var(--glow-top-right) r g b / 0));--glow-layer-bottom-left: radial-gradient(circle var(--glow-radius-bottom-left) at 8% 100%, rgb(from var(--glow-bottom-left) r g b / .55), rgb(from var(--glow-bottom-left) r g b / 0));--accent: var(--brand);--on-accent: #FFFFFF;--success-green: var(--positive);--warning-amber: var(--attention);--success-green-ink: #0A4C2F;--warning-amber-ink: #8E4600;--success-green-tint: color-mix(in srgb, var(--success-green) 16%, transparent);--warning-amber-tint: color-mix(in srgb, var(--warning-amber) 16%, transparent);--accident-red: #C93B3B;--amber-hover: #D45D1C;--border-light: #E8E2D8;--border-dark: #234E44;--toast-link: #86CADF;--tint-meal: var(--secondary);--tint-potty: var(--positive);--tint-pee: var(--positive);--tint-poo: #8D6E53;--tint-nap: var(--brand);--tint-walk: #436B5C;--tint-train: #B84E38;--tint-meds: #4091AF;--tint-alpha-swatch: 18%;--food-dry: var(--secondary);--food-wet: #53A6B9;--food-topper: #D4A73E;--food-uncategorised: #C0BEB8;--train-bar: #4476A0;--growth-line: #2D8DA7;--avatar-base: #EFEADE;--avatar-stripe: #E6DFCE;--glass-light-fill: rgb(255 255 255 / .72);--glass-light-border: rgb(255 255 255 / .85);--glass-light-hover: rgb(255 255 255 / .92);--glass-white-9: rgb(255 255 255 / .9);--glass-heavy-fill: #FCFBF7;--glass-heavy-border: rgb(255 255 255 / .85);--glass-dark-fill: var(--ink);--glass-dark-border: rgb(255 255 255 / .14);--hairline: .5px;--ink-06: rgb(from var(--ink) r g b / .06);--ink-07: rgb(from var(--ink) r g b / .07);--ink-08: rgb(from var(--ink) r g b / .08);--ink-12: rgb(from var(--ink) r g b / .12);--ink-16: rgb(from var(--ink) r g b / .16);--ink-28: rgb(from var(--ink) r g b / .28);--ink-40: rgb(from var(--ink) r g b / .4);--ink-45: rgb(from var(--ink) r g b / .45);--ink-50: rgb(from var(--ink) r g b / .5);--ink-55: rgb(from var(--ink) r g b / .55);--ink-61: rgb(from var(--ink) r g b / .61);--ink-75: rgb(from var(--ink) r g b / .75);--divider: var(--ink-07);--scrim: var(--ink-28);--hairline-on-light: var(--ink-08);--glow-banner: 0 8px 22px color-mix(in srgb, var(--accent) 28%, transparent);--glow-cta: 0 8px 22px color-mix(in srgb, var(--accent) 38%, transparent);--glow-footer: 0 8px 22px color-mix(in srgb, var(--accent) 34%, transparent);--lift: 0 8px 24px rgb(from var(--ink) r g b / .1), 0 2px 6px rgb(from var(--ink) r g b / .06);--r-status: 11px;--r-pill: 16px;--r-toggle: 17px;--r-sheet-row: 18px;--r-cta: 20px;--r-stepper: 20px;--r-list-card: 22px;--r-card: 24px;--r-dog-card: 26px;--r-streak: 28px;--r-sheet: 34px;--r-round: 999px;--dur-press: .12s;--dur-scrim: .2s;--dur-toast: .22s;--dur-sheet: .3s;--ease-sheet: cubic-bezier(.22, .9, .3, 1);--ease-out: cubic-bezier(.33, 1, .68, 1);--scale-tile: .93;--scale-pill: .95;--scale-cta: .98;--font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: var(--font-sans);--display-wght: 800;--wordmark-wght: 800;--wordmark-track: -.035em;--weight-regular: 400;--weight-emphasized: 600;--numeric-tabular: "tnum" 1;--text-hero: clamp(38px, 6.4vw, 68px);--text-display: clamp(32px, 5vw, 52px);--text-title: clamp(26px, 3.8vw, 38px);--text-heading: 28px;--text-subheading: 22px;--text-lead: 20px;--text-body-lg: 18px;--text-body: 16.5px;--text-small: 14.5px;--text-caption: 13px;--text-eyebrow: 12px;--track-hero: -.045em;--track-display: -.042em;--track-title: -.038em;--track-heading: -.03em;--track-subheading: -.025em;--track-lead: -.024em;--track-body: -.01em;--track-small: -.006em;--track-caption: 0;--track-eyebrow: .06em;--leading-hero: 1.04;--leading-display: 1.06;--leading-title: 1.1;--leading-heading: 1.18;--leading-lead: 1.48;--leading-body: 1.6;--leading-small: 1.5;--measure: 62ch;--text-primary: var(--ink);--text-secondary: var(--ink-75);--text-muted: var(--ink-61);--link: var(--accent);--link-hover: #0C231D;--focus-ring: 0 0 0 2px var(--ground), 0 0 0 4px var(--accent);--focus-ring-on-accent: 0 0 0 2px var(--accent), 0 0 0 4px var(--on-accent);--on-ink-primary: var(--on-accent);--on-ink-secondary: rgb(255 255 255 / .75);--on-ink-muted: rgb(255 255 255 / .6);--on-ink-link: var(--toast-link);--on-ink-divider: rgb(255 255 255 / .14);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--gutter: var(--space-5);--content-max: 1200px;--nav-h: 66px}*{box-sizing:border-box}html,body{margin:0;padding:0;scroll-behavior:smooth}body{background-color:var(--background-base);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{position:relative}body:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:var(--glow-layer-top-right),var(--glow-layer-bottom-left);background-repeat:no-repeat}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{text-wrap:balance;font-family:var(--font-display);font-weight:var(--display-wght);color:var(--text-primary)}a{color:var(--link);text-decoration:none;transition:color var(--dur-press) ease}a:hover{color:var(--link-hover)}a:focus-visible,button:focus-visible,input:focus-visible{outline:none;box-shadow:var(--focus-ring)}input::placeholder{color:var(--ink-45)}.emph{font-weight:600}.tabular{font-feature-settings:var(--numeric-tabular)}.wordmark{font-family:var(--font-sans);font-weight:var(--wordmark-wght);letter-spacing:var(--wordmark-track);text-transform:lowercase;line-height:1}.marshl-ground{background-color:var(--background-base)}.card,.marshl-card{background:var(--glass-light-fill);border:var(--hairline) solid var(--glass-light-border);border-radius:var(--r-card);box-shadow:var(--lift);transition:transform var(--dur-press) ease,box-shadow var(--dur-press) ease}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-size:var(--text-small);font-weight:600;letter-spacing:var(--track-small);color:var(--on-accent);background:var(--brand);border:none;border-radius:var(--r-cta);padding:13px 24px;cursor:pointer;box-shadow:var(--glow-cta);transition:transform var(--dur-press) ease,background-color var(--dur-press) ease,box-shadow var(--dur-press) ease;white-space:nowrap;text-decoration:none}.btn-primary:hover{background:#112d27}.btn-primary:active{transform:scale(var(--scale-tile))}.btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none}.btn-store{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--text-primary);background:var(--glass-white-9);border:var(--hairline) solid var(--glass-light-border);border-radius:var(--r-round);padding:10px 18px;transition:transform var(--dur-press) ease,background-color var(--dur-press) ease;text-decoration:none}.btn-store:hover{background:var(--glass-light-hover);transform:translateY(-1px)}.icon-chip{width:44px;height:44px;border-radius:var(--r-pill);display:flex;align-items:center;justify-content:center;flex-shrink:0}.badge-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--r-pill);font-size:var(--text-caption);font-weight:600;font-feature-settings:var(--numeric-tabular)}.badge-pine{background:var(--brand);color:var(--on-accent)}.badge-orange{background:var(--secondary);color:#fff}.badge-green{background:var(--success-green-tint);color:var(--success-green-ink)}.container{max-width:var(--content-max);margin:0 auto;padding:0 var(--gutter)}.pine{background:var(--brand);color:var(--on-ink-primary)}.pine h1,.pine h2,.pine h3,.pine h4{color:var(--on-ink-primary)}.pine a{color:var(--on-ink-link)}.pine a:focus-visible,.pine button:focus-visible,.pine input:focus-visible{box-shadow:var(--focus-ring-on-accent)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}html,.tour-row,.log-list{scroll-behavior:auto!important}}
