:root{
  --orange:#0f6d3a;--orange-2:#2f8d59;--orange-soft:#e8f4ec;
  --bg:#f4f8f3;--panel:#ffffff;--panel-2:#f7fbf6;--panel-3:#edf4ee;
  --text:#163223;--muted:#657c6b;--line:#dce8de;--gray:#6d756f;
  --green:#198754;--red:#d9534f;--yellow:#e0a800;--blue:#2f7fd1;
  --shadow:0 16px 42px rgba(19,43,28,.08);--radius:18px;--radius-sm:12px;
}
html[data-theme="dark"]{--bg:#121513;--panel:#1c211d;--panel-2:#171b18;--panel-3:#222823;--text:#f5f7f5;--muted:#a4ada6;--line:#303832;--gray:#a4ada6;--orange-soft:#163123;--shadow:0 18px 46px rgba(0,0,0,.34)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.45}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
.crm-shell{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr)}
.crm-sidebar{position:sticky;top:0;height:100vh;border-right:0;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 96%,var(--bg)),color-mix(in srgb,var(--orange) 3%,var(--panel)));padding:24px 16px;display:flex;flex-direction:column;z-index:20}
.crm-brand{display:grid;gap:10px;justify-items:center;text-align:center;padding:4px 8px 24px}.crm-brand img{width:118px;height:auto;object-fit:contain;border-radius:0;background:transparent;margin-inline:auto}.crm-brand span{display:flex;flex-direction:column;align-items:center;line-height:1.25}.crm-brand b{font-size:15px;text-transform:lowercase;color:var(--orange)}.crm-brand small{color:var(--muted);font-size:12px;margin-top:3px;max-width:200px;text-align:center}
.crm-nav{display:grid;gap:6px}.crm-nav button{border:0;background:transparent;color:var(--muted);border-radius:12px;display:flex;align-items:center;gap:12px;padding:11px 12px;text-align:left;transition:.18s ease}.crm-nav button:hover{background:var(--panel-2);color:var(--text)}.crm-nav button.active{background:var(--orange-soft);color:var(--orange);font-weight:700}.nav-ico{width:25px;height:25px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;font-weight:700}.crm-nav button.active .nav-ico{border-color:color-mix(in srgb,var(--orange) 45%,var(--line));background:color-mix(in srgb,var(--orange) 11%,transparent)}
.sidebar-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding:18px 8px 0;border-top:1px solid var(--line)}.brand-note{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.brand-note i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 12%,transparent)}.icon-btn{border:1px solid var(--line);background:var(--panel-2);color:var(--muted);border-radius:10px;padding:7px 9px}
.crm-main{min-width:0}.crm-topbar{min-height:120px;padding:26px 34px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:22px;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(18px);z-index:15}.eyebrow{font-size:10px;letter-spacing:.18em;color:var(--orange);font-weight:800;margin:0 0 7px}.crm-topbar h1{margin:0;font-size:25px;letter-spacing:-.03em}.subtitle{margin:5px 0 0;color:var(--muted);max-width:650px}.top-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.crm-content{padding:28px 34px 48px;max-width:1600px;margin:auto}
.btn{border:1px solid transparent;border-radius:11px;padding:10px 14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease}.btn-primary{background:var(--orange);color:#ffffff;box-shadow:0 10px 24px rgba(15,109,58,.18)}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-soft{background:var(--panel-2);color:var(--text);border-color:var(--line)}.btn-danger{background:color-mix(in srgb,var(--red) 12%,var(--panel));color:var(--red);border-color:color-mix(in srgb,var(--red) 26%,var(--line))}.text-btn{border:0;background:transparent;color:var(--orange);font-weight:700;padding:4px}.text-btn:hover{text-decoration:underline}
.crm-view{display:none}.crm-view.active{display:block}.overview-banner{border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 98%,transparent),color-mix(in srgb,var(--orange) 8%,var(--panel)));padding:28px;display:flex;justify-content:space-between;align-items:stretch;gap:22px;box-shadow:var(--shadow)}.overview-banner h2{font-size:27px;line-height:1.16;max-width:620px;margin:12px 0 9px;letter-spacing:-.035em}.overview-banner p{margin:0;color:var(--muted);max-width:650px}.live-pill{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.live-pill i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 12%,transparent)}.quick-actions{display:grid;grid-template-columns:repeat(4,80px);gap:9px}.quick-action{border:1px solid var(--line);background:color-mix(in srgb,var(--panel-2) 88%,transparent);color:var(--text);border-radius:14px;padding:12px 8px;display:grid;gap:5px;text-align:center}.quick-action strong{font-size:19px;color:var(--orange)}.quick-action span{font-size:11px;font-weight:700;color:var(--muted)}.quick-action:hover{border-color:color-mix(in srgb,var(--orange) 45%,var(--line));transform:translateY(-1px)}
.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0}.kpi-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}.kpi-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:17px 18px;min-width:0}.kpi-card small{display:block;color:var(--muted);text-transform:uppercase;font-size:9px;letter-spacing:.12em;font-weight:800}.kpi-card strong{display:block;margin:7px 0 3px;font-size:24px;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-card p{margin:0;color:var(--muted);font-size:11px}.kpi-card.accent{background:linear-gradient(145deg,var(--orange-soft),var(--panel));border-color:color-mix(in srgb,var(--orange) 25%,var(--line))}.kpi-card.accent strong{color:var(--orange)}
.overview-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 8px 26px rgba(0,0,0,.06);min-width:0}.panel-wide{grid-column:span 1}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.section-kicker{display:block;color:var(--orange);font-size:9px;letter-spacing:.13em;font-weight:900}.panel h3{margin:4px 0 0;font-size:18px;letter-spacing:-.02em}.panel-note{margin:3px 0 0;color:var(--muted);font-size:12px;max-width:520px;text-align:right}
.metric-stack{display:grid;gap:10px}.metric-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.metric-row:last-child{border-bottom:0}.metric-row span{color:var(--muted)}.metric-row b{font-size:15px}.metric-row.total{padding-top:15px}.metric-row.total span,.metric-row.total b{color:var(--text);font-weight:800}.positive{color:var(--green)!important}.negative{color:var(--red)!important}
.status-bar{height:8px;background:var(--panel-3);border-radius:20px;overflow:hidden}.status-bar>i{display:block;height:100%;background:var(--orange);border-radius:inherit}.availability-list,.booking-list,.roi-mini-list{display:grid;gap:10px}.availability-item,.booking-item,.roi-mini{border:1px solid var(--line);background:var(--panel-2);border-radius:13px;padding:12px 13px}.availability-item{display:grid;grid-template-columns:1fr auto;align-items:center}.availability-item small,.booking-item small,.roi-mini small{color:var(--muted)}.availability-item b{font-size:13px}.booking-item{display:grid;grid-template-columns:1.2fr 1fr auto;gap:12px;align-items:center}.booking-primary b{display:block}.booking-meta{color:var(--muted);font-size:12px}.roi-mini-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.roi-mini-top b:last-child{color:var(--orange)}
.compact-roi-list{gap:12px}.premium-roi-mini{padding:12px 13px}.premium-roi-mini .roi-mini-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:10px}.roi-mini-primary{display:flex;align-items:center;gap:12px;min-width:0}.roi-mini-copy{min-width:0;display:grid;gap:4px}.roi-mini-copy b{display:block;font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roi-mini-copy .roi-mini-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:11px;line-height:1.35}.roi-mini-copy .roi-mini-meta span{opacity:.6}.roi-mini-value{display:grid;justify-items:end;gap:3px;flex:0 0 auto}.roi-mini-value b{font-size:14px;color:var(--orange)}.roi-mini-value small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.premium-roi-mini .unit-photo{width:44px;height:44px;flex-basis:44px;border-radius:11px}.premium-roi-mini .status-bar{height:6px}
.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;border:1px solid var(--line);white-space:nowrap}.badge.available,.badge.completed{color:var(--green);background:color-mix(in srgb,var(--green) 9%,var(--panel));border-color:color-mix(in srgb,var(--green) 25%,var(--line))}.badge.confirmed,.badge.reserved{color:var(--blue);background:color-mix(in srgb,var(--blue) 9%,var(--panel));border-color:color-mix(in srgb,var(--blue) 25%,var(--line))}.badge.released,.badge.rented{color:var(--orange);background:color-mix(in srgb,var(--orange) 9%,var(--panel));border-color:color-mix(in srgb,var(--orange) 25%,var(--line))}.badge.pending{color:var(--yellow);background:color-mix(in srgb,var(--yellow) 8%,var(--panel));border-color:color-mix(in srgb,var(--yellow) 25%,var(--line))}.badge.cancelled,.badge.maintenance,.badge.retired{color:var(--muted)}
.section-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}.filter-group{display:flex;gap:9px;flex-wrap:wrap}.input,.select,input,select,textarea{background:var(--panel-2);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:10px 11px;outline:0}.input:focus,.select:focus,input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--orange) 12%,transparent)}.section-toolbar .input{min-width:300px}.toolbar-copy{margin:0;color:var(--muted)}
.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 15px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:900;background:color-mix(in srgb,var(--panel-2) 80%,transparent)}td{font-size:12.5px}tbody tr:hover{background:color-mix(in srgb,var(--panel-2) 60%,transparent)}tbody tr:last-child td{border-bottom:0}.num{text-align:right}.row-title{font-weight:800}.row-sub{display:block;color:var(--muted);font-size:10.5px;margin-top:2px}.row-actions{display:flex;justify-content:flex-end;gap:6px}.mini-btn{border:1px solid var(--line);background:var(--panel-2);color:var(--muted);border-radius:8px;padding:6px 8px;font-size:10px;font-weight:700}.mini-btn:hover{color:var(--text)}.mini-btn.danger:hover{color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--line))}.empty{padding:30px 18px;color:var(--muted);text-align:center}.empty strong{display:block;color:var(--text);margin-bottom:4px}
.unit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.unit-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden}.unit-card-top{padding:18px;display:flex;justify-content:space-between;gap:12px}.unit-id{width:46px;height:46px;border-radius:13px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;font-weight:900;border:1px solid color-mix(in srgb,var(--orange) 22%,var(--line))}.unit-name{flex:1;min-width:0}.unit-name h3{font-size:15px;margin:1px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-name p{margin:0;color:var(--muted);font-size:11px}.unit-card-body{padding:0 18px 18px}.unit-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.unit-stat{background:var(--panel-2);border:1px solid var(--line);border-radius:11px;padding:10px}.unit-stat small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.unit-stat b{display:block;margin-top:3px;font-size:13px}.unit-card-actions{border-top:1px solid var(--line);padding:11px 18px;display:flex;justify-content:space-between;align-items:center}.unit-card-actions .text-btn{font-size:11px}
.roi-list{display:grid;gap:12px}.roi-row{border:1px solid var(--line);border-radius:14px;background:var(--panel-2);padding:15px}.roi-row-head{display:grid;grid-template-columns:minmax(180px,1.3fr) repeat(4,minmax(110px,.7fr));gap:12px;align-items:center}.roi-row-head small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.roi-row-head b{display:block;margin-top:3px}.roi-name b{font-size:14px}.roi-progress{margin-top:12px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.roi-progress .status-bar{height:9px}.roi-progress span{font-size:11px;color:var(--muted)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.68);display:none;place-items:center;padding:20px;z-index:100}.modal.open{display:grid}.modal-card{width:min(560px,100%);max-height:92vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.42);position:relative}.modal-lg{width:min(720px,100%)}.modal-x{position:absolute;right:14px;top:14px;width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--muted);font-size:20px}.modal-heading{margin-bottom:18px}.modal-heading>span{font-size:9px;letter-spacing:.14em;color:var(--orange);font-weight:900}.modal-heading h2{margin:5px 0 4px;font-size:21px}.modal-heading p{margin:0;color:var(--muted);font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:grid;gap:6px}.form-grid label>span{color:var(--muted);font-size:10px;font-weight:800}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:5px}.quote-box{background:var(--orange-soft);border:1px solid color-mix(in srgb,var(--orange) 24%,var(--line));border-radius:12px;padding:11px 13px;min-height:42px;color:var(--muted);font-size:11px}.quote-box b{color:var(--orange)}.toast{position:fixed;right:22px;bottom:22px;background:#111;color:#fff;border:1px solid #333;padding:11px 14px;border-radius:11px;box-shadow:var(--shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s;z-index:120}.toast.show{opacity:1;transform:none}
@media(max-width:1180px){.crm-shell{grid-template-columns:84px minmax(0,1fr)}.crm-brand span,.crm-nav button span:not(.nav-ico),.brand-note span{display:none}.crm-brand{justify-content:center;padding-left:0;padding-right:0}.crm-sidebar{padding-left:12px;padding-right:12px}.crm-nav button{justify-content:center;padding:10px}.sidebar-foot{flex-direction:column;gap:12px}.kpi-grid{grid-template-columns:repeat(3,1fr)}.unit-grid{grid-template-columns:repeat(2,1fr)}.overview-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:repeat(4,72px)}}
@media(max-width:760px){.crm-shell{display:block}.crm-sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;height:70px;border-right:0;border-top:1px solid var(--line);padding:8px 8px 6px;display:block;background:color-mix(in srgb,var(--panel) 96%,transparent);backdrop-filter:blur(15px)}.crm-brand,.sidebar-foot{display:none}.crm-nav{display:grid;grid-template-columns:repeat(6,1fr);gap:2px}.crm-nav button{display:grid;justify-items:center;gap:2px;padding:4px 2px;border-radius:9px;font-size:9px}.crm-nav button span:not(.nav-ico){display:block}.nav-ico{width:24px;height:24px;border:0}.crm-main{padding-bottom:76px}.crm-topbar{position:relative;min-height:auto;padding:20px 18px;align-items:flex-start}.crm-topbar h1{font-size:21px}.subtitle{font-size:12px}.top-actions .btn-soft{display:none}.crm-content{padding:18px}.overview-banner{padding:20px;display:block}.overview-banner h2{font-size:23px}.quick-actions{margin-top:18px;grid-template-columns:repeat(4,1fr)}.kpi-grid,.kpi-grid.compact{grid-template-columns:repeat(2,1fr)}.overview-grid{display:grid;grid-template-columns:1fr}.panel-wide{grid-column:auto}.unit-grid{grid-template-columns:1fr}.section-toolbar{align-items:stretch;flex-direction:column}.section-toolbar .input{min-width:0;width:100%}.filter-group{display:grid;grid-template-columns:1fr}.booking-item{grid-template-columns:1fr auto}.booking-meta{grid-column:1/-1}.roi-row-head{grid-template-columns:1fr 1fr}.roi-name{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.panel-note{text-align:left}.crm-topbar .top-actions{position:absolute;right:18px;top:22px}.crm-topbar .top-actions .btn-primary{font-size:0;padding:10px 12px}.crm-topbar .top-actions .btn-primary::after{content:'+';font-size:20px}.toast{left:18px;right:18px;bottom:88px;text-align:center}}
@media(max-width:430px){.kpi-grid,.kpi-grid.compact{grid-template-columns:1fr 1fr}.kpi-card{padding:14px}.kpi-card strong{font-size:20px}.quick-action{padding:9px 4px}.quick-action span{font-size:9px}.crm-nav button{font-size:8px}.overview-banner h2{font-size:21px}}

/* v2.3 Operations CRM additions */
.ops-panel{margin:16px 0}.ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ops-card{border:1px solid var(--line);border-radius:14px;background:var(--panel-2);padding:14px;min-width:0}.ops-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.ops-card-head small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.ops-card-head strong{display:block;font-size:25px;margin-top:2px}.ops-dot{width:9px;height:9px;border-radius:50%;background:var(--green);margin-top:5px}.ops-card.return .ops-dot{background:var(--blue)}.ops-card.overdue .ops-dot{background:var(--red)}.ops-card.unpaid .ops-dot{background:var(--yellow)}.ops-list{margin-top:10px;display:grid;gap:6px}.ops-list button{border:0;background:transparent;color:var(--text);padding:7px 0;text-align:left;border-top:1px solid var(--line);display:grid;gap:2px}.ops-list button span{font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-list button small,.ops-list p{font-size:10px;color:var(--muted);margin:0}.ops-list button:hover span{color:var(--orange)}

.calendar-toolbar{align-items:center}.calendar-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.calendar-nav strong{font-size:18px;margin-left:6px}.calendar-panel{padding:0;overflow:hidden}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--panel-2);border-bottom:1px solid var(--line)}.calendar-weekdays span{padding:10px 12px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{min-height:132px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel)}.calendar-day:nth-child(7n){border-right:0}.calendar-day.muted-day{background:color-mix(in srgb,var(--panel-2) 65%,var(--panel));opacity:.62}.calendar-day.today{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--orange) 65%,transparent)}.calendar-date{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.calendar-date span{font-weight:800;font-size:11px}.calendar-date small{font-size:8px;color:var(--orange);font-weight:900;text-transform:uppercase}.calendar-events{display:grid;gap:6px}.calendar-event{position:relative;isolation:isolate;width:100%;border:1px solid color-mix(in srgb,var(--orange) 28%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--orange-soft) 92%,#ffffff),color-mix(in srgb,var(--orange-soft) 72%,var(--panel)));color:var(--text);border-radius:12px;padding:7px 8px 8px;text-align:left;display:grid;gap:3px;min-width:0;box-shadow:0 8px 16px rgba(15,109,58,.07)}.calendar-event::after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0));pointer-events:none}.calendar-event-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-event-mark{width:18px;height:18px;border-radius:999px;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:900;background:rgba(255,255,255,.76);color:var(--orange);border:1px solid rgba(255,255,255,.65);box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}.calendar-event-tag{display:inline-flex;align-items:center;justify-content:center;max-width:74px;min-height:18px;padding:0 7px;border-radius:999px;background:rgba(255,255,255,.7);color:var(--orange);font-size:8px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border:1px solid rgba(255,255,255,.55)}.calendar-event b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;line-height:1.2;min-height:18px}.calendar-event b{font-size:10px;color:var(--orange)}.calendar-event span{font-size:8px;color:color-mix(in srgb,var(--text) 46%,var(--panel))}.calendar-event.completed{opacity:.56}.calendar-event.overdue{background:linear-gradient(180deg,color-mix(in srgb,#fde7e5 92%,#fff),color-mix(in srgb,#f9d7d4 82%,var(--panel)));border-color:color-mix(in srgb,var(--red) 30%,var(--line))}.calendar-event.overdue b{color:var(--red)}.more-events{font-size:8px;color:var(--muted);padding:3px 4px}
.availability-share-strip{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:14px;padding:14px 16px;border-color:color-mix(in srgb,var(--orange) 22%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--orange-soft) 55%,var(--panel)),var(--panel))}.availability-share-icon{width:46px;height:46px;border-radius:14px;background:var(--orange);color:#fff;display:grid;place-items:center}.availability-share-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.availability-share-copy{min-width:0}.availability-share-copy>b{display:block;font-size:13px;margin:2px 0 3px}.availability-share-copy small{display:block;color:var(--muted);font-size:9px;line-height:1.5}.availability-download-btn{white-space:nowrap;min-width:184px}.availability-download-btn:disabled{opacity:.55;cursor:not-allowed;filter:saturate(.6)}

.unit-service{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.unit-service b{color:var(--text)}.danger-text{color:var(--red)!important}.roi-row-head.enhanced{grid-template-columns:minmax(170px,1.3fr) repeat(5,minmax(96px,.7fr))}.roi-name span{display:block;color:var(--muted);font-size:10px;margin-top:2px}

.badge.new,.badge.repeat,.badge.vip,.badge.watchlist,.badge.held,.badge.partial,.badge.settled,.badge.not-received,.badge.not-required,.badge.scheduled,.badge.in-progress,.badge.excellent,.badge.good,.badge.fair,.badge.needs-repair{background:var(--panel-2)}.badge.vip,.badge.held{color:var(--orange);border-color:color-mix(in srgb,var(--orange) 30%,var(--line));background:var(--orange-soft)}.badge.watchlist,.badge.overdue,.badge.needs-repair,.badge.not-received{color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--line));background:color-mix(in srgb,var(--red) 8%,var(--panel))}.badge.repeat,.badge.settled,.badge.excellent{color:var(--green);border-color:color-mix(in srgb,var(--green) 25%,var(--line));background:color-mix(in srgb,var(--green) 8%,var(--panel))}.badge.partial,.badge.scheduled{color:var(--yellow);border-color:color-mix(in srgb,var(--yellow) 25%,var(--line));background:color-mix(in srgb,var(--yellow) 8%,var(--panel))}.badge.in-progress{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 25%,var(--line));background:color-mix(in srgb,var(--blue) 8%,var(--panel))}

