:root{--bg:#f2f2f3;--paper:#fff;--text:#1d1f20;--accent:#5980a6;--accent-100:#eef6ff;--accent-300:#b5d9fd;--accent-700:#416180;--accent-800:#2c455d;--accent-900:#1d2d3d;--n-200:#e7e7ea;--n-300:#d4d4d7;--n-400:#b7b7ba;--n-600:#7a7a7d;--n-700:#5d5d60;--n-800:#424244;--font:"Pretendard Variable",Pretendard,"Apple SD Gothic Neo",sans-serif}
*{box-sizing:border-box}body{min-height:100vh;margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.55;display:flex;flex-direction:column}button,input,textarea{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar{height:64px;padding:0 30px;background:var(--accent-900);color:#fff;display:flex;align-items:center;justify-content:space-between}.topbar-left,.brand,.gnb,.userchip,.crumb-meta,.actions,.tags,.inline{display:flex;align-items:center}.topbar-left{gap:42px}.brand{gap:12px;color:inherit;font-size:21px;font-weight:700;text-decoration:none}.brand-mark{width:11px;height:11px;border:2px solid var(--accent-300)}.gnb{gap:30px}.gnb a{color:#d6ebff;text-decoration:none;padding:21px 0}.gnb .active{border-bottom:3px solid var(--accent-300);color:#fff;font-weight:700}.userchip{gap:16px;color:#d6ebff}.logout{border:1px solid #416180;padding:7px 14px}.crumbbar{height:42px;padding:0 30px;border-bottom:1px solid var(--n-300);display:flex;align-items:center;justify-content:space-between;color:var(--n-700);font-size:12.5px}.crumb-meta{gap:22px}.status-ok{color:var(--accent-700);font-weight:700}.page{flex:1;width:100%;max-width:1440px;margin:auto;padding:42px 30px 56px}.site-footer{flex:none;width:100%;padding:18px 30px;border-top:1px solid var(--n-300);color:var(--n-600);font-size:12px;text-align:center}.stack{display:flex;flex-direction:column;gap:22px}h1,h2,h3,p{margin-top:0}h1{font-size:36px;line-height:1.2;margin-bottom:8px}h2{font-size:24px}h3{font-size:19px;margin-bottom:0}.intro{font-size:15px;color:var(--n-700);max-width:780px}.blueprint{position:relative;border:1px solid var(--n-400);background:transparent}.corner{position:absolute;width:9px;height:9px}.corner:before,.corner:after{content:"";position:absolute;background:var(--accent)}.corner:before{left:0;top:4px;width:9px;height:1px}.corner:after{left:4px;top:0;width:1px;height:9px}.tl{top:-5px;left:-5px}.tr{top:-5px;right:-5px}.bl{bottom:-5px;left:-5px}.br{bottom:-5px;right:-5px}.form{padding:28px;display:flex;flex-direction:column;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:12.5px;font-weight:700;color:var(--n-800)}.req{color:var(--accent-700)}.input{width:100%;min-height:42px;padding:9px 12px;background:var(--paper);border:1px solid var(--n-400);color:var(--text)}textarea.input{min-height:100px;resize:vertical}.inline{gap:9px}.help,.note{font-size:12.5px;color:var(--n-600)}.btn{min-height:40px;padding:0 18px;border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;font-weight:600;white-space:nowrap}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-secondary{border-color:var(--n-400)}.btn-lg{min-height:48px;padding:0 34px}.btn:disabled{opacity:.5;cursor:not-allowed}.tags{gap:7px;flex-wrap:wrap}.tag{display:inline-flex;padding:4px 11px;border:0;background:var(--accent-100);color:var(--accent-800);font-size:12px}.tag-button{cursor:pointer}.tag-neutral{background:#f5f5f8;color:var(--n-800);border:1px solid var(--n-300)}.tag-outline{background:transparent;border:1px solid var(--accent)}.form-actions{display:flex;align-items:center;gap:16px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--n-400);color:var(--n-600);font-size:11px;letter-spacing:.06em}.table td{padding:10px;border-bottom:1px solid var(--n-300)}.table .num{text-align:right}.table a{color:var(--accent-700)}.section-head{display:flex;align-items:center;justify-content:space-between}.empty{padding:18px;color:var(--n-600);text-align:center}.data-table td:nth-child(2){color:var(--n-700)}.error{padding:12px;border-left:3px solid #8b3a36;background:#fff1f0;color:#6f2521}.report-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.actions{gap:10px}.map-frame{height:470px;margin-bottom:28px}.map{height:100%}.map-fallback{position:absolute;inset:0;display:grid;place-items:center;background:var(--bg);z-index:5;text-align:center}.map-fallback[hidden]{display:none}.map-toolbar{position:absolute;right:16px;top:16px;display:flex;background:var(--paper);border:1px solid var(--n-400);z-index:4}.map-toolbar button{padding:8px 14px;border:0;border-left:1px solid var(--n-400);background:transparent;cursor:pointer}.map-toolbar button:first-child{border-left:0}.map-toolbar .active{background:var(--accent);color:#fff}.map-note{position:absolute;left:16px;bottom:14px;background:rgba(242,242,243,.9);padding:4px 7px;color:var(--n-600);font-size:11.5px;z-index:4}.parcel-label{background:#fff;border:1px solid var(--accent-800);padding:6px 8px;font-size:11px;box-shadow:0 2px 5px #0002}.parcel-label strong{display:block}.facility-dot{display:block;width:10px;height:10px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #3335}.report-grid{display:grid;grid-template-columns:330px 1fr;gap:44px;align-items:start}.scoreboard{padding:25px}.kicker{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--n-600)}.score-line{display:flex;align-items:flex-start;gap:7px}.score-num{font-size:112px;line-height:.9;font-weight:700;color:var(--accent-800)}.denominator{padding-top:10px;font-size:19px;color:var(--n-600)}.grade{font-size:34px;font-weight:700;color:var(--accent-700)}.analysis-copy{font-size:14.5px;line-height:1.75}.analysis-copy .lead{font-size:17px;font-weight:600}.analysis-copy .highlight{border-left:2px solid var(--accent);padding-left:15px;color:var(--accent-800)}.evidence{margin-top:28px}.warning{margin-bottom:16px;padding:12px;background:#fff8e5;border-left:3px solid #9b7220}.prompt-box{margin-top:14px;padding:12px;background:var(--accent-100)}
.purpose-card{margin:0 0 20px;padding:22px 24px;background:var(--paper);border:1px solid var(--n-300)}.purpose-pill{display:inline-block;margin-top:13px;padding:6px 12px;background:var(--accent-100);color:var(--accent-800);font-size:12.5px}.narrative-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;border-top:1px solid var(--n-300)}.narrative-grid>div{padding:17px 18px 0;border-left:1px solid var(--n-300)}.narrative-grid>div:first-child{padding-left:0;border-left:0}.narrative-grid p{margin:6px 0 0;color:var(--n-800)}.narrative-label{font-size:12px;font-weight:700;color:var(--accent-700)}.use-card{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;margin-bottom:30px;padding:24px;background:var(--accent-900);color:#fff}.use-card h2{margin:7px 0 8px;font-size:25px}.use-card p{margin:0;color:#d6ebff}.use-basis{padding-left:25px;border-left:1px solid var(--accent-700)}.use-basis strong{font-size:12px;color:var(--accent-300)}.use-basis span{display:block;margin-top:10px;color:var(--accent-300);font-size:11.5px}.score-disclaimer{margin:15px 0 0;padding-top:13px;border-top:1px solid var(--n-300);font-size:11.5px;color:var(--n-600)}.axis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.axis-card{padding:17px;border:1px solid var(--n-300);background:var(--paper)}.axis-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.axis-score{font-size:22px;font-weight:700;color:var(--accent-800)}.axis-card dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:12.5px}.axis-card dt{color:var(--n-600)}.axis-card dd{margin:0;text-align:right}.notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.notice-grid>div{padding:20px 22px;border:1px solid var(--n-300);background:var(--paper)}.notice-grid ul,.notice-grid ol{margin:12px 0 0;padding-left:20px;color:var(--n-700)}.report-footer{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding-top:18px;border-top:1px solid var(--n-400);color:var(--n-600);font-size:12px}.report-footer strong{color:var(--n-800)}
.address-row{align-items:stretch}.address-search{position:relative;flex:1}.address-options{position:absolute;z-index:20;top:calc(100% + 3px);left:0;right:0;max-height:300px;overflow:auto;border:1px solid var(--n-400);background:var(--paper);box-shadow:0 5px 14px #0002}.address-option{display:block;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--n-300);background:var(--paper);text-align:left;cursor:pointer}.address-option:last-child{border-bottom:0}.address-option.active,.address-option:hover{background:var(--accent-100)}.address-option small{display:block;color:var(--n-600)}.selected-house{padding:10px 12px;border-left:3px solid var(--accent);background:var(--accent-100);color:var(--accent-800)}.house-modal{width:min(680px,calc(100% - 32px));padding:0;border:1px solid var(--n-400);background:var(--bg);color:var(--text);box-shadow:0 18px 50px #0004}.house-modal::backdrop{background:#1d2d3daa}.house-modal form{padding:25px}.modal-head,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:18px}.modal-head h2{margin:4px 0 0}.modal-close{border:0;background:transparent;font-size:28px;cursor:pointer}.house-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.house-card{display:block;padding:15px;border:1px solid var(--n-400);background:var(--paper);cursor:pointer}.house-card:has(input:checked){border:2px solid var(--accent);padding:14px;background:var(--accent-100)}.house-card input{margin-right:7px}.house-card dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:10px 0 0;font-size:12.5px}.house-card dt{color:var(--n-600)}.house-card dd{margin:0;text-align:right}.modal-actions{justify-content:flex-end}
@media(max-width:900px){.gnb,.userchip,.crumb-meta{display:none}.topbar{padding:0 18px}.crumbbar{padding:0 18px}.page{padding:28px 18px}.report-grid,.notice-grid,.use-card{grid-template-columns:1fr}.narrative-grid,.axis-grid{grid-template-columns:1fr 1fr}.use-basis{padding:18px 0 0;border-left:0;border-top:1px solid var(--accent-700)}.report-head{align-items:flex-start;flex-direction:column}.map-frame{height:420px}.score-num{font-size:84px}.inline{align-items:stretch;flex-direction:column}.form-actions{align-items:flex-start;flex-direction:column}.report-footer{flex-direction:column}}
@media(max-width:560px){.narrative-grid,.axis-grid,.house-cards{grid-template-columns:1fr}.narrative-grid>div{padding:14px 0;border-left:0;border-bottom:1px solid var(--n-300)}}
.report-keywords{margin:-12px 0 18px}.report-map{position:relative;height:520px;margin:0 0 20px;overflow:hidden;border:1px solid var(--n-400)}.report-map .map{height:100%}.report-block{margin-bottom:20px;padding:22px;background:var(--paper);border:1px solid var(--n-300)}.report-block h2{margin:5px 0 8px;font-size:20px}.report-block ul{margin:9px 0 0;padding-left:18px}.report-block p:last-child{margin-bottom:0}.report-lists{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.report-lists .report-block{margin-bottom:0}.report-block .axis-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.report-block .axis-card strong,.report-block .axis-card small{display:block}.report-block .axis-score{display:block;margin:4px 0;color:var(--accent-700);font-size:19px;white-space:nowrap}.report-block .axis-card small{color:var(--n-600);font-size:11.5px;line-height:1.4}.evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0 16px}.evidence-item{padding:12px 14px;border:1px solid var(--n-300)}.evidence-item strong{display:block;font-size:12.5px;color:var(--n-800)}.evidence-item b{display:block;margin:5px 0 2px;font-size:18px;color:var(--accent-700)}.evidence-item small{color:var(--n-600);font-size:11.5px}.ic{width:1.05em;height:1.05em;margin-right:6px;vertical-align:-.16em;flex:none}h3 .ic,.narrative-label .ic{color:var(--accent-700)}.label-good .ic{color:#3d7a52}.label-warn .ic{color:#9b7220}.evidence-item strong .ic,.axis-card strong .ic{color:var(--n-600)}.facility-section{margin-top:26px}.facility-section:first-child{margin-top:14px}.facility-section h4{margin:0;font-size:15px}.facility-section .band{margin:6px 0 8px;font-size:11.5px;color:var(--n-600)}.facility-section .src{margin:6px 0 0;font-size:10.5px;color:var(--n-400);text-align:right}.facility-section .empty{padding:14px 10px;border:1.5px dashed var(--n-300);color:var(--n-600);font-size:12.5px;text-align:center}
@media(max-width:900px){.report-map{height:400px}.report-lists{grid-template-columns:1fr}.report-block .axis-grid{grid-template-columns:1fr}}
.loading-modal{width:420px;max-width:calc(100vw - 40px);padding:0;border:0;border-radius:16px;color:var(--s4-ink,var(--text));box-shadow:0 24px 64px rgba(23,32,42,.35)}.loading-modal::backdrop{background:rgba(23,32,42,.45)}.lm-head{display:flex;flex-direction:column;gap:5px;padding:26px 28px 20px}.lm-head h3{font-size:17px}.lm-head .target{color:var(--s4-faint,var(--n-600));font-size:13px}.lm-steps{margin:0;padding:0 28px;list-style:none}.lm-step{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--s4-line-soft,#f3f5f7)}.lm-step .icon{flex:none;width:22px;height:22px;border-radius:50%}.lm-step .meta{margin-left:auto;color:var(--s4-faint,var(--n-600));font-size:12px}.lm-step[data-state="pending"]{color:var(--s4-faint,var(--n-600))}.lm-step[data-state="pending"] .icon{border:2px solid #eef1f4}.lm-step[data-state="active"] .icon{border:2.5px solid var(--s4-tint,var(--accent-100));border-top-color:var(--s4-accent,var(--accent));animation:lm-spin .8s linear infinite}.lm-step[data-state="active"] .label{font-weight:650}.lm-step[data-state="done"]{color:var(--s4-faint,var(--n-600))}.lm-step[data-state="done"] .icon{display:grid;place-items:center;background:var(--s4-accent,var(--accent));color:#fff}.lm-step[data-state="done"] .icon::before{content:"✓"}.lm-step[data-state="error"]{color:#9c4a42;font-weight:650}.lm-step[data-state="error"] .icon{display:grid;place-items:center;background:#b4635b;color:#fff}.lm-step[data-state="error"] .icon::before{content:"!"}.lm-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 28px 22px}.lm-foot .hint{color:var(--s4-faint,var(--n-600));font-size:12px}.lm-foot .error-msg{color:#9c4a42;font-size:12px}.lm-actions{display:flex;gap:8px;margin-left:auto}.lm-btn{height:36px;padding:0 18px;border:0;border-radius:9px;background:#f3f5f7;color:var(--s4-sub,var(--n-700));font-weight:650}.lm-btn-primary{background:var(--s4-primary,var(--accent-800));color:#fff}@keyframes lm-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.lm-step[data-state="active"] .icon{animation:none}}
.map-legend{position:absolute;left:16px;top:16px;z-index:4;padding:8px 10px;background:rgba(255,255,255,.94);border:1px solid var(--n-400);font-size:11.5px}.map-legend:empty{display:none}.legend-item{display:flex;align-items:center;gap:7px;margin-top:4px}.legend-item:first-child{margin-top:0}.legend-swatch{width:10px;height:10px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #3335}.legend-parcel{border-radius:0;background:#5980a655;border-color:#2c455d}.facility-dot{width:12px;height:12px;padding:0;cursor:pointer}.facility-info{min-width:160px;padding:9px 11px;background:#fff;border:1px solid var(--n-400);box-shadow:0 3px 10px #0003;font-size:12px;line-height:1.5}.facility-info strong,.facility-info span{display:block}.facility-info span{color:var(--n-700)}.ai-loading:before{content:"";display:inline-block;width:12px;height:12px;margin-right:6px;border:2px solid var(--n-400);border-top-color:var(--accent);border-radius:50%;vertical-align:-2px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.ai-loading:before{animation:none}}
@media print{.topbar,.landing-nav,.crumbbar,.actions,.map-toolbar{display:none}.page{max-width:none;padding:0}.map-frame{height:390px;break-inside:avoid}.report-grid,.evidence,.purpose-card,.use-card,.notice-grid{break-inside:avoid}body{background:#fff}}

/* ── 4a 디자인 ─────────────────────────────────────────────────────
   상단바는 두 화면이 공유하므로 전역, 나머지는 검색 화면에만 적용한다. */
:root{--s4-bg:#F5F6F8;--s4-card:#fff;--s4-ink:#17202A;--s4-sub:#5D6B7A;--s4-faint:#8B98A5;--s4-line:#E3E7EC;--s4-line-soft:#EEF1F4;--s4-navy:#1C2938;--s4-primary:#2E4B6B;--s4-accent:#3D6491;--s4-tint:#EDF2F8;--s4-tint-soft:#F6F9FC;--s4-radius:14px;--s4-radius-s:10px;--s4-ease:cubic-bezier(.4,0,.2,1)}
.topbar{height:60px;padding:0 40px;background:var(--s4-navy)}
.topbar-left{gap:40px}
.brand{gap:10px;font-size:15.5px}
.brand-mark{width:22px;height:22px;border:0;border-radius:6px;background:var(--s4-accent);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff}
.gnb{gap:6px;font-size:13.5px}
.gnb a{padding:7px 14px;border-radius:999px;color:#9FB1C4}
.gnb .active{background:rgba(255,255,255,.14);border-bottom:0;color:#fff;font-weight:600}
.userchip{gap:8px;font-size:13px;color:#9FB1C4}

[data-page="search"]{background:var(--s4-bg);color:var(--s4-ink)}
[data-page="search"] .crumbbar{height:40px;padding:0 40px;border-bottom:1px solid var(--s4-line);color:var(--s4-faint)}
[data-page="search"] .status-ok{color:var(--s4-accent)}
[data-page="search"] .page{max-width:1280px;padding:56px 40px 72px}
[data-page="search"] .page-head{max-width:760px;margin:0 auto 24px;text-align:center;transition:max-width .45s var(--s4-ease)}
[data-page="search"] .page-head h1{margin:0 0 10px;font-size:28px;letter-spacing:-.02em}
[data-page="search"] .page-head .intro{margin:0;max-width:none;font-size:14.5px;color:var(--s4-sub)}
[data-page="search"].map-open .page-head{max-width:none;text-align:left}

/* 레이아웃 전환: 지도 패널이 열리면 폼이 왼쪽으로 밀린다 */
[data-page="search"] .layout{display:grid;grid-template-columns:minmax(0,1fr) 0;gap:0;align-items:start;transition:grid-template-columns .45s var(--s4-ease),gap .45s var(--s4-ease)}
[data-page="search"] .layout.map-open{grid-template-columns:minmax(0,1fr) 520px;gap:32px}
[data-page="search"] .form-col{max-width:760px;width:100%;margin:0 auto;min-width:0;display:flex;flex-direction:column;gap:24px;transition:max-width .45s var(--s4-ease)}
[data-page="search"] .layout.map-open .form-col{max-width:none}

[data-page="search"] .card{background:var(--s4-card);border:1px solid var(--s4-line);border-radius:var(--s4-radius);box-shadow:0 1px 3px rgba(23,32,42,.04)}
[data-page="search"] .form{display:flex;flex-direction:column;gap:20px;padding:28px}
[data-page="search"] .field{gap:8px}
[data-page="search"] .field label{font-size:13px}
[data-page="search"] .field label .opt{font-weight:400;color:var(--s4-faint)}
[data-page="search"] .req{color:var(--s4-accent)}
[data-page="search"] .input{height:46px;padding:0 16px;border:1px solid #DCE1E7;border-radius:var(--s4-radius-s);font-size:15px}
[data-page="search"] .input:focus{border:1.5px solid var(--s4-accent);box-shadow:0 0 0 3px var(--s4-tint);outline:none}
[data-page="search"] textarea.input{height:auto;min-height:76px;padding:13px 16px;background:#FAFBFC}
[data-page="search"] .btn{min-height:0;height:46px;padding:0 20px;border:0;border-radius:var(--s4-radius-s);background:var(--s4-tint);color:var(--s4-primary);font-size:14px;font-weight:650}
[data-page="search"] .btn-primary{height:48px;padding:0 34px;background:var(--s4-primary);color:#fff;font-size:15px;box-shadow:0 2px 6px rgba(46,75,107,.3)}
[data-page="search"] .btn:disabled{background:#DCE1E7;color:var(--s4-faint);opacity:1;box-shadow:none}
[data-page="search"] .help,[data-page="search"] .note{font-size:12.5px;color:var(--s4-faint)}
[data-page="search"] .status{font-size:13px;color:var(--s4-sub)}
[data-page="search"] .form-actions{gap:16px;padding-top:18px;border-top:1px solid var(--s4-line-soft)}
[data-page="search"] .address-row{align-items:stretch;gap:10px}
[data-page="search"] .address-options{border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 12px 32px rgba(23,32,42,.14);overflow:hidden}
[data-page="search"] .address-option{border-bottom:1px solid #F3F5F7}
[data-page="search"] .address-option.active,[data-page="search"] .address-option:hover{background:#F7FAFD}
[data-page="search"] .history{padding:24px 26px}
[data-page="search"] .history .table th{border-bottom:1px solid var(--s4-line);color:var(--s4-faint)}
[data-page="search"] .history .table td{border-bottom:1px solid var(--s4-line-soft)}
[data-page="search"] .history .tag{border-radius:999px;background:var(--s4-tint);color:var(--s4-primary);font-weight:650}

/* 주소 확인 바 + 지도 토글 */
[data-page="search"] .confirm-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 14px;background:var(--s4-tint);border-radius:var(--s4-radius-s)}
[data-page="search"] .confirm-bar[hidden]{display:none}
[data-page="search"] .confirm-bar .info{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;color:var(--s4-primary)}
[data-page="search"] .confirm-bar .check{flex:none;width:18px;height:18px;border-radius:50%;background:var(--s4-accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px}
[data-page="search"] .map-toggle{display:inline-flex;align-items:center;gap:7px;flex:none;height:34px;padding:0 16px;background:#fff;border:1px solid #C7D6E6;border-radius:8px;font-size:13px;font-weight:650;color:var(--s4-primary);cursor:pointer}
[data-page="search"] .map-toggle .dot{width:9px;height:9px;border-radius:50%;border:2.5px solid var(--s4-accent)}
[data-page="search"] .map-toggle[aria-pressed="true"]{background:var(--s4-primary);border-color:var(--s4-primary);color:#fff}
[data-page="search"] .map-toggle[aria-pressed="true"] .dot{border-color:#fff}

/* 지도 패널 슬라이드 인 */
[data-page="search"] .map-panel{display:flex;flex-direction:column;overflow:hidden;background:var(--s4-card);border:1px solid var(--s4-line);border-radius:var(--s4-radius);box-shadow:-8px 12px 32px rgba(23,32,42,.1);opacity:0;transform:translateX(32px);visibility:hidden;transition:opacity .4s .05s,transform .45s var(--s4-ease) .05s,visibility 0s .5s}
[data-page="search"] .layout.map-open .map-panel{opacity:1;transform:none;visibility:visible;transition-delay:.05s,.05s,0s}
[data-page="search"] .map-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--s4-line-soft)}
[data-page="search"] .map-panel-head h3{margin:0;font-size:15px}
[data-page="search"] .map-panel-head .addr{display:block;margin-top:2px;font-size:12px;color:var(--s4-faint)}
[data-page="search"] .map-close{flex:none;width:30px;height:30px;border:0;border-radius:8px;background:#F3F5F7;color:var(--s4-sub);font-size:15px;cursor:pointer}
[data-page="search"] .map-body{position:relative;height:480px;background:#E9EDF0}
[data-page="search"] .map{height:100%}
[data-page="search"] .map-foot{padding:12px 16px;background:var(--s4-tint);font-size:12.5px;color:var(--s4-sub)}

/* 추천 질문 드롭다운 */
[data-page="search"] .prompt-wrap{position:relative}
[data-page="search"] .suggestions{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:10;display:flex;flex-direction:column;background:#fff;border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 12px 32px rgba(23,32,42,.14);overflow:hidden}
[data-page="search"] .suggestions[hidden]{display:none}
[data-page="search"] .suggestions .cap{padding:10px 16px 6px;font-size:11.5px;font-weight:700;letter-spacing:.04em;color:var(--s4-faint)}
[data-page="search"] .suggestions button{padding:10px 16px;border:0;border-top:1px solid #F3F5F7;background:#fff;text-align:left;font-size:13.5px;color:var(--s4-primary);cursor:pointer}
[data-page="search"] .suggestions button:hover{background:#F7FAFD}

/* 좁은 화면에서는 옆으로 밀 공간이 없으므로 폼 위로 펼친다 */
@media(max-width:1023px){
  [data-page="search"] .layout{grid-template-columns:1fr}
  [data-page="search"] .layout.map-open{grid-template-columns:1fr;gap:24px}
  [data-page="search"] .layout:not(.map-open) .map-panel{display:none}
  [data-page="search"] .layout.map-open .map-panel{order:-1;transform:translateY(-16px)}
  [data-page="search"].map-open .page-head{text-align:left}
}
@media(max-width:900px){
  [data-page="search"] .topbar,[data-page="search"] .crumbbar{padding:0 18px}
  [data-page="search"] .page{padding:28px 18px}
  [data-page="search"] .address-row{flex-direction:row}
}

/* ── 4a 보고서 디자인: 정성 요약 구조는 유지하고 시각 토큰만 공유한다. */
[data-page="report"]{background:var(--s4-bg);color:var(--s4-ink)}
[data-page="report"] .crumbbar{height:40px;padding:0 max(28px,calc((100vw - 1200px)/2));border-color:var(--s4-line);color:var(--s4-faint)}
[data-page="report"] .page{max-width:1280px;padding:44px 40px 64px}
[data-page="report"] .report-head{align-items:center;margin-bottom:20px;padding:4px}
[data-page="report"] .report-head h1{margin:0 0 12px;font-size:30px;letter-spacing:-.02em}
[data-page="report"] .actions{gap:10px}
[data-page="report"] .btn{height:42px;min-height:0;padding:0 20px;border:0;border-radius:10px;background:var(--s4-tint);color:var(--s4-primary);font-weight:650}
[data-page="report"] .btn-primary{background:var(--s4-primary);color:#fff;box-shadow:0 2px 6px rgba(46,75,107,.3)}
[data-page="report"] .tag{border-radius:999px;background:var(--s4-tint);color:var(--s4-primary);font-weight:650}
[data-page="report"] .tag-neutral{background:#fff;border-color:var(--s4-line);color:var(--s4-sub);font-weight:500}
[data-page="report"] .report-keywords{margin:0 0 16px;padding:0 4px}
[data-page="report"] .qa-card{margin-bottom:20px;overflow:hidden;background:#fff;border:1px solid var(--s4-line);border-radius:var(--s4-radius);box-shadow:0 1px 3px rgba(23,32,42,.04)}
[data-page="report"] .qa-card[hidden]{display:none}
[data-page="report"] .qa-question{display:flex;align-items:center;gap:12px;padding:16px 24px;background:var(--s4-tint)}
[data-page="report"] .qa-question span,[data-page="report"] .qa-status{flex:none;padding:4px 11px;border-radius:999px;background:var(--s4-primary);color:#fff;font-size:11px;font-weight:700}
[data-page="report"] .qa-answer{padding:22px 24px}
[data-page="report"] .qa-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px}
[data-page="report"] .qa-status{background:#eaf3ec;color:#3d7a52}
[data-page="report"] .qa-status.is-error{background:#f6e9e7;color:#9c4a42}
[data-page="report"] .qa-answer>p{margin-bottom:0;color:var(--s4-sub)}
[data-page="report"] .qa-callout{margin-top:14px!important;padding:12px 16px;border-radius:10px;background:var(--s4-tint-soft);color:var(--s4-primary)!important;line-height:1.75;white-space:pre-line}
[data-page="report"] .report-map,[data-page="report"] .report-block,[data-page="report"] .evidence,[data-page="report"] .notice-grid>div{background:#fff;border:1px solid var(--s4-line);border-radius:var(--s4-radius);box-shadow:0 1px 3px rgba(23,32,42,.04)}
[data-page="report"] .report-block{padding:24px}
[data-page="report"] .report-block h3{font-size:17px}
[data-page="report"] .report-block h2{color:var(--s4-ink)}
[data-page="report"] .report-block p,[data-page="report"] .report-block li{color:var(--s4-sub)}
[data-page="report"] .summary-use-detail{margin-top:12px}
[data-page="report"] .use-block{background:var(--s4-tint-soft);border-color:#DCE6F0}
[data-page="report"] .report-block .axis-card{border-color:var(--s4-line-soft);border-radius:10px;background:var(--s4-tint-soft)}
[data-page="report"] .report-block .axis-score{color:var(--s4-accent)}
[data-page="report"] .evidence-item{border-color:var(--s4-line-soft);border-radius:10px;background:var(--s4-tint-soft)}
[data-page="report"] .evidence-item b{color:var(--s4-accent)}
[data-page="report"] .facility-section h4 .ic{color:var(--s4-accent)}
[data-page="report"] .facility-section .band,[data-page="report"] .facility-section .src{color:var(--s4-faint)}
[data-page="report"] .facility-section .empty{border-color:var(--s4-line);color:var(--s4-faint);border-radius:10px}
[data-page="report"] h3 .ic,[data-page="report"] .narrative-label .ic{color:var(--s4-accent)}
[data-page="report"] .map-toolbar{overflow:hidden;border-color:var(--s4-line);border-radius:9px;box-shadow:0 2px 8px rgba(23,32,42,.1)}
[data-page="report"] .map-toolbar .active{background:var(--s4-primary)}
[data-page="report"] .map-legend,[data-page="report"] .map-note{border-color:var(--s4-line);border-radius:8px;background:rgba(255,255,255,.94)}
[data-page="report"] .evidence{padding:22px 28px}
[data-page="report"] .evidence .table th{border-color:var(--s4-line);color:var(--s4-faint)}
[data-page="report"] .evidence .table td{border-color:var(--s4-line-soft)}
[data-page="report"] .notice-grid{gap:14px}
[data-page="report"] .notice-grid>div{padding:22px 26px}
[data-page="report"] .report-footer{border-color:var(--s4-line);color:var(--s4-faint)}
@media(max-width:900px){[data-page="report"] .crumbbar{padding:0 20px}[data-page="report"] .page{padding:28px 18px}[data-page="report"] .report-head{align-items:flex-start}}
@media print{[data-page="report"] .qa-card,[data-page="report"] .report-map,[data-page="report"] .report-block{break-inside:avoid}}

/* 시설 세부 유형 표와 지도 범례 */
.facility-subgroup{margin-top:14px}.facility-subgroup:first-of-type{margin-top:10px}.facility-subgroup h5{margin:0;font-size:13px;color:var(--n-800)}.facility-subgroup .section-head{margin-bottom:4px}.map-legend{max-height:calc(100% - 32px);overflow:auto}
@media print{[data-page="report"] .evidence{break-inside:auto}[data-page="report"] .facility-subgroup{break-inside:avoid}}

/* 분석 반경 선택과 간소화한 보고서 범례 */
[data-page="search"] .radius-field{margin:0;padding:0;border:0}
[data-page="search"] .radius-field legend{margin-bottom:7px;font-size:12.5px;font-weight:700;color:var(--s4-sub,var(--n-800))}
[data-page="search"] .radius-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:420px}
[data-page="search"] .radius-options label{cursor:pointer}
[data-page="search"] .radius-options input{position:absolute;opacity:0;pointer-events:none}
[data-page="search"] .radius-options span{display:flex;align-items:center;justify-content:center;height:42px;border:1px solid var(--s4-line,var(--n-400));border-radius:9px;background:#fff;color:var(--s4-sub,var(--n-700));font-weight:650}
[data-page="search"] .radius-options input:checked+span{border-color:var(--s4-accent,var(--accent));background:var(--s4-tint,var(--accent-100));color:var(--s4-primary,var(--accent-800));box-shadow:inset 0 0 0 1px var(--s4-accent,var(--accent))}
[data-page="search"] .radius-options input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
[data-page="report"] .notice-grid{grid-template-columns:1fr}
.legend-line{width:16px;height:0;border:0;border-top:2px dashed #5980a6;border-radius:0;box-shadow:none}
.legend-line-walk{border-top-style:solid;border-top-color:#4d786c}

/* 공통 브랜드 로고와 보고서 대상 주택 요약 */
.brand-logo{display:block;flex:none;width:32px;height:32px}
[data-page="report"] .report-property{flex:1;min-width:0}
[data-page="report"] .house-summary{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:10px;margin-top:14px}
[data-page="report"] .house-summary-card{min-width:0;margin:0;padding:13px 14px;border:1px solid var(--s4-line,var(--n-300));border-radius:10px;background:#fff}
[data-page="report"] .house-summary-card dt{margin:0 0 5px;color:var(--s4-faint,var(--n-600));font-size:11.5px;font-weight:650}
[data-page="report"] .house-summary-card dd{margin:0;color:var(--s4-ink,var(--text));font-size:14px;font-weight:700;line-height:1.4}
[data-page="report"] .house-summary-card small{display:block;margin-top:4px;color:var(--s4-faint,var(--n-600));font-size:11px;line-height:1.4}
[data-page="report"] .house-summary-note{margin:9px 2px 0;color:var(--s4-faint,var(--n-600));font-size:11.5px}
[data-page="report"] .house-summary-note[hidden]{display:none}
[data-page="report"] .house-summary-unverified{display:block}
[data-page="report"] .house-summary-unverified>div{display:inline-flex;flex-direction:column;gap:2px;padding:10px 14px;border:1px solid var(--s4-line,var(--n-300));border-radius:10px;background:#fff}
[data-page="report"] .house-summary-unverified strong{font-size:13px}
[data-page="report"] .house-summary-unverified span{color:var(--s4-faint,var(--n-600));font-size:11.5px}
[data-page="report"] .house-summary-section{margin-bottom:28px;padding:22px 24px;background:#fff;border:1px solid var(--s4-line,var(--n-300));border-radius:var(--s4-radius,12px);box-shadow:0 1px 3px rgba(23,32,42,.04)}
[data-page="report"] .house-summary-section .house-summary{margin-top:16px}
[data-page="report"] .report-footer{display:block;padding-top:14px;border-top:1px solid var(--s4-line,var(--n-300));line-height:1.75}
[data-page="report"] .report-meta{display:flex;flex-direction:column;gap:2px}
[data-page="report"] .report-notes{margin-top:6px}
[data-page="report"] .report-notes ul{margin:0;padding:0;list-style:none}
[data-page="report"] .report-notes li::before{content:"· ";}
[data-page="report"] .facility-dot{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;background:transparent;filter:drop-shadow(0 2px 3px rgba(15,23,42,.32));transition:transform .15s ease,filter .15s ease}
[data-page="report"] .facility-dot img{display:block;width:30px;height:30px}
[data-page="report"] .facility-dot:hover,[data-page="report"] .facility-dot:focus-visible{transform:scale(1.15);filter:drop-shadow(0 3px 5px rgba(15,23,42,.4))}
[data-page="report"] .facility-dot-multiple{width:26px;height:26px;border:2px solid #fff;border-radius:50%;background:var(--s4-primary,#2E4B6B);color:#fff;font-size:10px;font-weight:700;line-height:22px;box-shadow:0 0 0 1px rgba(15,23,42,.4)}
[data-page="report"] .facility-dot-fallback{width:26px;height:26px;border:2px solid #fff;border-radius:50%;background:#6D7686;box-shadow:0 0 0 1px rgba(15,23,42,.4)}
[data-page="report"] .legend-marker{width:20px;height:20px;flex:none}
[data-page="report"] .legend-swatch{box-shadow:0 0 0 1px rgba(15,23,42,.55)}
@media(max-width:900px){[data-page="report"] .house-summary{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}
@media(max-width:560px){.brand-logo{width:28px;height:28px}[data-page="report"] .house-summary{grid-template-columns:1fr}}
@media print{[data-page="report"] .house-summary-card{break-inside:avoid}}

/* 검색 제목은 폼과 같은 폭 안에서 항상 왼쪽 정렬한다. */
[data-page="search"] .page-head{text-align:left}

/* 로컬에서만 노출하는 임시 모델 비교 도구 */
.report-model-panel{max-width:720px;margin:10px auto 0;padding-top:10px;border-top:1px solid var(--n-300);text-align:left}
.report-model-panel summary{cursor:pointer;font-weight:700}.report-model-panel label{display:block;margin-top:10px;font-weight:700}.report-model-panel select{margin-top:5px}.report-model-panel small{display:block;margin-top:6px;line-height:1.6}

/* PDF 전용 A4 문서 레이아웃 */
@font-face{font-family:PretendardPdf;src:url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/woff2/PretendardVariable.woff2") format("woff2");font-weight:45 920;font-display:swap}
.pdf-document-head{display:none}
html.pdf-export{background:#fff}
html.pdf-export body{display:block;min-height:0;background:#fff;color:#17202a;font-family:PretendardPdf,"Noto Sans KR",sans-serif;font-size:10pt;line-height:1.55;-webkit-print-color-adjust:exact;print-color-adjust:exact}
html.pdf-export .topbar,html.pdf-export .landing-nav,html.pdf-export .crumbbar,html.pdf-export .report-head,html.pdf-export .site-footer,html.pdf-export .loading-modal,html.pdf-export .map-toolbar{display:none!important}
html.pdf-export .page{width:auto;max-width:none;margin:0;padding:0}
html.pdf-export .pdf-document-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12mm;margin:0 0 7mm;padding:0 0 5mm;border-bottom:1px solid #b7c2cd}
html.pdf-export .pdf-brand{display:flex;align-items:center;gap:3mm}
html.pdf-export .pdf-brand img{width:10mm;height:10mm}
html.pdf-export .pdf-brand strong,html.pdf-export .pdf-brand span{display:block}
html.pdf-export .pdf-brand strong{font-size:15pt}
html.pdf-export .pdf-brand span{margin-top:1mm;color:#6b7785;font-size:8.5pt}
html.pdf-export .pdf-property{max-width:110mm;text-align:right}
html.pdf-export .pdf-property h1{margin:0;font-size:14pt;line-height:1.35;word-break:keep-all}
html.pdf-export .pdf-property span{display:block;margin-top:2mm;color:#7a7a7d;font-size:8pt}
html.pdf-export .report-keywords{margin-bottom:4mm}
html.pdf-export .qa-card,html.pdf-export .report-block,html.pdf-export .house-summary-section,html.pdf-export .evidence{margin-bottom:5mm;border-radius:2mm;box-shadow:none}
html.pdf-export .qa-card{break-inside:auto}
html.pdf-export .report-block,html.pdf-export .house-summary-section{break-inside:avoid}
html.pdf-export .report-summary{break-inside:auto}
html.pdf-export .report-block{padding:5mm}
html.pdf-export .report-block h2{font-size:14pt}
html.pdf-export .report-block h3{font-size:11pt}
html.pdf-export .report-block .axis-grid{grid-template-columns:repeat(3,1fr)}
html.pdf-export .axis-card{break-inside:avoid;padding:4mm}
html.pdf-export .report-map{height:auto;margin:0 0 5mm;overflow:visible;border-radius:2mm;box-shadow:none;break-inside:avoid}
html.pdf-export .report-map .map{height:100mm}
html.pdf-export .map-legend{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5mm 5mm;max-height:none;padding:3mm 4mm;border:0;border-top:1px solid #e3e7ec;border-radius:0;overflow:visible}
html.pdf-export .legend-item{margin:0;break-inside:avoid}
html.pdf-export .map-note{position:static;padding:2mm 4mm;border:0;border-top:1px solid #eef1f4;border-radius:0;background:#fff}
html.pdf-export .facility-info{display:none}
html.pdf-export .report-lists{gap:5mm;margin-bottom:5mm}
html.pdf-export .report-lists .report-block{margin-bottom:0}
html.pdf-export .house-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
html.pdf-export .house-summary-card{break-inside:avoid}
html.pdf-export .evidence{padding:5mm;break-inside:auto}
html.pdf-export .facility-section,html.pdf-export .facility-subgroup{break-inside:auto}
html.pdf-export .facility-section>.section-head,html.pdf-export .facility-subgroup>.section-head,html.pdf-export .facility-section>.band{break-after:avoid}
html.pdf-export .table thead{display:table-header-group}
html.pdf-export .table tr{break-inside:avoid}
html.pdf-export .table th,html.pdf-export .table td{padding:2.5mm 3mm}
html.pdf-export .report-footer{margin-top:6mm;padding-top:4mm;break-inside:avoid}

/* 매물 등록 */
.listing-register-card{margin-top:28px;border:1px solid var(--s4-line);border-radius:var(--s4-radius);background:#fff;box-shadow:0 1px 3px #17202a0a;overflow:hidden}
.listing-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:20px 26px;border:0;background:#fff;text-align:left;cursor:pointer}
.listing-head h3{margin:0 0 3px;font-size:15.5px;font-weight:700}.listing-head .sub{font-size:12.5px;color:var(--s4-faint)}
.listing-head .chev{font-size:18px;color:var(--s4-faint);transition:transform .25s}
.listing-register-card.open .listing-head{border-bottom:1px solid var(--s4-line-soft)}.listing-register-card.open .chev{transform:rotate(180deg)}
.listing-body{display:none;flex-direction:column;gap:18px;padding:24px 26px}.listing-register-card.open .listing-body{display:flex}
.listing-body .grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.listing-body .field{display:flex;flex-direction:column;gap:7px}.listing-body .field label{font-size:13px;font-weight:700}.listing-body .field .opt{font-weight:400;color:var(--s4-faint)}.listing-body .req{color:var(--s4-accent)}
.listing-body .input{height:44px;padding:0 15px;border:1px solid #dce1e7;border-radius:10px;background:#fff}
.listing-body textarea.input{height:auto;min-height:84px;padding:12px 15px;resize:vertical}
.listing-body .input:focus{border:1.5px solid var(--s4-accent);box-shadow:0 0 0 3px var(--s4-tint);outline:none}
.specs-details summary{font-size:13px;font-weight:700;color:var(--s4-sub);cursor:pointer}.specs-details .specs-grid{margin-top:14px}.specs-grid .wide{grid-column:1/-1}
.photos{display:flex;gap:10px;flex-wrap:wrap}
.photo-add{width:92px;height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px dashed #c7d6e6;border-radius:10px;background:var(--s4-tint-soft);color:var(--s4-accent);font-size:11.5px;font-weight:600;cursor:pointer}
.photo-add b{font-size:20px;line-height:1;font-weight:400}
.photo{position:relative;width:92px;height:92px;border-radius:10px;background-size:cover;background-position:center}
.photo .del{position:absolute;right:5px;top:5px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:0;border-radius:50%;background:#17202a8c;color:#fff;font-size:11px;cursor:pointer}
.privacy{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.privacy label{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid #dce1e7;border-radius:10px;cursor:pointer}
.privacy input{position:absolute;opacity:0}
.privacy .name{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700}
.privacy .dot{width:16px;height:16px;border-radius:50%;border:2px solid #c4cbd3}
.privacy .desc{font-size:12px;color:var(--s4-faint);line-height:1.55}
.privacy label:has(input:checked){border:1.5px solid var(--s4-accent);background:var(--s4-tint-soft)}
.privacy label:has(input:checked) .name{color:var(--s4-primary)}
.privacy label:has(input:checked) .dot{border:5px solid var(--s4-accent)}
.privacy label:has(input:checked) .desc{color:var(--s4-sub)}
.form-foot{display:flex;align-items:center;gap:14px;padding-top:16px;border-top:1px solid var(--s4-line-soft)}
.form-foot .submit-btn{height:46px;padding:0 32px;border:0;border-radius:10px;background:var(--s4-primary);color:#fff;font-size:14.5px;font-weight:650;cursor:pointer;box-shadow:0 2px 6px #2e4b6b4d}
.form-foot .submit-btn:disabled{background:#dce1e7;color:var(--s4-faint);box-shadow:none;cursor:not-allowed}
.form-foot .hint{font-size:12.5px;color:var(--s4-faint)}
.reg-modal{width:420px;max-width:calc(100vw - 48px);padding:26px 28px;border:0;border-radius:16px;box-shadow:0 24px 64px #17202a59}
.reg-modal::backdrop{background:#17202a73}
.reg-modal h3{margin:0 0 5px;font-size:16.5px;font-weight:700}.reg-modal .sub{font-size:13px;color:var(--s4-faint)}
.reg-options{display:flex;flex-direction:column;gap:10px;margin:18px 0}
.reg-options label{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid #dce1e7;border-radius:12px;cursor:pointer}
.reg-options input{position:absolute;opacity:0}
.reg-options .name{font-size:14px;font-weight:700}.reg-options .desc{font-size:12.5px;color:var(--s4-faint);line-height:1.55}
.reg-options label:has(input:checked){border:1.5px solid var(--s4-accent);background:var(--s4-tint-soft)}
.reg-options label:has(input:checked) .name{color:var(--s4-primary)}
.reg-options label:has(input:checked) .desc{color:var(--s4-sub)}
.reg-foot{display:flex;justify-content:flex-end;gap:8px}
.btn-ghost{height:38px;padding:0 18px;border:0;border-radius:9px;background:#f3f5f7;color:var(--s4-sub);font-size:13px;font-weight:650;cursor:pointer}
.btn-sm{height:38px;padding:0 20px;border:0;border-radius:9px;background:var(--s4-primary);color:#fff;font-size:13px;font-weight:650;cursor:pointer}.btn-sm:disabled{opacity:.6}
.done-state{display:flex;align-items:center;gap:16px;padding:24px 26px}.done-state[hidden]{display:none}
.listing-register-card.done .listing-head,.listing-register-card.done .listing-body{display:none}
.done-state .check{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#eaf3ec;color:#3d7a52;font-size:20px;font-weight:700}
.done-state .title{font-size:15.5px;font-weight:700}.done-state .desc{font-size:13px;color:var(--s4-sub)}
.done-state .view{margin-left:auto;display:inline-flex;align-items:center;height:38px;padding:0 18px;border-radius:9px;background:var(--s4-tint);color:var(--s4-primary);font-size:13px;font-weight:650;text-decoration:none;white-space:nowrap}
.done-state .view[hidden]{display:none}
html.pdf-export .listing-register-card{display:none!important}

/* 전국 매물 */
[data-page="listings"]{overflow:hidden;background:#eef1f4}[data-page="listings"] .landing-nav{position:relative;z-index:40;flex:none}
.listings-page{position:relative;height:calc(100vh - 72px);overflow:hidden}
.listing-map{position:absolute;inset:0}.listings-page .map-fallback{position:absolute;inset:0;z-index:1}
.listing-map-guide{position:absolute;z-index:10;top:16px;left:50%;transform:translateX(-50%);padding:8px 18px;border-radius:999px;background:#fffffff2;box-shadow:0 4px 18px #17202a26;font-size:12.5px}
.listing-panelcol{position:absolute;z-index:20;left:16px;top:16px;bottom:16px;display:flex;flex-direction:column;gap:12px;width:330px;pointer-events:none}
.float-card{pointer-events:auto;border-radius:var(--s4-radius);background:#fff;box-shadow:0 8px 32px #17202a1f}
.listing-search-card{position:relative}
.listing-search-card:focus-within{box-shadow:0 8px 32px #17202a1f,0 0 0 3px var(--s4-tint)}
.region-search{display:flex;align-items:center;gap:10px;padding:0 16px}
.search-icon{flex:none;width:17px;height:17px;color:var(--s4-faint)}
[data-page="listings"] .region-search .input{flex:1;height:52px;padding:0;border:0;background:none;font-size:14px}
[data-page="listings"] .region-search .input:focus{outline:none}
.region-results{position:absolute;left:10px;right:10px;top:calc(100% - 2px);z-index:5;max-height:250px;overflow:auto;border:1px solid #dce6f0;border-radius:12px;background:#fff;box-shadow:0 12px 32px #17202a24}
.region-results button{display:flex;width:100%;justify-content:space-between;gap:12px;padding:11px 16px;border:0;border-bottom:1px solid var(--s4-line-soft);background:#fff;text-align:left;cursor:pointer}.region-results button:last-child{border-bottom:0}.region-results button:hover{background:var(--s4-tint-soft)}.region-results .empty{margin:0;padding:14px;font-size:12.5px}
.listing-stats{display:grid;gap:2px;padding:16px 18px}.listing-stats .cap{font-size:11.5px;color:var(--s4-sub)}.listing-stats strong{font-size:27px;line-height:1.2}.listing-stats strong small{margin-left:2px;font-size:13px;font-weight:500;color:var(--s4-sub)}.listing-stats span{font-size:12px;color:var(--s4-sub)}
.listing-list-card{display:flex;flex-direction:column;min-height:0;overflow:hidden}.listing-list-card[hidden]{display:none}
.list-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:14px 17px 10px;border-bottom:1px solid var(--s4-line-soft)}.list-head strong{font-size:14px}.list-head .note{font-size:12px;color:var(--s4-faint)}
.listing-items{overflow-y:auto}.listing-items .empty{margin:0;padding:16px;color:var(--s4-sub);font-size:12.5px}
.listing-items button{display:grid;gap:5px;width:100%;padding:13px 14px;border:0;border-bottom:1px solid var(--s4-line-soft);border-left:3px solid transparent;background:#fff;text-align:left;cursor:pointer}.listing-items button:last-child{border-bottom:0}.listing-items button:hover{background:var(--s4-tint-soft)}.listing-items button.selected{background:var(--s4-tint-soft);border-left-color:var(--s4-accent)}.listing-items button strong{font-size:13.5px}
.item-tags{display:flex;gap:5px}.item-tags .tag,.detail-title .tag{padding:2px 8px;border-radius:999px;background:#f3f5f7;color:var(--s4-sub);font-size:11px;font-weight:500}.item-tags .tag.report,.detail-title .tag.report{background:var(--s4-tint);color:var(--s4-primary);font-weight:650}
.item-tags .tag.source,.detail-title .tag.source{background:#fff1e8;color:#9a4d27;font-weight:650}.detail-transaction{margin:12px 0 0;font-size:14px;font-weight:700;color:var(--s4-primary)}.source-link{text-decoration:none}
.filter-rail{position:absolute;z-index:18;right:16px;top:16px;display:flex;align-items:flex-start;gap:10px;flex-direction:row-reverse}
.filter-toggle{position:relative;width:52px;height:52px;border:0;border-radius:var(--s4-radius-s);background:#fff;box-shadow:0 4px 18px #17202a26;color:var(--s4-primary);font-size:13px;font-weight:700;cursor:pointer}
.filter-toggle.open{background:var(--s4-primary);color:#fff}
.filter-dot{position:absolute;right:9px;top:9px;width:8px;height:8px;border-radius:50%;background:#c0623e}
.filter-toggle.open .filter-dot{background:#ffd9c7}
.listing-filter{width:248px;padding:16px 18px 14px;border-radius:var(--s4-radius);background:#fff;box-shadow:0 8px 32px #17202a29}
.filter-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.filter-head h3{margin:0;font-size:14px;font-weight:700}
.filter-reset{border:0;padding:0;background:none;color:var(--s4-accent);font-size:12px;font-weight:650;cursor:pointer}
.listing-filter fieldset{margin:0 0 14px;padding:0;border:0}.listing-filter legend{padding:0 0 7px;font-size:11.5px;font-weight:700;letter-spacing:.02em;color:var(--s4-faint)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips label{position:relative;cursor:pointer}.chips input{position:absolute;opacity:0;pointer-events:none}
.chips span{display:inline-flex;align-items:center;height:30px;padding:0 13px;border:1px solid #dce1e7;border-radius:999px;background:#fff;font-size:12.5px;font-weight:600;color:var(--s4-sub);transition:background .12s,border-color .12s,color .12s}
.chips label:hover span{border-color:var(--s4-accent);color:var(--s4-primary)}
.chips input:checked+span{border-color:var(--s4-primary);background:var(--s4-primary);color:#fff}
.chips input:focus-visible+span{outline:2px solid var(--s4-accent);outline-offset:2px}
.listing-filter .note{margin:0;padding-top:10px;border-top:1px solid var(--s4-line-soft);font-size:11.5px;color:var(--s4-faint)}
.listing-cluster{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;padding:0;background:none;cursor:pointer}
.listing-cluster .n{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:3px solid #fff;background:var(--s4-accent);box-shadow:0 4px 14px #17202a40;color:#fff;font-size:14px;font-weight:700}
.listing-cluster.big .n{width:54px;height:54px;background:var(--s4-primary);font-size:15px}
.listing-cluster .lbl{padding:2px 9px;border-radius:999px;background:#ffffffeb;font-size:11.5px;font-weight:650;color:var(--s4-primary);white-space:nowrap}
.listing-pin{position:relative;display:grid;justify-items:center;border:0;padding:0;background:none;cursor:pointer;transition:transform .15s var(--s4-ease),opacity .15s}
.listing-pin img{display:block;filter:drop-shadow(0 3px 8px #17202a4d)}
.pin-badge{position:absolute;left:calc(100% - 4px);top:-4px;padding:2px 7px;border-radius:999px;background:#fff;box-shadow:0 1px 4px #17202a2e;font-size:10.5px;font-weight:700;color:var(--s4-accent);white-space:nowrap}
.listing-pin.private .pin-badge{color:var(--s4-sub)}
.listing-pin.selected{transform:scale(1.25);z-index:5}.listing-pin.dimmed{opacity:.45}
.listing-detail{position:absolute;z-index:30;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 120px);overflow-y:auto;border-radius:16px;background:#fff;box-shadow:0 24px 64px #17202a47}
.detail-gallery{position:relative;min-height:44px;background:#dde3e9}.detail-gallery.empty{display:grid;place-items:center;height:110px}.detail-gallery .no-photo{color:var(--s4-faint);font-size:12.5px}
.detail-photos{display:grid;grid-auto-flow:column;grid-auto-columns:100%;height:190px;overflow-x:auto;scroll-snap-type:x mandatory}.detail-photos img{width:100%;height:190px;object-fit:cover;scroll-snap-align:start}
.photo-count{position:absolute;left:12px;bottom:12px;padding:3px 9px;border-radius:999px;background:#17202a99;color:#fff;font-size:11px}
.detail-close{position:absolute;right:12px;top:12px;width:30px;height:30px;border:0;border-radius:8px;background:#17202a80;color:#fff;font-size:16px;cursor:pointer}.detail-close.static{position:static;float:right;background:#f3f5f7;color:var(--s4-sub)}
.detail-body{display:flex;flex-direction:column;gap:11px;padding:20px 24px 22px}
.detail-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-title h2{margin:0;font-size:17px}
.detail-meta{font-size:12.5px;color:var(--s4-faint)}
.detail-desc{margin:0;font-size:13.5px;color:#3e4c5a;line-height:1.7;white-space:pre-wrap}
.report-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--s4-radius-s);background:var(--s4-tint-soft)}.report-row .score{font-size:12.5px;font-weight:600;color:var(--s4-primary)}.report-row a{margin-left:auto;font-size:12.5px;font-weight:650;color:var(--s4-accent);text-decoration:none;white-space:nowrap}
.detail-specs summary{font-size:13px;font-weight:650;color:var(--s4-sub);cursor:pointer}.listing-specs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:8px 0 0}.listing-specs div{padding:8px 0;border-bottom:1px solid var(--s4-line-soft)}.listing-specs dt{font-size:11px;color:var(--s4-sub)}.listing-specs dd{margin:2px 0 0}
.detail-actions{display:flex;gap:8px;padding-top:2px}.detail-actions .contact{flex:1;height:42px;border:0;border-radius:10px;background:var(--s4-primary);color:#fff;font-size:13.5px;font-weight:650;cursor:pointer}.detail-actions .inquiry{height:42px;padding:0 18px;border:0;border-radius:10px;background:var(--s4-tint);color:var(--s4-primary);font-size:13.5px;font-weight:650}.detail-actions .inquiry:disabled{opacity:.55}
.contact-mask{margin:0;font-size:15px;font-weight:700;text-align:center}
.listing-detail .note{margin:0;font-size:11.5px;color:var(--s4-faint)}
@media(max-width:900px){.listings-page{height:calc(100vh - 64px)}.listing-body .grid2,.privacy{grid-template-columns:1fr}.listing-panelcol{left:10px;top:10px;width:min(280px,72vw)}.filter-rail{right:10px;top:10px}.listing-filter{width:172px;padding:13px 14px}}
@page{size:A4 portrait;margin:14mm 13mm 16mm}
@media print{
  html.pdf-export body{width:auto}
  html.pdf-export a{color:inherit;text-decoration:none}
}

/* ── 랜딩 페이지 ─────────────────────────────────────────────────── */
:root{--land-ink:#13201c;--land-sub:#64716b;--land-green:#176b4a;--land-green-2:#23835e;--land-lime:#d8f45b;--land-mint:#eaf6ef;--land-cream:#f7f6ef;--land-line:#dfe5df}
html{scroll-behavior:smooth}
body.landing-body{display:block;background:#fff;color:var(--land-ink);overflow-x:hidden}
.landing-body a{text-decoration:none}
.landing-nav{position:sticky;z-index:40;top:0;width:100%;height:72px;padding:0 max(28px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(19,32,28,.08);background:rgba(255,255,255,.9);backdrop-filter:blur(16px)}
.landing-brand{display:flex;align-items:center;gap:10px;color:var(--land-ink);font-size:17px;font-weight:800;letter-spacing:-.03em}.landing-brand img{display:block}.landing-nav nav{display:flex;align-items:center;gap:28px}.landing-nav nav a{color:#4f5d57;font-size:13.5px;font-weight:650}.landing-nav nav a:hover{color:var(--land-green)}.landing-nav .landing-nav-cta{height:42px;padding:0 18px;display:inline-flex;align-items:center;gap:12px;border-radius:999px;background:var(--land-ink);color:#fff}.landing-nav-cta span{color:var(--land-lime)}
.landing-hero{position:relative;min-height:690px;padding:130px 28px 116px;display:grid;place-items:center;text-align:center;overflow:hidden;background:linear-gradient(180deg,#f4fbf6 0%,#fff 92%)}
.hero-glow{position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none}.hero-glow-one{width:650px;height:650px;left:-240px;top:-220px;background:radial-gradient(circle,rgba(108,207,143,.2),transparent 67%)}.hero-glow-two{width:650px;height:650px;right:-260px;bottom:-310px;background:radial-gradient(circle,rgba(216,244,91,.18),transparent 67%)}
.hero-grid{position:absolute;inset:0;opacity:.38;background-image:linear-gradient(rgba(23,107,74,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(23,107,74,.05) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}
.hero-copy{position:relative;z-index:1;width:min(920px,100%)}
.landing-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:var(--land-green-2);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:800;letter-spacing:.17em}.landing-eyebrow>span{width:26px;height:1px;background:currentColor}.hero-copy .landing-eyebrow{justify-content:center}
.hero-copy h1{margin:0 auto;color:var(--land-ink);font-size:clamp(40px,5.2vw,70px);font-weight:530;line-height:1.12;letter-spacing:-.055em;word-break:keep-all}.hero-copy h1 em{color:var(--land-green);font-style:normal;font-weight:800}
.hero-address-form{width:min(760px,100%);margin:54px auto 0;text-align:left}.hero-address-form label{display:block;margin:0 0 11px;color:#35443e;font-size:14px;font-weight:750}.hero-address-form>div{display:grid;grid-template-columns:1fr auto;gap:10px;padding:8px;border:1px solid rgba(23,107,74,.2);border-radius:16px;background:#fff;box-shadow:0 16px 45px rgba(26,69,50,.12)}.hero-address-form input{min-width:0;height:58px;padding:0 18px;border:0;background:transparent;color:var(--land-ink);font-size:16px;outline:none}.hero-address-form input::placeholder{color:#a0aaa5}.hero-address-form button{height:58px;padding:0 24px;border:0;border-radius:11px;background:var(--land-green);color:#fff;font-weight:750;cursor:pointer;transition:transform .15s,background .15s}.hero-address-form button span{margin-left:12px;color:var(--land-lime)}.hero-address-form button:hover{background:#10593d;transform:translateY(-1px)}
.live-preview{width:min(1200px,calc(100% - 56px));margin:0 auto;padding:108px 0 120px}.live-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.live-preview-head h2{margin:0;color:var(--land-ink);font-size:clamp(30px,3.5vw,48px);font-weight:680;line-height:1.23;letter-spacing:-.045em}.live-preview-head>span{margin-bottom:4px;padding:8px 13px;border-radius:999px;background:var(--land-mint);color:var(--land-green);font-size:12px;font-weight:750}
.live-report-card{overflow:hidden;border:1px solid #d8e3dc;border-radius:24px;background:#fff;box-shadow:0 25px 70px rgba(20,50,38,.09)}.live-report-card>header{padding:24px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--land-line);background:#fbfdfb}.live-report-card>header div{display:grid;gap:4px}.live-report-card small{display:block;color:#7e8d86;font-size:11px;font-weight:800;letter-spacing:.08em}.live-report-card>header strong{font-size:18px}.live-report-card>header>span{padding:9px 14px;border-radius:999px;background:var(--land-mint);color:#52635b;font-size:12px}.live-report-card>header>span b{margin-left:5px;color:var(--land-green);font-size:14px}
.live-report-body{padding:40px;display:grid;grid-template-columns:1.08fr .92fr;gap:24px}.recommendation{grid-column:1/-1;padding:36px 38px;border-radius:18px;background:var(--land-ink);color:#fff}.recommendation small{color:#a9c2b7}.recommendation h3{margin:11px 0 14px;color:#fff;font-size:clamp(24px,3vw,38px);font-weight:560;line-height:1.28;letter-spacing:-.04em}.recommendation h3 em{color:var(--land-lime);font-style:normal;font-weight:750}.recommendation p{max-width:920px;margin:0;color:#c8d6d0;font-size:14px;line-height:1.8}
.resource-concept{display:grid;grid-template-columns:1fr 42px 1fr;align-items:stretch;border:1px solid var(--land-line);border-radius:17px;overflow:hidden}.resource-concept section{padding:26px}.resource-concept ul{margin:16px 0 0;padding:0;list-style:none}.resource-concept li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #eef1ee;font-size:13px}.resource-concept li:last-child{border-bottom:0}.resource-concept li b{color:var(--land-green);font-size:12px;white-space:nowrap}.concept-arrow{display:grid;place-items:center;background:#f3f7f4;color:var(--land-green);font-size:20px}.resource-concept section:last-child{background:#fbfcf8}.resource-concept section>strong{display:block;margin:14px 0 10px;color:var(--land-green);font-size:21px;line-height:1.35}.resource-concept section>p{margin:0;color:var(--land-sub);font-size:13px;line-height:1.7}
.evidence-block{padding:26px;border:1px solid var(--land-line);border-radius:17px;background:#fbfcfb}.evidence-block ul,.pros-cons ul{margin:15px 0 0;padding:0;list-style:none}.evidence-block li{position:relative;padding:8px 0 8px 24px;color:#47564f;font-size:13.5px;line-height:1.55}.evidence-block li:before{content:'✓';position:absolute;left:0;color:var(--land-green);font-weight:900}
.pros-cons{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--land-line);border-radius:17px;overflow:hidden}.pros-cons section{padding:25px 28px}.pros-cons section+section{border-left:1px solid var(--land-line);background:#fcfcfa}.pros-cons li{position:relative;padding:5px 0 5px 20px;color:#4f5d57;font-size:13px}.pros-cons section:first-child li:before{content:'+';position:absolute;left:0;color:var(--land-green);font-weight:900}.pros-cons section:last-child li:before{content:'–';position:absolute;left:0;color:#9b7321;font-weight:900}
.live-report-card>footer{padding:22px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--land-line);background:#f7faf8}.report-resolution{display:grid;gap:4px}.report-resolution strong{color:#34443d;font-size:13.5px}.report-actions{display:flex;align-items:center;gap:8px}.report-actions a,.report-actions button{height:44px;padding:0 18px;display:inline-flex;align-items:center;gap:14px;border:1px solid var(--land-green);border-radius:999px;font:inherit;font-size:13px;font-weight:750;cursor:pointer}.report-actions a{background:#fff;color:var(--land-green)}.report-actions button{background:var(--land-green);color:#fff}.report-actions span{color:var(--land-lime)}

/* A4 report deck preview */
.report-deck{position:relative;height:610px;outline:0;perspective:1600px}.report-sheet{position:absolute;top:28px;left:50%;z-index:1;width:348px;height:492px;padding:24px 25px 20px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #d8ded9;background:#fff;color:var(--land-ink);box-shadow:0 24px 55px rgba(21,49,38,.16);transform-origin:50% 92%;transition:transform .68s cubic-bezier(.2,.78,.2,1),box-shadow .45s ease,filter .45s ease}.report-sheet-one{z-index:3;transform:translateX(-50%) rotate(-1.5deg)}.report-sheet-two{z-index:2;transform:translateX(-38%) rotate(5deg)}.report-sheet-three{z-index:1;transform:translateX(-62%) rotate(-7deg)}
.report-deck:hover .report-sheet,.report-deck:focus .report-sheet,.report-deck:focus-within .report-sheet{box-shadow:0 28px 65px rgba(21,49,38,.13)}.report-deck:hover .report-sheet-one,.report-deck:focus .report-sheet-one,.report-deck:focus-within .report-sheet-one{transform:translateX(-164%) rotate(-2deg)}.report-deck:hover .report-sheet-two,.report-deck:focus .report-sheet-two,.report-deck:focus-within .report-sheet-two{transform:translateX(-50%) rotate(0)}.report-deck:hover .report-sheet-three,.report-deck:focus .report-sheet-three,.report-deck:focus-within .report-sheet-three{transform:translateX(64%) rotate(2deg)}
.report-sheet-two{transition-delay:.055s}.report-sheet-three{transition-delay:.11s}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid #dfe5e1}.sheet-head>span{color:#829087;font:700 9px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.sheet-brand{display:flex;align-items:center;gap:7px}.sheet-brand img{display:block}.sheet-brand strong{font-size:12px}.sheet-kicker{margin-top:21px;color:var(--land-green);font:800 8px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.18em}.report-sheet>h3{margin:5px 0 4px;font-size:25px;line-height:1.1;letter-spacing:-.045em}.sheet-address{margin:0;color:#718078;font-size:10px}.report-sheet>footer{margin-top:auto;padding-top:10px;border-top:1px solid #e2e7e3;color:#98a39d;font-size:7.5px;letter-spacing:.02em}
.sheet-score{position:relative;margin-top:18px;padding:18px 18px 17px;border-radius:4px;background:var(--land-ink);color:#fff}.sheet-score small,.sheet-answer small{display:block;color:#b5c9bf;font-size:8px;font-weight:800;letter-spacing:.09em}.sheet-score strong{display:block;margin:3px 0 5px;color:var(--land-lime);font-size:28px}.sheet-score span{display:block;max-width:220px;color:#c7d4ce;font-size:9px;line-height:1.5}.sheet-map{position:relative;height:112px;margin-top:13px;overflow:hidden;border:1px solid #dfe7e2;border-radius:4px;background-color:#eef3ef;background-image:linear-gradient(26deg,transparent 48%,rgba(255,255,255,.9) 49%,rgba(255,255,255,.9) 53%,transparent 54%),linear-gradient(116deg,transparent 46%,rgba(255,255,255,.85) 47%,rgba(255,255,255,.85) 52%,transparent 53%)}.sheet-map:before,.sheet-map:after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(23,107,74,.18)}.sheet-map:before{width:108px;height:108px;left:97px;top:1px}.sheet-map:after{width:64px;height:64px;left:119px;top:23px}.sheet-map b{position:absolute;left:147px;top:40px;color:var(--land-green);font-size:18px}.sheet-map span{position:absolute;left:168px;top:45px;padding:3px 5px;border-radius:2px;background:#fff;color:#33463d;font-size:7px;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.09)}.sheet-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:11px;border:1px solid #e1e6e2}.sheet-stats div{padding:9px 7px}.sheet-stats div+div{border-left:1px solid #e1e6e2}.sheet-stats strong,.sheet-stats span{display:block}.sheet-stats strong{color:var(--land-green);font-size:15px}.sheet-stats span{margin-top:2px;color:#77837d;font-size:7.5px}
.sheet-answer{margin-top:18px;padding:18px;border-left:3px solid var(--land-lime);background:var(--land-ink);color:#fff}.sheet-answer strong{display:block;margin:7px 0 8px;font-size:17px;line-height:1.35}.sheet-answer strong em{color:var(--land-lime);font-style:normal}.sheet-answer p{margin:0;color:#c5d2cc;font-size:8.5px;line-height:1.55}.sheet-reasons{margin-top:14px}.sheet-reasons h4{margin:0 0 4px;font-size:9px}.sheet-reasons p{margin:0;padding:7px 0;border-bottom:1px solid #e7ebe8;color:#4f5e56;font-size:8.5px}.sheet-reasons p b{display:inline-block;width:25px;color:var(--land-green);font:800 7px ui-monospace,monospace}.sheet-balance{display:grid;grid-template-columns:1fr 1fr;margin-top:13px;border:1px solid #e0e6e2}.sheet-balance>div{padding:11px}.sheet-balance>div+div{border-left:1px solid #e0e6e2;background:#fbfcfa}.sheet-balance small,.sheet-balance span{display:block}.sheet-balance small{margin-bottom:6px;color:var(--land-green);font-size:8px;font-weight:800}.sheet-balance span{padding:2px 0;color:#69766f;font-size:7.5px}
.sheet-expert-hero{margin-top:18px;padding:20px;background:var(--land-mint)}.sheet-expert-hero>span{color:var(--land-green);font-size:8px;font-weight:800;letter-spacing:.08em}.sheet-expert-hero strong{display:block;margin:7px 0 8px;color:var(--land-ink);font-size:20px;line-height:1.3;letter-spacing:-.04em}.sheet-expert-hero p{margin:0;color:#5d6d65;font-size:8.5px;line-height:1.55}.sheet-services{margin-top:12px}.sheet-services>div{display:grid;grid-template-columns:25px 1fr auto;align-items:center;padding:10px 2px;border-bottom:1px solid #e3e8e4}.sheet-services b{color:var(--land-green);font:800 7px ui-monospace,monospace}.sheet-services strong{font-size:9px}.sheet-services span{color:#7e8983;font-size:7.5px}.sheet-cta{height:38px;margin-top:16px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-radius:3px;background:var(--land-green);color:#fff;font-size:9px;font-weight:800}.sheet-cta span{color:var(--land-lime);font-size:13px}.report-deck-hint{margin:-38px 0 0;text-align:center;color:#77857e;font-size:12px}.report-deck-hint span{display:inline-grid;width:24px;height:24px;margin-right:7px;place-items:center;border:1px solid #cdd8d1;border-radius:50%;color:var(--land-green)}
.landing-section{width:min(1200px,calc(100% - 56px));margin:0 auto;padding:112px 0}.how-section{border-top:1px solid var(--land-line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:50px}.section-heading .landing-eyebrow{margin-bottom:13px}.section-heading h2{margin:0;color:var(--land-ink);font-size:clamp(30px,3.5vw,48px);font-weight:680;letter-spacing:-.045em}
.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step-grid article{position:relative;min-height:280px;padding:28px;border:1px solid var(--land-line);border-radius:18px;background:#fff}.step-grid article:not(:last-child):after{content:'→';position:absolute;z-index:2;right:-26px;top:50%;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--land-line);border-radius:50%;background:#fff;color:var(--land-green)}.step-number{color:#95a19b;font-family:ui-monospace,monospace;font-size:11px;font-weight:800}.step-icon{width:52px;height:52px;margin:42px 0 23px;display:grid;place-items:center;border-radius:15px;background:var(--land-mint);color:var(--land-green);font-size:22px}.step-grid h3{margin:0 0 10px;color:var(--land-ink);font-size:20px}.step-grid p{margin:0;color:var(--land-sub);font-size:13.5px;line-height:1.7}
.analysis-section{padding:110px max(28px,calc((100vw - 1200px)/2)) 120px;background:var(--land-cream);scroll-margin-top:70px}.analysis-heading{max-width:760px;margin:0 auto 32px;text-align:center}.analysis-heading .landing-eyebrow{justify-content:center}.analysis-heading h2{margin:0 0 12px;color:var(--land-ink);font-size:clamp(30px,3.5vw,46px);letter-spacing:-.04em}.analysis-heading>p:last-child{color:var(--land-sub)}
[data-page="search"] .analysis-section .layout{max-width:1200px;margin:0 auto}[data-page="search"] .analysis-section .form-col{max-width:760px}[data-page="search"] .analysis-section .layout.map-open .form-col{max-width:none}
.final-cta{min-height:340px;padding:70px max(28px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--land-green);color:#fff}.final-cta .landing-eyebrow{color:#bde0cd}.final-cta h2{margin:0;color:#fff;font-size:clamp(32px,4vw,54px);font-weight:620;line-height:1.2;letter-spacing:-.045em}.final-cta>a{height:58px;padding:0 25px;display:inline-flex;align-items:center;gap:22px;border-radius:999px;background:var(--land-lime);color:var(--land-ink);font-weight:800;white-space:nowrap}.final-cta>a span{font-size:20px}
.landing-footer{min-height:100px;padding:24px max(28px,calc((100vw - 1200px)/2));display:flex;align-items:center;gap:22px;background:#101a16;color:#8fa098;font-size:12px}.landing-footer p{margin:0;color:#8fa098}.landing-footer>span{margin-left:auto}.footer-brand{color:#fff}
@media(max-width:900px){.landing-nav{height:64px;padding:0 20px}.landing-nav nav>a:not(.landing-nav-cta):not(:first-child){display:none}.landing-nav .landing-nav-cta{height:38px}.landing-hero{min-height:620px;padding:100px 20px 85px}.hero-copy h1{font-size:clamp(36px,8.5vw,54px)}.hero-address-form>div{grid-template-columns:1fr}.hero-address-form button{width:100%}.live-preview,.landing-section{width:min(100% - 36px,1200px);padding:80px 0}.live-preview-head,.section-heading{display:block}.live-preview-head>span{display:inline-block;margin-top:18px}.live-report-body{padding:22px;grid-template-columns:1fr}.recommendation{padding:28px;grid-column:auto}.resource-concept{grid-template-columns:1fr}.concept-arrow{height:38px;transform:rotate(90deg)}.pros-cons{grid-column:auto;grid-template-columns:1fr}.pros-cons section+section{border-left:0;border-top:1px solid var(--land-line)}.live-report-card>footer{align-items:flex-start;flex-direction:column}.report-actions{width:100%;align-items:stretch;flex-direction:column}.report-actions a,.report-actions button{justify-content:center}.step-grid{grid-template-columns:1fr}.step-grid article{min-height:240px}.step-grid article:not(:last-child):after{right:50%;top:auto;bottom:-27px;transform:translateX(50%) rotate(90deg)}.analysis-section{padding:80px 18px}.final-cta{padding:65px 24px;align-items:flex-start;flex-direction:column}.landing-footer{align-items:flex-start;flex-direction:column}.landing-footer>span{margin-left:0}}
@media(max-width:560px){.landing-brand{font-size:15px}.landing-nav nav{gap:12px}.landing-nav nav>a:first-child{font-size:12px}.landing-nav .landing-nav-cta{padding:0 13px;font-size:12px}.hero-copy h1 br{display:none}.hero-address-form{margin-top:38px}.hero-address-form input{font-size:14px}.live-preview-head h2{font-size:30px}.live-report-card>header{padding:20px;align-items:flex-start;flex-direction:column}.live-report-body{padding:14px}.recommendation{padding:24px 20px}.recommendation h3{font-size:24px}.resource-concept section,.evidence-block,.pros-cons section{padding:21px}.live-report-card>footer{padding:20px}.final-cta>a{width:100%;justify-content:space-between}}
.landing-nav a{text-decoration:none}.report-tag-pair{display:inline-flex;flex-wrap:wrap;gap:5px}.report-keywords .tag-narrative{border-color:rgba(51,109,82,.22);background:var(--land-mint);color:var(--land-green)}
@media(max-width:900px){.report-deck{height:540px;margin-right:-18px;display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;perspective:none;overscroll-behavior-inline:contain;padding:14px 18px 26px 2px;scrollbar-width:thin;scrollbar-color:#b9c8c0 transparent}.report-sheet,.report-deck:hover .report-sheet,.report-deck:focus .report-sheet,.report-deck:focus-within .report-sheet{position:relative;top:auto;left:auto;width:332px;height:470px;flex:0 0 332px;scroll-snap-align:center;transform:none!important;transition:none}.report-deck-hint{margin:-3px 0 0;text-align:left}.report-deck-hint span{transform:rotate(45deg)}}
@media(max-width:560px){.report-deck{height:506px}.report-sheet,.report-deck:hover .report-sheet,.report-deck:focus .report-sheet,.report-deck:focus-within .report-sheet{width:300px;height:446px;flex-basis:300px;padding:20px}.report-sheet>h3{font-size:23px}.sheet-score{padding:14px}.sheet-map{height:98px}.sheet-answer,.sheet-expert-hero{padding:15px}.sheet-expert-hero strong{font-size:18px}.report-deck-hint{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-address-form button{transition:none}}

/* ── 입지 분석 전용 페이지 ───────────────────────────────────────── */
body.analysis-page-body{display:block;min-height:100vh;background:var(--land-cream);color:var(--land-ink)}
.analysis-nav{background:rgba(255,255,255,.94)}
.analysis-workspace{position:relative;min-height:calc(100vh - 72px);padding:86px max(28px,calc((100vw - 1200px)/2)) 110px;overflow:hidden;background:linear-gradient(180deg,#f2faf5 0,#f8f7f1 360px)}
.analysis-workspace-glow{position:absolute;right:-260px;top:-310px;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle,rgba(216,244,91,.2),transparent 68%);pointer-events:none}
.analysis-page-body .analysis-heading{position:relative;z-index:1;max-width:760px;margin:0 auto 38px;text-align:center}
.analysis-page-body .analysis-heading .landing-eyebrow{justify-content:center;margin-bottom:18px}
.analysis-page-body .analysis-heading h1{margin:0 0 15px;color:var(--land-ink);font-size:clamp(36px,4.5vw,56px);font-weight:650;line-height:1.15;letter-spacing:-.05em}
.analysis-page-body .analysis-heading>p:last-child{margin:0;color:var(--land-sub);font-size:15px}
.analysis-page-body .layout{position:relative;z-index:1;max-width:1200px;margin:0 auto}
.analysis-page-body .form-col{max-width:780px}
.analysis-page-body .card{border-color:#dce5de;box-shadow:0 18px 55px rgba(27,56,43,.07)}
.analysis-page-body .form{padding:34px}
.analysis-page-body .btn-primary{background:var(--land-green);box-shadow:0 5px 16px rgba(23,107,74,.22)}
.analysis-page-body .radius-options input:checked+span{border-color:var(--land-green);background:var(--land-mint);color:var(--land-green);box-shadow:inset 0 0 0 1px var(--land-green)}
.analysis-page-body .input:focus{border-color:var(--land-green);box-shadow:0 0 0 3px var(--land-mint)}
.analysis-footer{min-height:76px;padding:20px max(28px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;background:#101a16;color:#91a098;font-size:12px}
@media(max-width:900px){.analysis-workspace{padding:64px 18px 80px}.analysis-page-body .analysis-heading h1{font-size:38px}.analysis-footer{align-items:flex-start;flex-direction:column}.analysis-page-body .form{padding:24px}}
