
/* Altrix Employee Portal Rev4 — single editor architecture */
.shell{grid-template-columns:250px minmax(0,1fr)!important}
.shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)!important}
aside{box-sizing:border-box!important;padding:18px 12px!important;overflow:hidden!important}
aside button{box-sizing:border-box!important;width:100%!important;padding:13px 14px!important;text-align:left!important}
main{width:100%!important;max-width:none!important;min-width:0!important;padding:28px 32px!important;box-sizing:border-box!important}

/* CRITICAL: editor is one column; embedded document is render source only */
#quote .builder,#proposal .builder{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;width:100%!important;max-width:none!important
}
#quote .builder>div:first-child,#proposal .builder>div:first-child{width:100%!important;max-width:none!important;min-width:0!important}
#quoteDoc,#proposalDoc{
 display:none!important;position:absolute!important;left:-100000px!important;top:auto!important;
 width:210mm!important;visibility:hidden!important;pointer-events:none!important
}
.tool-heading{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:24px!important}
.tool-actions{justify-content:flex-end!important}
.card,.form-section{max-width:none!important;width:100%!important;box-sizing:border-box!important}
.grid2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.table-wrap{width:100%!important}.boq-editor{width:100%!important;min-width:900px!important}

/* One preview system only */
#altrix-preview-r4{display:none;position:fixed;inset:0;z-index:20000;background:rgba(2,15,27,.82);backdrop-filter:blur(6px);padding:22px;overflow:auto}
body.altrix-preview-open{overflow:hidden!important}
body.altrix-preview-open #altrix-preview-r4{display:block!important}
.r4-dialog{max-width:1180px;margin:0 auto;background:#eef4f8;border-radius:18px;overflow:hidden;box-shadow:0 28px 90px rgba(0,0,0,.38)}
.r4-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;background:#071827;color:#fff;padding:13px 18px}
.r4-toolbar-actions{display:flex;gap:9px}.r4-toolbar button{border:0;border-radius:9px;padding:10px 15px;font-weight:800;cursor:pointer}
.r4-close{background:#fff;color:#12324b}.r4-print{background:#1598dc;color:#fff}
.r4-body{padding:26px}.r4-document{max-width:210mm;margin:0 auto;background:#fff;box-shadow:0 10px 30px rgba(8,37,59,.16)}
.r4-document .doc{display:block!important;visibility:visible!important;position:static!important;left:auto!important;width:auto!important;min-height:0!important;box-shadow:none!important}

/* Header readability */
.top{gap:20px!important;padding:8px 24px!important;min-height:76px!important}
.top>span:nth-child(2){color:#d8e9f5!important;font-weight:800!important;white-space:nowrap}
#serialTop{color:#b8d1e2!important;white-space:nowrap}

/* MFA: centered professional security card; protects against generic card CSS */
body.altrix-mfa-page{margin:0!important;min-height:100vh!important;display:grid!important;place-items:center!important;background:radial-gradient(circle at 50% 15%,#f8fbfd 0,#edf4f8 48%,#e6eff5 100%)!important;padding:24px!important;box-sizing:border-box!important}
body.altrix-mfa-page .mfa-card{width:min(480px,100%)!important;max-width:480px!important;background:#fff!important;border:1px solid #d6e2ea!important;border-radius:20px!important;padding:34px!important;box-shadow:0 20px 55px rgba(8,39,62,.12)!important;box-sizing:border-box!important}
.mfa-brand{display:flex;justify-content:center;margin-bottom:22px}.mfa-brand img{height:62px;width:auto;max-width:260px}
.mfa-kicker{font-size:11px;font-weight:900;letter-spacing:.12em;color:#118bd0;text-transform:uppercase}
body.altrix-mfa-page h1{font-size:28px!important;margin:7px 0 8px!important;color:#0b2b45!important}
body.altrix-mfa-page p{color:#61788b!important;line-height:1.55!important}
body.altrix-mfa-page input{width:100%!important;box-sizing:border-box!important;text-align:center!important;letter-spacing:.28em!important;font-size:24px!important;padding:14px!important;margin-top:8px!important}
body.altrix-mfa-page .btn{width:100%!important;margin-top:14px!important;min-height:48px!important}
.mfa-help{text-align:center;font-size:12px;margin-top:15px!important}

@media(max-width:1100px){
 .shell{grid-template-columns:1fr!important}
 main{padding:20px!important}
 .grid2{grid-template-columns:1fr!important}
 .tool-heading{flex-direction:column!important}.tool-actions{justify-content:flex-start!important}
}
@media print{
 body.altrix-preview-open>*:not(#altrix-preview-r4){display:none!important}
 #altrix-preview-r4{display:block!important;position:static!important;padding:0!important;background:#fff!important;overflow:visible!important}
 .r4-toolbar{display:none!important}.r4-dialog,.r4-body,.r4-document{max-width:none!important;margin:0!important;padding:0!important;box-shadow:none!important;border-radius:0!important;background:#fff!important}
 .r4-document .doc{padding:0!important}
 thead{display:table-header-group!important}tr,td,th{break-inside:avoid!important;page-break-inside:avoid!important}
}
