
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;--bg:#f7f5f0;--paper:#fffdf9;--surface:#f0ebe2;--ink:#211b17;--muted:#685d50;--stroke:#e4dbce;--accent:#865b30;--accentSoft:#eadbca;--hero1:#d2b28b;--hero2:#f6e8d2;--shadow:0 12px 35px #4a32100c;--duration:180ms;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:#bcb5a9;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{max-width:900px;margin:auto;min-height:100dvh;background:var(--bg);color:var(--ink);transition:background 320ms,color 320ms;position:relative}.app[data-tone="dark"]{color-scheme:dark;--bg:#171717;--paper:#22211f;--surface:#302d29;--ink:#f5eee5;--muted:#c3b4a4;--stroke:#45403a;--accent:#d3ad79;--accentSoft:#42362a;--hero1:#3f3024;--hero2:#7e644c;--shadow:0 14px 30px #0003}.app[data-phase="0"]{--hero1:#282b37;--hero2:#5b5363}.app[data-phase="1"]{--hero1:#303346;--hero2:#676076}.app[data-phase="2"]{--hero1:#3b3548;--hero2:#846b78}.app[data-phase="3"]{--hero1:#55434c;--hero2:#ae7b74}.app[data-phase="4"]{--hero1:#b99e89;--hero2:#eee2d2}.app[data-phase="5"]{--hero1:#c7ac89;--hero2:#f2e8d7}.app[data-phase="6"]{--hero1:#d0b78e;--hero2:#f7ebd9}.app[data-phase="7"]{--hero1:#d2b28d;--hero2:#f4e6d2}.app[data-phase="8"]{--hero1:#c8a181;--hero2:#ead5c3}.app[data-phase="9"]{--hero1:#926c68;--hero2:#d4b6a3}.app[data-phase="10"]{--hero1:#55404c;--hero2:#a08382}.app[data-phase="11"]{--hero1:#353343;--hero2:#716475}.shell{max-width:820px;margin:auto;padding:0 19px}.top{background:var(--paper);border-bottom:1px solid var(--stroke);position:sticky;top:0;z-index:20;backdrop-filter:blur(15px)}.topInner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{font:600 26px Georgia,serif;letter-spacing:-1.3px;border:0;background:none;color:var(--ink);padding:0;text-align:left}.brand em{font-style:normal;color:var(--accent)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.row{display:flex;align-items:center;gap:10px}.between{display:flex;justify-content:space-between;align-items:center;gap:12px}.wrap{flex-wrap:wrap}.btn{border:1px solid var(--accent);border-radius:12px;background:var(--accent);color:var(--bg);font-weight:750;font-size:12px;padding:11px 14px;transition:transform var(--duration),filter var(--duration)}.btn:hover{filter:brightness(1.08)}.btn:active,.ghost:active,.navBtn:active{transform:scale(.96)}.ghost{background:var(--paper);border:1px solid var(--stroke);border-radius:12px;color:var(--ink);padding:10px 12px;font-size:12px;font-weight:750;transition:transform var(--duration),background var(--duration)}.textBtn{border:0;background:none;color:var(--accent);font-size:12px;font-weight:800;padding:9px 0}.iconBtn{width:36px;height:36px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--stroke);border-radius:12px;color:var(--ink);font-size:18px}.locationStrip{padding:11px 13px;background:var(--surface);border-radius:13px;margin-bottom:12px}.locationStrip strong{font-size:12px}.rateStrip{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:19px}.rateTile{padding:11px 13px;border:1px solid var(--stroke);background:var(--paper);border-radius:13px}.rateTile strong{display:block;font-size:17px;margin:4px 0}.view{padding:17px 0 106px;animation:enter 230ms cubic-bezier(.22,.8,.25,1) both;min-height:50vh}@keyframes enter{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.bottom{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(900px,100%);padding:9px 12px calc(9px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:color-mix(in srgb,var(--paper) 95%,transparent);border-top:1px solid var(--stroke);z-index:30;backdrop-filter:blur(22px)}.navBtn{display:flex;flex-direction:column;align-items:center;gap:4px;border:0;border-radius:12px;background:transparent;color:var(--muted);padding:8px 3px;transition:background var(--duration),transform var(--duration),color var(--duration);font-size:10px;font-weight:800}.navBtn .ni{font-size:22px;line-height:22px}.navBtn.active{background:var(--accentSoft);color:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink)}h1{font:500 31px/1.1 Georgia,serif;letter-spacing:-.7px}h2{font:500 24px/1.18 Georgia,serif;letter-spacing:-.5px}h3{font:600 18px/1.2 Georgia,serif}.sectionHead{margin:25px 0 13px}.hero{height:225px;border-radius:18px;background:linear-gradient(118deg,var(--hero1),var(--hero2));position:relative;overflow:hidden;display:flex;align-items:center;padding:22px;box-shadow:var(--shadow)}.heroCopy{z-index:2;width:67%}.heroCopy h1{font-size:30px;margin:12px 0 17px}.heroArt{position:absolute;right:-8px;top:45px;width:41%;text-align:center;font-size:96px;filter:drop-shadow(0 16px 14px #0003);animation:float 4s ease-in-out infinite alternate}@keyframes float{to{transform:translateY(-10px) rotate(4deg)}}.heroArrows{position:absolute;bottom:12px;right:12px;display:flex;gap:6px}.heroArrows button{width:30px;height:30px;border:1px solid var(--stroke);background:var(--paper);color:var(--ink);border-radius:50%}.dots{display:flex;justify-content:center;gap:6px;margin:11px 0}.dots button{width:7px;height:7px;border:0;background:var(--muted);border-radius:8px;padding:0;opacity:.45}.dots button.active{width:23px;background:var(--accent);opacity:1}.scrollCards{display:flex;gap:11px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.scrollCards .productCard{min-width:177px;width:177px;scroll-snap-align:start}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.productCard{background:var(--paper);border:1px solid var(--stroke);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.productArt{height:145px;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 45% 20%,#faf1df,#d9c4a8);color:#6d4c2b;font-size:65px}.productCard:nth-child(3n) .productArt{background:radial-gradient(circle at 45% 20%,#f8f6ef,#b8b6b1)}.scrollCards .productArt{height:120px}.saveBtn{position:absolute;right:9px;top:9px;width:32px;height:32px;border:1px solid #fff9;background:#fffcf3;border-radius:50%;color:#754824;font-size:20px}.productInfo{padding:12px}.productInfo h3{font:600 16px Georgia,serif;margin:7px 0}.productInfo .price{font-weight:850;font-size:15px;color:var(--accent);margin:8px 0}.productInfo .ghost{width:100%}.chips{display:flex;gap:7px;overflow:auto;scrollbar-width:none;padding:10px 0 13px}.chip{border:1px solid var(--stroke);background:var(--paper);color:var(--ink);border-radius:99px;padding:9px 13px;font-size:12px;font-weight:700;white-space:nowrap}.chip.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.field{width:100%;min-width:0;border:1px solid var(--stroke);background:var(--paper);color:var(--ink);border-radius:11px;padding:12px;font-size:13px;outline-offset:2px}.field::placeholder{color:var(--muted)}label{display:block;font-size:12px;font-weight:750;margin:11px 0 6px;color:var(--ink)}.panel{padding:16px;border:1px solid var(--stroke);background:var(--paper);border-radius:16px;margin:11px 0;box-shadow:var(--shadow)}.cols{display:grid;grid-template-columns:1fr 1fr;gap:11px}.statGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px;background:var(--surface);border-radius:13px;border:1px solid var(--stroke)}.stat strong{display:block;font-size:22px;margin-top:7px}.tag{display:inline-block;border-radius:99px;background:var(--accentSoft);color:var(--accent);padding:5px 9px;font-size:11px;font-weight:750;margin:3px 4px 3px 0}.status{display:inline-block;padding:5px 8px;font-size:10px;font-weight:800;border-radius:20px;background:var(--surface);color:var(--ink)}.status.good{background:#dce9d8;color:#285131}.status.bad{background:#f1d6d2;color:#792f2b}.status.warn{background:#f6e5c4;color:#6e4a13}.item{border-top:1px solid var(--stroke);padding:13px 0}.item:first-child{border-top:0}.subnav{display:flex;gap:7px;overflow:auto;scrollbar-width:none;margin:12px 0 16px}.subnav button{border:1px solid var(--stroke);background:var(--paper);color:var(--ink);border-radius:11px;padding:10px 12px;font-size:12px;font-weight:750;white-space:nowrap}.subnav button.active{background:var(--accent);border-color:var(--accent);color:var(--bg)}.note{border-left:3px solid var(--accent);background:var(--surface);border-radius:7px;padding:12px;font-size:12px;color:var(--ink);margin:13px 0}.map{height:285px;border:1px solid var(--stroke);border-radius:15px;overflow:hidden;position:relative;background:#bdc9b2;cursor:crosshair}.map:before{content:"";position:absolute;inset:-30%;background:repeating-linear-gradient(0deg,transparent 0 45px,#e9e3d5 46px 61px,transparent 62px 110px),repeating-linear-gradient(90deg,transparent 0 56px,#eee8d8 57px 75px,transparent 76px 130px),#b9c6ad}.pin{position:absolute;z-index:2;transform:translate(-50%,-100%);background:#76502d;color:white;border:2px solid white;border-radius:99px;padding:6px 9px;font-size:11px;font-weight:800}.mapLabel{position:absolute;z-index:3;bottom:9px;left:9px;border-radius:7px;background:#fffdf5;color:#34291c;padding:7px;font-size:10px}.reel{height:min(67vh,530px);min-height:390px;border-radius:19px;background:radial-gradient(ellipse at 45% 38%,#8c6a4e,#191514 75%);position:relative;overflow:hidden;display:grid;place-items:center;touch-action:pan-y}.reelArt{font-size:135px;animation:reelIn 430ms cubic-bezier(.16,1,.3,1) both,float 3.4s ease-in-out 450ms infinite alternate;filter:drop-shadow(0 20px 18px #0005)}@keyframes reelIn{from{transform:translateY(90px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.reelCopy{position:absolute;bottom:0;left:0;right:0;padding:65px 18px 18px;background:linear-gradient(transparent,#000d);color:white;pointer-events:none}.reelCopy h2{color:white}.reelCopy button{pointer-events:auto}.reelActions{position:absolute;right:12px;bottom:137px;display:grid;gap:9px;z-index:3}.reelActions button{border:1px solid #fff8;background:#0008;color:white;border-radius:50%;width:42px;height:42px;font-size:19px}.progress{height:3px;background:#fff6;border-radius:3px;overflow:hidden;margin-top:12px}.progress div{height:100%;background:#ffe4b9;width:0}.modalLayer{position:fixed;inset:0;background:#120d0abf;display:grid;place-items:center;z-index:60;padding:16px}.modal{width:min(460px,100%);max-height:85dvh;overflow:auto;background:var(--paper);color:var(--ink);padding:20px;border-radius:19px;box-shadow:0 25px 70px #0005;animation:enter 200ms ease both}.skeleton{background:linear-gradient(100deg,var(--surface) 15%,var(--paper) 40%,var(--surface) 65%);background-size:250% 100%;animation:shimmer 900ms linear infinite;border-radius:10px}@keyframes shimmer{to{background-position-x:-250%}}.auth{max-width:560px;margin:auto}.auth h1{margin:13px 0}.switcher{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;background:var(--surface);border-radius:13px}.switcher button{background:transparent;color:var(--muted);border:0;padding:10px 4px;border-radius:9px;font-size:12px;font-weight:800}.switcher button.active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}.phasePill{font-size:10px;border:1px solid var(--stroke);padding:6px 8px;border-radius:99px;color:var(--muted)}.empty{text-align:center;padding:35px 16px;color:var(--muted)}.toast{position:fixed;z-index:80;bottom:95px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);border-radius:13px;padding:12px 16px;box-shadow:0 10px 30px #0004;font-size:12px;max-width:min(85%,450px);text-align:center;animation:enter 200ms ease}.hidden{display:none!important}@media(min-width:650px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.statGrid{grid-template-columns:repeat(4,1fr)}.hero{height:265px}.heroCopy h1{font-size:40px}.heroArt{font-size:125px}.shell{padding:0 26px}}@media(max-width:360px){.brand{font-size:23px}.heroCopy h1{font-size:26px}.heroArt{font-size:76px}.shell{padding:0 13px}}
