:root{--bg:#f5f7f9;--ink:#1b2430;--muted:#687385;--line:#dce3ea;--panel:#fff;--brand:#155e75;--brand-2:#0f766e;--danger:#b42318;--amber:#b54708;--blue:#175cd3;--ok:#087443;--shadow:0 10px 30px rgba(24,38,57,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Segoe UI,Arial,sans-serif;font-size:14px}.topbar{position:sticky;top:0;z-index:5;margin-left:248px;min-height:92px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:18px 28px}.eyebrow{margin:0 0 3px;color:var(--brand-2);font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:25px;letter-spacing:0}h2{font-size:24px;margin-bottom:5px}h3{font-size:16px;margin-bottom:0}.top-actions,.form-actions{display:flex;gap:10px;align-items:center}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#14212f;color:#d9e4ee;padding:22px 18px;overflow:auto}.brand{font-size:20px;font-weight:800;margin-bottom:22px;color:#fff}.nav-link{display:block;color:#d9e4ee;text-decoration:none;padding:11px 12px;border-radius:6px;margin-bottom:5px}.nav-link:hover,.nav-link.active{background:#233548;color:#fff}.role-box{margin-top:28px;padding:14px;border:1px solid #31465c;border-radius:8px;display:grid;gap:7px;color:#b8c7d7}.role-box strong{color:#fff}.content{margin-left:248px;padding:26px 28px 48px}.btn,button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:6px;padding:9px 13px;text-decoration:none;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:38px}.btn.primary,button.primary{background:var(--brand);border-color:var(--brand);color:#fff}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.section-title p{color:var(--muted);margin-bottom:0}.date-chip,.pill,.status{display:inline-flex;border-radius:999px;background:#eef4f7;color:#244456;padding:5px 9px;font-size:12px;font-weight:800}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand-2);border-radius:8px;padding:16px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);min-height:105px}.metric span{display:block;color:var(--muted);font-weight:700}.metric strong{display:block;font-size:34px;margin-top:12px}.metric.danger{border-left-color:var(--danger)}.metric.amber{border-left-color:var(--amber)}.metric.blue{border-left-color:var(--blue)}.metric.muted{border-left-color:#667085}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:var(--shadow);margin-bottom:18px}.panel.wide{min-height:300px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel-head a{color:var(--brand);font-weight:800;text-decoration:none}.bar-list{display:grid;gap:12px}.bar-row{position:relative;display:grid;grid-template-columns:1fr auto;gap:14px;padding:13px;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:var(--ink);overflow:hidden}.bar-row i{position:absolute;left:0;bottom:0;height:4px;background:var(--brand-2)}.mini-list,.timeline{display:grid;gap:10px}.mini-list a,.timeline div{border-bottom:1px solid var(--line);padding-bottom:10px;color:var(--ink);text-decoration:none}.mini-list span,.timeline span,small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.filters{display:grid;grid-template-columns:2fr repeat(4,1fr) auto auto;gap:10px;margin-bottom:16px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;padding:10px 11px;color:var(--ink);font:inherit}label{display:grid;gap:6px;font-weight:800;color:#344054}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px;box-shadow:var(--shadow)}.span-2{grid-column:span 2}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}table{border-collapse:collapse;width:100%;min-width:1050px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#eef3f7;color:#344054;font-size:12px;text-transform:uppercase}tr:hover td{background:#fafcfd}.pill.expired{background:#fee4e2;color:var(--danger)}.pill.expiring-in-7-days,.pill.expiring-in-30-days{background:#fef0c7;color:var(--amber)}.pill.expiring-in-60-days{background:#e0f2fe;color:var(--blue)}.pill.no-expiry-date{background:#f2f4f7;color:#475467}.status{background:#ecfdf3;color:var(--ok)}.actions{display:flex;gap:6px;flex-wrap:wrap}.icon-btn,.inline-form button{font-size:12px;min-height:30px;padding:6px 9px;border-radius:5px}.inline-form{display:inline}.report-grid,.checklist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.report{background:#fff;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:8px;padding:16px;color:var(--ink);text-decoration:none;box-shadow:var(--shadow)}.report span{display:block;color:var(--muted);margin-top:6px}.checklist{list-style:none;padding:0;margin:0;display:grid;gap:8px}.checklist li{display:flex;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:6px;padding:10px}.checklist .ok strong{color:var(--ok)}.checklist .missing strong{color:var(--danger)}.notice{padding:12px 14px;border-radius:6px;margin-bottom:15px;font-weight:800}.notice.success{background:#ecfdf3;color:var(--ok)}.notice.warning{background:#fff4e5;color:var(--amber)}.empty{padding:26px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:8px}@media(max-width:1100px){.topbar,.content{margin-left:0}.sidebar{position:static;width:auto}.metric-grid,.dashboard-grid,.report-grid,.checklist-grid,.filters,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.topbar{display:block}.top-actions{margin-top:14px;flex-wrap:wrap}}@media print{.sidebar,.topbar,.filters,.btn,.actions{display:none!important}.content{margin:0;padding:0}.panel{box-shadow:none;border:0;padding:0}body{background:#fff}table{min-width:0;font-size:11px}}






















.preview-modal{position:fixed;inset:0;background:rgba(15,23,42,.64);z-index:20;display:none;align-items:center;justify-content:center;padding:24px}.preview-modal.open{display:flex}.preview-dialog{width:min(1100px,96vw);height:min(760px,92vh);background:#fff;border-radius:8px;box-shadow:0 24px 80px rgba(0,0,0,.28);display:flex;flex-direction:column;overflow:hidden}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:#f8fafc}.preview-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-actions{display:flex;gap:8px;flex-shrink:0}.preview-body{flex:1;background:#eef2f6;display:flex;align-items:center;justify-content:center;overflow:auto}.preview-body iframe{width:100%;height:100%;border:0;background:#fff}.preview-body img{max-width:100%;max-height:100%;object-fit:contain;background:#fff}.preview-message{max-width:520px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;text-align:center;color:var(--muted)}.preview-message strong{display:block;color:var(--ink);font-size:18px;margin-bottom:8px}




































































.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#14212f,#155e75 60%,#0f766e)}.login-card{width:min(440px,92vw);background:#fff;border-radius:8px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.28);display:grid;gap:14px}.login-card h1{font-size:24px}.login-help{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:4px;color:var(--muted)}.login-help strong{color:var(--ink)}.user-chip{display:inline-flex;align-items:center;min-height:38px;border:1px solid var(--line);border-radius:999px;padding:0 12px;background:#f8fafc;color:#344054;font-weight:800}.master-grid{display:grid;grid-template-columns:380px 1fr;gap:18px}.stack-form{display:grid;gap:13px}.master-list{display:grid;gap:8px}.master-list p{margin:0 0 10px;color:var(--muted);line-height:1.5}.master-list strong{color:var(--ink)}






















@media(max-width:1100px){.master-grid{grid-template-columns:1fr}.user-chip{margin-bottom:8px}}




































































.asset-grid{display:grid;grid-template-columns:430px 1fr;gap:18px}.req-editor{display:grid;gap:8px}.req-editor>strong{margin-top:4px}.req-head,.req-row{display:grid;grid-template-columns:1.3fr 1fr .8fr .8fr;gap:7px}.req-head{color:var(--muted);font-size:12px;font-weight:800}.asset-list{display:grid;gap:16px}.asset-card{border:1px solid var(--line);border-radius:8px;padding:14px;background:#fff}.asset-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.asset-card-head strong{display:block;font-size:17px}.asset-card-head span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.table-wrap.compact table{min-width:700px}.pill.no-date{background:#f2f4f7;color:#475467}






















@media(max-width:1100px){.asset-grid{grid-template-columns:1fr}.req-head{display:none}.req-row{grid-template-columns:1fr}}




































































.req-head-file,.req-row-file{grid-template-columns:1.2fr .9fr .75fr .75fr 1fr}.file-cell{display:grid;gap:6px}.file-cell input[type=file]{padding:7px;background:#fff}.file-cell .icon-btn{width:max-content}






















@media(max-width:1100px){.req-head-file{display:none}.req-row-file{grid-template-columns:1fr}}




































































/* Layout polish: friendlier admin shell */






















body{background:#eef3f6;color:#17202c}.topbar{min-height:76px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);box-shadow:0 2px 14px rgba(16,24,40,.05);padding:14px 28px}.topbar h1{font-size:22px}.sidebar{background:linear-gradient(180deg,#132131 0%,#172d3b 55%,#123331 100%);padding:18px 14px}.brand{padding:10px 12px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}.nav-link{border-radius:8px;padding:10px 12px;font-weight:700}.nav-link.active{background:#fff;color:#123331;box-shadow:0 8px 24px rgba(0,0,0,.14)}.nav-link:hover:not(.active){background:rgba(255,255,255,.1)}.role-box{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.06);border-radius:8px}.content{max-width:1680px}.page-hero,.section-title{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 20px;box-shadow:var(--shadow)}.page-hero h2,.section-title h2{font-size:25px}.panel{border-radius:10px;box-shadow:0 12px 28px rgba(24,38,57,.07)}.panel h3{font-size:17px}.metric{border-radius:10px;transition:transform .15s ease,box-shadow .15s ease}.metric:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(24,38,57,.12)}input,select,textarea{border-color:#ccd6e0;border-radius:8px;min-height:40px}input:focus,select:focus,textarea:focus{outline:3px solid rgba(21,94,117,.14);border-color:#23748b}.btn,button,.icon-btn{border-radius:8px}.btn.primary{background:linear-gradient(135deg,var(--brand),var(--brand-2));border-color:transparent}.table-wrap{border-radius:10px}th{background:#f1f6f8;color:#475467;position:sticky;top:0;z-index:1}td{background:#fff}.pill,.status,.date-chip,.user-chip{border-radius:999px}.notice{border-radius:8px}













































/* Register pages */






















.register-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:-6px 0 18px}.register-summary span{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 15px;color:var(--muted);box-shadow:var(--shadow)}.register-summary strong{display:block;color:var(--ink);font-size:22px;margin-bottom:2px}.asset-grid{grid-template-columns:minmax(380px,460px) minmax(0,1fr);align-items:start}.register-form-panel{position:sticky;top:96px}.register-form-panel h3{margin-bottom:14px}.register-list-panel{min-width:0}.stack-form label{font-size:13px}.req-editor{margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fbfc}.req-editor>strong{font-size:14px;color:#243647}.req-head,.req-row{align-items:center}.req-head{padding:0 2px 2px}.req-row{padding:8px;background:#fff;border:1px solid #e6edf2;border-radius:8px}.req-row input{min-height:36px;padding:8px}.req-row-file{grid-template-columns:minmax(170px,1.15fr) minmax(130px,.9fr) minmax(132px,.75fr) minmax(132px,.75fr) minmax(170px,.95fr)}.req-head-file{grid-template-columns:minmax(170px,1.15fr) minmax(130px,.9fr) minmax(132px,.75fr) minmax(132px,.75fr) minmax(170px,.95fr);padding:0 10px}.file-cell{grid-template-columns:1fr auto;align-items:center}.file-cell input[type=file]{min-width:0;font-size:12px}.asset-list{gap:18px}.asset-card{border-radius:10px;padding:0;overflow:hidden}.asset-card-head{background:linear-gradient(135deg,#f8fafc,#eef7f7);border-bottom:1px solid var(--line);padding:14px 16px;margin:0}.asset-card-head strong{font-size:18px;color:#17202c}.asset-card .table-wrap{border:0;border-radius:0}.asset-card table{min-width:760px}.asset-card th,.asset-card td{padding:11px 14px}.asset-card .icon-btn,.actions .icon-btn,.inline-form button{background:#f8fafc;border:1px solid #ccd6e0;color:#243647;text-decoration:none}.asset-card .icon-btn:hover,.actions .icon-btn:hover,.inline-form button:hover{background:#eaf3f4}.preview-modal{backdrop-filter:blur(2px)}.preview-dialog{border-radius:12px}.preview-head{padding:12px 16px}.login-card{border-radius:12px}













































@media(max-width:1200px){.asset-grid{grid-template-columns:1fr}.register-form-panel{position:static}.register-summary{grid-template-columns:1fr}}@media(max-width:760px){.topbar{padding:14px 16px}.content{padding:18px 14px}.page-hero,.section-title{display:block}.metric-grid{gap:10px}.register-summary{gap:10px}.req-editor{padding:10px}.file-cell{grid-template-columns:1fr}.asset-card table{min-width:680px}}




































































.vessel-cert-head,.vessel-cert-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(140px,.7fr) minmax(220px,1fr) minmax(100px,.45fr);gap:8px;align-items:center}.vessel-cert-head{color:var(--muted);font-size:12px;font-weight:800;padding:0 10px}.vessel-cert-row{padding:8px;background:#fff;border:1px solid #e6edf2;border-radius:8px}.vessel-cert-row input{min-height:36px;padding:8px}.vessel-cert-row input[type=file]{font-size:12px}@media(max-width:900px){.vessel-cert-head{display:none}.vessel-cert-row{grid-template-columns:1fr}}




































































.editable-cert-table input{min-height:36px;padding:7px 9px}.editable-cert-table input[type=file]{font-size:12px;background:#fff}.editable-cert-table td{vertical-align:middle}.inline-cert-form{display:block}.cert-form-actions{display:flex;justify-content:flex-end;padding:12px 14px;border-top:1px solid var(--line);background:#f8fafc}.cert-form-actions .btn{min-width:150px}




































































/* Browser-friendly refinements */






















html{min-height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100%;overflow-x:hidden}button,input,select,textarea{font-family:inherit;-webkit-appearance:none;appearance:none}select{background-image:linear-gradient(45deg,transparent 50%,#667085 50%),linear-gradient(135deg,#667085 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:34px}input[type=date],input[type=file]{-webkit-appearance:auto;appearance:auto}input[type=file]{max-width:100%;line-height:1.2}.content{width:calc(100% - 248px)}.table-wrap{-webkit-overflow-scrolling:touch;max-width:100%}.table-wrap:focus-within{outline:3px solid rgba(21,94,117,.12)}table{table-layout:auto}.actions,.top-actions{min-width:0}.top-actions{flex-wrap:wrap;justify-content:flex-end}.btn,.icon-btn,button{touch-action:manipulation;white-space:nowrap}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.filters{grid-template-columns:minmax(220px,2fr) repeat(4,minmax(145px,1fr)) auto auto}.form-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.span-2{grid-column:1/-1}.preview-modal{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.preview-dialog{max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px)}.preview-body{min-height:240px}.preview-message span{display:block}.asset-card{max-width:100%}.asset-card-head{align-items:center}.editable-cert-table input{width:100%}.notice{word-break:break-word}






















@supports not (backdrop-filter:blur(10px)){.topbar{background:#fff}.preview-modal{background:rgba(15,23,42,.78)}}






















@media(max-width:1100px){.content{width:100%}.sidebar{border-bottom:1px solid rgba(255,255,255,.14)}.nav-link{display:inline-flex;margin:3px}.role-box{display:none}.topbar{position:static}.filters{grid-template-columns:1fr 1fr}.filters .btn,.filters button{width:100%}.dashboard-grid{grid-template-columns:1fr}.panel{padding:15px}.table-wrap{margin-left:-2px;margin-right:-2px}.asset-card-head{display:grid}.asset-card-head .icon-btn{width:max-content}.preview-dialog{width:100%;height:calc(100vh - 28px);height:calc(100dvh - 28px)}}






















@media(max-width:700px){body{font-size:13px}.topbar h1{font-size:19px}.top-actions{justify-content:flex-start}.btn,button{min-height:40px}.filters{grid-template-columns:1fr}.metric{min-height:88px}.metric strong{font-size:28px}.page-hero h2,.section-title h2{font-size:21px}.register-summary span{padding:11px}.register-summary strong{font-size:19px}.asset-card table,.table-wrap.compact table,table{min-width:720px}.preview-actions{display:grid;grid-template-columns:1fr 1fr}.preview-head{align-items:start}.preview-head strong{white-space:normal}.login-card{padding:22px}}






















@media print{html,body{background:#fff!important}.content{width:100%!important}.preview-modal{display:none!important}.table-wrap{overflow:visible!important;border:0!important}table{width:100%!important;min-width:0!important;table-layout:auto}th{position:static!important}.page-hero,.section-title,.panel{box-shadow:none!important;border:0!important}}













































.form-note{border:1px dashed var(--line);background:#f8fafc;color:var(--muted);border-radius:8px;padding:12px 14px;line-height:1.45}






















.registered-bottom{grid-column:1/-1}.registered-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.registered-list a{display:block;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px 13px;text-decoration:none;color:var(--ink)}.registered-list a:hover{border-color:var(--brand);box-shadow:0 8px 20px rgba(24,38,57,.08)}.registered-list strong{display:block}.registered-list span{display:block;color:var(--muted);font-size:12px;margin-top:4px}























.registry-grid{display:grid;grid-template-columns:minmax(360px,430px) minmax(0,1fr);gap:18px;align-items:start}.registry-table td,.registry-table th{white-space:normal}.registry-table small{display:block;color:var(--muted);font-size:12px;margin-top:4px}@media(max-width:1100px){.registry-grid{grid-template-columns:1fr}}























.user-flow-grid{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:18px;align-items:start}.user-flow-grid form{display:contents}.access-matrix{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.access-row{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px;display:grid;grid-template-columns:1fr 110px;gap:10px;align-items:center}.access-row strong{font-size:13px}.access-row select{min-height:36px}.user-list-panel{grid-column:1/-1}@media(max-width:1100px){.user-flow-grid{grid-template-columns:1fr}.user-flow-grid form{display:grid;gap:14px}.access-row{grid-template-columns:1fr}}























.subscription-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.planStudio{background:linear-gradient(180deg,#ffffff 0%,#f8fbfc 100%)}.planStudioHead{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.planStudioGrid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px}.planEditor{border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px}.planHelp{border:1px solid #d9e8e5;border-radius:10px;background:#f2faf7;padding:14px;display:grid;gap:9px;color:var(--muted);font-size:12px}.planHelp b{color:var(--brand)}.planCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}.planCard{border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px;text-decoration:none;color:var(--ink);display:grid;gap:10px}.planCardTop{display:flex;justify-content:space-between;gap:10px}.planPrice{font-size:22px;font-weight:900;color:var(--brand-2)}.planPrice small{font-size:11px;color:var(--muted)}.planFeatures{display:grid;gap:5px;color:var(--muted);font-size:12px}@media(max-width:1100px){.subscription-grid,.planStudioGrid{grid-template-columns:1fr}}














































.soft-divider{border:0;border-top:1px solid var(--line);margin:18px 0}.register-upload-form{margin-top:12px;padding-top:2px}.register-upload-form h3{margin-top:0}












































.upload-label{display:inline-flex;margin-bottom:6px;color:var(--brand);font-size:12px;font-weight:800}.editable-cert-table td strong{display:block;min-width:190px}










































.login-logo-wrap{display:flex;justify-content:center;margin-bottom:8px}.login-logo{width:min(230px,72%);height:auto;display:block;object-fit:contain}








































/* Professional login screen */



















.login-page{



















  min-height:100vh;



















  display:grid;



















  place-items:center;



















  padding:32px 18px;



















  background:



















    radial-gradient(circle at 18% 18%, rgba(212,175,55,.20) 0 150px, transparent 151px),



















    radial-gradient(circle at 82% 78%, rgba(21,94,117,.18) 0 190px, transparent 191px),



















    linear-gradient(135deg,#071018 0%,#132131 48%,#0f2f33 100%);



















  color:#17202c;



















}



















.login-page::before{



















  content:"";



















  position:fixed;



















  inset:0;



















  pointer-events:none;



















  background:linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.035) 1px,transparent 1px);



















  background-size:42px 42px;



















  mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 82%);



















}



















.login-card{



















  position:relative;



















  width:min(430px,94vw);



















  padding:34px 34px 30px;



















  border:1px solid rgba(255,255,255,.42);



















  border-radius:18px;



















  background:rgba(255,255,255,.96);



















  box-shadow:0 28px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.75);



















  display:grid;



















  gap:15px;



















  overflow:hidden;



















}



















.login-card::before{



















  content:"";



















  position:absolute;



















  inset:0 0 auto 0;



















  height:5px;



















  background:linear-gradient(90deg,#d4af37,#155e75,#0f766e);



















}



















 .login-logo-wrap{




















  display:flex;




















  justify-content:center;




















  align-items:center;




















  margin:4px auto 12px;




















  width:min(310px,88%);




















  height:142px;



















  border-radius:16px;



















  background:linear-gradient(180deg,#ffffff,#f4f7f9);



















  border:1px solid #e3e9ef;



















  box-shadow:0 12px 28px rgba(24,38,57,.10);



















}



















 .login-logo{




















  width:min(255px,92%);




















  max-height:118px;



















  object-fit:contain;



















  display:block;



















}



















.login-card .eyebrow{



















  text-align:center;



















  margin:2px 0 0;



















  color:#b68b1e;



















  letter-spacing:.12em;



















}



















.login-card h1{



















  text-align:center;



















  font-size:24px;



















  line-height:1.2;



















  margin:0 0 6px;



















  color:#101820;



















}



















.login-card label{



















  color:#253344;



















  font-size:13px;



















  gap:7px;



















}



















.login-card input{



















  min-height:46px;



















  border-radius:10px;



















  border-color:#cfd8e3;



















  background:#f9fbfc;



















  padding:12px 13px;



















  font-size:15px;



















}



















.login-card input:focus{



















  background:#fff;



















  border-color:#155e75;



















  outline:4px solid rgba(21,94,117,.14);



















}



















.login-card .btn.primary,



















.login-card button.primary{



















  min-height:46px;



















  margin-top:4px;



















  border-radius:10px;



















  background:linear-gradient(135deg,#132131,#155e75 58%,#0f766e);



















  box-shadow:0 12px 26px rgba(21,94,117,.24);



















  font-size:15px;



















}



















.login-card .notice{



















  margin:0;



















  border-radius:10px;



















}



















@media(max-width:520px){



















  .login-card{padding:28px 22px 24px;border-radius:16px}



















  .login-logo-wrap{width:min(260px,90%);height:122px}



















  .login-logo{width:min(220px,92%)}



















  .login-card h1{font-size:21px}



















}


















































































.head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.upload-table-btn[disabled]{opacity:.45;cursor:not-allowed}






































/* Login contrast update for Muni logo */


















.login-page{


















  background:


















    radial-gradient(circle at 18% 18%, rgba(44,145,201,.22) 0 170px, transparent 171px),


















    radial-gradient(circle at 82% 82%, rgba(255,199,44,.13) 0 160px, transparent 161px),


















    linear-gradient(135deg,#030b18 0%,#071d3a 42%,#0b3764 72%,#08233f 100%);


















}


















.login-logo-wrap{


















  background:#ffffff;


















  border-color:rgba(255,255,255,.92);


















  box-shadow:0 18px 38px rgba(0,0,0,.18);


















}


















.login-card{


















  background:rgba(255,255,255,.98);


















}

























































/* Attached-style login redesign */


















.login-page{


















  min-height:100vh;


















  display:grid;


















  place-items:center;


















  padding:34px 18px;


















  background:


















    radial-gradient(circle at 10% 84%, rgba(36,142,226,.42) 0 150px, transparent 151px),


















    radial-gradient(circle at 90% 18%, rgba(10,67,143,.55) 0 230px, transparent 231px),


















    linear-gradient(135deg,#0b63bd 0%,#064b97 38%,#052b63 100%);


















  overflow:hidden;


















}


















.login-page::before{


















  content:"";


















  position:fixed;


















  inset:0;


















  pointer-events:none;


















  background:


















    linear-gradient(rgba(255,255,255,.08),rgba(255,255,255,.08)),


















    url("assets/muni-group-logo.png");


















  background-repeat:no-repeat;


















  background-position:120% 58%;


















  background-size:520px auto;


















  opacity:.12;


















  mask-image:linear-gradient(90deg,transparent 0%,#000 50%,#000 100%);


















}


















.pro-login{


















  width:min(760px,94vw);


















  border-radius:22px;


















  padding:52px 64px 42px;


















  background:rgba(255,255,255,.96);


















  border:1px solid rgba(255,255,255,.72);


















  box-shadow:0 30px 90px rgba(0,29,73,.34);


















  display:grid;


















  gap:18px;


















}


















.pro-login::before{height:0;background:none}


















.pro-login .login-logo-wrap{


















  width:260px;


















  height:118px;


















  margin:0 auto 8px;


















  border:2px solid #1d75c9;


















  border-radius:16px;


















  box-shadow:none;


















  background:#fff;


















}


















.pro-login .login-logo{width:220px;max-height:96px}


















.login-welcome{margin:8px 0 0;text-align:center;color:#1473c8;font-size:25px;font-weight:900}


















.pro-login h1{margin:0;text-align:center;color:#10233d;font-size:38px;line-height:1.12;font-weight:900}


















.login-subtitle{margin:-4px 0 18px;text-align:center;color:#71829e;font-size:20px}


















.field-label{gap:9px;color:#233b5f;font-size:15px}


















.field-title{display:flex;align-items:center;gap:8px;font-weight:900}


















.field-box{display:grid;grid-template-columns:48px 1fr 36px;align-items:center;gap:10px;min-height:64px;border:1px solid #d4deeb;border-radius:12px;background:#fff;padding:0 14px;box-shadow:0 8px 24px rgba(20,55,96,.06)}


















.field-box input{border:0;background:transparent;outline:0;min-height:54px;font-size:18px;padding:0;color:#10233d}


















.field-box input:focus{outline:0;border:0;background:transparent}


















.field-icon,.field-side,.feature-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:900}


















.field-icon{width:38px;height:38px;background:#e9f2ff;color:#1269bf}.field-side{color:#5d7390}.login-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 0;color:#355071;font-size:16px}.remember-line{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:10px;font-weight:500}.remember-line input{width:22px;height:22px;min-height:22px}.forgot-link{color:#075fc0;font-weight:700}.login-submit{min-height:64px;border-radius:12px;margin-top:4px;font-size:19px;display:grid;grid-template-columns:1fr auto;padding:0 24px;background:linear-gradient(90deg,#268bf2,#00459d)!important}.secure-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;color:#8a9ab2;font-size:17px;margin:8px 0 2px}.secure-divider::before,.secure-divider::after{content:"";height:1px;background:#dbe3ee}.login-features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center;color:#213a5d}.login-features div{display:grid;justify-items:center;gap:8px;border-right:1px solid #dbe3ee}.login-features div:last-child{border-right:0}.feature-icon{width:50px;height:50px;background:#e9f2ff;color:#075fc0}.login-features strong{font-size:16px;font-weight:500}


















@media(max-width:720px){.pro-login{padding:34px 22px;width:min(460px,94vw)}.pro-login h1{font-size:27px}.login-subtitle{font-size:16px}.pro-login .login-logo-wrap{width:220px;height:104px}.pro-login .login-logo{width:188px}.login-features{gap:8px}.login-options{font-size:14px}.secure-divider{font-size:14px;gap:10px}.field-box{grid-template-columns:42px 1fr 28px}.login-features strong{font-size:13px}}




































input[readonly],input:disabled{background:#f5f7fa;color:#53657a}.compact-note{margin:0;width:100%;padding:9px 12px}.icon-btn[aria-disabled="true"]{opacity:.45;pointer-events:none}


































/* Muni tagline logo visibility */
















.pro-login .login-logo-wrap{
















  width:min(420px,92%);
















  height:190px;
















  padding:14px 20px;
















  border:1px solid #d8e5f2;
















  border-radius:18px;
















  background:#ffffff;
















  box-shadow:0 16px 40px rgba(12,52,104,.12);
















}
















.pro-login .login-logo{
















  width:100%;
















  max-width:380px;
















  max-height:158px;
















  object-fit:contain;
















}
















.login-page::before{
















  background:
















    linear-gradient(rgba(255,255,255,.08),rgba(255,255,255,.08)),
















    url("assets/muni-login-logo.png");
















  background-repeat:no-repeat;
















  background-position:118% 56%;
















  background-size:560px auto;
















}
















@media(max-width:720px){
















  .pro-login .login-logo-wrap{width:min(330px,94%);height:152px;padding:10px 14px}
















  .pro-login .login-logo{max-width:300px;max-height:128px}
















}


































/* Refined executive login */
















.login-page{
















  min-height:100vh;
















  display:grid;
















  place-items:center;
















  padding:28px 16px;
















  background:
















    radial-gradient(circle at 14% 18%, rgba(45,139,218,.30) 0 190px, transparent 191px),
















    radial-gradient(circle at 86% 82%, rgba(255,196,38,.16) 0 170px, transparent 171px),
















    linear-gradient(140deg,#03132b 0%,#062d62 46%,#075aa6 100%);
















}
















.login-page::before{
















  content:"";
















  position:fixed;
















  inset:0;
















  pointer-events:none;
















  background:
















    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
















    linear-gradient(0deg,rgba(255,255,255,.04) 1px,transparent 1px);
















  background-size:48px 48px;
















  mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.35) 58%,transparent 100%);
















}
















.pro-login{
















  width:min(520px,94vw);
















  padding:34px 38px 30px;
















  border-radius:24px;
















  background:rgba(255,255,255,.98);
















  border:1px solid rgba(255,255,255,.82);
















  box-shadow:0 34px 90px rgba(0,22,58,.42);
















  gap:14px;
















}
















.pro-login::before{
















  content:"";
















  position:absolute;
















  inset:0 0 auto 0;
















  height:6px;
















  background:linear-gradient(90deg,#ffc629,#258fca,#064f9e);
















}
















.pro-login .login-logo-wrap{
















  width:min(330px,90%);
















  height:150px;
















  margin:0 auto 4px;
















  padding:12px 16px;
















  border:1px solid #d7e5f4;
















  border-radius:20px;
















  background:linear-gradient(180deg,#fff,#f8fbff);
















  box-shadow:0 18px 42px rgba(9,58,118,.13);
















}
















.pro-login .login-logo{
















  width:100%;
















  max-width:300px;
















  max-height:126px;
















  object-fit:contain;
















}
















.login-welcome{
















  margin:8px 0 0;
















  color:#0869bd;
















  font-size:20px;
















  font-weight:900;
















}
















.pro-login h1{
















  font-size:30px;
















  letter-spacing:0;
















  color:#10223e;
















}
















.login-subtitle{
















  margin:-5px 0 12px;
















  font-size:15px;
















  color:#71829e;
















}
















.field-label{gap:8px}.field-title{font-size:13px;color:#1e3658}.field-box{
















  min-height:56px;
















  grid-template-columns:42px 1fr 28px;
















  border-radius:14px;
















  border-color:#cfdae8;
















  background:#fbfdff;
















  box-shadow:none;
















}
















.field-box:focus-within{
















  border-color:#1472c8;
















  box-shadow:0 0 0 4px rgba(20,114,200,.12);
















  background:#fff;
















}
















.field-box input{min-height:50px;font-size:16px}.field-icon{width:34px;height:34px}.field-side{font-size:12px;opacity:.65}.login-options{font-size:14px;margin:0}.remember-line input{width:18px;height:18px;min-height:18px}.login-submit{
















  min-height:56px;
















  border-radius:14px;
















  margin-top:2px;
















  background:linear-gradient(90deg,#268bf2,#0755b4 58%,#003f91)!important;
















  box-shadow:0 16px 30px rgba(7,85,180,.28);
















}
















.secure-divider{font-size:14px;margin:2px 0;color:#8b9ab0}.login-features{gap:8px}.feature-icon{width:42px;height:42px}.login-features strong{font-size:13px;color:#294262}.login-card .notice{font-size:13px;padding:10px 12px}
















@media(max-width:560px){
















  .pro-login{padding:26px 20px 24px;border-radius:20px}
















  .pro-login .login-logo-wrap{width:min(285px,94%);height:130px}
















  .pro-login .login-logo{max-width:260px;max-height:110px}
















  .pro-login h1{font-size:23px}
















  .login-welcome{font-size:18px}
















  .login-features{grid-template-columns:1fr 1fr 1fr}
















}



































.login-submit{display:flex!important;justify-content:center!important;grid-template-columns:none!important}.login-options{justify-content:flex-start!important}



















































.attachment-box{border:1px solid var(--line);border-radius:10px;background:#f8fbfc;padding:14px;display:grid;gap:10px}.attachment-box input[type=file]{background:#fff}.attached-file{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px}.attached-file.muted{color:var(--muted)}






























.attachment-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.attachment-head strong{display:block;font-size:15px}.real-file-input{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.selected-file{border:1px dashed #b8c7d7;border-radius:8px;background:#fff;padding:10px 12px;color:#243647;font-weight:800}.attachment-box{position:relative}




























.native-file-label{border:2px dashed #8fb6dc;background:#fff;border-radius:10px;padding:14px;display:grid;gap:8px;color:#123f68}.native-file-input{position:static!important;left:auto!important;width:100%!important;height:auto!important;opacity:1!important;background:#fff}.attachment-box .selected-file{font-weight:800;color:#123f68}



























.nav-bottom{margin-top:22px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14)}








































.report-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.print-panel{margin-top:18px}@media print{.report-grid,.section-title .top-actions,.report-actions{display:none!important}}
























.register-missing-list li{align-items:center}.register-missing-list .icon-btn{margin-left:auto}































.user-hero{align-items:center}.user-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.user-stat{border:1px solid var(--line);border-radius:10px;background:#fff;padding:16px;box-shadow:0 10px 28px rgba(24,38,57,.06)}.user-stat span{display:block;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.user-stat strong{display:block;font-size:30px;color:var(--ink);margin:6px 0}.user-stat small{color:var(--muted)}.user-stat.owner{border-top:4px solid #0f4c81}.user-stat.company{border-top:4px solid #188f7a}.user-stat.active{border-top:4px solid #c99700}.user-management-shell{display:grid;grid-template-columns:minmax(380px,520px) minmax(0,1fr);gap:18px;align-items:start;margin-bottom:18px}.user-editor-card .panel-head p,.user-access-card .panel-head p,.user-list-panel .panel-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.user-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.user-form-grid label{display:grid;gap:6px}.user-form-grid label small{font-size:12px;color:var(--muted);line-height:1.35}.user-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.compact-access{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));max-height:560px;overflow:auto;padding-right:4px}.compact-access .access-row{grid-template-columns:1fr;gap:8px}.user-register-grid{display:grid;grid-template-columns:1fr;gap:18px}.user-card-list{display:grid;gap:10px}.user-card-row{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(160px,.8fr) minmax(220px,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px}.user-card-row strong,.user-card-row small{display:block}.user-card-row small{color:var(--muted);margin-top:4px}.user-list-panel table small{display:block;color:var(--muted);margin-top:4px}@media(max-width:1100px){.user-stats,.user-management-shell{grid-template-columns:1fr}.user-form-grid{grid-template-columns:1fr}.user-card-row{grid-template-columns:1fr}.user-actions{justify-content:stretch}.user-actions .btn{flex:1}}


















.dashboard-links .metric{position:relative;text-decoration:none}.dashboard-links .metric small{display:block;margin-top:6px;color:var(--muted);font-weight:700}.dashboard-links .metric.registry{border-top:4px solid #6d5dfc}.dashboard-links .metric.vessel{border-top:4px solid #0f766e}.dashboard-links .metric.vehicle{border-top:4px solid #b7791f}.quick-registers a{border-left:4px solid var(--brand)}
















.password-self-card{margin-bottom:18px}.password-self-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.password-self-form label{display:grid;gap:6px}.password-self-form input{min-height:42px}@media(max-width:1100px){.password-self-form{grid-template-columns:1fr}.password-self-form .btn{width:100%}}














.master-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.master-link-card{display:grid;gap:8px;padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:0 10px 26px rgba(24,38,57,.06)}.master-link-card:hover{border-color:var(--brand);transform:translateY(-1px)}.master-link-card strong{font-size:18px}.master-link-card span{color:var(--muted);line-height:1.45}.master-link-card em{font-style:normal;color:var(--brand);font-weight:800}.master-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.master-summary-grid div{border:1px solid var(--line);border-radius:8px;background:#f8fbfc;padding:14px}.master-summary-grid strong{display:block;font-size:26px;color:var(--brand-2)}.master-summary-grid span{color:var(--muted);font-weight:700}.master-window-grid{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:18px;align-items:start}.master-pill-list{display:flex;flex-wrap:wrap;gap:10px}.master-pill-list span{display:inline-flex;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#f8fbfc;color:var(--ink);font-weight:700}@media(max-width:900px){.master-link-grid,.master-window-grid,.master-summary-grid{grid-template-columns:1fr}}












.master-action-btn{min-height:70px;justify-content:space-between;font-size:16px}.master-action-btn span{background:rgba(255,255,255,.18);border-radius:999px;padding:4px 10px}.master-row-list{display:grid;gap:10px}.master-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px 14px}.master-row strong,.master-row small{display:block}.master-row small{color:var(--muted);margin-top:4px}.master-row .icon-btn{white-space:nowrap}@media(max-width:700px){.master-row{align-items:flex-start;flex-direction:column}.master-row .icon-btn{width:100%;justify-content:center}}










.row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.row-actions form{margin:0}.icon-btn.danger{border-color:#f2b8b5;color:#b42318;background:#fff5f5}.icon-btn.danger:hover{background:#ffe8e6}








.report small{display:block;color:var(--muted);font-weight:800;margin-top:6px}.report-popup-head{display:grid;gap:4px;margin-bottom:12px}.report-popup-head h2{margin:0;color:var(--ink)}.report-popup-head p{margin:0;color:var(--muted)}.report-popup-head span{font-size:12px;color:var(--brand);font-weight:800}.preview-modal.report-open .preview-dialog{max-width:min(1180px,96vw)}.preview-modal.report-open .preview-body{background:#fff}.report-preview-content table small{display:block;color:var(--muted);margin-top:3px}@media print{body>*:not(.preview-modal){display:none!important}.preview-modal{position:static!important;display:block!important;background:#fff!important}.preview-dialog{box-shadow:none!important;max-width:none!important;width:100%!important}.preview-head{display:none!important}.preview-body{max-height:none!important;overflow:visible!important}}









/* Official report preview and print styling */


.preview-modal.report-open .preview-dialog{max-width:min(1220px,96vw);border-radius:10px;background:#f4f7fb}


.preview-modal.report-open .preview-head{background:#0b3558;color:#fff;border-bottom:0;padding:14px 18px}


.preview-modal.report-open .preview-head .btn{background:#fff;color:#0b3558;border-color:#d7e3ef}


.preview-modal.report-open .preview-body{padding:22px;background:#f4f7fb}


.report-preview-content{background:#fff;border:1px solid #d9e2ec;border-radius:8px;padding:22px;color:#17202c;box-shadow:0 12px 32px rgba(15,35,55,.08)}


.official-report-head{border:1px solid #cfdce8;border-radius:8px;overflow:hidden;margin-bottom:18px;background:#fff}


.official-brand{display:flex;align-items:center;gap:14px;padding:14px 18px;background:linear-gradient(90deg,#0b3558,#0f5f8f);color:#fff}


.official-brand img{width:96px;height:54px;object-fit:contain;background:#fff;border-radius:6px;padding:4px}


.official-brand strong{display:block;font-size:18px;letter-spacing:.02em}.official-brand span{display:block;font-size:12px;opacity:.9;margin-top:2px}


.official-report-title{padding:18px 18px 12px;border-bottom:1px solid #e2e8f0}.official-report-title h2{margin:0;font-size:24px;color:#102033}.official-report-title p{margin:6px 0 0;color:#5d6b7a;font-size:13px}


.official-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#f7fafc}.official-meta span{padding:10px 14px;border-right:1px solid #e2e8f0;font-size:12px;font-weight:800;color:#334155}.official-meta span:last-child{border-right:0}


.report-preview-content .table-wrap{border:1px solid #d9e2ec;border-radius:8px;overflow:auto;background:#fff}.report-preview-content table{width:100%;border-collapse:collapse;font-size:12px}.report-preview-content th{background:#eaf1f7;color:#102033;text-transform:uppercase;font-size:11px;letter-spacing:.04em;border-bottom:1px solid #cfdce8;padding:10px}.report-preview-content td{border-bottom:1px solid #edf2f7;padding:9px 10px;vertical-align:top}.report-preview-content tr:nth-child(even) td{background:#fbfdff}.report-preview-content td strong{color:#102033}.report-preview-content table small{display:block;color:#64748b;margin-top:3px}.report-preview-content .status{background:#eef6ff;border-color:#cfe5fb;color:#0b4f7a}


@media print{html,body{background:#fff!important;color:#111!important}.preview-modal.report-open{position:static!important;display:block!important;background:#fff!important;padding:0!important}.preview-modal.report-open .preview-dialog{width:100%!important;max-width:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}.preview-modal.report-open .preview-head{display:none!important}.preview-modal.report-open .preview-body{padding:0!important;background:#fff!important;max-height:none!important;overflow:visible!important}.report-preview-content{border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important}.official-brand{background:#0b3558!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.official-brand img{width:82px;height:46px}.official-report-title h2{font-size:20px}.official-meta{grid-template-columns:repeat(3,1fr)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-preview-content .table-wrap{border-radius:0;overflow:visible}.report-preview-content table{font-size:10.5px;page-break-inside:auto}.report-preview-content tr{page-break-inside:avoid;page-break-after:auto}.report-preview-content th{background:#eaf1f7!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-preview-content td,.report-preview-content th{padding:7px 8px}a[href]:after{content:''!important}@page{size:A4 landscape;margin:12mm}}






.report-hero{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}.report-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.report-summary-strip div{background:#0b3558;color:#fff;border-radius:8px;padding:14px 16px}.report-summary-strip strong{display:block;font-size:26px}.report-summary-strip span{font-size:12px;opacity:.88;font-weight:800}.modern-report-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.modern-report{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;border-top:4px solid #64748b}.modern-report.blue{border-top-color:#0f5f8f}.modern-report.danger{border-top-color:#b42318}.modern-report.amber{border-top-color:#b7791f}.modern-report>div:first-child{display:grid;gap:6px}.report-count{text-align:right;background:#f5f8fb;border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:74px}.report-count b{display:block;font-size:22px;color:#0b3558}.report-count small{font-size:11px;color:var(--muted);font-weight:800}.modern-report .report-actions{grid-column:1/-1;justify-content:flex-end}@media(max-width:800px){.report-summary-strip{grid-template-columns:repeat(2,1fr)}.modern-report{grid-template-columns:1fr}.report-count{text-align:left}.modern-report .report-actions{justify-content:stretch}.modern-report .report-actions .icon-btn{flex:1;justify-content:center}}



/* Zeyora Flow inspired official report preview */
.preview-modal.report-open .preview-dialog{max-width:min(1180px,96vw);background:#edf2f7;border-radius:12px}.preview-modal.report-open .preview-head{background:#111827;color:#fff}.preview-modal.report-open .preview-body{background:#edf2f7;padding:20px}.report-preview-content{font-family:Arial,Helvetica,sans-serif;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:0;overflow:hidden;box-shadow:0 18px 45px rgba(15,23,42,.16)}
.zeyora-report-head{background:#fff}.zeyora-topline{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 22px;border-bottom:1px solid #d8e1ec}.zeyora-brand{display:flex;align-items:center;gap:14px}.zeyora-brand img{width:112px;height:62px;object-fit:contain;border:1px solid #d8e1ec;border-radius:8px;background:#fff;padding:5px}.zeyora-brand strong{display:block;font-size:20px;color:#0f172a}.zeyora-brand span{display:block;color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase;margin-top:3px}.zeyora-doc-box{min-width:190px;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;text-align:right}.zeyora-doc-box span{display:block;background:#0f172a;color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em;padding:7px 10px}.zeyora-doc-box strong{display:block;color:#0f172a;padding:10px;font-size:15px}.zeyora-title-band{background:linear-gradient(90deg,#0f5f8f,#0b3558);color:#fff;padding:18px 22px}.zeyora-title-band span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;opacity:.85}.zeyora-title-band h2{margin:5px 0 4px;font-size:26px;color:#fff}.zeyora-title-band p{margin:0;font-size:13px;opacity:.92}.zeyora-info-grid{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #d8e1ec}.zeyora-info-grid div{padding:12px 16px;border-right:1px solid #d8e1ec;background:#f8fafc}.zeyora-info-grid div:last-child{border-right:0}.zeyora-info-grid span{display:block;font-size:11px;text-transform:uppercase;color:#64748b;font-weight:900;letter-spacing:.05em}.zeyora-info-grid strong{display:block;margin-top:4px;color:#0f172a;font-size:14px}.zeyora-section-title{margin:18px 22px 0;background:#e8f1f8;border-left:5px solid #0f5f8f;color:#0f172a;padding:10px 12px;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.06em}.zeyora-report-table{margin:12px 22px 20px;border:1px solid #cbd5e1;border-radius:8px;overflow:auto}.zeyora-report-table table{border-collapse:collapse;width:100%;font-size:12px}.zeyora-report-table th{background:#111827!important;color:#fff!important;padding:10px 9px;text-align:left;text-transform:uppercase;font-size:10px;letter-spacing:.06em}.zeyora-report-table td{padding:9px;border-bottom:1px solid #e2e8f0;vertical-align:top;color:#1f2937}.zeyora-report-table tr:nth-child(even) td{background:#f8fafc}.zeyora-report-table td strong{color:#111827}.zeyora-report-table small{display:block;color:#64748b;margin-top:3px}.zeyora-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:4px 22px 22px}.zeyora-signatures div{border:1px solid #cbd5e1;border-radius:8px;padding:12px;background:#fff}.zeyora-signatures span{display:block;font-size:11px;text-transform:uppercase;color:#64748b;font-weight:900}.zeyora-signatures strong{display:block;margin-top:18px;color:#111827;font-size:13px}
@media(max-width:800px){.zeyora-topline{flex-direction:column;align-items:stretch}.zeyora-doc-box{text-align:left}.zeyora-info-grid,.zeyora-signatures{grid-template-columns:1fr}.zeyora-info-grid div{border-right:0;border-bottom:1px solid #d8e1ec}}
@media print{.report-preview-content{border:0!important;border-radius:0!important;box-shadow:none!important}.zeyora-topline{padding:12px 0}.zeyora-title-band{background:#0b3558!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:12px 14px}.zeyora-title-band h2{font-size:20px}.zeyora-info-grid div{padding:8px 10px}.zeyora-section-title{margin:12px 0 8px}.zeyora-report-table{margin:0 0 14px;border-radius:0;overflow:visible}.zeyora-report-table th{background:#111827!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.zeyora-report-table td,.zeyora-report-table th{padding:6px;font-size:10px}.zeyora-signatures{padding:6px 0 0;gap:8px}.zeyora-signatures div{padding:8px}.zeyora-brand img{width:78px;height:44px}.zeyora-doc-box strong{padding:7px}.zeyora-doc-box span{padding:5px 7px}}

/* Clean official report preview */
.official-report-head{background:#fff;border-bottom:1px solid #d8e1ec}
.official-report-top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 24px 16px}
.official-report-brand{display:flex;align-items:center;gap:16px;min-width:0}
.official-report-brand img{width:128px;height:72px;object-fit:contain;border:1px solid #d8e1ec;border-radius:8px;background:#fff;padding:6px}
.official-report-brand strong{display:block;color:#0f172a;font-size:22px;line-height:1.15}
.official-report-brand span{display:block;color:#0b5d8b;font-size:13px;font-weight:900;margin-top:4px;text-transform:uppercase}
.official-report-brand em{display:block;color:#64748b;font-size:12px;font-style:normal;margin-top:3px}
.official-report-ref{min-width:230px;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;text-align:right;background:#fff}
.official-report-ref span{display:block;background:#0b3558;color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em;padding:8px 12px;text-transform:uppercase}
.official-report-ref strong{display:block;color:#0f172a;font-size:16px;padding:10px 12px 2px}
.official-report-ref small{display:block;color:#64748b;padding:0 12px 10px}
.official-report-title{background:linear-gradient(90deg,#073763,#0b5d8b);color:#fff;padding:18px 24px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.official-report-title span{display:block;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;opacity:.86}
.official-report-title h2{color:#fff;font-size:28px;margin:5px 0 4px;line-height:1.15}
.official-report-title p{margin:0;color:#e7f2fb;font-size:13px;line-height:1.45}
.official-report-meta{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #d8e1ec;border-bottom:1px solid #d8e1ec}
.official-report-meta div{background:#f8fafc;border-right:1px solid #d8e1ec;padding:12px 14px;min-height:68px}
.official-report-meta div:last-child{border-right:0}
.official-report-meta span{display:block;color:#64748b;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.official-report-meta strong{display:block;color:#0f172a;font-size:13px;margin-top:5px;line-height:1.25}
.official-report-meta small{display:block;color:#64748b;font-size:11px;margin-top:2px}
.report-header-details{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d8e1ec;border-bottom:1px solid #d8e1ec}
.report-header-details div{background:#fbfdfd;border-right:1px solid #d8e1ec;border-bottom:1px solid #d8e1ec;padding:10px 12px;min-height:58px}
.report-header-details div:nth-child(3n){border-right:0}
.report-header-details span{display:block;color:#607080;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.report-header-details strong{display:block;color:#10242b;font-size:13px;margin-top:4px;line-height:1.25}
.report-header-details small{display:block;color:#64748b;font-size:11px;margin-top:2px}
.official-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 24px 10px;background:#e8f1f8;border-left:5px solid #0b5d8b;padding:10px 12px;color:#0f172a}
.official-section-title span{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.official-section-title strong{font-size:12px;color:#0b5d8b}
.official-report-table{margin:0 24px 22px;border:1px solid #cbd5e1;border-radius:8px;overflow:auto;background:#fff}
.official-report-table table{width:100%;min-width:0;border-collapse:collapse;font-size:12px;table-layout:fixed}
.official-report-table th{background:#111827!important;color:#fff!important;text-align:left;text-transform:uppercase;font-size:10px;letter-spacing:.06em;padding:10px 9px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.official-report-table td{padding:10px 9px;border-bottom:1px solid #e2e8f0;vertical-align:top;color:#1f2937;word-break:break-word}
.official-report-table tr:nth-child(even) td{background:#f8fafc}
.official-report-table td strong{display:block;color:#0f172a;font-size:12px;line-height:1.35}
.official-report-table small{display:block;color:#64748b;font-size:10.5px;margin-top:4px;line-height:1.3}
.official-report-table .file-ok{color:#087443;font-weight:900}
.official-report-table .file-missing{color:#b42318;font-weight:900}
.official-report-footer{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:22px 24px 24px;margin-top:auto}
.official-report-footer div{border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:13px}
.official-report-footer span{display:block;color:#64748b;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.official-report-footer strong{display:block;color:#111827;font-size:13px;margin-top:20px}
@media(max-width:900px){.official-report-top{flex-direction:column;align-items:stretch}.official-report-ref{text-align:left}.official-report-meta,.official-report-footer{grid-template-columns:1fr}.official-report-meta div{border-right:0;border-bottom:1px solid #d8e1ec}.official-report-table{margin-left:14px;margin-right:14px}.official-section-title{margin-left:14px;margin-right:14px}}
@media print{.official-report-top{padding:10px 0}.official-report-brand img{width:82px;height:48px}.official-report-brand strong{font-size:18px}.official-report-title{background:#0b3558!important;padding:12px 14px}.official-report-title h2{font-size:20px}.official-report-meta{grid-template-columns:repeat(3,1fr)}.official-report-meta div{padding:7px 9px;min-height:0}.official-section-title{margin:12px 0 8px}.official-report-table{margin:0 0 12px;border-radius:0;overflow:visible}.official-report-table table{font-size:9.5px}.official-report-table th,.official-report-table td{padding:5px 6px}.official-report-footer{padding:4px 0 0;gap:8px}.official-report-footer div{padding:8px}@page{size:A4 landscape;margin:10mm}}

/* ShipmentSMS Clearance Reports inspired preview only */
.preview-modal.report-open .preview-dialog{background:#f4f7f8}
.preview-modal.report-open .preview-head{background:#10242b;color:#fff}
.preview-modal.report-open .preview-head .btn{background:#fff;color:#10242b;border-color:#d8e0e6}
.preview-modal.report-open .preview-dialog{max-width:min(1180px,98vw);width:min(1180px,98vw);background:#eef2f5;border-radius:8px}
.preview-modal.report-open .preview-body{background:#eef2f5;padding:18px;display:flex;justify-content:center;align-items:flex-start}
.clearance-style-report{border-radius:8px;border:1px solid #d8e0e6;box-shadow:0 14px 34px rgba(16,36,43,.12);background:#fff}
.clearance-style-report{min-height:760px;display:flex;flex-direction:column}
.clearance-style-report .official-report-title{background:linear-gradient(135deg,#0f766e,#10242b)!important}
.clearance-style-report .official-report-ref span,.clearance-style-report .official-report-table th{background:#10242b!important;color:#fff!important}
.clearance-style-report .official-report-brand span,.clearance-style-report .official-section-title strong,.clearance-style-report .official-report-table .file-ok{color:#0f766e}
.clearance-style-report .official-section-title{background:#edf8f6;border-left-color:#0f766e}
.clearance-style-report .official-report-meta div{background:#fbfdfd}
.clearance-style-report .official-report-table tr:nth-child(even) td{background:#fbfdfd}
.renewal-preview-report .official-report-title{background:linear-gradient(135deg,#8a1f11,#10242b)!important}
.renewal-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px 24px 0}
.renewal-summary div{border:1px solid #d8e0e6;border-radius:8px;background:#fff;padding:12px}
.renewal-summary span{display:block;color:#607080;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.renewal-summary strong{display:block;color:#10242b;font-size:24px;margin-top:4px}
.renewal-report-table table{font-size:12px;table-layout:fixed}
.renewal-report-table td{line-height:1.35}
.renewal-report-table td:nth-child(5) strong{font-size:13px;color:#8a1f11}
.renewal-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;background:#e8f1f8;color:#0b5d8b;white-space:normal;line-height:1.2}
.renewal-badge.expired{background:#fee4e2;color:#b42318}
.renewal-badge.expiring-in-7-days,.renewal-badge.expiring-in-30-days{background:#fef0c7;color:#b54708}
.renewal-badge.expiring-in-60-days{background:#e0f2fe;color:#175cd3}
.renewal-badge.no-expiry-date{background:#f2f4f7;color:#475467}
@media(max-width:900px){.renewal-summary{grid-template-columns:1fr 1fr;padding-left:14px;padding-right:14px}.renewal-report-table table{min-width:980px}}
@media print{.print-panel{display:none!important}.clearance-style-report .official-report-title{background:#0f766e!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.clearance-style-report .official-report-ref span,.clearance-style-report .official-report-table th{background:#10242b!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media print{.clearance-style-report{min-height:185mm;display:flex!important;flex-direction:column!important}.report-header-details{grid-template-columns:repeat(3,1fr)!important}.report-header-details div{padding:6px 8px;min-height:0}.official-report-table{margin-bottom:8px!important}.official-report-footer{margin-top:auto!important;padding-top:14px!important}.official-report-footer strong{margin-top:14px!important}@page{size:A4 landscape;margin:10mm}}

/* Clearance Status Report document layout */
.clearance-status-report{max-width:1120px;margin:0 auto;border-radius:4px!important;border:1px solid #cfd8e3!important;box-shadow:none!important;background:#fff!important;min-height:720px!important}
.preview-modal.report-open .clearance-status-report{width:1120px;max-width:100%;min-height:792px!important;box-shadow:0 16px 42px rgba(16,36,43,.16)!important}
.clearance-status-report .official-report-head{border-bottom:0;background:#fff}
.clearance-status-report .official-report-top{padding:14px 18px 10px;border-top:6px solid #0f766e;border-bottom:1px solid #d8e0e6}
.clearance-status-report .official-report-brand img{width:88px;height:50px;border:0;padding:0}
.clearance-status-report .official-report-brand strong{font-size:18px;color:#172026}
.clearance-status-report .official-report-brand span{font-size:11px;color:#0f766e;letter-spacing:.04em}
.clearance-status-report .official-report-brand em{font-size:11px;color:#607080}
.clearance-status-report .official-report-ref{min-width:210px;border:1px solid #d8e0e6;border-radius:4px;text-align:left}
.clearance-status-report .official-report-ref span{background:#f4f7f8!important;color:#52616d!important;border-bottom:1px solid #d8e0e6;padding:6px 9px}
.clearance-status-report .official-report-ref strong{font-size:14px;padding:8px 9px 1px}
.clearance-status-report .official-report-ref small{font-size:10px;padding:0 9px 7px}
.clearance-status-report .official-report-title{background:#fff!important;color:#172026!important;padding:14px 18px 8px;border-bottom:0}
.clearance-status-report .official-report-title span{color:#0f766e;opacity:1;font-size:10px}
.clearance-status-report .official-report-title h2{color:#172026!important;font-size:22px;margin:3px 0}
.clearance-status-report .official-report-title p{color:#607080!important;font-size:12px}
.clearance-status-report .report-header-details{margin:0 18px 12px;border:1px solid #d8e0e6;border-radius:4px;overflow:hidden;grid-template-columns:repeat(3,1fr)}
.clearance-status-report .report-header-details div{min-height:48px;padding:8px 10px;background:#fbfcfd}
.clearance-status-report .report-header-details span{font-size:9.5px;color:#607080}
.clearance-status-report .report-header-details strong{font-size:12px;color:#172026}
.clearance-status-report .official-section-title{margin:12px 18px 8px;background:#f4f7f8;border-left:4px solid #0f766e;border-radius:0;padding:8px 10px}
.clearance-status-report .official-section-title span{font-size:11px}
.clearance-status-report .official-report-table{margin:0 18px 12px;border-radius:4px;border-color:#d8e0e6}
.clearance-status-report .official-report-table{overflow:visible}
.clearance-status-report .official-report-table table{font-size:11px;min-width:0!important;width:100%!important;table-layout:fixed}
.clearance-status-report .official-report-table th{background:#10242b!important;padding:8px 7px;font-size:9.5px;letter-spacing:.04em}
.clearance-status-report .official-report-table td{padding:7px;border-bottom-color:#e7edf2}
.clearance-status-report .official-report-table th,.clearance-status-report .official-report-table td{white-space:normal;overflow-wrap:anywhere}
.clearance-status-report .official-report-table td strong{font-size:11.5px}
.clearance-status-report .status,.clearance-status-report .renewal-badge{border-radius:4px;padding:4px 6px;font-size:9.5px}
.clearance-status-report .renewal-summary{padding:4px 18px 0;gap:8px}
.clearance-status-report .renewal-summary div{border-radius:4px;padding:9px 10px;background:#fbfcfd}
.clearance-status-report .renewal-summary strong{font-size:20px;color:#172026}
.clearance-status-report .official-report-footer{padding:12px 18px 18px;gap:12px}
.clearance-status-report .official-report-footer div{border-radius:4px;padding:10px;min-height:68px}
.clearance-status-report .official-report-footer span{font-size:10px}
.clearance-status-report .official-report-footer strong{margin-top:16px;border-top:1px solid #cfd8e3;padding-top:8px}
@media print{.clearance-status-report{max-width:none!important;min-height:185mm!important;border:0!important}.clearance-status-report .official-report-top{padding:8px 0 7px}.clearance-status-report .official-report-title{padding:9px 0 6px}.clearance-status-report .report-header-details,.clearance-status-report .official-section-title,.clearance-status-report .official-report-table{margin-left:0!important;margin-right:0!important}.clearance-status-report .official-report-footer{padding-left:0!important;padding-right:0!important}.clearance-status-report .official-report-table th,.clearance-status-report .official-report-table td{padding:5px 6px}.clearance-status-report .renewal-summary{padding-left:0!important;padding-right:0!important}}

/* Task Dashboard */
.top-alert-link{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:6px 11px;border:1px solid #cfe2ea;border-radius:999px;background:#f2fbfd;color:#155e75;text-decoration:none;font-weight:800}.top-alert-link span{font-size:12px}.top-alert-link strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:999px;background:#155e75;color:#fff;font-size:12px}.top-alert-link.messages{background:#f5f8ff;border-color:#cdd9ff;color:#175cd3}.top-alert-link.messages strong{background:#175cd3}
.message-layout{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(0,1.4fr);gap:18px}.message-thread-list{display:grid;gap:10px}.message-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;display:grid;gap:8px}.message-card.unread{border-left:5px solid #175cd3;background:#f8fbff}.message-card div:first-child{display:flex;justify-content:space-between;gap:10px}.message-card span,.message-card small{color:var(--muted);font-size:12px}.message-card p{margin:0;color:var(--ink);line-height:1.45}.message-popup{position:fixed;right:22px;bottom:22px;z-index:30;width:min(360px,calc(100vw - 32px));background:#fff;border:1px solid #cdd9ff;border-left:5px solid #175cd3;border-radius:10px;box-shadow:0 18px 50px rgba(16,24,40,.2);padding:16px;display:grid;gap:8px}.message-popup strong{color:#102a56}.message-popup p{margin:0;line-height:1.45}.message-popup-close{position:absolute;top:8px;right:8px;min-height:26px;width:26px;padding:0;border-radius:999px;font-size:12px}.message-popup .row-actions{margin-top:4px}@media(max-width:1100px){.message-layout{grid-template-columns:1fr}.message-popup{right:12px;bottom:12px}}
.fitron-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.fitron-tabs a{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#244456;text-decoration:none;font-weight:800}.fitron-tabs a.active,.fitron-tabs a:hover{background:#155e75;color:#fff;border-color:#155e75}.fitron-tabs+.metric-grid{margin-top:4px}.invoice-actions{gap:6px;flex-wrap:wrap}.invoice-actions .share-btn{text-decoration:none}.invoice-actions .whatsapp{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.invoice-actions .viber{border-color:#ddd6fe;background:#f5f3ff;color:#6d28d9}.payment-row td{background:#f8fbfc!important;border-top:0}.payment-receive-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:end}.payment-receive-form label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#607080;font-weight:900}.payment-receive-form input,.payment-receive-form select{margin-top:5px;text-transform:none;letter-spacing:0;color:var(--ink);font-weight:700}.payment-receive-form .btn,.payment-receive-form .icon-btn{min-height:38px;align-self:end}.fitron-invoice-templates,.fitron-invoice-print{display:none}.preview-body .fitron-invoice-print{display:flex}.fitron-billto{border-top:1px solid #d8e0e6}.fitron-invoice-print .official-report-table td:last-child{font-size:15px}
.muted{color:var(--muted);margin:4px 0 0;font-size:12px}.task-dashboard{padding:0;overflow:hidden}.task-dashboard>.panel-head{padding:16px 18px;margin:0;border-bottom:1px solid var(--line);background:#fff}.task-alert-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:14px 18px;background:#f8fbfc;border-bottom:1px solid var(--line)}.task-alert{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;background:#fff;padding:10px}.task-alert strong{display:block;font-size:12px;color:#172026}.task-alert span{display:block;color:#607080;font-size:12px;margin-top:3px}.task-alert.danger{border-left-color:var(--danger)}.task-alert.amber{border-left-color:var(--amber)}.task-alert.green{border-left-color:var(--ok)}.task-workspace{display:grid;grid-template-columns:300px 1fr;min-height:520px}.task-list{border-right:1px solid var(--line);background:#fbfcfd;padding:12px;display:grid;align-content:start;gap:8px}.task-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.task-list-item{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px}.task-list-item.active,.task-list-item:hover{border-color:#0f766e;background:#eef8f6}.task-list-item strong{display:block;font-size:13px}.task-list-item span,.task-list-item small{display:block;color:#607080;font-size:11px;margin-top:4px}.task-detail{padding:16px;background:#fff}.task-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.task-form-grid .span-2{grid-column:span 2}.task-checklist{border:1px solid var(--line);border-radius:8px;background:#f8fbfc;padding:12px;margin:12px 0;display:grid;gap:8px}.task-checklist>strong{font-size:13px}.task-checklist label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;font-weight:700}.task-checklist input[type=checkbox]{width:16px;height:16px;accent-color:#0f766e}.task-side-panels{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:12px;margin-top:14px}.task-side-panels section{border:1px solid var(--line);border-radius:8px;background:#fbfcfd;padding:12px;display:grid;gap:8px;align-content:start}.task-side-panels h4{margin:0;font-size:13px}.task-message{border:1px solid #d8e3ea;background:#fff;border-radius:8px;padding:9px;margin-bottom:8px}.task-message.unread{border-left:4px solid #0f766e}.task-message p{margin:6px 0;color:#1b2430}.message-form{display:grid;gap:8px}.timeline-item{border-bottom:1px solid var(--line);padding-bottom:8px}.timeline-item strong{display:block;font-size:12px}.timeline-item span{display:block;font-size:11px;color:#607080;margin-top:3px}@media(max-width:1100px){.task-workspace{grid-template-columns:1fr}.task-list{border-right:0;border-bottom:1px solid var(--line)}.task-form-grid,.task-side-panels{grid-template-columns:1fr}.task-form-grid .span-2{grid-column:auto}}

/* Browser friendly responsive layout */
.mobile-shellbar,.mobile-menu-close,.mobile-menu-backdrop{display:none}.brand-row{display:block}.nav-scroll{display:block}.mobile-menu-toggle{min-height:40px;background:#fff;color:#123331;border-color:rgba(255,255,255,.45);box-shadow:0 8px 18px rgba(0,0,0,.14)}
@media(max-width:1100px){body{padding-top:66px}.mobile-shellbar{position:fixed;inset:0 0 auto 0;z-index:40;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:66px;padding:10px 14px;background:linear-gradient(135deg,#10243a,#0f766e);color:#fff;box-shadow:0 8px 28px rgba(15,23,42,.22)}.mobile-shellbar strong{font-size:17px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-shellbar span{font-size:12px;font-weight:800;opacity:.86;max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar{position:fixed;top:74px;left:12px;right:12px;bottom:auto;width:auto;max-height:calc(100dvh - 88px);z-index:50;display:none;border-radius:14px;padding:12px;background:linear-gradient(180deg,#132131,#123331);box-shadow:0 22px 70px rgba(15,23,42,.38);overflow:hidden}.sidebar.mobile-open{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 4px 10px;border-bottom:1px solid rgba(255,255,255,.14)}.brand{margin:0;border:0;padding:4px 6px}.mobile-menu-close{display:inline-flex;min-height:34px;padding:7px 10px;color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22)}.nav-scroll{overflow:auto;padding:10px 2px 4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.nav-link{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;margin:0;padding:10px;border-radius:10px;background:rgba(255,255,255,.07)}.nav-link.active{background:#fff;color:#123331}.nav-bottom{display:contents}.role-box{display:grid;margin:10px 2px 2px}.mobile-menu-backdrop{position:fixed;inset:0;z-index:45;background:rgba(15,23,42,.48);backdrop-filter:blur(2px)}.mobile-menu-backdrop.show{display:block}.topbar{margin-left:0;min-height:auto;padding:16px 14px;display:grid;gap:12px}.topbar .top-actions{justify-content:flex-start}.content{margin-left:0;width:100%;padding:16px 14px 42px}.section-title,.page-hero{display:grid;gap:12px;padding:15px}.panel{padding:14px;border-radius:10px}.panel-head{display:grid;gap:10px;align-items:start}.metric-grid,.report-grid,.checklist-grid,.master-summary-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.dashboard-grid,.message-layout,.subscription-grid,.planStudioGrid,.registry-grid,.user-flow-grid,.master-window-grid{grid-template-columns:1fr}.form-grid,.task-form-grid{grid-template-columns:1fr;padding:14px}.span-2,.task-form-grid .span-2{grid-column:auto}.filters{grid-template-columns:1fr}.filters .btn,.filters button,.top-actions .btn,.top-actions button{width:100%}.table-wrap{border-radius:10px;overflow:auto}.table-wrap:before{content:"Swipe table left / right";display:block;padding:8px 10px;background:#f8fbfc;color:#667085;font-size:11px;font-weight:800;border-bottom:1px solid var(--line)}.row-actions,.actions,.invoice-actions{display:flex;flex-wrap:wrap;gap:7px}.row-actions .icon-btn,.actions .icon-btn,.invoice-actions .icon-btn,.invoice-actions .share-btn{flex:1 1 auto;justify-content:center}.asset-grid{grid-template-columns:1fr}.register-form-panel{position:static}.register-summary{grid-template-columns:1fr}.task-workspace{grid-template-columns:1fr}.task-list{max-height:330px;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}.task-side-panels{grid-template-columns:1fr}.fitron-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.fitron-tabs a{text-align:center;border-radius:10px}.preview-dialog{width:100%;height:calc(100dvh - 28px);border-radius:12px}.message-popup{left:12px;right:12px;bottom:12px;width:auto}}
@media(max-width:620px){body{font-size:13px}.mobile-shellbar{grid-template-columns:auto 1fr;min-height:62px}.mobile-shellbar span{grid-column:2;font-size:11px;max-width:100%;margin-top:-6px}.sidebar{top:70px;left:8px;right:8px;max-height:calc(100dvh - 78px)}.nav-scroll{grid-template-columns:1fr}.content{padding:12px 10px 34px}.topbar{padding:14px 10px}.page-hero h2,.section-title h2{font-size:20px}.metric strong{font-size:26px}.metric-grid,.report-grid,.checklist-grid,.master-summary-grid{grid-template-columns:1fr}.btn,button,.icon-btn{width:100%;white-space:normal}.panel-head .date-chip{width:max-content}.login-page{padding:18px 10px}.login-card{width:100%;padding:22px 16px}.login-logo{width:min(220px,86%)}.login-features{grid-template-columns:1fr;gap:10px}.preview-head{display:grid}.preview-actions{grid-template-columns:1fr;display:grid}.vessel-cert-row,.req-row,.access-row{grid-template-columns:1fr}.payment-receive-form{grid-template-columns:1fr}.message-card div:first-child{display:grid}.official-report-table,.zeyora-report-table,.renewal-report-table{overflow:auto}.report-preview-content{min-width:900px}}
@media(max-width:1100px){.content,.panel,.panel-head,.user-flow-grid,.user-flow-grid>*{min-width:0;max-width:100%}.table-wrap{width:100%;min-width:0}.user-list-panel{overflow:hidden}}

/* Mobile menu and report preview polish */
@media(max-width:1100px){
  .mobile-shellbar{min-height:64px;padding:9px 12px;background:linear-gradient(135deg,#0a2540 0%,#104b63 58%,#0f766e 100%);grid-template-columns:auto minmax(0,1fr) auto;border-bottom:1px solid rgba(255,255,255,.16)}
  .mobile-menu-toggle{width:auto!important;min-width:84px;border-radius:999px;background:rgba(255,255,255,.96);color:#0a2540;border:0}
  .mobile-shellbar strong{font-size:16px}
  .mobile-shellbar span{justify-self:end;max-width:28vw;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.12)}
  .sidebar{top:72px;left:10px;right:10px;border-radius:18px;padding:0;background:#0f1f2f}
  .brand-row{padding:14px 14px 12px;background:linear-gradient(135deg,#0b3558,#0f766e);border-bottom:0}
  .brand-row .brand{font-size:18px}
  .mobile-menu-close{width:auto!important;border-radius:999px;background:rgba(255,255,255,.16)}
  .nav-scroll{padding:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;background:#132131}
  .nav-link{min-height:46px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.06);font-size:13px}
  .nav-link.active{background:#fff;color:#0b3558;border-color:#fff}
  .role-box{margin:0;padding:12px 14px;border:0;border-top:1px solid rgba(255,255,255,.12);border-radius:0;background:#0f1f2f}
}

@media(max-width:760px){
  .preview-modal.report-open{padding:0!important;align-items:stretch;justify-content:stretch}
  .preview-modal.report-open .preview-dialog{width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}
  .preview-modal.report-open .preview-head{display:grid;grid-template-columns:1fr;gap:10px;padding:10px 12px!important}
  .preview-modal.report-open .preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .preview-modal.report-open .preview-actions .btn{width:100%;min-height:38px}
  .preview-modal.report-open .preview-body{padding:10px!important;overflow:auto!important;align-items:flex-start!important;justify-content:flex-start!important}
  .preview-modal.report-open .report-preview-content{min-width:0!important;width:100%!important;max-width:100%!important;border-radius:8px!important;box-shadow:none!important;overflow:hidden}
  .preview-modal.report-open .clearance-status-report{width:100%!important;max-width:100%!important;min-height:auto!important}
  .preview-modal.report-open .official-report-top,.preview-modal.report-open .zeyora-topline{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:12px!important}
  .preview-modal.report-open .official-report-brand,.preview-modal.report-open .zeyora-brand{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important}
  .preview-modal.report-open .official-report-brand img,.preview-modal.report-open .zeyora-brand img{width:76px!important;height:auto!important}
  .preview-modal.report-open .official-report-ref,.preview-modal.report-open .zeyora-doc-box{min-width:0!important;text-align:left!important}
  .preview-modal.report-open .official-report-title,.preview-modal.report-open .zeyora-title-band{padding:12px!important}
  .preview-modal.report-open .official-report-title h2,.preview-modal.report-open .zeyora-title-band h2{font-size:18px!important;line-height:1.2!important}
  .preview-modal.report-open .report-header-details,.preview-modal.report-open .official-report-meta,.preview-modal.report-open .zeyora-info-grid,.preview-modal.report-open .renewal-summary{grid-template-columns:1fr!important;margin-left:10px!important;margin-right:10px!important}
  .preview-modal.report-open .official-section-title,.preview-modal.report-open .zeyora-section-title{margin:10px!important}
  .preview-modal.report-open .official-report-table,.preview-modal.report-open .zeyora-report-table,.preview-modal.report-open .renewal-report-table{margin:10px!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important}
  .preview-modal.report-open .official-report-table table,.preview-modal.report-open .zeyora-report-table table,.preview-modal.report-open .renewal-report-table table{min-width:720px!important;width:max-content!important;table-layout:auto!important}
  .preview-modal.report-open .official-report-footer,.preview-modal.report-open .zeyora-signatures{grid-template-columns:1fr!important;padding:10px!important;gap:10px!important}
}

@media(max-width:620px){
  .mobile-shellbar{grid-template-columns:auto minmax(0,1fr);gap:8px}
  .mobile-shellbar span{display:none}
  .sidebar{top:70px;left:8px;right:8px}
  .nav-scroll{grid-template-columns:1fr}
}

/* Expandable hamburger menu for mobile */
@media(max-width:1100px){
  body{padding-top:64px}
  .mobile-shellbar{min-height:64px;padding:8px 12px;background:#08243f;box-shadow:0 10px 26px rgba(8,36,63,.22)}
  .mobile-menu-toggle{position:relative;display:inline-flex!important;align-items:center;justify-content:center;gap:9px;min-width:48px!important;width:48px!important;height:44px!important;padding:0!important;border-radius:12px!important;background:#fff!important;color:#08243f!important;font-size:0!important;box-shadow:0 8px 18px rgba(0,0,0,.18)}
  .mobile-menu-toggle:before{content:"";width:20px;height:14px;background:linear-gradient(#08243f,#08243f) 0 0/100% 2px no-repeat,linear-gradient(#08243f,#08243f) 0 50%/100% 2px no-repeat,linear-gradient(#08243f,#08243f) 0 100%/100% 2px no-repeat}
  .mobile-menu-toggle:after{content:"Menu";position:absolute;left:54px;color:#fff;font-size:12px;font-weight:900;letter-spacing:.02em}
  .mobile-menu-toggle[aria-expanded="true"]:before{height:20px;background:linear-gradient(45deg,transparent 45%,#08243f 46%,#08243f 54%,transparent 55%),linear-gradient(-45deg,transparent 45%,#08243f 46%,#08243f 54%,transparent 55%)}
  .mobile-menu-toggle[aria-expanded="true"]:after{content:"Close"}
  .mobile-shellbar strong{padding-left:54px;font-size:16px}
  .sidebar{top:64px;left:0;right:0;width:100%;max-height:0;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto;padding:0;border-radius:0 0 18px 18px;background:#0f1f2f;box-shadow:0 26px 58px rgba(8,36,63,.34);overflow:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:max-height .24s ease,opacity .2s ease,transform .22s ease}
  .sidebar.mobile-open{max-height:calc(100dvh - 64px);opacity:1;transform:translateY(0);pointer-events:auto}
  .brand-row{padding:12px 14px;background:#0b3558;border-bottom:1px solid rgba(255,255,255,.12)}
  .mobile-menu-close{display:none!important}
  .nav-scroll{display:grid;grid-template-columns:1fr!important;gap:6px;padding:10px 12px;overflow:auto;background:#10243a}
  .nav-link{justify-content:flex-start;text-align:left;min-height:44px;padding:11px 13px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);color:#eaf6fb}
  .nav-link.active{background:#fff;color:#0b3558;border-color:#fff}
  .nav-bottom{display:grid;gap:6px}
  .role-box{padding:12px 14px;background:#0f1f2f;border-top:1px solid rgba(255,255,255,.12)}
  .mobile-menu-backdrop{z-index:38;background:rgba(8,24,40,.46)}
  .sidebar{z-index:50}
  .mobile-shellbar{z-index:55}
}

@media(max-width:620px){
  .mobile-shellbar{grid-template-columns:48px minmax(0,1fr);gap:8px}
  .mobile-shellbar strong{padding-left:54px}
  .mobile-menu-toggle:after{left:54px}
}

/* Power BI style mobile report preview */
@media(max-width:760px){
  .preview-modal.report-open{background:#0b1727!important}
  .preview-modal.report-open .preview-dialog{background:#f3f6fb!important}
  .preview-modal.report-open .preview-head{position:sticky;top:0;z-index:5;background:#0b1727!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
  .preview-modal.report-open #previewTitle{font-size:15px;line-height:1.25;color:#fff}
  .preview-modal.report-open .preview-actions{grid-template-columns:1fr 1fr}
  .preview-modal.report-open .preview-actions .btn{border-radius:10px;background:#fff!important;color:#0b1727!important;border:0!important;font-weight:900}
  .preview-modal.report-open .preview-body{background:#f3f6fb!important;padding:10px!important}
  .preview-modal.report-open .powerbi-mobile-report{display:grid!important;gap:10px!important;width:100%!important;max-width:100%!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-head,.preview-modal.report-open .powerbi-mobile-report .zeyora-report-head{border:0!important;border-radius:14px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 10px 24px rgba(15,23,42,.08)!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-top,.preview-modal.report-open .powerbi-mobile-report .zeyora-topline{display:grid!important;grid-template-columns:1fr!important;padding:12px!important;gap:10px!important;background:#fff!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-brand,.preview-modal.report-open .powerbi-mobile-report .zeyora-brand{display:grid!important;grid-template-columns:54px 1fr!important;gap:10px!important;align-items:center!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-brand img,.preview-modal.report-open .powerbi-mobile-report .zeyora-brand img{width:54px!important;height:38px!important;object-fit:contain!important;border-radius:8px!important;padding:3px!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-brand strong,.preview-modal.report-open .powerbi-mobile-report .zeyora-brand strong{font-size:15px!important;line-height:1.2!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-brand span,.preview-modal.report-open .powerbi-mobile-report .official-report-brand em,.preview-modal.report-open .powerbi-mobile-report .zeyora-brand span{font-size:10px!important;line-height:1.25!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-ref,.preview-modal.report-open .powerbi-mobile-report .zeyora-doc-box{display:grid!important;grid-template-columns:1fr!important;min-width:0!important;text-align:left!important;border-radius:10px!important;background:#f8fafc!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-ref span,.preview-modal.report-open .powerbi-mobile-report .zeyora-doc-box span{background:#0b1727!important;color:#fff!important;border:0!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-title,.preview-modal.report-open .powerbi-mobile-report .zeyora-title-band{padding:14px!important;background:linear-gradient(135deg,#0b1727,#155e75)!important;color:#fff!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-title h2,.preview-modal.report-open .powerbi-mobile-report .zeyora-title-band h2{font-size:19px!important;margin:4px 0!important;color:#fff!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-title p,.preview-modal.report-open .powerbi-mobile-report .zeyora-title-band p{font-size:12px!important;color:#dbeafe!important}
  .preview-modal.report-open .powerbi-mobile-report .report-header-details,.preview-modal.report-open .powerbi-mobile-report .official-report-meta,.preview-modal.report-open .powerbi-mobile-report .zeyora-info-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:10px!important;border:0!important;background:#f3f6fb!important}
  .preview-modal.report-open .powerbi-mobile-report .report-header-details div,.preview-modal.report-open .powerbi-mobile-report .official-report-meta div,.preview-modal.report-open .powerbi-mobile-report .zeyora-info-grid div{border:1px solid #e2e8f0!important;border-radius:12px!important;background:#fff!important;padding:10px!important;min-height:0!important}
  .preview-modal.report-open .powerbi-mobile-report .report-header-details span,.preview-modal.report-open .powerbi-mobile-report .official-report-meta span,.preview-modal.report-open .powerbi-mobile-report .zeyora-info-grid span{font-size:9px!important;color:#64748b!important;letter-spacing:.06em!important}
  .preview-modal.report-open .powerbi-mobile-report .report-header-details strong,.preview-modal.report-open .powerbi-mobile-report .official-report-meta strong,.preview-modal.report-open .powerbi-mobile-report .zeyora-info-grid strong{font-size:13px!important;color:#0f172a!important}
  .preview-modal.report-open .powerbi-mobile-report .renewal-summary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:0!important}
  .preview-modal.report-open .powerbi-mobile-report .renewal-summary div{border:0!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 18px rgba(15,23,42,.07)!important;padding:12px!important}
  .preview-modal.report-open .powerbi-mobile-report .renewal-summary span{font-size:9px!important;color:#64748b!important}
  .preview-modal.report-open .powerbi-mobile-report .renewal-summary strong{font-size:24px!important;color:#0f172a!important}
  .preview-modal.report-open .powerbi-mobile-report .official-section-title,.preview-modal.report-open .powerbi-mobile-report .zeyora-section-title{display:flex!important;margin:0!important;border:0!important;border-radius:12px!important;background:#e6f2f2!important;color:#0f172a!important;padding:10px 12px!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-table,.preview-modal.report-open .powerbi-mobile-report .zeyora-report-table,.preview-modal.report-open .powerbi-mobile-report .renewal-report-table{margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
  .preview-modal.report-open .powerbi-mobile-report table{display:block!important;width:100%!important;min-width:0!important;border-collapse:separate!important;font-size:12px!important}
  .preview-modal.report-open .powerbi-mobile-report thead{display:none!important}
  .preview-modal.report-open .powerbi-mobile-report tbody{display:grid!important;gap:10px!important;width:100%!important}
  .preview-modal.report-open .powerbi-mobile-report tr{display:grid!important;gap:0!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;box-shadow:0 8px 18px rgba(15,23,42,.07)!important;overflow:hidden!important}
  .preview-modal.report-open .powerbi-mobile-report td{display:grid!important;grid-template-columns:minmax(108px,.38fr) minmax(0,1fr)!important;gap:10px!important;align-items:start!important;padding:10px 12px!important;border:0!important;border-bottom:1px solid #eef2f7!important;background:#fff!important;color:#0f172a!important;word-break:break-word!important}
  .preview-modal.report-open .powerbi-mobile-report td:last-child{border-bottom:0!important}
  .preview-modal.report-open .powerbi-mobile-report td:before{content:attr(data-label);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#64748b;line-height:1.3}
  .preview-modal.report-open .powerbi-mobile-report td strong{font-size:13px!important;color:#0f172a!important}
  .preview-modal.report-open .powerbi-mobile-report td small{font-size:11px!important;color:#64748b!important}
  .preview-modal.report-open .powerbi-mobile-report .status,.preview-modal.report-open .powerbi-mobile-report .renewal-badge{justify-self:start;border-radius:999px!important;padding:5px 8px!important;white-space:normal!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-footer,.preview-modal.report-open .powerbi-mobile-report .zeyora-signatures{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding:0!important}
  .preview-modal.report-open .powerbi-mobile-report .official-report-footer div,.preview-modal.report-open .powerbi-mobile-report .zeyora-signatures div{border:1px solid #e2e8f0!important;border-radius:12px!important;background:#fff!important;padding:10px!important}
}

/* Sidebar module icons */
.nav-link{display:flex;align-items:center;gap:10px}
.nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.1);color:#d9f2f2;font-size:15px;line-height:1}
.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis}
.nav-link.active .nav-icon{background:#0f766e;color:#fff;box-shadow:0 7px 16px rgba(15,118,110,.22)}
.nav-link:hover:not(.active) .nav-icon{background:rgba(255,255,255,.18);color:#fff}
@media(max-width:1100px){
  .nav-link{gap:11px}
  .nav-icon{width:30px;height:30px;flex-basis:30px;border-radius:9px;background:rgba(255,255,255,.12)}
  .nav-link.active .nav-icon{background:#0b3558;color:#fff}
}

/* Mobile header title left, larger attractive menu button right */
@media(max-width:1100px){
  .mobile-shellbar{grid-template-columns:minmax(0,1fr) 68px!important;gap:12px!important;min-height:72px!important;padding:10px 14px!important;background:linear-gradient(135deg,#061b31 0%,#0b3558 58%,#0f766e 100%)!important}
  .mobile-shellbar strong{grid-column:1!important;grid-row:1!important;padding-left:0!important;justify-self:start!important;font-size:18px!important;font-weight:900!important;letter-spacing:.01em;line-height:1.1;max-width:100%;white-space:normal!important}
  .mobile-shellbar span{display:none!important}
  .mobile-menu-toggle{grid-column:2!important;grid-row:1!important;justify-self:end!important;width:64px!important;min-width:64px!important;height:52px!important;border-radius:18px!important;background:linear-gradient(180deg,#ffffff,#dff7f4)!important;border:1px solid rgba(255,255,255,.65)!important;box-shadow:0 12px 24px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.85)!important}
  .mobile-menu-toggle:before{width:28px!important;height:18px!important;background:linear-gradient(#08243f,#08243f) 0 0/100% 3px no-repeat,linear-gradient(#08243f,#08243f) 0 50%/100% 3px no-repeat,linear-gradient(#08243f,#08243f) 0 100%/100% 3px no-repeat!important}
  .mobile-menu-toggle:after{content:""!important;display:none!important}
  .mobile-menu-toggle[aria-expanded="true"]:before{height:26px!important;background:linear-gradient(45deg,transparent 45%,#08243f 46%,#08243f 54%,transparent 55%),linear-gradient(-45deg,transparent 45%,#08243f 46%,#08243f 54%,transparent 55%)!important}
  .sidebar{top:72px!important}
  .sidebar.mobile-open{max-height:calc(100dvh - 72px)!important}
}

@media(max-width:420px){
  .mobile-shellbar{grid-template-columns:minmax(0,1fr) 62px!important;padding-left:12px!important;padding-right:10px!important}
  .mobile-shellbar strong{font-size:17px!important}
  .mobile-menu-toggle{width:60px!important;min-width:60px!important;height:50px!important}
}

.report-file-preview{margin-bottom:5px;background:#e8f7f4!important;border-color:#b7e4dc!important;color:#0f766e!important;font-weight:900}
@media(max-width:760px){
  .preview-modal.report-open .powerbi-mobile-report .report-file-preview{width:max-content!important;min-height:34px!important;border-radius:999px!important;padding:7px 11px!important}
}
