/* GCNM v13.4 Liquid Dashboard + Form Reliability */
:root{--g134-bg:#f5f7f4;--g134-surface:#fff;--g134-forest:#103c31;--g134-green:#1c5946;--g134-leaf:#367660;--g134-gold:#d6aa38;--g134-red:#c43a34;--g134-line:#dce5df;--g134-muted:#65766e;--g134-shadow:0 18px 54px rgba(16,60,49,.07)}
body.v2-shell{background:var(--g134-bg)!important}.layout-wrapper,.layout-container,.layout-page{min-height:100vh}.layout-page{min-width:0;flex:1}.content-wrapper{min-width:0;padding-bottom:32px}.content-wrapper>.container-fluid,.gcnm-fluid-page{width:100%;max-width:none;padding-inline:clamp(16px,2vw,34px)!important}
.tk-rail{width:68px!important;flex:0 0 68px!important;background:linear-gradient(180deg,#0d3128,#123c31 60%,#0b2a23)!important}.tk-panel{width:292px!important;flex:0 0 292px!important;background:linear-gradient(180deg,#123c31,#173f34)!important}.tk-panel-body{padding:10px 12px 24px!important;overflow:auto}.tk-panel-pane{animation:g134fade .18s ease}.tk-panel-title{font:800 1.02rem/1.2 "Plus Jakarta Sans",sans-serif!important;color:#fff!important;padding:12px 10px 4px!important}.gcnm-panel-story{margin:0 10px 14px;color:#acc2b9;font-size:.73rem;line-height:1.55}.tk-panel-group{padding:6px 0 12px!important}.tk-panel-label{padding:10px 10px 6px!important;font-size:.64rem!important;letter-spacing:.09em!important;text-transform:uppercase}.tk-panel-item{min-height:42px;padding:10px 11px!important;border-radius:10px!important;margin:2px 0!important;gap:10px!important}.tk-panel-item span{line-height:1.25}.tk-panel-item[data-active="true"]{background:linear-gradient(90deg,#347a62,#2a6653)!important;box-shadow:inset 3px 0 0 var(--g134-gold)}
.gcnm-page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:26px 28px;border:1px solid var(--g134-line);border-radius:22px;background:radial-gradient(circle at 90% 10%,rgba(214,170,56,.13),transparent 28%),linear-gradient(120deg,#fff,#f8fbf8);box-shadow:var(--g134-shadow)}.gcnm-page-heading h1{margin:.3rem 0 .35rem;color:var(--g134-forest);font:800 clamp(1.55rem,2.4vw,2.3rem)/1.08 "Plus Jakarta Sans"}.gcnm-page-heading p{margin:0;max-width:850px;color:var(--g134-muted)}.gcnm-kicker{color:var(--g134-red);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
body.v2-shell .content-wrapper form .form-control,body.v2-shell .content-wrapper form .form-select,body.v2-shell .content-wrapper form .select2-selection,body.v2-shell .content-wrapper form textarea{width:100%!important;max-width:100%;min-height:44px;border:1px solid #cbd8d1!important;background:#fff!important;color:#20312a!important;border-radius:10px!important;transition:border-color .15s,box-shadow .15s,background .15s}body.v2-shell .content-wrapper form textarea{min-height:96px;resize:vertical;line-height:1.55}body.v2-shell .content-wrapper form .form-control:hover,body.v2-shell .content-wrapper form .form-select:hover{border-color:#9eb6aa!important}body.v2-shell .content-wrapper form .form-control:focus,body.v2-shell .content-wrapper form .form-select:focus,body.v2-shell .content-wrapper form textarea:focus{border-color:var(--g134-leaf)!important;box-shadow:0 0 0 .2rem rgba(54,118,96,.12)!important;outline:0}.form-label{margin-bottom:.45rem!important;font-size:.78rem}.input-group>.form-control{min-width:0}.select2-container{width:100%!important}.tox-tinymce{border:1px solid #cbd8d1!important;border-radius:12px!important;overflow:hidden}.tox .tox-edit-area__iframe{background:#fff!important}.tox .tox-toolbar__primary{background:#f7faf8!important}
.card{overflow:visible}.card-header{padding:18px 20px!important}.card-body{padding:20px!important}.table-responsive{border-radius:12px}.modal-dialog{max-width:min(920px,calc(100vw - 24px))}.modal-body,.offcanvas-body{overflow:auto}.gcnm-sticky-card{position:sticky;top:88px}.gcnm-inline-search{width:min(460px,100%)}
.gcnm-label-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gcnm-label-editor-item{padding:14px;border:1px solid var(--g134-line);border-radius:12px;background:#fbfcfb}.gcnm-label-editor-item code{white-space:normal;color:#8b3f38}.gcnm-language-list .list-group-item{display:flex;justify-content:space-between;gap:12px;border-radius:10px!important;margin-bottom:5px;border:1px solid var(--g134-line)}.gcnm-language-list .list-group-item.active{background:var(--g134-green)!important;border-color:var(--g134-green)!important}
.gcnm-upload-preview{display:block;width:100%;height:86px;object-fit:contain;background:#f7faf8;border:1px solid var(--g134-line);border-radius:10px;padding:8px}.gcnm-upload-drop{display:grid;grid-template-columns:minmax(200px,1fr) minmax(280px,2fr) auto;gap:16px;align-items:center}.gcnm-upload-drop>div{display:flex;flex-direction:column}.gcnm-upload-drop>div>i{font-size:30px;color:var(--g134-green)}.gcnm-upload-drop span{font-size:.72rem;color:var(--g134-muted)}
.gcnm-file-crumbs{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.gcnm-file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}.gcnm-file-card{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:14px;border:1px solid var(--g134-line);border-radius:14px;background:#fff;min-height:150px}.gcnm-file-main{min-width:0;display:flex;flex:1;flex-direction:column;gap:6px;color:inherit!important;text-decoration:none!important}.gcnm-file-main>i{font-size:34px;color:var(--g134-green)}.gcnm-file-folder .gcnm-file-main>i{color:var(--g134-gold)}.gcnm-file-main img{width:100%;height:88px;object-fit:cover;border-radius:8px;background:#f1f5f2}.gcnm-file-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gcnm-file-main span{font-size:.7rem;color:var(--g134-muted)}.gcnm-file-empty{grid-column:1/-1;text-align:center;padding:50px;border:1px dashed #b8c9c0;border-radius:14px;color:var(--g134-muted)}.gcnm-file-empty i{font-size:42px;display:block;margin-bottom:8px}
.gcnm-invoice-item-row{display:grid!important;grid-template-columns:minmax(170px,1.5fr) minmax(200px,1.8fr) minmax(90px,.7fr) minmax(90px,.7fr) minmax(120px,1fr) minmax(100px,.8fr) minmax(120px,1fr) auto;gap:10px;align-items:end;margin-bottom:10px}.gcnm-invoice-item-row>[class*="col-md-"]{width:auto!important;max-width:none!important;margin-inline:0!important}.gcnm-invoice-item-row textarea{min-height:44px!important}
.form-submit-event[data-gcnm-dirty="true"]::before{content:"Unsaved changes";position:fixed;right:18px;bottom:150px;z-index:1090;background:#fff8df;color:#6b5412;border:1px solid #e7d28b;border-radius:8px;padding:7px 10px;font-size:.68rem;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.08)}
@keyframes g134fade{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:1199.98px){.tk-panel{width:260px!important;flex-basis:260px!important}.gcnm-label-editor-grid{grid-template-columns:1fr}.gcnm-invoice-item-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991.98px){#mobileMenu{width:min(360px,92vw)!important}.tk-panel{width:calc(min(360px,92vw) - 68px)!important;flex-basis:auto!important}.gcnm-sticky-card{position:static}.gcnm-page-heading{align-items:flex-start;flex-direction:column}.gcnm-upload-drop{grid-template-columns:1fr}.content-wrapper>.container-fluid,.gcnm-fluid-page{padding-inline:14px!important}.card-body{padding:16px!important}}
@media(max-width:575.98px){.gcnm-invoice-item-row{grid-template-columns:1fr}.gcnm-page-heading{padding:20px 18px;border-radius:16px}.gcnm-file-grid{grid-template-columns:1fr}.btn{white-space:normal}}
/* Make legacy and new modules share the same liquid workspace. */
body.v2-shell .content-wrapper>.container-xxl,
body.v2-shell .content-wrapper>.container-xl,
body.v2-shell .content-wrapper>.container-lg,
body.v2-shell .content-wrapper>.container-md,
body.v2-shell .content-wrapper>.container-sm,
body.v2-shell .content-wrapper>.container-fluid{max-width:none!important;width:100%!important;padding-inline:clamp(14px,2vw,34px)!important}
body.v2-shell .content-wrapper>.container-xxl.container-p-y,
body.v2-shell .content-wrapper>.container-fluid.container-p-y{padding-top:24px!important}
body.v2-shell .card{border:1px solid var(--g134-line)!important;border-radius:16px!important;box-shadow:0 10px 32px rgba(16,60,49,.045)!important;background:var(--g134-surface)}
body.v2-shell .card-title,body.v2-shell h4.fw-bold{color:var(--g134-forest)!important}
body.v2-shell input[readonly],body.v2-shell textarea[readonly],body.v2-shell select:disabled{background:#f1f4f2!important;color:#718079!important;cursor:not-allowed}
body.v2-shell .table>:not(caption)>*>*{padding:.78rem .85rem;vertical-align:middle}body.v2-shell .table thead th{background:#f4f8f5;color:#53665e;font-size:.69rem;text-transform:uppercase;letter-spacing:.045em;border-bottom-color:#dce5df}
body.v2-shell .btn-primary{background:var(--g134-forest)!important;border-color:var(--g134-forest)!important}body.v2-shell .btn-primary:hover{background:#1b5946!important;border-color:#1b5946!important}body.v2-shell .btn-outline-primary{color:var(--g134-forest)!important;border-color:#8eaea0!important}body.v2-shell .btn-outline-primary:hover{background:var(--g134-forest)!important;color:#fff!important;border-color:var(--g134-forest)!important}
body.v2-shell .modal-content,body.v2-shell .offcanvas{border:1px solid var(--g134-line);border-radius:18px;box-shadow:0 24px 80px rgba(10,45,36,.18)}
body.v2-shell .modal-header,body.v2-shell .offcanvas-header{background:linear-gradient(135deg,#f8fbf9,#fff);border-bottom:1px solid var(--g134-line)}
body.v2-shell .form-text,body.v2-shell small.text-muted{line-height:1.45}
@media (min-width:1600px){.tk-panel{width:310px!important;flex-basis:310px!important}.content-wrapper>.container-fluid,.content-wrapper>.container-xxl,.gcnm-fluid-page{padding-inline:38px!important}}
