:root{font-family:"Segoe UI",Arial,sans-serif;color:#1d352d;background:#f5f7f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.topbar{height:90px;border-bottom:1px solid #e0e6df;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:0 30px}.brand{font-size:30px;font-weight:750;text-decoration:none;color:#203e30;letter-spacing:-1.2px;display:flex;align-items:center;gap:9px}.brand-icon{background:#214f3d;color:#d9ebaa;border-radius:10px;font-size:30px;line-height:38px;width:40px;text-align:center}.brand-dot{color:#749444;margin-left:-8px}.topbar-note{font-size:13px;color:#738078}main{max-width:1180px;margin:auto;padding:48px 30px 22px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#73864c}h1{font-size:46px;line-height:1.12;letter-spacing:-1.6px;margin:17px 0}.intro{position:relative;margin-bottom:36px}.intro>p{position:absolute;right:12px;bottom:5px;line-height:1.7;font-size:15px;color:#7b857f}.workspace{display:grid;grid-template-columns:0.92fr 1.08fr;gap:28px}.panel{border:1px solid #e1e6de;border-radius:20px;background:white;padding:28px}.section-heading{display:flex;align-items:center;gap:12px}.step{font-size:11px;color:#819077;border:1px solid #dce4d6;border-radius:50%;width:27px;height:27px;display:grid;place-items:center}h2{font-size:18px;margin:0;letter-spacing:-.3px}form{margin-top:29px}.field{margin-bottom:18px}label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.input-wrap{display:flex;align-items:center;border:1px solid #dde3db;background:#fafbf8;border-radius:10px;padding:0 15px;transition:.15s}.input-wrap:focus-within{border-color:#44765a;box-shadow:0 0 0 3px #44765a16}.input-wrap:has([aria-invalid="true"]){border-color:#ba5748}.input-wrap span{font-size:13px;color:#879086;white-space:nowrap}input{border:0;outline:0;background:none;width:100%;min-width:0;padding:14px 0;font:600 19px "Segoe UI",Arial,sans-serif;color:#243a30}.hint{font-size:11px;color:#899188;margin:8px 0 0}.error{font-size:12px;color:#a34032;margin:6px 0 0}.error:empty{display:none}.form-footer{border-top:1px solid #edf0e9;padding-top:18px;margin-top:23px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#899188}.live-dot{display:inline-block;background:#7d9b59;width:6px;height:6px;border-radius:50%;margin-right:5px}button{border:0;background:none;color:#627664;font:inherit;font-size:12px;cursor:pointer;padding:6px}button:hover{text-decoration:underline}button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #467557;outline-offset:4px}.results{padding-top:7px;min-width:0}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.badge{background:#e6eddb;color:#607647;font-size:10px;font-weight:600;padding:7px 10px;border-radius:20px;white-space:nowrap}.profit-card{background:#234f3d;color:white;border-radius:18px;padding:26px 28px;position:relative;overflow:hidden}.profit-card:after{content:"";position:absolute;width:210px;height:210px;border:1px solid #ffffff0b;border-radius:50%;right:-80px;top:-70px;pointer-events:none}.profit-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#d0decc}.profit-top>span:last-child{font-size:24px;color:#c3da96}.profit-value{font-size:43px;font-weight:650;letter-spacing:-1.5px;margin:17px 0 24px;overflow-wrap:anywhere}.profit-bottom{border-top:1px solid #ffffff24;padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#c4d5c6}.profit-bottom strong{font-size:22px;color:#d3e9ac}.profit-card.loss{background:#70473e}.profit-card.neutral{background:#4d6258}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.metric{background:#eaf0e3;border:1px solid #e1e7d9;border-radius:14px;padding:20px;min-width:0}.metric>span{display:block;color:#66745f;font-size:12px}.metric strong{display:block;font-size:23px;font-weight:650;margin:10px 0 7px;letter-spacing:-.6px;overflow-wrap:anywhere}.metric small{font-size:11px;color:#8a9482}.breakdown{padding:23px 3px 0}.breakdown-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.breakdown-title h3{font-size:13px;margin:0}.breakdown-title>span{font-size:12px;color:#8b9587}.bar-row{margin-bottom:15px}.bar-row>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin-bottom:8px;color:#7d8878}.bar-row b{color:#43543f;font-weight:600}.track{background:#e5eadf;height:7px;border-radius:5px;overflow:hidden}.bar{height:100%;border-radius:5px;transition:width .2s}.investment-bar{background:#a3b291}.sale-bar{background:#416b48}.breakdown>p{font-size:11px;color:#7a8774;line-height:1.5;margin:18px 0 0}.formulas{margin-top:28px;border:1px solid #e0e6dc;border-radius:12px;font-size:12px;color:#6c7c64}.formulas summary{cursor:pointer;padding:17px 20px}.formulas>div{padding:0 20px 12px;line-height:1.7}.formulas p{margin:8px 0}footer{display:flex;justify-content:space-between;gap:15px;margin-top:27px;color:#90998c;font-size:10px;line-height:1.6}@media(min-width:1400px){main{padding-top:65px}}@media(max-width:850px){.intro>p{position:static}.desktop-break{display:none}.workspace{gap:20px}.panel{padding:22px}.result-heading{flex-wrap:wrap}.profit-value{font-size:34px}.metric{padding:16px}.metric strong{font-size:19px}}@media(max-width:640px){.topbar{height:74px;padding:0 20px}.topbar-note{font-size:10px;max-width:130px;text-align:right}main{padding:30px 18px 20px}h1{font-size:36px}.intro>p{font-size:14px}.workspace{grid-template-columns:1fr}.intro{margin-bottom:25px}.results{padding-top:5px}.result-heading{margin:6px 2px 18px}.profit-value{font-size:39px}footer{flex-direction:column;gap:5px}.metric strong{font-size:22px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Таблица сравнения продолжает оформление калькулятора. */
.primary-button{width:100%;background:#234f3d;color:#fff;border-radius:10px;font-size:14px;font-weight:600;padding:14px;margin-top:5px}.primary-button:hover{background:#32634b;text-decoration:none}.saved-panel{margin-top:28px}.saved-panel>.hint{line-height:1.7;margin-top:15px}.saved-panel #storage-message{font-size:12px;color:#6c7c64;line-height:1.6}.saved-panel #empty-table{padding:24px 0 8px;color:#7d8878;font-size:14px}.table-scroll{overflow-x:auto;margin-top:18px;border-radius:10px}.table-scroll:focus-visible{outline:2px solid #467557;outline-offset:4px}table{border-collapse:collapse;width:100%;font-size:12px}thead{background:#eaf0e3}th,td{padding:15px 12px;text-align:right;border-bottom:1px solid #e1e6de;font-variant-numeric:tabular-nums}thead th{font-size:11px;color:#62745c;min-width:115px}th:first-child{text-align:left;min-width:170px;max-width:260px;overflow-wrap:anywhere}tbody th{font-weight:600}td{white-space:nowrap}thead button{font-weight:600;text-align:right;font-size:11px;padding:0;line-height:1.6}thead button span{white-space:nowrap}tbody tr:hover{background:#fafbf8}.delete-button{color:#a34032}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
.csv-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.secondary-button{border:1px solid #cbd8c4;background:#eaf0e3;color:#234f3d;border-radius:9px;padding:10px 16px;font-size:13px;font-weight:600}.secondary-button:hover{background:#dce8d3;text-decoration:none}button:disabled{opacity:.5;cursor:default}.csv-preview{margin-top:20px;padding:20px;border:1px solid #cbd8c4;border-radius:12px;background:#fafbf8}.csv-preview h3{font-size:15px;margin:0 0 12px}.csv-preview p,#csv-message{font-size:12px;line-height:1.7}#csv-errors{max-height:180px;overflow:auto;color:#a34032;font-size:12px;line-height:1.8;padding-left:20px}
.check-label{display:flex;align-items:flex-start;gap:10px;max-width:850px;margin-top:16px;font-size:12px;font-weight:400;line-height:1.6}.check-label input{width:17px;height:17px;flex:none;accent-color:#234f3d;padding:0;margin:2px 0}.csv-preview details{margin:12px 0}.csv-preview summary{cursor:pointer;color:#42623d}.csv-preview ul{max-height:280px;overflow:auto;overflow-wrap:anywhere;font-size:12px;line-height:1.7}.csv-preview details li{margin-bottom:8px}

/* A listing and its full-width card are two sibling table rows. */
.saved-panel{min-width:0}
.table-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}
.table-tools label{margin:0;font-size:12px}
.table-tools select{max-width:100%;border:1px solid #cbd8c4;border-radius:8px;background:#fafbf8;color:#234f3d;font:12px "Segoe UI",Arial,sans-serif;padding:9px}
.table-scroll{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto}
#plots-table{table-layout:fixed;width:100%;min-width:1080px}
#plots-table .col-place{width:180px}
#plots-table .col-area{width:70px}
#plots-table .col-price{width:110px}
#plots-table .col-unit,#plots-table .col-market{width:100px}
#plots-table .col-delta{width:85px}
#plots-table .col-status,#plots-table .col-link{width:95px}
#plots-table .col-priority{width:65px}
#plots-table .col-actions{width:170px}
#plots-table thead th{min-width:0;max-width:none;padding:10px 8px;white-space:normal;line-height:1.4;font-size:11px}
#plots-table .plot-row>th,#plots-table .plot-row>td{min-width:0;max-width:none;padding:9px 8px;height:44px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;font-size:12px;line-height:1.4}
#plots-table .plot-row>th,#plots-table [data-column="status"],#plots-table [data-column="link"]{text-align:left}
#plots-table a{color:#356c49;text-decoration:none}
#plots-table a:hover{text-decoration:underline}
.price-kind{display:block;font-size:10px;color:#7d8878;font-weight:400}
#plots-table .row-actions{white-space:nowrap}
.row-actions button{font-size:11px;padding:6px 4px}
.card-toggle{font-weight:600;color:#356c49;margin-right:5px}
#plots-table .plot-detail-cell{padding:0;white-space:normal;text-align:left;vertical-align:top}
.plot-card{display:block;width:100%;max-width:none;min-width:0;white-space:normal;overflow-wrap:anywhere;padding:22px;background:#f5f7f3;color:#243a30;border-block:1px solid #dce4d6}
.plot-card h3{font-size:18px;margin:0 0 18px;overflow-wrap:anywhere}
.plot-card-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:30px}
.plot-card-grid>section{min-width:0}
.plot-card h4{font-size:14px;margin:0 0 14px}
.plot-card dl{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(0,1.4fr);gap:10px 15px;font-size:12px;line-height:1.6}
.plot-card dt{min-width:0;color:#7d8878}
.plot-card dd{margin:0;min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}
.plot-card pre{max-width:100%;max-height:24rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}
.plot-card label{font-size:12px;margin-top:14px}
.plot-card input,.plot-card textarea{display:block;width:100%;min-width:0;background:white;border:1px solid #cbd8c4;border-radius:7px;padding:9px;font:14px "Segoe UI",Arial,sans-serif;margin-top:7px}
.plot-card textarea{min-height:72px;resize:vertical}
.plot-card p{font-size:12px;line-height:1.6}
.plot-card input:focus-visible,.plot-card textarea:focus-visible,.table-tools select:focus-visible{outline:2px solid #467557}
.financial-summary{background:#eaf0e3;border-radius:10px;padding:15px}
.financial-summary [data-metric="profit"],.financial-summary [data-metric="roi"]{font-weight:700}
@media(max-width:900px){.plot-card-grid{grid-template-columns:minmax(0,1fr);gap:24px}.plot-card{padding:18px}}
.status-warning{min-width:0;max-width:100%;padding:16px 18px;margin:0 0 20px;border:1px solid #d6af62;border-left:5px solid #b78227;border-radius:10px;background:#fff4dc;color:#704e1c;overflow-wrap:anywhere;white-space:normal}
.status-warning h4{margin:0 0 8px;color:#704e1c}
.status-warning ul{margin:0;padding-left:20px}
.status-warning li{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
.status-warning p{margin:9px 0 0}
.plot-card dd,.plot-card textarea{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
/* View-only filters: responsive controls stay outside the scrolling table. */
.filter-panel{margin-top:22px;padding:20px;background:#f5f7f3;border:1px solid #dce4d6;border-radius:14px;min-width:0}
.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.filter-heading h3{font-size:15px;margin:0}.filter-heading button{margin:0;font-size:12px}
.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.filter-grid>label,.filter-grid fieldset{min-width:0;margin:0}
.filter-grid label{font-size:12px;font-weight:600;margin-bottom:0}
.filter-search{grid-column:1/-1}
.filter-grid input,.filter-grid select{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;border:1px solid #cbd8c4;border-radius:8px;background:white;color:#243a30;font:14px "Segoe UI",Arial,sans-serif;padding:10px;margin-top:7px;min-height:41px}
.filter-grid input::placeholder{font-size:12px;color:#8b9587}
.filter-grid input:focus-visible,.filter-grid select:focus-visible{outline:2px solid #467557;outline-offset:1px}
.filter-grid input[aria-invalid="true"]{border-color:#a34032}
.filter-grid fieldset{padding:0;border:0}.filter-grid legend{font-size:12px;font-weight:600;margin-bottom:7px;padding:0}
.range-inputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.range-inputs label{font-size:11px;color:#738078;font-weight:400}
.filter-panel>.hint{line-height:1.7;margin-top:16px}.filter-count{font-size:13px;font-weight:650;color:#234f3d;margin:14px 0 0}
@media(max-width:700px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid fieldset:last-child{grid-column:1/-1}}
@media(max-width:480px){.filter-panel{padding:16px}.filter-grid{grid-template-columns:minmax(0,1fr)}.filter-grid fieldset:last-child{grid-column:auto}}
