:root{--ink: #1c1f26;--paper: #f7f5f0;--navy: #1e2f4d;--brass: #b8863b;--line: #dcd6c9;--muted: #6b6a63;--card: #ffffff;--error: #a13a2f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;margin:0 0 .4em}.app{min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;align-items:center;gap:2rem;padding:1rem 2rem;background:var(--navy);color:#fff}.nav .brand{color:#fff;text-decoration:none;font-family:Fraunces,serif;font-size:1.2rem}.nav .brand span{color:var(--brass);font-weight:400}.nav nav{display:flex;gap:1.25rem;flex:1}.nav nav a{color:#d9dee8;text-decoration:none;font-size:.95rem}.nav nav a:hover{color:#fff}.nav-user{display:flex;align-items:center;gap:.75rem;font-size:.9rem}.nav-user button{background:transparent;border:1px solid #4a5a78;color:#fff;padding:.35rem .75rem;border-radius:4px;cursor:pointer}main{flex:1;max-width:1100px;margin:0 auto;padding:2rem;width:100%}.auth-screen{display:flex;align-items:center;justify-content:center;min-height:100vh}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:2.5rem;width:320px;display:flex;flex-direction:column;gap:.9rem}.auth-card label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.auth-card input,.auth-card select{padding:.55rem;border:1px solid var(--line);border-radius:4px;font-size:1rem}.auth-card button{margin-top:.5rem;padding:.65rem;border:none;border-radius:4px;background:var(--navy);color:#fff;font-size:1rem;cursor:pointer}.muted{color:var(--muted)}.error{color:var(--error)}.filters{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.filters input,.filters select{padding:.5rem .7rem;border:1px solid var(--line);border-radius:4px;font-size:.9rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:1rem;position:relative;display:flex;flex-direction:column}.card-link{text-decoration:none;color:inherit;flex:1}.card-top{display:flex;gap:.4rem;margin-bottom:.5rem}.badge{font-size:.72rem;padding:.15rem .5rem;border-radius:3px;background:var(--navy);color:#fff;text-transform:capitalize}.badge.muted{background:var(--line);color:var(--ink)}.card h3{font-size:1.05rem;margin:.2rem 0}.card .locality{margin:0;color:var(--muted);font-size:.88rem;text-transform:capitalize}.card .price{font-weight:600;margin:.4rem 0 .2rem;color:var(--navy)}.card .meta{font-size:.8rem;color:var(--muted);margin:0}.save-btn{align-self:flex-start;margin-top:.6rem;border:1px solid var(--line);background:transparent;padding:.35rem .7rem;border-radius:4px;cursor:pointer;font-size:.85rem}.save-btn.saved{background:var(--brass);color:#fff;border-color:var(--brass)}.pager{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;justify-content:center}.pager button{padding:.4rem .9rem;border:1px solid var(--line);background:#fff;border-radius:4px;cursor:pointer}.pager button:disabled{opacity:.4;cursor:default}.back-link{color:var(--navy);text-decoration:none;font-size:.9rem}.detail-page h1{margin-top:1rem;text-transform:capitalize}.price-big{font-size:1.6rem;font-weight:600;color:var(--navy)}.specs{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.8rem;margin:1.5rem 0}.specs div{border-top:1px solid var(--line);padding-top:.4rem}.specs dt{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.specs dd{margin:.15rem 0 0;font-weight:500}.description{line-height:1.6;max-width:65ch}.contact-box{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:1rem;margin:1rem 0;display:inline-block}.mini-card{display:block;border:1px solid var(--line);border-radius:6px;padding:.7rem;text-decoration:none;color:inherit;background:#fff;font-size:.85rem}.summary-grid{display:flex;gap:2rem;margin:1.5rem 0}.stat span{display:block;font-size:1.8rem;font-weight:600;color:var(--navy);font-family:Fraunces,serif}.stat label{font-size:.85rem;color:var(--muted)}table{width:100%;border-collapse:collapse;margin:1rem 0 2rem}th,td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--line);font-size:.9rem;text-transform:capitalize}.discoveries{list-style:none;padding:0;display:flex;flex-direction:column;gap:1rem}.discoveries li{border-left:3px solid var(--brass);padding-left:1rem}
