:root{--ink:#16222e;--ink-2:#44515e;--muted:#6b7783;--line:#dfe3e7;--bg:#f5f3ef;--card:#fff;--brand:#0f5c4d;--brand-ink:#fff;--brand-soft:#e5f1ed;--accent:#b9852f;--danger:#b3261e;--danger-soft:#fbe9e7;--warn-soft:#fdf4e3;--info-soft:#eaf1f8;--ok-soft:#e7f4ec;--radius:10px;--shadow:0 1px 2px #16222e0f, 0 4px 14px #16222e0d;--serif:"Source Serif 4", Georgia, serif;--sans:"Inter", system-ui, -apple-system, Segoe UI, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.55}a{color:var(--brand)}h1,h2,h3{margin:0 0 .4em;line-height:1.2}h1{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700}h2{font-size:1.1rem;font-weight:600}h3{font-size:1rem;font-weight:600}p{margin:0 0 .75em}input,select,textarea,button{font:inherit;color:inherit}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem clamp(1rem,4vw,2rem);display:flex}.brand{color:var(--ink);align-items:center;gap:.6rem;text-decoration:none;display:flex}.brand__mark{background:var(--brand);width:34px;height:34px;color:var(--brand-ink);font-family:var(--serif);border-radius:8px;place-items:center;font-size:1.1rem;font-weight:700;display:grid}.brand__name{letter-spacing:-.01em;font-weight:700;display:block}.brand__sub{color:var(--muted);font-size:.75rem;display:block}.topbar__nav{align-items:center;gap:.75rem;display:flex}.topbar__who{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;max-width:40vw;font-size:.9rem;overflow:hidden}.main{flex:1;padding:clamp(1rem,4vw,2.5rem) clamp(1rem,4vw,2rem)}.footer{border-top:1px solid var(--line);color:var(--muted);background:var(--card);padding:1.5rem clamp(1rem,4vw,2rem);font-size:.82rem}.footer p{margin:.25rem 0}.footer__fine{max-width:70ch}.page{max-width:1040px;margin:0 auto}.page--narrow{max-width:720px}.page--wide{max-width:1280px}.page__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:.35rem;font-size:.72rem;font-weight:600}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center}.stack>*+*{margin-top:.9rem}.row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.row--tight{flex-wrap:nowrap;gap:.35rem}.row--wrap{flex-wrap:wrap}.split{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:1.25rem;margin-top:1.25rem;display:grid}@media (width<=860px){.split{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1rem,3vw,1.5rem)}.card+.card,.card+section,section+section{margin-top:1.25rem}.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.1rem;font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn:disabled{opacity:.55;cursor:default}.btn--primary{background:var(--brand);color:var(--brand-ink)}.btn--primary:hover:not(:disabled){background:#0b4a3e}.btn--outline{background:var(--card);border-color:var(--line);color:var(--ink)}.btn--outline:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.btn--ghost{color:var(--ink-2);background:0 0}.btn--ghost:hover:not(:disabled){background:#16222e0d}.btn--danger{background:var(--danger);color:#fff}.btn--lg{padding:.85rem 1.4rem;font-size:1rem}.btn--sm{padding:.35rem .7rem;font-size:.82rem}.btn--block{width:100%;margin-top:.6rem}.linklike{color:var(--brand);cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.field{flex-direction:column;gap:.3rem;display:flex}.field--full{grid-column:1/-1}.field__label{color:var(--ink-2);font-size:.85rem;font-weight:600}.field__hint{color:var(--muted);font-size:.78rem}input:not([type=checkbox]):not([type=file]),select,textarea{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:.6rem .7rem}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.grid2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.grid2--tight{gap:.6rem}@media (width<=600px){.grid2{grid-template-columns:1fr}}.check{color:var(--ink-2);align-items:flex-start;gap:.6rem;font-size:.9rem;display:flex}.check input{width:16px;height:16px;accent-color:var(--brand);flex:none;margin-top:.25rem}.dropzone{text-align:center;border:2px dashed var(--line);border-radius:var(--radius);cursor:pointer;background:#fbfaf8;flex-direction:column;align-items:center;gap:.2rem;padding:1.4rem;display:flex}.dropzone:hover{border-color:var(--brand)}.dropzone input{opacity:0;width:1px;height:1px;position:absolute}.dropzone span{color:var(--muted);font-size:.82rem}.notice{border:1px solid #0000;border-radius:8px;margin:.75rem 0;padding:.75rem 1rem;font-size:.9rem}.notice--info{background:var(--info-soft);border-color:#d3e1ef}.notice--success{background:var(--ok-soft);border-color:#cfe7d8}.notice--warn{background:var(--warn-soft);border-color:#f1dfb8}.notice--error{background:var(--danger-soft);color:#7c1d17;border-color:#f2c9c4}.badge{color:var(--ink-2);white-space:nowrap;background:#edf0f2;border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.badge--live,.badge--approved,.badge--accepted{background:var(--ok-soft);color:#1d6b3a}.badge--submitted,.badge--pending{background:var(--warn-soft);color:#8a5a07}.badge--under_contract{background:var(--info-soft);color:#1f4f80}.badge--declined,.badge--rejected,.badge--withdrawn{background:var(--danger-soft);color:#8d2a22}.badge--closed{color:#463c84;background:#e6e3f3}.loading{color:var(--muted);justify-content:center;align-items:center;gap:.6rem;padding:3rem;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--brand);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:1.5rem .5rem}.empty__title{margin-bottom:.3rem;font-weight:600}.empty__body{color:var(--muted)}.landing{max-width:1000px;margin:0 auto}.hero{max-width:760px;padding:clamp(1.5rem,6vw,4rem) 0 2rem}.hero h1{letter-spacing:-.02em;font-size:clamp(2rem,5vw,3.1rem)}.lede{color:var(--ink-2);max-width:60ch;font-size:1.1rem}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem;display:grid}.step{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.step__num{background:var(--brand-soft);width:28px;height:28px;color:var(--brand);border-radius:50%;place-items:center;margin-bottom:.6rem;font-weight:700;display:inline-grid}.step p{color:var(--ink-2);margin:0}.auth-card{max-width:440px;margin:1rem auto}.auth-card--wide{max-width:640px}.auth-card__links{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:1rem;font-size:.88rem;display:flex}.role-pick{grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0;display:grid}@media (width<=520px){.role-pick{grid-template-columns:1fr}}.role-pick__opt{text-align:left;border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;background:#fff;flex-direction:column;gap:.2rem;padding:1rem;display:flex}.role-pick__opt span{color:var(--muted);font-size:.85rem}.role-pick__opt.is-on{border-color:var(--brand);background:var(--brand-soft)}.stepper{flex-wrap:wrap;gap:.4rem;margin:1.25rem 0;padding:0;list-style:none;display:flex}.stepper button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;align-items:center;gap:.45rem;padding:.35rem .6rem;font-size:.85rem;display:flex}.stepper button:disabled{cursor:default}.stepper__n{background:#e8e5e0;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:inline-grid}.stepper .is-current button{background:var(--brand-soft);color:var(--brand);font-weight:600}.stepper .is-current .stepper__n,.stepper .is-done .stepper__n{background:var(--brand);color:#fff}.stepper .is-done button{color:var(--ink-2)}@media (width<=600px){.stepper__l{display:none}.stepper .is-current .stepper__l{display:inline}}.progress{color:var(--muted);gap:.25rem;margin:1rem 0;padding:0;font-size:.78rem;list-style:none;display:flex}.progress li{border-top:4px solid #e8e5e0;flex:1;padding-top:.55rem}.progress li.is-done{border-color:var(--brand);color:var(--ink-2)}.progress li.is-current{border-color:var(--accent);color:var(--ink);font-weight:600}@media (width<=600px){.progress li:not(.is-current){font-size:0}}.property__head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.property__photos{border-top:1px solid var(--line);margin-top:1rem;padding-top:.75rem}.property__photos summary{cursor:pointer;margin-bottom:.75rem;font-weight:600}.facts{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem 1rem;margin:0 0 1rem;display:grid}.fact dt{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.75rem}.fact dd{overflow-wrap:anywhere;margin:.1rem 0 0;font-weight:500}.thumbs{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.6rem;display:grid}.thumb{aspect-ratio:4/3;background:#ece9e4;border-radius:8px;margin:0;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb__ph{background:linear-gradient(135deg,#ece9e4,#f6f4f1);width:100%;height:100%}.thumb__x{color:#fff;cursor:pointer;background:#16222ebf;border:0;border-radius:50%;width:26px;height:26px;font-size:1rem;line-height:1;position:absolute;top:4px;right:4px}.prop-card{color:inherit;flex-direction:column;padding:0;text-decoration:none;display:flex;overflow:hidden}.prop-card .thumb,.prop-card__ph{aspect-ratio:16/10;border-radius:0;height:auto}.prop-card__body{padding:.9rem 1rem 1rem}.prop-card:hover{border-color:var(--brand)}.offers{gap:.9rem;display:grid}.offer{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:1rem}.offer--accepted{background:#fafdfb;border-color:#9fd0b0}.offer--declined,.offer--withdrawn{opacity:.7}.offer__head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.offer__amount{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:1.6rem;font-weight:700}.offer__who{color:var(--muted);margin:0;font-size:.88rem}.offer__terms{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem 1rem;margin:.9rem 0 0;display:grid}.offer__terms dt{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem}.offer__terms dd{margin:0;font-size:.9rem;font-weight:500}.offer__note{margin:.75rem 0 0;font-size:.9rem}.offer__warn{background:var(--warn-soft);border-radius:6px;margin:.75rem 0 0;padding:.5rem .7rem;font-size:.85rem}.offer__actions{border-top:1px solid var(--line);margin-top:.9rem;padding-top:.9rem}.tabs{border-bottom:1px solid var(--line);gap:.25rem;margin-bottom:1.25rem;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1px;padding:.7rem 1rem;font-weight:600}.tabs button.is-on{color:var(--ink);border-color:var(--brand)}.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;padding:1rem 1.1rem;display:flex}.kpi__v{font-family:var(--serif);font-size:1.9rem;font-weight:700;line-height:1}.kpi__l{color:var(--muted);margin-top:.35rem;font-size:.85rem}.toolbar{flex-wrap:wrap;gap:.6rem;display:flex}.toolbar input{flex:260px}.toolbar select{flex:none;width:auto}.table-wrap{padding:0;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.88rem}.table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:#fbfaf8;padding:.75rem 1rem;font-size:.72rem}.table td{border-bottom:1px solid var(--line);vertical-align:top;padding:.75rem 1rem}.table tr:last-child td{border-bottom:0}.cell-wrap{white-space:pre-wrap;max-width:280px}.choice-grid{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.6rem;display:grid}.choice{text-align:left;cursor:pointer;font:inherit;background:#fff;border:1px solid #ddd8d0;border-radius:10px;padding:.8rem .9rem;display:block}.choice.is-on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.choice strong{display:block}.choice span{color:var(--muted);font-size:.82rem}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{cursor:pointer;font:inherit;background:#fff;border:1px solid #ddd8d0;border-radius:999px;padding:.3rem .7rem;font-size:.85rem}.chip.is-on{background:var(--brand);border-color:var(--brand);color:#fff}.field__error{color:#a3271f;font-size:.82rem}.doc-row{border-top:1px solid #ece8e2;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;padding:.7rem 0;display:flex}.doc-row:first-of-type{border-top:0}.doc-row__main{flex:240px;min-width:0}.doc-file{overflow-wrap:anywhere;align-items:center;gap:.6rem;font-size:.88rem;display:flex}.tag{background:#ece8e2;border-radius:999px;padding:.05rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.tag--ok{color:#1d5b42;background:#dcefe5}.tag--warn{color:#7a5208;background:#fbecd0}.tag--bad{color:#8c2219;background:#f8dfdc}.deadline{color:#fff;background:#1f4d3f;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;padding:.8rem 1rem;display:flex}.deadline strong{font-size:1.1rem}.fact-strip{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;display:grid}
