*{box-sizing:border-box}body{margin:0;background:#f4f7f5;color:#153336;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,.import-btn,.upload{cursor:pointer}a{color:#136b61}.top{background:#102d33;color:white;padding:18px max(22px,calc((100vw - 1250px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{color:white;text-decoration:none;font-weight:800;font-size:23px}.brand span{color:#a4ddc1}.top nav{display:flex;gap:18px;flex-wrap:wrap}.top nav a{color:#d6e7e5;text-decoration:none;font-size:13px}main{max-width:1250px;margin:auto;padding:42px 22px 80px}.intro h1{font-size:clamp(35px,5vw,60px);letter-spacing:-.05em;margin:12px 0}.intro h1 em{color:#1d8871;font-style:normal}.intro p{max-width:740px;color:#526d70;line-height:1.65}.eyebrow{color:#238772;font-size:11px;letter-spacing:.13em;font-weight:800}.notice{padding:13px 17px;background:#edf4ec;border:1px solid #c9ddce;border-radius:12px;font-size:13px;line-height:1.5;margin:16px 0}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px 0 20px;flex-wrap:wrap}.stats{display:flex;gap:10px;flex-wrap:wrap}.stat{background:white;border:1px solid #dce6e2;border-radius:12px;padding:12px 18px}.stat strong{display:block;font-size:23px}.stat small{color:#66807c}.toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.toolbar button,.import-btn,.detail-actions button,.tab-panel button,.upload{border:1px solid #c8d8d4;background:white;padding:11px 14px;border-radius:10px;color:#164f4a;font-weight:650;display:inline-block}.toolbar .primary,.tab-panel .primary{background:#126958;color:white;border-color:#126958}.layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.sidebar,.detail{background:white;border:1px solid #dce6e2;border-radius:18px;padding:20px;min-width:0;box-shadow:0 8px 24px #123a3010}.sidebar-head{display:flex;flex-direction:column;gap:12px;margin-bottom:15px}.sidebar h2{font-size:18px;margin:0}.project-list{display:grid;gap:9px}.project-item{display:block;width:100%;text-align:left;border:1px solid #dae6e1;background:#fafcfb;padding:13px;border-radius:12px}.project-item.selected{border-color:#258b72;background:#ecf7f0}.project-item strong,.project-item small{display:block}.project-item small{color:#607c78;margin-top:5px}.project-item span{font-size:12px;color:#1a7966}.muted,.hint{color:#68807d;font-size:13px;line-height:1.55}.detail-head{display:flex;justify-content:space-between;gap:15px;align-items:start}.detail-head h2{font-size:27px;letter-spacing:-.03em;margin:7px 0}.detail-actions{display:flex;gap:8px;flex-wrap:wrap}.detail-actions .danger{color:#a23e3e}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:18px 0}.kpi{background:#f4f8f6;border-radius:12px;padding:15px}.kpi small{display:block;color:#65807b;font-size:11px}.kpi strong{display:block;font-size:20px;margin:7px 0}.impact{border:1px solid #b9dfd0;background:#f2faf5;padding:13px;border-radius:12px;font-size:13px}.impact .negative{color:#a3423c}.impact .positive{color:#197b55}.tabs{display:flex;border-bottom:1px solid #d9e5e0;margin:24px 0 20px;gap:7px;flex-wrap:wrap}.tabs button{border:0;background:transparent;padding:12px;color:#58716c}.tabs button.active{color:#116957;border-bottom:3px solid #116957;font-weight:750}.tab-panel h3{margin:25px 0 12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}label{display:block;font-size:13px;font-weight:650;color:#335b56}label input,label select,label textarea,select#stage,select#filter-stage{display:block;width:100%;margin-top:6px;padding:11px 10px;border:1px solid #cbdcd5;border-radius:9px;background:white;color:#193a36;min-width:0}label textarea{resize:vertical}.timeline{display:grid;gap:12px}.entry{border-left:3px solid #77bca3;padding:8px 15px;background:#f7faf8;border-radius:0 10px 10px 0}.entry small{color:#63827b}.entry strong{display:block;margin:5px 0}.entry p{white-space:pre-wrap;overflow-wrap:anywhere;color:#496760}.entry .diff{font-size:12px;font-weight:750}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;margin-top:18px}.photo{border:1px solid #d9e5e0;border-radius:12px;padding:8px}.photo img{width:100%;height:115px;object-fit:cover;border-radius:7px}.photo button{padding:6px;font-size:12px}.photo small{display:block;overflow-wrap:anywhere}footer{text-align:center;color:#718682;font-size:12px;padding:24px}@media(max-width:900px){.layout{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.top{align-items:flex-start;flex-direction:column}.detail-head{flex-direction:column}.form-grid{grid-template-columns:1fr}.toolbar-actions{width:100%}.kpis{grid-template-columns:1fr 1fr}.kpi strong{font-size:16px}}@media print{.top,.toolbar,.sidebar,.tabs,.tab-panel form,.detail-actions,.upload{display:none!important}.layout{display:block}.detail{border:0;box-shadow:none}.tab-panel{display:block!important}}
.market-link{font-size:12px;color:#176c57;text-decoration:none;border:1px solid #d7e8dd;padding:9px 10px;border-radius:10px;background:#f6fbf8;font-weight:700;white-space:nowrap}

.market-record{font-size:12px;color:#49665a;background:#f4faf7;border:1px solid #e2eee7;border-radius:10px;padding:11px 13px;margin:12px 0;line-height:1.6}

#bucket-offer-visit { margin-block: 1rem; }
.visit-comparison-scroll { overflow-x: auto; }
.visit-comparison { width: 100%; border-collapse: collapse; text-align: left; }
.visit-comparison caption { text-align: left; font-weight: 700; padding-block: .5rem; }
.visit-comparison :is(th, td) { padding: .55rem; border-bottom: 1px solid #d8e7dd; }
.visit-check { margin-block: .6rem; padding: .7rem; border: 1px solid #d8e7dd; border-radius: .6rem; }
.visit-check summary { cursor: pointer; font-weight: 700; }
.visit-check form, .visit-check label { display: grid; gap: .35rem; }
.visit-check form { margin-block: .65rem; }
.visit-check .visit-confirm { display: flex; align-items: center; }
.visit-check .visit-confirm input { width: auto; }
.visit-check-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr)); gap: .55rem; }
.visit-check-photos { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .5rem; }
.visit-check-photos img { width: 7rem; height: 5rem; border-radius: .4rem; object-fit: cover; }
.visit-status:empty { display: none; }
