@font-face{font-family:"Inter";src:url(/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--bg:#F4F6FB;--card:#fff;--ink:#0F172A;--ink2:#334155;--muted:#5B6B80;--line:#E4E8F0;--line2:#EEF1F6;--pri:#3B5BFD;--pri2:#2D47D8;--pri-bg:#EEF2FF;--ok:#0B7A3E;--ok-bg:#E6F6ED;--warn:#92570A;--warn-bg:#FEF5E1;--bad:#C8251B;--bad-bg:#FDECEA;--info:#1D4ED8;--info-bg:#E8F0FE;--vio:#6D28D9;--vio-bg:#F1EAFE;--mute-bg:#F1F3F7;--side:#0B1324;--r:14px;--sh:0 1px 2px rgba(15,23,42,.04),0 1px 3px rgba(15,23,42,.06);--sh2:0 10px 30px rgba(15,23,42,.12)}
*{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:15px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}
a{color:var(--pri);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3{margin:0;line-height:1.25;letter-spacing:-.01em}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--pri);outline-offset:2px;border-radius:6px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ic{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px}.ic-sm{width:14px;height:14px;vertical-align:-2px}.ic-lg{width:28px;height:28px}.ic-xl{width:36px;height:36px}
.muted{color:var(--muted)}.sm{font-size:13px}.center{text-align:center}.pad{padding:40px 0}.pos{color:var(--ok)}.neg{color:var(--bad)}.warn-t{color:var(--warn)}
.spin{display:inline-block;width:26px;height:26px;border:3px solid var(--line);border-top-color:var(--pri);border-radius:50%;animation:sp .7s linear infinite}.spin.sm{width:16px;height:16px;border-width:2px;vertical-align:-3px}@keyframes sp{to{transform:rotate(360deg)}}
.boot{min-height:100vh;display:grid;place-items:center}
/* brand */
.brand{display:inline-flex;align-items:center;gap:10px}.brand .mark{width:34px;height:34px;flex:none}.brand-txt{display:flex;flex-direction:column;line-height:1.1}.brand-txt b{font-size:18px;font-weight:750;letter-spacing:-.02em}.brand-txt small{font-size:11px;font-weight:500;opacity:.7;letter-spacing:.01em}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:10px;padding:9px 15px;font-weight:600;font-size:14px;line-height:1.2;cursor:pointer;background:var(--card);color:var(--ink);text-decoration:none!important;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s}
.btn:disabled{opacity:.55;cursor:default}
.btn-primary{background:var(--pri);color:#fff;box-shadow:0 1px 2px rgba(59,91,253,.3)}.btn-primary:hover:not(:disabled){background:var(--pri2)}
.btn-ghost{background:var(--card);border-color:var(--line);color:var(--ink2)}.btn-ghost:hover:not(:disabled){background:#F8FAFC;border-color:#CBD5E1}
.btn-sm{padding:7px 11px;font-size:13px;border-radius:9px}.btn-lg{padding:13px 18px;font-size:15px;border-radius:11px}.btn-block{width:100%}
.icon-only{padding:7px;width:34px;height:34px}.subtle{color:var(--muted)}.danger{color:var(--bad)!important}
.link-btn{background:none;border:0;color:inherit;font-weight:600;text-decoration:underline;cursor:pointer;padding:4px 6px}
.btn-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
/* forms */
.form{display:flex;flex-direction:column;gap:14px}
.fld{display:flex;flex-direction:column;gap:6px;min-width:0}.fld>span{font-size:13px;font-weight:600;color:var(--ink2)}.fld small{color:var(--muted);font-size:12px}
input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{width:100%;border:1px solid #D5DBE5;border-radius:10px;padding:10px 12px;background:#fff;font-size:15px;min-height:42px;transition:border-color .15s,box-shadow .15s}
textarea{resize:vertical;min-height:80px;line-height:1.45}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pri);box-shadow:0 0 0 3px rgba(59,91,253,.15)}
select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px!important}
.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-form.three{grid-template-columns:2fr 1fr 1fr}.span2{grid-column:1/-1}
.inline{display:flex;gap:8px}.inline select{flex:0 0 120px}
.form-err{margin:0;color:var(--bad);background:var(--bad-bg);border-radius:9px;padding:9px 12px;font-size:14px}
.check{display:flex;align-items:flex-start;gap:10px;font-size:14px;cursor:pointer}.check input{width:18px;height:18px;margin-top:2px;accent-color:var(--pri);flex:none}.check.sm{font-size:13px}
.fs{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;margin:0}.fs legend{font-size:13px;font-weight:700;padding:0 6px;color:var(--ink2)}
.switch{position:relative;display:inline-block;width:40px;height:23px;flex:none}.switch input{opacity:0;width:0;height:0;position:absolute}.switch i{position:absolute;inset:0;background:#CBD5E1;border-radius:20px;transition:.2s;cursor:pointer}.switch i:before{content:"";position:absolute;width:17px;height:17px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 2px rgba(0,0,0,.2)}.switch input:checked+i{background:var(--pri)}.switch input:checked+i:before{transform:translateX(17px)}.switch input:focus-visible+i{outline:2px solid var(--pri);outline-offset:2px}
.seg{display:inline-flex;background:var(--mute-bg);border-radius:11px;padding:3px;gap:2px;flex-wrap:nowrap;overflow-x:auto;max-width:100%}.seg.wrap{flex-wrap:wrap}
.seg button,.seg label{border:0;background:none;padding:7px 12px;border-radius:9px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}.seg button span{opacity:.6;font-weight:500}
.seg button.on,.seg label:has(input:checked){background:#fff;color:var(--ink);box-shadow:var(--sh)}.seg label input{position:absolute;opacity:0}.seg.full{display:flex}.seg.full label{flex:1;justify-content:center}
.sel select{min-height:38px;padding:7px 12px;font-size:14px;font-weight:600;width:auto}
/* auth */
.is-auth{background:#fff}
.auth{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}
.auth-pitch{background:radial-gradient(1200px 600px at 0% 0%,#2B3E8F 0%,#0B1324 55%);color:#fff;padding:56px;display:flex;align-items:center}
.auth-pitch-in{max-width:500px}.auth-pitch .brand-txt small{opacity:.75}
.auth-pitch h2{font-size:38px;font-weight:750;letter-spacing:-.03em;margin:40px 0 28px;line-height:1.12}
.pitch-list{list-style:none;padding:0;margin:0;display:grid;gap:18px}.pitch-list li{display:flex;gap:14px;color:#C7D2FE;font-size:15px}.pitch-list b{color:#fff;font-weight:650}.pitch-list .ic{width:22px;height:22px;color:#93A8FF;margin-top:1px}
.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px}
.auth-card{width:100%;max-width:400px}.auth-card h1{font-size:28px;font-weight:750;letter-spacing:-.025em;margin-bottom:6px}.auth-card .muted{margin:0 0 24px}
.auth-brand-m{display:none;margin-bottom:28px}
.or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin:20px 0}.or:before,.or:after{content:"";flex:1;height:1px;background:var(--line)}
.fine{font-size:12.5px;color:var(--muted);margin:16px 0 0;line-height:1.5}
.auth-foot{font-size:12px;color:var(--muted);margin-top:48px}
/* shell */
.demo-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:10px;padding:8px 16px;background:#1E1B4B;color:#E0E7FF;font-size:13px}
.demo-pill{display:inline-block;background:#FBBF24;color:#1E1B4B;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:6px}
.demo-txt{flex:1;min-width:0}
.shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh;background:linear-gradient(90deg,var(--side) 248px,transparent 248px)}
.side{background:var(--side);color:#CBD5E1;display:flex;flex-direction:column;padding:20px 14px;position:sticky;top:0;height:100vh;overflow-y:auto}
.has-demo .side{top:36px}
.side-brand{color:#fff;padding:4px 8px 18px;text-decoration:none!important}
.side-org{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:rgba(255,255,255,.05);margin-bottom:14px}.side-org b{display:block;color:#fff;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.side-org small{display:block;font-size:12px;color:#94A3B8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}
.avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#5B7BFF,#2F4BE0);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}
.side-nav{display:flex;flex-direction:column;gap:2px;flex:1}
.side-nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:9px;color:#CBD5E1;font-size:14px;font-weight:550;text-decoration:none!important}
.side-nav a:hover{background:rgba(255,255,255,.06);color:#fff}.side-nav a.on{background:rgba(91,123,255,.18);color:#fff}.side-nav a.on .ic{color:#93A8FF}
.side-nav a span:not(.nb){flex:1}
.nb{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--pri);color:#fff;font-size:11.5px;font-weight:700;display:inline-grid;place-items:center}.nb-red{background:#E5484D}
.side-out{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:9px;background:none;border:0;color:#94A3B8;font-size:14px;cursor:pointer;margin-top:12px}.side-out:hover{color:#fff;background:rgba(255,255,255,.06)}
.main{min-width:0;display:flex;flex-direction:column}
.topbar{display:flex;align-items:center;gap:16px;padding:26px 32px 18px;flex-wrap:wrap}
.top-brand{display:none}
.top-title{flex:1;min-width:200px}.top-title h1{font-size:26px;font-weight:750;letter-spacing:-.025em}.top-title p{margin:3px 0 0;color:var(--muted);font-size:14px}
.top-actions{display:flex;gap:8px;flex-wrap:wrap}
#view{padding:0 32px 32px;display:flex;flex-direction:column;gap:18px;outline:none;max-width:1240px;width:100%}
.foot{padding:16px 32px 28px;color:#94A3B8;font-size:12px}
.tabbar{display:none}
/* cards */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:18px 20px;min-width:0}
.card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.card-h h2{font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px}.card-h a{text-decoration:none}
.card-alert{border-color:#F6C9C5;background:linear-gradient(#FFF8F7,#fff)}.card-alert .card-h h2{color:var(--bad)}
.card-warn{border-color:#F3DEAF;background:linear-gradient(#FFFBF2,#fff)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.g-wide{grid-template-columns:1.6fr 1fr}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:16px 18px;display:flex;flex-direction:column;gap:2px;color:var(--ink);text-decoration:none!important;transition:border-color .15s,transform .15s}
.kpi:hover{border-color:#C7D2FE}.kpi-l{font-size:12.5px;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:6px}.kpi b{font-size:28px;font-weight:750;letter-spacing:-.03em;margin-top:6px}.kpi-s{font-size:13px;color:var(--muted)}
.kpi-bad b{color:var(--bad)}
.meter{display:block;height:6px;border-radius:4px;background:var(--line2);margin-top:10px;overflow:hidden}.meter i{display:block;height:100%;background:linear-gradient(90deg,#22C55E,#16A34A);border-radius:4px}
.att{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.att-i{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:11px;background:#FAFBFD;border:1px solid var(--line2);width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:border-color .15s,background .15s}.att-i:hover{border-color:#C7D2FE;background:#fff}.att-cta{font-size:13px;font-weight:600;color:var(--pri);white-space:nowrap}.att-chev{color:var(--muted);display:none}
.att-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none}
.tone-bad .att-ic{background:var(--bad-bg);color:var(--bad)}.tone-info .att-ic{background:var(--info-bg);color:var(--info)}.tone-warn .att-ic{background:var(--warn-bg);color:var(--warn)}.tone-violet .att-ic{background:var(--vio-bg);color:var(--vio)}
.att-t{flex:1;min-width:0;display:flex;flex-direction:column}.att-t b{font-size:14px;font-weight:650}.att-t small{color:var(--muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis}
.chart{display:flex;align-items:flex-end;gap:10px;height:150px;padding:6px 2px 0}
.bar-g{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.bars{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}
.bar{width:38%;max-width:22px;border-radius:5px 5px 2px 2px;min-height:2px}.bar.in{background:var(--pri)}.bar.out{background:#CBD5E1}.bar-g small{font-size:11.5px;color:var(--muted)}
.legend{display:flex;gap:16px;font-size:12.5px;color:var(--muted);margin-top:8px}.dot{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px}.dot.in{background:var(--pri)}.dot.out{background:#CBD5E1}
.ytd,.sum3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line2)}
.ytd small,.sum3 small{display:block;font-size:12px;color:var(--muted);font-weight:600}.ytd b,.sum3 b{font-size:19px;font-weight:750;letter-spacing:-.02em}
.sum3{margin:0 0 14px;padding:0 0 14px;border-top:0;border-bottom:1px solid var(--line2)}.card.sum3{margin:0;padding:16px 20px}
.acts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.acts li{display:flex;gap:12px;padding:9px 0;border-bottom:1px solid var(--line2)}.acts li:last-child{border-bottom:0}
.act-ic{width:30px;height:30px;border-radius:9px;background:var(--mute-bg);color:var(--muted);display:grid;place-items:center;flex:none}.act-ic .ic{width:15px;height:15px}
.k-automation{background:var(--vio-bg);color:var(--vio)}.k-rent,.k-bank{background:var(--ok-bg);color:var(--ok)}.k-request{background:var(--info-bg);color:var(--info)}.k-alert{background:var(--warn-bg);color:var(--warn)}.k-intake{background:var(--pri-bg);color:var(--pri)}
.act-t{display:block;font-size:14px;color:var(--ink2)}.acts small{color:var(--muted);font-size:12px}
.mini-list{list-style:none;margin:0;padding:0}.mini-list li{border-bottom:1px solid var(--line2)}.mini-list li:last-child{border:0}
.mini-list a,.mini-list button{display:flex;align-items:center;gap:12px;padding:10px 2px;width:100%;background:none;border:0;text-align:left;color:var(--ink);text-decoration:none!important;cursor:pointer}
.mini-list a>span:not(.thumb),.mini-list button>span:first-child{flex:1;min-width:0;display:flex;flex-direction:column}.mini-list b{font-size:14px;font-weight:650}.mini-list small{color:var(--muted);font-size:12.5px}
.thumb{width:40px;height:40px;border-radius:10px;background:var(--pri-bg);color:var(--pri);display:grid;place-items:center;font-weight:700;overflow:hidden;flex:none}.thumb img{width:100%;height:100%;object-fit:cover}
.empty{text-align:center;padding:28px 16px;color:var(--muted)}.empty .ic{color:#A5B4FC;margin-bottom:8px}.empty h3{color:var(--ink);font-size:16px;margin-bottom:4px}.empty p{margin:0 auto 14px;max-width:380px;font-size:14px}
/* pills */
.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:20px;font-size:12px;font-weight:650;white-space:nowrap;line-height:1.4}
.pill-ok{background:var(--ok-bg);color:var(--ok)}.pill-warn{background:var(--warn-bg);color:var(--warn)}.pill-bad{background:var(--bad-bg);color:var(--bad)}.pill-info{background:var(--info-bg);color:var(--info)}.pill-violet{background:var(--vio-bg);color:var(--vio)}.pill-mute{background:var(--mute-bg);color:var(--muted)}
/* properties */
.prop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.prop-card{padding:0;overflow:hidden;color:var(--ink);text-decoration:none!important;transition:border-color .15s,box-shadow .15s;display:flex;flex-direction:column}.prop-card:hover{border-color:#C7D2FE;box-shadow:var(--sh2)}
.prop-img{position:relative;height:150px;background:linear-gradient(135deg,#E0E7FF,#C7D2FE);display:grid;place-items:center}.prop-img img{width:100%;height:100%;object-fit:cover}.prop-img>span:first-child{font-size:34px;font-weight:800;color:#6366F1;letter-spacing:-.02em}
.prop-occ{position:absolute;left:12px;top:12px;background:rgba(15,23,42,.72);color:#fff;font-size:12px;font-weight:600;padding:4px 9px;border-radius:20px;backdrop-filter:blur(4px)}
.prop-b{padding:14px 18px 16px}.prop-b h3{font-size:17px;font-weight:700}.prop-b p{margin:2px 0 12px;font-size:13.5px}
.prop-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.prop-stats dt{font-size:11.5px;color:var(--muted);font-weight:600}.prop-stats dd{margin:0;font-weight:700;font-size:15px}.prop-stats small{font-weight:500;color:var(--muted)}
.prop-card.wide{flex-direction:row}.prop-card.wide .prop-img{width:42%;height:auto;min-height:180px}.prop-card.wide .prop-b{flex:1;display:flex;flex-direction:column;justify-content:center}
.hero-img{border-radius:var(--r);overflow:hidden;max-height:260px}.hero-img img{width:100%;height:260px;object-fit:cover;display:block}
.back{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--muted);align-self:flex-start}
.prose{margin:0;color:var(--ink2);white-space:pre-wrap}
/* rows */
.rows{display:flex;flex-direction:column}
.row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.3fr) auto;gap:14px;align-items:center;padding:12px 2px;border-bottom:1px solid var(--line2)}.row:last-child{border-bottom:0}
.row.clickable{cursor:pointer;border-radius:8px}.row.clickable:hover{background:#FAFBFD}
.row-main,.row-mid{display:flex;flex-direction:column;min-width:0}.row-main b{font-weight:650;font-size:14.5px;overflow:hidden;text-overflow:ellipsis}.row small{color:var(--muted);font-size:12.5px}
.row-mid>b{font-size:15px}.row-end{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.who{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px}
.month-h{justify-content:center;gap:14px}.month-h h2{min-width:150px;text-align:center;justify-content:center}
.note{margin:12px 0 0;font-size:13px;color:var(--muted);background:#F8FAFC;border:1px solid var(--line2);border-radius:10px;padding:10px 12px;display:flex;gap:8px;align-items:flex-start}
.plaid{display:flex;align-items:center;gap:16px}.plaid h3{font-size:15px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.plaid p{margin:4px 0 0;font-size:13.5px}.plaid>div:nth-child(2){flex:1}
.plaid-ic{width:44px;height:44px;border-radius:12px;background:var(--pri-bg);color:var(--pri);display:grid;place-items:center;flex:none}
/* tabs */
.tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}
.tab{border:1px solid var(--line);background:#fff;border-radius:20px;padding:7px 13px;font-size:13.5px;font-weight:600;color:var(--ink2);cursor:pointer;white-space:nowrap;display:inline-flex;gap:7px;align-items:center}
.tab span{background:var(--mute-bg);color:var(--muted);border-radius:10px;padding:0 7px;font-size:12px}.tab.on{background:var(--ink);color:#fff;border-color:var(--ink)}.tab.on span{background:rgba(255,255,255,.2);color:#fff}
/* requests */
.req-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.req{text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,box-shadow .15s;font:inherit}.req:hover{border-color:#C7D2FE;box-shadow:var(--sh2)}
.req-urgent{border-left:4px solid var(--bad)}
.req-top{display:flex;gap:6px;align-items:center}.req-top .muted{margin-left:auto}.req h3{font-size:16px;font-weight:700}
.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:13.5px}.clamp1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.req-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:var(--muted);margin-top:4px}.req-meta span{display:inline-flex;align-items:center;gap:5px}
.req-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.quote{margin:0;padding:12px 14px;background:#F8FAFC;border-left:3px solid #C7D2FE;border-radius:0 10px 10px 0;color:var(--ink2);font-size:14px;white-space:pre-wrap}
.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:var(--mute-bg);padding:4px;border-radius:12px}
.step{text-align:center;padding:9px 4px;border-radius:9px;font-size:13px;font-weight:650;color:var(--muted);cursor:pointer}.step input{position:absolute;opacity:0;pointer-events:none}.step.on{background:#fff;color:var(--pri);box-shadow:var(--sh)}
.photos{display:flex;flex-wrap:wrap;gap:10px}.photos img{width:84px;height:84px;object-fit:cover;border-radius:10px;border:1px solid var(--line);display:block}
.photo-add{width:84px;height:84px;border:1.5px dashed #CBD5E1;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px;color:var(--muted);cursor:pointer}.photo-add:hover{border-color:var(--pri);color:var(--pri)}
.timeline{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--line)}.timeline li{position:relative;padding:0 0 10px 12px;font-size:13.5px;display:flex;flex-direction:column}.timeline li:before{content:"";position:absolute;left:-19px;top:6px;width:8px;height:8px;border-radius:50%;background:var(--pri)}.timeline small{color:var(--muted);font-size:12px}
.sub-h{font-size:14px;font-weight:700;margin:6px 0 0}
/* drafts */
.auto-rules .card-h{margin-bottom:6px}
.rules{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.rules li{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--ink2)}.rules li>.ic{color:var(--ok);margin-top:2px}.rules b{color:var(--ink)}
.rules select{display:inline-block;width:auto;min-height:0;padding:2px 26px 2px 8px!important;font-size:13px;background-position:right 7px center}
.drafts{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}
.draft{display:flex;flex-direction:column;gap:8px}.draft header{display:flex;justify-content:space-between;align-items:center}.draft h3{font-size:15px;font-weight:700}
.draft-to{font-size:13px}.draft-to small{color:var(--muted);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.04em}
.draft-body{margin:0;white-space:pre-wrap;font:inherit;font-size:13.5px;color:var(--ink2);background:#F8FAFC;border-radius:10px;padding:12px;max-height:190px;overflow:auto;border:1px solid var(--line2)}
.draft footer{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
/* money */
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cats{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.cats li{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:center;font-size:13.5px}
.cat-bar{height:8px;background:var(--line2);border-radius:5px;overflow:hidden}.cat-bar i{display:block;height:100%;background:#94A3B8;border-radius:5px}
.tx .row{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto}
/* docs */
.doc-name{flex-direction:row!important;align-items:center;gap:12px}.doc-name>span:last-child{display:flex;flex-direction:column;min-width:0}.doc-name b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.doc-ic{width:40px;height:40px;border-radius:9px;background:var(--mute-bg);color:var(--muted);display:grid;place-items:center;flex:none;font-size:11px;font-weight:800;overflow:hidden}.doc-ic.pdf{background:#FDECEA;color:#C8251B}.doc-ic img{width:100%;height:100%;object-fit:cover}
.docs .row{grid-template-columns:minmax(0,1fr) auto}
.dropzone{display:flex;align-items:center;gap:14px;border:1.5px dashed #C7D2FE;background:#F8F9FF;border-radius:var(--r);padding:18px 20px;cursor:pointer;color:var(--pri)}.dropzone span{display:flex;flex-direction:column}.dropzone b{color:var(--ink)}.dropzone small{color:var(--muted)}.dropzone:hover{border-color:var(--pri)}
.dropzone.in-modal{justify-content:center;padding:22px}
/* intake */
.steps{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:10px}.steps li{font-size:14px}.steps b{display:block}.steps span{color:var(--muted);font-size:13.5px}
.mbox{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line2)}.mbox:last-of-type{border-bottom:0}.mbox>span:last-child{flex:1}.mbox b{font-size:14px}.mbox small{display:block;color:var(--muted);font-size:13px}
.dot-ok,.dot-soon{width:10px;height:10px;border-radius:50%;margin-top:6px;flex:none}.dot-ok{background:#22C55E;box-shadow:0 0 0 3px #DCFCE7}.dot-soon{background:#CBD5E1}
/* bank */
.bk-sum{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}
.bk-rows{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;max-height:46vh;overflow-y:auto}
.bk-row{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(0,1.1fr);gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line2);font-size:13.5px}.bk-row:last-child{border:0}
.bk-m{display:flex;flex-direction:column;min-width:0}.bk-m small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-a{display:flex;flex-direction:column;gap:4px}.bk-a select{min-height:36px;padding:6px 30px 6px 10px;font-size:13px}.bk-a small{font-size:12px}.bk-d{color:var(--muted);font-weight:600}
.st-matched{background:#FBFEFC}.st-duplicate{opacity:.55}
/* lease modal */
.lease-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.lease-sum>div{background:#F8FAFC;border:1px solid var(--line2);border-radius:11px;padding:10px 12px}.lease-sum small{display:block;font-size:12px;color:var(--muted);font-weight:600}.lease-sum b{font-size:17px}.lease-sum b small{display:inline;font-size:12px}
.kv{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin:0}.kv div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line2);padding:6px 0;font-size:13.5px}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:600;text-align:right}
.toggles{display:flex;gap:18px;flex-wrap:wrap}.switch-row{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.ledger{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.lg-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto 84px 64px;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line2);font-size:13.5px}.lg-row:last-child{border:0}.lg-row b{text-align:right}.lg-d{color:var(--muted);font-weight:600}.lg-row.pay{background:#FBFEFC}.lg-t small{color:var(--muted)}
.copy-box{display:flex;gap:8px;margin:10px 0}.copy-box input{font-size:13.5px;background:#F8FAFC}
.more-list{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.more-list a,.more-list button{display:flex;align-items:center;gap:14px;padding:15px 16px;border:0;border-bottom:1px solid var(--line2);background:none;color:var(--ink);font-size:15px;font-weight:550;text-decoration:none!important;text-align:left;cursor:pointer}.more-list a span:not(.nb){flex:1}.more-list button{color:var(--bad)}
/* modal */
.modal-open{overflow:hidden}
.modal-bg{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:80;animation:fade .15s}
.modal{position:fixed;z-index:90;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);background:#fff;border-radius:18px;box-shadow:0 24px 60px rgba(15,23,42,.3);display:flex;flex-direction:column;animation:pop .18s ease-out}
.modal.wide{width:min(760px,calc(100vw - 32px))}
.modal header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line2)}.modal header h2{font-size:17px;font-weight:700}
.m-body{padding:18px 20px;overflow-y:auto;gap:14px}.m-body p{margin:0}
.m-foot{display:flex;justify-content:flex-end;gap:8px;padding-top:6px;position:sticky;bottom:-18px;background:#fff;margin:0 -20px -18px;padding:12px 20px 16px;border-top:1px solid var(--line2)}.m-foot .danger{margin-right:auto}
@keyframes fade{from{opacity:0}}@keyframes pop{from{opacity:0;transform:translate(-50%,-48%) scale(.98)}}
#toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:100;pointer-events:none;width:max-content;max-width:calc(100vw - 32px)}
.toast{display:flex;align-items:center;gap:10px;background:#0F172A;color:#fff;padding:12px 16px;border-radius:12px;box-shadow:var(--sh2);font-size:14px;font-weight:500;animation:pop2 .2s ease-out}.toast .ic{color:#4ADE80}.toast.err{background:#7F1D1D}.toast.err .ic{color:#FCA5A5}
@keyframes pop2{from{opacity:0;transform:translateY(8px)}}
/* tenant form + 404 */
.tform{min-height:100vh;display:flex;justify-content:center;padding:28px 16px;background:var(--bg)}
.tcard{width:100%;max-width:520px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh);padding:24px;align-self:flex-start;display:flex;flex-direction:column;gap:12px}
.tcard h1{font-size:24px;font-weight:750;letter-spacing:-.02em;margin-top:8px}.tcard p{margin:0}.t-top{display:flex;justify-content:space-between;align-items:center}
.photo-pick{border:1.5px dashed #CBD5E1;border-radius:12px;padding:14px;text-align:center;font-weight:600;color:var(--ink2);cursor:pointer}#tph-prev{max-width:100%;border-radius:12px;max-height:240px;object-fit:cover}
.ok-big{width:64px;height:64px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;font-size:32px;font-weight:800;margin:10px auto}
.nf{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px}.nf h1{font-size:28px;margin-top:20px}.nf p{color:var(--muted);margin:0 0 8px}
/* responsive */
@media (max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-2,.g-wide{grid-template-columns:1fr}.prop-card.wide{flex-direction:column}.prop-card.wide .prop-img{width:100%;min-height:0;height:170px}}
@media (max-width:900px){
  .shell{grid-template-columns:1fr}.side{display:none}
  .shell{background:none}
  .topbar{padding:14px 16px 4px;gap:10px}
  .demo-bar~.shell .topbar{top:0}
  .top-brand{display:flex;width:100%;color:var(--ink);text-decoration:none!important}.top-brand .brand .mark{width:28px;height:28px}.top-brand .brand-txt b{font-size:16px}
  .top-title h1{font-size:21px}.top-title p{font-size:13px}.top-title{min-width:0;flex:1 1 100%}
  .top-actions{width:100%}.top-actions .btn{flex:1 1 auto}
  #view{padding:14px 16px 100px;gap:14px}
  .foot{display:none}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 2px;color:var(--muted);font-size:11px;font-weight:600;text-decoration:none!important;position:relative;border-radius:10px}
  .tabbar a .ic{width:22px;height:22px}.tabbar a.on{color:var(--pri)}
  .tabbar .nb{position:absolute;top:0;left:calc(50% + 6px);min-width:17px;height:17px;font-size:10.5px;padding:0 4px}
  .card{padding:15px 16px}
  .kpis{gap:10px}.kpi{padding:13px 14px}.kpi b{font-size:22px}.kpi-l{font-size:12px}.kpi-s{font-size:12px}
  .row{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.row-mid{grid-column:1/-1;grid-row:2}.row-end{grid-row:1;grid-column:2}
  .docs .row{grid-template-columns:minmax(0,1fr) auto}
  .tx .row .row-mid{display:none}
  .att-cta{display:none}.att-chev{display:block}
  .req-list,.drafts{grid-template-columns:1fr}
  .grid-form{grid-template-columns:1fr}.grid-form.three{grid-template-columns:1fr 1fr}.grid-form.three .fld:first-child{grid-column:1/-1}
  .modal{left:0;right:0;top:auto;bottom:0;transform:none;width:100%!important;max-height:92vh;border-radius:18px 18px 0 0;animation:up .22s ease-out}
  @keyframes up{from{transform:translateY(40px);opacity:0}}
  .m-foot{padding-bottom:calc(16px + env(safe-area-inset-bottom))}
  .lease-sum b{font-size:15px}.kv{grid-template-columns:1fr}
  .lg-row{grid-template-columns:46px minmax(0,1fr) auto;row-gap:4px}.lg-row>b{grid-column:3;grid-row:1}.lg-row>.pill,.lg-row>span:nth-child(3){grid-column:2;grid-row:2;justify-self:start}.lg-row>button,.lg-row>span:last-child{grid-column:3;grid-row:2}
  .bk-row{grid-template-columns:44px minmax(0,1fr)}.bk-a{grid-column:1/-1}
  .plaid{flex-wrap:wrap}.plaid .btn{width:100%}
  .demo-bar{font-size:12px;padding:6px 10px;position:static}.demo-txt{display:none}.demo-bar .demo-pill+.demo-txt+.link-btn{margin-left:auto}
  .hero-img img{height:190px}
  #toast{bottom:84px}
  .auth{grid-template-columns:1fr}.auth-pitch{display:none}.auth-brand-m{display:block}.auth-main{justify-content:flex-start;padding:48px 22px 28px}
}
@media (max-width:420px){.kpi b{font-size:20px}.ytd b,.sum3 b{font-size:16px}.chart{height:120px;gap:6px}.cats li{grid-template-columns:90px 1fr auto}.copy-box{flex-wrap:wrap}}

/* 2026-10-14: property card photo never overlaps the title on phones */
.prop-card{height:auto}.prop-card .prop-img{flex:0 0 auto;overflow:hidden;height:170px;width:100%}.prop-card .prop-img img{display:block;position:absolute;inset:0}.prop-card .prop-occ{z-index:1}.prop-card .prop-b{position:relative;flex:1 0 auto;background:var(--card,#fff)}
@media (min-width:1101px){.prop-card.wide .prop-img{height:auto}}

/* 2026-10-14: tenant repair status page (/t/<token>) */
.tk h1{font-size:22px;margin:2px 0 8px;letter-spacing:-.01em}.tk-ref{margin:14px 0 0;font-size:12.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.tk-status{display:flex;align-items:center;gap:10px;margin-bottom:18px}.sm{font-size:13px}
.tk-steps{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.tk-step{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;gap:4px}
.tk-step::before{content:"";position:absolute;top:13px;left:-50%;right:50%;height:3px;background:var(--line,#E2E8F0);z-index:0}.tk-step:first-child::before{display:none}
.tk-step.done::before,.tk-step.current::before{background:#3B5BFD}
.tk-dot{width:28px;height:28px;border-radius:50%;background:#fff;border:3px solid var(--line,#E2E8F0);display:grid;place-items:center;z-index:1}
.tk-dot svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.tk-step.done .tk-dot{background:#3B5BFD;border-color:#3B5BFD}.tk-step.current .tk-dot{border-color:#3B5BFD;box-shadow:0 0 0 5px rgba(59,91,253,.15)}
.tk-step.current .tk-dot::after{content:"";width:10px;height:10px;border-radius:50%;background:#3B5BFD}
.tk-lbl{font-size:12.5px;font-weight:600;line-height:1.2}.tk-step.todo .tk-lbl{color:var(--muted)}.tk-step small{font-size:11.5px;color:var(--muted);min-height:14px}
.tk-visit{border:1px solid var(--line,#E2E8F0);border-radius:14px;padding:4px 14px;margin:0 0 18px;background:#F8FAFF}
.tk-row{display:flex;gap:12px;align-items:center;padding:10px 0;color:var(--ink);text-decoration:none}.tk-row+.tk-row{border-top:1px solid var(--line,#E2E8F0)}
.tk-row svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:#3B5BFD;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tk-row div{display:flex;flex-direction:column}.tk-row small{font-size:11.5px;color:var(--muted);font-weight:600}.tk-row b{font-size:15px}.tk-row span{font-size:13.5px;color:var(--muted)}
.tk-call b{color:#3B5BFD}
.tk-h{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:18px 0 10px;font-weight:700}
.tk-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tk-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;display:block}
.tk-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.tk-feed li{display:flex}.tk-feed li.me{justify-content:flex-end}
.tk-bub{max-width:88%;background:#F1F5F9;border-radius:14px 14px 14px 4px;padding:9px 12px}.tk-feed li.me .tk-bub{background:#E0E7FF;border-radius:14px 14px 4px 14px}
.tk-bub.sys{background:transparent;border:1px dashed var(--line,#E2E8F0)}
.tk-bub small{display:block;font-size:11.5px;color:var(--muted);font-weight:600;margin-bottom:2px}.tk-bub p{margin:0;font-size:14.5px;white-space:pre-wrap;word-break:break-word}
.tk-bub img{margin-top:8px;width:100%;max-width:260px;border-radius:10px;display:block}
.tk-reply{margin-top:20px;border-top:1px solid var(--line,#E2E8F0);padding-top:16px}
.tk-acts{display:flex;justify-content:space-between;align-items:center;gap:10px}.tk-acts .btn{min-width:110px}
#tk-prev{max-width:140px;border-radius:10px}.tk-sent{margin:0 0 10px;color:#166534;background:#DCFCE7;border-radius:9px;padding:9px 12px;font-size:14px}
.tk-donenote{margin-top:12px}
/* landlord ticket modal additions */
.tk-sec{border:1px solid var(--line,#E2E8F0);border-radius:12px;padding:12px 14px;margin:4px 0}.tk-sec>h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.tk-sec.priv{background:#FFFBEB;border-color:#FDE68A}.tk-sec.pub{background:#F8FAFF}
.vis{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:2px 7px;border-radius:20px;margin-left:6px;vertical-align:middle;text-transform:none;letter-spacing:0}
.vis.pub{background:#E0E7FF;color:#3730A3}.vis.priv{background:#FEF3C7;color:#92400E}.vis.mail{background:#DCFCE7;color:#166534}.vis.ten{background:#FCE7F3;color:#9D174D}
.notify{border:2px solid #3B5BFD;border-radius:12px;padding:12px 14px;background:#fff}.notify.off{border-color:var(--line,#E2E8F0)}
.notify .sw{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:600}
.switch{position:relative;width:46px;height:28px;flex:0 0 46px}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{position:absolute;inset:0;background:#CBD5E1;border-radius:20px;transition:.15s}.switch span::after{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.switch input:checked+span{background:#3B5BFD}.switch input:checked+span::after{transform:translateX(18px)}
.preview{margin-top:10px;border:1px solid var(--line,#E2E8F0);border-radius:10px;background:#F8FAFC;font-size:13.5px}
.preview .ph{padding:8px 12px;border-bottom:1px solid var(--line,#E2E8F0);display:flex;flex-direction:column;gap:2px}.preview .ph small{color:var(--muted)}
.preview pre{margin:0;padding:10px 12px;white-space:pre-wrap;word-break:break-word;font:inherit;max-height:260px;overflow:auto}
.preview.none{padding:10px 12px;color:var(--muted)}
.tlog{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.tlog li{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:#F8FAFC}.tlog li.ten{background:#FDF2F8}.tlog li small{color:var(--muted);font-size:11.5px}.tlog li span{font-size:14px;white-space:pre-wrap}
.tlink{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.tlink code{background:#F1F5F9;padding:3px 6px;border-radius:6px;font-size:12px;word-break:break-all}
.ph-wrap{position:relative;display:inline-block}.ph-wrap .ph-vis{position:absolute;left:4px;bottom:4px;font-size:10.5px;padding:1px 6px;border-radius:10px;background:rgba(15,23,42,.75);color:#fff;border:0;cursor:pointer}
.badge-new{background:#DB2777;color:#fff;font-size:11px;font-weight:700;padding:2px 7px;border-radius:20px;margin-left:6px}
@media (max-width:420px){.tk-lbl{font-size:11.5px}.tk h1{font-size:20px}}

.ph-stage{margin:4px 0}.ph-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.ph-row img{width:72px;height:72px;object-fit:cover;border-radius:10px;display:block}
.ph-x{position:absolute;top:-6px;right:-6px;width:24px;height:24px;border-radius:50%;border:0;background:#0F172A;color:#fff;font-size:16px;line-height:24px;padding:0;cursor:pointer}
.tph-row{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}.tph-row .ph-wrap img{width:72px;height:72px;object-fit:cover;border-radius:10px;display:block}

.tk .photo-pick{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:#3B5BFD;font-weight:600;font-size:14px}.tk .photo-pick svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tform .photo-pick .ic{width:22px;height:22px}

.hold{display:block;margin:6px 0 2px;padding:6px 10px;border-radius:8px;background:#fff7e6;color:#8a5a00;font-size:13px;line-height:1.35}
.hold .ic{vertical-align:-3px;margin-right:4px}
ul.files{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}
ul.files li{display:grid;gap:4px}
ul.files .f-name{font-size:13px;color:var(--muted,#667085)}
ul.files audio{width:100%;height:36px}
.contact-row{grid-template-columns:1.1fr 1.3fr 1fr}
@media (max-width:560px){.contact-row{grid-template-columns:1fr 1fr}.contact-row .fld:first-child{grid-column:1/-1}}

.su-line{text-align:center;margin:14px 0 0;font-size:14px;color:var(--muted,#667085)}
.su-line .link-btn{font-weight:600}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.verify-bar{background:#DBEAFE;color:#1E3A8A;border-bottom:1px solid #BFDBFE}.verify-bar b{color:#1E3A8A;font-weight:700}.verify-bar .link-btn{color:#1E3A8A}

.prop-img .sv-frame{position:absolute;inset:0;width:100%;height:100%}
.prop-img:has(.sv-frame){min-height:150px}
.sv-hero{height:240px;margin-bottom:14px}

.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th,.tbl td{padding:9px 10px;border-bottom:1px solid var(--line,#E5E7EB);text-align:left;vertical-align:top;white-space:nowrap}
.tbl td small.block{display:block;white-space:normal}
.tbl th{font-size:12px;color:#64748B;font-weight:600;text-transform:uppercase;letter-spacing:.02em}
.tbl .num{text-align:right;font-variant-numeric:tabular-nums}
.tbl tr.tot td{font-weight:700;border-top:2px solid #CBD5E1}
.tbl tr.clickable{cursor:pointer}.tbl tr.clickable:hover td{background:#F8FAFC}
.tbl .neg{color:#B91C1C}
.chk{display:inline-flex;align-items:center;gap:8px;font-size:14px}
.rep-bar{flex-wrap:wrap;gap:10px}.rep-bar input[type=date]{padding:6px 8px;border:1px solid #CBD5E1;border-radius:8px;font:inherit}
.past-ten summary{cursor:pointer;list-style:none}.past-ten summary::-webkit-details-marker{display:none}
.pad-s{padding:8px 4px 0}
@media print{.side-nav,.tabbar,.toolbar,.rep-bar,.page-actions,.btn,.demo-bar,header .btn{display:none!important}.shell,.main,#view{margin:0!important;padding:0!important}.card{box-shadow:none!important;border:1px solid #ddd;break-inside:avoid}body{background:#fff}}

/* 2026-10-15 batch: street view as a still photo, sections, ledger */
.sv-box{position:absolute;inset:0;overflow:hidden;display:block;pointer-events:none}
.sv-box iframe.sv-frame{position:absolute;inset:auto;border:0;left:-90px!important;top:-110px!important;width:calc(100% + 180px)!important;height:calc(100% + 230px)!important;max-width:none;pointer-events:none;display:block}
.prop-img .sv-box{z-index:0}
.prop-occ{z-index:2;background:rgba(15,23,42,.82);box-shadow:0 1px 4px rgba(0,0,0,.35);text-shadow:none}
.sv-hero{position:relative;height:240px;margin-bottom:14px;background:linear-gradient(135deg,#E0E7FF,#C7D2FE)}
@media (max-width:700px){.sv-hero{height:200px}}
.m-body>*{flex-shrink:0}
.m-body{min-height:0}
.ledger{overflow:visible}
.lg-row{align-items:start}
.lg-t{white-space:normal;overflow-wrap:anywhere;min-width:0}
.lg-t small{display:inline}
.lg-t .lg-bal{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.lg-d small{display:block;font-weight:500;font-size:11px}
.lg-row.dep{background:#F5F3FF}
.lg-wrap:not(.show-all) .lg-more{display:none}
.sec-card .card-h h2{display:flex;align-items:center;gap:8px}
.sec-card .row-end{display:flex;gap:6px;flex-wrap:wrap}
.kv2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:8px 0 12px}
.kv2>div{display:flex;flex-direction:column;gap:2px}.kv2 dt{font-size:12px;color:var(--muted)}.kv2 dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.kv2 .span2{grid-column:1/-1}
@media (max-width:520px){.kv2{grid-template-columns:1fr}}
.doc-grp{margin-top:12px}.doc-grp h4{font-size:13px;font-weight:700;margin:0 0 6px;text-transform:none}
details.cap{margin:6px 0 10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px}details.cap summary{cursor:pointer}
.cmp-row .row-main{min-width:0}.cmp-docs{margin-top:8px}
.cmp-row .row-end{flex-wrap:wrap;gap:6px}
fieldset.fld{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.cmp-item{padding:12px 0;border-top:1px solid var(--line2)}.cmp-item:first-child{border-top:0}
.cmp-top{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.cmp-main{flex:1 1 220px;min-width:0}.cmp-main small{display:block;color:var(--muted);margin-top:2px}
.cmp-act{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.cmp-notes{margin:6px 0 0!important;white-space:pre-wrap}

/* ---------- team access ---------- */
.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.chip{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.chip:hover{border-color:var(--pri)}
.chip.on{background:var(--pri-bg);border-color:var(--pri);color:var(--pri)}
.perm-grid{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:4px 0 14px}
.pg-h,.pg-r{display:grid;grid-template-columns:1fr 56px 56px 56px;align-items:center}
.pg-h{background:var(--bg);font-size:12px;font-weight:700;color:var(--muted);padding:8px 10px;text-transform:uppercase;letter-spacing:.03em}
.pg-h span:not(:first-child){text-align:center}
.pg-r{padding:8px 10px;border-top:1px solid var(--line)}
.pg-a{display:flex;flex-direction:column;min-width:0}
.pg-a small{color:var(--muted);font-size:12px;line-height:1.3}
.pg-c{display:flex;justify-content:center;align-items:center;cursor:pointer;min-height:40px}
.pg-c input{position:absolute;opacity:0;width:1px;height:1px}
.pg-c i{width:22px;height:22px;border-radius:50%;border:2px solid var(--line2,#c9cfd8);display:block;transition:.15s}
.pg-c input:checked+i{border:7px solid var(--pri)}
.pg-c input:focus-visible+i{outline:2px solid var(--pri);outline-offset:2px}
.pg-r:has(input[value=none]:checked) .pg-a b{color:var(--muted)}
.prop-picks{display:flex;flex-direction:column;gap:2px;padding-left:24px}
.tm{padding:12px 0;border-top:1px solid var(--line)}
.tm:first-of-type{border-top:0}
.tm-h{display:flex;align-items:center;gap:10px}
.tm-n{display:flex;flex-direction:column;flex:1;min-width:0}
.tm-n small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}
.tm-perm{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0 6px}
.tm-p{display:flex;flex-direction:column;gap:2px;font-size:12px}
.tm-p small{color:var(--muted)}
.tm .btn-row{margin-top:6px}
.perm-list{display:flex;flex-direction:column}
.perm-li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line)}
.perm-li:first-child{border-top:0}
.perm-li span{display:flex;flex-direction:column}
.perm-li small{color:var(--muted);font-size:12px}
.audit{list-style:none;margin:0;padding:0}
.audit li{padding:8px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.35}
.audit li:first-child{border-top:0}
.audit .au-w{display:block;color:var(--muted);font-size:12px}
.audit small{display:block;color:var(--muted);font-size:12px;word-break:break-word}
.audit .au-bad b,.audit .au-bad span{color:var(--bad)}
.ro-pill{font-size:11px;vertical-align:middle}
.ro-area input:disabled,.ro-area select:disabled,.ro-area textarea:disabled{opacity:.7}
@media (min-width:700px){.tm-perm{grid-template-columns:repeat(6,1fr)}}


/* 2026-10-15 UI fix: Tenants Current/Past/Both + phone cards; Documents groups + ⋯ menu */
.ten-bar{margin-bottom:2px}
.ten-cards{display:none}
.ten-card{display:flex;flex-direction:column;gap:3px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line2);padding:12px 2px;font:inherit;color:inherit;cursor:pointer}
.ten-card:last-child{border-bottom:0}
.tc-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.tc-top b{font-size:15px;font-weight:650;min-width:0;overflow-wrap:anywhere}
.tc-line{font-size:13.5px;overflow-wrap:anywhere}
.tc-bal{display:flex;justify-content:space-between;align-items:baseline;margin-top:4px}.tc-bal small{font-size:12.5px;color:var(--muted)}.tc-bal b{font-size:16px;font-weight:700}
.tc-meta{font-size:12px}
@media (max-width:700px){.ten-tbl{display:none}.ten-cards{display:block}.ten-bar{flex-wrap:wrap}.ten-bar .seg{order:0}.ten-bar .sel{flex:1 1 100%}.ten-bar .sel select{width:100%}}
.doc-bar{display:flex;flex-direction:column;gap:8px;min-width:0}
.doc-grps{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;align-self:flex-start;max-width:100%}.doc-grps::-webkit-scrollbar{display:none}
.doc-grps button{flex:none}
.doc-filters{display:flex;gap:8px;flex-wrap:wrap}.doc-filters:empty{display:none}
@media (max-width:700px){.doc-filters .sel{flex:1 1 0;min-width:0}.doc-filters .sel select{width:100%;max-width:100%;text-overflow:ellipsis}}
.doc-name b{white-space:normal!important;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;line-height:1.3}
.docs .row{grid-template-columns:minmax(0,1fr) auto!important;position:relative}
.docs .row-end{flex-wrap:nowrap}
details.dmenu{position:relative}
details.dmenu>summary{list-style:none;font-size:18px;line-height:1;letter-spacing:1px;display:grid;place-items:center}details.dmenu>summary::-webkit-details-marker{display:none}
details.dmenu[open]>summary{background:var(--mute-bg)}
.dmenu-pop{position:absolute;right:0;top:calc(100% + 4px);z-index:40;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(16,24,40,.16);padding:5px;min-width:160px;display:flex;flex-direction:column}
.dmenu-pop a,.dmenu-pop button{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:0;background:none;font:inherit;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;cursor:pointer;text-align:left}
.dmenu-pop a:hover,.dmenu-pop button:hover{background:var(--mute-bg)}
.dmenu-pop .danger{color:var(--bad)}
.docs .row:nth-last-child(-n+2):not(:nth-child(-n+3)) .dmenu-pop{top:auto;bottom:calc(100% + 4px)}

/* 2026-10-15: saved photo first; live Street View only on the property page (on tap when a photo exists) */
.hero-img.sv-tap{position:relative}
.hero-img .sv-btn{position:absolute;right:10px;bottom:10px;background:rgba(15,23,42,.72);color:#fff;border:0;backdrop-filter:blur(4px)}
.sv-hero .sv-box{background:linear-gradient(135deg,#E0E7FF,#C7D2FE)}
.seg button[disabled]{opacity:.45;cursor:default}
/* 2026-10-15: compact document list */
.docs .row{padding-top:9px!important;padding-bottom:9px!important;gap:8px}
.docs .doc-ic{width:36px;height:36px;border-radius:8px;font-size:10px}
.doc-name{gap:10px!important}
.doc-name b{font-size:14px;font-weight:600}
.doc-name small{font-size:12px;color:var(--muted)}
.doc-name small.doc-orig{font-size:11px;opacity:.8;overflow-wrap:anywhere}
.doc-name em.dup{font-style:normal;font-size:11px;font-weight:700;background:var(--mute-bg);color:var(--muted);border-radius:6px;padding:1px 6px;margin-left:4px;vertical-align:1px}
.doc-month{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:14px 4px 6px;border-bottom:1px solid var(--line)}
.docs .doc-month:first-child{padding-top:2px}
.dmenu-h{display:block;font-size:11px;font-weight:700;color:var(--muted);padding:6px 12px 2px;text-transform:uppercase;letter-spacing:.04em}
.doc-search{display:block;margin:0 0 10px}
.doc-search input{width:100%;box-sizing:border-box;height:40px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:15px;background:#fff}
/* 2026-10-15: documents as folders (Explorer style) */
.doc-explorer{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}
.doc-tree{display:none}
@media (min-width:900px){.doc-explorer{grid-template-columns:270px minmax(0,1fr)}.doc-tree{display:block;position:sticky;top:12px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:8px;max-height:calc(100vh - 120px);overflow:auto}}
.doc-tree ul{list-style:none;margin:0;padding:0 0 0 14px}
.doc-tree>ul{padding-left:0}
.dt-item{display:flex;align-items:center;gap:7px;width:100%;border:0;background:none;font:inherit;font-size:13.5px;color:var(--ink);padding:6px 8px;border-radius:8px;cursor:pointer;text-align:left}
.dt-item span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dt-item small{color:var(--muted);font-size:12px}
.dt-item:hover{background:var(--mute-bg)}
.dt-item.on{background:#EEF2FF;color:#3730A3;font-weight:700}
.dt-item .fold-ic{width:17px;height:17px;color:#F5B83D;flex:none}
.doc-pane{padding-top:6px}
.doc-crumbs{display:flex;align-items:center;gap:8px;padding:4px 0 10px;border-bottom:1px solid var(--line);margin-bottom:4px;min-width:0}
.doc-back{flex:none;width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:22px;line-height:1;color:var(--ink);cursor:pointer;display:grid;place-items:center;padding-bottom:3px}
.crumb-trail{display:flex;align-items:center;gap:4px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;min-width:0;font-size:13.5px}
.crumb-trail::-webkit-scrollbar{display:none}
.crumb-trail button{border:0;background:none;font:inherit;color:var(--muted);padding:4px 2px;cursor:pointer}
.crumb-trail button:last-child{color:var(--ink);font-weight:700}
.crumb-trail .sep{color:var(--muted);opacity:.6}
.fold-list{display:flex;flex-direction:column}
.fold-row{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;color:var(--ink);padding:8px 4px;cursor:pointer;text-align:left}
.fold-row:last-child{border-bottom:0}
.fold-row:active{background:var(--mute-bg)}
.fold-row .fold-ic{width:30px;height:30px;color:#F5B83D;flex:none}
.fold-name{flex:1;min-width:0;font-weight:600;font-size:15px;overflow-wrap:anywhere}
.fold-n{color:var(--muted);font-size:13px;white-space:nowrap}

.ended-banner{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--mute-bg)}.ended-banner b{font-weight:600}

/* collections */
.coll-sum{margin-bottom:14px}
.coll-list{display:flex;flex-direction:column}
.coll-card{border-top:1px solid var(--line2);padding:14px 0 12px}.coll-card:first-child{border-top:0}
.coll-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}
.coll-who{display:flex;flex-direction:column;min-width:0}.coll-who b{font-size:15.5px;font-weight:650;overflow-wrap:anywhere}.coll-who small{color:var(--muted);font-size:13px}
.coll-bal{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none}.coll-bal b{font-size:19px;font-weight:750;letter-spacing:-.02em}
.aging{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0 8px}
.ag{background:var(--mute-bg);border-radius:9px;padding:6px 8px;display:flex;flex-direction:column;min-width:0}.ag small{font-size:11px;color:var(--muted);font-weight:600;white-space:nowrap}.ag b{font-size:13.5px;font-weight:700;overflow-wrap:anywhere}
.ag.zero b{color:var(--muted);font-weight:500}.ag1:not(.zero){background:var(--warn-bg)}.ag2:not(.zero),.ag3:not(.zero){background:var(--bad-bg)}.ag3:not(.zero) b{color:var(--bad)}
.coll-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--muted)}.coll-meta b{color:var(--ink2);font-weight:600}
.coll-note{margin:6px 0 0;font-size:13px;color:var(--ink2);font-style:italic;overflow-wrap:anywhere}
.coll-sec{margin:14px 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#FBFCFE}.coll-sec .sub-h{margin-top:0}
.coll-log{margin-top:10px}.coll-log li small .btn{margin-left:6px;padding:2px 8px;font-size:12px}
.coll-wo summary{cursor:pointer;list-style:none}.coll-wo summary::-webkit-details-marker{display:none}
.kpi-link{color:var(--pri);font-weight:600;margin-top:2px}
.lg-row.wo b{color:var(--muted)}
.letter-frame{width:100%;height:60vh;min-height:380px;border:1px solid var(--line);border-radius:10px;background:#fff}
.share-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:9px 12px;border-radius:11px;background:var(--warn-bg);color:var(--warn);font-size:13.5px;margin-bottom:10px}.share-row.on{background:var(--ok-bg);color:var(--ok)}.share-row b{font-weight:650}
@media (max-width:700px){.aging{grid-template-columns:repeat(2,1fr)}.coll-card .btn-row .btn{flex:1 1 auto}}

/* tenant portal & e-sign (owner side) */
.portal-sec{margin:14px 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#FBFCFE}.portal-sec .sub-h{margin-top:0}
.portal-st{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin:6px 0}.portal-st small{color:var(--muted);font-size:12.5px}
.pdocs{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column}.pdocs li{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-bottom:1px solid var(--line2)}.pdocs li:last-child{border-bottom:0}
.pdoc-main a{color:var(--ink)}.pdoc-main b{font-size:14px;overflow-wrap:anywhere}.pdoc-main small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}.pdoc-main .pill{font-size:11px;margin-left:2px}
.sigpad{display:block;width:100%;max-width:520px;height:auto;aspect-ratio:16/5;background:#fff;border:1.5px dashed #94A3B8;border-radius:12px;touch-action:none;margin:6px 0 4px;cursor:crosshair}
/* tenant portal (/tenant) */
.tportal .tp-card{gap:14px}
.tp-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line2)}.tp-head small{display:block;font-size:12px}.tp-head b{font-size:15px}
.tp-seg{display:flex;gap:4px;background:var(--mute-bg);border-radius:12px;padding:4px;overflow-x:auto}.tp-seg button{flex:1;border:0;background:transparent;border-radius:9px;padding:8px 6px;font-size:13.5px;font-weight:600;color:var(--ink2);white-space:nowrap;cursor:pointer}.tp-seg button.on{background:#fff;color:var(--ink);box-shadow:var(--sh)}
.tp-body{display:flex;flex-direction:column;gap:12px}
.tp-bal{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:16px;background:var(--ok-bg)}.tp-bal.warn{background:var(--warn-bg)}.tp-bal.bad{background:var(--bad-bg)}.tp-bal small{font-size:13px;color:var(--ink2);font-weight:600}.tp-bal b{font-size:34px;font-weight:800;letter-spacing:-.02em}.tp-bal .btn{margin-top:10px}.tp-bal .neg{color:var(--bad);font-weight:700}
.tp-kv{margin:0;display:flex;flex-direction:column}.tp-kv div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line2)}.tp-kv dt{color:var(--muted);font-size:13.5px}.tp-kv dd{margin:0;text-align:right;font-weight:600;font-size:14px}.tp-kv dd small{display:block;font-weight:400;color:var(--muted);font-size:12.5px}
.tp-action{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;cursor:pointer}.tp-action:hover{border-color:var(--pri)}.tp-action>span:nth-child(2){flex:1}.tp-action b{display:block;font-size:14.5px}.tp-action small{color:var(--muted);font-size:12.5px}.tp-ic{width:36px;height:36px;border-radius:10px;background:var(--pri-bg);color:var(--pri);display:grid;place-items:center;flex:none}.tp-go{color:var(--muted);font-size:22px}
.tp-h{font-size:15px;font-weight:700;margin-top:6px}
.tp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.tp-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 0;border-bottom:1px solid var(--line2)}.tp-list li>span:first-child{flex:1 1 55%;min-width:0}.tp-list li b{font-size:14px;overflow-wrap:anywhere}.tp-list li small{display:block;color:var(--muted);font-size:12.5px}.tp-list li>b:last-child{white-space:nowrap}.tp-list .pos{color:var(--ok)}
.tp-pill{font-style:normal;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:99px;background:var(--mute-bg);color:var(--ink2);white-space:nowrap}.tp-pill.ok{background:var(--ok-bg);color:var(--ok)}.tp-pill.warn{background:var(--warn-bg);color:var(--warn)}.tp-pill.bad{background:var(--bad-bg);color:var(--bad)}
.tp-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tp-sum div{background:#F8FAFC;border:1px solid var(--line2);border-radius:12px;padding:10px}.tp-sum small{display:block;color:var(--muted);font-size:12px}.tp-sum b{font-size:16px}.tp-sum .neg{color:var(--bad)}.tp-sum .pos{color:var(--ok)}
.tp-up{border-top:1px solid var(--line2);padding-top:10px;display:flex;flex-direction:column;gap:8px}
.note.ok{background:var(--ok-bg);color:var(--ok);border-color:transparent}
.tp-modal{position:fixed;inset:0;background:rgba(15,23,42,.45);display:flex;align-items:flex-end;justify-content:center;z-index:50}.tp-sheet{background:#fff;width:100%;max-width:520px;border-radius:18px 18px 0 0;padding:20px;display:flex;flex-direction:column;gap:10px}.tp-paybtns{display:flex;flex-direction:column;gap:8px}
.muted.sm,.sm.muted{font-size:12.5px}
@media print{.tp-noprint{display:none!important}body{background:#fff}.tp-receipt{border:0;box-shadow:none}}
.paycard .rules small{display:block;margin-top:2px;color:var(--muted);font-size:13px}

.feenote{margin:4px 0 14px;padding:12px 10px;border:1px solid var(--line2);border-radius:12px;background:#F8FAFC}.feenote-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px}.feenote p{margin:6px 0}.feelist{margin:4px 0 8px;padding-left:18px}.feelist li{margin:2px 0}.feetbl{margin:6px 0 10px;background:#fff;font-size:13px;width:100%}.feetbl th{font-size:11px;padding:6px 6px;border-bottom:1px solid var(--line2)}.feetbl td{padding:2px 6px 8px;border-bottom:1px solid var(--line2)}.feetbl .num{text-align:right;white-space:nowrap}.feetbl tr.pl td{padding:8px 6px 0;border-bottom:0;color:var(--ink);font-weight:600}.feetbl tr.pl small{font-weight:400;color:var(--muted);font-size:12px}.feetbl tfoot td{font-weight:700;border-bottom:0}.feecalc{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.feecalc-in{display:inline-flex;align-items:center;gap:4px}.feecalc .feecalc-in input{width:120px!important;min-height:0;padding:6px 8px}.feecalc-out{margin-top:6px}.feenote .xs{font-size:12px;line-height:1.45}.switch.is-locked i{cursor:not-allowed;opacity:.55}

.paymeth{margin:4px 0 10px;padding:12px 10px 8px;border:1px solid var(--line2);border-radius:12px;background:#fff}
.paymeth .rules{margin:4px 0 2px}
.paymeth p{margin:6px 0}
.paymeth .xs{font-size:12px;line-height:1.45}
.paymeth-warn{color:#B45309;font-weight:600}

/* background refresh pill (last-loaded screen shown instantly) */
.sync-pill{position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);left:50%;transform:translate(-50%,-6px);z-index:60;display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 9px;border-radius:999px;background:rgba(11,19,36,.82);color:#fff;font-size:12px;font-weight:500;line-height:1;box-shadow:0 2px 10px rgba(0,0,0,.18);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.sync-pill.on{opacity:1;transform:translate(-50%,0)}.sync-pill .spin.sm{width:12px;height:12px;border-width:2px;border-color:rgba(255,255,255,.35);border-top-color:#fff;vertical-align:0}

/* View as tenant preview banner + AI drafting (v=20261015zd) */
.tp-preview{position:sticky;top:0;z-index:20;margin:-4px -4px 12px;padding:10px 12px;border-radius:10px;background:#FFF4D6;border:1px solid #F0C44C;color:#5C3D00;font-size:14px;line-height:1.4}
.tp-preview b{font-weight:700}
.ai-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0}
.ai-row small{flex:1 1 220px;font-size:13px}
.ai-cta{padding:10px 12px;border-radius:10px;background:var(--bg2,#F4F6FA)}
textarea.ai-body{font-size:15px;line-height:1.5;white-space:pre-wrap;min-height:280px}

/* value & equity (Oct 16 2026) */
.prop-val{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line2)}
.prop-val>div{display:flex;flex-direction:column;gap:1px;min-width:0}.prop-val .pv-l{font-size:11.5px;color:var(--muted);font-weight:600}.prop-val b{font-size:15px;font-weight:700}.prop-val small{font-size:11.5px;color:var(--muted)}
.nw-card{margin-bottom:18px}.nw-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.nw-row>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.nw-row small{font-size:12.5px;font-weight:600;color:var(--muted)}.nw-row b{font-size:24px;font-weight:750;letter-spacing:-.02em;overflow-wrap:anywhere}.nw-net b{font-size:26px}.nw-note{margin:10px 0 0}
.fld.chk{display:flex;flex-direction:row;align-items:center;gap:8px}.fld.chk input{width:auto;height:auto}
@media (max-width:640px){.nw-row{grid-template-columns:1fr 1fr;gap:12px}.nw-net{grid-column:1/-1;border-top:1px solid var(--line2);padding-top:10px}.nw-row b{font-size:20px}.nw-net b{font-size:26px}}

/* Sign in with Google */
.g-wrap { margin: 4px 0 2px; }
.g-wrap .g-btn { display: flex; justify-content: center; min-height: 44px; }
.g-wrap .or { margin: 14px 0 6px; }

/* feature pack Oct 18 2026 */
.fx-search{width:100%;max-width:420px;padding:10px 12px;border:1px solid var(--line,#e5e7eb);border-radius:10px;font:inherit}
.fx-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:16px}
.fx-vcard{text-align:left;display:block;width:100%;cursor:pointer}
.fx-vtop{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px}
.fx-vtop b{font-size:16px;margin-right:4px}
.fx-vmeta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted,#6b7280)}
.fx-sugg,.fx-list,.fx-agenda{list-style:none;margin:0;padding:0}
.fx-sugg li,.fx-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line,#eef0f3)}
.fx-sugg li:first-child,.fx-list li:first-child{border-top:0}
.fx-sugg small,.fx-list small{display:block}
.fx-kv{margin-bottom:10px}
.fx-feed{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.fx-feed .btn-row{margin:0}
.fx-calbar{flex-wrap:wrap;gap:8px}
.fx-agenda li{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line,#eef0f3);cursor:default}
.fx-agenda li[data-act]{cursor:pointer}
.fx-agenda li:first-child{border-top:0}
.fx-agenda li.today .fx-date b{background:#3B5BFD;color:#fff}
.fx-agenda li.past,.fx-agenda li.done{opacity:.55}
.fx-agenda li.done .fx-ev b{text-decoration:line-through}
.fx-date{flex:0 0 44px;text-align:center}
.fx-date b{display:inline-block;min-width:32px;padding:3px 0;border-radius:8px;font-size:17px;background:var(--soft,#f3f4f6)}
.fx-date small{display:block;font-size:11px;color:var(--muted,#6b7280);text-transform:uppercase}
.fx-ev{flex:1;min-width:0}
.fx-ev .pill{font-size:11px;vertical-align:1px}
.fx-se th,.fx-se td{white-space:normal}
.fx-se td:first-child{min-width:190px}
.fx-se .fx-sub td{background:var(--soft,#f6f7f9);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted,#6b7280)}
.fx-se .fx-rents td{font-weight:600}
@media (max-width:700px){.fx-cards{grid-template-columns:1fr}.fx-se td:first-child{min-width:150px}}
.fx-ev small,.fx-feed small,.fx-feed b{display:block}.fx-feed small{margin-top:2px}
.fx-blk{display:block;margin-top:2px}

.fx-threads{display:grid;gap:10px;margin-bottom:14px}
.fx-thread{display:block;text-align:left;width:100%}
button.fx-thread{cursor:pointer}
.fx-thread.unread{border-color:#3B5BFD}
.fx-tt{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.fx-tt small{margin-left:auto}
.fx-prev{display:block;margin-top:4px;font-size:14px;color:var(--ink,#111);overflow:hidden;text-overflow:ellipsis}
.fx-chat{max-height:46vh;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:8px 2px 12px}
.fx-bub{max-width:82%;align-self:flex-start;background:var(--soft,#f1f3f6);border-radius:14px 14px 14px 4px;padding:8px 11px}
.fx-bub.me{align-self:flex-end;background:#3B5BFD;color:#fff;border-radius:14px 14px 4px 14px}
.fx-bub span{white-space:pre-wrap;display:block}
.fx-bub small{display:block;font-size:11px;opacity:.75;margin-top:3px}
.fx-irow{border-top:1px solid var(--line,#eef0f3);padding:8px 0}
.fx-iname{display:flex;justify-content:space-between;align-items:center}
.fx-x{border:0;background:none;font-size:20px;line-height:1;color:var(--muted,#888);cursor:pointer;padding:0 6px}
.fx-conds{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.fx-c{position:relative}
.fx-c input{position:absolute;opacity:0;pointer-events:none}
.fx-c span{display:inline-block;padding:5px 10px;border:1px solid var(--line,#dfe3e8);border-radius:999px;font-size:13px;cursor:pointer}
.fx-c.on.fx-c-good span{background:#dcfce7;border-color:#16a34a}
.fx-c.on.fx-c-fair span{background:#fef9c3;border-color:#ca8a04}
.fx-c.on.fx-c-poor span{background:#ffedd5;border-color:#ea580c}
.fx-c.on.fx-c-damaged span{background:#fee2e2;border-color:#dc2626}
.fx-c.on.fx-c-na span{background:#f3f4f6;border-color:#6b7280}
.fx-inote{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.fx-note{flex:1;min-width:160px;padding:7px 9px;border:1px solid var(--line,#dfe3e8);border-radius:8px;font:inherit}
.fx-phs{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.fx-phs img{width:46px;height:46px;object-fit:cover;border-radius:6px;display:block}
.fx-addph{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;border:1px dashed var(--line,#cfd4da);border-radius:6px;cursor:pointer}
.fx-drow{display:flex;gap:6px;margin:6px 0}
.fx-drow .fx-dw{flex:1;min-width:0}
.fx-drow .fx-da{width:96px}
.fx-drow input{padding:8px 9px;border:1px solid var(--line,#dfe3e8);border-radius:8px;font:inherit}
.tp-seg{overflow-x:auto;scrollbar-width:none}.tp-seg::-webkit-scrollbar{display:none}.tp-seg button{white-space:nowrap;padding-left:9px;padding-right:9px}
.fx-ann{display:block}.fx-ann b,.fx-ann span,.fx-ann small{display:block}.fx-ann span{margin:2px 0;white-space:pre-wrap}

/* feature pack 3 Oct 18 2026: vacancies + integrations */
.fx-lst-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-bottom:16px}
.fx-lst{background:var(--card,#fff);border:1px solid var(--line);border-radius:14px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column}
.fx-lst:hover{border-color:var(--brand,#3B5BFD)}
.fx-lst-ph{height:150px;background:var(--mute-bg);display:flex;align-items:center;justify-content:center;color:var(--muted)}
.fx-lst-ph img{width:100%;height:100%;object-fit:cover}
.fx-lst-b{padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.fx-lst-t{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.fx-lst-m{display:flex;justify-content:space-between;align-items:baseline}
.fx-lst .copy-box{margin-top:4px}
.fx-alist{display:flex;flex-direction:column}
.fx-arow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 4px;border:0;border-bottom:1px solid var(--line2);background:none;text-align:left;width:100%;cursor:pointer;font:inherit;color:inherit}
.fx-arow:last-child{border-bottom:0}
.fx-amain{display:flex;flex-direction:column;gap:2px;min-width:0}
.fx-amain small{color:var(--muted);font-size:12.5px}
.fx-phgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin:6px 0 10px}
.fx-phpick{position:relative;border:2px solid transparent;border-radius:10px;overflow:hidden;aspect-ratio:1;cursor:pointer;display:block}
.fx-phpick img{width:100%;height:100%;object-fit:cover;display:block}
.fx-phpick input{position:absolute;top:6px;left:6px;width:18px;height:18px;margin:0}
.fx-phpick.on{border-color:var(--brand,#3B5BFD)}
.fx-upl{margin-bottom:12px}
.fx-integ-top{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}
.fx-integ-top>span{display:flex;flex-direction:column;gap:3px}
.fx-integ-top small{color:var(--muted);font-size:12.5px;line-height:1.45}
.fx-integ-needs ul{margin:4px 0 6px 18px;padding:0;font-size:13.5px;line-height:1.55}
.fx-miss{color:#9a5b00;margin:4px 0 8px}
.fx-integ .copy-box{margin:6px 0}

.tl-main .tl-card{max-width:680px}
.tl-gal{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;margin:10px -4px 14px;padding:0 4px}
.tl-gal a{flex:0 0 86%;scroll-snap-align:start;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--mute-bg)}
.tl-gal a:only-child{flex-basis:100%}
.tl-gal img{width:100%;height:100%;object-fit:cover;display:block}
.tl-addr{color:var(--muted);margin:2px 0 8px}
.tl-price{display:flex;align-items:baseline;gap:4px;margin:4px 0}
.tl-price b{font-size:28px;letter-spacing:-.02em}
.tl-price span{color:var(--muted)}
.tl-facts{font-weight:600;margin:2px 0 10px}
.tl-kv{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin:10px 0 14px}
.tl-kv div{display:flex;flex-direction:column;gap:2px}
.tl-kv dt{font-size:12px;color:var(--muted)}
.tl-kv dd{margin:0;font-weight:600}
.tl-desc{line-height:1.6;margin:8px 0 12px}
.tl-h2{margin:22px 0 4px;font-size:20px}
.tl-2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.tl-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.tl-done{background:var(--mute-bg);border-radius:12px;padding:16px;margin-top:10px}
@media (max-width:560px){.tl-2,.tl-kv{grid-template-columns:1fr}}

/* feature pack 4: budget & bank */
.fx-bar{display:inline-block;width:60px;height:6px;border-radius:3px;background:var(--mute-bg);margin-right:6px;vertical-align:middle;overflow:hidden}
.fx-bar i{display:block;height:100%;background:var(--brand,#3B5BFD)}
.fx-bar i.bad{background:#d14343}
.fx-cash{width:110px;text-align:right;padding:4px 8px;border:1px solid var(--line);border-radius:8px;font:inherit}
.fx-btbl{margin-bottom:12px}
.fx-btbl .fx-bin{width:110px;text-align:right;padding:5px 8px;border:1px solid var(--line);border-radius:8px;font:inherit}
.fx-rlist{display:flex;flex-direction:column;max-height:52vh;overflow:auto;border:1px solid var(--line2);border-radius:10px}
.fx-rrow{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line2);cursor:pointer}
.fx-rrow:last-child{border-bottom:0}
.fx-rrow .fx-amain{flex:1}
.fx-rrow input{width:18px;height:18px;flex:none}
.fx-loan{cursor:pointer}
.fx-sched{max-height:340px;overflow:auto}
.fx-now td{background:#eef2ff;font-weight:600}
@media (max-width:560px){.fx-bar{display:none}}

/* address autocomplete */
.ac-wrap{position:relative;display:block;width:100%}.ac-wrap>input{width:100%}
.ac-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:120;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh2);max-height:min(320px,50vh);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px}
.ac-opt{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border-radius:9px;cursor:pointer;min-height:44px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.ac-opt .ic{flex:none;margin-top:2px;color:var(--muted)}.ac-opt span{display:flex;flex-direction:column;min-width:0}.ac-opt b{font-weight:600;font-size:14px;color:var(--ink)}.ac-opt small{font-size:12.5px;color:var(--muted)!important}
.ac-opt:hover,.ac-opt.on{background:var(--pri-bg)}.ac-opt.on .ic{color:var(--pri)}
.ac-foot{font-size:11px;color:var(--muted);padding:6px 12px 4px;border-top:1px solid var(--line2);margin-top:2px}

/* tenant lifecycle + value hints (Oct 18) */
.vc-hint{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:2px}
.lease-acts{flex-wrap:wrap}
.del-warn{background:var(--bad-bg);border:1px solid #F5C2BE;border-radius:12px;padding:12px 14px;color:var(--ink)}.del-warn b{color:var(--bad)}.del-warn ul{margin:8px 0 6px;padding-left:20px}.del-warn li{margin:2px 0}.del-warn p{margin:6px 0 0}
.btn-danger{background:var(--bad);color:#fff;border-color:var(--bad)}.btn-danger:hover:not(:disabled){background:#A81E16}.btn-danger:disabled{opacity:.45;cursor:not-allowed}

/* free OSM map on property cards */
.prop-img .osm-map{position:absolute;inset:0;overflow:hidden;display:block;font-size:12px;font-weight:400;letter-spacing:0;color:inherit;background:#E8EEF3}
.prop-img .osm-tiles{position:absolute;left:50%;top:50%;width:768px;height:768px;display:block}
.prop-card .prop-img .osm-tiles img,.prop-img .osm-tiles img{position:absolute;inset:auto;width:256px;height:256px;max-width:none;object-fit:fill;display:block;user-select:none;-webkit-user-drag:none}
.prop-img .osm-pin{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-22px 0 0 -11px;background:#E11D48;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 6px rgba(0,0,0,.35);z-index:1}
.prop-img .osm-credit{position:absolute;right:4px;bottom:3px;z-index:2;font-size:10px!important;line-height:1.2;color:#334155!important;background:rgba(255,255,255,.8);padding:1px 4px;border-radius:4px}
.prop-img.has-map .prop-occ{z-index:3}
.letter-pre{white-space:pre-wrap;font:12.5px/1.5 ui-monospace,Menlo,monospace;background:#F8FAFC;border:1px solid var(--line);border-radius:10px;padding:10px;max-height:260px;overflow:auto}

/* Oct 18 2026: "Your value" tag + switch back to the auto estimate */
.own-tag{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--pri-bg);color:var(--pri);font-size:10.5px;font-weight:700;letter-spacing:.01em;vertical-align:1px;white-space:nowrap}
.own-switch{margin:-4px 0 4px}
.linkbtn{background:none;border:0;padding:0;font:inherit;font-size:13.5px;font-weight:600;color:var(--pri);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
/* Oct 18 2026: deposit deductions row (the global input width:100% rule out-ranked .fx-da and squashed the description box) */
#m-form .fx-drow{display:flex;align-items:center;gap:8px;margin:8px 0}
#m-form .fx-drow input.fx-dw{flex:1 1 auto;width:auto;min-width:0}
#m-form .fx-drow .fx-amt{flex:0 0 128px;display:flex;align-items:center;gap:4px}
#m-form .fx-drow .fx-amt>span{color:var(--muted);font-weight:600}
#m-form .fx-drow input.fx-da{flex:1 1 auto;width:100%;min-width:0;text-align:right}
#m-form .fx-drow .fx-x{flex:0 0 40px;height:42px;border:1px solid var(--line);border-radius:10px;background:var(--card);font-size:20px;line-height:1;color:var(--muted);cursor:pointer}
@media (max-width:520px){#m-form .fx-drow .fx-amt{flex-basis:104px}}
/* Automations: coming up + skipped balances */
.auto-next .an-skip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between;padding:10px 12px;margin-bottom:10px;border-radius:10px;background:var(--warn-bg)}
.auto-next .an-skip p{margin:0;flex:1 1 260px}
.auto-next .an-list{list-style:none;margin:6px 0 8px;padding:0}
.auto-next .an-list li{display:flex;gap:12px;padding:7px 0;border-top:1px solid var(--line2)}
.auto-next .an-list li:first-child{border-top:0}
.auto-next .an-d{flex:0 0 64px;font-weight:700}
.past-rent[hidden],.paid-cur[hidden]{display:none!important}
.past-rent .check{margin:4px 0}
/* Oct 18 2026: document intake suggestions */
.sug-card{margin-bottom:12px}
.sug{border:1px solid var(--line);border-radius:12px;padding:12px;margin:10px 0;background:var(--card)}
.sug-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.sug-doc{font-weight:700;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.sug-lines{list-style:none;padding:0;margin:8px 0}
.sug-lines li{display:flex;gap:6px;align-items:flex-start;padding:3px 0;font-weight:600}
.sug .btn-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}

/* tag q (Oct 18 2026): verify banner readable on phones too (was hidden by .demo-txt rule), AA contrast */
@media (max-width:900px){.verify-bar .demo-txt{display:block}}
.pl-form{margin-top:16px;border-top:1px solid var(--line2);padding-top:14px}.pl-row .pl-st{color:var(--ink2);font-weight:600}.pl-row .fx-amain a{color:inherit}

/* tag r (Oct 18 2026): /admin (platform owner only) */
.adm{min-height:100vh;background:var(--bg)}
.adm-top{display:flex;align-items:center;gap:12px;padding:14px 20px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.adm-t{font-size:15px}.adm-who{margin-left:auto}
.adm-tabs{display:flex;gap:6px;padding:12px 20px 0;flex-wrap:wrap}.adm-tabs button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:7px 14px;font-weight:600;font-size:13.5px;color:var(--ink2);cursor:pointer}.adm-tabs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.adm-main{padding:14px 20px 40px;display:flex;flex-direction:column;gap:16px;max-width:1300px}
.adm-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0}
.adm-tbl{width:100%;border-collapse:collapse;font-size:13.5px}.adm-tbl th{text-align:left;font-size:12px;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.adm-tbl td{padding:9px 10px;border-bottom:1px solid var(--line2);vertical-align:top}.adm-tbl small{display:block;color:var(--muted);font-size:12px}.adm-tbl .num{text-align:right;font-variant-numeric:tabular-nums}
.adm-click{cursor:pointer}.adm-click:hover{background:#F8FAFC}
.adm-feat td.adm-sw,.adm-feat th{text-align:center}.adm-feat td:first-child,.adm-feat th:first-child{text-align:left;min-width:220px}.adm-sw .switch{margin:0 auto}
.adm-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin:8px 0 12px}.adm-filters .fld{min-width:150px;margin:0}
.adm-feed{list-style:none;margin:0;padding:0}.adm-feed li{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line2);font-size:13.5px}.adm-feed small{display:block;color:var(--muted);font-size:12px}
.adm-k{flex:0 0 auto;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:3px 7px;border-radius:6px;background:var(--mute-bg);color:var(--ink2);height:fit-content}
.adm-list{list-style:none;margin:6px 0 12px;padding:0}.adm-list li{padding:6px 0;border-bottom:1px solid var(--line2);font-size:13.5px}.adm-list small{color:var(--muted)}

/* tag i: 1099-NEC */
.nec-v{padding:14px 16px;margin-bottom:12px}.nec-v.nec-need{border-left:4px solid var(--warn)}
.nec-vh{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.nec-vh .pill{margin:4px 4px 0 0}
.nec-amt{text-align:right;display:flex;flex-direction:column;align-items:flex-end;min-width:110px}.nec-amt b{font-size:18px}.nec-amt small{font-size:12px;max-width:170px}
.nec-miss{color:var(--bad);font-weight:600;font-size:14px;margin:8px 0}
.nec-det{margin:8px 0}.nec-det summary{cursor:pointer;color:var(--pri);font-size:14px;font-weight:600}
.nec-pay{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--line2);font-size:14px}
.nec-pay.nec-ex b{text-decoration:line-through;color:var(--muted)}
.nec-pr{display:flex;gap:10px;align-items:center}.nec-pr select{font-size:13px;padding:4px 6px;border:1px solid var(--line);border-radius:8px;background:#fff;max-width:170px}
.nec-payer p{margin:6px 0}.nec-draft{width:100%;font-size:14px;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--mute-bg);color:var(--ink)}
.fx-nec-btns{margin:4px 0 8px}
@media (max-width:640px){.nec-vh{flex-direction:column}.nec-amt{align-items:flex-start;text-align:left}.nec-pr{width:100%;justify-content:space-between}}

/* tag s: admin at scale */
.adm-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.adm-totals>div{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:10px 14px;display:flex;flex-direction:column;box-shadow:var(--sh)}.adm-totals small{color:var(--muted);font-size:12px;font-weight:600}.adm-totals b{font-size:22px;letter-spacing:-.01em}
.adm-lf{align-items:flex-end}.adm-q{flex:1 1 220px}.adm-q input{width:100%}
.adm-sort{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;font-weight:600}.adm-sort.on{color:var(--pri)}
.adm-cb{width:34px}.adm-cb input{width:18px;height:18px}
.adm-ll td{padding:7px 10px}.adm-ll tr.adm-click{cursor:pointer}.adm-ll tr.adm-click:hover td{background:var(--mute-bg)}
.adm-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px}.adm-count{text-align:center}
.adm-bulk{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--pri-bg);border:1px solid #C7D2FE;border-radius:10px;padding:8px 10px;margin:8px 0}.adm-bulk select{padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:13px}
.adm-n{display:inline-block;background:var(--bad);color:#fff;border-radius:10px;font-size:11px;padding:0 6px;margin-left:2px}
.adm-actions{margin:6px 0 4px}.adm-price .fld input{max-width:150px}.adm-notes{width:100%;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:14px}
.adm-ctl .sub-h{margin-top:16px}
.viewas-bar{background:#1E3A8A;color:#fff}.viewas-bar .demo-pill{background:#fff;color:#1E3A8A}.viewas-bar .link-btn{color:#fff;text-decoration:underline}
@media (max-width:760px){.adm-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.adm-totals>div:last-child{grid-column:1/-1}.adm-main{padding:10px 10px 40px}
 .adm-ll thead,.adm-tt thead{display:none}.adm-ll,.adm-ll tbody,.adm-tt,.adm-tt tbody{display:block}
 .adm-ll tr,.adm-tt tr{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:8px;background:var(--card);position:relative}
 .adm-ll td,.adm-tt td{border:0;padding:2px 0;text-align:left!important}.adm-ll td::before,.adm-tt td::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);font-weight:600}
 .adm-ll td[data-label="Account"],.adm-tt td[data-label="Tenant"]{grid-column:1/-1;padding-right:30px}.adm-ll td[data-label="Account"]::before,.adm-tt td[data-label="Tenant"]::before,.adm-ll td.adm-cb::before{display:none}
 .adm-ll td.adm-cb{position:absolute;top:10px;right:10px;width:auto}.adm-scroll{overflow:visible}.adm-tbl .num{text-align:left}}
@media (max-width:760px){.adm-who{display:none}.adm-top{gap:8px;flex-wrap:nowrap}.adm-top .btn{white-space:nowrap;margin-left:auto}}
.adm-ctl .btn-row select{width:auto;max-width:200px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:13px}

/* tag u (Oct 18 2026): admin Team section, read-only note, admin sign-in */
.adm-team .adm-tm{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 0}
.adm-team .adm-tm>div:first-child{min-width:0;flex:1 1 220px}
.adm-team .adm-tm b{word-break:break-all}
.adm-team .adm-tm small{display:block;margin-top:2px}
.adm-tm-r{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.adm-tm-lv{margin:0}
.adm-tm-lv select{min-width:96px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.adm-levels{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}
.adm-levels li{font-size:13px;color:var(--ink2)}
.adm-ro-note{margin:10px 16px 0;padding:9px 12px;border-radius:10px;background:var(--warn-bg);color:var(--warn);font-size:13px}
.adm-si{max-width:440px}
.adm-si .adm-si-g{display:flex;justify-content:center;min-height:44px;margin:18px 0 8px}
.adm-si-msg{font-size:14px;margin:10px 0}
.adm-si-msg.err{color:var(--bad)}
@media (max-width:560px){.adm-teamf .fld{flex:1 1 100%}.adm-teamf .btn{width:100%}}

/* Sign in with Google inside the RentDesk Android apps (tag v): a plain link the app opens in a Custom Tab */
.g-app-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:400px;margin:0 auto;height:44px;padding:0 16px;border:1px solid #dadce0;border-radius:999px;background:#fff;color:#1f1f1f;font:500 15px/1 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;text-decoration:none;-webkit-tap-highlight-color:transparent}
.g-app-btn:active{background:#f1f3f4}
.g-app-btn .g-logo{flex:0 0 auto}
