/* Midnight navy, warm ivory, brushed gold and muted eucalyptus. */
:root{--paper:#f6f3ed;--white:#fffdf8;--ink:#202e3d;--muted:#626964;--green:#244b50;--tint:#e7eeea;--line:#dfddd4;--red:#a54e43;--gold:#89642f;--gold-light:#eee3cd;--navy:#172c40;--radius:14px}
body{background:var(--paper)}
.main-shell{background:var(--paper)}
.topbar{background:rgba(246,243,237,.97);border-bottom-color:#e3ddcf}
.brand{color:var(--navy)}
.brand svg{color:var(--gold)}
.sidebar{background:var(--navy);box-shadow:inset -1px 0 0 #ffffff08}
.sidebar .brand{color:#fff7e9}.sidebar .brand svg{color:#d3b47a}
.side-nav a{color:#c0cbd0;border-radius:12px}.side-nav a:hover{background:#ffffff0a}
.side-nav a.active{background:#dfc494;color:#172c40;box-shadow:0 5px 15px #09162522}
.side-note,.side-nav .entry .chevron{color:#bcc9ce}.side-note .text-link{color:#e8d4ae}.side-note .divider{border-color:#395062}
.right-rail{background:#e9eeea;border-color:#d9e0d9}.rail-top{color:#43635c}.rail-title{color:var(--navy)}.rail-rule{background:var(--gold);width:40px}.rail-stat{border-color:#d2dbd3}.rail-stat strong{color:#244b50}
.eyebrow{color:var(--gold)}.explore-heading h1{color:var(--navy)}
.explore-menu{background:var(--white);border-color:#ded7c9;color:var(--gold)}
.search-box{background:var(--white);border-color:#dbd5c8;box-shadow:0 3px 12px #4f3f2010}.search-box svg{color:var(--gold)}
.search-box:focus-within{outline-color:var(--gold)}
.qr-top{background:var(--navy);color:#f3deb7;padding:0 12px;box-shadow:0 3px 10px #172c4012}.qr-top:hover{background:#29465e}
.visit-shortcut{background:#eee3cd;color:#5f4927;border:1px solid #e0cfac}.visit-shortcut:hover{background:#e9d9b9}
.tabs button.active{color:#244b50;border-color:var(--gold)}
.neighborhood-map{background:#e8e9e0;border-color:#d7dccf;box-shadow:0 6px 18px #253e3210}
.neighborhood-map>svg{filter:sepia(.16) saturate(.7)}
.neighborhood-pin{background:#fffdf8;border-color:#d8ccb4;color:var(--navy);box-shadow:0 3px 8px #24352b12}.neighborhood-pin svg{color:#967036}.neighborhood-pin:hover{background:#f3e9d7;border-color:#ad8b50}
.map-explore,.map-pin{background:var(--navy)}.map-explore{color:#fff5e1}.map-pin.selected{background:#9a7539}.map-location-dot{background:#a86f51;box-shadow:0 0 0 7px #a86f511e}
.discovery-tile{background:var(--white);border:1px solid #e5dfd2;border-radius:17px;overflow:hidden;box-shadow:0 5px 16px #493d2310}
.tile-image .photo{border-radius:16px 16px 0 0}.tile-caption{padding:12px 12px 14px}.tile-meta span{color:#8a662f}.tile-experience{color:#557066}
.discovery-tile:nth-child(3n+2){background:#f0f3ed;border-color:#dce2d7}.discovery-tile:nth-child(3n){background:#f6efe5;border-color:#e6dac9}
.btn{background:var(--navy);box-shadow:0 3px 8px #172c4010}.btn:hover{background:#2b465e}.btn.secondary{background:#e3ebe5;color:#294c40;box-shadow:none}.btn.secondary:hover{background:#d7e2d9}.btn.outline{background:var(--white);border-color:#d8c9ae;color:#70582f;box-shadow:none}.btn.outline:hover{background:#f0e6d4}.btn.danger{background:#f6e6df;color:var(--red);box-shadow:none}.btn.danger:hover{background:#eed6cc}
.input,.compact-select{background:var(--white);border-color:#d7d5ca}.chip{background:#ede9df;color:#655c4b}.chip.selected{background:#e3ece5;border-color:#91aa98;color:#294c40}
.well{background:#e8eee6;border:1px solid #d9e2d5}.badge{background:#eee3cd;color:#765727;border-radius:7px}.avatar{background:#e6d9bf;color:#674e29}
.proof{color:#365f50}.reply{border-color:#bda16c}.count{color:#89642f}
.stamp-circle{border-color:#baa678;color:#8e784b}.stamp-circle.filled{background:#244b50;border-color:#244b50;color:#fff9ec}.coupon{border-color:#c6b28b}.chart-bar{background:#547b6c}
.server-banner{background:#e3ece2;color:#41624c}.server-banner::before{background:#69886a}
.bottom-nav{background:#fffdf8;border-top-color:#ded7c9;box-shadow:0 -5px 22px #3b34250a}.bottom-nav a.active{color:#244b50}.bottom-nav a.active::before{background:#ad8748;border-radius:3px}
.modal{background:var(--white)}#toast{background:var(--navy);color:#fff8ea}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#9a7539}
.live-qr svg,.inline-qr svg{background:#fff}
@media(max-width:760px){.qr-top{padding:0 10px}.discovery-grid{column-gap:12px;row-gap:18px}.tile-caption{padding:10px 10px 12px}.tile-caption h3{font-size:15px}.tile-price{font-size:11px}.topbar{box-shadow:0 2px 12px #44391f06}}
@media(max-width:360px){.tile-caption{padding:9px 8px 11px}.tile-caption h3{font-size:14px}}
@media print{body,.main-shell{background:#fff}.live-qr svg{background:#fff}}

/* ===== 접근성 보정 (모양·색은 그대로 두고: 글자 14px 이상, 누르는 영역 44px 이상, 글자 대비 4.5:1 이상, 한글은 단어 단위 줄바꿈) ===== */
body{word-break:keep-all;overflow-wrap:break-word}
small,.tiny,.label,.hint,.side-note,.rail-top,.mode-label,.btn.sm,.tools button,.tools select,.tools a,.proof,.disclosure,.chip,.review .chip,.error,.counter,.map-note,.badge,.verify-choice p,.chart-bar span,.chart-bar b,.footer-note,.disabled-note,.menu-label,.me-counts span,.bottom-nav a,.store-row .meta,.store-row .proof,.store-row .price,.location,.rail-stat,.eyebrow,.section-head .eyebrow,.neighborhood-pin,.map-explore,.map-disclaimer,.count,.filterline .check,.filterline .text-link,.tile-meta,.tile-price,.tile-experience,.qr-top,.visit-shortcut,.server-banner,.server-banner a,.admin-tabs a,.scanner-error,.file-table,.compact-select,.integration-warning,.owner-progress a,.privacy-note,.owner-side-steps a,.discovery-tile .tile-price,.discovery-tile .tile-meta,.discovery-tile .tile-experience{font-size:14px}
@media(max-width:760px){.tile-price,.location,.qr-top,.tools a,.discovery-tile .tile-price{font-size:14px}}
@media(max-width:360px){.tile-price,.neighborhood-pin,.tabs button,.location{font-size:14px}}
.icon-btn,.header-actions>.icon-btn{min-width:44px;min-height:44px}
.chip,.tabs button,.btn.sm,button.text-link,.check,.location,.filterline .text-link,.tools select,.compact-select,.range-choices .chip,.admin-tabs a,.owner-side-steps a{min-height:44px}
.chip,.btn.sm,.filterline .text-link{display:inline-flex;align-items:center}
.neighborhood-pin::before,.map-explore::before{content:'';position:absolute;inset:-8px}
.search-box input{min-height:44px}
.map-disclaimer{color:#56616d}
.stamp-circle{color:#6f5a2f}

.tabs button,.detail-tabs button,button.text-link,.switch-row .hint{font-size:14px}
button.text-link{min-width:44px;display:inline-flex;align-items:center;justify-content:center}
.switch{height:44px;border-block:8.5px solid transparent;background-clip:padding-box;margin-block:-8.5px}

.tile-caption .icon-btn{min-width:44px;height:44px;margin-top:-11px;margin-bottom:-7px;margin-right:-11px}
.tabs button{min-width:44px}
.explore-menu{flex-shrink:0;min-width:44px}