@media(max-width:1180px){.ops-grid{grid-template-columns:repeat(2,1fr)}.roi-row-head.enhanced{grid-template-columns:repeat(3,1fr)}.roi-row-head.enhanced .roi-name{grid-column:1/-1}.calendar-day{min-height:116px;padding:7px}.calendar-event span{display:none}}
@media(max-width:760px){.crm-nav{display:flex;overflow-x:auto;gap:4px;scrollbar-width:none}.crm-nav::-webkit-scrollbar{display:none}.crm-nav button{min-width:68px;flex:0 0 auto}.ops-grid{grid-template-columns:1fr 1fr}.calendar-toolbar{display:block}.calendar-toolbar .filter-group{margin-top:10px;display:grid;grid-template-columns:1fr auto}.calendar-panel{overflow:auto}.calendar-weekdays,.calendar-grid{min-width:760px}.calendar-day{min-height:118px}.calendar-event span{display:block}.roi-row-head.enhanced{grid-template-columns:1fr 1fr}.calendar-nav strong{width:100%;margin:4px 0 0}.unit-service{display:grid}.top-actions{max-width:120px}}
@media(max-width:430px){.ops-grid{grid-template-columns:1fr 1fr}.ops-card{padding:12px}.ops-card-head strong{font-size:22px}}

/* v2.4 Professional Business Control additions */
.access-badge{border:0;background:transparent;padding:0;text-align:left}.access-badge span{display:grid}.access-badge b{font-size:11px;color:var(--text)}.access-badge small{font-size:9px;color:var(--muted)}
.premium-actions{align-items:center}.global-search-wrap{position:relative;min-width:270px}.global-search{width:100%;padding-left:13px}.global-results{position:absolute;top:calc(100% + 8px);left:0;right:0;display:none;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden;z-index:80}.global-results.open{display:block}.global-results button{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;padding:10px 12px;display:grid;grid-template-columns:1fr auto;gap:2px 8px}.global-results button:last-child{border-bottom:0}.global-results button:hover{background:var(--panel-2)}.global-results b{font-size:11px}.global-results small{color:var(--muted);font-size:9px;grid-column:1}.global-results span{grid-column:2;grid-row:1/3;align-self:center;color:var(--orange);text-transform:uppercase;font-size:8px;font-weight:900}.search-empty{padding:14px;color:var(--muted);font-size:11px}
.command-center-panel{margin:16px 0}.attention-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.attention-card{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:14px;text-align:left;padding:14px;min-width:0}.attention-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--orange) 36%,var(--line))}.attention-top{display:flex;justify-content:space-between;gap:10px}.attention-top span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.attention-top strong{font-size:21px}.attention-card>b{display:block;margin:2px 0 8px;font-size:12px}.attention-card div:last-child{display:grid;gap:3px}.attention-card small{color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attention-card.danger{box-shadow:inset 3px 0 0 var(--red)}.attention-card.warning{box-shadow:inset 3px 0 0 var(--yellow)}.attention-card.info{box-shadow:inset 3px 0 0 var(--blue)}.attention-card.ok{box-shadow:inset 3px 0 0 var(--green)}
.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-areas:"main main main main main main main access access access access access" "main main main main main main main data data data data data" "cloud cloud cloud cloud cloud cloud cloud prod prod prod prod prod";gap:14px;align-items:start}.trend-list,.performance-list{display:grid;gap:11px}.trend-row{display:grid;grid-template-columns:54px minmax(100px,1fr) 130px;align-items:center;gap:10px}.trend-row>b{font-size:10px}.trend-row small{color:var(--muted);text-align:right;font-size:9px}.trend-bars{display:grid;gap:3px}.trend-bars span{display:block;height:7px;min-width:2px;border-radius:20px}.trend-sale{background:var(--orange)}.trend-expense{background:var(--red)}.chart-legend{display:flex;gap:14px;margin-top:14px;color:var(--muted);font-size:9px}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:7px;height:7px;border-radius:50%}.sale-dot{background:var(--orange)}.expense-dot{background:var(--red)}.performance-row{display:grid;grid-template-columns:minmax(130px,.8fr) 1.2fr;align-items:center;gap:12px}.performance-row b{display:block;font-size:11px}.performance-row small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.status-bar.expense>i{background:var(--red)}.tag-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tag-summary span{border:1px solid var(--line);background:var(--panel-2);border-radius:999px;padding:6px 9px;color:var(--muted);font-size:9px}.tag-summary b{color:var(--text)}
.settings-grid .panel{align-self:start}.settings-main-panel{grid-area:main}.settings-access-panel{grid-area:access}.settings-cloud-panel{grid-area:cloud}.settings-data-panel{grid-area:data}.settings-production-panel{grid-area:prod}.settings-access-panel,.settings-data-panel,.settings-production-panel{min-height:100%}.settings-access-panel .panel-note,.settings-data-panel .panel-note,.settings-production-panel .panel-note{text-align:left}.inline-form{margin-top:4px}.block-note{text-align:left;max-width:none;margin:8px 0 14px}.settings-actions{display:flex;gap:8px;flex-wrap:wrap}.settings-data-panel .settings-actions{display:grid;grid-template-columns:1fr 1fr}.settings-production-panel .settings-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.settings-data-panel .btn,.settings-production-panel .btn{width:100%;justify-content:center;text-align:center}.terms-editor-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:-3px}.terms-editor-actions small{color:var(--muted);font-size:9px;line-height:1.4}.danger-outline{color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--line))}.cloud-actions{flex-wrap:wrap}.user-list{display:grid;gap:8px}.user-row{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:10px}.user-row>div{display:flex;align-items:center;gap:9px}.user-row span{display:grid}.user-row b{font-size:11px}.user-row small{color:var(--muted);font-size:9px}.avatar-dot{width:30px;height:30px;border-radius:10px;background:var(--orange-soft);color:var(--orange);display:grid!important;place-items:center;font-weight:900}
.modal-xl{width:min(980px,100%)}.booking-tools-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.booking-tools-summary>div{border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:10px}.booking-tools-summary small{display:block;color:var(--muted);font-size:9px}.booking-tools-summary b{display:block;margin-top:3px;font-size:11px}.tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tool-grid button{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:14px;padding:15px;text-align:left;display:grid;grid-template-columns:34px 1fr;column-gap:10px}.tool-grid button:hover{border-color:color-mix(in srgb,var(--orange) 40%,var(--line));background:var(--orange-soft)}.tool-grid button>span{grid-row:1/3;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--panel-3);color:var(--orange);font-weight:900}.tool-grid b{font-size:12px}.tool-grid small{color:var(--muted);font-size:9px}.late-fee-box{border:1px solid color-mix(in srgb,var(--red) 30%,var(--line));background:color-mix(in srgb,var(--red) 7%,var(--panel));border-radius:14px;padding:12px 14px;margin:0 0 12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.late-fee-box span{display:block;color:var(--red);font-size:8px;font-weight:900;letter-spacing:.1em}.late-fee-box b{display:block;font-size:12px;margin:2px 0}.late-fee-box small{display:block;color:var(--muted);font-size:9px}.emphasis{border-color:color-mix(in srgb,var(--orange) 35%,var(--line))!important;color:var(--orange)!important}
.checklist-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.checklist-meta span{border:1px solid var(--line);background:var(--panel-2);border-radius:999px;padding:6px 9px;color:var(--muted);font-size:9px}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checklist-column{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:14px}.checklist-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.checklist-head span:first-child{font-size:8px;letter-spacing:.12em;color:var(--orange);font-weight:900}.checklist-head h3{margin:2px 0 0;font-size:15px}.check-items{display:grid;gap:7px}.check-items label{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:9px 10px}.check-items input{accent-color:var(--orange)}.check-items span{font-size:10px;font-weight:700}.notes-label{display:grid;gap:6px;margin-top:10px}.notes-label>span{font-size:9px;color:var(--muted);font-weight:800}.notes-label textarea{width:100%}.check-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:10px}
.upload-box{border:1px dashed color-mix(in srgb,var(--orange) 35%,var(--line));background:var(--orange-soft);border-radius:14px;padding:12px;display:grid;grid-template-columns:1fr 1.3fr auto;gap:8px;align-items:center}.upload-box small{grid-column:1/-1;color:var(--muted);font-size:9px}.file-list{display:grid;gap:8px;margin-top:12px}.file-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:10px}.file-row>div{display:flex;align-items:center;gap:9px}.file-row span span{display:grid}.file-row b{font-size:10px}.file-row small{display:block;color:var(--muted);font-size:9px}.file-icon{width:32px;height:32px;border-radius:9px;background:var(--panel-3);display:grid!important;place-items:center;color:var(--orange);font-size:8px;font-weight:900}
.login-overlay{position:fixed;inset:0;z-index:500;background:rgba(8,9,10,.96);backdrop-filter:blur(20px);display:grid;place-items:center;padding:20px}.login-overlay[hidden]{display:none}.login-card{width:min(390px,100%);background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 35px 90px rgba(0,0,0,.45);display:grid;gap:12px}.login-card img{width:66px;height:66px;border-radius:50%;background:#fff;margin-bottom:8px}.login-card h2{margin:0;font-size:23px}.login-card p{margin:0 0 6px;color:var(--muted)}.login-card label{display:grid;gap:6px}.login-card label>span{font-size:9px;color:var(--muted);font-weight:800}.login-card small{min-height:18px;color:var(--red)}
body[data-role="viewer"] .btn-primary[data-open],body[data-role="viewer"] .quick-actions,body[data-role="viewer"] .row-actions .danger{opacity:.45;pointer-events:none}

@media(max-width:1180px){.premium-actions{max-width:540px}.global-search-wrap{min-width:220px}.attention-board{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr;grid-template-areas:"main" "access" "data" "cloud" "prod"}.settings-data-panel .settings-actions,.settings-production-panel .settings-actions{grid-template-columns:1fr}.booking-tools-summary{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.premium-actions{max-width:none!important}.global-search-wrap{display:block;position:absolute;left:18px;right:74px;top:102px;min-width:0}.crm-topbar{padding-bottom:68px}.top-actions #monthlyReportBtn,.top-actions #restoreBtn,.top-actions #backupBtn{display:none}.global-results{max-height:55vh;overflow:auto}.attention-board{grid-template-columns:1fr 1fr}.tool-grid,.checklist-grid{grid-template-columns:1fr}.booking-tools-summary{grid-template-columns:1fr 1fr}.upload-box{grid-template-columns:1fr}.upload-box small{grid-column:auto}.trend-row{grid-template-columns:48px 1fr}.trend-row small{grid-column:2;text-align:left}.performance-row{grid-template-columns:1fr}.settings-grid{display:grid}.settings-data-panel .settings-actions,.settings-production-panel .settings-actions{grid-template-columns:1fr}.modal-xl{width:100%}}
@media(max-width:430px){.attention-board{grid-template-columns:1fr}.booking-tools-summary{grid-template-columns:1fr 1fr}.tool-grid{grid-template-columns:1fr}.late-fee-box{align-items:stretch;flex-direction:column}.file-row{align-items:flex-start;flex-direction:column}}
@media(min-width:761px){.crm-nav{min-height:0;overflow-y:auto;padding-right:2px}.crm-nav::-webkit-scrollbar{width:4px}.crm-nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:20px}}
@media(max-width:760px){
  .crm-topbar{display:block;padding-bottom:20px}
  .crm-topbar .top-actions{position:static;margin-top:14px;max-width:none!important;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
  .global-search-wrap{position:relative;left:auto;right:auto;top:auto;min-width:0;width:100%}
  .global-search{width:100%}
}

/* v2.4.1 — premium unit workspace */
.units-toolbar{align-items:flex-start}.units-toolbar>div:first-child{min-width:0}.premium-add-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.unit-summary-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.unit-summary-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:6px 9px;color:var(--muted)}.unit-summary-pill small{font-size:9px;text-transform:uppercase;letter-spacing:.04em}.unit-summary-pill b{font-size:11px;color:var(--text)}.unit-summary-pill.available b{color:var(--green)}.unit-summary-pill.rented b{color:var(--orange)}.unit-summary-pill.service b{color:var(--yellow)}
.unit-controlbar{margin:14px 0 16px;padding:9px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:16px;box-shadow:none}.unit-control-filters{display:flex;align-items:center;gap:8px;min-width:0}.unit-control-filters .select{height:40px;min-width:135px}.unit-search{position:relative;display:block;min-width:260px}.unit-search>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;fill:none;stroke:var(--muted);stroke-width:1.8;stroke-linecap:round;pointer-events:none}.unit-search .input{width:100%;height:40px;padding-left:36px}.view-switcher{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);background:var(--panel-2);border-radius:11px;flex:0 0 auto}.view-switcher button{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:7px;height:32px;padding:0 10px;border-radius:8px;font-size:10px;font-weight:800;transition:.18s ease}.view-switcher button:hover{color:var(--text);background:color-mix(in srgb,var(--panel) 70%,transparent)}.view-switcher button.active{background:var(--panel);color:var(--orange);box-shadow:0 2px 8px rgba(0,0,0,.12)}.view-switcher svg,.ui-svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.unit-grid{align-items:start}.unit-grid.view-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.unit-card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.unit-card:hover{border-color:color-mix(in srgb,var(--orange) 22%,var(--line));box-shadow:0 14px 34px rgba(0,0,0,.08);transform:translateY(-1px)}.unit-card-top{padding:17px 17px 13px;display:flex;align-items:center;justify-content:flex-start;gap:12px}.unit-id.premium-icon{width:44px;height:44px;border-radius:12px;flex:0 0 44px;background:linear-gradient(145deg,color-mix(in srgb,var(--orange) 13%,var(--panel)),var(--orange-soft));color:var(--orange);border:1px solid color-mix(in srgb,var(--orange) 24%,var(--line));display:grid;place-items:center}.unit-id.premium-icon .ui-svg{width:23px;height:23px;stroke-width:1.65}.unit-title-line{display:flex;align-items:center;gap:9px;min-width:0}.unit-title-line h3{flex:1}.unit-title-line .badge{flex:0 0 auto}.unit-name p span{opacity:.5;margin:0 2px}.unit-card-body{padding:0 17px 15px}.unit-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.unit-stat{background:color-mix(in srgb,var(--panel-2) 88%,transparent);border:1px solid var(--line);border-radius:10px;padding:9px 10px;min-width:0}.unit-stat small{font-size:8px;letter-spacing:.035em}.unit-stat b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-stat.stat-condition{grid-column:span 2}.unit-recovery{margin-top:10px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(90deg,color-mix(in srgb,var(--orange) 5%,var(--panel-2)),var(--panel-2))}.unit-recovery-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:7px}.unit-recovery-head span{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.unit-recovery-head b{font-size:11px}.unit-recovery .status-bar{height:5px}.unit-recovery>small{display:block;margin-top:6px;color:var(--muted);font-size:9px}.unit-service{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.unit-service span{min-width:0}.unit-service small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}.unit-service b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-card-actions{border-top:1px solid var(--line);padding:10px 13px 10px 17px;display:flex;justify-content:space-between;align-items:center;gap:10px;background:color-mix(in srgb,var(--panel-2) 45%,transparent)}.unit-capital{display:grid;gap:1px;min-width:0}.unit-capital small{font-size:8px;text-transform:uppercase;color:var(--muted);letter-spacing:.03em}.unit-capital b{font-size:10px}.unit-action-group{display:flex;align-items:center;gap:4px}.unit-action{border:1px solid transparent;background:transparent;color:var(--muted);height:31px;padding:0 8px;border-radius:8px;display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:800;transition:.16s ease}.unit-action:hover{background:var(--panel);border-color:var(--line);color:var(--text)}.unit-action .ui-svg{width:14px;height:14px}.unit-action.danger:hover{color:var(--red);border-color:color-mix(in srgb,var(--red) 28%,var(--line));background:color-mix(in srgb,var(--red) 7%,var(--panel))}.unit-empty{grid-column:1/-1}
/* list view */
.unit-grid.view-list{display:grid;grid-template-columns:1fr;gap:9px}.view-list .unit-card{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr) 245px;align-items:stretch;border-radius:15px}.view-list .unit-card:hover{transform:none}.view-list .unit-card-top{border-right:1px solid var(--line);padding:14px 16px}.view-list .unit-card-body{padding:11px 14px;display:grid;grid-template-columns:minmax(0,1fr) 185px;gap:10px;align-items:center}.view-list .unit-stat-grid{grid-template-columns:repeat(5,minmax(72px,1fr));gap:5px}.view-list .unit-stat{padding:8px;border:0;background:transparent}.view-list .unit-stat.stat-condition{grid-column:auto}.view-list .unit-recovery{margin:0;padding:9px 10px}.view-list .unit-service{display:none}.view-list .unit-card-actions{border-top:0;border-left:1px solid var(--line);padding:10px 12px;justify-content:center;align-items:flex-end;flex-direction:column;background:transparent}.view-list .unit-action-group{width:100%;justify-content:flex-end}.view-list .unit-capital{text-align:right}.view-list .unit-id.premium-icon{width:40px;height:40px;flex-basis:40px}.view-list .unit-id.premium-icon .ui-svg{width:21px;height:21px}
/* compact view */
.unit-grid.view-compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.view-compact .unit-card{border-radius:14px}.view-compact .unit-card-top{padding:13px}.view-compact .unit-id.premium-icon{width:38px;height:38px;flex-basis:38px}.view-compact .unit-id.premium-icon .ui-svg{width:19px;height:19px}.view-compact .unit-title-line{display:block}.view-compact .unit-title-line .badge{display:inline-flex;margin-top:4px}.view-compact .unit-card-body{padding:0 13px 12px}.view-compact .unit-stat-grid{grid-template-columns:1fr 1fr}.view-compact .unit-stat{padding:7px 8px}.view-compact .stat-deposit,.view-compact .stat-net,.view-compact .stat-condition{display:none}.view-compact .unit-recovery{padding:8px 9px;margin-top:8px}.view-compact .unit-service{display:none}.view-compact .unit-card-actions{padding:8px 9px 8px 13px}.view-compact .unit-capital small{display:none}.view-compact .unit-action{width:29px;padding:0;justify-content:center}.view-compact .unit-action span{display:none}.view-compact .unit-action .ui-svg{width:14px;height:14px}

