
:root{--ink:#10231f;--muted:#52635e;--line:#d6ddd8;--surface:#f3f5f1;--teal:#0b7568}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink);font:16px/1.6 Inter,system-ui,sans-serif}header,main{max-width:1100px;margin:auto;padding:20px}header{display:flex;justify-content:space-between;gap:15px}h1{font-size:clamp(25px,5vw,38px);line-height:1.2}h2{font-size:22px}h3{font-size:18px}.intro,.panel,.result{background:white;border:1px solid var(--line);border-radius:14px;padding:clamp(18px,4vw,28px);margin:18px 0}.intro{border-left:5px solid var(--teal)}.muted,small{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.line{padding:18px 0;border-bottom:1px solid var(--line)}label{display:block}input:not([type=checkbox]),select{display:block;width:100%;border:1px solid #9bab9f;border-radius:6px;padding:10px;color:var(--ink);background:white;font:inherit}input[type=checkbox]{width:18px;height:18px;vertical-align:middle}button{padding:11px 17px;border:1px solid var(--teal);border-radius:7px;background:white;color:#07594f;font:inherit;cursor:pointer;margin:5px 5px 5px 0}.primary{background:var(--teal);color:white}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4c9a62;outline-offset:3px}.money{font-size:26px;font-weight:750;color:#07594f}dl{display:grid;grid-template-columns:1fr auto;gap:8px}dd{margin:0}.alert{background:#fff6e9;border-left:4px solid #bb6b1f;padding:12px}#error{color:#9b2519}details{margin:14px 0}summary{cursor:pointer}.table{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}td,th{padding:8px;text-align:left;border-bottom:1px solid var(--line)}@media(max-width:800px){.grid{grid-template-columns:1fr}.fields{grid-template-columns:1fr 1fr}header{display:block}}@media(max-width:420px){.fields{grid-template-columns:1fr}}@media print{header,.entry,button{display:none}body{background:white}.grid{display:block}.result{break-inside:avoid}main{padding:0}.intro{margin-top:0}}

.mem-header{align-items:center;flex-wrap:wrap}.mem-header a{color:var(--ink);text-decoration:none}.mem-header .brand{font-weight:800}.mem-footer{max-width:1100px;margin:auto;padding:20px;display:flex;flex-wrap:wrap;gap:20px}.mem-footer a{color:var(--teal)}.mem-main{width:auto;max-width:1100px;margin:auto;padding:clamp(16px,3vw,30px)}.mem-main .fields{margin:16px 0}.mem-main input{min-width:0}.mem-main button{white-space:normal}.member-gate{border:1px solid #d6ddd8;background:#f3f5f1;border-radius:12px;padding:20px}.member-comparator-link{margin:18px 0}@media print{.mem-header,.mem-footer,.member-save-panel{display:none!important}.mem-main{max-width:none;padding:0;overflow:visible}}
.mem-preview{margin:24px 0;border:1px solid var(--line,#d6ddd8);border-radius:12px;padding:clamp(16px,3vw,28px);background:#f7faf7}.mem-preview figcaption{color:var(--muted,#52635e);font-size:.9rem;margin:14px 0 0}.mem-preview .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.mem-preview label{display:grid;gap:8px;font-weight:600}.mem-preview input{width:100%;box-sizing:border-box;background:#fff;color:var(--ink,#10231f);border:1px solid #d6ddd8;border-radius:8px;padding:12px;font:inherit}.mem-preview .table{overflow-x:auto}.mem-preview table{min-width:440px;width:100%;border-collapse:collapse;margin:20px 0 0}.mem-preview th,.mem-preview td{text-align:left;padding:12px 8px;border-bottom:1px solid #d6ddd8}.mem-preview td:last-child{font-weight:700;color:var(--teal,#07594f)}.mem-preview .mem-map-thumbnail{display:block;width:100%;max-width:310px;height:auto;margin:0 auto}.mem-preview-note{font-size:.9rem;color:var(--muted,#52635e)}.mem-preview-actions{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0}.mem-preview-actions a{color:var(--teal,#07594f);font-weight:600;text-underline-offset:4px}.mem-preview-features{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.mem-preview-features span{border:1px solid #d6ddd8;border-radius:20px;padding:5px 12px;font-size:.9rem}@media(max-width:440px){.mem-preview .fields{grid-template-columns:1fr}.mem-preview table{min-width:370px}.mem-preview th,.mem-preview td{padding:10px 6px;font-size:.86rem}}
