:root{--accent: #f1511f;--accent-deep: #a8430d;--accent-bright: #f1511f;--accent-press: #cd3d0d;--accent-tint: #f9d8bf;--accent-wash: #fbe7d5;--ink: #342112;--ink-heading: #2d1a0b;--ink-2: #6b5443;--ink-3: #857160;--muted: #93806d;--faint: #b09a84;--sand: #c3ac8e;--card: #ffffff;--wash: #f8e9d4;--track: #f0e2cb;--cream: #faeee2;--hair: rgba(51, 33, 17, .08);--hair-soft: rgba(51, 33, 17, .05);--green: #6e8f66;--green-soft: #e6eddf;--gold: #b68b3c;--gold-soft: #f3e9d2;--rose: #b06e62;--rose-soft: #f1e1dd;--arc-1: #e05515;--arc-2: #de8a26;--arc-3: #9c9a4e;--arc-4: #6e8f66;--serif: "Newsreader", Georgia, serif;--sans: "Mulish", system-ui, -apple-system, sans-serif;--display: "Bricolage Grotesque", "Mulish", system-ui, sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:#f5eadb;font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}input,textarea,button{font-family:inherit;color:inherit}textarea,input{outline:none;-webkit-appearance:none}::placeholder{color:var(--sand)}::-webkit-scrollbar{width:0;height:0;display:none}.stage{min-height:100%;display:flex;align-items:center;justify-content:center;padding:28px 16px}.frame{position:relative;width:402px;max-width:100%;height:min(874px,calc(100dvh - 56px));display:flex;flex-direction:column;background:#fff6ef;border-radius:44px;container-type:size;box-shadow:0 40px 90px #3b241238,0 6px 18px #3b24121a,inset 0 0 0 1px #ffffff80;overflow:hidden}@media (max-width: 480px){.stage{padding:0}.frame{width:100%;height:100dvh;border-radius:0;box-shadow:none}}.stageBrand{display:none}@media (min-width: 960px){.stage{gap:clamp(48px,7vw,104px)}.frame{width:476px;border-radius:36px}.shellHead,.shellBody,.shellFooter{padding-left:34px;padding-right:34px}.stageBrand{display:flex;flex-direction:column;justify-content:space-between;height:min(874px,calc(100dvh - 56px));padding:10px 0 14px}.stageBrandName{font-family:var(--display);font-size:31px;font-weight:700;letter-spacing:-.4px;color:var(--accent)}.stageBrandMark{margin:20px 0 26px}.stageBrandLine{margin:0;font-size:17px;line-height:1.55;font-weight:600;color:var(--ink-2);max-width:230px}.stageBrandFoot{margin:0;font-size:13.5px;font-weight:600;color:var(--faint)}.hideOnDesktop{display:none}}.screen{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:54px 26px 36px;animation:screenIn .46s var(--ease-out) both}.screen--back{animation-name:screenInBack}.screen--pinned{padding:54px 0 0;overflow:hidden}.shellHead{flex-shrink:0;padding:0 26px}.shellBody{flex:1;min-height:0;overflow-y:auto;padding:0 26px 26px;display:flex;flex-direction:column}.shellFooter{flex-shrink:0;position:relative;padding:12px 26px calc(24px + env(safe-area-inset-bottom,0px))}.shellFooter:before{content:"";position:absolute;left:0;right:0;top:-26px;height:26px;background:linear-gradient(180deg,#fff6ef00,#fff6eff2);pointer-events:none}@keyframes screenIn{0%{opacity:0;transform:translate(26px)}to{opacity:1;transform:none}}@keyframes screenInBack{0%{opacity:0;transform:translate(-26px)}to{opacity:1;transform:none}}.topbar{display:flex;align-items:center;justify-content:space-between;height:36px;flex-shrink:0}.backBtn{width:36px;height:36px;border-radius:12px;background:var(--card);border:1px solid var(--hair-soft);box-shadow:0 2px 8px #33211114;cursor:pointer;color:var(--ink-2);font-size:20px;line-height:1;padding:0 0 2px;text-align:center;transition:transform .15s var(--ease-out),opacity .15s}.backBtn:active{transform:translate(-2px)}.backBtn[disabled]{opacity:0;pointer-events:none}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.4px;color:var(--muted);text-transform:uppercase;text-align:center}.vol-soft .eyebrow{color:var(--faint)}.skipBtn{background:none;border:none;cursor:pointer;color:var(--faint);font-size:14px;font-weight:600;width:40px;text-align:right;padding:0}.skipBtn:disabled{opacity:0;pointer-events:none}.progressBar{position:relative;height:18px;margin-top:12px;flex-shrink:0}.progressTrack{position:absolute;left:1px;right:1px;top:50%;height:8px;border-radius:4px;background:var(--accent-tint);transform:translateY(-50%)}.progressFill{position:absolute;left:1px;top:50%;height:8px;border-radius:4px;background:var(--accent);transform:translateY(-50%);transition:width .55s var(--ease-out);min-width:10px}.progressDot{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%);transition:left .55s var(--ease-out)}.progressGoal{position:absolute;right:1px;top:50%;width:13px;height:13px;border-radius:50%;border:2.5px solid var(--accent);background:none;transform:translateY(-50%);opacity:.85}.approachL{animation:approachL 6s ease-in-out infinite}.approachR{animation:approachR 6s ease-in-out infinite}@keyframes approachL{0%,to{transform:translate(0)}50%{transform:translate(5px)}}@keyframes approachR{0%,to{transform:translate(0)}50%{transform:translate(-5px)}}.heroRingL{animation:heroDriftL 9s ease-in-out infinite}.heroRingR{animation:heroDriftR 9s ease-in-out infinite}@keyframes heroDriftL{0%,to{transform:translate(-38px)}35%,65%{transform:translate(0)}}@keyframes heroDriftR{0%,to{transform:translate(38px)}35%,65%{transform:translate(0)}}.qHead{margin:26px 0 24px}h1.qTitle{font-family:var(--display);font-weight:800;font-size:28px;line-height:1.14;letter-spacing:-.4px;margin:0 0 10px;color:var(--ink-heading);text-wrap:balance}.vol-soft h1.qTitle{font-family:var(--serif);font-weight:500;font-size:29px;line-height:1.2;letter-spacing:0}h1.qTitle em{font-style:normal;background:var(--accent-tint);border-radius:.18em;padding:0 .14em;margin:0 -.04em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.vol-soft h1.qTitle em{font-style:italic;background:none;border-radius:0;padding:0;margin:0;color:var(--accent-deep)}.hl{background:linear-gradient(100deg,transparent 0%,var(--accent-tint) 3%,var(--accent-tint) 97%,transparent 100%);border-radius:.18em;padding:.02em .12em;margin:0 -.04em;white-space:nowrap;-webkit-box-decoration-break:clone;box-decoration-break:clone}.qSub{font-size:15px;line-height:1.5;color:var(--muted)}.spacer{flex:1;min-height:20px}.qGap{flex:0 10 clamp(0px,calc(100cqh - 772px),160px);min-height:0}.btnPrimary{width:100%;padding:18px;border-radius:22px;border:none;background:var(--accent);color:#fff;font-family:var(--display);font-size:18px;font-weight:800;letter-spacing:.1px;cursor:pointer;box-shadow:0 5px 0 var(--accent-press),0 16px 26px #f1511f38;transition:transform .12s var(--ease-out),box-shadow .12s var(--ease-out),opacity .2s;-webkit-tap-highlight-color:transparent}.btnPrimary:active{transform:translateY(4px);box-shadow:0 1px 0 var(--accent-press),0 6px 14px #f1511f2e}.btnPrimary:disabled{opacity:.45;box-shadow:none;cursor:default}.vol-soft .btnPrimary{box-shadow:0 8px 20px #f1511f3d}.vol-soft .btnPrimary:active{transform:scale(.975);box-shadow:0 6px 14px #f1511f33}.btnGhost{width:100%;padding:13px;border-radius:16px;border:none;background:none;color:var(--muted);font-size:14.5px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.optList{display:flex;flex-direction:column;gap:11px}.optRow{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border-radius:16px;border:1.5px solid var(--hair);background:var(--card);cursor:pointer;text-align:left;transition:border-color .18s,background .18s,transform .18s var(--ease-spring),box-shadow .18s;color:var(--ink);-webkit-tap-highlight-color:transparent}.optRow.on{border-color:var(--accent-bright);background:var(--accent-wash);transform:translateY(-1px);box-shadow:0 6px 16px #cc4e0e24}.vol-soft .optRow.on{border-color:#cc4e0e8c;transform:none;box-shadow:none}.optRow:active{transform:scale(.985)}.optLabel{font-size:15.5px;font-weight:700}.optSub{font-size:12.5px;color:var(--muted);margin-top:1px;font-weight:500}.optDot{width:20px;height:20px;border-radius:10px;flex-shrink:0;border:1.5px solid rgba(54,50,43,.22);background:transparent;transition:all .22s var(--ease-spring)}.optRow.on .optDot{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 3.5px #fff;transform:scale(1.08)}.chipWrap{display:flex;flex-wrap:wrap;gap:12px}.chip{padding:13px 22px;border-radius:999px;border:1.5px solid var(--hair-soft);background:var(--card);color:var(--ink);font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 1px 3px #3321110d;transition:border-color .16s,background .16s,color .16s,transform .2s var(--ease-spring);-webkit-tap-highlight-color:transparent}.chip.on{border-color:var(--accent);background:var(--accent);color:#fff;animation:chipPop .32s var(--ease-spring)}.vol-soft .chip.on{background:var(--accent-wash);color:var(--accent-deep)}@keyframes chipPop{0%{transform:scale(1)}40%{transform:scale(.92)}to{transform:scale(1)}}.texGrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.texCard{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:18px;border:1.5px solid var(--hair);background:var(--card);cursor:pointer;text-align:left;transition:border-color .18s,background .18s,transform .18s var(--ease-spring),box-shadow .18s;color:var(--ink);height:100%;-webkit-tap-highlight-color:transparent}.texCard.on{border-color:var(--accent-bright);background:var(--accent-wash);transform:translateY(-1px);box-shadow:0 6px 16px #cc4e0e24}.vol-soft .texCard.on{border-color:#cc4e0e8c;transform:none;box-shadow:none}.texLabel{font-family:var(--serif);font-size:19px;font-weight:600}.texDesc{font-size:12.5px;line-height:1.42;color:var(--ink-3);font-weight:500}.segWrap{display:flex;gap:6px;padding:6px;border-radius:20px;background:var(--accent-wash)}.segBtn{flex:1;padding:13px 4px;border-radius:15px;border:none;cursor:pointer;font-weight:700;font-size:15px;color:var(--ink-2);background:transparent;transition:all .2s var(--ease-out);-webkit-tap-highlight-color:transparent}.segBtn.on{font-weight:800;color:#fff;background:var(--accent);box-shadow:0 3px 10px #f1511f59}.fieldLabel{display:block;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--faint);margin:0 4px 8px}.textInput{width:100%;padding:16px;border-radius:16px;border:1.5px solid var(--hair);background:var(--card);font-size:17px;font-weight:600;color:var(--ink);transition:border-color .2s,box-shadow .2s}.textInput.serif{font-family:var(--serif);font-size:22px;font-weight:500}.textInput:focus{border-color:var(--accent);box-shadow:0 0 0 4px #cc4e0e1f}.textArea{width:100%;min-height:128px;resize:none;padding:16px;border-radius:18px;border:1.5px solid var(--hair);background:var(--card);font-size:15.5px;line-height:1.5;color:var(--ink);transition:border-color .2s,box-shadow .2s}.textArea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #cc4e0e1f}.autoList{position:absolute;left:0;right:0;top:100%;margin-top:6px;background:var(--card);border:1px solid var(--hair);border-radius:16px;box-shadow:0 14px 32px #36322b24;overflow:hidden;z-index:30;animation:riseIn .18s var(--ease-out) both}.autoItem{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 15px;border:none;background:none;cursor:pointer;font-size:15px;font-weight:600;color:var(--ink);text-align:left;-webkit-tap-highlight-color:transparent}.autoItem+.autoItem{border-top:1px solid var(--hair-soft)}.autoItem.on{background:var(--accent-wash)}.autoState{font-size:12px;font-weight:800;letter-spacing:.6px;color:var(--faint)}.chipAdd{padding:13px 22px;border-radius:999px;border:1.5px dashed rgba(51,33,17,.28);background:none;color:var(--ink-2);font-size:16px;font-weight:700;cursor:pointer;transition:background .16s,transform .2s var(--ease-spring);-webkit-tap-highlight-color:transparent}.chipAdd:active{transform:scale(.94)}.chipInput{padding:11px 16px;border-radius:999px;border:1.5px solid var(--accent);background:var(--card);font-size:16px;font-weight:700;color:var(--ink);width:180px}.nameChips{display:flex;gap:9px}.nameChip{flex:1;padding:15px 4px;border-radius:16px;border:1.5px solid var(--hair);background:var(--card);cursor:pointer;font-family:var(--display);font-size:18px;font-weight:700;color:var(--ink);transition:border-color .16s,background .16s,transform .2s var(--ease-spring);-webkit-tap-highlight-color:transparent}.nameChip.on{border-color:var(--accent);background:var(--accent-wash);animation:chipPop .32s var(--ease-spring)}.card{background:var(--card);border:1px solid var(--hair-soft);border-radius:24px;padding:22px 20px;box-shadow:0 12px 30px #36322b12}.washNote{display:flex;gap:12px;align-items:flex-start;background:var(--accent-wash);border-radius:18px;padding:16px}.washNote p{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}.washIcon{flex-shrink:0;width:18px;height:18px;color:var(--accent);margin-top:1px}.typeBadge{display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.typeBadge .bdot{width:6px;height:6px;border-radius:3px;background:currentColor}.rise{opacity:0;animation:riseIn .55s var(--ease-out) forwards;animation-delay:calc(var(--i, 0) * 90ms)}@keyframes riseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.pop{opacity:0;animation:popIn .5s var(--ease-spring) forwards;animation-delay:calc(var(--i, 0) * 90ms)}@keyframes popIn{0%{opacity:0;transform:scale(.9) translateY(6px)}to{opacity:1;transform:none}}.slideRings{height:100%;max-height:158px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;min-height:0}.slideRings svg{width:100%;height:100%}.ringsWrap{position:relative;display:flex;align-items:center;justify-content:center}.breathe{animation:breathe 4.2s ease-in-out infinite;transform-origin:center}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}.orbit{animation:orbit 7s linear infinite;transform-origin:center}@keyframes orbit{to{transform:rotate(360deg)}}.floaty{animation:floaty 5.4s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.revealLine{display:flex;align-items:center;gap:12px;font-size:15px;line-height:1.45;color:var(--ink-2);opacity:0;animation:riseIn .6s var(--ease-out) forwards}.revealMark{width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.revealDot{width:7px;height:7px;border-radius:4px;background:var(--accent);animation:dotPulse 1.6s ease-in-out infinite}.revealCheck{width:17px;height:17px;border-radius:9px;background:var(--accent);display:flex;align-items:center;justify-content:center;animation:popIn .35s var(--ease-spring) both}@keyframes dotPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.shimmerBar{height:4px;border-radius:2px;background:linear-gradient(90deg,var(--track) 0%,var(--accent-wash) 40%,var(--accent) 50%,var(--accent-wash) 60%,var(--track) 100%);background-size:220% 100%;animation:shimmer 2.1s linear infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.routeDash{stroke-dasharray:4 6;animation:routeDraw 1.4s var(--ease-out) forwards,dashDrift 14s linear 1.4s infinite}@keyframes routeDraw{0%{stroke-dashoffset:240;opacity:0}to{stroke-dashoffset:0;opacity:1}}@keyframes dashDrift{to{stroke-dashoffset:-100}}.routeEnd{animation:endPulse 3.2s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes endPulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.28);opacity:1}}.arcBar{width:100%;border-radius:12px 12px 5px 5px;transform-origin:bottom;animation:barGrow .9s var(--ease-out) forwards;transform:scaleY(0)}@keyframes barGrow{to{transform:scaleY(1)}}.arcValue{font-size:11.5px;font-weight:800;margin-bottom:8px;letter-spacing:.2px;opacity:0;animation:riseIn .5s var(--ease-out) forwards}.summaryOpening{font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.32;color:var(--ink-heading);text-wrap:pretty}.readbackChip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--card);border:1px solid var(--hair);font-size:13px;font-weight:700;color:var(--ink-2)}.readbackChip .rdot{width:6px;height:6px;border-radius:3px;background:var(--accent)}.heroCard{background:var(--card);border:1px solid var(--hair-soft);border-radius:28px;padding:24px 22px;box-shadow:0 14px 36px #36322b1a}.heroTitle{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.32;color:var(--ink-heading);margin:14px 0 0}.heroWhy{font-size:14px;line-height:1.55;color:var(--muted);margin:12px 0 0}.handCard{width:100%;text-align:left;background:var(--cream);border:1px solid var(--hair-soft);border-radius:20px;padding:16px 18px;cursor:pointer;transition:background .2s;-webkit-tap-highlight-color:transparent}.handHead{display:flex;align-items:center;justify-content:space-between;gap:10px}.handTitle{font-size:15px;font-weight:800;color:var(--ink-2)}.chev{transition:transform .3s var(--ease-out);color:var(--faint);flex-shrink:0}.chev.open{transform:rotate(180deg)}.handBody{overflow:hidden;transition:max-height .45s var(--ease-out),opacity .35s}.sayOpener{font-family:var(--serif);font-size:17px;font-style:italic;line-height:1.5;color:var(--ink-2)}.sayDirection{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--ink-2)}.planCard{background:var(--card);border:1px solid var(--hair-soft);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:8px}.planCard.hero{border:1.5px solid rgba(204,78,14,.45);box-shadow:0 10px 26px #cc4e0e1f}.planWeek{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--faint)}.planTitle{font-size:15px;font-weight:700;line-height:1.4;color:var(--ink)}.planSub{font-size:12.5px;line-height:1.5;color:var(--muted)}.planSub.locked{filter:blur(3.5px);-webkit-user-select:none;user-select:none;pointer-events:none}.timelineRow{display:flex;gap:14px;align-items:baseline}.timelineDay{width:52px;flex-shrink:0;font-size:12px;font-weight:800;color:var(--accent-deep);text-transform:uppercase;letter-spacing:.4px}.timelineText{font-size:13.5px;line-height:1.5;color:var(--ink-2)}.planToggle{width:100%;display:flex;align-items:center;gap:12px;padding:15px 16px;border-radius:18px;border:1.5px solid var(--hair);background:var(--card);cursor:pointer;text-align:left;transition:border-color .18s,background .18s,box-shadow .18s;-webkit-tap-highlight-color:transparent}.planToggle.on{border-color:var(--accent);background:var(--accent-wash);box-shadow:0 6px 16px #cc4e0e21}.modalScrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#33221570;display:flex;align-items:flex-end;justify-content:center;z-index:40;animation:fadeIn .3s ease both;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modalCard{width:100%;background:var(--card);border-radius:30px 30px 0 0;padding:28px 26px 34px;animation:sheetUp .45s var(--ease-out) both}@keyframes sheetUp{0%{transform:translateY(60%)}to{transform:none}}.footerLinks{display:flex;justify-content:center;gap:18px;font-size:12px;color:var(--sand);font-weight:600}.footerLinks button{background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.divider{height:1px;background:var(--hair);border:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
