:root{--bg:#f6f8fb;--surface:#fff;--surface-soft:#f8fafc;--surface-strong:#f1f5f9;--ink:#172033;--muted:#64748b;--muted-strong:#475569;--line:#e2e8f0;--line-strong:#d7dee8;--brand:#17456f;--brand-strong:#103657;--brand-soft:#eaf2f9;--accent:#17765f;--accent-soft:#eaf7f2;--danger:#b43a3a;--danger-soft:#fff0f0;--warning:#a5670d;--warning-soft:#fff6e6;--info:#386b9b;--info-soft:#edf5fc;--shadow-sm:0 2px 10px #14253c0a;--shadow-md:0 14px 36px #14253c14;--shadow-lg:0 28px 70px #122c4821;--radius-sm:10px;--radius:14px;--radius-lg:22px}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{min-height:100vh;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}svg{display:block}.brand-lockup{letter-spacing:-.02em;align-items:center;gap:11px;font-weight:800;display:flex}.brand-mark{background:var(--brand-soft);width:40px;height:40px;color:var(--brand);border:1px solid #17456f14;border-radius:12px;flex:none;place-items:center;display:grid}.brand-copy{gap:4px;min-width:0;line-height:1.08;display:grid}.brand-copy strong{white-space:nowrap;font-size:.92rem}.brand-copy small{letter-spacing:.01em;color:var(--muted);white-space:nowrap;font-size:.68rem;font-weight:650}.button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:.88rem;font-weight:760;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button.primary{color:#fff;background:var(--brand);box-shadow:0 7px 18px #17456f26}.button.primary:hover{background:var(--brand-strong)}.button.secondary{color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-sm);background:#fff}.button.secondary:hover{background:#fbfcfe;border-color:#c9d3df}.button.ghost{color:var(--muted);background:0 0}.button.block{width:100%}.button-lg{min-height:48px;padding:0 19px}.button.compact{min-height:34px;padding:0 11px;font-size:.79rem}.actions-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.form-grid{gap:15px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:7px;min-width:0;display:grid}.field label{color:var(--muted-strong);font-size:.79rem;font-weight:750}.field input,.field select,.field textarea{border:1px solid var(--line-strong);width:100%;min-height:43px;color:var(--ink);background:#fff;border-radius:10px;outline:none;padding:10px 12px;transition:border-color .16s,box-shadow .16s,background .16s}.field input::placeholder,.field textarea::placeholder{color:#a1adbb}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8aa9c4;box-shadow:0 0 0 3px #17456f14}.field textarea{resize:vertical;min-height:92px}.help{color:var(--muted);font-size:.8rem;line-height:1.55}.notice{border-radius:11px;padding:11px 13px;font-size:.84rem;line-height:1.45}.notice.error{background:var(--danger-soft);color:#913232;border:1px solid #f0caca}.notice.success{background:var(--accent-soft);color:#236652;border:1px solid #c8e6db}.badge{color:#52667a;white-space:nowrap;background:#eef3f7;border-radius:999px;align-items:center;gap:5px;min-height:25px;padding:0 9px;font-size:.71rem;font-weight:760;display:inline-flex}.badge.active{background:var(--accent-soft);color:#256955}.badge.draft{background:var(--warning-soft);color:#8b5d16}.badge.overdue{background:var(--danger-soft);color:#963535}.muted{color:var(--muted)}.small-text{font-size:.76rem}.marketing{background:#fff;min-height:100vh}.marketing-nav{justify-content:space-between;align-items:center;gap:24px;max-width:1220px;min-height:76px;margin:0 auto;padding:14px 24px;display:flex}.public-brand{color:var(--brand-strong)}.public-brand .brand-copy small{color:#6c7b8d}.marketing-links{color:#5d6b7d;align-items:center;gap:25px;font-size:.84rem;font-weight:720;display:flex}.marketing-links a:hover{color:var(--brand)}.marketing-actions{align-items:center;gap:9px;display:flex}.hero-public{grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);align-items:center;gap:66px;max-width:1220px;margin:0 auto;padding:74px 24px 86px;display:grid}.hero-copy{min-width:0}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.075em;align-items:center;gap:7px;font-size:.76rem;font-weight:820;display:inline-flex}.hero-public h1{letter-spacing:-.052em;max-width:760px;margin:17px 0 22px;font-size:clamp(2.7rem,5vw,4.9rem);line-height:1.01}.hero-public p{color:var(--muted);max-width:660px;margin:0 0 27px;font-size:1.06rem;line-height:1.68}.hero-proof{color:#56677b;flex-wrap:wrap;gap:18px;margin-top:23px;font-size:.8rem;font-weight:720;display:flex}.hero-proof span{align-items:center;gap:6px;display:flex}.dark-proof{color:#516276}.hero-product-card{border:1px solid var(--line);box-shadow:var(--shadow-lg);background:linear-gradient(#fff,#f8fbfd);border-radius:24px;padding:23px}.product-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:19px;display:flex}.product-top>div{gap:3px;display:grid}.product-top small{font-size:.73rem}.product-top strong{font-size:.94rem}.product-kpis{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:10px;display:grid}.product-kpis>div{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;padding:15px}.product-kpis small,.product-task small{color:var(--muted);margin-bottom:5px;font-size:.73rem;display:block}.product-kpis strong{letter-spacing:-.035em;font-size:1.28rem;display:block}.product-kpis span{color:#7a8797;margin-top:5px;font-size:.69rem;display:block}.product-task{border-bottom:1px solid #edf1f4;align-items:center;gap:11px;padding:13px 5px;display:flex}.product-task:last-child{border-bottom:0}.product-task strong{font-size:.86rem;display:block}.attention-dot{background:#c58425;border-radius:50%;flex:none;width:9px;height:9px}.attention-dot.warning{background:#c58425}.attention-dot.success{background:var(--accent)}.attention-dot.info{background:var(--info)}.attention-dot.neutral{background:#8392a5}.marketing-section{max-width:1220px;margin:0 auto;padding:82px 24px}.section-heading{max-width:760px;margin-bottom:31px}.section-heading h2,.pricing-copy h2{letter-spacing:-.044em;margin:12px 0;font-size:clamp(2rem,3.2vw,3.3rem);line-height:1.07}.section-heading p,.pricing-copy p{color:var(--muted);max-width:680px;line-height:1.68}.feature-grid{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.feature-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:22px}.feature-icon{background:var(--brand-soft);width:42px;height:42px;color:var(--brand);border-radius:12px;place-items:center;display:grid}.feature-card h3{margin:17px 0 7px;font-size:.98rem}.feature-card p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.58}.pricing-section{background:var(--bg);grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:70px;padding:78px max(24px,50vw - 586px);display:grid}.pricing-copy p{margin-bottom:18px}.pricing-card{border:1px solid var(--line);box-shadow:var(--shadow-md);background:#fff;border-radius:22px;padding:26px}.price{align-items:baseline;gap:7px;margin:17px 0 5px;display:flex}.price strong{letter-spacing:-.05em;font-size:2.55rem}.price span{color:var(--muted)}.pricing-card>p{color:var(--muted);font-size:.84rem}.pricing-card ul{gap:10px;margin:20px 0;padding:0;list-style:none;display:grid}.pricing-card li{align-items:center;gap:8px;font-size:.84rem;display:flex}.pricing-card small{color:var(--muted);margin-top:12px;line-height:1.45;display:block}.security-band{background:var(--brand-strong);color:#fff;border-radius:20px;align-items:center;gap:17px;max-width:1172px;margin:64px auto;padding:28px 31px;display:flex}.security-band strong,.security-band span{display:block}.security-band span{color:#ffffffb3;margin-top:5px;font-size:.84rem;line-height:1.5}.marketing-footer{border-top:1px solid var(--line);max-width:1220px;color:var(--muted);justify-content:space-between;gap:16px;margin:0 auto;padding:30px 24px 40px;font-size:.75rem;display:flex}.auth-shell{background:#f8fafc;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);min-height:100vh;display:grid}.auth-hero{color:#fff;background:linear-gradient(145deg,#103657,#174f7b);flex-direction:column;justify-content:space-between;padding:54px 58px;display:flex}.auth-hero .brand-mark{color:#fff;background:#ffffff1f;border-color:#ffffff24}.auth-hero .brand-copy small{color:#ffffff9e}.auth-copy{max-width:690px}.auth-eyebrow{color:#b9e8d8;margin-bottom:17px}.auth-copy h1{letter-spacing:-.045em;max-width:690px;margin:0 0 20px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.03}.auth-copy p{color:#ffffffc2;max-width:610px;font-size:1.02rem;line-height:1.64}.auth-badges{flex-wrap:wrap;gap:9px;margin-top:23px;display:flex}.auth-badge{background:#ffffff17;border:1px solid #ffffff21;border-radius:999px;align-items:center;gap:6px;padding:8px 10px;font-size:.78rem;display:flex}.auth-footnote{color:#ffffff94}.auth-panel{place-items:center;padding:38px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);width:min(450px,100%);box-shadow:var(--shadow-md);border-radius:22px;padding:31px}.auth-card h2{letter-spacing:-.03em;margin:0 0 7px;font-size:1.65rem}.auth-card>p{color:var(--muted);margin:0 0 23px;font-size:.9rem;line-height:1.52}.auth-notice{margin-bottom:15px}.signup-disclosure{border-top:1px solid var(--line);margin-top:17px;padding-top:16px}.signup-disclosure summary{cursor:pointer;color:var(--brand);font-size:.86rem;font-weight:750}.signup-form{margin-top:15px}.login-demo-link{text-align:center;color:var(--muted);margin-top:18px;font-size:.79rem;display:block}.login-demo-link:hover{color:var(--brand)}.mobile-auth-brand{display:none}.onboarding{background:linear-gradient(#f7f9fc,#f3f6f9);place-items:center;min-height:100vh;padding:30px;display:grid}.onboarding-card{border:1px solid var(--line);width:min(760px,100%);box-shadow:var(--shadow-md);background:#fff;border-radius:22px;padding:31px}.price-pill{background:var(--accent-soft);color:#216a55;border-radius:999px;align-items:baseline;gap:5px;padding:8px 11px;font-weight:820;display:inline-flex}.price-pill small{font-weight:650}.app-frame{background:var(--bg);grid-template-columns:238px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{height:100vh;color:var(--ink);border-right:1px solid var(--line);z-index:30;background:#fff;flex-direction:column;padding:18px 13px;display:flex;position:sticky;top:0}.app-brand{padding:5px 7px 20px}.app-brand .brand-mark{width:38px;height:38px}.nav{gap:4px;display:grid}.nav-link{color:#607086;border-radius:10px;align-items:center;gap:10px;min-height:42px;padding:0 11px;font-size:.86rem;font-weight:690;transition:background .15s,color .15s;display:flex}.nav-link:hover{color:var(--brand);background:#f3f6f9}.nav-link.active{background:var(--brand-soft);color:var(--brand-strong);font-weight:790}.sidebar-bottom{border-top:1px solid var(--line);margin-top:auto;padding-top:15px}.org-mini{padding:10px 10px 4px}.org-mini strong{white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;display:block;overflow:hidden}.org-mini span{color:var(--muted);font-size:.7rem}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#fffffff0;justify-content:space-between;align-items:center;gap:14px;height:68px;padding:0 26px;display:flex;position:sticky;top:0}.searchbox{color:#7b899a;border:1px solid var(--line);background:#f6f8fa;border-radius:10px;align-items:center;gap:8px;width:min(500px,48vw);min-height:39px;padding:0 12px;display:flex}.searchbox span{white-space:nowrap;text-overflow:ellipsis;font-size:.81rem;overflow:hidden}.top-actions{gap:8px;display:flex}.icon-button{border:1px solid var(--line);color:#536478;cursor:pointer;background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.page{max-width:1510px;margin:0 auto;padding:26px}.page-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px;display:flex}.page-heading h1{letter-spacing:-.032em;margin:0;font-size:1.6rem}.page-heading p{color:var(--muted);margin:6px 0 0;font-size:.86rem;line-height:1.5}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kpi-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.kpi-card{padding:16px}.kpi-label{color:#718095;justify-content:space-between;align-items:center;gap:10px;font-size:.76rem;font-weight:720;display:flex}.kpi-value{letter-spacing:-.037em;margin-top:11px;font-size:1.55rem;font-weight:820}.kpi-foot{color:var(--muted);margin-top:7px;font-size:.72rem}.kpi-icon{background:var(--brand-soft);width:32px;height:32px;color:var(--brand);border-radius:10px;flex:none;place-items:center;display:grid}.content-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.82fr);gap:14px;margin-top:14px;display:grid}.panel{padding:18px}.panel-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.panel-title h2{letter-spacing:-.012em;margin:0;font-size:.95rem}.attention-list{gap:8px;display:grid}.attention-item{background:#fff;border:1px solid #e7ebf0;border-radius:11px;align-items:center;gap:11px;padding:11px 12px;display:flex}.attention-item strong{font-size:.84rem;display:block}.attention-item span{color:var(--muted);margin-top:3px;font-size:.73rem;display:block}.empty{text-align:center;color:var(--muted);padding:32px 16px;font-size:.83rem}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf1f4;padding:12px 13px;font-size:.81rem}th{letter-spacing:.04em;text-transform:uppercase;color:#788699;background:#fafbfd;font-size:.68rem;font-weight:780}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfd}.create-box{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:13px;margin-bottom:16px;overflow:hidden}.create-box summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;font-size:.84rem;font-weight:760;list-style:none;display:flex}.create-box summary::-webkit-details-marker{display:none}.create-box[open] summary{border-bottom:1px solid var(--line);background:#fcfdfe}.create-body{padding:16px}.demo-page{background:var(--bg);min-height:100vh}.demo-banner{background:var(--brand-strong);color:#fff;justify-content:center;align-items:center;gap:24px;height:38px;padding:0 15px;font-size:.73rem;font-weight:680;display:flex}.demo-banner a{color:#ffffffc7;align-items:center;gap:5px;display:flex}.demo-banner a:hover{color:#fff}.demo-frame{min-height:calc(100vh - 38px)}.demo-frame .sidebar{height:calc(100vh - 38px);top:38px}.demo-frame .topbar{top:38px}.demo-table-panel{margin-top:14px}@media (max-width:1100px){.hero-public{grid-template-columns:1fr;gap:42px;padding-top:55px}.hero-product-card{max-width:720px}.feature-grid{grid-template-columns:repeat(2,1fr)}.pricing-section{grid-template-columns:1fr;gap:32px}.pricing-card{max-width:520px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}}@media (max-width:900px){.marketing-links,.marketing-actions .secondary{display:none}.auth-shell{grid-template-columns:1fr}.auth-hero{display:none}.mobile-auth-brand{color:var(--brand);align-items:center;gap:10px;margin-bottom:22px;display:flex}.app-frame{padding-bottom:68px;display:block}.sidebar{height:64px;padding:7px 10px calc(7px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff7;display:block;position:fixed;inset:auto 0 0}.sidebar .app-brand,.sidebar-bottom{display:none}.nav{grid-template-columns:repeat(6,1fr);gap:2px;height:100%;display:grid}.nav-link{border-radius:9px;flex-direction:column;justify-content:center;gap:3px;min-height:50px;padding:4px 2px;font-size:.62rem}.nav-link svg{width:18px;height:18px}.workspace{min-height:100vh}.topbar{height:60px;padding:0 16px}.page{padding:20px 16px}.demo-frame{padding-bottom:68px}.demo-frame .sidebar{height:64px;top:auto}.demo-frame .topbar{top:38px}}@media (max-width:640px){.marketing-nav{min-height:68px;padding:10px 16px}.public-brand .brand-copy small{display:none}.public-brand .brand-copy strong{font-size:.84rem}.marketing-actions .button{min-height:38px;padding:0 12px;font-size:.79rem}.hero-public{padding:42px 18px 56px}.hero-public h1{font-size:2.65rem}.hero-public p{font-size:.96rem}.hero-public .actions-row{align-items:stretch}.hero-public .actions-row .button{width:100%}.hero-proof{gap:10px 14px}.hero-product-card{border-radius:19px;padding:17px}.product-kpis{grid-template-columns:1fr}.marketing-section{padding:58px 18px}.feature-grid{grid-template-columns:1fr}.pricing-section{padding:58px 18px}.security-band{align-items:flex-start;margin:38px 18px;padding:23px}.marketing-footer{flex-direction:column;padding:27px 18px}.auth-panel{padding:18px}.auth-card{border-radius:18px;padding:24px 21px}.onboarding{padding:16px}.onboarding-card{border-radius:18px;padding:22px}.form-grid.two{grid-template-columns:1fr}.page-heading{flex-direction:column;align-items:flex-start;margin-bottom:17px}.page-heading h1{font-size:1.45rem}.kpi-grid{grid-template-columns:1fr;gap:9px}.kpi-card{padding:14px}.kpi-value{font-size:1.42rem}.searchbox{flex:1;width:auto}.searchbox span{font-size:.75rem}.top-actions{flex:none}.panel{padding:14px}.table-wrap{margin:0 -2px}.nav-link{font-size:.56rem}.demo-banner{justify-content:space-between;gap:10px;font-size:.65rem}}.client-portal-shell{background:var(--bg);min-height:100vh}.client-portal-header{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:12px max(20px,50vw - 590px);display:flex;position:sticky;top:0}.client-portal-user{align-items:center;gap:14px;display:flex}.client-portal-user>div{text-align:right;gap:2px;display:grid}.client-portal-user strong{font-size:.82rem}.client-portal-user span{color:var(--muted);font-size:.7rem}.client-portal-main{width:min(1180px,100% - 40px);margin:0 auto;padding:34px 0 54px}.client-portal-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;display:flex}.client-portal-heading h1{letter-spacing:-.04em;margin:8px 0 6px;font-size:clamp(1.7rem,3vw,2.35rem)}.client-portal-heading p{color:var(--muted);max-width:720px;margin:0;line-height:1.55}.client-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.client-kpi{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;align-items:center;gap:12px;padding:15px;display:flex}.client-kpi>span{background:var(--brand-soft);width:38px;height:38px;color:var(--brand);border-radius:11px;flex:none;place-items:center;display:grid}.client-kpi>div{gap:4px;min-width:0;display:grid}.client-kpi small{color:var(--muted);font-size:.7rem;font-weight:700}.client-kpi strong{letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font-size:1.13rem;overflow:hidden}.client-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.portal-panel{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;min-width:0;margin-bottom:14px;padding:18px}.portal-list{display:grid}.portal-list-row{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:10px 2px;display:flex}.portal-list-row:last-child{border-bottom:0}.portal-list-row>div{gap:4px;min-width:0;display:grid}.portal-list-row strong{text-overflow:ellipsis;font-size:.84rem;overflow:hidden}.portal-list-row span:not(.badge){color:var(--muted);font-size:.73rem;line-height:1.4}.tenant-due-card{color:#fff;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#123c61,#174f7b);border-radius:16px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:14px;padding:20px 22px;display:flex}.tenant-due-card.overdue{background:linear-gradient(135deg,#853535,#a94747)}.tenant-due-card>div:first-child{gap:4px;display:grid}.tenant-due-card small{color:#ffffffb8;font-weight:700}.tenant-due-card strong{letter-spacing:-.035em;font-size:1.75rem}.tenant-due-card span{color:#ffffffc2;font-size:.78rem}.tenant-due-card .button.secondary{color:#fff;box-shadow:none;background:#ffffff1f;border-color:#ffffff4d}.tenant-due-card .button.primary{color:var(--brand-strong);box-shadow:none;background:#fff}.tenant-contract{border-bottom:1px solid #edf1f4;gap:5px;padding:12px 0;display:grid}.tenant-contract:last-child{border-bottom:0}.tenant-contract>strong{font-size:.88rem}.tenant-contract>span{color:var(--muted);font-size:.75rem;line-height:1.4}.tenant-contract-meta{flex-wrap:wrap;gap:7px;margin-top:4px;display:flex}.tenant-contract-meta span{background:var(--surface-soft);color:#607086;border-radius:8px;padding:6px 8px;font-size:.68rem;font-weight:680}.portal-login-page{background:radial-gradient(circle at 50% 0,#edf4fa 0,#f6f8fb 48% 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.portal-login-card{border:1px solid var(--line);width:min(460px,100%);box-shadow:var(--shadow-md);background:#fff;border-radius:22px;padding:30px}.portal-login-heading{margin:27px 0 20px}.portal-login-heading h1{letter-spacing:-.035em;margin:12px 0 8px;font-size:1.65rem}.portal-login-heading p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.55}.portal-login-icon{background:var(--brand-soft);width:42px;height:42px;color:var(--brand);border-radius:12px;place-items:center;display:grid}.portal-login-security{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:8px;margin-top:17px;padding-top:15px;font-size:.75rem;line-height:1.45;display:flex}.portal-login-security svg{color:var(--accent);flex:none;margin-top:1px}.portal-selector{width:min(920px,100% - 36px);min-height:100vh;margin:0 auto;padding:58px 0}.portal-selector-head{align-items:center;gap:13px;margin-bottom:24px;display:flex}.portal-selector-head h1{letter-spacing:-.035em;margin:0 0 4px;font-size:1.8rem}.portal-selector-head p{color:var(--muted);margin:0}.portal-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.portal-access-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:15px;align-items:center;gap:14px;padding:18px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.portal-access-card:hover{box-shadow:var(--shadow-md);border-color:#c7d4e0;transform:translateY(-2px)}.portal-access-card>div:last-child{gap:3px;min-width:0;display:grid}.portal-access-card small{color:var(--accent);text-transform:uppercase;letter-spacing:.055em;font-size:.65rem;font-weight:780}.portal-access-card strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.portal-access-card span:not(.feature-icon){color:var(--muted);font-size:.74rem}.portal-empty{border:1px solid var(--line);text-align:center;box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:42px 24px}.portal-empty>svg{color:var(--brand);margin:0 auto 10px}.portal-empty h2{margin:0 0 7px;font-size:1.1rem}.portal-empty p{max-width:520px;color:var(--muted);margin:0 auto 18px;font-size:.84rem;line-height:1.55}.table-contact{gap:3px;display:grid}.table-contact small{color:var(--muted)}.portal-admin-cell{min-width:250px}.portal-enable-actions,.portal-inline-actions{flex-wrap:wrap;gap:6px;display:flex}.portal-access-statuses{gap:8px;display:grid}.portal-access-status{gap:6px;display:grid}.mini-action{border:1px solid var(--line);color:#536478;min-height:29px;font:inherit;cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:0 8px;font-size:.68rem;font-weight:720;display:inline-flex}.mini-action:hover{color:var(--brand);background:#f7f9fb;border-color:#cbd5e1}@media (max-width:900px){.client-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.client-grid-two{grid-template-columns:1fr}.client-portal-header{padding:11px 16px}.client-portal-main{width:min(100% - 32px,1180px);padding-top:25px}}@media (max-width:640px){.client-portal-header .brand-copy small,.client-portal-user>div{display:none}.client-portal-user .button{width:38px;padding:0;font-size:0}.client-portal-user .button svg{width:16px;height:16px}.client-portal-main{width:min(100% - 28px,1180px);padding:22px 0 38px}.client-kpis{grid-template-columns:1fr;gap:9px}.client-grid-two{gap:0}.portal-panel{padding:14px}.tenant-due-card{flex-direction:column;align-items:flex-start;padding:18px}.tenant-due-card .actions-row{width:100%}.tenant-due-card .button{flex:1}.portal-access-grid{grid-template-columns:1fr}.portal-selector{padding:34px 0}.portal-login-page{padding:16px}.portal-login-card{border-radius:18px;padding:24px 20px}}.online-charge-status{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.compact-select{border:1px solid var(--line);min-height:34px;color:var(--ink);background:#fff;border-radius:9px;padding:6px 8px;font-size:.73rem}.settings-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-card-head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.settings-card-head h2{margin:0;font-size:18px}.settings-card-head p{color:var(--muted);margin:3px 0 0}.settings-icon,.provider-icon{background:var(--surface-soft);width:38px;height:38px;color:var(--primary);border-radius:12px;flex:none;place-items:center;display:grid}.settings-price{letter-spacing:-.03em;margin:8px 0 16px;font-size:30px;font-weight:800}.settings-price small{color:var(--muted);margin-left:4px;font-size:13px;font-weight:600}.settings-list{gap:9px;display:grid}.settings-list span{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:18px;padding-top:9px;display:flex}.settings-list strong{color:var(--text);text-align:right}.integration-health{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.health-item{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;padding:12px}.health-item span{color:var(--muted);margin-bottom:5px;font-size:12px;display:block}.health-item strong{font-size:13px}.health-ok{color:#12743d}.health-warn{color:#a85f00}.webhook-box{border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding:12px 14px;display:flex}.webhook-box strong{margin-bottom:5px;font-size:12px;display:block}.webhook-box code{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.provider-card{border:1px solid var(--border);background:var(--surface);border-radius:13px;gap:12px;padding:14px;display:flex}.provider-copy{flex:1;min-width:0}.provider-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.provider-copy p{color:var(--muted);margin:7px 0 0;font-size:12px;line-height:1.45}@media (max-width:900px){.settings-grid,.provider-grid{grid-template-columns:1fr}.integration-health{grid-template-columns:1fr 1fr}}@media (max-width:560px){.integration-health{grid-template-columns:1fr}.settings-list span{display:block}.settings-list strong{text-align:left;margin-top:3px;display:block}}
