:root{--bg:#f7f8f5;--surface:#fff;--surface-soft:#eef4f1;--text:#17211b;--muted:#607066;--border:#dbe3dd;--primary:#166548;--primary-dark:#0f4934;--blue:#2563eb;--amber:#b7791f;--danger:#b42318;--shadow:0 18px 50px #17211b14}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica Neue,Noto Sans Thai,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.primary-link,.secondary-link,.text-action{align-items:center;gap:8px;display:inline-flex}button,.primary-link,.secondary-link{cursor:pointer;border:0;border-radius:8px;min-height:44px;padding:0 16px;font-weight:700}button,.primary-link{background:var(--primary);color:#fff}button:hover,.primary-link:hover{background:var(--primary-dark)}button:disabled{cursor:not-allowed;opacity:.7}img{max-width:100%;display:block}.container{max-width:1160px;margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--border);z-index:20;background:#ffffffeb;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:0 28px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:220px;display:inline-flex}.brand-mark{background:var(--primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-weight:800;display:inline-flex}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:12px}.nav-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.nav-links a{color:#26362d;border-radius:8px;align-items:center;gap:7px;min-height:40px;padding:0 12px;font-size:14px;display:inline-flex}.nav-links a:hover{background:var(--surface-soft)}.home-search-band{border-bottom:1px solid var(--border);background:#fff}.home-search{gap:22px;padding-top:44px;padding-bottom:44px;display:grid}.eyebrow{color:var(--primary);text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:800}h1,h2{margin:0;line-height:1.18}h1{max-width:850px;font-size:clamp(32px,5vw,58px)}h2{font-size:28px}.lead{color:var(--muted);max-width:760px;margin:14px 0 0;font-size:18px}.search{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;grid-template-columns:28px 1fr auto;align-items:center;max-width:880px;min-height:64px;padding:8px;display:grid}.search.compact{box-shadow:none;min-height:54px;margin-top:18px}.search-icon{color:var(--muted);margin-left:12px}.search input{color:var(--text);border:0;outline:0;min-width:0;padding:0 12px}.quick-links,.chip-row{flex-wrap:wrap;gap:8px;display:flex}.quick-links a,.chip-row span{background:var(--surface-soft);border:1px solid var(--border);color:#26362d;border-radius:8px;padding:8px 12px}.workflow-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:34px;padding-bottom:34px;display:grid}.workflow-row div{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:7px;padding:18px;display:grid}.workflow-row svg{color:var(--blue)}.workflow-row span{color:var(--muted)}.section-header,.page-title{justify-content:space-between;align-items:end;gap:16px;padding-top:34px;padding-bottom:18px;display:flex}.page-title{align-items:start;display:block}.text-action{color:var(--primary);font-weight:800}.property-grid,.property-list{gap:16px;display:grid}.property-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:48px}.property-list{grid-template-columns:1fr}.property-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.property-image-link,.detail-image-wrap{background:#dfe7df;display:block;position:relative;overflow:hidden}.property-image-link{aspect-ratio:4/3}.property-image{object-fit:cover}.sample-badge{color:#fff;background:#17211bdb;border-radius:8px;padding:6px 9px;font-size:12px;font-weight:800;position:absolute;top:12px;left:12px}.property-card-body{gap:10px;padding:16px;display:grid}.card-topline,.result-header{color:var(--muted);justify-content:space-between;gap:12px;font-size:13px;display:flex}.property-card h2{font-size:20px}.price{color:var(--primary-dark);margin:0;font-size:20px;font-weight:900}.price.large{font-size:32px}.meta-row,.quality-row,.detail-meta{color:var(--muted);flex-wrap:wrap;gap:10px;display:flex}.meta-row span,.quality-row span,.detail-meta span{align-items:center;gap:6px;display:inline-flex}.card-actions{border-top:1px solid var(--border);padding-top:12px}.page-layout,.form-page{padding-bottom:54px}.listing-layout{grid-template-columns:280px 1fr;gap:22px;display:grid}.filters,.form-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:14px;padding:18px;display:grid}.filters{position:sticky;top:92px}.filters-title{align-items:center;gap:8px;font-weight:900;display:inline-flex}label{color:#26362d;gap:7px;font-size:14px;font-weight:800;display:grid}input,select,textarea{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:8px;min-height:44px;padding:9px 11px}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #2563eb40}.result-header{margin-bottom:12px}.detail-page{padding-top:26px;padding-bottom:54px}.back-link{margin-bottom:18px}.detail-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:22px;display:grid}.detail-image{aspect-ratio:4/3;object-fit:cover;border-radius:8px}.detail-image-wrap{aspect-ratio:4/3;border-radius:8px}.detail-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:16px;padding:22px;display:grid}.spec-grid{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding-top:4px;display:grid}.spec-grid div{border-bottom:1px solid var(--border);padding:12px 0}.spec-grid dt{color:var(--muted);font-size:13px}.spec-grid dd{margin:3px 0 0;font-weight:800}.detail-actions{flex-wrap:wrap;gap:10px;display:flex}.secondary-link,.secondary-button{color:#174ea6;background:#edf4ff}.disclaimer{color:var(--muted);margin:18px 0 0;font-size:14px}.form-panel{max-width:920px}.form-panel.narrow{max-width:440px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.checkbox-row{align-items:start;font-weight:700;display:flex}.checkbox-row input{width:20px;min-height:auto}.form-status{border-radius:8px;margin:0;padding:10px 12px;font-weight:800}.form-status.success{color:#166548;background:#e9f7ef}.form-status.error{color:var(--danger);background:#fff1f0}.form-status.submitting,.helper-text{color:var(--muted)}.admin-shell{gap:16px;display:grid}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-summary{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:0 14px;display:inline-flex}.admin-summary strong{color:var(--primary);font-size:22px}.admin-summary span{color:var(--muted);font-weight:800}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-column{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:18px}.admin-column h2{justify-content:space-between;align-items:center;font-size:20px;display:flex}.admin-column h2 span{background:var(--surface-soft);color:var(--primary);border-radius:8px;padding:4px 8px;font-size:14px}.record-list{gap:12px;margin-top:14px;display:grid}.record-card{border:1px solid var(--border);border-radius:8px;gap:12px;padding:12px;display:grid}.record-card-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.record-card small{color:var(--muted);margin:4px 0 10px;display:block}.record-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.record-fields div{background:#f7faf8;border-radius:8px;min-width:0;padding:9px 10px}.record-fields dt{color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:800}.record-fields dd{overflow-wrap:anywhere;margin:0}.record-fields a{color:var(--blue);font-weight:800}.status-select{align-items:end;gap:6px;min-width:150px;display:grid}.status-select select{min-height:38px;padding:7px 9px}.status-pill{white-space:nowrap;border-radius:8px;justify-content:center;align-self:end;min-height:26px;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.status-new{color:#174ea6;background:#edf4ff}.status-contacted,.status-qualified,.status-matched,.status-approved{color:#166548;background:#e9f7ef}.status-needs_info{color:#8a5a05;background:#fff8e8}.status-draft,.status-inactive,.status-sample{background:var(--surface-soft);color:var(--muted)}.status-closed{color:#006b5a;background:#e8fff9}.status-lost,.status-rejected{color:var(--danger);background:#fff1f0}.empty-state{color:#5f4313;background:#fff8e8;border:1px solid #f4dfab;border-radius:8px;padding:16px}.listing-manager{gap:16px;margin-top:22px;display:grid}.listing-manager .section-header{border-top:1px solid var(--border);align-items:end;padding-top:22px}.listing-manager .section-header p:not(.eyebrow){color:var(--muted);max-width:760px;margin:6px 0 0}.field-listing-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:14px;padding:16px;display:grid}.field-form-head{justify-content:space-between;align-items:start;gap:14px;display:flex}.field-form-head h3{margin:0;font-size:20px}.field-form-head p{color:var(--muted);margin:4px 0 0}.field-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.field-listing-form label,.file-input{color:var(--text);gap:6px;min-width:0;font-size:13px;font-weight:900;display:grid}.field-listing-form input,.field-listing-form select,.field-listing-form textarea{border:1px solid var(--border);color:var(--text);border-radius:8px;width:100%;min-height:42px;padding:9px 10px}.field-listing-form textarea{resize:vertical;min-height:84px}.field-wide{grid-column:span 4}.field-location-action{align-content:end;gap:6px;display:grid}.field-location-action small,.file-input span{color:var(--muted);font-size:12px}.file-input{border:1px dashed var(--border);background:#f7faf8;border-radius:8px;padding:12px}.private-file{background:#fff8e8;border-color:#f4dfab}.latest-listings{margin-top:0}.listing-record-list{gap:10px;margin-top:14px;display:grid}.listing-record-card{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.listing-record-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.listing-record-card p,.listing-record-card small{color:var(--muted)}.listing-record-card p{margin:4px 0}.listing-record-card small{display:block}.listing-record-meta{text-align:right;justify-items:end;gap:6px;display:grid}.listing-record-meta span{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.market-stats{gap:16px;margin-top:22px;display:grid}.market-stats .section-header{border-top:1px solid var(--border);align-items:end;padding-top:22px}.market-stats .section-header p:not(.eyebrow){color:var(--muted);max-width:760px;margin:6px 0 0}.market-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:6px;min-width:0;padding:14px;display:grid}.metric-card span,.metric-card small{color:var(--muted)}.metric-card span{font-size:13px;font-weight:900}.metric-card strong{color:var(--primary);overflow-wrap:anywhere;font-size:clamp(18px,2vw,26px)}.metric-card small{font-size:12px}.market-note{color:#5f4313;background:#fff8e8;border:1px solid #f4dfab;border-radius:8px;align-items:start;gap:10px;padding:12px 14px;display:flex}.market-note svg{flex:none;margin-top:2px}.market-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:14px;padding:16px;display:grid}.market-form-head{justify-content:space-between;align-items:start;gap:14px;display:flex}.market-form-head h3{margin:0;font-size:20px}.market-form-head p{color:var(--muted);margin:4px 0 0}.market-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.market-form label{color:var(--text);gap:6px;min-width:0;font-size:13px;font-weight:900;display:grid}.market-form input,.market-form select,.market-form textarea{border:1px solid var(--border);color:var(--text);border-radius:8px;width:100%;min-height:42px;padding:9px 10px}.market-form textarea{resize:vertical;min-height:84px}.market-form-wide{grid-column:span 4}.market-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.market-table{border-collapse:collapse;width:100%;min-width:1080px}.market-table th,.market-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px}.market-table th{color:var(--muted);text-transform:uppercase;background:#f7faf8;font-size:12px;font-weight:900}.market-table tr:last-child td{border-bottom:0}.market-table td strong,.market-table td span{display:block}.market-table td span{color:var(--muted);margin-top:2px;font-size:12px}.low-sample-row{background:#fffdf6}.trend-up{color:#166548}.trend-down{color:var(--danger)}.trend-flat{color:var(--muted)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:900px){.site-header,.section-header{flex-direction:column;align-items:start}.site-header{padding:14px 18px;position:static}.nav-links{justify-content:start;width:100%}.search{grid-template-columns:28px 1fr}.search button{grid-column:1/-1;justify-content:center}.workflow-row,.property-grid,.listing-layout,.detail-grid,.form-grid,.admin-grid,.market-metrics,.market-form-grid,.field-form-grid{grid-template-columns:1fr}.market-form-wide,.field-wide{grid-column:span 1}.filters{position:static}.spec-grid{grid-template-columns:1fr}}@media (max-width:560px){.container{padding:0 14px}h1{font-size:32px}h2{font-size:24px}.brand{min-width:0}.nav-links a{flex:46%;justify-content:center}.detail-panel,.form-panel,.filters,.admin-column{padding:14px}.record-card-head,.market-form-head,.field-form-head,.listing-record-card,.listing-record-head{display:grid}.listing-record-meta{text-align:left;justify-items:start}.record-fields{grid-template-columns:1fr}.status-select{width:100%}}
