/* Visual guidance only. Scope to selected public templates; retain all tenant themes. */
body.visual-refresh{--vg-surface:var(--tpl-surface,#fffef9);--vg-text:var(--tpl-text,#233c32);--vg-muted:var(--tpl-muted,#5c6b64);--vg-line:var(--tpl-line,#d8ded6);--vg-alt:var(--tpl-alt,#f1f3ed)}
body.visual-refresh .vg-guide{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:28px;align-items:center;margin:30px 0;padding:22px;border:1px solid var(--vg-line);border-radius:12px;background:var(--vg-surface);color:var(--vg-text);min-width:0}
body.visual-refresh .vg-guide>img,body.visual-refresh .vg-plan-art img{display:block;width:100%;height:auto;object-fit:contain;border-radius:8px;background:#f4ead6}
body.visual-refresh .vg-guide h2{margin:4px 0 15px;padding:0;border:0;font-size:clamp(20px,2.2vw,27px);line-height:1.5;color:var(--vg-text)}
body.visual-refresh .vg-guide p{font-size:14px;line-height:1.8;margin:10px 0 0;color:var(--vg-muted)}
body.visual-refresh .vg-guide .vg-eyebrow{font-weight:700;font-size:12px;letter-spacing:.08em;margin:0;color:var(--vg-muted)}
body.visual-refresh .vg-path{display:flex;gap:10px 18px;flex-wrap:wrap;padding:0;margin:0;list-style:none}
body.visual-refresh .vg-path li{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:700;min-width:0}
body.visual-refresh .vg-path b{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--vg-alt);border:1px solid var(--vg-line);color:var(--vg-text);font-size:12px}
body.visual-refresh .vg-guide-compact{grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:18px;padding:15px;margin:24px 0}
body.visual-refresh .vg-guide-compact strong{display:block;font-size:16px;line-height:1.6;margin-bottom:7px;color:var(--vg-text)}
body.visual-refresh .vg-guide-compact figcaption span{display:block;font-size:13px;line-height:1.8;color:var(--vg-muted)}
body.visual-refresh .vg-plan-art{margin:0 0 20px}
body.visual-refresh .vg-plan-art figcaption{font-size:12px;line-height:1.7;color:var(--vg-muted);margin-top:8px}
body.visual-refresh.public-page.a-public .vg-guide-expanded .a-guide-label{margin:0 0 8px;padding:0;border:0;color:var(--vg-text);font-size:24px;line-height:1.5}
body.visual-refresh .vg-guide-expanded .vg-guide-subtitle{margin:0 0 22px;color:var(--vg-muted);font-size:15px;line-height:1.8}
body.visual-refresh.public-page.a-public .vg-guide-expanded .a-guide-body{padding:0}
body.visual-refresh .u-company-cardbody{padding:26px}
body.visual-refresh .u-company-date-row{border:1px solid var(--vg-line);background:var(--vg-alt);border-radius:8px;margin:10px 0;padding:14px 16px;gap:16px}
body.visual-refresh .u-company-date-row small{font-size:13px;line-height:1.8}
body.visual-refresh .u-company-date-row strong{font-size:17px;line-height:1.65}
body.visual-refresh .u-company-price{margin:16px 0 18px}
body.visual-refresh .u-company-sectionhead{align-items:baseline}
body.visual-refresh .u-company-info p{line-height:1.85}
body.visual-refresh .a-schedule .d1-cards{gap:14px}
body.visual-refresh .a-schedule .d1-card{padding:18px;gap:14px;border-radius:10px}
body.visual-refresh .a-schedule .d1-cst{line-height:1.7}
body.visual-refresh .a-slot-grid{gap:28px}
body.visual-refresh .a-reservation-panel{border:1px solid var(--vg-line);padding:24px;border-radius:12px;background:var(--vg-surface);min-width:0}
body.visual-refresh .a-reservation-panel input:not([type=radio]):not([type=checkbox]):not([type=hidden]),body.visual-refresh .a-reservation-panel select{min-height:46px;font-size:16px}
body.visual-refresh .a-reservation-panel .form>label{display:grid;gap:7px;margin-top:14px;font-weight:600}
body.visual-refresh .a-reservation-panel .form>label input{font-weight:400}
body.visual-refresh .d1-fold{margin:14px 0}
body.visual-refresh .d1-fold>summary{min-height:44px;box-sizing:border-box;line-height:1.6}
body.visual-refresh.goods-page .goods-wrap{max-width:1040px;color:var(--vg-text)}
body.visual-refresh.goods-page .goods-card{background:var(--vg-surface);color:var(--vg-text);border-color:var(--vg-line);padding:24px}
body.visual-refresh.goods-page .goods-wrap .goods-card h2{color:var(--vg-text)}
body.visual-refresh.goods-page .goods-wrap dl{gap:0;margin:0;grid-template-columns:130px minmax(0,1fr)}
body.visual-refresh.goods-page .goods-wrap dt,body.visual-refresh.goods-page .goods-wrap dd{padding:13px 10px;border-bottom:1px solid var(--vg-line);line-height:1.8}
body.visual-refresh.goods-page .goods-wrap dt{background:var(--vg-alt);color:var(--vg-text)}
body.visual-refresh.goods-page .goods-wrap .pre{line-height:1.85}
body.visual-refresh.goods-page .goods-wrap .danger{color:#693114}
body.visual-refresh.goods-page .goods-wrap input{background:var(--vg-surface);color:var(--vg-text)}
@media(max-width:860px){body.visual-refresh .vg-guide{grid-template-columns:200px minmax(0,1fr);gap:20px}body.visual-refresh .a-reservation-panel{padding:20px}body.visual-refresh.service-page.a-public .a-service-aside{display:block;margin-top:22px}body.visual-refresh .a-service-aside .vg-plan-art{max-width:280px;margin:0 auto 18px}body.visual-refresh .vg-guide-compact{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:600px){body.visual-refresh .vg-guide{grid-template-columns:1fr;padding:18px;gap:16px;margin:24px 0}body.visual-refresh .vg-guide>img{max-width:320px;margin:auto}body.visual-refresh .vg-guide h2{font-size:21px}body.visual-refresh .vg-path{gap:10px}body.visual-refresh .vg-path li{font-size:13px}body.visual-refresh .vg-guide-compact{grid-template-columns:104px minmax(0,1fr);padding:12px;gap:13px}body.visual-refresh .vg-guide-compact strong{font-size:14px}body.visual-refresh .vg-guide-compact figcaption span{font-size:12px}body.visual-refresh .u-company-cardbody{padding:18px}body.visual-refresh .u-company-date-row{padding:13px;gap:10px}body.visual-refresh .u-company-date-row strong{font-size:16px}body.visual-refresh .u-company-date-row small{font-size:12px}body.visual-refresh .a-reservation-panel{padding:16px}body.visual-refresh .a-schedule .d1-card{padding:14px;gap:10px}body.visual-refresh.goods-page .goods-card{padding:16px}body.visual-refresh.goods-page .goods-wrap dl{grid-template-columns:90px minmax(0,1fr)}body.visual-refresh.goods-page .goods-wrap dt,body.visual-refresh.goods-page .goods-wrap dd{padding:11px 7px;font-size:14px}}

/* Shared registered-photo / illustration selection (2026-10-29). */
body.visual-refresh .goods-top-image{margin:20px 0;max-width:100%}
body.visual-refresh .goods-top-image img{display:block;width:100%;height:auto;max-height:400px;object-fit:contain}
body.visual-refresh .goods-top-image figcaption{font-size:13px;color:var(--vg-muted);margin-top:6px}
body.visual-refresh.tenant-page .landing-hero .hero-media>img{min-height:0;height:auto;max-height:580px;object-fit:contain}