@media(max-width:1380px){.unit-grid.view-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.unit-grid.view-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.view-list .unit-card{grid-template-columns:260px minmax(0,1fr) 215px}.view-list .unit-card-body{grid-template-columns:1fr}.view-list .unit-recovery{display:none}.view-list .unit-stat-grid{grid-template-columns:repeat(5,minmax(64px,1fr))}}
@media(max-width:1050px){.unit-controlbar{align-items:stretch;flex-direction:column}.unit-control-filters{display:grid;grid-template-columns:minmax(220px,1fr) 150px 180px}.view-switcher{align-self:flex-start}.view-list .unit-card{grid-template-columns:250px minmax(0,1fr)}.view-list .unit-card-actions{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center}.unit-grid.view-compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.units-toolbar{gap:10px}.units-toolbar .premium-add-btn{align-self:flex-start}.unit-controlbar{padding:8px}.unit-control-filters{grid-template-columns:1fr}.unit-search{min-width:0}.view-switcher{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.view-switcher button{justify-content:center;padding:0 7px}.unit-grid.view-grid,.unit-grid.view-compact{grid-template-columns:1fr}.view-list .unit-card{display:block}.view-list .unit-card-top{border-right:0}.view-list .unit-card-body{display:block;padding:0 17px 15px}.view-list .unit-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.view-list .unit-stat{background:var(--panel-2);border:1px solid var(--line);padding:9px 10px}.view-list .unit-stat.stat-condition{grid-column:span 2}.view-list .unit-recovery{display:block;margin-top:10px}.view-list .unit-service{display:grid}.view-list .unit-card-actions{padding:10px 13px 10px 17px}.unit-summary-strip{display:grid;grid-template-columns:repeat(2,max-content)}.unit-action span{display:none}.unit-action{width:31px;padding:0;justify-content:center}.unit-card:hover{transform:none}}
@media(max-width:390px){.unit-summary-strip{grid-template-columns:1fr 1fr}.unit-summary-pill{justify-content:space-between}.view-switcher button span{display:none}.view-switcher button{height:36px}.unit-card-actions{align-items:flex-end}.unit-capital b{font-size:9px}}
.nav-ico svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.crm-nav button.active .nav-ico svg{stroke-width:1.9}

/* v2.4.2 Unit photo + hierarchy refinement */
.availability-item>div:first-child{display:grid;gap:3px;min-width:0}.availability-item b,.availability-item small{display:block;line-height:1.3}.availability-item small{font-size:10px;margin:0}.availability-item{column-gap:16px}
.unit-overview-head{margin-bottom:12px;align-items:flex-end}.unit-overview-copy{min-width:0}.unit-overview-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:3px}.unit-overview-title h2{margin:0;font-size:24px;line-height:1.15;letter-spacing:-.035em}.unit-count-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.unit-overview-copy .toolbar-copy{margin-top:7px;max-width:760px;line-height:1.55}.unit-overview-head .premium-add-btn{flex:0 0 auto}
.unit-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 14px}.unit-kpi-card{min-width:0;display:flex;align-items:flex-start;gap:11px;padding:15px 14px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,transparent),color-mix(in srgb,var(--panel-2) 80%,transparent));box-shadow:0 8px 22px rgba(0,0,0,.06)}.unit-kpi-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--muted)}.unit-kpi-icon .ui-svg{width:18px;height:18px}.unit-kpi-card>div{min-width:0}.unit-kpi-card small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.07em;font-weight:900;line-height:1.2}.unit-kpi-card strong{display:block;margin-top:5px;font-size:18px;line-height:1.12;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-kpi-card p{margin:4px 0 0;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unit-kpi-card.green .unit-kpi-icon{color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--panel));border-color:color-mix(in srgb,var(--green) 22%,var(--line))}.unit-kpi-card.blue .unit-kpi-icon{color:var(--blue);background:color-mix(in srgb,var(--blue) 8%,var(--panel));border-color:color-mix(in srgb,var(--blue) 22%,var(--line))}.unit-kpi-card.orange .unit-kpi-icon,.unit-kpi-card.accent .unit-kpi-icon{color:var(--orange);background:var(--orange-soft);border-color:color-mix(in srgb,var(--orange) 24%,var(--line))}.unit-kpi-card.accent{border-color:color-mix(in srgb,var(--orange) 24%,var(--line));background:linear-gradient(145deg,var(--orange-soft),var(--panel))}.unit-kpi-card.accent strong{color:var(--orange)}
.unit-photo{position:relative;width:54px;height:54px;flex:0 0 54px;border-radius:13px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 88%,var(--orange));background:linear-gradient(145deg,var(--panel-2),var(--panel-3));display:grid;place-items:center;color:var(--orange)}.unit-photo-fallback{position:absolute;inset:0;display:grid;place-items:center;z-index:0}.unit-photo-fallback .ui-svg{width:23px;height:23px}.unit-photo img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.03);transition:transform .2s ease,filter .2s ease}.unit-card:hover .unit-photo img{transform:scale(1.035);filter:saturate(1) contrast(1.04)}.unit-card-top{gap:13px}.unit-name h3{line-height:1.25}.unit-name p{margin-top:4px;line-height:1.35}.unit-title-line{column-gap:10px;row-gap:5px}
.view-list .unit-photo{width:48px;height:48px;flex-basis:48px;border-radius:11px}.view-compact .unit-photo{width:44px;height:44px;flex-basis:44px;border-radius:11px}.view-compact .unit-name p{margin-top:3px}
@media(max-width:1320px){.unit-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.unit-overview-head{align-items:stretch}.unit-overview-title h2{font-size:21px}.unit-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.unit-kpi-card{padding:12px 11px}.unit-kpi-icon{width:31px;height:31px;flex-basis:31px}.unit-kpi-card strong{font-size:16px}.unit-photo{width:50px;height:50px;flex-basis:50px}.view-list .unit-photo,.view-compact .unit-photo{width:46px;height:46px;flex-basis:46px}}
@media(max-width:390px){.unit-kpi-card{display:grid;gap:8px}.unit-kpi-icon{width:30px;height:30px}.unit-kpi-card p{white-space:normal}.unit-overview-title{gap:8px}}

@media(max-width:760px){.compact-roi-list{gap:9px}.premium-roi-mini{padding:10px 11px}.premium-roi-mini .roi-mini-top{grid-template-columns:1fr;align-items:flex-start;gap:8px}.roi-mini-primary{gap:10px}.roi-mini-copy b{font-size:13px}.roi-mini-copy .roi-mini-meta{font-size:10px;gap:6px}.roi-mini-value{justify-items:start}.premium-roi-mini .unit-photo{width:40px;height:40px;flex-basis:40px;border-radius:10px}}
@media(max-width:430px){.overview-grid{gap:10px}.panel{padding:16px}.premium-roi-mini{padding:9px 10px}.roi-mini-primary{gap:9px}.premium-roi-mini .unit-photo{width:38px;height:38px;flex-basis:38px}.roi-mini-copy b{font-size:12.5px}.roi-mini-copy .roi-mini-meta{font-size:9.5px;row-gap:3px}.roi-mini-value b{font-size:13px}.roi-mini-value small{font-size:9px}.availability-item{padding:10px 11px}}

/* v2.5.0 — Easy Setup + progressive detail */
.setup-guide{margin:14px 0 0;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.7fr) auto;gap:16px;align-items:center;padding:15px 17px;border:1px solid color-mix(in srgb,var(--orange) 20%,var(--line));border-radius:17px;background:linear-gradient(120deg,color-mix(in srgb,var(--orange) 7%,var(--panel)),var(--panel));box-shadow:0 8px 24px rgba(0,0,0,.05)}
.setup-guide[hidden]{display:none}.setup-guide-copy h3{margin:3px 0 3px;font-size:16px;letter-spacing:-.02em}.setup-guide-copy p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.setup-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.setup-step{border:1px solid var(--line);background:color-mix(in srgb,var(--panel-2) 88%,transparent);border-radius:12px;padding:9px 10px;display:flex;align-items:center;gap:9px;text-align:left;color:var(--text);min-width:0}.setup-step:hover{border-color:color-mix(in srgb,var(--orange) 28%,var(--line));background:var(--panel-2)}.setup-step-num{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:grid;place-items:center;background:var(--panel-3);color:var(--muted);font-size:10px;font-weight:900}.setup-step.done .setup-step-num{background:color-mix(in srgb,var(--green) 12%,var(--panel));color:var(--green);border:1px solid color-mix(in srgb,var(--green) 28%,var(--line))}.setup-step span:last-child{min-width:0}.setup-step b{display:block;font-size:11px;line-height:1.25}.setup-step small{display:block;color:var(--muted);font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.setup-hide{border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800;padding:8px}.setup-hide:hover{color:var(--text)}
.mobile-quick-ops{display:none}.booking-profit{color:color-mix(in srgb,var(--green) 76%,var(--muted));font-weight:700;margin-top:3px}.reliability-pill{display:block;width:max-content;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);background:var(--panel-2)}.reliability-pill.trusted{color:var(--green);border-color:color-mix(in srgb,var(--green) 24%,var(--line));background:color-mix(in srgb,var(--green) 7%,var(--panel))}.reliability-pill.warning,.reliability-pill.caution{color:var(--yellow);border-color:color-mix(in srgb,var(--yellow) 25%,var(--line));background:color-mix(in srgb,var(--yellow) 7%,var(--panel))}.reliability-pill.good{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 22%,var(--line));background:color-mix(in srgb,var(--blue) 6%,var(--panel))}
.field-help{display:block;color:var(--muted);font-size:9px;line-height:1.4;margin-top:5px}.unit-head-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.unit-action.primary-view{color:var(--orange)}.unit-action.primary-view:hover{background:var(--orange-soft);border-color:color-mix(in srgb,var(--orange) 28%,var(--line));color:var(--orange)}
.equipment-schedule-panel{margin:0 0 14px;padding:16px}.equipment-schedule-panel[hidden]{display:none}.equipment-schedule{overflow:auto;padding-bottom:4px}.timeline-grid{display:grid;grid-template-columns:180px repeat(14,42px);gap:4px;min-width:810px;align-items:center}.timeline-head{height:44px;display:grid;place-items:center;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px}.timeline-head b{font-size:9px}.timeline-head small{font-size:9px}.timeline-grid .sticky-name{position:sticky;left:0;z-index:3;background:var(--panel)}.timeline-unit{min-height:48px;display:flex;align-items:center;gap:8px;padding:5px 8px;border-bottom:1px solid var(--line);min-width:0}.timeline-unit .unit-photo{width:32px;height:32px;flex-basis:32px;border-radius:8px}.timeline-unit span{min-width:0}.timeline-unit b,.timeline-unit small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-unit b{font-size:10px}.timeline-unit small{font-size:8px;color:var(--muted);margin-top:2px}.timeline-cell{height:34px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);display:grid;place-items:center}.timeline-cell span{width:8px;height:8px;border-radius:50%;background:color-mix(in srgb,var(--muted) 35%,transparent)}.timeline-cell.booked{background:color-mix(in srgb,var(--orange) 10%,var(--panel));border-color:color-mix(in srgb,var(--orange) 28%,var(--line))}.timeline-cell.booked span{background:var(--orange)}.timeline-cell.service{background:color-mix(in srgb,var(--yellow) 8%,var(--panel));border-color:color-mix(in srgb,var(--yellow) 28%,var(--line))}.timeline-cell.service span{background:var(--yellow)}
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.42);backdrop-filter:blur(2px);z-index:90}.unit-detail-drawer{position:fixed;top:0;right:0;width:min(520px,94vw);height:100dvh;z-index:91;background:var(--panel);border-left:1px solid var(--line);box-shadow:-24px 0 60px rgba(0,0,0,.24);transform:translateX(102%);transition:transform .22s ease;display:flex;flex-direction:column}.unit-detail-drawer.open{transform:translateX(0)}.drawer-head{padding:20px 20px 15px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:3px 0 0;font-size:22px;letter-spacing:-.03em}.drawer-close{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:20px}.unit-drawer-body{padding:18px 20px 28px;overflow:auto}.drawer-hero{display:grid;grid-template-columns:128px minmax(0,1fr);gap:14px;align-items:center}.drawer-hero>img,.drawer-photo-fallback{width:128px;height:96px;object-fit:cover;border-radius:14px;border:1px solid var(--line);background:var(--panel-2)}.drawer-photo-fallback{display:grid;place-items:center;color:var(--orange)}.drawer-photo-fallback .ui-svg{width:34px;height:34px}.drawer-hero-copy>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.drawer-serial{font-size:10px;color:var(--muted)}.drawer-hero-copy p{margin:7px 0 0;color:var(--muted);font-size:11px}.drawer-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.drawer-metrics>div{padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2)}.drawer-metrics small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.04em}.drawer-metrics b{display:block;margin-top:5px;font-size:12px}.drawer-progress{margin-top:12px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(90deg,var(--orange-soft),var(--panel-2))}.drawer-progress>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:10px;margin-bottom:8px}.drawer-section{margin-top:18px}.drawer-section-head{display:flex;justify-content:space-between;gap:10px;align-items:end;margin-bottom:9px}.drawer-section-head h3{margin:0;font-size:14px}.drawer-section-head small{color:var(--muted);font-size:9px}.drawer-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.drawer-actions button{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:9px 8px;font-size:10px;font-weight:800}.drawer-actions button:hover{border-color:color-mix(in srgb,var(--orange) 30%,var(--line));color:var(--orange)}.drawer-list{display:grid;gap:7px}.drawer-list>button,.drawer-list>div{width:100%;border:1px solid var(--line);background:var(--panel-2);border-radius:10px;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text);text-align:left}.drawer-list>button:hover{border-color:color-mix(in srgb,var(--orange) 24%,var(--line))}.drawer-list span{min-width:0}.drawer-list b,.drawer-list small{display:block}.drawer-list b{font-size:10px}.drawer-list small{font-size:9px;color:var(--muted);margin-top:3px}.drawer-list p{margin:0;padding:10px;color:var(--muted);font-size:10px;border:1px dashed var(--line);border-radius:10px}.drawer-open{overflow:hidden}
.equipment-rank-list{display:grid;gap:8px}.equipment-rank-list>div{border:1px solid var(--line);background:var(--panel-2);border-radius:11px;padding:10px 11px;display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:10px;align-items:center}.equipment-rank-list span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.equipment-rank-list b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.equipment-rank-list small{font-size:9px;color:var(--orange);white-space:nowrap}

@media(max-width:980px){.setup-guide{grid-template-columns:1fr}.setup-hide{justify-self:start}.setup-steps{grid-template-columns:repeat(3,1fr)}.unit-head-actions{align-self:flex-start}}
@media(max-width:760px){
  .setup-guide{margin-top:10px;padding:12px;gap:11px}.setup-guide-copy h3{font-size:14px}.setup-guide-copy p{font-size:10px}.setup-steps{grid-template-columns:1fr;gap:6px}.setup-step{padding:8px 9px}.setup-step small{white-space:normal}.setup-hide{padding:2px 4px}
  .mobile-quick-ops{display:grid;grid-template-columns:repeat(5,minmax(64px,1fr));gap:6px;overflow-x:auto;margin:10px 0 12px;padding-bottom:2px}.mobile-quick-ops button{min-width:64px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:11px;padding:8px 5px;display:grid;justify-items:center;gap:3px}.mobile-quick-ops span{color:var(--orange);font-size:15px;font-weight:900;line-height:1}.mobile-quick-ops b{font-size:8px}
  .overview-banner .quick-actions{display:none}.unit-head-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.unit-head-actions .btn{justify-content:center}.drawer-head{padding:16px}.unit-drawer-body{padding:14px 16px 24px}.unit-detail-drawer{width:100vw}.drawer-hero{grid-template-columns:92px minmax(0,1fr);gap:11px}.drawer-hero>img,.drawer-photo-fallback{width:92px;height:74px}.drawer-metrics{grid-template-columns:repeat(2,1fr)}.drawer-actions{grid-template-columns:1fr}.equipment-rank-list>div{grid-template-columns:1fr auto}.equipment-rank-list span{grid-column:1/-1}.timeline-grid{grid-template-columns:150px repeat(14,38px);min-width:710px}
  .crm-sidebar{height:68px;padding:6px 7px 5px;overflow:hidden}.crm-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.crm-nav::-webkit-scrollbar{display:none}.crm-nav button{flex:0 0 70px;min-width:70px;height:54px;display:grid;justify-items:center;align-content:center;gap:2px;padding:4px;border-radius:9px;font-size:8px}.crm-nav button span:not(.nav-ico){display:block}.crm-main{padding-bottom:74px}
}
@media(max-width:430px){.setup-guide{border-radius:14px}.mobile-quick-ops{grid-template-columns:repeat(5,62px)}.unit-head-actions{gap:6px}.unit-head-actions .btn{font-size:9px;padding:9px 7px}.drawer-metrics>div{padding:9px}.drawer-metrics b{font-size:11px}.drawer-section{margin-top:15px}.equipment-schedule-panel{padding:12px}.timeline-grid{grid-template-columns:135px repeat(14,36px);min-width:655px}}

