/* GCNM v13.5 — liquid application shell, responsive module surfaces and form focus reliability */
:root{--g135-rail:64px;--g135-panel:292px;--g135-sidebar:356px;--g135-bg:#f3f6f3;--g135-surface:#fff;--g135-ink:#17342b;--g135-muted:#66786f;--g135-forest:#0f3b30;--g135-green:#21624e;--g135-gold:#d3a833;--g135-line:#dbe5df}
html,body{max-width:100%;overflow-x:hidden}
body.v2-shell,body.v2-shell button,body.v2-shell input,body.v2-shell textarea,body.v2-shell select,body.v2-shell .tk-panel,body.v2-shell .content-wrapper{font-family:"Segoe UI Variable","Segoe UI",Roboto,Arial,sans-serif!important}
body.v2-shell .layout-wrapper,body.v2-shell .layout-container{width:100%!important;max-width:100%!important;min-width:0!important}
body.v2-shell .layout-container{display:flex!important;align-items:stretch!important}

/* Desktop sidebar stays in the document flow instead of sitting over the page. */
@media (min-width:992px){
  body.v2-shell #mobileMenu{position:sticky!important;inset:auto!important;top:0!important;height:100vh!important;width:var(--g135-sidebar)!important;min-width:var(--g135-sidebar)!important;max-width:var(--g135-sidebar)!important;flex:0 0 var(--g135-sidebar)!important;display:flex!important;transform:none!important;visibility:visible!important;box-shadow:none!important;background:transparent!important}
  body.v2-shell .tk-rail{position:relative!important;inset:auto!important;width:var(--g135-rail)!important;min-width:var(--g135-rail)!important;flex:0 0 var(--g135-rail)!important;height:100vh!important;transform:none!important}
  body.v2-shell .tk-panel{position:relative!important;inset:auto!important;width:var(--g135-panel)!important;min-width:var(--g135-panel)!important;max-width:var(--g135-panel)!important;flex:0 0 var(--g135-panel)!important;height:100vh!important;transform:none!important}
  body.v2-shell .layout-page{padding-left:0!important;margin-left:0!important;min-width:0!important;width:auto!important;max-width:calc(100vw - var(--g135-sidebar))!important;flex:1 1 auto!important}
  body.v2-shell.gcnm-panel-collapsed #mobileMenu{width:var(--g135-rail)!important;min-width:var(--g135-rail)!important;max-width:var(--g135-rail)!important;flex-basis:var(--g135-rail)!important}
  body.v2-shell.gcnm-panel-collapsed .tk-panel{display:none!important}
  body.v2-shell.gcnm-panel-collapsed .layout-page{max-width:calc(100vw - var(--g135-rail))!important}
}

/* Mobile/tablet: true off-canvas navigation; content always gets the whole viewport. */
@media (max-width:991.98px){
  body.v2-shell #mobileMenu{position:fixed!important;inset:0 auto 0 0!important;width:min(380px,94vw)!important;max-width:94vw!important;height:100vh!important;z-index:1085!important}
  body.v2-shell .tk-rail{width:64px!important;min-width:64px!important;flex:0 0 64px!important;position:relative!important;inset:auto!important;height:100%!important}
  body.v2-shell .tk-panel{width:calc(min(380px,94vw) - 64px)!important;min-width:0!important;max-width:none!important;flex:1 1 auto!important;position:relative!important;inset:auto!important;height:100%!important}
  body.v2-shell .layout-page{padding-left:0!important;margin-left:0!important;min-width:0!important;width:100%!important;max-width:100vw!important;flex:1 1 100%!important}
}

/* Navigation readability: no ellipsis on short module names and no clipped glyphs. */
body.v2-shell .tk-panel-body{overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable}
body.v2-shell .tk-panel-item{width:100%!important;min-width:0!important;padding:10px 12px!important}
body.v2-shell .tk-panel-item>span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:normal!important;overflow-wrap:anywhere!important;line-height:1.35!important}
body.v2-shell .tk-panel-label,body.v2-shell .tk-panel-title,body.v2-shell .gcnm-panel-story{max-width:100%;overflow-wrap:anywhere}
.gcnm-panel-search-row{display:grid!important;grid-template-columns:minmax(0,1fr) 36px!important;gap:7px!important;align-items:center!important;padding-right:9px!important}
.gcnm-panel-search-row input{min-width:0!important}
.gcnm-panel-collapse{width:34px;height:34px;border:1px solid #cfdad4;border-radius:9px;background:#fff;color:#154637;display:grid;place-items:center;font-size:20px;cursor:pointer;transition:.18s ease}
.gcnm-panel-collapse:hover{background:#eaf2ee;color:#0d382c}
@media(max-width:991.98px){.gcnm-panel-collapse{display:none!important}}

/* Main surface is genuinely liquid and never sits underneath the navigation. */
body.v2-shell .content-wrapper{position:relative!important;z-index:1!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;background:var(--g135-bg)!important}
body.v2-shell .content-wrapper>.container-fluid,body.v2-shell .content-wrapper>.container-xxl,body.v2-shell .content-wrapper>.container-xl,body.v2-shell .content-wrapper>.container-lg,body.v2-shell .gcnm-page{width:100%!important;max-width:none!important;min-width:0!important;margin-inline:0!important;padding-inline:clamp(16px,2.15vw,36px)!important}
body.v2-shell .gcnm26-dashboard{max-width:none!important;margin-inline:0!important}
body.v2-shell .row>*{min-width:0}
body.v2-shell .card,body.v2-shell .gcnm-card,body.v2-shell .gcnm26-panel{min-width:0;max-width:100%;overflow:visible}
body.v2-shell .table-responsive{width:100%;max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch}

/* Interactive field reliability. Enabled fields always remain focusable/clickable. */
body.v2-shell .content-wrapper form{position:relative;z-index:1;min-width:0}
body.v2-shell .content-wrapper form input:not([type=hidden]):not([disabled]):not([readonly]),body.v2-shell .content-wrapper form textarea:not([disabled]):not([readonly]),body.v2-shell .content-wrapper form select:not([disabled]),body.v2-shell .content-wrapper [contenteditable=true]{position:relative!important;z-index:2!important;pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important;touch-action:manipulation!important}
body.v2-shell .content-wrapper form input:not([type=hidden]):not([disabled]):not([readonly]):focus,body.v2-shell .content-wrapper form textarea:not([disabled]):not([readonly]):focus,body.v2-shell .content-wrapper form select:not([disabled]):focus{outline:0!important;border-color:#2f755c!important;box-shadow:0 0 0 3px rgba(47,117,92,.14)!important;background:#fff!important}
body.v2-shell .tox-tinymce,body.v2-shell .select2-container,body.v2-shell .input-group{position:relative;z-index:2;max-width:100%}
body.v2-shell .tox .tox-edit-area__iframe{pointer-events:auto!important}
body.v2-shell fieldset:not([disabled]){pointer-events:auto!important}

/* Dynamic dashboard scales instead of clipping cards. */
body.v2-shell .gcnm26-command{grid-template-columns:minmax(0,1fr) minmax(260px,340px)!important;gap:clamp(24px,3vw,48px)!important;padding:clamp(26px,3vw,42px)!important}
body.v2-shell .gcnm26-command h1{font-size:clamp(1.8rem,2.7vw,2.8rem)!important;overflow-wrap:anywhere}
body.v2-shell .gcnm26-metrics{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:14px!important}
body.v2-shell .gcnm26-metric{min-width:0!important;height:auto!important;min-height:148px!important}
body.v2-shell .gcnm26-actions-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}
body.v2-shell .gcnm-v13-feature-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;gap:14px!important}

/* Forms and modal editors collapse cleanly at every breakpoint. */
body.v2-shell .modal-dialog{width:auto!important;max-width:min(980px,calc(100vw - 28px))!important;margin-inline:auto!important}
body.v2-shell .modal-content{max-height:calc(100vh - 28px);overflow:hidden}
body.v2-shell .modal-body{overflow:auto!important;overscroll-behavior:contain}
body.v2-shell .form-control,body.v2-shell .form-select,body.v2-shell textarea,body.v2-shell .select2-container{max-width:100%!important}
body.v2-shell textarea{resize:vertical!important}

@media(max-width:1199.98px){body.v2-shell .gcnm26-command{grid-template-columns:1fr!important}.gcnm26-command-side{max-width:520px}.gcnm-invoice-item-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:767.98px){body.v2-shell .content-wrapper>.container-fluid,body.v2-shell .content-wrapper>.container-xxl,body.v2-shell .gcnm-page{padding-inline:12px!important}.gcnm26-command{border-radius:16px!important}.gcnm26-command-actions .btn{flex:1 1 170px}.gcnm-v13-feature-grid{grid-template-columns:1fr!important}}
@media(max-width:575.98px){.gcnm-invoice-item-row{grid-template-columns:1fr!important}.gcnm26-metrics{grid-template-columns:1fr 1fr!important}.gcnm26-metric{min-height:132px!important;padding:15px!important}.gcnm26-command-actions .btn{width:100%;flex-basis:100%}.table-responsive{border-radius:10px}}
@media(max-width:420px){.gcnm26-metrics{grid-template-columns:1fr!important}}
/* Story-led workspace launcher */
.gcnm135-workspaces{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.gcnm135-workspaces>a{position:relative;min-width:0;display:flex;gap:12px;align-items:flex-start;padding:18px 16px;border:1px solid var(--g135-line);border-radius:16px;background:linear-gradient(145deg,#fff,#f7faf8);color:var(--g135-ink)!important;text-decoration:none!important;box-shadow:0 8px 28px rgba(15,59,48,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;overflow:hidden}.gcnm135-workspaces>a:hover{transform:translateY(-3px);border-color:#b9cec3;box-shadow:0 15px 36px rgba(15,59,48,.09)}.gcnm135-workspaces>a>i{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:11px;background:#e8f1ed;color:var(--g135-forest);font-size:20px}.gcnm135-workspaces>a>span{display:block;min-width:0}.gcnm135-workspaces small,.gcnm135-workspaces strong,.gcnm135-workspaces em{display:block}.gcnm135-workspaces small{color:#8a594f;font-size:.58rem;font-weight:800;letter-spacing:.075em}.gcnm135-workspaces strong{margin-top:5px;font-size:.84rem;line-height:1.3}.gcnm135-workspaces em{margin-top:5px;color:var(--g135-muted);font-style:normal;font-size:.69rem;line-height:1.45}.gcnm135-workspaces b{position:absolute;right:12px;bottom:6px;color:#dfe9e4;font-size:1.55rem;font-weight:800}.gcnm135-workspaces>a:nth-child(2)>i{background:#fff5da;color:#8b6b13}.gcnm135-workspaces>a:nth-child(3)>i{background:#fbe7e5;color:#9a332d}.gcnm135-workspaces>a:nth-child(4)>i{background:#e8edf8;color:#34578e}.gcnm135-workspaces>a:nth-child(5)>i{background:#eee9f6;color:#60468c}
@media(max-width:1450px){.gcnm135-workspaces{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.gcnm135-workspaces{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.gcnm135-workspaces{grid-template-columns:1fr}}
/* Desktop must never retain a transparent mobile-menu click shield. */
@media(min-width:992px){body.v2-shell .layout-overlay,body.v2-shell>.offcanvas-backdrop,body.v2-shell .offcanvas-backdrop{display:none!important;pointer-events:none!important;opacity:0!important}}
