.meadow-world{position:relative;width:100%;aspect-ratio:800/620;isolation:isolate;perspective:1100px;--mw-rx:0deg;--mw-ry:0deg;contain:layout style;pointer-events:auto}.mw-atmosphere{position:absolute;inset:9% 5% 5%;border-radius:50%;background:radial-gradient(ellipse at 55% 36%,color-mix(in srgb,var(--white) 60%,transparent),transparent 68%);pointer-events:none}.mw-camera{transform-style:preserve-3d;transform:rotateX(var(--mw-rx)) rotateY(var(--mw-ry));transition:transform .6s cubic-bezier(.2,.8,.2,1)}.mw-camera,.mw-layer{position:absolute;inset:0;pointer-events:none}.mw-layer{display:block;width:100%;height:100%;overflow:visible}.mw-sky{transform:translateZ(-25px)}.mw-land{transform:translateZ(0)}.mw-scenery{transform:translateZ(14px)}.mw-foreground{transform:translateZ(42px)}.mw-companion{position:absolute;left:38%;top:38%;width:48%;transform:translateZ(31px);pointer-events:none}.mw-companion .horse-art{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 8px 4px color-mix(in srgb,var(--deep) 8%,transparent))}.mw-love{position:absolute;left:54%;top:10%;font-size:clamp(14px,2vw,26px);color:var(--blue)}.mw-love span{position:absolute;animation:mw-love-rise 1.7s ease-out both}.mw-love span:nth-child(2){left:30px;top:12px;animation-delay:.18s;color:var(--green);font-size:.7em}.mw-love span:nth-child(3){left:-20px;top:15px;animation-delay:.35s;font-size:.6em}.mw-spark{position:absolute;color:var(--blue);opacity:.36;font-family:Georgia,serif;pointer-events:none}.mw-spark-one{top:28%;left:41%;font-size:22px}.mw-spark-two{top:47%;left:88%;font-size:15px}.mw-spark-three{top:13%;left:27%;font-size:16px}.meadow-world[data-motion=on] .mw-cloud-one{animation:mw-cloud-drift 18s ease-in-out infinite}.meadow-world[data-motion=on] .mw-cloud-two{animation:mw-cloud-drift 23s ease-in-out -6s infinite}.meadow-world[data-motion=on] .mw-butterfly{animation:mw-butterfly-float 8s ease-in-out infinite;transform-origin:363px 312px}.meadow-world[data-motion=on] .mw-sprig{animation:mw-leaf-sway 7s ease-in-out infinite;transform-origin:88px 489px}.meadow-world[data-motion=on] .mw-sprig-right{transform-origin:681px 487px;animation-delay:-3s}.meadow-world[data-motion=on] .mw-water-light{animation:mw-water 5s ease-in-out infinite}.horse-showcase .horse-tail{animation:horse-tail-sway 7s ease-in-out infinite}.horse-showcase .horse-eye{animation:horse-blink 7s linear infinite}.horse-showcase .horse-ear{transform-origin:248px 63px;animation:horse-ear-twitch 9s ease-in-out infinite}.horse-petted .horse-head{animation:horse-nuzzle 1.8s ease-in-out}.horse-petted .horse-tail{animation:horse-tail-happy .45s ease-in-out 4}.gallop .horse-body-motion,.galloping .horse-body-motion{animation:horse-bob .38s ease-in-out 7 both}.gallop .horse-back-near,.galloping .horse-back-near{animation:horse-gait .38s ease-in-out 7 both}.gallop .horse-back-far,.galloping .horse-back-far{animation:horse-gait .38s ease-in-out -.19s 7 both}.gallop .horse-front-near,.galloping .horse-front-near{animation:horse-gait .38s ease-in-out -.1s 7 both}.gallop .horse-front-far,.galloping .horse-front-far{animation:horse-gait .38s ease-in-out -.29s 7 both}.gallop .horse-tail,.galloping .horse-tail{animation:horse-tail-happy .38s ease-in-out 7 both}.meadow-world[data-motion=off] *,.meadow-world[data-motion=off] .horse-showcase *{animation-play-state:paused!important}.meadow-world[data-motion=off] .mw-love{display:none}@keyframes mw-cloud-drift{50%{transform:translateX(13px)}}@keyframes mw-butterfly-float{30%{transform:translate(7px,-7px) rotate(-8deg)}70%{transform:translate(-5px,-2px) rotate(5deg)}}@keyframes mw-leaf-sway{50%{transform:rotate(3deg)}}@keyframes mw-water{50%{opacity:.25}}@keyframes mw-love-rise{0%{opacity:0;transform:translateY(12px) scale(.6)}20%{opacity:.9}to{opacity:0;transform:translateY(-70px) scale(1.2)}}@keyframes horse-tail-sway{50%{transform:rotate(-5deg)}}@keyframes horse-tail-happy{50%{transform:rotate(-13deg)}}@keyframes horse-blink{0%,44%,47%,to{transform:scaleY(1)}45%,46%{transform:scaleY(.08)}}@keyframes horse-ear-twitch{0%,70%,80%,to{transform:rotate(0)}74%{transform:rotate(-12deg)}}@keyframes horse-nuzzle{35%{transform:rotate(9deg) translateY(3px)}70%{transform:rotate(-3deg)}}@keyframes horse-gait{0%,to{transform:rotate(-17deg)}50%{transform:rotate(21deg)}}@keyframes horse-bob{50%{transform:translateY(-4px) rotate(-1deg)}}@media(hover:none){.mw-camera{transform:none!important;transition:none}}@media(prefers-reduced-motion:reduce){.horse-art *,.meadow-world *{animation:none!important;transition:none!important}.mw-camera{transform:none!important}.mw-love{display:none}}.story-horse{overflow:visible}.friend-portrait{display:flex;align-items:center;gap:14px;margin:0 0 19px}.friend-portrait svg{width:89px;height:98px;flex:none}.friend-portrait>span{font-family:Georgia,serif;font-size:.8rem;font-style:italic;max-width:12ch;color:var(--muted);line-height:1.45}.horse-profile:has(.friend-portrait) h2{font-size:clamp(2rem,3.3vw,3.4rem);overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.unicorn-wing{transform-origin:180px 149px}.meadow-world[data-motion=on] .unicorn-wing-near{animation:feather-breathe 5s ease-in-out infinite}.meadow-world[data-motion=on] .unicorn-wing-far{animation:feather-breathe 5s ease-in-out -.3s infinite}.meadow-world[data-motion=on] .unicorn-spark{animation:starlight-breathe 3.4s ease-in-out infinite}.meadow-world[data-motion=on] .unicorn-spark-1{animation-delay:-1.1s}.meadow-world[data-motion=on] .unicorn-spark-2{animation-delay:-2.2s}.horse-choice-name{overflow-wrap:anywhere;max-width:100%}@keyframes feather-breathe{0%,to{transform:rotate(-2deg)}50%{transform:rotate(3deg)}}@keyframes starlight-breathe{0%,to{opacity:.35}50%{opacity:1}}@media(max-width:700px){.friend-portrait{grid-column:1/-1;margin-bottom:8px}.friend-portrait svg{width:74px;height:82px}.friend-portrait>span{max-width:none;font-size:.8rem}.horse-profile:has(.friend-portrait) h2{font-size:clamp(2rem,8.5vw,3.3rem)}}@media(prefers-reduced-motion:reduce){.story-horse *{animation:none!important;transition:none!important}.story-stable .pet-response span{animation:none}.story-stable .horse-choice{transition:none}.story-stable .horse-choice:hover{transform:none}}.equine-portrait-frame{width:89px;height:98px;flex:none;border-radius:48% 48% 45% 45%;overflow:hidden;background:#f6edda;border:1px solid #dac69e;box-shadow:inset 0 0 0 4px #fffaf0}.friend-portrait .equine-portrait-frame svg{display:block;width:100%;height:100%}.front-facing-horse .horse-eye,.front-facing-horse .horse-head{transform-box:view-box}@media(max-width:700px){.equine-portrait-frame{width:74px;height:82px}}.journal-page{max-width:840px;margin:30px auto 0}.journal-heading{text-align:center;margin:0 auto 28px;max-width:520px}.journal-heading h1{font-size:clamp(2.1rem,5vw,3.5rem);margin:10px 0 12px;line-height:1.08}.journal-heading p{font-size:1rem;line-height:1.5;color:var(--muted)}.journal-book-mark{display:inline-flex;align-items:center;justify-content:center;width:48px;height:54px;border-radius:5px 13px 13px 5px;background:var(--mint);box-shadow:0 5px 12px var(--shadow);border-left:4px solid var(--pink)}.journal-book-mark .drawn-icon{width:25px;height:25px;color:var(--green);fill:var(--pink)}.journal-writing{background:var(--white);border-radius:16px;padding:28px 34px;box-shadow:0 9px 27px var(--shadow)}.journal-writing h2{font-size:1.75rem;margin:0 0 14px}.journal-privacy{display:flex;align-items:center;gap:10px;background:var(--mint);padding:13px 16px;border-radius:10px;color:var(--green);font-size:.92rem;line-height:1.45;margin:0 0 22px}.journal-privacy .drawn-icon{width:22px;height:22px;flex:none;fill:var(--pink)}.journal-moods{border:0;padding:0;margin:0 0 15px;min-width:0}.journal-field-label,.journal-moods legend{font-size:1rem;font-weight:700;color:var(--ink)}.mood-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.mood-choices button{min-width:0;min-height:105px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:9px 5px;border:1px solid transparent;border-radius:12px;background:var(--paper);color:var(--ink);font-size:.76rem;line-height:1.25}.mood-choices button[aria-pressed=true]{border-color:var(--green);background:var(--mint);box-shadow:inset 0 -3px 0 var(--pink)}.journal-horse-face{width:65px;height:65px;flex:none}.journal-skip{min-height:44px;font-size:.78rem;border:0;background:transparent;color:var(--blue);padding:8px 0;text-decoration:underline;text-underline-offset:3px}.journal-field-label{display:block;margin:19px 0 9px}.journal-writing select,.journal-writing textarea{width:100%;max-width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--paper);font:inherit;color:var(--ink);font-size:1rem}.journal-writing select{height:48px;padding-right:28px;text-overflow:ellipsis}.journal-writing textarea{min-height:132px;resize:vertical;line-height:1.5}.journal-counter{font-size:.74rem;line-height:1.4;color:var(--muted);margin:7px 0 0}.journal-doodle{margin:20px 0;border-block:1px solid var(--line)}.journal-doodle summary{min-height:52px;padding:16px 0;cursor:pointer;color:var(--blue);font-size:.94rem}.journal-doodle-body{padding-bottom:15px}.journal-doodle-body>p:first-child{font-size:.85rem;line-height:1.45;margin:0 0 12px}.journal-drawing-board{display:block;aspect-ratio:8/5;width:100%;background:var(--sky);border:1px solid var(--line);border-radius:10px;touch-action:none;cursor:crosshair}.journal-palette{display:flex;gap:6px;justify-content:center;margin:13px 0}.journal-palette button{width:44px;height:44px;min-width:44px;padding:5px;border:2px solid transparent;border-radius:50%;background:transparent}.journal-palette button[aria-pressed=true]{border-color:var(--ink)}.journal-palette span{display:block;background:var(--paint);border:1px solid var(--line);width:100%;height:100%;border-radius:50%}.journal-drawing-tools{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.journal-drawing-tools button{min-height:44px;border:1px solid var(--line);color:var(--blue);background:var(--white);padding:8px 13px;font-size:.8rem}.journal-drawing-tools button:first-child{background:var(--green);color:var(--white);border-color:var(--green)}.journal-feedback{font-size:.9rem;line-height:1.5;color:var(--blue);padding:12px 0;margin:4px 0}.journal-save-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:20px}.journal-save-row>.button{min-height:52px;margin:0;flex:1 1}.journal-save-row>a{min-height:44px;display:flex;align-items:center;font-size:.85rem;color:var(--blue);text-decoration:underline;text-underline-offset:3px}.journal-draft-note{font-size:.73rem;line-height:1.4;color:var(--muted);margin:13px 0 0}.journal-writing button:disabled{opacity:.5;cursor:default}.journal-history{margin-top:40px}.journal-history h2{font-size:1.9rem;margin:0 0 18px}.journal-pages{display:grid;gap:18px}.journal-page-card{padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:12px;min-width:0}.journal-page-card header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.journal-page-card time{font-size:.84rem;color:var(--green)}.saved-journal-mood{display:flex;align-items:center;gap:6px;font-size:.77rem;color:var(--green)}.saved-journal-mood .journal-horse-face{width:44px;height:44px}.saved-journal-prompt{font-size:.85rem;color:var(--muted);margin:0 0 10px}.saved-journal-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1rem;line-height:1.65;margin:0}.saved-journal-drawing{display:block;max-width:400px;width:100%;height:auto;margin:15px auto 0;background:var(--sky);border-radius:8px}.dad-journal>.button,.journal-history>.button{margin-top:20px;min-height:44px}.journal-mood-trend{display:flex;gap:10px;overflow:auto;padding:12px 0 18px;scrollbar-width:thin;scrollbar-color:var(--green) var(--paper)}.journal-mood-trend>div{display:flex;align-items:center;flex-direction:column;flex:0 0 86px;text-align:center;font-size:.72rem;gap:5px}.journal-mood-trend .journal-horse-face{width:48px;height:48px}.journal-mood-trend strong{font-size:.73rem}.journal-mood-trend time{font-size:.65rem;color:var(--muted)}.journal-parent-note{font-size:.78rem;line-height:1.5;color:var(--muted)}.journal-check-in{display:flex;align-items:center;gap:7px;color:var(--green);font-size:.84rem;margin:0 0 8px}.journal-check-in .drawn-icon{width:20px;height:20px;fill:var(--pink)}@media(max-width:700px){.journal-page{margin-top:26px}.journal-heading{margin-bottom:23px}.journal-heading h1{font-size:2.25rem}.journal-heading p{font-size:.9rem}.journal-writing{padding:22px 17px}.journal-writing h2{font-size:1.5rem}.journal-privacy{padding:12px;font-size:.82rem}.mood-choices{gap:4px}.mood-choices button{padding:7px 3px;min-height:97px;font-size:.66rem}.journal-horse-face{width:47px;height:47px}.journal-field-label,.journal-moods legend{font-size:.92rem}.journal-writing select{font-size:.85rem}.journal-save-row{display:block}.journal-save-row>.button{width:100%}.journal-save-row>a{justify-content:center;margin-top:8px}.journal-page-card{padding:17px}.journal-page-card header{gap:8px}.journal-page-card time{font-size:.75rem}.saved-journal-mood{font-size:.7rem}.journal-drawing-tools button{font-size:.73rem;padding:8px 10px}.journal-palette{gap:2px}}@media(max-width:360px){.journal-writing{padding:19px 12px}.journal-horse-face{width:39px;height:43px}.mood-choices{gap:2px}.mood-choices button{font-size:.62rem;min-height:98px;padding-inline:2px}.journal-palette button{padding:6px}.journal-palette{gap:0}.journal-writing h2{font-size:1.35rem}.journal-page-card header{flex-wrap:wrap}}.journal-copy-art{min-height:44px;padding:10px 0;border:0;background:transparent;color:var(--blue);font-size:.78rem;text-decoration:underline;text-underline-offset:3px}.journal-drawing-notice{font-size:.78rem;line-height:1.4;color:var(--green);margin:6px 0}.voice-journal{margin:24px 0 20px;padding:22px;border:1px solid var(--line);border-left:5px solid var(--pink);border-radius:6px 20px 20px 6px;background:var(--paper);min-width:0;position:relative}.voice-title-row{display:flex;align-items:center;gap:13px}.voice-title-row h3{font-size:1.6rem;line-height:1.15;margin:4px 0 0;color:var(--ink)}.voice-eyebrow{margin:0;color:var(--green);font-size:.7rem;font-weight:700;letter-spacing:.045em}.voice-mic-art{display:flex;align-items:center;justify-content:center;background:var(--mint);color:var(--green);width:50px;height:58px;flex:none;border-radius:22px 22px 17px 17px;box-shadow:0 3px 0 var(--line)}.voice-mic-art svg{width:27px;height:27px;fill:currentColor}.voice-heart{font-size:2.4rem;color:var(--blue);margin-left:auto;transform:rotate(12deg)}.voice-invitation{font-size:.98rem;line-height:1.55;margin:16px 0 12px}.voice-privacy{font-size:.78rem;line-height:1.5;color:var(--muted);padding-bottom:16px;border-bottom:1px solid var(--line);margin:0 0 18px}.voice-journal .button{min-height:48px;margin:0;font-size:.92rem;padding:12px 17px;white-space:normal;line-height:1.35}.voice-start{width:100%;display:flex;align-items:center;justify-content:center;gap:10px}.voice-start svg{height:24px;width:24px;fill:currentColor}.voice-note{font-size:.82rem;line-height:1.55;margin:8px 0;color:var(--muted)}.voice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:17px 0 8px}.voice-actions .button{flex:1 1}.voice-actions p{flex-basis:100%;margin:0;font-size:.9rem}.voice-text-button{min-height:44px;padding:10px 4px;background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:.8rem;line-height:1.45;color:var(--blue)}.voice-recording>p:first-child{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px;color:var(--green);margin:0 0 8px}.voice-recording>p:nth-child(2){font-size:.85rem;line-height:1.55;margin:0}.voice-listening-dot{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px var(--mint);flex:none;animation:voice-listening 1.8s ease-in-out infinite}.voice-processing>p,.voice-review>p{font-size:.95rem;line-height:1.55;margin:0 0 12px}.voice-review audio{display:block;width:100%;max-width:100%;height:44px}.voice-transcript .journal-field-label{margin-top:20px}.voice-transcript textarea{background:var(--white);min-height:160px}.voice-message{font-size:.88rem;line-height:1.55;color:var(--blue);border-top:1px solid var(--line);padding-top:12px;margin:14px 0 0;overflow-wrap:anywhere}.voice-summary{margin:19px 0 8px;padding:18px;background:var(--white);border:1px solid var(--line);border-radius:12px;min-width:0}.voice-summary h4{font-size:1.1rem;line-height:1.3;margin:0 0 8px;color:var(--green)}.voice-summary-note{font-size:.75rem;color:var(--muted);line-height:1.5;margin:0 0 13px}.voice-summary-overview{font-size:.95rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.voice-summary details{margin-top:12px;border-top:1px solid var(--line)}.voice-summary summary{min-height:44px;padding:13px 0 5px;cursor:pointer;font-size:.85rem;color:var(--blue);line-height:1.5}.voice-summary h5{font-size:.9rem;line-height:1.4;margin:17px 0 7px}.voice-summary ul{padding-left:20px;margin:0}.voice-summary li{font-size:.85rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0}.saved-voice{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.saved-voice>h4{margin:0 0 9px;font-size:.85rem;color:var(--green)}.speech-journal{min-width:0}.speech-live{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:12px;font-size:.95rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.voice-journal audio:focus-visible,.voice-journal button:focus-visible,.voice-journal summary:focus-visible,.voice-journal textarea:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.voice-journal.is-listening{border-color:var(--green);border-left-color:var(--pink)}@keyframes voice-listening{50%{box-shadow:0 0 0 9px var(--mint)}}@media(max-width:700px){.voice-journal{padding:17px 13px;margin-top:20px}.voice-title-row{gap:10px}.voice-title-row h3{font-size:1.4rem}.voice-eyebrow{font-size:.64rem;letter-spacing:0}.voice-mic-art{width:40px;height:49px}.voice-heart{font-size:1.9rem}.voice-invitation{font-size:.9rem}.voice-privacy{font-size:.74rem}.voice-actions{align-items:stretch}.voice-actions .button{flex-basis:100%;width:100%}.voice-summary{padding:14px}.voice-summary h4{font-size:1rem}.voice-journal .button{font-size:.86rem}.voice-recording>p:first-child{font-size:1.1rem}.voice-journal .voice-text-button{font-size:.76rem}.voice-summary-overview{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.voice-listening-dot{animation:none}}.journal-doodle,.journal-doodle *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}