/* CSS pixels describe available space, independently of the physical screen diagonal. */
html{scroll-padding-bottom:4rem}body{min-width:0}img,video,canvas,svg{max-width:100%}input,select,textarea{max-width:100%}button,a{overflow-wrap:anywhere}button{touch-action:manipulation}.content,.main,.panel,.card-body,.field,.table-wrap,main{min-width:0}.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.form-grid>*{min-width:0}.section-tabs{max-width:100%;overflow-x:auto;white-space:nowrap}.heading-actions,.form-actions,.panel-head{flex-wrap:wrap}dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}input:not([type=checkbox]):not([type=radio]),select,button{min-height:44px}input[type=checkbox],input[type=radio]{flex-shrink:0}textarea{min-height:96px}th,td{overflow-wrap:anywhere}td input{min-width:90px}td:first-child input{min-width:160px}.screen-launch{position:fixed;right:16px;bottom:16px;z-index:45;min-height:44px;border:1px solid #9cb0a2;background:#fff;color:#173e32;box-shadow:0 3px 14px #193d3220;border-radius:24px;padding:8px 18px;font:600 14px system-ui;cursor:pointer}.screen-dialog{width:min(520px,calc(100vw - 24px));padding:24px;border:1px solid #b8c8bd;border-radius:14px;color:#203d32;background:#fff;font:16px/1.5 system-ui;z-index:100}.screen-dialog::backdrop{background:#0b211bb3}.screen-dialog h2{margin:0 0 12px}.screen-dialog label{display:block;margin:16px 0 8px;font-weight:600}.screen-dialog select{display:block;width:100%;font:inherit;padding:10px;border:1px solid #a4b8a8;background:#fff;color:#203d32;border-radius:7px}.screen-dialog .screen-check{display:flex;align-items:flex-start;gap:10px;font-weight:400}.screen-dialog input{width:20px;min-width:20px;min-height:20px;margin-top:3px}.screen-help{color:#4f6558;font-size:14px}.screen-buttons{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.screen-buttons button{border:1px solid #a4b8a8;border-radius:8px;background:#eef3eb;padding:10px 16px;color:#203d32;font:inherit}.screen-buttons button[type=submit]{background:#174d3b;color:#fff}.screen-dialog :focus-visible,.screen-launch:focus-visible{outline:3px solid #b27818;outline-offset:3px}
html[data-screen=desktop] .main{max-width:1700px;margin-inline:auto;width:100%}html[data-screen=laptop] .main{max-width:1280px;margin-inline:auto;width:100%;padding:24px}html[data-screen=tablet] .main{padding:20px}html[data-screen=mobile] .main{padding:16px}
html[data-screen=tablet] .layout,html[data-screen=mobile] .layout{display:block}html[data-screen=tablet] .layout>.content,html[data-screen=mobile] .layout>.content{grid-column:auto;margin-left:0;width:100%;max-width:100%}html[data-screen=tablet] .sidebar,html[data-screen=mobile] .sidebar{transform:translateX(-100%);width:min(290px,88vw);padding:20px 14px;transition:transform .15s}html[data-screen=tablet] .sidebar.open,html[data-screen=mobile] .sidebar.open,html[data-screen=tablet] body.menu-open .sidebar,html[data-screen=mobile] body.menu-open .sidebar{transform:translateX(0)}html[data-screen=tablet] .mobile-toggle,html[data-screen=mobile] .mobile-toggle{display:inline-flex}html[data-screen=tablet] .topbar,html[data-screen=mobile] .topbar{position:sticky;top:0;height:auto;min-height:64px;padding:12px 16px;gap:10px;flex-wrap:wrap;z-index:14}html[data-screen=tablet] .three-col,html[data-screen=tablet] .four-col,html[data-screen=tablet] .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-screen=mobile] .three-col,html[data-screen=mobile] .four-col,html[data-screen=mobile] .two-col,html[data-screen=mobile] .metrics-grid,html[data-screen=mobile] .form-grid,html[data-screen=mobile] .dashboard-grid{grid-template-columns:minmax(0,1fr)}html[data-screen=mobile] .field.full{grid-column:auto}html[data-screen=mobile] .page-heading{display:flex;flex-direction:column;align-items:stretch;gap:16px}html[data-screen=mobile] .heading-actions{display:flex;align-items:stretch;gap:8px}html[data-screen=mobile] .heading-actions>.btn{flex:1 1 140px}html[data-screen=mobile] .crumb-home,html[data-screen=mobile] .demo-pill,html[data-screen=mobile] .search-button kbd{display:none}html[data-screen=mobile] .search-button{font-size:0;min-width:44px;padding:10px}html[data-screen=mobile] .top-actions{gap:6px;margin-left:auto}html[data-screen=mobile] .dialog-body{padding:16px}html[data-screen=mobile] .dialog-head{padding:16px;gap:12px}html[data-screen=mobile] h1{font-size:1.7rem}html[data-screen=mobile] h2{font-size:1.25rem}html[data-screen=mobile] .setting-row{flex-wrap:wrap;gap:12px}html[data-screen=mobile] .toggle-options{flex-wrap:wrap}html[data-screen=mobile] .account-card{padding:18px}html[data-screen=mobile] .calendar-grid{overflow:auto}html[data-screen=mobile] main,html[data-screen=tablet] main{overflow-wrap:anywhere}
/* A narrower selected profile changes layout on a wider monitor too. */
html[data-screen-choice=mobile] body>.layout,html[data-screen-choice=mobile] #app>.layout{max-width:480px;margin-inline:auto}html[data-screen-choice=tablet] #app>.layout{max-width:1080px;margin-inline:auto}html[data-screen-choice=mobile] body>main,html[data-screen-choice=mobile] body>.topbar,html[data-screen-choice=mobile] body>header,html[data-screen-choice=mobile] body>footer{max-width:480px;margin-inline:auto}html[data-screen-choice=tablet] body>main,html[data-screen-choice=tablet] body>header,html[data-screen-choice=tablet] body>.topbar{max-width:1080px;margin-inline:auto}
/* Shared portal / client layouts. Tables keep their own accessible horizontal scroll area. */
html[data-screen=mobile] .hero,html[data-screen=mobile] .hero-grid,html[data-screen=mobile] .feature-grid,html[data-screen=mobile] .pricing-grid,html[data-screen=mobile] .steps-grid,html[data-screen=mobile] .stats-grid,html[data-screen=mobile] .intro,html[data-screen=mobile] .documents-grid,html[data-screen=mobile] .client-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}html[data-screen=mobile] .section,html[data-screen=mobile] .container,html[data-screen=mobile] body>main{padding-left:16px;padding-right:16px}html[data-screen=mobile] .hero h1{font-size:2rem}html[data-screen=mobile] .header-inner,html[data-screen=mobile] .nav-inner{flex-wrap:wrap;gap:12px}html[data-screen=mobile] header nav{flex-wrap:wrap;gap:8px}html[data-screen=mobile] .intro{padding:22px}html[data-screen=mobile] .intro h1{font-size:1.7rem}html[data-screen=mobile] .modal{max-width:calc(100vw - 24px)!important;padding:20px!important}html[data-screen=tablet] .pricing-grid,html[data-screen=tablet] .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-screen=mobile] footer{padding-bottom:72px}html[data-screen=mobile] .main{padding-bottom:88px}
@media(max-width:639px){html{overflow-x:clip}dialog{margin:12px auto}.form-grid,.three-col,.two-col{grid-template-columns:minmax(0,1fr)!important}.page-heading{flex-wrap:wrap}.screen-launch{right:12px;bottom:12px}.topbar{max-width:100%}.panel-head{gap:12px}.panel-head h2{min-width:0}.card-body{padding:16px}.main table{min-width:600px}.setting-row{flex-wrap:wrap} .top-actions{flex-wrap:wrap}.metric-number{font-size:1.5rem}.cashflow-chart{max-width:100%;overflow:auto}}
@media print{.screen-launch,.screen-dialog{display:none!important}html[data-screen] .sidebar{display:none!important}html[data-screen] .layout,html[data-screen-choice] #app>.layout{display:block;max-width:none}html[data-screen] .main{max-width:none;padding:0}html[data-screen] .topbar{position:static}html{overflow:visible}}

html[data-screen=mobile] .offer-grid,html[data-screen=mobile] .principles,html[data-screen=mobile] .workflow-inner,html[data-screen=mobile] .launch-inner,html[data-screen=mobile] .workspace-body,html[data-screen=mobile] .metrics,html[data-screen=mobile] .summary-grid,html[data-screen=mobile] .stat-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}html[data-screen=tablet] .offer-grid,html[data-screen=tablet] .feature-grid,html[data-screen=tablet] .metrics,html[data-screen=tablet] .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-screen=mobile] .header-actions{flex-wrap:wrap;gap:8px}html[data-screen=mobile] .hero{padding:30px 16px}html[data-screen=mobile] .hero-stage{min-width:0;max-width:100%;overflow:hidden}html[data-screen=mobile] .workspace-preview{max-width:100%;width:100%}html[data-screen=mobile] .contact-banner{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:20px}html[data-screen=mobile] .platform-header{flex-direction:column;align-items:stretch;padding:16px;gap:12px}html[data-screen=mobile] .platform-main{padding:16px;max-width:100%;overflow-wrap:anywhere}html[data-screen=tablet] .platform-main{padding:20px}html[data-screen=mobile] .platform-main>.section-tabs{white-space:normal;display:flex;flex-wrap:wrap}html[data-screen=mobile] .platform-main>.section-tabs .btn{flex:1 1 130px}html[data-screen=mobile] .site-footer{padding:28px 16px 85px}html[data-screen=mobile] .legal-links,html[data-screen=mobile] .site-footer nav{flex-wrap:wrap}html[data-screen=mobile] .topbar .brand{white-space:normal}html[data-screen=mobile] .header-inner .brand{font-size:1.15rem}html[data-screen=mobile] .line-editor{max-width:100%;overflow-x:auto}html[data-screen=mobile] .paper-head,html[data-screen=mobile] .paper-client{display:flex;flex-wrap:wrap;gap:16px}html[data-screen=mobile] .document-view{padding:16px;overflow:auto}html[data-screen=mobile] .paper-actions{display:flex;flex-wrap:wrap;gap:8px}html[data-screen=mobile] .cookie-dialog{max-width:calc(100vw - 24px)}

