:root{--ink:#25231f;--muted:#767269;--paper:#f5f1e9;--card:#fffdf8;--line:#ded8cc;--green:#1f5948;--green2:#dce9df;--gold:#b8863b;--shadow:0 12px 35px rgba(57,46,30,.07)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#173f35;color:#f8f2e6;padding:34px 24px;display:flex;flex-direction:column;z-index:3}.brand{display:flex;gap:13px;align-items:center;color:inherit;text-decoration:none;font-family:'Playfair Display';font-size:20px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid #d3b274;border-radius:50%;font:600 15px 'DM Sans'}.brand small{display:block;color:#a9c1b8;font:400 10px 'DM Sans';letter-spacing:.13em;text-transform:uppercase;margin-top:3px}.sidebar nav{display:grid;gap:8px;margin-top:55px}.sidebar nav a{color:#bed0c9;text-decoration:none;padding:12px 15px;border-radius:7px;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}.sidebar-note{margin-top:auto;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;color:#9fbbb1;font-size:12px;line-height:1.6}main{margin-left:245px;padding:0 42px 55px;max-width:1600px}.topbar{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}h1,h2,h3{font-family:'Playfair Display',serif;margin:0}h1{font-size:25px}h2{font-size:35px;line-height:1.2}h3{font-size:21px}.eyebrow{display:block;color:var(--gold);font-weight:700;font-size:10px;letter-spacing:.16em;margin-bottom:6px}.button{appearance:none;border:0;border-radius:5px;padding:11px 17px;font:600 13px 'DM Sans';text-decoration:none;display:inline-flex;justify-content:center;cursor:pointer}.button.primary{background:var(--green);color:white}.button.secondary{background:transparent;color:var(--green);border:1px solid #a9b8af}.button:disabled{opacity:.4}.button.full{width:100%;margin-top:18px}.menu{display:none}.hero{display:flex;align-items:end;justify-content:space-between;padding:50px 0 32px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}.stats article,.panel{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.stats article{padding:23px;border-radius:8px}.stats span,.stats small{display:block;color:var(--muted);font-size:12px}.stats strong{display:block;font:700 28px 'Playfair Display';margin:11px 0 8px}.stats article.accent{background:#dfe9df;border-color:#c6d6c9}.grid{display:grid;gap:22px}.grid.two{grid-template-columns:1.45fr 1fr}.panel{border-radius:8px}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:24px 26px 19px;border-bottom:1px solid var(--line)}.panel-head a{font-size:12px;color:var(--green)}.rows{padding:6px 25px}.row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #ebe6db}.row:last-child{border:0}.row small,td small{display:block;color:var(--muted);margin-top:4px}.pill,.status{font-size:11px;padding:5px 9px;border-radius:20px;background:#e7e4dd}.status.available{background:#dfeee4;color:#246044}.status.sold{background:#e7e4dd;color:#625f58}.empty{padding:55px 25px;text-align:center;color:var(--muted);display:grid;gap:8px;place-items:center}.empty b{color:var(--ink)}.action-row{display:flex;align-items:center;justify-content:space-between;padding:38px 0 23px}.filters{display:flex;gap:8px}.filters input{width:300px}.table-panel{overflow:hidden}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;background:#f0ece4}th,td{padding:14px 20px;border-bottom:1px solid #e8e3d9}td b{font-weight:600}.positive{color:#1e684c}.negative{color:#a04435}.form-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,.75fr);gap:22px;padding-top:32px;align-items:start}.form-section{padding:28px}.form-section h3{margin-bottom:25px}.fields{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.fields.one{grid-template-columns:1fr}.wide{grid-column:1/-1}label{font-size:11px;font-weight:700;color:#514e47;display:grid;gap:7px}input,select,textarea{width:100%;border:1px solid #d4cec1;border-radius:5px;background:#fff;padding:11px 12px;color:var(--ink);font:400 14px 'DM Sans'}textarea{resize:vertical}.sticky{position:sticky;top:18px}.hint{font-size:11px;color:var(--muted);line-height:1.5}.item-picker{display:grid;max-height:650px;overflow:auto}.item-picker label{display:flex;align-items:center;gap:13px;padding:15px 5px;border-bottom:1px solid #e8e3d9;cursor:pointer}.item-picker input{width:auto}.item-picker span{flex:1}.item-picker small{display:block;color:var(--muted);font-weight:400;margin-top:4px}.item-picker em{font-style:normal;font-weight:700}.location-grid{grid-template-columns:.7fr 1.3fr;padding-top:34px}.location-list{padding:10px 26px}.location-list>div{display:flex;align-items:center;gap:15px;border-bottom:1px solid #e8e3d9;padding:18px 0}.location-list p{flex:1;margin:0}.location-list small{display:block;color:var(--muted);margin-top:3px}.location-icon{display:grid;place-items:center;width:38px;height:38px;background:var(--green2);border-radius:50%;color:var(--green)}.error{padding:45px;margin-top:40px}.error p{color:var(--muted)}.notice{background:#dfeee4;color:#246044;padding:10px 15px;margin-top:15px;border-radius:5px}@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.2s}.nav-open .sidebar{transform:translateX(0)}main{margin-left:0;padding:0 20px}.menu{display:block;border:0;background:transparent;font-size:22px}.topbar{height:90px}.topbar>div{margin-right:auto;margin-left:15px}.stats{grid-template-columns:repeat(2,1fr)}.grid.two,.form-layout,.location-grid{grid-template-columns:1fr}.sticky{position:static}.hero{align-items:start}.filters{flex-wrap:wrap}.filters input{width:100%}}@media(max-width:560px){.stats{grid-template-columns:1fr}.topbar>.button{display:none}.hero{display:block}.hero .button{margin-top:20px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.action-row{align-items:flex-start;gap:15px;flex-direction:column}main{padding:0 14px 40px}h2{font-size:29px}}