/* v2.5.1 — unit photo upload */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.unit-photo-upload-block{border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel-2) 62%,transparent);padding:14px;display:grid;gap:11px}
.unit-photo-upload-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.unit-photo-upload-head>div{display:grid;gap:3px}.unit-photo-upload-head>div>span{font-size:12px;font-weight:800;color:var(--text)}.unit-photo-upload-head small{color:var(--muted);font-size:10px}.photo-upload-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:9px;background:var(--orange);color:#161616;font-size:10px;font-weight:900;cursor:pointer;white-space:nowrap}.photo-upload-btn:hover{filter:brightness(1.05)}
.unit-photo-drop{border:1px dashed color-mix(in srgb,var(--orange) 30%,var(--line));border-radius:12px;min-height:66px;display:grid;place-items:center;align-content:center;gap:3px;padding:12px;text-align:center;background:color-mix(in srgb,var(--orange) 3%,var(--panel));cursor:pointer;transition:.16s ease}.unit-photo-drop strong{font-size:11px}.unit-photo-drop span{font-size:9.5px;color:var(--muted)}.unit-photo-drop:hover,.unit-photo-drop.dragover{border-color:var(--orange);background:var(--orange-soft)}
.unit-photo-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.photo-empty{grid-column:1/-1;padding:10px 11px;border-radius:10px;background:var(--panel);border:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.45}.unit-photo-preview-item{margin:0;min-width:0;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:var(--panel)}.unit-photo-preview-item.cover{border-color:color-mix(in srgb,var(--orange) 45%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--orange) 12%,transparent)}.unit-photo-preview-item>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--panel-3)}.unit-photo-preview-item figcaption{padding:8px;display:grid;gap:7px}.unit-photo-preview-item figcaption>span{font-size:9.5px;font-weight:800;color:var(--text)}.unit-photo-preview-item figcaption>div{display:flex;gap:5px;flex-wrap:wrap}.unit-photo-preview-item button{border:1px solid var(--line);background:var(--panel-2);color:var(--muted);border-radius:7px;min-height:25px;padding:0 7px;font-size:8.5px;font-weight:800}.unit-photo-preview-item button:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--orange) 35%,var(--line))}.unit-photo-preview-item button:disabled{opacity:.55;cursor:default}.unit-photo-preview-item button.danger:hover{color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--line))}
.drawer-photo-strip{display:flex;gap:8px;margin:-5px 0 12px;padding:0 2px}.drawer-photo-strip button{width:56px;height:44px;padding:0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--panel-2);opacity:.66}.drawer-photo-strip button.active{opacity:1;border-color:var(--orange);box-shadow:0 0 0 1px color-mix(in srgb,var(--orange) 18%,transparent)}.drawer-photo-strip img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:760px){.unit-photo-upload-block{padding:12px}.unit-photo-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.unit-photo-drop{min-height:58px}.unit-photo-upload-head{align-items:flex-start}.photo-upload-btn{min-height:32px;padding:0 10px}.unit-photo-preview-item figcaption{padding:7px}.unit-photo-preview-item figcaption>div{display:grid;grid-template-columns:1fr}.unit-photo-preview-item button{width:100%}}
@media(max-width:430px){.unit-photo-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.unit-photo-upload-head>div>span{font-size:11px}.unit-photo-upload-head small{font-size:9px}}


/* v2.5.2 — compact mobile bookings: vertical-only, no duplicate top add button */
@media(max-width:760px){
  /* The page-level New booking action already exists in the Bookings toolbar. */
  .crm-topbar .top-actions .btn-primary{display:none!important}
  .crm-topbar .top-actions{right:18px}

  /* Bookings become stacked cards instead of a horizontally scrollable table. */
  .booking-table-panel{padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}
  .booking-table-wrap{overflow:visible!important;width:100%;max-width:100%}
  .booking-table{min-width:0!important;width:100%;display:block;border-collapse:separate}
  .booking-table thead{display:none}
  .booking-table tbody{display:grid;gap:10px;width:100%}
  .booking-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:
    "booking status"
    "customer customer"
    "unit schedule"
    "rental deposit"
    "actions actions";
    gap:0 12px;width:100%;min-width:0;border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:13px 14px;overflow:hidden}
  .booking-table tbody tr:hover{background:var(--panel)}
  .booking-table td{display:block;min-width:0;padding:9px 0;border:0!important;font-size:11.5px;line-height:1.4;background:transparent!important;overflow-wrap:anywhere}
  .booking-table td::before{display:block;margin-bottom:4px;color:var(--muted);font-size:7.5px;font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.09em}
  .booking-table td:nth-child(1){grid-area:booking;padding-top:1px;padding-right:4px}
  .booking-table td:nth-child(1)::before{content:'Booking'}
  .booking-table td:nth-child(2){grid-area:customer;border-top:1px solid var(--line)!important;padding-top:11px;margin-top:5px}
  .booking-table td:nth-child(2)::before{content:'Customer'}
  .booking-table td:nth-child(3){grid-area:unit;border-top:1px solid var(--line)!important;padding-top:10px}
  .booking-table td:nth-child(3)::before{content:'Unit'}
  .booking-table td:nth-child(4){grid-area:schedule;border-top:1px solid var(--line)!important;padding-top:10px}
  .booking-table td:nth-child(4)::before{content:'Schedule'}
  .booking-table td:nth-child(5){grid-area:rental;border-top:1px solid var(--line)!important;padding-top:10px}
  .booking-table td:nth-child(5)::before{content:'Rental / paid'}
  .booking-table td:nth-child(6){grid-area:deposit;border-top:1px solid var(--line)!important;padding-top:10px}
  .booking-table td:nth-child(6)::before{content:'Deposit'}
  .booking-table td:nth-child(7){grid-area:status;padding:0 0 0 4px;align-self:start;justify-self:end}
  .booking-table td:nth-child(7)::before{display:none}
  .booking-table td:nth-child(7) .badge{white-space:nowrap}
  .booking-table td:nth-child(8){grid-area:actions;border-top:1px solid var(--line)!important;padding:11px 0 0;margin-top:1px}
  .booking-table td:nth-child(8)::before{content:'Actions'}
  .booking-table .row-title{font-size:12.5px;line-height:1.3}
  .booking-table .row-sub{font-size:9.5px;line-height:1.35;margin-top:3px}
  .booking-table .row-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;justify-content:stretch}
  .booking-table .mini-btn{width:100%;min-width:0;padding:7px 5px;font-size:9px;text-align:center;white-space:nowrap}
}
@media(max-width:430px){
  .booking-table tbody{gap:9px}
  .booking-table tbody tr{padding:12px;border-radius:14px;gap:0 10px}
  .booking-table td{font-size:11px;padding:8px 0}
  .booking-table td:nth-child(3),.booking-table td:nth-child(4),.booking-table td:nth-child(5),.booking-table td:nth-child(6){padding-top:9px}
  .booking-table .row-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .booking-table .mini-btn{padding:7px 4px}
  [data-view-panel="bookings"] .section-toolbar{gap:10px}
  [data-view-panel="bookings"] .filter-group{gap:8px}
}

.overview-banner-side{display:flex;align-items:flex-end;justify-content:flex-end;gap:14px;flex:0 0 auto}
.nav-ico{background:color-mix(in srgb,var(--panel-2) 75%,transparent)}
.btn-primary{background:var(--orange);color:#ffffff;box-shadow:0 10px 24px rgba(15,109,58,.14)}
.kpi-card.accent,.unit-kpi-card.accent{background:linear-gradient(145deg,var(--orange-soft),var(--panel));border-color:color-mix(in srgb,var(--orange) 18%,var(--line))}
.quick-action strong,.text-btn,.eyebrow,.section-kicker,.roi-mini-value b,.kpi-card.accent strong{color:var(--orange)}
.table-panel,.panel,.unit-card,.kpi-card{box-shadow:0 10px 26px rgba(19,43,28,.05)}
.login-card img{width:110px;height:110px;object-fit:contain;background:transparent;border-radius:0;padding:0}
@media(max-width:1180px){.crm-shell{grid-template-columns:88px minmax(0,1fr)}.crm-brand img{width:56px;height:56px;border-radius:0;object-fit:contain}.crm-brand small,.crm-brand b,.brand-note span{display:none}}
@media(max-width:900px){.overview-banner{display:block}.overview-banner-side{margin-top:16px;display:flex;justify-content:flex-start}.quick-actions{margin-top:0}}
@media(max-width:760px){.crm-topbar .top-actions .btn-primary{font-size:12px;padding:10px 12px}.overview-banner-side{width:100%;justify-content:flex-start}.quick-actions{grid-template-columns:repeat(4,1fr);width:100%}}

html[data-theme="dark"] .crm-sidebar{background:linear-gradient(180deg,#171b18,#131613)}
html[data-theme="dark"] .panel,html[data-theme="dark"] .kpi-card,html[data-theme="dark"] .table-panel,html[data-theme="dark"] .unit-card{box-shadow:0 12px 30px rgba(0,0,0,.18)}
html[data-theme="dark"] .global-search,html[data-theme="dark"] .input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:var(--panel-3)}

/* v2.6.3 centered UPRNTLS brand */
.crm-brand{width:100%;margin:0 auto}
.crm-brand img{display:block;margin-left:auto;margin-right:auto}
@media(min-width:761px){.crm-sidebar{border-right:none!important}.crm-brand{justify-items:center;text-align:center}.crm-brand span{align-items:center;text-align:center}}


/* v2.7.0 — simpler first impression, progressive disclosure */
.overview-context-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.overview-date-context{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.02em}.overview-more{grid-column:1/-1;padding:0;overflow:hidden}.overview-more>summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.overview-more>summary::-webkit-details-marker{display:none}.overview-more>summary span{display:grid;gap:3px}.overview-more>summary b{font-size:13px}.overview-more>summary small{color:var(--muted);font-size:10px}.overview-more>summary:after{content:'+';color:var(--orange);font-size:20px;font-weight:700}.overview-more[open]>summary:after{content:'−'}.overview-more-body{padding:0 18px 18px;border-top:1px solid var(--line);padding-top:16px}.overview-more-body .panel-head{margin-bottom:12px}
.empty-action{display:grid!important;justify-items:start;gap:8px!important}.empty-action>span{color:var(--muted);max-width:560px}.empty-action .btn{margin-top:3px;min-height:34px;padding:8px 11px;font-size:10px}
.unit-card-actions.simplified{align-items:center}.unit-open-btn{border:1px solid color-mix(in srgb,var(--orange) 28%,var(--line));background:var(--orange-soft);color:var(--orange);height:34px;padding:0 12px;border-radius:9px;display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:900}.unit-open-btn:hover{border-color:var(--orange);transform:translateY(-1px)}.unit-open-btn .ui-svg{width:14px;height:14px}
.booking-wizard-card{max-width:720px}.booking-stepper{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:2px}.booking-stepper>span{min-height:44px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--muted);display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:800}.booking-stepper b{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:var(--panel-3);font-size:9px}.booking-stepper>span.active{border-color:color-mix(in srgb,var(--orange) 36%,var(--line));background:var(--orange-soft);color:var(--orange)}.booking-stepper>span.done{color:var(--text)}.booking-stepper>span.done b{background:var(--orange);color:#fff}.booking-step{border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel-2) 50%,transparent);padding:15px}.booking-step[hidden]{display:none!important}.booking-step-head{margin-bottom:13px}.booking-step-head small{color:var(--orange);font-size:8px;letter-spacing:.12em;font-weight:900}.booking-step-head h3{margin:4px 0 3px;font-size:17px}.booking-step-head p{margin:0;color:var(--muted);font-size:10px}.booking-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-step-grid label{display:grid;gap:6px}.booking-step-grid label>span{font-size:10px;color:var(--muted);font-weight:700}.booking-step-grid label em{font-style:normal;font-weight:500;opacity:.75}.booking-more-options{grid-column:1/-1;border:1px solid var(--line);border-radius:11px;background:var(--panel);padding:0}.booking-more-options summary{cursor:pointer;padding:10px 12px;color:var(--muted);font-size:10px;font-weight:800}.booking-more-options label{padding:0 12px 12px}.booking-wizard-actions{display:flex;align-items:center;gap:8px;margin-top:2px}.booking-action-spacer{flex:1}.mobile-more-btn{display:none}.mobile-more-menu[hidden]{display:none}.mobile-more-menu{position:fixed;inset:0;z-index:100}.mobile-more-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.48)}.mobile-more-sheet{position:absolute;left:10px;right:10px;bottom:78px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 24px 60px rgba(0,0,0,.28)}.mobile-more-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mobile-more-head h3{margin:3px 0 0;font-size:16px}.mobile-more-head>button{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);color:var(--text);font-size:20px}.mobile-more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.mobile-more-grid button{min-height:44px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--text);font-size:10px;font-weight:800}.mobile-more-grid button:hover{border-color:color-mix(in srgb,var(--orange) 30%,var(--line));color:var(--orange)}
@media(max-width:760px){
  /* Exactly five bottom navigation choices: Overview, Calendar, Bookings, Units, More. */
  .crm-nav{display:grid!important;grid-template-columns:repeat(5,1fr)!important;overflow:visible!important;gap:2px!important;padding-bottom:0!important}
  .crm-nav button{min-width:0!important;width:100%!important;flex:initial!important}
  .crm-nav button[data-view="customers"],.crm-nav button[data-view="sales"],.crm-nav button[data-view="deposits"],.crm-nav button[data-view="expenses"],.crm-nav button[data-view="maintenance"],.crm-nav button[data-view="incidents"],.crm-nav button[data-view="analytics"],.crm-nav button[data-view="roi"],.crm-nav button[data-view="settings"]{display:none!important}
  .mobile-more-btn{display:grid!important}
  .booking-stepper>span{font-size:8px;min-height:40px;gap:4px}.booking-stepper b{width:19px;height:19px}.booking-step{padding:12px}.booking-step-grid{grid-template-columns:1fr;gap:10px}.booking-step-grid .span-2{grid-column:auto}.booking-wizard-actions{position:sticky;bottom:-1px;background:var(--panel);padding-top:10px}.booking-wizard-actions .btn{padding:9px 11px;font-size:10px}.overview-more>summary{align-items:flex-start;display:grid;gap:4px}.overview-more>summary small{padding-right:24px}.overview-more>summary:after{position:absolute;right:22px}.overview-more>summary{position:relative}.unit-open-btn{min-width:96px;justify-content:center}.unit-open-btn span{display:inline!important}
}
@media(max-width:430px){.mobile-more-grid{grid-template-columns:repeat(3,1fr)}.booking-stepper>span{display:grid;justify-items:center;align-content:center;gap:2px;text-align:center}.booking-step-head h3{font-size:15px}}

/* v2.8.0 — faster daily workflow */
.today-mode-toggle{border:1px solid color-mix(in srgb,var(--orange) 28%,var(--line));background:color-mix(in srgb,var(--orange) 7%,var(--panel));color:var(--orange);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:850;white-space:nowrap}
.today-mode-toggle:hover{background:var(--orange-soft)}
.today-mode-panel{margin:16px 0;padding:22px}
.today-mode-panel[hidden]{display:none!important}
.today-mode-active>.setup-guide,.today-mode-active>.mobile-quick-ops,.today-mode-active>#overviewKpis,.today-mode-active>.ops-panel,.today-mode-active>.command-center-panel,.today-mode-active>.reminder-center-panel,.today-mode-active>.overview-grid{display:none!important}
.today-mode-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.today-mode-head h2{margin:4px 0 3px;font-size:22px;letter-spacing:-.03em}.today-mode-head p{margin:0;color:var(--muted)}
.today-mode-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.today-summary-card{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:13px 14px;display:grid;gap:3px}.today-summary-card small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.today-summary-card strong{font-size:23px;line-height:1.1}.today-summary-card span{font-size:10px;color:var(--muted)}.today-summary-card.pickup strong,.today-summary-card.return strong{color:var(--orange)}.today-summary-card.unpaid strong{color:var(--yellow)}.today-summary-card.deposit strong{color:var(--green)}
.today-mode-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.today-lane{border:1px solid var(--line);border-radius:15px;background:var(--panel-2);overflow:hidden}.today-lane-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line)}.today-lane-head h3{font-size:13px;margin:0}.today-lane-head span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:var(--panel);color:var(--muted);font-size:10px;font-weight:800}.today-lane-list{display:grid}.today-booking{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}.today-booking:last-child{border-bottom:0}.today-booking>div:first-child{min-width:0;display:grid;gap:3px}.today-booking b{font-size:12px}.today-booking small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-booking-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.today-empty{padding:18px 14px;color:var(--muted);font-size:11px}
.booking-simple-actions{gap:5px}.booking-simple-actions .booking-next{min-width:72px}.booking-next{background:var(--orange-soft);color:var(--orange);border-color:color-mix(in srgb,var(--orange) 28%,var(--line))}
.booking-customer-match{border:1px solid color-mix(in srgb,var(--orange) 20%,var(--line));background:color-mix(in srgb,var(--orange) 5%,var(--panel-2));border-radius:12px;padding:10px}.customer-match-label{display:block;margin:0 0 7px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:850}.customer-match-options{display:grid;gap:6px}.customer-match-options button{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.customer-match-options button:hover{border-color:color-mix(in srgb,var(--orange) 30%,var(--line))}.customer-match-options button>span:first-child{display:grid;gap:2px}.customer-match-options button b{font-size:11px}.customer-match-options button small{font-size:9px;color:var(--muted)}.customer-match-options button>span:last-child{color:var(--orange);font-size:10px;font-weight:800}.customer-match-loaded{display:flex;align-items:center;justify-content:space-between;gap:12px}.customer-match-loaded>span:first-child{display:grid;gap:2px}.customer-match-loaded b{font-size:11px}.customer-match-loaded small{font-size:9px;color:var(--muted)}.customer-match-loaded>span:last-child{font-size:10px;color:var(--orange);font-weight:800}
.quote-box{display:grid;gap:10px}.quote-availability{border-radius:11px;padding:10px 11px;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.quote-availability b{font-size:11px}.quote-availability span{font-size:10px}.quote-availability.available{background:color-mix(in srgb,var(--green) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--green) 26%,var(--line));color:var(--green)}.quote-availability.conflict{background:color-mix(in srgb,var(--red) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--red) 26%,var(--line));color:var(--red)}.quote-availability button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:8px;padding:6px 8px;font-size:9px;font-weight:800;white-space:nowrap}.smart-defaults{display:grid;grid-template-columns:1fr 1fr 1.7fr;gap:7px}.smart-defaults>span{display:grid;gap:3px;border:1px solid var(--line);background:var(--panel-2);border-radius:10px;padding:9px 10px;min-width:0}.smart-defaults small{font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.smart-defaults b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.smart-default-note{color:var(--muted);font-size:9px}

@media(max-width:1050px){.today-mode-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.today-mode-lists{grid-template-columns:1fr}.smart-defaults{grid-template-columns:1fr 1fr}.smart-inclusions{grid-column:1/-1}}
@media(max-width:760px){.overview-context-line{flex-wrap:wrap}.today-mode-toggle{margin-left:0}.today-mode-panel{padding:15px}.today-mode-head{align-items:stretch;flex-direction:column}.today-mode-head .btn{width:100%}.today-mode-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.today-mode-lists{gap:9px}.today-booking{align-items:flex-start;flex-direction:column}.today-booking-actions{width:100%;justify-content:flex-start}.today-booking-actions .mini-btn{flex:1}.quote-availability{grid-template-columns:1fr}.quote-availability button{justify-self:start}.smart-defaults{grid-template-columns:1fr 1fr}.booking-customer-match{padding:8px}.customer-match-loaded{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:430px){.today-mode-summary{grid-template-columns:1fr 1fr}.today-summary-card{padding:11px}.today-summary-card strong{font-size:20px}.smart-defaults{grid-template-columns:1fr}.smart-inclusions{grid-column:auto}.booking-simple-actions .mini-btn{min-width:0}}

/* v2.9.0 production hardening */
.network-banner{position:sticky;top:0;z-index:80;background:#7a4d00;color:#fff;padding:8px 16px;text-align:center;font-size:12px;font-weight:800;letter-spacing:.01em}
.cloud-toggle{display:flex!important;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);padding:11px 12px}.cloud-toggle>input{width:18px;height:18px;margin-top:2px;accent-color:var(--orange)}.cloud-toggle>span{display:grid;gap:2px}.cloud-toggle b{font-size:12px}.cloud-toggle small{color:var(--muted);font-size:10px}
.prod-status{display:grid;gap:0;border:1px solid var(--line);border-radius:13px;overflow:hidden}.prod-status-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border-bottom:1px solid var(--line);background:var(--panel-2)}.prod-status-row:last-child{border-bottom:0}.prod-status-row span{color:var(--muted);font-size:11px}.prod-status-row b{font-size:11px}.prod-status-row b.ok{color:var(--green)}.prod-status-row b.warn{color:var(--yellow)}.storage-quota{margin:10px 0 0;color:var(--muted);font-size:10px}.storage-quota.warning{color:var(--yellow);font-weight:800}.production-links{margin-top:12px}.production-links a{text-decoration:none}
html[data-theme="dark"] .network-banner{background:#5f420c;color:#fff4cf}
@media(max-width:760px){.cloud-actions{display:grid!important;grid-template-columns:1fr 1fr}.production-links{display:grid;grid-template-columns:1fr 1fr}.production-links a:last-child{grid-column:1/-1}}


/* v3.0 operations control -------------------------------------------------- */
.field-title{display:block;font-size:12px;font-weight:800;margin:0 0 8px;color:var(--text)}.field-title em{font-weight:500;color:var(--muted);font-style:normal}.extra-unit-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.extra-unit-option{display:flex!important;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--panel-2);cursor:pointer}.extra-unit-option input{margin-top:3px}.extra-unit-option span{display:flex;flex-direction:column;gap:3px}.extra-unit-option small{color:var(--muted);font-size:11px}.booking-advanced-grid{margin-top:12px}.release-rules-box{border:1px solid var(--line);border-radius:14px;padding:13px;background:var(--panel-2);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.release-rules-box>.field-title,.release-rules-box>.field-help{grid-column:1/-1}.release-rules-box label{display:flex!important;flex-direction:row!important;gap:8px;align-items:center;font-size:12px}.booking-requirements-settings{gap:11px}.booking-policy-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.booking-policy-grid label{display:grid!important;gap:6px;align-items:stretch;font-size:11px}.booking-policy-grid label>span{color:var(--muted);font-size:10px;font-weight:800}.booking-policy-grid em{font-style:normal;font-weight:500}.booking-policy-grid textarea{min-height:150px;resize:vertical}.release-gate{border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:14px}.release-gate.ready{border-color:rgba(45,164,78,.45);background:rgba(45,164,78,.08)}.release-gate.blocked{border-color:rgba(219,151,36,.45);background:rgba(219,151,36,.07)}.release-gate-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.release-gate-head span{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--muted)}.release-gate-head b{display:block;margin-top:3px}.release-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.release-checks>div{display:flex;gap:9px;align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:9px}.release-checks>div>span{font-weight:900}.release-checks b,.release-checks small{display:block}.release-checks small{font-size:10px;color:var(--muted);margin-top:2px}.release-checks .ok>span{color:#37a75a}.release-checks .missing>span{color:#d6972a}.release-checks .optional{opacity:.65}.release-warning{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid rgba(219,151,36,.45);background:rgba(219,151,36,.08);border-radius:12px;padding:10px 12px;margin-bottom:12px}.release-warning span{color:var(--muted);font-size:12px;flex:1}.workspace-box{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--panel-2);display:grid;gap:10px}.workspace-box>div:first-child{display:flex;flex-direction:column;gap:3px}.workspace-box small{color:var(--muted);text-transform:uppercase;font-size:9px;letter-spacing:.1em}.workspace-invite-controls,.workspace-join-controls{display:grid;grid-template-columns:minmax(120px,.35fr) 1fr;gap:8px}.workspace-join-controls{grid-template-columns:1fr auto}.prod-status-row b.ok{color:#37a75a}.prod-status-row b.warn{color:#d6972a}
@media(max-width:760px){.extra-unit-picker,.release-checks,.release-rules-box,.booking-policy-grid{grid-template-columns:1fr}.workspace-invite-controls,.workspace-join-controls{grid-template-columns:1fr}.workspace-join-controls .btn{width:100%}}
/* v3.3 customer portal admin */
.online-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:16px;margin-bottom:16px}.online-setup-card,.online-detail-card{min-height:260px}.portal-settings-grid{margin-top:12px}.portal-methods{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:4px 0}.portal-methods .field-title{width:100%;font-size:12px;font-weight:700}.portal-methods label{display:flex;align-items:center;gap:6px;font-size:12px}.copy-field{display:flex;gap:8px}.copy-field input{flex:1;min-width:0}.portal-publish-meta{font-size:11px;color:var(--muted,#6c746f);padding-top:4px}.online-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.online-detail-grid>div{border:1px solid var(--line,#e2e8e4);border-radius:10px;padding:9px}.online-detail-grid small{display:block;color:var(--muted,#6c746f);font-size:10px;text-transform:uppercase}.online-detail-grid b{display:block;margin-top:2px;word-break:break-word}.online-docs{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.online-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.online-status-note{margin-top:10px;padding:9px 11px;border-radius:10px;background:var(--soft,#f4f7f5);font-size:12px}.online-requests-panel .panel-head{padding:16px 18px 0}.online-requests-panel .table-wrap{overflow-x:auto}.online-requests-panel table{min-width:1180px;table-layout:fixed}.online-requests-panel th,.online-requests-panel td{padding:16px 14px;vertical-align:middle}.online-requests-panel th{font-size:9px;letter-spacing:.06em;white-space:nowrap}.online-requests-panel td{line-height:1.35}.online-requests-panel th:nth-child(1),.online-requests-panel td:nth-child(1){width:18%}.online-requests-panel th:nth-child(2),.online-requests-panel td:nth-child(2){width:17%}.online-requests-panel th:nth-child(3),.online-requests-panel td:nth-child(3){width:17%}.online-requests-panel th:nth-child(4),.online-requests-panel td:nth-child(4){width:15%}.online-requests-panel th:nth-child(5),.online-requests-panel td:nth-child(5){width:12%}.online-requests-panel th:nth-child(6),.online-requests-panel td:nth-child(6){width:11%}.online-requests-panel th:nth-child(7),.online-requests-panel td:nth-child(7){width:7%}.online-requests-panel th:nth-child(8),.online-requests-panel td:nth-child(8){width:7%}.online-cell-stack{display:grid;gap:5px;min-width:0}.online-cell-stack>b,.online-cell-stack>span{display:block;min-width:0;overflow-wrap:anywhere}.online-cell-stack small{display:block;margin:0;color:var(--muted);font-size:9px;line-height:1.35;overflow-wrap:anywhere}.online-col-request b,.online-col-customer b,.online-col-money b{font-size:11px}.online-col-schedule span{font-weight:700}.online-doc-stack{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.online-col-status .badge{justify-self:start}.online-col-action{text-align:right}.online-col-action .mini-btn{min-width:64px}.doc-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--green) 10%,var(--panel));color:var(--green);border:1px solid color-mix(in srgb,var(--green) 22%,var(--line));font-size:10px;font-weight:700;white-space:nowrap}.doc-chip.missing{background:var(--panel-2);color:var(--muted);border-color:var(--line)}@media(max-width:980px){.online-grid{grid-template-columns:1fr}}@media(max-width:650px){.online-toolbar{align-items:stretch}.online-toolbar .filter-group{display:grid;grid-template-columns:1fr 1fr}.online-toolbar .filter-group .btn:last-child{grid-column:span 2}.online-detail-grid{grid-template-columns:1fr}.copy-field{display:grid;grid-template-columns:1fr auto}}

/* v3.4 complete rental lifecycle */
.v34-condition select{width:100%;margin-top:6px}
.v34-closeout-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line,rgba(127,127,127,.18))}
.v34-closeout-actions .btn[disabled]{opacity:.45;cursor:not-allowed}
.v34-cancel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.v34-cancel-grid>div{padding:10px;border:1px solid var(--line,rgba(127,127,127,.18));border-radius:10px;background:var(--panel-2,rgba(127,127,127,.05))}
.v34-cancel-grid small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.65}
.v34-cancel-grid b{display:block;margin-top:4px}
.badge.returned{background:rgba(14,116,144,.12);color:#0e7490;border-color:rgba(14,116,144,.25)}
@media(max-width:640px){.v34-cancel-grid{grid-template-columns:1fr}.v34-closeout-actions{display:grid;grid-template-columns:1fr}.v34-closeout-actions .btn{width:100%}}
.v34-lifecycle{margin:14px 0;padding:12px;border:1px solid var(--line,rgba(127,127,127,.18));border-radius:12px;background:var(--panel-2,rgba(127,127,127,.04))}.v34-lifecycle-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.v34-lifecycle-head span{font-size:10px;font-weight:800;letter-spacing:.08em;opacity:.65}.v34-lifecycle-events{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.v34-lifecycle-events>div{min-width:150px;flex:1;padding:8px;border-radius:9px;background:rgba(127,127,127,.06)}.v34-lifecycle-events small{display:block;font-size:9px;text-transform:uppercase;opacity:.6}.v34-lifecycle-events b{display:block;margin-top:3px;font-size:11px}

/* v3.4.2 client-facing inclusions */
.unit-inclusion-list{display:flex;gap:7px;flex-wrap:wrap}.unit-inclusion-list span{display:inline-flex;padding:7px 9px;border-radius:999px;background:#eef7f0;color:#28513a;font-size:11px;font-weight:700;border:1px solid #d9eadd}.unit-inclusion-list p{margin:0;color:var(--muted);font-size:12px}

/* v3.4.3 add-ons manager + booking add-on picker */
.addon-manager-list{display:grid;gap:8px;margin-bottom:16px;max-height:260px;overflow:auto}.addon-manager-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:11px 12px;background:var(--panel-2)}.addon-manager-item b{display:block;font-size:12px}.addon-manager-item small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.addon-manager-actions{display:flex;gap:6px}.addon-manager-actions button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:9px;padding:7px 9px;font-size:9px;font-weight:800}.addon-manager-actions button.danger{color:var(--red)}.addon-form{border-top:1px solid var(--line);padding-top:15px}.booking-addon-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.booking-addon-option{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--panel-2)}.booking-addon-option b{display:block;font-size:11px}.booking-addon-option small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.booking-addon-option input{width:100%;min-width:0}.booking-addon-option.unavailable{opacity:.55}.booking-addon-empty{grid-column:1/-1;border:1px dashed var(--line);border-radius:12px;padding:11px;color:var(--muted);font-size:10px}.unit-head-actions{flex-wrap:wrap}
@media(max-width:760px){.booking-addon-picker{grid-template-columns:1fr}.addon-manager-item{grid-template-columns:1fr}.addon-manager-actions{justify-content:flex-start}}

