/* Portal application styling layered on Metronic 9.5 / Tailwind 4 / KtUI. */
:root{--portal-sidebar:258px;--portal-ink:#182334;--portal-muted:#788596;--portal-line:#e6ebf1;--portal-accent:#2563eb}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:13px;color:var(--portal-ink);background:#f6f8fb;line-height:1.55}a{color:#2563eb}button,a,input,select,textarea{outline-offset:3px}button{cursor:pointer}button:disabled,[aria-disabled=true]{opacity:.5;cursor:not-allowed}h1,h2,h3,h4{font-weight:600;letter-spacing:-.025em}h1{font-size:25px;line-height:1.35}h2{font-size:20px}h3{font-size:18px}h4{font-size:16px}p{margin-bottom:12px}small{font-size:11px}.portal-skip{position:fixed;top:-100px;left:20px;z-index:200;background:white;padding:12px}.portal-skip:focus{top:10px}
.portal-sidebar{position:fixed;inset:0 auto 0 0;width:var(--portal-sidebar);background:#101b2b;color:#a4b1c4;z-index:40;display:flex;flex-direction:column;border-right:1px solid #233044}.portal-brand{display:flex;align-items:center;gap:12px;padding:27px 25px;color:#f8fafc;font-size:22px;font-weight:650;letter-spacing:-.8px}.portal-brand-symbol{height:37px;width:37px;display:flex;align-items:center;justify-content:center;background:#2563eb;border-radius:10px;color:white;font-size:21px;letter-spacing:-3px;padding-right:3px}.portal-brand-symbol span{color:#a8ceff}.portal-brand small{display:block;letter-spacing:2px;color:#7d90ad;font-size:8px;margin-top:0}.portal-workspace{display:flex;gap:10px;align-items:center;background:#1a2739;border:1px solid #2b394d;border-radius:9px;margin:10px 17px 22px;padding:12px;color:#ecf1f8;font-size:12px}.portal-workspace small{display:block;color:#8293ab;font-size:10px}.portal-workspace-icon{width:31px;height:31px;display:grid;place-items:center;background:#2a3c57;color:#a8c8ff;border-radius:7px;font-weight:600}.portal-sidebar nav{overflow-y:auto;flex:1;padding:0 12px 18px;scrollbar-width:thin;scrollbar-color:#354258 transparent}.portal-nav,.portal-nav-children{list-style:none;margin:0;padding:0}.portal-nav-link{color:#9baac0;display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:7px;font-size:12px;margin:2px 0;transition:background .15s,color .15s}.portal-nav-link:hover{background:#1c2c42;color:#fff}.portal-nav-item.is-active>.portal-nav-link,.portal-nav-link[aria-current=page]{background:#1e3556;color:#8db9ff;font-weight:600}.portal-nav-toggle:after{content:'›';margin-left:auto;font-size:18px;line-height:1;transform:rotate(0deg)}.is-open>.portal-nav-toggle:after{transform:rotate(90deg)}.portal-nav-submenu{display:none;padding-left:13px;margin-left:13px;border-left:1px solid #2c3c52}.is-open>.portal-nav-submenu{display:block}.portal-nav-parent{display:none}.portal-nav-children .portal-nav-link{font-size:11px;padding:8px 10px}.portal-sidebar-footer{border-top:1px solid #243248;padding:18px 20px;font-size:10px;display:flex;align-items:center;gap:7px;color:#8495ad}.portal-live-dot{width:6px;height:6px;border-radius:50%;background:#22b89a;display:inline-block;flex:none}.portal-version{margin-left:auto;font-size:9px;background:#223247;border-radius:4px;padding:2px 5px}.portal-shell{margin-left:var(--portal-sidebar);min-width:0}.portal-header{height:77px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fff;border-bottom:1px solid var(--portal-line)}.portal-header-context{font-size:9px;font-weight:600;letter-spacing:1.3px;color:#97a1af}.portal-header-context span{margin:0 13px;color:#d1d8e2}.portal-header-context strong{font-size:12px;letter-spacing:0;color:#536174;font-weight:500}.portal-profile{display:flex;align-items:center;gap:10px;color:#29374c;font-size:11px;font-weight:600}.portal-profile small{display:block;color:#8c99a9;font-weight:400;font-size:10px}.portal-profile>i{color:#9cabbc;margin-left:8px;font-size:9px}.portal-avatar{width:34px;height:34px;background:#eef3fc;color:#4169a5;display:grid;place-items:center;border-radius:50%;font-size:13px}.portal-menu-button{display:none!important}.portal-main{padding:31px 34px 15px;max-width:1900px;margin:0 auto}.portal-page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:12px}.portal-eyebrow{font-size:9px;letter-spacing:1.9px;font-weight:600;color:#91a0b2;margin-bottom:7px}.portal-breadcrumbs{display:flex;gap:9px;list-style:none;padding:0;margin-top:8px;font-size:11px;color:#8998aa}.portal-breadcrumbs li+li:before{content:'/';color:#b6c1ce;margin-right:9px}.portal-breadcrumbs a{color:#798aa0}.portal-workspace-badge{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--portal-line);padding:7px 10px;border-radius:6px;color:#708196;font-size:10px}.portal-content{box-shadow:0 2px 6px #10254003;border:1px solid var(--portal-line);border-radius:10px;background:#fff}.portal-content>.kt-card-content{padding:24px}.portal-footer{display:flex;justify-content:space-between;color:#9ba7b7;font-size:10px;padding-top:25px;padding-bottom:10px}
.kt-btn,.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:7px 12px;font-size:11px;font-weight:500;line-height:1.3;border:1px solid transparent;border-radius:6px;white-space:nowrap;text-decoration:none;background:#f0f3f8;color:#42536a}.kt-btn:hover,.btn:hover{filter:brightness(.97)}.kt-btn-primary,.primary{background:#2563eb;color:white;border-color:#2563eb}.kt-btn-outline,.kt-btn-secondary{background:white;border-color:#dce3ed;color:#53637b}.kt-btn-destructive{background:#fff0f0;color:#d54b52;border-color:#fbd7da}.portal-btn-success{background:#eaf9f2;color:#249565;border-color:#cceedd}.portal-btn-info{background:#ecf4ff;color:#3979c3;border-color:#d3e6fc}.portal-btn-warning{background:#fff6e5;color:#b78422;border-color:#f2e5bf}.kt-btn-xs{font-size:10px;min-height:25px;padding:4px 7px}.kt-btn-sm{min-height:29px;padding:5px 10px}.kt-btn-lg{min-height:42px;font-size:13px}.kt-btn.dark{background:#e9edf3;color:#526178}.kt-btn-icon{width:32px;padding:0}.kt-btn-ghost{background:transparent;border-color:transparent}.action-btns{min-width:180px}.action-btns .kt-btn,.margin-action-btns .kt-btn{margin:3px 2px}.top-actions,.action-btns,.portal-btn-group{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.top-actions{margin-bottom:18px}.action-btns{display:table-cell}.resetBtn{margin:8px 0}.pull-right{float:right}.pull-left{float:left}.text-right{text-align:right}.text-center{text-align:center}.text-muted,.small-note{color:#8999aa}.margin-bottom-20{margin-bottom:20px}.margin-top-10{margin-top:10px}.margin-bottom-0{margin-bottom:0}.underline{padding-bottom:12px;border-bottom:1px solid var(--portal-line)}.hide,.hidden,[hidden]{display:none!important}.clearfix:after{content:'';display:table;clear:both}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),select,textarea{background:#fff;border:1px solid #dce3ec;border-radius:6px;padding:8px 10px;font:inherit;color:#33465c;min-height:35px;max-width:100%;box-shadow:0 1px 2px #10254002}input:focus,select:focus,textarea:focus{border-color:#87acfa;outline:2px solid #e9f0ff}textarea{min-height:90px;width:100%}.portal-input{width:100%}input[type=checkbox],input[type=radio]{accent-color:#2563eb;vertical-align:middle;margin-right:6px}select[multiple]{min-height:100px}.portal-label,label{font-size:12px;color:#52637b;font-weight:500}.portal-field{margin-bottom:17px}.portal-field .required:after{content:' *';color:#e66b74}.portal-form .portal-field{display:flex;flex-wrap:wrap;gap:8px;align-items:start}.portal-form .portal-field>label{padding-top:8px}.portal-field .help-block,.help-inline{font-size:11px;color:#7d8fa3;margin-top:5px}.has-error .help-block,.errorSummary,.help-block.error,.help-inline.error,label.error{color:#cd404d}.has-error input,input.error{border-color:#e87984}.portal-alert{padding:12px 15px;margin-bottom:18px;border-radius:7px;border:1px solid #d9e8fb;background:#f1f7ff;color:#3a6b9c}.portal-alert-error,.portal-alert-danger{background:#fff1f2;color:#b8424e;border-color:#fad9df}.portal-alert-success{background:#effaf5;color:#298766;border-color:#d4eee2}.portal-alert ul{padding-left:20px;list-style:disc}.portal-row,.row{display:flex;flex-wrap:wrap;margin-left:-8px;margin-right:-8px}.row>[class*=col-],.portal-row>[class*=col-]{width:100%;padding-left:8px;padding-right:8px;min-width:0}.filterForm{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.filterForm .row{align-items:end;gap:12px;margin:0}.filterForm [class*=col-]{width:auto;flex:0 1 auto;padding:0}.filterForm label{display:block;margin-bottom:6px}.filterForm input,.filterForm select{width:auto;max-width:220px}.page-size-setting{display:flex;gap:9px;justify-content:end;align-items:center;color:#8b99ac;font-size:11px;margin-bottom:10px}.page-size-setting a{font-weight:600}.controls>label.checkbox{display:inline-flex;align-items:center;margin:6px 12px 6px 0}.category{margin:8px 0;padding-left:15px}.category label{margin-right:15px}.label-block{display:block}
.grid-view{width:100%;overflow-x:auto;padding-top:5px}.grid-view table,.table,.portal-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:12px;margin-bottom:12px}.grid-view th,.table th,.portal-table th{font-size:10px;letter-spacing:.03em;text-align:left;font-weight:600;background:#f8fafc;color:#7b8aa0;border-bottom:1px solid var(--portal-line);padding:12px 11px;white-space:nowrap}.grid-view td,.table td,.portal-table td{padding:12px 11px;border-bottom:1px solid #edf1f6;vertical-align:middle;color:#4d5e76}.grid-view th a{color:#5c7290;display:block}.grid-view th a.asc:after{content:' ↑'}.grid-view th a.desc:after{content:' ↓'}.grid-view tbody tr:hover{background:#fafcff}.grid-view .filters td{padding:9px 8px;background:#fff}.grid-view .filters input,.grid-view .filters select{width:100%;min-width:70px;min-height:29px;padding:4px 6px;font-size:11px;margin:0}.grid-view .summary{color:#91a0b2;font-size:10px;margin:12px 0}.empty{padding:25px;color:#94a2b5;font-style:italic}.pagination{display:flex;gap:5px;list-style:none;padding:12px 0}.pagination a,.pagination span{min-width:29px;height:29px;display:grid;place-items:center;border:1px solid #e4eaf2;border-radius:5px;color:#6c7f98;font-size:11px}.pagination .active a{background:#2563eb;border-color:#2563eb;color:white}.pagination .disabled{opacity:.5;pointer-events:none}.transaction-details{background:#f8faff}.row-details{cursor:pointer;display:inline-block;width:21px;height:21px;border:1px solid #dbe4f0;border-radius:4px;color:#5b7ba4;text-align:center}.row-details:before{content:'+'}.row-details-open:before{content:'−'}.kt-card-header{padding:14px 0;border-bottom:1px solid var(--portal-line);margin-bottom:17px;font-weight:600}.kt-card-header .caption{font-size:15px}.kt-card .kt-card{margin-bottom:18px}.kt-card-content .kt-card-content{padding:12px 0}.portal-tabs,.nav{display:flex;gap:14px;list-style:none;padding:0;margin-bottom:18px;border-bottom:1px solid var(--portal-line)}.portal-tabs a,.nav a{display:block;padding:10px 3px;color:#8592a6}.portal-tabs .active a,.nav .active a{color:#2563eb;border-bottom:2px solid #2563eb}.portal-tab-pane{display:none}.portal-tab-pane.active{display:block}.dashboard-stat{border:1px solid var(--portal-line);border-radius:8px;padding:18px;margin-bottom:15px}.dashboard-stat .number{font-size:27px;font-weight:600}.dashboard-stat .desc{color:#8393a9;font-size:12px}.summary-table td,.summary-table th,.tax-table td,.tax-table th{text-align:right}.tax-table th:first-child,.tax-table td:first-child{text-align:left}
.portal-modal{position:fixed;inset:0;overflow:auto;padding:5vh 18px;z-index:90}.portal-modal-dialog{width:min(960px,100%);margin:0 auto;background:#fff;border:1px solid #e5eaf1;border-radius:11px;box-shadow:0 25px 80px #0d1b3838;overflow:hidden}.smallModal .portal-modal-dialog,#confirmModal .portal-modal-dialog,#infoModal .portal-modal-dialog{width:min(480px,100%)}.portal-modal-full{width:96%}.kt-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--portal-line)}.kt-modal-title{font-size:15px}.portal-modal-body{padding:22px;overflow:auto;max-height:72vh}.kt-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;background:#fbfcfe;border-top:1px solid var(--portal-line)}.kt-modal-backdrop{background:#0c1c32a6!important;backdrop-filter:blur(2px)}.portal-busy{opacity:.6;pointer-events:none;position:relative}.portal-busy:after{content:'Working…';position:absolute;inset:0;display:grid;place-items:center;background:#ffffffa1;z-index:5;color:#2563eb;font-weight:600}.portal-loading{position:fixed;bottom:20px;right:20px;padding:10px 18px;border-radius:8px;z-index:150;color:#fff;background:#1d3c6b}.portal-rich-editor{min-height:170px}.ql-toolbar{border-radius:6px 6px 0 0}.ql-container{border-radius:0 0 6px 6px;font-family:inherit!important}.portal-iframe{background:white;padding:20px}.portal-dropdown{position:relative}.portal-dropdown-menu{display:none;position:absolute;right:0;z-index:20;min-width:170px;list-style:none;background:#fff;border:1px solid var(--portal-line);padding:6px;border-radius:7px;box-shadow:0 8px 20px #15305018}.portal-dropdown.is-open>.portal-dropdown-menu{display:block}.portal-dropdown-menu a{display:block;padding:7px 10px;color:#4e6583}
.portal-auth-body{min-height:100vh;background:#fff}.portal-auth-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.portal-auth-intro{background:#101e32;color:white;display:flex;flex-direction:column;justify-content:space-between;padding:25px 45px}.portal-auth-intro .portal-brand{padding:0}.portal-auth-intro h2{font-size:38px;line-height:1.25;margin:20px 0}.portal-auth-intro p{max-width:360px;color:#8fa3bf;font-size:14px}.portal-auth-intro>small{color:#6d84a3;padding-bottom:15px}.portal-auth-panel{display:grid;place-items:center;padding:40px}.portal-auth-panel>.kt-card{width:min(390px,100%);border:0;box-shadow:none}.portal-auth-panel h1{font-size:24px;margin-bottom:26px}.portal-auth-panel .field-loginform-username,.portal-auth-panel .field-loginform-password,.portal-auth-panel .form-group{margin-bottom:20px}.portal-auth-panel label{display:block;margin-bottom:6px}.portal-auth-panel input{width:100%}.portal-auth-panel .help-block{color:#cb4656;margin-top:5px}.portal-auth-submit{width:100%;margin-top:7px;min-height:39px}
@media(min-width:768px){.row>.col-md-1{width:8.333%}.row>.col-md-2{width:16.666%}.row>.col-md-3{width:25%}.row>.col-md-4{width:33.333%}.row>.col-md-5{width:41.666%}.row>.col-md-6{width:50%}.row>.col-md-7{width:58.333%}.row>.col-md-8{width:66.666%}.row>.col-md-9{width:75%}.row>.col-md-10{width:83.333%}.row>.col-md-11{width:91.666%}.row>.col-md-12{width:100%}.portal-form .col-md-3{width:25%;padding-right:12px}.portal-form .col-md-9{width:72%}.portal-form .col-md-4{width:32%}.portal-form .col-md-8{width:65%}.portal-form .col-md-2{width:16%}.portal-form .col-md-10{width:81%}.portal-form .col-md-6{width:48%}}
@media(max-width:1050px){:root{--portal-sidebar:225px}.portal-main{padding:24px 20px}.portal-header{padding:0 20px}.portal-content>.kt-card-content{padding:18px}.portal-workspace-badge{display:none}}
@media(max-width:800px){.portal-sidebar{transform:translateX(-100%);transition:transform .2s;width:258px}.portal-shell{margin-left:0}.portal-menu-button{display:inline-flex!important}.portal-nav-open .portal-sidebar{transform:translateX(0)}.portal-sidebar-shade{position:fixed;inset:0;background:#0c1c3299;z-index:35}.portal-header-context{margin-right:auto;margin-left:12px}.portal-header-context>strong,.portal-header-context>span{display:none}.portal-header{height:65px;padding:0 18px}.portal-profile>span:not(.portal-avatar),.portal-profile>i{display:none}.portal-main{padding:22px 14px}.portal-content>.kt-card-content{padding:15px}.portal-page-heading{margin-bottom:18px}h1{font-size:22px}.portal-auth-layout{grid-template-columns:1fr}.portal-auth-intro{display:none}.portal-auth-panel{padding:30px 22px}.portal-auth-layout{min-height:100vh}.portal-form .portal-field{display:block}.portal-form .portal-field>[class*=col-]{width:100%}.portal-modal{padding:12px}.portal-modal-body{padding:16px}}
@media print{.portal-sidebar,.portal-header,.portal-page-heading,.portal-footer,.d-print-none,.top-actions,.resetBtn,.pagination{display:none!important}.portal-shell{margin:0}.portal-main{padding:0}.portal-content{border:0;box-shadow:none}body{background:#fff}.portal-content>.kt-card-content{padding:0}}
.portal-dashboard-intro{margin:3px 0 27px}.portal-dashboard-intro h2{margin-bottom:8px;font-size:22px}.portal-dashboard-intro p{color:#8a99ad;font-size:12px}.portal-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portal-dashboard-link{display:block;border:1px solid #e5ebf3;border-radius:9px;padding:23px;color:#263c59;transition:box-shadow .15s,border-color .15s}.portal-dashboard-link:hover{box-shadow:0 5px 18px #19385c0b;border-color:#b4cef4}.portal-dashboard-icon{display:grid;place-items:center;width:39px;height:39px;background:#edf4ff;color:#5289d2;border-radius:9px;font-size:20px;margin-bottom:21px}.portal-dashboard-link h3{font-size:15px;margin-bottom:6px}.portal-dashboard-link p{font-size:11px;color:#8a9bb1;min-height:36px;margin-bottom:17px}.portal-dashboard-link>span:last-child{font-size:10px;font-weight:600;color:#4280d1}.portal-dashboard-link>span:last-child>span{float:right;font-size:15px}@media(max-width:1100px){.portal-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.portal-dashboard-grid{grid-template-columns:1fr}}

/* Shared form columns retain model field order while using a consistent layout. */
.portal-form .portal-field{display:grid;grid-template-columns:minmax(120px,32%) minmax(0,1fr);gap:8px 14px;align-items:start}.portal-form .portal-field>[class*=col-]{width:auto!important;padding:0}.portal-form .portal-field>label{text-align:right;padding-top:8px}.portal-form .portal-field .portal-input{width:100%}.portal-form .row>.col-md-6{padding-right:16px;padding-left:16px}.portal-form .portal-field label.checkbox{text-align:left}
@media(max-width:800px){.portal-form .portal-field{grid-template-columns:1fr;gap:5px}.portal-form .portal-field>label{text-align:left;padding-top:0}.portal-form .row>.col-md-6{width:100%}}

.portal-editor-toolbar{display:flex;gap:3px;flex-wrap:wrap;border:1px solid var(--portal-line);border-radius:6px 6px 0 0;background:#f8fafc;padding:6px}.portal-rich-editor{border:1px solid var(--portal-line);border-top:0;border-radius:0 0 6px 6px;min-height:170px}.portal-rich-editor .tiptap{padding:12px;min-height:170px;outline:0}.portal-rich-editor ul{list-style:disc;padding-left:22px}.portal-rich-editor ol{list-style:decimal;padding-left:22px}

.kt-select-wrapper{min-width:140px}.kt-select-display{min-height:35px;border:1px solid #dce3ec;border-radius:6px;padding:7px 10px}.kt-select-dropdown{background:#fff;border:1px solid var(--portal-line);border-radius:7px;box-shadow:0 8px 25px #1d365522;overflow:hidden}.kt-select-options{max-height:250px;overflow-y:auto}.kt-select-search{padding:8px}.kt-select-search input{width:100%}.kt-select-option{cursor:pointer;padding:8px 12px}.kt-select-option.selected{background:#edf4ff;color:#2563eb}

.portal-tabs a.active{color:#2563eb;border-bottom:2px solid #2563eb}.portal-page-heading h1{overflow-wrap:anywhere}
