@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--green:#164d3d;--lime:#d4ed86;--ink:#193b32;--muted:#75857e;--line:#dde4dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f6f0;color:var(--ink);font:14px 'Noto Sans KR',sans-serif}aside{position:fixed;width:225px;height:100vh;background:#123e32;color:#fff;padding:40px 26px}.brand{font-size:25px;font-weight:800}.brand small{display:block;font-size:9px;letter-spacing:3px;margin:8px 0 60px;color:#c3d1c5}nav a{display:block;color:#d6e0d5;text-decoration:none;padding:16px 0;font-size:13px}aside p{margin-top:90px;color:#a5baae;font-size:12px;line-height:2}.pill{font-size:11px;border:1px solid #b9c9ba;border-radius:30px;padding:6px 10px;display:inline-block}main{margin-left:225px;padding:0 40px;max-width:1550px}header{min-height:85px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}header>span{font-size:10px;letter-spacing:2px;color:var(--muted)}button,.button{cursor:pointer;border:1px solid #ced8ca;background:#fff;border-radius:7px;color:var(--ink);font:inherit;padding:9px 12px;display:inline-block}button:hover,.button:hover{background:#e6ecd9}.primary{background:var(--green);color:white}.hero{display:flex;justify-content:space-between;align-items:center;padding:45px 15px!important;background:none!important;border:0!important}.eyebrow{font-size:11px;letter-spacing:3px;color:#728658}h1{font-size:36px;letter-spacing:-1.8px;line-height:1.45;margin:16px 0}p{line-height:1.8}.hero p,.muted{color:var(--muted);font-size:12px}.sun{font-size:100px;color:#bfce65;text-align:center;width:28%}.sun small{display:block;font-size:10px;letter-spacing:1px;color:var(--green)}.notice{border:1px solid #e3d4aa;background:#fff8e7;padding:15px 20px;border-radius:8px;font-size:12px;color:#83652f}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.metric{background:white;border:1px solid var(--line);border-radius:10px;padding:22px}.metric small{display:block;color:var(--muted);font-size:11px}.metric strong{font-size:25px;display:block;margin:10px 0}.metric em{font-size:10px;font-style:normal;color:var(--muted)}section{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px;margin:22px 0;scroll-margin-top:15px}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.sectionhead span{color:var(--muted);font-size:10px;letter-spacing:1.5px}h2{margin:7px 0;font-size:21px;letter-spacing:-.6px}h3{font-size:14px;margin-top:26px}label{font-size:11px;color:#5d7167;display:block}input,select,textarea{font:inherit;color:var(--ink);border:1px solid #d9e1d8;border-radius:6px;padding:10px;width:100%;background:#fbfcf9;display:block;margin-top:7px;min-width:0}input:focus,textarea:focus{outline:2px solid #9abb8d}textarea{min-height:85px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.parcel{border:1px solid var(--line);border-radius:8px;padding:18px;margin:14px 0}.parcelhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.parcel .grid{grid-template-columns:repeat(4,minmax(0,1fr))}.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}.check{border-radius:7px;padding:14px;background:#f2f5ed;font-size:12px}.check.warn{background:#fff6e4;color:#896c30}.check.bad{background:#fbece8;color:#a54a34}.check strong{display:block;margin-bottom:5px}.split{display:grid;grid-template-columns:1.5fr 1fr;gap:25px;margin-top:24px}.layout{background:#eef2e8;border-radius:10px;padding:16px}.layout p{font-size:10px;color:var(--muted)}.north{text-align:right;font-size:12px}.layout svg{width:100%}#designResult{font-size:13px;line-height:2.2}#chart{width:100%;background:#f8faf5;border-radius:10px}.tablewrap{overflow:auto;max-height:420px}table{width:100%;border-collapse:collapse;font-size:11px}th,td{text-align:right;padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}th{background:#f3f6ef;position:sticky;top:0}th:first-child,td:first-child{text-align:left}.sources{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sources a{padding:17px;border:1px solid var(--line);border-radius:8px;color:var(--green);text-decoration:none}.sources small{display:block;font-size:10px;margin-top:7px;color:var(--muted)}footer{font-size:10px;color:var(--muted);padding:15px 0 35px}#sources p{font-size:12px;color:#6c7a70}@media(max-width:1000px){aside{width:175px;padding:30px 18px}main{margin-left:175px;padding:0 20px}.grid,.parcel .grid{grid-template-columns:repeat(2,1fr)}header{flex-wrap:wrap;padding:15px 0}.metrics{grid-template-columns:1fr 1fr}.sun{display:none}.sources{grid-template-columns:1fr 1fr}}@media(max-width:650px){aside{position:static;width:100%;height:auto;padding:20px}.brand small,nav,aside p,aside>.pill{display:none}main{margin:0;padding:0 12px}h1{font-size:28px}.hero{padding:25px 5px!important}.split,.checks,.sources{grid-template-columns:1fr}section{padding:18px}.metric{padding:15px}.metric strong{font-size:20px}}@media print{aside,header,button,.button,#add{display:none}main{margin:0;padding:0}section{break-inside:avoid}.tablewrap{max-height:none}body{background:white}input,select,textarea{border:0;background:white}a{color:black}.hero{padding:10px!important}h1{font-size:24px}}
.parcel-search{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px}.parcel-search .primary{height:41px}.lookup-status{min-height:28px;padding:12px 0;font-size:12px;color:#55785c}.lookup-results{display:grid;gap:7px}.lookup-results button{text-align:left}.parcel-facts{background:#f6f8f1;border-radius:8px;padding:20px;margin:10px 0}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:18px 0}.facts span{font-size:11px;color:#77866f}.facts b{display:block;margin-top:8px;color:#234d3b;font-size:17px}.parcel-facts p{font-size:12px;line-height:1.9}.parcel-facts small{color:#77866f}.grid-summary{border:1px solid #d9e6d1;border-radius:8px;padding:18px;margin:15px 0;font-size:12px}.grid-summary a,.parcel-facts a{color:#326b4c}.line-result{border-top:1px solid #d8e2d1;padding:15px 0}.line-result button{margin-top:12px;background:#edf4de}details{margin-top:15px}summary{cursor:pointer;color:#65805d;font-size:12px;padding:10px 0}details[open] summary{margin-bottom:10px}@media(max-width:650px){.facts{grid-template-columns:1fr 1fr}}
.cost-note{white-space:normal;min-width:220px;max-width:540px;text-align:left}#costs .parcel{background:#fafcf7}#costs .metric strong{font-size:21px}#costs .notice{margin-top:20px}#costs a{color:#2c694d}
.company-footer{border-top:1px solid var(--line);margin-top:35px;padding:28px 0 24px}.company-identity{display:flex;align-items:center;gap:26px}.company-logo{display:block;width:151px;height:99px;object-fit:contain;background:#fff;border-radius:8px;flex-shrink:0}.company-details p{margin:7px 0;font-size:12px;line-height:2;color:#596b61;word-break:keep-all}.company-details .copyright{font-size:11px;letter-spacing:.5px;color:#75857e}.footer-meta{font-size:10px;color:var(--muted);margin:18px 0 0}@media(max-width:650px){.company-identity{align-items:flex-start;gap:15px}.company-logo{width:100px;height:66px}.company-details p{font-size:10px}}
.brand-main{display:flex;align-items:center;gap:9px;font-size:23px;white-space:nowrap}.nav-logo{width:36px;height:28px;object-fit:contain;border-radius:4px;background:#fff;flex-shrink:0}@media(max-width:1000px){.brand-main{font-size:18px;gap:6px}.nav-logo{width:28px;height:24px}}

.parcel-map{margin:18px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#f6f8f2}.map-heading{padding:16px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.map-heading span{font-size:11px;color:#66766b}.map-image-link{display:flex;justify-content:center;align-items:center;background:#eef1e9;min-height:260px;padding:12px;text-decoration:none;color:var(--ink)}.parcel-map-image{display:block;width:100%;max-width:760px;height:380px;object-fit:contain;background:#fff}.parcel-map-image[hidden],.map-failure[hidden]{display:none}.map-failure{padding:30px;text-align:center;font-size:13px}.map-actions{display:flex;flex-wrap:wrap;gap:8px;padding:14px 16px 0}.map-actions a{font-size:12px;text-decoration:none}.parcel-map>p{padding:0 16px 8px}@media(max-width:650px){.parcel-map-image{height:300px}}@media print{.map-actions{display:none}.parcel-map-image{height:300px}.parcel-map{break-inside:avoid}}

.parcel-live-map{display:block;border:0;width:100%;height:650px;background:#eef1e9}.parcel-map:fullscreen{background:white;overflow:auto;padding:12px}.parcel-map:fullscreen .parcel-live-map{height:calc(100vh - 170px)}@media(max-width:650px){.parcel-live-map{height:540px}}@media print{.parcel-live-map{display:none}.parcel-map:after{content:"대화형 지도는 웹 화면에서 확인하세요.";display:block;padding:20px}}

.satellite-layout{margin:22px 0;border:1px solid var(--line);border-radius:10px;padding:16px}.satellite-layout h3{margin-top:0}.satellite-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.satellite-toolbar span{font-size:11px;margin-right:auto}.satellite-viewport{overflow:hidden;border-radius:8px;background:#263b30}.satellite-svg{width:100%;display:block;max-height:720px}.imagery-credit{font-size:10px;color:#53665b}.terrain-summary,.housing-summary{padding:12px 0;border-top:1px solid var(--line)}
