@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_ae92e279-module___wC0Mq__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_ae92e279-module___wC0Mq__variable{--font-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b12e986493c137cf-s.2njitm-prmz2_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/36363bfb06833f56-s.p.38hmww4cj4vme.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2fa3ef4ca165ab4-s.12_ml6bnugnre.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a73419dd2ba2d841-s.p.2yee423r7ahpo.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.dm_mono_1a268523-module__YdnL8W__className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.dm_mono_1a268523-module__YdnL8W__variable{--font-mono:"DM Mono", "DM Mono Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_bea2b2e-module__eJkvaq__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_bea2b2e-module__eJkvaq__variable{--font-serif:"Fraunces", "Fraunces Fallback"}
:root{--ink:#22332f;--muted:#5c6964;--paper:#f7f5f0;--card:#fffefa;--line:#deded6;--line-soft:#e8e8e0;--mint:#dbe8de;--sage:#638074;--deep:#23463e;--deep-hover:#345a50;--sun:#eebf68;--sand:#e7d7bd;--prep:#c99c52;--block:#8d8a80;--red:#bd664d;--ok:#2f6b53;--warn:#93621f;--bad:#9c4a34;--mono:var(--font-mono), "DM Mono", ui-monospace, monospace;--sans:var(--font-sans), "DM Sans", system-ui, sans-serif;--serif:var(--font-serif), "Fraunces", Georgia, serif}*{box-sizing:border-box}html,body{margin:0}body{color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.4}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:2px solid var(--sage);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:#edf0e9;border-right:1px solid #dce0d9;flex-direction:column;width:244px;height:100vh;padding:30px 16px 18px;display:flex;position:fixed}.brand{font-family:var(--serif);align-items:center;gap:10px;padding:0 12px 39px;font-size:21px;font-weight:600;display:flex}.brand-mark{font-family:var(--sans);border:1px solid var(--ink);border-radius:50%;place-items:center;width:28px;height:28px;font-size:15px;font-weight:700;display:grid}.sidebar nav{gap:5px;display:grid}.nav-item{font:500 14px var(--sans);color:#4c5a56;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;padding:11px 12px;display:flex}.nav-item>span:first-child{font:18px var(--serif);text-align:center;width:18px}.nav-item b{background:var(--sun);color:var(--ink);font:11px var(--mono);border-radius:11px;margin-left:auto;padding:2px 7px}.nav-item:hover,.nav-item.active{color:var(--ink);background:#fffef9}.side-bottom{margin-top:auto}.person{border-top:1px solid #d9ded6;align-items:center;gap:9px;padding:18px 10px 0;display:flex}.avatar{background:var(--deep);color:#fff;width:30px;height:30px;font:13px var(--serif);border-radius:50%;flex:none;place-items:center;display:grid}.person strong,.person small{display:block}.person strong{font-size:13px}.person small{color:var(--muted);margin-top:1px;font-size:12px}.dev-badge{font:11px var(--mono);color:var(--warn);background:#f5ead6;border:1px solid #e9d3ad;border-radius:6px;margin:0 10px 12px;padding:6px 8px;line-height:1.4}main{grid-column:2;width:100%;max-width:1500px;margin:0 auto;padding:41px clamp(24px,5vw,82px) 70px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;display:flex}.eyebrow{font:12px var(--mono);letter-spacing:.06em;color:#5f6b66;text-transform:uppercase;margin:0 0 7px}.topbar h1{font:600 32px var(--serif);letter-spacing:-.7px;margin:0}.header-actions{align-items:center;gap:11px;display:flex}.primary,.outlined,.danger,.round-button{font:600 14px var(--sans);border-radius:8px;padding:11px 16px}.primary{background:var(--deep);border:1px solid var(--deep);color:#fff}.primary:hover:not(:disabled){background:var(--deep-hover)}.outlined{color:var(--ink);background:0 0;border:1px solid #bfc8c1}.outlined:hover:not(:disabled){background:#fffef9}.danger{color:var(--bad);background:0 0;border:1px solid #d4bcb5}.danger:hover:not(:disabled){background:#fbf1ee}.round-button{background:0 0;border:1px solid #cfd6cf;place-items:center;width:40px;height:40px;padding:0;font-size:18px;display:grid;position:relative}.round-button i{background:var(--red);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:9px}.text-button,.plain-link{font:600 14px var(--sans);background:0 0;border:0;padding:0}.text-button{color:#fff}.text-button span,.plain-link span{margin-left:6px}.plain-link{color:var(--deep)}.small{padding:8px 12px;font-size:13px}.quiet-alert{background:var(--mint);color:#2f4b40;border:1px solid #cbdbcf;border-radius:9px;align-items:center;gap:9px;margin-bottom:18px;padding:14px 16px;font-size:14px;display:flex}.quiet-alert a{color:var(--deep);font:600 13px var(--sans);white-space:nowrap;margin-left:auto}.alert-dot{background:var(--sun);border-radius:50%;flex:none;width:8px;height:8px}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(240px,.8fr);gap:18px;display:grid}.welcome-card{background:var(--deep);color:#f9f7f0;border-radius:12px;min-height:242px;padding:31px 34px;display:flex;position:relative;overflow:hidden}.welcome-card>div:first-child{z-index:1;position:relative}.welcome-card{container-type:inline-size}@container (max-width:560px){.welcome-card .house-sketch{opacity:.28}}.welcome-card .eyebrow{color:#b9cabf}.welcome-card h2{font:500 31px var(--serif);letter-spacing:-.7px;margin:0 0 11px}.welcome-card p:not(.eyebrow){color:#dde5df;max-width:330px;margin:0 0 20px;font-size:14px;line-height:1.6}.house-sketch{opacity:.95;width:255px;height:190px;position:absolute;bottom:0;right:0}.sun{background:#f4c76f;border-radius:50%;width:42px;height:42px;position:absolute;top:21px;right:50px}.roof{clip-path:polygon(50% 0,100% 100%,0 100%);background:#b8c8b7;width:192px;height:76px;position:absolute;bottom:81px;right:21px}.building{background:#d9ded2;justify-content:space-around;align-items:flex-end;width:148px;height:84px;padding:0 19px;display:flex;position:absolute;bottom:19px;right:42px}.building i{background:#5c776d;border:4px solid #eef1e9;border-bottom:0;width:20px;height:42px}.ground{background:#9bb59e;border-radius:100% 0 0;width:100%;height:30px;position:absolute;bottom:0}.occupancy-card,.metric,.lead-row,.calendar-card,.calendar-side,.reservation-table,.chart-card,.source-card,.settings-card,.timeline,.request,.panel{background:var(--card);border:1px solid var(--line);border-radius:11px}.occupancy-card{text-align:center;flex-direction:column;align-items:center;padding:26px 25px;display:flex}.gauge{width:168px;margin:16px auto 8px;position:relative}.gauge svg{width:100%;height:auto;display:block}.gauge-value{position:absolute;bottom:2px;left:0;right:0}.gauge-value strong{font:600 30px var(--serif)}.gauge-value small{font:14px var(--sans)}.occupancy-card>p:last-child{color:var(--muted);margin:0;font-size:13px}.quick-actions{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 0;display:grid}.quick-action{border:1px solid var(--line);background:var(--card);font:600 16px var(--sans);text-align:left;border-radius:11px;align-items:center;gap:12px;width:100%;padding:18px 20px;display:flex}.quick-action:hover{border-color:var(--sage)}.quick-action>span:first-child{font:22px var(--serif);color:var(--deep);text-align:center;width:24px}.quick-action small{font:400 13px var(--sans);color:var(--muted);margin-top:2px;display:block}.quick-action.main{background:var(--deep);color:#fff;border-color:var(--deep)}.quick-action.main>span:first-child,.quick-action.main small{color:#cfe0d6}.metric-row{grid-template-columns:repeat(3,1fr);gap:18px;margin:18px 0 48px;display:grid}.metric{min-height:126px;padding:21px 23px}.metric p{color:var(--muted);margin:0 0 15px;font-size:14px}.metric strong{font:600 29px var(--serif);letter-spacing:-.6px;display:block}.metric strong.nodata{color:var(--muted);letter-spacing:0;font-size:20px}.metric small{color:var(--muted);margin-top:8px;font-size:13px;display:block}.up{color:var(--ok)}.down{color:var(--bad)}.warm{color:#a75b42}.section-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px;display:flex}.section-head h2{font:500 25px var(--serif);letter-spacing:-.4px;margin:0}.lead-list{gap:9px;display:grid}.lead-row{grid-template-columns:38px minmax(180px,1fr) 125px 130px 190px 92px;align-items:center;gap:15px;padding:13px 17px;display:grid}.lead-initial{width:37px;height:37px;font:16px var(--serif);color:var(--deep);background:#e5ede5;border-radius:50%;flex:none;place-items:center;display:grid}.lead-row strong,.lead-row small{display:block}.lead-row strong{font-size:15px}.lead-row small{color:var(--muted);margin-top:3px;font-size:13px}.lead-source{font:11px var(--mono);color:#56635d;text-transform:uppercase}.date-chip{font:11px var(--mono);background:#f3f1eb;border-radius:6px;padding:6px 8px;line-height:1.5}.date-chip b{font-weight:500;display:block}.view-button{font:600 12px var(--sans);background:0 0;border:1px solid #c7d0c8;border-radius:6px;padding:8px 10px}.view-button:hover{background:#fffef9}.upcoming-section{margin-top:47px}.timeline{padding:3px 22px}.timeline-date{font:12px var(--mono);color:var(--muted);border-bottom:1px solid var(--line-soft);padding:14px 0 5px}.timeline-date small{margin-left:4px}.timeline-event{border-bottom:1px solid var(--line-soft);align-items:center;gap:13px;padding:16px 5px;display:flex}.timeline-event:last-child{border-bottom:0}.timeline-event>span{background:var(--sage);border-radius:50%;flex:none;width:9px;height:9px}.timeline-event.prep>span{background:var(--sun)}.timeline-event.departure>span{border:2px solid var(--sage);background:0 0}.timeline-event strong{font-size:15px}.timeline-event p{color:var(--muted);margin:3px 0 0;font-size:13px}.timeline-event b{font:11px var(--mono);color:#466a5d;text-transform:uppercase;margin-left:auto}.timeline-event.prep b{color:#8a6630}.page-heading{align-items:center;margin:4px 0 25px}.page-heading h2{font-size:33px}.page-heading p:not(.eyebrow){color:var(--muted);margin:7px 0 0;font-size:15px}.page-heading>button,.page-heading>.period-picker{white-space:nowrap;flex:none}.filter-bar{border-bottom:1px solid var(--line);gap:6px;margin-bottom:17px;display:flex;overflow-x:auto}.filter{font:500 14px var(--sans);color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 14px 12px}.filter.active{color:var(--deep);border-bottom-color:var(--deep)}.filter b{font:11px var(--mono);background:#e5ece5;border-radius:8px;margin-left:4px;padding:2px 6px}.request-list{gap:12px;display:grid}.request{padding:22px 24px}.request-top{align-items:center;gap:12px;display:flex}.request h3{font:600 19px var(--serif);margin:0}.request-top small{color:var(--muted);font-size:13px}.source-label{font:11px var(--mono);color:var(--muted);text-transform:uppercase;margin-left:auto}.request .meta{flex-wrap:wrap;gap:24px;margin:16px 0;display:flex}.request .meta span{color:var(--muted);font-size:12px;font-family:var(--mono);text-transform:uppercase}.request .meta b{font:600 14px var(--sans);color:var(--ink);text-transform:none;margin-top:3px;display:block}.request-bottom{border-top:1px solid #e7e7df;justify-content:space-between;align-items:center;gap:12px;padding-top:15px;display:flex}.request-actions{flex-wrap:wrap;gap:8px;display:flex}.request-notes{color:#3f4d48;background:#f6f4ee;border-radius:7px;margin:0 0 14px;padding:10px 12px;font-size:14px}.availability{font:500 14px var(--sans);align-items:baseline;gap:7px;display:inline-flex}.availability:before{content:"";background:currentColor;border-radius:50%;flex:none;width:9px;height:9px;transform:translateY(-1px)}.availability.is-available{color:var(--ok)}.availability.is-partial{color:var(--warn)}.availability.is-occupied{color:var(--bad)}.availability.is-unknown{color:var(--muted)}.availability-box{border:1px solid;border-radius:9px;margin:14px 0;padding:14px 16px;font-size:15px}.availability-box.is-available{color:#24503f;background:#eaf3ec;border-color:#c7dccd}.availability-box.is-partial{color:#6d4a17;background:#f8efdd;border-color:#ead5ad}.availability-box.is-occupied{color:#7a3625;background:#f8e8e3;border-color:#e6c4b9}.availability-box strong{font:600 17px var(--serif);margin-bottom:3px;display:block}.availability-box ul{margin:8px 0 0;padding-left:18px;font-size:13px}.tag{font:11px var(--mono);text-transform:uppercase;letter-spacing:.03em;color:#4e5b56;background:#eceee8;border-radius:5px;padding:3px 7px;display:inline-block}.tag.confirmed,.tag.accepted{color:#2f6b53;background:#e2eee6}.tag.pending,.tag.pending_review,.tag.pending_decision,.tag.contacted{color:#86591a;background:#f7ecd6}.tag.cancelled,.tag.rejected,.tag.discarded{color:#8e4531;background:#f3e5e1}.calendar-layout{grid-template-columns:minmax(0,1fr) 290px;gap:18px;display:grid}.calendar-card{padding:22px}.calendar-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.calendar-head h3{font:500 21px var(--serif);text-transform:capitalize;margin:0}.month-control{background:0 0;border:1px solid #d1d7d1;border-radius:6px;width:34px;height:34px;font-size:15px}.month-control:hover{background:#fffef9}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin:0 0 14px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:14px;height:9px;display:inline-block}.weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekdays span{font:11px var(--mono);color:var(--muted);text-align:center;padding-bottom:10px}.calendar-grid{border-top:1px solid #e6e6de;border-left:1px solid #e6e6de}.day{min-height:86px;font:12px var(--mono);color:#5d6a64;text-align:left;background:0 0;border:1px solid #e6e6de;border-top:0;border-left:0;flex-direction:column;gap:3px;min-width:0;padding:7px 0 6px;display:flex;position:relative}.day:hover{background:#fbfaf5}.day>.day-number{align-items:center;gap:5px;padding:0 8px 2px;display:flex}.day.muted{color:#aab2ac;background:#fdfcf8}.day.selected{box-shadow:inset 0 0 0 2px var(--sage);background:#eef4ef}.day.today .day-number:after{content:"";background:var(--red);border-radius:50%;width:6px;height:6px}.day.has-prep{background:#f9f2e6}.day.has-prep.selected{background:#f3ead9}.day{overflow:visible}.event-bar{height:20px;font:600 11px var(--sans);color:#fff;background:var(--sage);margin:0 -1px;line-height:14px;position:relative}.event-bar .label{z-index:1;width:calc(var(--span,1) * 100% - 12px);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;position:absolute;top:3px;left:6px;overflow:hidden}.event-bar.start{border-top-left-radius:4px;border-bottom-left-radius:4px;margin-left:5px}.event-bar.end{border-top-right-radius:4px;border-bottom-right-radius:4px;margin-right:5px}.event-bar.kind-preparation{background:var(--prep)}.event-bar.kind-block{background:var(--block)}.event-bar.kind-external{background:#6f86a8}.event-bar.kind-pending{color:#86591a;background:#fff;box-shadow:inset 0 0 0 1.5px #d7a650}.legend .kind-reservation{background:var(--sage)}.legend .kind-pending{background:#fff;box-shadow:inset 0 0 0 1.5px #d7a650}.legend .kind-preparation{background:var(--prep)}.legend .kind-block{background:var(--block)}.legend .kind-external{background:#6f86a8}.more-events{font:10px var(--mono);color:var(--muted);padding:0 8px}.calendar-side{align-self:start;padding:23px;position:sticky;top:20px}.calendar-side h3{font:500 20px var(--serif);margin:4px 0 16px}.side-event{text-align:left;background:0 0;border:0;align-items:flex-start;gap:10px;width:100%;margin:12px 0;padding:0;display:flex}.side-event>span{font-size:13px;line-height:20px}.side-event.kind-reservation>span{color:var(--sage)}.side-event.kind-preparation>span{color:#b3843d}.side-event.kind-block>span,.side-event.kind-external>span{color:var(--block)}.side-event.kind-pending>span{color:#c08a2f}.side-event strong,.side-event p{display:block}.side-event strong{font-size:14px}.side-event p{color:var(--muted);margin:3px 0;font-size:13px}.calendar-side hr{border:0;border-top:1px solid #e4e4dc;margin:18px 0}.calendar-side .stack{gap:8px;margin-top:16px;display:grid}.calendar-side .stack button{width:100%}.side-empty{color:var(--muted);margin:8px 0;font-size:14px}.reservation-table{margin-top:18px;overflow-x:auto}.reservation-table>.row{border-bottom:1px solid var(--line-soft);grid-template-columns:1.3fr 1.3fr .8fr .8fr 120px;align-items:center;gap:10px;min-width:700px;padding:13px 20px;font-size:14px;display:grid}.reservation-table>.row:last-child{border-bottom:0}.reservation-table .table-head{color:var(--muted);font:11px var(--mono);text-transform:uppercase;background:#f5f5ef}.reservation-table .row small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.reservation-table .row>span{color:#45534e;font-size:13px}.reservation-table .row .actions{justify-content:flex-end;display:flex}.period-picker{align-items:center;gap:8px;display:flex}.period-picker strong{font:500 16px var(--serif);text-align:center;text-transform:capitalize;min-width:140px}.analytics-grid{grid-template-columns:1.5fr 1fr;gap:18px;display:grid}.chart-card,.source-card{min-height:230px;padding:24px}.bars{border-bottom:1px solid #dce1dc;align-items:flex-end;gap:18px;height:170px;padding:12px 8px 0;display:flex}.bars>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.bars i{background:var(--sage);border-radius:5px 5px 0 0;width:100%;min-height:2px;display:block}.bars b{font:12px var(--mono);color:var(--ink)}.bar-labels{gap:18px;padding:8px 8px 0;display:flex}.bar-labels span{text-align:center;font:11px var(--mono);color:var(--muted);flex:1}.source{border-bottom:1px solid var(--line-soft);align-items:center;gap:9px;padding:13px 0;display:flex}.source:last-child{border:0}.source-dot{border-radius:50%;flex:none;width:10px;height:10px}.source b{font-size:14px;font-weight:500}.source strong{font:16px var(--serif);margin-left:auto}.source-bar{background:#eef0ea;border-radius:3px;height:4px;margin-top:6px;overflow:hidden}.source-bar i{border-radius:3px;height:100%;display:block}.funnel{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px;display:grid}.funnel>div{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:16px 18px}.funnel p{color:var(--muted);margin:0 0 8px;font-size:13px}.funnel strong{font:600 24px var(--serif)}.footnote{color:var(--muted);margin:16px 2px 0;font-size:13px;line-height:1.5}.settings-card{max-width:760px;margin-bottom:18px;padding:25px}.setting-title,.setting-rule{justify-content:space-between;align-items:center;gap:16px;display:flex}.setting-title{border-bottom:1px solid #e6e6df;padding-bottom:21px}.settings-card h3{font:500 21px var(--serif);margin:0}.settings-card p:not(.eyebrow){color:var(--muted);margin:5px 0 0;font-size:14px}.switch{flex:none;display:inline-flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch span{cursor:pointer;background:#c8d0c9;border-radius:20px;width:43px;height:24px;display:block;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--deep)}.switch input:checked+span:after{left:22px}.switch input:focus-visible+span{outline:2px solid var(--sage);outline-offset:2px}.switch input:disabled+span{opacity:.5;cursor:not-allowed}.setting-rule{border-bottom:1px solid #e6e6df;padding:18px 0}.setting-rule:last-of-type{border-bottom:0}.setting-rule label,.setting-rule .label{font-size:14px;font-weight:600;display:block}.setting-rule small{color:var(--muted);margin-top:4px;font-size:13px;display:block}.stepper{border:1px solid #ccd4cd;border-radius:7px;flex:none;display:flex;overflow:hidden}.stepper button,.stepper output{font:15px var(--sans);background:#fff;border:0;padding:7px 12px}.stepper output{text-align:center;border-left:1px solid #e0e4df;border-right:1px solid #e0e4df;min-width:36px}.setting-rule select,.setting-rule input:not([type=checkbox]){font:14px var(--sans);color:var(--ink);background:#fff;border:1px solid #ccd4cd;border-radius:7px;max-width:220px;padding:9px 10px}.segmented{border:1px solid #ccd4cd;border-radius:8px;flex:none;display:inline-flex;overflow:hidden}.segmented button{font:500 13px var(--sans);color:var(--muted);background:#fff;border:0;padding:9px 13px}.segmented button+button{border-left:1px solid #e0e4df}.segmented button.active{background:var(--deep);color:#fff}.notice{background:#f3f0e7;border-radius:7px;gap:9px;margin:18px 0;padding:12px;display:flex}.notice>span{color:#8a713d;font:11px var(--serif);border:1px solid #a79060;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;display:grid}.notice p{line-height:1.5;margin:0!important}.settings-actions{align-items:center;gap:12px;margin-top:18px;display:flex}.settings-actions small{color:var(--muted);font-size:13px}.rules-table{border-collapse:collapse;width:100%;margin-top:14px;font-size:14px}.rules-table th{text-align:left;font:11px var(--mono);color:var(--muted);text-transform:uppercase;border-bottom:1px solid var(--line);padding:8px 6px}.rules-table td{border-bottom:1px solid var(--line-soft);padding:10px 6px}.rules-table td:last-child{text-align:right;white-space:nowrap}.integrations>div{border-top:1px solid #e6e6df;align-items:center;gap:12px;padding:15px 0;display:flex}.integrations strong,.integrations small{display:block}.integrations strong{font-size:14px}.integrations small{color:var(--muted);margin-top:2px;font-size:13px}.integrations em{font:11px var(--mono);text-transform:uppercase;white-space:nowrap;margin-left:auto;font-style:normal}.integrations em.on{color:var(--ok)}.integrations em.off{color:var(--muted)}.integration-icon{color:#fff;border-radius:7px;flex:none;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.integration-icon.google{background:#4285f4}.integration-icon.ghl{background:#55a897}.integration-icon.meta{background:#4267b2}dialog{width:min(500px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--ink);background:var(--card);border:0;border-radius:13px;padding:0;box-shadow:0 22px 80px #1e302a66}dialog.wide{width:min(640px,100vw - 32px)}dialog::backdrop{background:#20352e80}.dialog-body{padding:30px;position:relative}dialog h2{font:500 27px var(--serif);margin:0 0 18px;padding-right:30px}.close{font:26px var(--sans);color:var(--muted);background:0 0;border:0;padding:4px 8px;line-height:1;position:absolute;top:14px;right:16px}.field{margin:13px 0;display:block}.field>span{font:600 13px var(--sans);margin-bottom:6px;display:block}.field>small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.field input,.field select,.field textarea{width:100%;font:15px var(--sans);background:#fff;border:1px solid #ced6cf;border-radius:7px;padding:10px 11px;display:block}.field textarea{resize:vertical;min-height:76px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--sage);outline-offset:0;border-color:var(--sage)}.two-inputs{grid-template-columns:1fr 1fr;gap:12px;display:grid}.two-inputs .field{margin:13px 0 0}.form-error{color:#7a3625;background:#f8e8e3;border:1px solid #e6c4b9;border-radius:8px;margin:12px 0;padding:10px 12px;font-size:14px}.form-actions{gap:10px;margin-top:20px;display:flex}.form-actions .primary{flex:1}.summary-list{border:1px solid var(--line);border-radius:9px;margin:0;padding:0;list-style:none}.summary-list li{border-bottom:1px solid var(--line-soft);justify-content:space-between;gap:12px;padding:11px 14px;font-size:15px;display:flex}.summary-list li:last-child{border-bottom:0}.summary-list li span{color:var(--muted)}.summary-list li.total{background:#f7f6f0;font-weight:600}.detail-grid{grid-template-columns:1fr 1fr;gap:10px 20px;margin:4px 0 8px;display:grid}.detail-grid div span{font:11px var(--mono);color:var(--muted);text-transform:uppercase;display:block}.detail-grid div b{word-break:break-word;margin-top:3px;font-size:15px;font-weight:600;display:block}.detail-grid a{color:var(--deep);text-underline-offset:2px;text-decoration:underline}.state{text-align:center;color:var(--muted);background:#fbfaf6;border:1px dashed #cfd6cf;border-radius:11px;padding:28px;font-size:15px}.state strong{font:500 19px var(--serif);color:var(--ink);margin-bottom:4px;display:block}.state.error{color:#7a3625;background:#fbf1ee;border-style:solid;border-color:#e6c4b9}.state button{margin-top:14px}.skeleton{background:linear-gradient(90deg,#ecebe4 25%,#f4f3ee 37%,#ecebe4 63%) 0 0/400% 100%;border-radius:11px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}.switch span:after,.toast{transition:none}}.toast{opacity:0;background:var(--ink);color:#fff;pointer-events:none;z-index:50;border-radius:8px;max-width:calc(100vw - 32px);padding:13px 18px;font-size:14px;transition:all .25s;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.toast.error{background:#7a3625}.signin-page{place-items:center;min-height:100vh;padding:24px;display:grid}.signin-page .brand{justify-content:center;padding:0 0 24px}@media (max-width:1100px){.lead-row{grid-template-columns:38px minmax(0,1fr) 130px 180px 92px}.lead-row .lead-source{display:none}}@media (max-width:900px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-bottom:1px solid #dce0d9;border-right:0;width:auto;min-width:0;height:auto;padding:14px 16px;display:block;position:static}.brand{padding:0 4px 11px}.sidebar nav{display:flex;overflow-x:auto}.side-bottom{display:none}.nav-item{white-space:nowrap;width:auto}main{grid-column:1;padding:28px 20px 50px}.dashboard-grid,.calendar-layout,.analytics-grid{grid-template-columns:1fr}.lead-row{grid-template-columns:38px minmax(0,1fr) auto}.lead-row .lead-source,.lead-row .date-chip,.lead-row .availability{display:none}.calendar-side{position:static}.funnel{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.topbar{align-items:flex-start}.topbar h1{font-size:27px}.header-actions .round-button{display:none}.quiet-alert{flex-wrap:wrap;align-items:flex-start}.welcome-card{min-height:232px;padding:26px}.house-sketch{opacity:.38}.metric-row,.quick-actions{grid-template-columns:1fr;gap:9px}.metric-row{margin-bottom:38px}.lead-row{padding:13px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading h2{font-size:28px}.calendar-card{padding:12px}.day{min-height:58px;font-size:11px}.event-bar{height:6px}.event-bar .label{display:none}.request{padding:17px}.request-bottom{flex-direction:column;align-items:flex-start}.two-inputs,.detail-grid{grid-template-columns:1fr}.setting-rule{flex-direction:column;align-items:flex-start}.dialog-body{padding:24px 20px}}