body{padding-bottom:64px}@media print{body{padding-bottom:0}}

/* Tablet rail remains accessible in both orientations. */
html[data-screen=tablet] .layout{display:grid;grid-template-columns:210px minmax(0,1fr)}
html[data-screen=tablet] .layout>.content{grid-column:2;width:100%;margin:0}
html[data-screen=tablet] .sidebar{transform:none!important;width:210px;padding:18px 10px;left:0;overflow-y:auto}
html[data-screen=tablet] .mobile-toggle{display:none}
html[data-screen=tablet] .sidebar .brand{padding:0 4px 18px}
html[data-screen=tablet] .nav-item{padding:10px 8px;white-space:normal}
html[data-screen=tablet] .main{padding:16px}
html[data-screen=tablet] .heading-actions{flex-shrink:1;flex-wrap:wrap}
html[data-screen=tablet] .page-heading{flex-wrap:wrap}
html[data-screen-choice=tablet] #app>.layout{max-width:none}
@media(min-width:640px) and (max-width:899px){html[data-screen=tablet] .layout{grid-template-columns:174px minmax(0,1fr)}html[data-screen=tablet] .sidebar{width:174px}html[data-screen=tablet] .brand strong{font-size:1rem}html[data-screen=tablet] .form-grid,html[data-screen=tablet] .two-col{grid-template-columns:minmax(0,1fr)}}
.tenant-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:18px;margin-top:20px}
.tenant-card{min-width:0;border:1px solid #cad7ca;background:white;border-radius:12px;padding:20px;overflow-wrap:anywhere}
.tenant-card h2{font-size:1.2rem;margin:0 0 8px}.tenant-card p{margin:6px 0}.tenant-open{margin:16px 0}.tenant-open .btn{white-space:normal;width:100%}.tenant-card details{border-top:1px solid #dce5dc;padding-top:12px}.tenant-card summary{cursor:pointer}.tenant-card .row-actions{margin-top:12px}.tenant-card .btn{white-space:normal;max-width:100%}
/* Internal version and deployment notices are maintained in operator documentation. */
.demo-pill{display:none!important}
@media print{html[data-screen=tablet] .layout{display:block}html[data-screen=tablet] .sidebar{display:none!important}}
/* Keep full words readable in the narrow tablet rail, including the active item. */
html[data-screen=tablet] .nav-item{position:relative;gap:6px}
html[data-screen=tablet] .nav-item>span:not(.nav-count){flex:1;min-width:0;overflow-wrap:normal;word-break:normal}
html[data-screen=tablet] .nav-count{position:absolute;top:2px;right:2px;min-width:14px;padding:1px 3px;font-size:.65rem}
@media(min-width:640px) and (max-width:899px){html[data-screen=tablet] .nav-item{font-size:.84rem;padding:10px 6px}html[data-screen=tablet] .nav-item svg{width:18px;height:18px}}