/* v3.5.1 Operations Reports */
.reports-dashboard{--report-green:#006d2c;--report-emerald:#119447;--report-lime:#85c95c;--report-mint:#dff3e4;--report-warm:#b9782c;display:grid;gap:16px}
.report-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:20px 22px;background:linear-gradient(135deg,rgba(0,109,44,.08),rgba(133,201,92,.08) 55%,rgba(255,255,255,.9));border-color:rgba(0,109,44,.16)}
.report-heading h2{margin:.15rem 0 .35rem;font-size:1.55rem}.report-heading p{margin:0;color:var(--muted,#647168);max-width:700px}.report-actions{display:flex;gap:10px;flex-wrap:wrap}
.report-controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:0;padding:12px 14px}
.report-period-tabs,.report-view-toggle{display:flex;align-items:center;gap:6px;padding:4px;border:1px solid var(--line,#dfe6e1);background:var(--surface-soft,#f6f8f6);border-radius:14px}
.report-period-tabs button,.report-view-toggle button{border:0;background:transparent;color:var(--muted,#66756c);padding:9px 13px;border-radius:10px;font-weight:800;cursor:pointer;transition:.16s ease}
.report-period-tabs button.active,.report-view-toggle button.active{background:linear-gradient(135deg,var(--report-green),var(--report-emerald));color:#fff;box-shadow:0 8px 18px rgba(0,109,44,.18)}
.report-date-nav{display:flex;justify-content:center;align-items:center;gap:8px}.report-nav-btn{width:38px;height:38px;font-size:1.45rem}.report-period-label{min-width:210px;border:0;background:transparent;color:inherit;text-align:center;cursor:pointer;padding:5px 12px}.report-period-label span{display:block;font-weight:900;font-size:1rem}.report-period-label small{display:block;color:var(--muted,#6a786f);margin-top:2px;font-size:.72rem}
.report-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.report-kpi{position:relative;overflow:hidden;min-height:126px;border:1px solid var(--line,#dfe6e1);border-radius:18px;background:var(--surface,#fff);padding:16px 17px;box-shadow:0 8px 24px rgba(17,50,30,.05)}.report-kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--report-green),var(--report-lime))}.report-kpi small{display:block;color:var(--muted,#68756e);font-weight:800;font-size:.77rem;letter-spacing:.03em;text-transform:uppercase}.report-kpi strong{display:block;font-size:1.55rem;line-height:1.08;margin:10px 0 11px;letter-spacing:-.03em}.report-kpi-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.report-kpi-foot span{font-size:.76rem;color:var(--muted,#68756e);line-height:1.25}.report-kpi-foot b{font-size:.76rem;white-space:nowrap;padding:4px 7px;border-radius:999px}.report-kpi-foot b.up{color:#08733a;background:rgba(20,146,72,.09)}.report-kpi-foot b.down{color:#9d4920;background:rgba(185,120,44,.10)}
.report-kpi.hero-green,.report-kpi.hero-mint,.report-kpi.hero-lime,.report-kpi.hero-warm{border:0;color:#fff}.report-kpi.hero-green{background:linear-gradient(135deg,#005e26,#0d8c43 62%,#49b867)}.report-kpi.hero-mint{background:linear-gradient(135deg,#176e43,#2b9b5f 56%,#70c77b)}.report-kpi.hero-lime{background:linear-gradient(135deg,#1b733c,#4da756 58%,#9acb5a)}.report-kpi.hero-warm{background:linear-gradient(135deg,#7a5c24,#a4742c 58%,#c99c52)}.report-kpi.hero-green:before,.report-kpi.hero-mint:before,.report-kpi.hero-lime:before,.report-kpi.hero-warm:before{display:none}.report-kpi.hero-green small,.report-kpi.hero-mint small,.report-kpi.hero-lime small,.report-kpi.hero-warm small,.report-kpi.hero-green .report-kpi-foot span,.report-kpi.hero-mint .report-kpi-foot span,.report-kpi.hero-lime .report-kpi-foot span,.report-kpi.hero-warm .report-kpi-foot span{color:rgba(255,255,255,.78)}.report-kpi.hero-green .report-kpi-foot b,.report-kpi.hero-mint .report-kpi-foot b,.report-kpi.hero-lime .report-kpi-foot b,.report-kpi.hero-warm .report-kpi-foot b{color:#fff;background:rgba(255,255,255,.14)}
.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.report-panel{margin:0;min-width:0}.report-panel.wide{grid-column:1/-1}.report-section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.report-section-head small{color:var(--report-green);font-weight:900;letter-spacing:.13em;font-size:.73rem}.report-section-head h3{margin:.25rem 0 0;font-size:1.2rem}.report-section-head p{margin:0;color:var(--muted,#68756e);font-size:.82rem;text-align:right;max-width:360px}
.report-chart-stage{position:relative;transform-origin:50% 70%;transition:transform .28s ease,filter .28s ease;padding:2px 0}.report-line-chart{display:block;width:100%;height:auto;overflow:visible}.report-grid-line{stroke:rgba(94,117,102,.16);stroke-width:1}.report-zero-line{stroke:rgba(80,100,87,.35);stroke-width:1.5}.report-axis-text{font-size:12px;fill:#718077}.report-line{fill:none;stroke-width:4.2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.report-line.revenue{stroke:url(#revStroke)}.report-line.expense{stroke:#b9782c}.report-line.net{stroke:url(#netStroke)}.report-line-depth{display:none;fill:none;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;opacity:.18;transform:translate(3px,6px);vector-effect:non-scaling-stroke}.revenue-depth{stroke:#00491f}.expense-depth{stroke:#714414}.net-depth{stroke:#235e32}.reports-dashboard.is-3d .report-chart-stage{transform:perspective(1150px) rotateX(8deg) rotateY(-2.5deg) translateY(-2px);filter:drop-shadow(0 18px 14px rgba(12,45,24,.11))}.reports-dashboard.is-3d .report-line-depth{display:block}.reports-dashboard.is-3d .report-trend-panel{overflow:hidden;background:linear-gradient(145deg,var(--surface,#fff),rgba(223,243,228,.35))}.report-legend{display:flex;gap:18px;align-items:center;justify-content:flex-end;margin-top:2px;color:var(--muted,#68756e);font-size:.78rem}.report-legend span{display:flex;align-items:center;gap:6px}.report-legend i{width:18px;height:4px;border-radius:999px}.report-legend .rev{background:linear-gradient(90deg,#006d2c,#26a65b)}.report-legend .exp{background:#b9782c}.report-legend .net{background:linear-gradient(90deg,#2a9f54,#8fcf55)}.report-depth-note{text-align:right;color:var(--muted,#68756e);font-size:.72rem;margin-top:5px}
.report-bar-list{display:grid;gap:13px}.report-bar-row{display:grid;gap:6px}.report-bar-label{display:flex;justify-content:space-between;gap:12px;font-size:.83rem}.report-bar-label span{font-weight:700}.report-bar-label b{font-size:.8rem}.report-bar-track{height:9px;background:var(--surface-soft,#eef3ef);border-radius:999px;overflow:hidden}.report-bar-track i{display:block;height:100%;border-radius:inherit}.report-bar-track i.green{background:linear-gradient(90deg,var(--report-green),var(--report-emerald),var(--report-lime))}.report-bar-track i.warm{background:linear-gradient(90deg,#8e6027,#bd8738,#d6b369)}
.report-equipment-list{display:grid;gap:12px}.report-equipment-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:11px;align-items:center}.report-equipment-row .rank{width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,var(--report-mint),#f5fbf6);display:grid;place-items:center;font-weight:900;color:var(--report-green)}.equipment-copy{min-width:0}.equipment-copy b,.equipment-copy small{display:block}.equipment-copy b{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.equipment-copy small{font-size:.74rem;color:var(--muted,#68756e);margin:2px 0 7px}.report-equipment-row>strong{font-size:.85rem}
.report-funnel{display:grid;gap:12px}.funnel-row{display:grid;grid-template-columns:96px minmax(0,1fr) 36px;align-items:center;gap:10px;font-size:.82rem}.funnel-row span{font-weight:700}.funnel-track{height:13px;background:var(--surface-soft,#eef3ef);border-radius:999px;overflow:hidden}.funnel-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#006d2c,#3eae62 72%,#a5cf59)}.funnel-row b{text-align:right}
.roi-report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.roi-report-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 62px;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line,#dfe6e1);border-radius:14px;background:linear-gradient(135deg,rgba(223,243,228,.28),transparent)}.roi-report-row b,.roi-report-row small{display:block}.roi-report-row small{color:var(--muted,#68756e);font-size:.74rem;margin-top:3px}.roi-meter{height:9px;border-radius:999px;background:var(--surface-soft,#eaf1eb);overflow:hidden}.roi-meter i{display:block;height:100%;background:linear-gradient(90deg,#006d2c,#4fb25f,#9bcd59);border-radius:inherit}.roi-report-row>strong{text-align:right;font-size:.85rem}
.report-insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-insight{display:grid;grid-template-columns:8px minmax(0,1fr);gap:11px;padding:13px 14px;border:1px solid var(--line,#dfe6e1);border-radius:14px;background:var(--surface,#fff)}.report-insight>span{border-radius:999px;background:#89a493}.report-insight.good>span{background:linear-gradient(180deg,#0b8f47,#80ca5b)}.report-insight.warn>span{background:linear-gradient(180deg,#9c6327,#d0a04a)}.report-insight b{font-size:.88rem}.report-insight p{margin:4px 0 0;color:var(--muted,#68756e);font-size:.78rem;line-height:1.38}
.finance-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.finance-strip>div{padding:14px 15px;border-radius:15px;border:1px solid rgba(0,109,44,.10);background:linear-gradient(135deg,rgba(223,243,228,.55),rgba(255,255,255,.45))}.finance-strip small,.finance-strip b{display:block}.finance-strip small{color:var(--muted,#68756e);font-size:.74rem}.finance-strip b{font-size:1.06rem;margin-top:5px}.report-footnote{margin:11px 0 0;color:var(--muted,#68756e);font-size:.76rem}
.report-table-wrap{max-height:360px;overflow:auto;border:1px solid var(--line,#dfe6e1);border-radius:14px}.report-table{width:100%;border-collapse:collapse;font-size:.8rem}.report-table th{position:sticky;top:0;background:var(--surface,#fff);z-index:1;color:var(--muted,#68756e);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.report-table th,.report-table td{padding:10px 12px;border-bottom:1px solid var(--line,#e6ece7)}.report-table tr:last-child td{border-bottom:0}.report-table .num{text-align:right}.report-table td.neg{color:#9d4920;font-weight:800}.report-empty{padding:28px 12px;text-align:center;color:var(--muted,#68756e);border:1px dashed var(--line,#dfe6e1);border-radius:14px}
[data-theme="dark"] .report-toolbar{background:linear-gradient(135deg,rgba(0,109,44,.26),rgba(62,174,98,.11),rgba(20,24,21,.78))}[data-theme="dark"] .report-axis-text{fill:#9db0a4}[data-theme="dark"] .report-kpi,[data-theme="dark"] .report-insight{box-shadow:none}[data-theme="dark"] .finance-strip>div{background:linear-gradient(135deg,rgba(0,109,44,.16),rgba(255,255,255,.02))}
@media(max-width:1180px){.report-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-controls{grid-template-columns:1fr auto}.report-date-nav{grid-column:1/-1;grid-row:2}.roi-report-list{grid-template-columns:1fr}}
@media(max-width:820px){.report-toolbar,.report-section-head{flex-direction:column;align-items:stretch}.report-section-head p{text-align:left}.report-actions{width:100%}.report-actions .btn{flex:1}.report-controls{grid-template-columns:1fr}.report-period-tabs,.report-view-toggle{justify-content:center}.report-date-nav{grid-column:auto;grid-row:auto}.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid{grid-template-columns:1fr}.report-panel.wide{grid-column:auto}.finance-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.report-insights{grid-template-columns:1fr}}
@media(max-width:520px){.report-kpi-grid{grid-template-columns:1fr}.finance-strip{grid-template-columns:1fr}.report-period-tabs button{flex:1;padding:9px 8px}.report-view-toggle button{flex:1}.report-period-label{min-width:0;flex:1}.roi-report-row{grid-template-columns:1fr}.roi-report-row>strong{text-align:left}.report-equipment-row{grid-template-columns:28px minmax(0,1fr)}.report-equipment-row>strong{grid-column:2}.funnel-row{grid-template-columns:82px minmax(0,1fr) 30px}}

/* v3.5.1.4 Reports UI Kit final polish */
.reports-dashboard{
  --report-card:#ffffff;--report-card-2:#f8faf9;--report-card-text:#17231c;--report-card-muted:#6d7a72;
  --report-card-border:rgba(17,52,30,.10);--report-card-shadow:0 10px 28px rgba(10,46,24,.055);
  --report-track:#edf2ee;--report-scroll-track:#eef2ef;--report-scroll-thumb:#b6c2ba;
}
[data-theme="dark"] .reports-dashboard{
  --report-card:#242a27;--report-card-2:#202622;--report-card-text:#f1f5f2;--report-card-muted:#a4b0a8;
  --report-card-border:rgba(255,255,255,.075);--report-card-shadow:none;--report-track:#303833;
  --report-scroll-track:#1b211e;--report-scroll-thumb:#59655e;
}
.report-view-toggle,.report-depth-note{display:none!important}
.reports-dashboard .report-toolbar,.reports-dashboard .report-controls,.reports-dashboard .report-panel,.reports-dashboard .report-insight,.reports-dashboard .finance-strip>div,.reports-dashboard .report-kpi{background:var(--report-card)!important;color:var(--report-card-text)!important;border:1px solid var(--report-card-border)!important;box-shadow:var(--report-card-shadow)!important}
.reports-dashboard .report-toolbar,.reports-dashboard .report-controls,.reports-dashboard .report-panel{border-radius:18px!important}
.report-kpi-grid{gap:12px}.report-kpi{min-height:118px!important;padding:15px 16px 14px!important;border-radius:18px!important;overflow:hidden!important;position:relative!important}
.report-kpi:before{content:""!important;position:absolute!important;left:16px!important;right:16px!important;top:0!important;width:auto!important;height:3px!important;border-radius:0 0 999px 999px!important;background:linear-gradient(90deg,#08783a,#6cc36c)!important;display:block!important}
.report-kpi.hero-green,.report-kpi.hero-mint,.report-kpi.hero-lime,.report-kpi.hero-warm{background:var(--report-card)!important;color:var(--report-card-text)!important;border:1px solid var(--report-card-border)!important}
.report-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.report-kpi small{color:var(--report-card-muted)!important;font-size:.73rem!important;letter-spacing:.07em!important}.report-kpi strong{color:var(--report-card-text)!important;font-size:1.52rem!important;margin:10px 0 7px!important}.report-kpi-note{color:var(--report-card-muted);font-size:.75rem;line-height:1.28;min-height:19px}.report-delta{font-size:.72rem;padding:4px 7px;border-radius:999px;background:rgba(0,109,44,.075);color:#08783a;white-space:nowrap}[data-theme="dark"] .report-delta{background:rgba(132,201,103,.10);color:#cbe7bf}.report-delta.down{color:#a45d2c;background:rgba(185,120,44,.09)}[data-theme="dark"] .report-delta.down{color:#e0b17a;background:rgba(185,120,44,.12)}
.report-kpi-meter,.report-kpi-accent{height:5px;border-radius:999px;background:var(--report-track);overflow:hidden;margin-top:11px}.report-kpi-meter i{display:block;height:100%;background:linear-gradient(90deg,#08783a,#70c669);border-radius:inherit}.report-kpi-accent:after{content:"";display:block;width:38%;height:100%;background:linear-gradient(90deg,#08783a,#70c669);border-radius:inherit}
.report-section-head h3,.report-heading h2,.report-period-label span,.report-insight b,.finance-strip b,.equipment-copy b,.report-table td{color:var(--report-card-text)!important}.report-section-head p,.report-heading p,.report-period-label small,.report-footnote,.report-insight p,.finance-strip small,.equipment-copy small,.report-axis-text,.report-legend,.report-table th{color:var(--report-card-muted)!important;fill:var(--report-card-muted)!important}
.report-insight{grid-template-columns:6px minmax(0,1fr)!important;padding:13px 14px!important;border-radius:14px!important}.report-insight>span,.report-insight.good>span,.report-insight.warn>span{background:linear-gradient(180deg,#08783a,#70c669)!important;border-radius:999px}.finance-strip>div{border-radius:14px!important;background:var(--report-card-2)!important}.report-equipment-row .rank{background:linear-gradient(135deg,#08783a,#70c669)!important;color:#fff!important}.report-bar-track,.funnel-track,.roi-meter{background:var(--report-track)!important}
.report-trend-panel{overflow:hidden!important}.report-chart-stage{position:relative!important;padding:8px 0 2px!important;transform:none!important;filter:none!important}.reports-dashboard.is-3d .report-chart-stage{transform:none!important;filter:none!important}.report-line{stroke-width:3.7!important}.report-line-depth{display:block!important;stroke-width:7px!important;opacity:.045!important;transform:translate(2px,3px)!important}.report-grid-line{stroke:rgba(101,119,107,.14)!important}.report-zero-line{stroke:rgba(8,120,58,.24)!important;stroke-width:1.2!important;stroke-dasharray:4 6}.report-area.revenue-area{fill:url(#revAreaGradient)!important}.report-area.net-area{fill:url(#netAreaGradient)!important}.report-point{cursor:crosshair;stroke:#fff;stroke-width:1.8;vector-effect:non-scaling-stroke;transition:r .12s ease,filter .12s ease}.report-point.revenue{fill:#1fa257}.report-point.expense{fill:#be8337}.report-point.net{fill:#82c95d}.report-point:hover,.report-point:focus{r:5.5;filter:drop-shadow(0 2px 4px rgba(0,0,0,.18));outline:none}[data-theme="dark"] .report-point{stroke:#1d2521}.report-chart-tooltip{position:absolute;z-index:6;min-width:145px;padding:9px 11px;border-radius:11px;background:#17251c;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.18);font-size:.74rem;pointer-events:none}.report-chart-tooltip b,.report-chart-tooltip span{display:block}.report-chart-tooltip span{opacity:.82;margin-top:2px}[data-theme="dark"] .report-chart-tooltip{background:#f4f7f5;color:#18231d}.report-legend{margin-top:8px!important}.report-legend i{width:20px!important;height:4px!important}
.report-table-wrap{max-height:330px!important;scrollbar-width:thin;scrollbar-color:var(--report-scroll-thumb) var(--report-scroll-track)}.report-table-wrap::-webkit-scrollbar,.table-wrap::-webkit-scrollbar,.global-results::-webkit-scrollbar,.crm-nav::-webkit-scrollbar{width:10px;height:10px}.report-table-wrap::-webkit-scrollbar-track,.table-wrap::-webkit-scrollbar-track,.global-results::-webkit-scrollbar-track,.crm-nav::-webkit-scrollbar-track{background:var(--report-scroll-track);border-radius:999px}.report-table-wrap::-webkit-scrollbar-thumb,.table-wrap::-webkit-scrollbar-thumb,.global-results::-webkit-scrollbar-thumb,.crm-nav::-webkit-scrollbar-thumb{background:var(--report-scroll-thumb);border:2px solid var(--report-scroll-track);border-radius:999px}.report-table th{background:var(--report-card)!important}
@media(max-width:1180px){.report-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.report-controls{grid-template-columns:auto 1fr!important}.report-date-nav{grid-column:auto!important;grid-row:auto!important}.report-grid{gap:12px!important}.roi-report-list{grid-template-columns:1fr!important}}
@media(max-width:900px){.report-toolbar{align-items:stretch!important}.report-actions{width:100%}.report-actions .btn{flex:1}.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.report-grid{grid-template-columns:1fr!important}.report-panel.wide{grid-column:auto!important}.finance-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.report-insights{grid-template-columns:1fr!important}.report-controls{grid-template-columns:1fr!important}.report-date-nav{justify-content:space-between!important}.report-period-tabs{justify-content:center!important}}
@media(max-width:560px){.report-kpi-grid{grid-template-columns:1fr!important}.report-kpi{min-height:104px!important}.finance-strip{grid-template-columns:1fr!important}.report-toolbar{padding:16px!important}.report-controls{padding:10px!important}.report-period-tabs{width:100%}.report-period-tabs button{flex:1;padding:9px 7px!important}.report-period-label{min-width:0!important;flex:1}.report-chart-stage{margin:0 -6px}.report-legend{justify-content:center!important;flex-wrap:wrap}.report-table-wrap{max-height:290px!important}.report-section-head{display:block!important}.report-section-head p{text-align:left!important;margin-top:4px!important}.roi-report-row{grid-template-columns:1fr!important}.roi-report-row>strong{text-align:left!important}.report-equipment-row{grid-template-columns:28px minmax(0,1fr)!important}.report-equipment-row>strong{grid-column:2!important}.funnel-row{grid-template-columns:78px minmax(0,1fr) 28px!important}}


/* retained complete-package reports dark-mode + chart hotfix */
.report-kpi:before{display:none!important;content:none!important}
.report-kpi{padding-top:16px!important}
.reports-dashboard .report-period-tabs{background:#fff!important;border-color:rgba(14,47,26,.10)!important}
.reports-dashboard .report-period-tabs button:not(.active){color:#718078!important}
[data-theme="dark"] .reports-dashboard .report-period-tabs{background:#242a27!important;border-color:rgba(255,255,255,.08)!important}
[data-theme="dark"] .reports-dashboard .report-period-tabs button:not(.active){color:#aab5ae!important}
[data-theme="dark"] .reports-dashboard .report-period-label,[data-theme="dark"] .reports-dashboard .report-nav-btn{color:#eef4ef!important}
.reports-dashboard .roi-report-row{background:#fff!important;border-color:rgba(14,47,26,.10)!important;box-shadow:none!important}
[data-theme="dark"] .reports-dashboard .roi-report-row{background:#242a27!important;border-color:rgba(255,255,255,.075)!important;color:#eef4ef!important}
[data-theme="dark"] .reports-dashboard .roi-report-row b,[data-theme="dark"] .reports-dashboard .roi-report-row strong{color:#eef4ef!important}
[data-theme="dark"] .reports-dashboard .roi-report-row small{color:#a4b0a8!important}
[data-theme="dark"] .reports-dashboard .report-table td,[data-theme="dark"] .reports-dashboard .report-table th{background:#242a27!important}
[data-theme="dark"] .reports-dashboard .report-empty{background:#242a27!important;color:#a4b0a8!important;border-color:rgba(255,255,255,.075)!important}
.report-line{stroke-width:2.35!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.report-line-depth{stroke-width:4.2px!important;opacity:.025!important;transform:translate(1px,1.5px)!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.report-zero-line{stroke-width:.9!important;stroke-dasharray:3 7!important}
.report-point{r:2.7;stroke-width:1.35!important;transition:r .12s ease,filter .12s ease}
.report-point:hover,.report-point:focus{r:4.4!important}
.report-area.revenue-area{opacity:.10!important}.report-area.net-area{opacity:.065!important}
.reports-dashboard.is-3d .report-chart-stage{transform:perspective(2200px) rotateX(.55deg) rotateY(-.10deg)!important;filter:drop-shadow(0 5px 8px rgba(12,45,24,.045))!important}
[data-theme="dark"] .report-chart-tooltip{background:#2a312d!important;color:#f3f6f4!important;border:1px solid rgba(255,255,255,.08)}
.report-table-wrap,.table-wrap,.global-results{scrollbar-width:thin;scrollbar-color:#b7c3bb #edf2ee}
.report-table-wrap::-webkit-scrollbar-track,.table-wrap::-webkit-scrollbar-track,.global-results::-webkit-scrollbar-track{background:#edf2ee!important}
.report-table-wrap::-webkit-scrollbar-thumb,.table-wrap::-webkit-scrollbar-thumb,.global-results::-webkit-scrollbar-thumb{background:#b7c3bb!important;border-color:#edf2ee!important}
[data-theme="dark"] .report-table-wrap,[data-theme="dark"] .table-wrap,[data-theme="dark"] .global-results{scrollbar-color:#59655e #1b211e}
[data-theme="dark"] .report-table-wrap::-webkit-scrollbar-track,[data-theme="dark"] .table-wrap::-webkit-scrollbar-track,[data-theme="dark"] .global-results::-webkit-scrollbar-track{background:#1b211e!important}
[data-theme="dark"] .report-table-wrap::-webkit-scrollbar-thumb,[data-theme="dark"] .table-wrap::-webkit-scrollbar-thumb,[data-theme="dark"] .global-results::-webkit-scrollbar-thumb{background:#59655e!important;border-color:#1b211e!important}

/* v3.6.1 — action center + reminder workflow */
.reminder-center-panel{margin:16px 0}.reminder-center-head{align-items:center}.reminder-center-head>div:first-child{min-width:0}.reminder-subcopy{margin:5px 0 0;color:var(--muted);font-size:11px;max-width:720px}.reminder-head-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.reminder-count-chip{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;background:var(--orange-soft);color:var(--orange);font-size:10px;font-weight:900;white-space:nowrap}.reminder-center{display:grid;gap:9px}.reminder-card{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:12px 13px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.reminder-card.urgent{box-shadow:inset 3px 0 0 var(--red)}.reminder-card.warning{box-shadow:inset 3px 0 0 var(--yellow)}.reminder-card.info{box-shadow:inset 3px 0 0 var(--blue)}.reminder-card.done{opacity:.68}.reminder-main{min-width:0}.reminder-label-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.reminder-label{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--orange)}.reminder-sent{font-size:8px;font-weight:900;color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--panel));border:1px solid color-mix(in srgb,var(--green) 22%,var(--line));border-radius:999px;padding:3px 7px}.reminder-main b{display:block;font-size:12px;margin:4px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reminder-main small{display:block;color:var(--muted);font-size:10px;line-height:1.45}.reminder-preview{margin-top:7px!important;color:var(--text)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reminder-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.reminder-actions .mini-btn{white-space:nowrap}.reminder-empty{border:1px dashed var(--line);border-radius:13px;padding:15px;text-align:center;color:var(--muted);font-size:11px}.reminder-empty b{display:block;color:var(--text);margin-bottom:3px}.attention-card.release{box-shadow:inset 3px 0 0 var(--orange)}


/* v3.6.1 — mobile reminder compact rules retained after CSS cleanup */
@media(max-width:760px){
  .reminder-center-panel{margin:12px 0;padding:15px}
  .reminder-center-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 10px;margin-bottom:10px}
  .reminder-center-head>div:first-child{min-width:0}
  .reminder-center-head h3{margin-top:3px;font-size:16px;line-height:1.16}
  .reminder-subcopy{max-width:none;margin-top:4px;font-size:10px;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  .reminder-head-actions{width:auto;display:grid;justify-items:end;align-items:start;gap:2px;flex:0 0 auto}
  .reminder-count-chip{min-height:24px;padding:0 8px;font-size:9px}
  .reminder-head-actions .text-btn{padding:2px 3px;font-size:9px;line-height:1.2}
  .reminder-center{gap:7px}
  .reminder-card{grid-template-columns:1fr;gap:8px;padding:10px 11px;border-radius:12px}
  .reminder-label-line{gap:6px}
  .reminder-label{font-size:8px}
  .reminder-main b{margin:3px 0 1px;font-size:11.5px}
  .reminder-main small{font-size:9.5px;line-height:1.35}
  .reminder-preview{margin-top:5px!important;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .reminder-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;justify-content:stretch}
  .reminder-actions .mini-btn{width:100%;min-width:0;padding:7px 5px;font-size:9px;line-height:1.15;white-space:nowrap}
  .reminder-empty{padding:12px;font-size:10px}
}
@media(max-width:430px){
  .reminder-center-panel{padding:13px}
  .reminder-center-head{grid-template-columns:minmax(0,1fr) auto;gap:6px 8px}
  .reminder-center-head h3{font-size:15px}
  .reminder-subcopy{-webkit-line-clamp:1;font-size:9px}
  .reminder-count-chip{min-height:22px;padding:0 7px;font-size:8.5px}
  .reminder-head-actions .text-btn{font-size:8.5px}
  .reminder-card{padding:9px 10px}
  .reminder-main b{font-size:11px}
  .reminder-main small{font-size:9px}
  .reminder-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
  .reminder-actions .mini-btn{padding:7px 3px;font-size:8.5px}
}

@media(max-width:760px){.availability-share-strip{grid-template-columns:40px minmax(0,1fr);padding:13px}.availability-share-icon{width:40px;height:40px;border-radius:12px}.availability-download-btn{grid-column:1/-1;width:100%;min-width:0}.availability-share-copy small{font-size:9px}}

/* v3.7.0 — inquiry, availability, holds, packages and client-share operations */
.growth-ops-dashboard{margin:0 0 16px}.growth-ops-dashboard .panel-head{align-items:center}.growth-ops-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}.growth-ops-cards button{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:14px;padding:13px 12px;text-align:left;min-width:0}.growth-ops-cards button:hover{border-color:color-mix(in srgb,var(--orange) 35%,var(--line));transform:translateY(-1px)}.growth-ops-cards small,.growth-ops-cards span{display:block;color:var(--muted)}.growth-ops-cards small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.growth-ops-cards strong{display:block;font-size:22px;margin:5px 0 2px}.growth-ops-cards span{font-size:9px;line-height:1.35}.growth-return-reminders{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.growth-reminder-head{display:flex;justify-content:space-between;margin-bottom:8px}.growth-reminder-head b{display:block;margin-top:3px}.growth-reminder-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:10px 12px;margin-top:7px}.growth-reminder-row b,.growth-reminder-row small{display:block}.growth-reminder-row small{color:var(--muted);font-size:9px;margin-top:2px}
.quick-inquiry-panel{margin-bottom:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--orange-soft) 65%,var(--panel)),var(--panel))}.quick-inquiry-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.quick-inquiry-head h3{margin:3px 0 4px}.quick-inquiry-head p{margin:0;color:var(--muted);font-size:11px}.quick-inquiry-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:10px}.quick-inquiry-grid label{display:grid;gap:5px}.quick-inquiry-grid label>span{font-size:9px;color:var(--muted);font-weight:800}.quick-inquiry-grid label em{font-style:normal;font-weight:500;opacity:.75}.quick-inquiry-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.inquiry-result{margin-top:12px;border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:12px;color:var(--muted);font-size:11px}.inquiry-result-good,.inquiry-result-bad{display:grid;gap:3px}.inquiry-result-good>b{color:var(--green)}.inquiry-result-bad>b{color:var(--red)}.inquiry-result small{color:var(--muted)}
.availability-share-strip{grid-template-columns:46px minmax(0,1fr) auto}.availability-extra-actions{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap;padding-top:2px}.availability-extra-actions .btn{font-size:10px;padding:8px 10px}.availability-extra-actions .btn:disabled{opacity:.48;cursor:not-allowed}.calendar-status-legend{display:flex;gap:13px;flex-wrap:wrap;margin:0 0 10px;padding:0 4px;color:var(--muted);font-size:9px;font-weight:700}.calendar-status-legend span{display:flex;align-items:center;gap:5px}.calendar-status-legend i{width:9px;height:9px;border-radius:3px;border:1px solid var(--line)}.calendar-status-legend i.available{background:#dff2e5;border-color:#a9d0b6}.calendar-status-legend i.hold{background:#fff1bd;border-color:#e4c65f}.calendar-status-legend i.confirmed{background:#fde1df;border-color:#e09b96}.calendar-status-legend i.released{background:#eadff6;border-color:#b9a1d5}.calendar-status-legend i.return{background:#ddecfa;border-color:#9fc2e7}.calendar-status-legend i.blocked{background:#e5e7e6;border-color:#b8bfba}.calendar-day.availability-available{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 24%,transparent)}.calendar-day.availability-hold{background:color-mix(in srgb,#fff1bd 35%,var(--panel))}.calendar-day.availability-blocked{background:color-mix(in srgb,#dfe3e0 44%,var(--panel))}.calendar-day.availability-booked{background:color-mix(in srgb,#fde1df 30%,var(--panel))}.calendar-day.availability-released{background:color-mix(in srgb,#eadff6 32%,var(--panel))}.calendar-event.confirmed{background:linear-gradient(180deg,#fff1f0,#f7dbd8);border-color:#df9d97}.calendar-event.confirmed b{color:#b54740}.calendar-event.confirmed .calendar-event-mark,.calendar-event.confirmed .calendar-event-tag{color:#b54740}.calendar-event.pending{background:linear-gradient(180deg,#fff9df,#f6edbf);border-color:#d8bd55}.calendar-event.pending b,.calendar-event.pending .calendar-event-mark,.calendar-event.pending .calendar-event-tag{color:#856400}.calendar-event.pending .calendar-event-tag{background:#fff6cf}.calendar-event.released{background:linear-gradient(180deg,#f2ecfb,#e5daf4);border-color:#bfa4d8}.calendar-event.released b{color:#705295}.calendar-event.released .calendar-event-mark,.calendar-event.released .calendar-event-tag{color:#705295}.calendar-event.pickup-marker{box-shadow:inset 4px 0 0 #7b5aa2,0 8px 16px rgba(15,109,58,.07)}.calendar-event.pickup-marker .calendar-event-tag{background:#efe8fb;color:#705295}.calendar-event.return-marker{background:linear-gradient(180deg,#eef6fe,#ddeafb);border-color:#95bae3;box-shadow:inset 4px 0 0 #2f7fd1,0 8px 16px rgba(15,109,58,.07)}.calendar-event.return-marker b{color:#2f70b5}.calendar-event.return-marker .calendar-event-mark,.calendar-event.return-marker .calendar-event-tag{color:#2f70b5}.calendar-event.return-marker .calendar-event-tag{background:#e8f2fd}.calendar-event.calendar-hold{background:linear-gradient(180deg,#fff8d8,#f9efb8);border-color:#e1c45d}.calendar-event.calendar-hold b{color:#8b6900}.calendar-event.calendar-hold .calendar-event-mark,.calendar-event.calendar-hold .calendar-event-tag{color:#8b6900}.calendar-event.calendar-hold .calendar-event-tag{background:#fff6cf}.calendar-event.calendar-block{background:linear-gradient(180deg,#eef0ef,#e2e5e3);border-color:#b8bfba}.calendar-event.calendar-block b{color:#4f5b54}.calendar-event.calendar-block .calendar-event-mark,.calendar-event.calendar-block .calendar-event-tag{color:#4f5b54}.calendar-event.calendar-block .calendar-event-tag{background:#f4f6f5}
html[data-theme="dark"] .calendar-weekdays{background:#1a201b;border-bottom-color:#273129}
html[data-theme="dark"] .calendar-weekdays span{color:#bfcdbf}
html[data-theme="dark"] .calendar-day{background:#161c18;border-right-color:#293329;border-bottom-color:#293329}
html[data-theme="dark"] .calendar-day.muted-day{background:#121713;opacity:.9}
html[data-theme="dark"] .calendar-day.availability-available{background:#17221b;box-shadow:inset 0 0 0 1px rgba(79,176,110,.24)}
html[data-theme="dark"] .calendar-day.availability-hold{background:#252113}
html[data-theme="dark"] .calendar-day.availability-blocked{background:#1c201d}
html[data-theme="dark"] .calendar-day.availability-booked{background:#241a1a}
html[data-theme="dark"] .calendar-day.availability-released{background:#1f1a27}
html[data-theme="dark"] .calendar-date span{color:#f1f6f2}
html[data-theme="dark"] .calendar-date small{color:#7fd19a}
html[data-theme="dark"] .calendar-event{background:linear-gradient(180deg,#212824,#1a201d);border-color:#334037;color:#f2f7f3;box-shadow:0 10px 18px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.03)}
html[data-theme="dark"] .calendar-event::after{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0))}
html[data-theme="dark"] .calendar-event b{color:#f3fff7}
html[data-theme="dark"] .calendar-event span{color:#bfd0c3}
html[data-theme="dark"] .calendar-event-mark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.08);color:#9fdeb3}
html[data-theme="dark"] .calendar-event-tag{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.06);color:#a6dfb8}
html[data-theme="dark"] .calendar-event.confirmed{background:linear-gradient(180deg,#4f302f,#3d2626);border-color:#c27670}
html[data-theme="dark"] .calendar-event.confirmed b,html[data-theme="dark"] .calendar-event.confirmed .calendar-event-mark,html[data-theme="dark"] .calendar-event.confirmed .calendar-event-tag{color:#ffd6d2}
html[data-theme="dark"] .calendar-event.confirmed .calendar-event-tag{background:rgba(226,126,117,.18)}html[data-theme="dark"] .calendar-event.pending{background:linear-gradient(180deg,#443b18,#342e13);border-color:#c2a545}html[data-theme="dark"] .calendar-event.pending b,html[data-theme="dark"] .calendar-event.pending .calendar-event-mark,html[data-theme="dark"] .calendar-event.pending .calendar-event-tag{color:#ffefae}html[data-theme="dark"] .calendar-event.pending .calendar-event-tag{background:rgba(214,181,68,.15)}
html[data-theme="dark"] .calendar-event.released{background:linear-gradient(180deg,#3a3049,#2e273a);border-color:#9b82bc}
html[data-theme="dark"] .calendar-event.released b,html[data-theme="dark"] .calendar-event.released .calendar-event-mark,html[data-theme="dark"] .calendar-event.released .calendar-event-tag{color:#e4d7ff}
html[data-theme="dark"] .calendar-event.released .calendar-event-tag{background:rgba(156,131,194,.18)}
html[data-theme="dark"] .calendar-event.pickup-marker .calendar-event-tag{background:rgba(156,131,194,.18);color:#e4d7ff}
html[data-theme="dark"] .calendar-event.return-marker{background:linear-gradient(180deg,#24364b,#1d2d40);border-color:#6da1d6;box-shadow:inset 4px 0 0 #48a0ff,0 10px 18px rgba(0,0,0,.22)}
html[data-theme="dark"] .calendar-event.return-marker b,html[data-theme="dark"] .calendar-event.return-marker .calendar-event-mark,html[data-theme="dark"] .calendar-event.return-marker .calendar-event-tag{color:#d9edff}
html[data-theme="dark"] .calendar-event.return-marker .calendar-event-tag{background:rgba(72,160,255,.16)}
html[data-theme="dark"] .calendar-event.calendar-hold{background:linear-gradient(180deg,#4a4118,#393213);border-color:#d2b149}
html[data-theme="dark"] .calendar-event.calendar-hold b,html[data-theme="dark"] .calendar-event.calendar-hold .calendar-event-mark,html[data-theme="dark"] .calendar-event.calendar-hold .calendar-event-tag{color:#fff1b8}
html[data-theme="dark"] .calendar-event.calendar-hold .calendar-event-tag{background:rgba(229,190,73,.14)}
html[data-theme="dark"] .calendar-event.calendar-block{background:linear-gradient(180deg,#2d3230,#232725);border-color:#717975}
html[data-theme="dark"] .calendar-event.calendar-block b,html[data-theme="dark"] .calendar-event.calendar-block .calendar-event-mark,html[data-theme="dark"] .calendar-event.calendar-block .calendar-event-tag{color:#dde4df}
html[data-theme="dark"] .calendar-event.calendar-block .calendar-event-tag{background:rgba(175,186,178,.12)}
.availability-ops-panel{margin-top:14px}.availability-ops-actions{display:flex;gap:7px;flex-wrap:wrap}.availability-ops-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.availability-ops-grid h4{margin:0 0 8px;font-size:12px}.availability-op-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:10px 11px;margin-top:7px}.availability-op-row b,.availability-op-row small{display:block}.availability-op-row b{font-size:10px}.availability-op-row small{font-size:8px;color:var(--muted);margin-top:2px}.availability-op-row>div:last-child{display:flex;gap:5px}.compact-empty{padding:14px!important}
.growth-package-list{display:grid;gap:7px;margin-bottom:14px}.growth-package-list article{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:10px 12px}.growth-package-list b,.growth-package-list small{display:block}.growth-package-list small{color:var(--muted);font-size:9px;margin-top:2px}.growth-package-list article>div:last-child{display:flex;gap:6px}.growth-package-units{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:6px}.growth-package-units label{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel-2);border-radius:11px;padding:9px}.growth-package-units input{accent-color:var(--orange)}.growth-package-units b,.growth-package-units small{display:block}.growth-package-units b{font-size:10px}.growth-package-units small{color:var(--muted);font-size:8px}
.deposit-growth-summary{margin:0 0 14px;padding:14px}.deposit-lifecycle{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.deposit-lifecycle article{border:1px solid var(--line);background:var(--panel-2);border-radius:13px;padding:12px}.deposit-lifecycle small,.deposit-lifecycle span{display:block;color:var(--muted)}.deposit-lifecycle small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.deposit-lifecycle b{display:block;font-size:20px;margin:4px 0 2px}.deposit-lifecycle span{font-size:9px}
.customer-360-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}.customer-360-kpis article{border:1px solid var(--line);background:var(--panel-2);border-radius:13px;padding:13px}.customer-360-kpis small,.customer-360-kpis span{display:block;color:var(--muted)}.customer-360-kpis small{font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.customer-360-kpis b{display:block;font-size:20px;margin:5px 0 2px}.customer-360-kpis span{font-size:9px}.customer-360-meta{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.customer-360-meta span{border:1px solid var(--line);background:var(--panel-2);border-radius:999px;padding:6px 9px;color:var(--muted);font-size:9px}.customer-360-actions{display:flex;justify-content:flex-end;margin-bottom:10px}
@media(max-width:1180px){.growth-ops-cards{grid-template-columns:repeat(4,1fr)}.quick-inquiry-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.growth-ops-cards{grid-template-columns:repeat(2,1fr)}.quick-inquiry-head{display:grid}.quick-inquiry-grid{grid-template-columns:1fr}.availability-extra-actions{display:grid;grid-template-columns:1fr 1fr}.availability-ops-grid,.deposit-lifecycle,.customer-360-kpis{grid-template-columns:1fr 1fr}.growth-package-units{grid-template-columns:1fr}.availability-share-strip{grid-template-columns:40px 1fr}.availability-share-strip>.availability-download-btn{grid-column:1/-1}.growth-reminder-row,.availability-op-row{align-items:flex-start;flex-direction:column}.availability-op-row>div:last-child{width:100%}}
@media(max-width:430px){.growth-ops-cards,.availability-extra-actions,.availability-ops-grid,.deposit-lifecycle,.customer-360-kpis{grid-template-columns:1fr}.quick-inquiry-actions{display:grid}.quick-inquiry-actions .btn{width:100%}}

/* v3.8.1 manual cash-basis payment recording */
.payment-recording-settings{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.payment-recording-settings>.field-title,.payment-recording-settings>.field-help,.payment-recording-settings>.payment-mode-chip,.payment-recording-settings>.payment-method-list{grid-column:1/-1}.payment-mode-chip{border:1px solid color-mix(in srgb,var(--green) 24%,var(--line));background:color-mix(in srgb,var(--green) 7%,var(--panel));border-radius:12px;padding:10px 12px}.payment-mode-chip b,.payment-mode-chip small{display:block}.payment-mode-chip b{font-size:11px;color:var(--green)}.payment-mode-chip small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.45}.payment-method-list{display:grid;gap:6px}.payment-method-list>span{font-size:9px;font-weight:800;color:var(--muted)}.payment-method-list em{font-style:normal;font-weight:600;opacity:.8}.payment-method-list textarea{width:100%}@media(max-width:760px){.payment-recording-settings{grid-template-columns:1fr}}

/* v3.9.0.7 — deploy-ready auth hardening, workflow, privacy and operational status */
body.cloud-auth-locked{overflow:hidden}
body.cloud-auth-locked>.crm-shell,body.cloud-auth-locked>#mobileMoreMenu,body.cloud-auth-locked>.modal,body.cloud-auth-locked>#loginOverlay{visibility:hidden;pointer-events:none;user-select:none}
.cloud-auth-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 18% 18%,rgba(15,109,58,.22),transparent 34%),linear-gradient(145deg,#07170e,#0c2617 55%,#07120b);overflow:auto}
.cloud-auth-overlay[hidden]{display:none!important}.cloud-auth-checking{min-height:170px;display:flex;align-items:center;justify-content:center;gap:16px;text-align:left}.cloud-auth-checking[hidden],.cloud-auth-panel[hidden],.cloud-auth-recovery[hidden]{display:none!important}.cloud-auth-checking b{display:block;font-size:15px}.cloud-auth-checking small{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45}.cloud-auth-spinner{width:28px;height:28px;border-radius:50%;border:3px solid color-mix(in srgb,var(--orange) 18%,var(--line));border-top-color:var(--orange);animation:cloudAuthSpin .8s linear infinite;flex:0 0 auto}@keyframes cloudAuthSpin{to{transform:rotate(360deg)}}.cloud-auth-panel{display:grid;gap:14px}.cloud-auth-recovery{display:grid;gap:10px;border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:12px}.cloud-auth-card{width:min(470px,100%);background:var(--panel);color:var(--text);border:1px solid color-mix(in srgb,var(--orange) 28%,var(--line));border-radius:26px;padding:28px;box-shadow:0 34px 90px rgba(0,0,0,.42);display:grid;gap:14px}.cloud-auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:3px}.cloud-auth-brand img{width:54px;height:54px;object-fit:contain}.cloud-auth-brand div{display:grid;gap:2px}.cloud-auth-brand b{font-size:18px;color:var(--orange);text-transform:lowercase}.cloud-auth-brand small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.cloud-auth-card h1{font-size:27px;letter-spacing:-.035em;line-height:1.08;margin:0}.cloud-auth-panel>p{margin:0;color:var(--muted);font-size:12px}.cloud-auth-fields,.cloud-auth-setup{display:grid;gap:10px}.cloud-auth-card label{display:grid;gap:6px}.cloud-auth-card label>span{font-size:10px;font-weight:800;color:var(--muted)}.cloud-auth-card input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--text);padding:10px 12px;outline:none}.cloud-auth-card input:focus{border-color:color-mix(in srgb,var(--orange) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--orange) 10%,transparent)}.cloud-auth-setup{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:12px}.cloud-auth-setup[hidden]{display:none!important}.cloud-auth-notice{padding:10px 11px;border-radius:10px;background:var(--orange-soft);color:var(--text)}.cloud-auth-notice b,.cloud-auth-notice span{display:block}.cloud-auth-notice b{font-size:11px}.cloud-auth-notice span{margin-top:3px;font-size:9px;color:var(--muted);line-height:1.45}.cloud-auth-notice code{font-size:9px}.cloud-auth-primary{width:100%;min-height:44px}.cloud-auth-invite-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cloud-auth-invite-actions .btn{min-height:40px}.cloud-auth-secondary{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}.cloud-auth-secondary .text-btn{font-size:10px}.cloud-auth-error{display:block;min-height:18px;color:var(--red);font-size:10px;text-align:center}.cloud-auth-foot{padding-top:12px;border-top:1px solid var(--line);display:grid;gap:4px;color:var(--muted);font-size:9px;line-height:1.4}.cloud-auth-foot span:before{content:'✓';color:var(--green);font-weight:900;margin-right:6px}
.future-staff-note{display:block;color:var(--muted);font-size:9px;font-weight:600;margin-top:4px}.privacy-retention-settings{grid-template-columns:1fr!important}.privacy-retention-settings>label{display:flex!important;align-items:center;gap:9px;flex-wrap:wrap}.privacy-retention-settings input[type="number"]{width:92px}.retention-actions{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding-top:3px}.retention-actions .field-help{margin:0}.backup-health-chip{min-height:40px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:11px;padding:6px 10px;display:flex;align-items:center;gap:8px;text-align:left;white-space:nowrap}.backup-health-chip>i{width:8px;height:8px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 4px color-mix(in srgb,var(--muted) 10%,transparent)}.backup-health-chip span{display:grid;line-height:1.08}.backup-health-chip b{font-size:9px}.backup-health-chip small{font-size:8px;color:var(--muted);margin-top:3px}.backup-health-chip.ok>i{background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 12%,transparent)}.backup-health-chip.warn>i{background:var(--yellow);box-shadow:0 0 0 4px color-mix(in srgb,var(--yellow) 12%,transparent)}.backup-health-chip.danger>i{background:var(--red);box-shadow:0 0 0 4px color-mix(in srgb,var(--red) 12%,transparent)}
.payment-lifecycle,.unit-health{display:inline-flex;align-items:center;width:max-content;max-width:100%;border:1px solid var(--line);border-radius:999px;padding:3px 7px;font-size:8px;font-weight:900;letter-spacing:.02em;margin-top:4px;white-space:nowrap}.payment-paid,.payment-settled,.health-ready{color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--panel));border-color:color-mix(in srgb,var(--green) 25%,var(--line))}.payment-partial,.payment-refund-due,.health-reserved,.health-service-due,.health-needs-inspection,.health-inspect{color:#b77d14;background:color-mix(in srgb,var(--yellow) 8%,var(--panel));border-color:color-mix(in srgb,var(--yellow) 30%,var(--line))}.payment-unpaid,.health-missing-accessory,.health-needs-service{color:var(--red);background:color-mix(in srgb,var(--red) 7%,var(--panel));border-color:color-mix(in srgb,var(--red) 28%,var(--line))}.payment-refunded,.health-on-rent{color:var(--blue);background:color-mix(in srgb,var(--blue) 8%,var(--panel));border-color:color-mix(in srgb,var(--blue) 28%,var(--line))}.health-retired,.health-unknown{color:var(--muted);background:var(--panel-2)}
.deploy-ready-ops{display:grid;gap:12px;margin-bottom:14px}.deploy-workflow,.deploy-approval-panel,.deploy-comms{border:1px solid var(--line);border-radius:15px;background:var(--panel-2);padding:13px}.deploy-workflow-head,.deploy-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.deploy-workflow-head>span,.deploy-panel-head>div>span{display:block;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.12em}.deploy-workflow-head>b,.deploy-panel-head>div>b{font-size:11px}.deploy-panel-head>div>b{display:block;margin-top:2px}.deploy-state{border:1px solid var(--line);border-radius:999px;padding:4px 7px;font-size:8px;font-weight:900}.deploy-state.ok{color:var(--green);border-color:color-mix(in srgb,var(--green) 30%,var(--line));background:color-mix(in srgb,var(--green) 7%,var(--panel))}.deploy-state.warn{color:#b77d14;border-color:color-mix(in srgb,var(--yellow) 35%,var(--line));background:color-mix(in srgb,var(--yellow) 7%,var(--panel))}.deploy-workflow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.deploy-workflow-steps>div{display:flex;align-items:center;gap:6px;min-width:0;padding:7px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted)}.deploy-workflow-steps i{font-style:normal;width:20px;height:20px;flex:0 0 20px;border-radius:50%;display:grid;place-items:center;background:var(--panel-3);font-size:8px;font-weight:900}.deploy-workflow-steps span{font-size:8px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deploy-workflow-steps>div.done{color:var(--green);border-color:color-mix(in srgb,var(--green) 22%,var(--line))}.deploy-workflow-steps>div.done i{background:color-mix(in srgb,var(--green) 12%,var(--panel));color:var(--green)}.deploy-workflow-steps>div.active{color:var(--orange);border-color:color-mix(in srgb,var(--orange) 35%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--orange) 8%,transparent)}.deploy-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.deploy-check-grid>div{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:8px}.deploy-check-grid>div>span{font-weight:900}.deploy-check-grid b,.deploy-check-grid small{display:block}.deploy-check-grid b{font-size:9px}.deploy-check-grid small{font-size:8px;color:var(--muted);margin-top:2px}.deploy-check-grid .ok>span{color:var(--green)}.deploy-check-grid .missing>span{color:var(--yellow)}.deploy-check-grid .optional{opacity:.62}.deploy-panel-actions{display:flex;justify-content:flex-end;margin-top:10px}.deploy-money-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px}.deploy-money-card{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:11px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label action" "value action" "meta action";column-gap:10px;align-items:center}.deploy-money-card>small{grid-area:label;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.09em}.deploy-money-card>strong{grid-area:value;font-size:15px;margin-top:3px}.deploy-money-card>span{grid-area:meta;color:var(--muted);font-size:9px;margin-top:2px}.deploy-money-card>button{grid-area:action}.deploy-comms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.deploy-comms-grid button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:9px;padding:8px;font-size:9px;font-weight:800}.deploy-comms-grid button:hover{border-color:color-mix(in srgb,var(--orange) 35%,var(--line));color:var(--orange)}.deploy-comms>small{display:block;color:var(--muted);font-size:8px;line-height:1.45;margin-top:8px}.deploy-verify-note{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid color-mix(in srgb,var(--yellow) 28%,var(--line));background:color-mix(in srgb,var(--yellow) 6%,var(--panel));border-radius:11px;padding:9px 10px;font-size:9px;color:var(--muted)}.deploy-verify-note b{color:var(--text)}
@media(max-width:980px){.backup-health-chip{display:none}.deploy-workflow-steps{grid-template-columns:repeat(5,minmax(72px,1fr));overflow-x:auto}.retention-actions{grid-template-columns:1fr}.retention-actions .btn{width:100%}}
@media(max-width:700px){.cloud-auth-invite-actions{grid-template-columns:1fr}.cloud-auth-overlay{padding:12px;align-items:start}.cloud-auth-card{margin:18px auto;padding:20px;border-radius:20px}.cloud-auth-card h1{font-size:23px}.deploy-check-grid,.deploy-money-panel{grid-template-columns:1fr}.deploy-comms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deploy-workflow-steps{grid-template-columns:repeat(5,82px)}.deploy-verify-note{align-items:stretch;flex-direction:column}.privacy-retention-settings>label{align-items:flex-start}.privacy-retention-settings input[type="number"]{width:100%}}

/* v3.9.0.3 — online request readability / anti-collision pass */
.online-requests-panel .table-wrap{overflow-x:auto!important;overscroll-behavior-x:contain}
.online-requests-panel table{min-width:1340px!important;table-layout:auto!important}
.online-requests-panel th,.online-requests-panel td{padding:17px 18px!important;vertical-align:middle!important}
.online-requests-panel td+td{border-left:1px solid color-mix(in srgb,var(--line) 48%,transparent)}
.online-col-request{min-width:225px}.online-col-customer{min-width:215px}.online-col-equipment{min-width:210px}.online-col-schedule{min-width:175px}.online-col-money{min-width:155px}.online-col-docs{min-width:160px}.online-col-status{min-width:120px}.online-col-action{min-width:90px}
.online-cell-stack{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:7px!important;min-width:0!important}
.online-cell-stack>*{margin:0!important;min-width:0}
.online-cell-primary,.online-cell-secondary{display:block!important;width:100%!important;position:static!important;float:none!important;clear:both!important}
.online-cell-primary{font-size:11.5px;line-height:1.28;font-weight:800;color:var(--text);overflow-wrap:anywhere}
.online-cell-primary.online-cell-regular{font-weight:700}
.online-cell-secondary,.online-cell-stack>small{font-size:9.5px!important;line-height:1.35!important;font-weight:500!important;color:var(--muted)!important;overflow-wrap:anywhere}
.online-col-request .online-cell-primary,.online-col-money .online-cell-primary{white-space:nowrap}
.online-col-customer .online-cell-primary{white-space:normal}
.online-col-schedule .online-cell-primary,.online-col-schedule .online-cell-secondary{white-space:nowrap}
.online-doc-stack{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.online-col-action{padding-left:20px!important;text-align:right!important}
.online-col-action .mini-btn{min-width:70px}
@media(max-width:760px){
  .online-requests-panel table{min-width:1280px!important}
  .online-requests-panel th,.online-requests-panel td{padding:15px 16px!important}
}

/* v3.9.0.5 — request upload preview now follows the active light/dark theme */
.online-upload-section{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.online-upload-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}.online-upload-heading small{display:block;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.online-upload-heading h4{margin:2px 0 0;font-size:14px;color:var(--text)}.online-upload-heading>span{font-size:10px;color:var(--muted);white-space:nowrap}.online-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.online-upload-card{min-width:0;border:1px solid var(--line);border-radius:12px;padding:9px;background:var(--panel);color:var(--text);box-shadow:0 6px 18px color-mix(in srgb,#000 5%,transparent)}.online-upload-card.missing{background:var(--panel-2)}.online-upload-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.online-upload-card-head>div{min-width:0}.online-upload-card-head b{display:block;font-size:11px;color:var(--text)}.online-upload-card-head small{display:block;margin-top:2px;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.online-upload-visual{height:170px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--panel-2);display:flex;align-items:center;justify-content:center}.online-upload-image{display:block;width:100%;height:100%;object-fit:contain;background:transparent}.online-upload-image.signature{padding:14px;box-sizing:border-box}.online-upload-pdf{display:block;width:100%;height:100%;border:0;background:var(--panel-2);color-scheme:light dark}.online-upload-loading,.online-upload-empty{padding:16px;text-align:center;color:var(--muted);font-size:10px;line-height:1.4}.online-upload-open{width:100%;margin-top:8px;background:var(--panel-2);color:var(--text);border-color:var(--line)}.online-upload-open:hover{background:var(--panel-3);color:var(--text)}.online-detail-card{overflow:visible}
html[data-theme="dark"] .online-upload-card{box-shadow:0 8px 22px rgba(0,0,0,.20)}
html[data-theme="dark"] .online-upload-image.signature{filter:invert(1) hue-rotate(180deg)}
@media(max-width:650px){.online-upload-grid{grid-template-columns:1fr}.online-upload-visual{height:220px}.online-upload-card-head small{max-width:240px}}

/* v3.9.0.6 — local/cloud verification review + secure document lightbox */
.doc-chip.verified{background:color-mix(in srgb,var(--green) 14%,var(--panel));color:var(--green);border-color:color-mix(in srgb,var(--green) 34%,var(--line))}
.doc-chip.needs-review{background:color-mix(in srgb,#c98518 13%,var(--panel));color:#a96b09;border-color:color-mix(in srgb,#c98518 34%,var(--line))}
html[data-theme="dark"] .doc-chip.needs-review{color:#f0be68}
.online-upload-visual{width:100%;padding:0;color:inherit;font:inherit;cursor:zoom-in}
.online-upload-visual:disabled{cursor:default}
.online-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}
.online-review-actions .mini-btn{min-width:0;background:var(--panel-2);color:var(--text);border-color:var(--line)}
.online-review-actions .mini-btn:hover{background:var(--panel-3)}
.online-review-actions .mini-btn.active-warning{border-color:color-mix(in srgb,#c98518 55%,var(--line));color:#a96b09}
html[data-theme="dark"] .online-review-actions .mini-btn.active-warning{color:#f0be68}
.online-review-actions .mini-btn:disabled{opacity:.55;cursor:not-allowed}
.online-signature-section{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.online-signature-section .signature-card{max-width:none}
.online-signature-section .signature-visual{height:150px}
.online-status-note.ready{background:color-mix(in srgb,var(--green) 10%,var(--panel));border:1px solid color-mix(in srgb,var(--green) 22%,var(--line));color:var(--text)}
.online-status-note.review{background:color-mix(in srgb,#c98518 9%,var(--panel));border:1px solid color-mix(in srgb,#c98518 22%,var(--line));color:var(--text)}
.online-actions .btn:disabled{opacity:.48;cursor:not-allowed;filter:saturate(.6)}
.online-file-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:22px}
.online-file-modal.open{display:flex}
.online-file-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}
.online-file-dialog{position:relative;z-index:1;width:min(1040px,96vw);height:min(820px,92vh);display:grid;grid-template-rows:auto 1fr auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.38);overflow:hidden;color:var(--text)}
.online-file-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--panel)}
.online-file-head>div{min-width:0}.online-file-head small{display:block;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em}.online-file-head b{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.online-file-head .modal-x{position:static;flex:0 0 auto}
.online-file-stage{min-height:0;display:grid;place-items:center;background:var(--panel-2);overflow:auto;padding:12px}
.online-file-image{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.online-file-image.signature{background:#fff;padding:24px;box-sizing:border-box}
.online-file-pdf{width:100%;height:100%;min-height:560px;border:0;border-radius:8px;background:#fff;color-scheme:light dark}
.online-file-error{max-width:520px;text-align:center;color:var(--muted);font-size:12px;line-height:1.5;padding:22px}
.online-file-nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--line);background:var(--panel)}
.online-file-nav span{text-align:center;color:var(--muted);font-size:11px}.online-file-nav .btn:disabled{opacity:.45}
@media(max-width:650px){.online-review-actions{grid-template-columns:1fr}.online-file-modal{padding:8px}.online-file-dialog{width:100%;height:96vh;border-radius:12px}.online-file-pdf{min-height:420px}.online-file-nav{grid-template-columns:1fr 1fr}.online-file-nav span{grid-column:1/-1;grid-row:1}}

/* v3.9.0.9 — dedicated password recovery UX */
.cloud-auth-error[data-tone="success"]{color:var(--green)}
.cloud-auth-error[data-tone="info"]{color:var(--muted)}
.cloud-auth-recovery{border:0;background:transparent;padding:0;gap:12px}
.cloud-auth-recovery-copy{border:1px solid color-mix(in srgb,var(--green) 24%,var(--line));background:color-mix(in srgb,var(--green) 6%,var(--panel-2));border-radius:12px;padding:11px 12px}
.cloud-auth-recovery-copy b,.cloud-auth-recovery-copy span{display:block}.cloud-auth-recovery-copy b{font-size:11px}.cloud-auth-recovery-copy span{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.45}
.cloud-password-field{position:relative}.cloud-password-field input{padding-right:64px}.cloud-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--green);font:inherit;font-size:9px;font-weight:900;cursor:pointer;padding:7px 8px;border-radius:7px}.cloud-password-toggle:hover{background:color-mix(in srgb,var(--green) 8%,transparent)}
.cloud-password-strength{display:grid;grid-template-columns:74px minmax(0,1fr);gap:9px;align-items:center;color:var(--muted);font-size:9px}.cloud-password-strength>i{display:block;height:5px;border-radius:999px;background:var(--line);overflow:hidden;position:relative}.cloud-password-strength>i:after{content:'';position:absolute;inset:0 auto 0 0;width:0;border-radius:inherit;background:var(--muted);transition:width .18s ease}.cloud-password-strength[data-score="1"]>i:after{width:25%;background:var(--red)}.cloud-password-strength[data-score="2"]>i:after{width:50%;background:var(--yellow)}.cloud-password-strength[data-score="3"]>i:after{width:75%;background:var(--green)}.cloud-password-strength[data-score="4"]>i:after{width:100%;background:var(--green)}
.cloud-password-match{display:block;min-height:14px;margin-top:-3px;color:var(--red);font-size:9px}.cloud-password-match[data-ok="true"]{color:var(--green)}
.cloud-auth-recovery-cancel{justify-self:center;font-size:10px}.cloud-auth-recovery .cloud-auth-primary:disabled{opacity:.48;cursor:not-allowed}
