:root{font-family:Georgia,Times New Roman,serif;line-height:1.5;font-weight:400;color:#2d2018;--page-gutter: 18px;--surface: rgba(255, 251, 246, .88);--surface-strong: rgba(255, 248, 240, .94);--surface-soft: rgba(247, 237, 223, .82);--stroke: rgba(105, 72, 46, .16);--shadow: 0 18px 50px rgba(67, 40, 22, .1);background:radial-gradient(circle at top,rgba(255,241,223,.95),rgba(249,233,213,.75) 30%,rgba(237,217,194,.88) 75%),linear-gradient(135deg,#f7ecd8,#e3c9ac)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}#root{width:100%;min-height:100vh}.mobile-preview-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.mobile-preview-device{width:min(100%,430px);min-height:min(920px,calc(100vh - 40px));background:linear-gradient(180deg,#211711,#3f2b1f 40%,#241912);border-radius:42px;padding:14px;box-shadow:0 30px 90px #2d201857,inset 0 1px #ffffff2e;position:relative}.mobile-preview-device:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:118px;height:24px;border-radius:999px;background:rgba(8,7,6,.9);z-index:2}.mobile-preview-screen{min-height:calc(100vh - 68px);max-height:calc(100vh - 68px);background:radial-gradient(circle at top,rgba(255,241,223,.95),rgba(249,233,213,.75) 30%,rgba(237,217,194,.88) 75%),linear-gradient(135deg,#f7ecd8,#e3c9ac);border-radius:30px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;position:relative}.mobile-preview-screen:before{content:"";position:sticky;top:0;display:block;height:28px;background:linear-gradient(180deg,rgba(247,236,218,.92),rgba(247,236,218,0));z-index:1;pointer-events:none}.page-shell{width:min(100%,calc(100% - (var(--page-gutter) * 2)));margin:0 auto;padding:12px 0 24px}.narrow-shell{width:min(100%,calc(100% - (var(--page-gutter) * 2)))}.splash-shell{display:grid;gap:14px}.hero-panel,.card{background:var(--surface);border:1px solid var(--stroke);border-radius:24px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-panel{padding:22px 18px 20px}.card{padding:18px 16px}.hero-card,.detail-card{margin-bottom:14px}.logo{width:112px;display:block;margin-bottom:8px}h1,h2,h3,p,ul{margin-top:0}h1{font-size:clamp(2rem,7vw,3.3rem);line-height:.94;letter-spacing:-.03em;margin:10px 0}h2{font-size:1.06rem;margin-bottom:12px}h3{font-size:1rem;margin-bottom:0}.hero-copy{font-size:1.03rem;line-height:1.45;max-width:28rem}.support-copy,.eyebrow-copy{color:#6b5240;font-size:.95rem}.eyebrow-row,.button-row,.top-nav,.shop-row,.list-row,.profile-header,.chat-layout{display:flex;gap:12px}.eyebrow-row,.top-nav,.shop-row,.list-row{justify-content:space-between;align-items:flex-start}.eyebrow-row{gap:10px;margin-bottom:14px;flex-wrap:wrap}.eyebrow-pill,.feature-chip,.rating-chip{display:inline-flex;align-items:center;border-radius:999px;padding:6px 12px;font-size:.88rem}.eyebrow-pill{background:#2d2018;color:#fff7ef;box-shadow:inset 0 1px #ffffff1f}.notice-banner{padding:12px 13px;border-left:4px solid #8a5c36;border-radius:12px;background:rgba(238,220,195,.72);font-size:.93rem;line-height:1.45}.form-card,.stacked-form{display:grid;gap:12px}.field-label{font-size:.92rem;color:#6b5240}.text-input{width:100%;border:1px solid rgba(98,71,49,.2);border-radius:14px;padding:13px 14px;background:rgba(255,255,255,.8);color:#2d2018}.button-row{display:grid;grid-template-columns:1fr;flex-wrap:wrap;gap:10px}.button-row>a,.button-row>button,.button-row form{width:100%}.button-row>a>button{width:100%}.primary-button,.ghost-button,.chat-friend{border:0;border-radius:999px;width:100%;padding:13px 18px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;font-size:.95rem;font-weight:600}.primary-button{background:#2d2018;color:#fff7ef;box-shadow:0 8px 20px #2d20182e}.ghost-button,.chat-friend{background:#ead5bd;color:#4f3627}.primary-button:hover,.ghost-button:hover,.chat-friend:hover{transform:translateY(-1px)}.feature-list,.chip-row{display:flex;flex-wrap:wrap;gap:8px;padding-left:0;list-style:none;margin-bottom:0}.feature-list{display:grid;gap:8px}.feature-list li{padding:12px 13px;border-radius:16px;background:var(--surface-soft);border:1px solid rgba(105,72,46,.08);font-size:.94rem;line-height:1.4}.feature-chip{background:#ead5bd;color:#4f3627}.map-shell,.shop-grid,.info-grid{display:grid;gap:14px}.shop-grid{grid-template-columns:1fr}.info-grid{grid-template-columns:1fr;margin-bottom:14px}.shop-card{display:grid;gap:12px}.shop-card-selected{outline:2px solid rgba(138,92,54,.4)}.shop-image,.detail-hero{width:100%;border-radius:18px;object-fit:cover}.shop-image{aspect-ratio:4 / 3.1}.detail-hero{aspect-ratio:16 / 10;margin-bottom:14px}.shop-copy p:last-child{margin-bottom:0}.shop-copy{display:grid;gap:8px}.rating-chip{background:rgba(71,113,79,.12);color:#335239;white-space:nowrap}.inset-card{background:var(--surface-strong)}.review-card,.friend-card,.message-card{padding:14px;border-radius:18px;background:var(--surface-soft)}.review-card+.review-card,.friend-card+.friend-card{margin-top:12px}.friend-card{display:flex;gap:14px;align-items:center}.friend-avatar,.profile-pic{width:72px;height:72px;border-radius:18px;object-fit:cover}.profile-header{align-items:center;margin-bottom:14px}.chat-layout{align-items:flex-start;margin-bottom:14px;flex-direction:column}.chat-layout>.card:first-child{width:100%}.chat-layout>.card:last-child{width:100%}.chat-friend{display:block;width:100%;text-align:left}.chat-friend+.chat-friend{margin-top:10px}.chat-friend-active{background:#2d2018;color:#fff7ef}.message-list{display:grid;gap:12px;margin-bottom:14px}.list-row{padding:10px 0;border-bottom:1px solid rgba(105,72,46,.1);font-size:.95rem}.list-row:last-child{border-bottom:0;padding-bottom:0}@media (max-width: 720px){.mobile-preview-shell{padding:0}.mobile-preview-device{width:100%;min-height:100vh;border-radius:0;padding:0;box-shadow:none}.mobile-preview-device:before{display:none}.mobile-preview-screen{min-height:100vh;max-height:none;border-radius:0}:root{--page-gutter: 12px}.page-shell,.narrow-shell{width:min(100%,calc(100% - 20px))}.eyebrow-row,.top-nav,.profile-header,.chat-layout{flex-direction:column;align-items:flex-start}.hero-panel{padding:18px 14px 16px}.card{padding:16px 14px}.shop-row,.list-row{gap:8px}.chat-layout>.card:first-child,.chat-layout>.card:last-child{width:100%}}
