:root{--bg: #E2E8F0;--panel: #FFFFFF;--panel-alt: #EDF2F7;--border: #CBD5E1;--text: #0A2540;--muted: #475569;--muted-dim: #94A3B8;--text-white: #FFFFFF;--accent: #0066FF;--accent-hover: #0052CC;--accent-dim: #E3ECFB;--accent-deep: #0A2540;--accent-glow: #00A3FF;--sidebar-bg: #123A5E;--content-bg: #0F3150;--cyan: #6FD7E6;--navy: #0A2540;--navy-deep: #081D33;--green: #047857;--green-dim: #D1FAE5;--amber: #B45309;--amber-dim: #FEF3C7;--violet: #7C6FE0;--violet-dim: #EFEDFC;--rose: #F43F5E;--rose-dim: #FDECEF;--radius: 8px;--font-display: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", monospace;--shadow-card: 0 1px 3px rgba(10, 37, 64, .05);--shadow-pop: 0 16px 40px -12px rgba(10, 37, 64, .28)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:13px}.mono{font-family:var(--font-mono)}.display{font-family:var(--font-display)}a{color:var(--accent)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.app-shell{display:flex;min-height:100vh;background-image:linear-gradient(#0f315059,#0f315059),url(/hero-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}#sidebar{width:224px;flex-shrink:0;background:#001e5299;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-right:1px solid rgba(0,30,82,.85);display:flex;flex-direction:column;padding:22px 14px}.brand{display:flex;align-items:center;gap:9px;padding:0 8px 6px;margin-top:-6px}#sidebar .brand{padding:0 3px 3px}.brand-logo{height:86px;width:auto;max-width:100%;object-fit:contain}.brand-mark{height:28px;width:auto;object-fit:contain;flex-shrink:0}.brand-name{font-family:var(--font-display);font-weight:600;font-size:17px;color:var(--text-white);letter-spacing:.01em}.sidebar-divider{padding:0 8px 20px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.nav-section-label{font-size:10px;color:#fff6;text-transform:uppercase;letter-spacing:1px;font-weight:700;padding:14px 10px 6px}nav.side-nav{display:flex;flex-direction:column;gap:2px}.nav-link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:#ffffffad;font-size:13.5px;font-weight:500;text-decoration:none;border:1px solid transparent;transition:background .15s,color .15s;position:relative}.nav-link-icon{flex-shrink:0;opacity:.85}.nav-link:hover{background:#ffffff14;color:var(--text-white)}.sidebar-search{padding:6px 2px 4px}.sidebar-search .cmr-topbar-search{max-width:none}.nav-link.active{background:var(--accent);color:var(--text-white);border-color:transparent;font-weight:600}.nav-link.active:before{content:none}.sidebar-foot{margin-top:auto;padding:14px 10px 4px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:#ffffff8c;display:flex;align-items:center;justify-content:space-between;gap:8px}:root{--lang-corner-reserve: 190px}.lang-corner{position:fixed;top:14px;right:20px;z-index:200;display:flex;gap:6px}.lang-corner button{display:flex;align-items:center;gap:5px;padding:5px 11px 5px 8px;font-size:11.5px;font-weight:600;border:1px solid var(--border);border-radius:20px;background:var(--panel);color:var(--muted);cursor:pointer;box-shadow:0 2px 8px #10182814}.lang-corner button .flag{width:20px;height:14px;border-radius:3px;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px #1018281a,0 1px 2px #10182826}.lang-corner button .flag svg{display:block;width:100%;height:100%}.lang-corner button.active{background:var(--accent-dim);color:var(--accent);border-color:#0066ff40}.sidebar-foot button{background:none;border:none;color:#ffffff73;cursor:pointer;font-size:11px;text-decoration:underline;padding:0}.sidebar-foot button:hover{color:#fb7185}#main{flex:1;display:flex;flex-direction:column;min-width:0}header.page-header{padding:20px 32px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;background:var(--panel)}header.page-header h1{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-.01em}header.page-header p{color:var(--muted);font-size:12.5px;margin-top:4px}header.page-header.page-hero{--glass-bg: rgba(235, 241, 248, .15);--glass-border: rgba(255, 255, 255, .8);--pill-bg: rgba(238, 243, 249, .8);--header-text: #2C3A4E;--header-muted: #5B6B7F;--header-accent: #324C74;background:var(--glass-bg);backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);border:1px solid var(--glass-border);border-radius:12px;margin:16px 32px 0;padding:16px 20px;box-shadow:0 4px 16px #00000008}.page-hero h1{color:var(--header-text)}.page-hero p{color:var(--header-muted)}.page-hero .cmr-hero-user-actions{gap:14px}.title-add-btn{width:34px;height:34px;border-radius:9px;flex-shrink:0;background:var(--pill-bg);border:1px solid var(--glass-border);color:#4caf50;display:flex;align-items:center;justify-content:center;font-size:29px;line-height:1;font-weight:600;cursor:pointer;transition:transform .15s ease,color .15s ease,border-color .15s ease}.title-add-btn:hover{color:#388e3c;border-color:#4caf50}.title-add-btn.is-open{transform:rotate(45deg)}.title-add-btn:disabled{opacity:.45;cursor:not-allowed}.page-hero-title-row{display:flex;align-items:baseline;gap:24px}@media (max-width: 720px){.page-hero-title-row{flex-wrap:wrap}.page-hero-search-line input[type=text]{width:100%}}.page-hero-search-line{display:flex;flex-direction:column;gap:1px}.page-hero-search-line input[type=text]{width:260px;background:transparent;border:none;border-radius:0;border-bottom:1.5px solid var(--glass-border);padding:4px 2px 1px;color:var(--header-text);box-shadow:none;text-align:center}.page-hero-search-line input[type=text]:hover:not(:focus):not(.has-value){border-bottom-color:var(--header-muted)}.page-hero-search-line input[type=text]:focus{outline:none;background:transparent;box-shadow:none;border-bottom-color:var(--header-accent)}.page-hero-search-line input[type=text].has-value{border-bottom-color:var(--header-accent)}.page-hero-search-caption{font-size:12.5px;color:#000;letter-spacing:.2px;text-align:center}#content{padding:28px 32px;overflow-y:auto;flex:1}.page-hero+#content{padding-top:12px}.cmr-hero+#content{padding-top:0}.grid{display:grid;gap:16px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:1fr 1fr}.grid>*{min-width:0}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-card);overflow-x:auto}.card h2{font-family:var(--font-display);font-size:15px;font-weight:600;margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid var(--border)}.transparent-card{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.transparent-card th{background:#fff6}.transparent-card .table-filter-input-inline{background:#ffffff80}.kpi .kpi-label{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.kpi .kpi-val{font-family:var(--font-display);font-size:26px;font-weight:600;margin-top:8px;color:var(--navy)}.cmr-box{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:17px 19px;box-shadow:var(--shadow-card)}.cmr-box-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.cmr-box-title{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:600;font-size:13.5px}.cmr-box-num{width:21px;height:21px;border-radius:50%;background:var(--accent-dim);color:var(--accent);font-family:var(--font-mono);display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;flex-shrink:0}.cmr-box-icon{width:21px;height:21px;border-radius:50%;background:var(--accent-dim);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cmr-box-body{font-size:13px;line-height:1.7;color:var(--text)}.cmr-box-body .muted-line{color:var(--muted)}.cmr-box-empty{color:var(--muted-dim);font-style:italic}.cmr-box-body label{margin-top:10px;margin-bottom:4px;font-size:10.5px}.cmr-box-body label:first-of-type{margin-top:0}.cmr-box-body input[type=text],.cmr-box-body input[type=number],.cmr-box-body input[type=password],.cmr-box-body input[type=date],.cmr-box-body input[type=datetime-local],.cmr-box-body select,.cmr-box-body textarea{padding-top:7px;padding-bottom:7px;padding-left:10px;font-size:12.5px;border-radius:8px}.cmr-box-body textarea{min-height:44px;padding-right:10px}.cmr-box-body input.partner-code-badge{padding:7px 10px}.cmr-box-body .field-row-2,.cmr-box-body .field-row-3{gap:10px}label{display:block;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;margin-top:14px}label:first-of-type{margin-top:0}input[type=text],input[type=number],input[type=password],input[type=date],input[type=datetime-local],select,textarea{width:100%;background:var(--panel);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:9px;font-size:13.5px;font-family:var(--font-body);text-overflow:ellipsis;transition:border-color .12s,box-shadow .12s}input[type=text],input[type=number],input[type=password],input[type=date],input[type=datetime-local],select{overflow:hidden;white-space:nowrap}textarea{resize:vertical;min-height:60px}input:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus){border-color:var(--muted-dim)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);background:var(--panel);box-shadow:0 0 0 3px var(--accent-dim)}input:disabled,select:disabled,textarea:disabled{background:var(--panel-alt);color:var(--muted);border-color:var(--border);cursor:not-allowed}input:disabled::placeholder,textarea:disabled::placeholder{color:var(--muted-dim)}.file-field{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.file-field-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-field-name{font-size:12.5px;color:var(--muted)}.field-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.field-error{color:var(--rose);font-size:11.5px;margin-top:5px}.form-help{color:var(--muted);font-size:11.5px;margin-top:5px}.required-mark{color:var(--rose);margin-left:3px;font-weight:700;cursor:help}.required-legend{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);background:var(--panel);border:1px solid var(--border);padding:6px 12px;border-radius:8px;width:fit-content}.required-legend .required-mark{margin-left:0}.field-invalid input,.field-invalid select,.field-invalid textarea,input.field-invalid,select.field-invalid,textarea.field-invalid{border-color:var(--rose)}.field-invalid input:focus,.field-invalid select:focus,.field-invalid textarea:focus,input.field-invalid:focus,select.field-invalid:focus,textarea.field-invalid:focus{border-color:var(--accent);background:var(--panel)}.cmr-box-invalid{border-color:var(--rose)}.cmr-box-signed{border-color:var(--green)}.btn{background:var(--accent);color:#fff;border:none;padding:10px 16px;border-radius:8px;box-shadow:0 1px 2px #0066ff40;font-weight:600;font-size:13px;cursor:pointer;font-family:var(--font-body)}.btn:hover{background:var(--accent-hover)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn.block{width:100%;margin-top:18px}.btn.ghost{background:var(--panel);border:1px solid var(--border);color:var(--text);box-shadow:none}.btn.ghost:hover{background:var(--panel);border-color:var(--accent);color:var(--accent)}.btn.danger{background:var(--rose);box-shadow:0 1px 2px #e11d484d;color:#fff}.btn.danger:hover{background:#e11d48}.btn.small{padding:6px 12px;font-size:12px}.row-edit-btn{width:34px;height:34px;border-radius:7px;flex-shrink:0;background:#eef3f9cc;border:1px solid rgba(255,255,255,.8);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.row-edit-btn:hover{border-color:var(--accent);color:var(--accent)}.row-delete-btn{width:34px;height:34px;border-radius:7px;flex-shrink:0;background:#eef3f9cc;border:1px solid rgba(255,255,255,.8);color:var(--rose);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.row-delete-btn:hover{border-color:var(--rose);background:#e11d4814}.row-delete-btn:disabled{opacity:.45;cursor:not-allowed}.row-add-btn{width:34px;height:34px;border-radius:7px;flex-shrink:0;background:#eef3f9cc;border:1px solid rgba(255,255,255,.8);color:var(--green);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;font-size:22px;font-weight:700;line-height:1}.row-add-btn:hover{border-color:var(--green);background:var(--green-dim)}.row-add-btn:disabled{opacity:.45;cursor:not-allowed}.cancel-door-btn{width:40px;padding:10px!important;display:flex;align-items:center;justify-content:center}.btn.disabled-hint{opacity:.5;cursor:not-allowed;pointer-events:none}.badge{font-size:10.5px;padding:3px 9px;border-radius:20px;font-weight:600;letter-spacing:.3px;white-space:nowrap;display:inline-block}.badge.DRAFT{background:var(--panel-alt);color:var(--muted);border:1px solid var(--border)}.badge.ISSUED{background:var(--amber-dim);color:var(--amber)}.badge.LOADED{background:var(--accent-dim);color:var(--accent)}.badge.DELIVERED{background:var(--green-dim);color:var(--green)}.badge.AMENDMENT_REQUIRED{background:var(--rose-dim);color:var(--rose)}.status-pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 10px;border-radius:12px}.status-pill .dot{width:6px;height:6px;border-radius:50%}.status-pill.DRAFT{background:var(--panel-alt);color:var(--muted);border:1px solid var(--border)}.status-pill.DRAFT .dot{background:var(--muted-dim)}.status-pill.ISSUED{background:var(--amber-dim);color:#b45309}.status-pill.ISSUED .dot{background:var(--amber)}.status-pill.LOADED{background:var(--accent-dim);color:var(--accent)}.status-pill.LOADED .dot{background:var(--accent)}.status-pill.DELIVERED{background:var(--green-dim);color:var(--green)}.status-pill.DELIVERED .dot{background:var(--green)}.status-pill.AMENDMENT_REQUIRED{background:var(--rose-dim);color:var(--rose)}.status-pill.AMENDMENT_REQUIRED .dot{background:var(--rose)}.version-pill{font-family:var(--font-mono);font-size:11.5px;font-weight:700;color:var(--accent);background:var(--accent-dim);padding:4px 10px;border-radius:20px;border:none}.cmr-hero{--glass-bg: rgba(235, 241, 248, .15);--glass-border: rgba(255, 255, 255, .8);--pill-bg: rgba(238, 243, 249, .8);--header-text: #2C3A4E;--header-muted: #5B6B7F;--header-accent: #324C74;background:var(--glass-bg);backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);border:1px solid var(--glass-border);border-radius:12px;margin:16px 32px;padding:12px 20px;box-shadow:0 4px 16px #00000008;display:flex;flex-direction:column;gap:8px}.cmr-hero-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.cmr-hero-title-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cmr-id{font-size:26px;font-weight:800;color:var(--header-text);letter-spacing:-.5px}.cmr-hero-user-actions{display:flex;align-items:center;gap:16px;color:var(--header-text)}.cmr-hero-user-actions .cmr-topbar-icon-btn{width:34px;height:34px;background:var(--pill-bg);border:1px solid var(--glass-border);border-radius:9px;color:var(--header-text);padding:0}.cmr-hero-user-actions .cmr-topbar-icon-btn svg{width:22px;height:22px}.cmr-hero-user-actions .notification-bell-badge{min-width:18px;height:18px;line-height:18px;font-size:11px}.cmr-hero-user-actions .cmr-topbar-icon-btn:hover{color:var(--header-accent);border-color:var(--header-accent)}.lang-header-dropdown{position:relative}.lang-header-trigger{display:flex;align-items:center;gap:6px;height:34px;padding:0 10px;font-size:12px;font-weight:700;color:var(--header-text);background:var(--pill-bg);border:1px solid var(--glass-border);border-radius:9px;cursor:pointer}.lang-header-trigger:hover{color:var(--header-accent);border-color:var(--header-accent)}.lang-header-chevron{font-size:10px;opacity:.7}.lang-header-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:96px;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:0 8px 20px #1018282e;overflow:hidden;padding:4px}.lang-header-option{display:flex;align-items:center;gap:6px;width:100%;padding:7px 8px;font-size:12px;font-weight:600;color:var(--muted);background:none;border:none;border-radius:6px;cursor:pointer;text-align:left}.lang-header-option:hover{background:var(--panel-alt);color:var(--text)}.lang-header-option.active{background:var(--accent-dim);color:var(--accent)}.lang-header-trigger .flag,.lang-header-option .flag{width:20px;height:14px;border-radius:3px;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px #1018281a}.lang-header-trigger .flag svg,.lang-header-option .flag svg{display:block;width:100%;height:100%}.cmr-hero-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.cmr-hero-issue-date{display:flex;align-items:center;gap:10px}.cmr-hero-issue-date-icon{font-size:20px;color:var(--header-accent)}.cmr-hero-issue-date-lines{display:flex;flex-direction:column}.cmr-hero-issue-date-lbl{font-size:11px;color:var(--header-text);font-weight:700}.cmr-hero-issue-date-val{font-size:14px;font-weight:700;color:var(--header-text)}.cmr-hero-route{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.cmr-hero-point{display:flex;align-items:center;gap:10px}.cmr-hero-pin{width:32px;height:32px;border-radius:50%;flex-shrink:0;background:var(--header-accent);display:flex;align-items:center;justify-content:center}.cmr-hero-pin-dot{width:8px;height:8px;background:#fff;border-radius:50%}.cmr-hero-place{font-size:13px;font-weight:700;color:var(--header-text);line-height:1.2}.cmr-hero-sub{font-size:11px;color:var(--header-muted);line-height:1.3}.cmr-hero-arrow{color:var(--header-muted);font-size:16px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;padding:10px 12px;color:var(--muted);font-weight:700;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);background:var(--panel-alt)}td{padding:11px 12px;border-bottom:1px solid var(--border)}tr.data-row{cursor:pointer}tr.data-row:hover{background:var(--panel-alt)}.table-scroll{max-height:178px;overflow-y:auto;margin-top:12px}.table-scroll table{margin-top:0}.table-scroll thead th{position:sticky;top:0;z-index:1;background:#ffffff8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.table-scroll th{padding:6px 8px;font-size:10.5px}.table-scroll td{padding:5px 8px}.table-scroll td input,.table-scroll td select{padding:6px 8px;font-size:12.5px}.cmr-charges-table th{padding:6px 8px;font-size:10.5px}.cmr-charges-table td{padding:5px 8px}.cmr-charges-table td input{padding:6px 8px;font-size:12.5px}.cmr-charges-table td .btn.small{padding:4px 10px;font-size:11px}.tab-bar{display:flex;gap:4px;border-bottom:1px solid var(--border);padding:0 32px;background:var(--panel)}.tab-item{padding:12px 14px;margin-bottom:-1px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;background:none;border-left:none;border-right:none;border-top:none;font-family:var(--font-body);letter-spacing:.2px;transition:color .15s}.tab-item:hover{color:var(--text)}.tab-item.active{color:var(--accent);border-bottom-color:var(--accent)}.sig-card{border-radius:9px;padding:12px 14px;background:var(--panel-alt);border:1px solid var(--border);border-left:3px solid var(--muted-dim);margin-bottom:10px}.sig-card.signed{border-left-color:var(--green)}.sig-card.waiting{border-left-color:var(--amber)}.sig-card.unavailable{border-left-color:var(--muted-dim)}.sig-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.sig-role{font-size:12.5px;font-weight:700;letter-spacing:.3px}.sig-name{font-size:13.5px;font-weight:600;margin-top:6px}.sig-meta{font-size:11.5px;color:var(--muted);margin-top:2px}.sig-hash{font-family:var(--font-mono);font-size:10.5px;color:var(--muted-dim);margin-top:6px}.sig-thumb{height:40px;margin-top:8px;border-bottom:1px solid var(--border)}.party-title-chip{font-size:9px;padding:2px 7px}.info-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border);font-size:12.5px}.info-row:last-child{border-bottom:none}.info-row .label{color:var(--muted)}.info-row .value{color:var(--text);font-weight:500;text-align:right}.list-scroll{max-height:240px;overflow-y:auto}.save-status{font-size:11px;font-family:var(--font-mono);white-space:nowrap}.save-status.saving{color:var(--muted-dim)}.save-status.saved{color:var(--green)}.save-status.error{color:var(--rose);cursor:help}.section-head{margin-bottom:18px}.section-head .eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted-dim);font-family:var(--font-mono);margin-bottom:6px}.section-head h2{font-family:var(--font-display);font-size:22px;font-weight:600;margin-bottom:5px}.section-head p{color:var(--muted);font-size:13px;max-width:640px;line-height:1.55}.toolbar{display:flex;gap:10px;margin-bottom:16px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.alert{border-radius:8px;padding:12px 14px;font-size:13px;margin-bottom:16px}.alert.error{background:var(--rose-dim);border:1px solid rgba(225,29,72,.25);color:var(--rose)}.alert.success{background:var(--green-dim);border:1px solid rgba(22,163,74,.25);color:var(--green)}.empty-state{text-align:center;padding:60px 20px;color:var(--muted)}.empty-state .big{font-size:34px;display:block;margin-bottom:12px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;animation:modal-fade-in .15s ease-out}.modal-card{width:380px;max-width:100%;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:22px;box-shadow:var(--shadow-pop);animation:modal-pop-in .15s ease-out}.modal-icon{width:38px;height:38px;border-radius:50%;background:var(--accent-dim);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:17px;margin-bottom:12px}.modal-title{font-family:var(--font-display);font-size:15.5px;font-weight:600;margin-bottom:8px}.modal-message{font-size:13px;color:var(--muted);line-height:1.55}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cmr-preview-card{width:960px;max-width:100%;max-height:92vh;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-pop);animation:modal-pop-in .15s ease-out;display:flex;flex-direction:column;overflow:hidden}.cmr-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600;flex-shrink:0}.cmr-preview-scroll{overflow:auto;padding:20px;background:var(--panel-alt)}.doc-upload-modal{width:640px;max-width:100%;max-height:85vh;overflow-y:auto}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 50% 0%,#EAF1FC 0%,var(--bg) 60%)}.login-card{width:380px;max-width:100%;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:32px;box-shadow:var(--shadow-pop)}.login-card .brand-mark{height:40px;width:auto}.qr-box{background:var(--panel-alt);border:1px solid var(--border);border-radius:10px;padding:16px;display:inline-block}.coming-soon{text-align:center;padding:80px 20px;color:var(--muted)}.coming-soon .big{font-size:40px;display:block;margin-bottom:16px}.coming-soon .tag{display:inline-block;margin-top:10px;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--accent);background:var(--accent-dim);padding:4px 10px;border-radius:20px}.mobile-menu-btn,.mobile-topbar{display:none}@media (max-width: 900px){.mobile-topbar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--panel)}}@media (max-width: 1200px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}#sidebar{position:fixed;top:0;left:0;height:100vh;z-index:50;transform:translate(-100%);transition:transform .2s ease;box-shadow:8px 0 24px #1018281a}#sidebar.open{transform:translate(0)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:40;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.mobile-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:var(--panel);cursor:pointer;font-size:16px;flex-shrink:0}header.page-header{padding:14px 16px;gap:10px}.cmr-hero{margin:14px 16px 0;padding:14px;gap:12px}#content{padding:18px 16px}}@media (min-width: 901px){.sidebar-backdrop{display:none}}@media (max-width: 600px){.field-row-2,.field-row-3{grid-template-columns:1fr}header.page-header h1{font-size:16px}.cmr-id{font-size:18px}.cmr-box,.card{padding:14px}.tab-bar{padding:0 16px;overflow-x:auto}}.search-panel{position:fixed;top:90px;right:32px;width:calc((100vw - 304px)/2);max-height:calc(100vh - 110px);overflow-y:auto;z-index:30;box-shadow:var(--shadow-pop);background:#fff9;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}@media (max-width: 900px){.search-panel{left:16px;right:16px;top:80px;width:auto;max-height:calc(100vh - 100px)}}.search-result-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;padding:10px 12px;margin-bottom:6px;background:var(--panel-alt);border:1px solid var(--border);border-radius:8px;cursor:pointer;font-family:var(--font-body);font-size:13.5px;color:var(--text)}.search-result-item:hover{border-color:var(--accent);background:var(--accent-dim)}.search-result-item.highlighted{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 1px var(--accent)}.search-result-sub{font-size:11.5px;color:var(--muted)}.search-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.search-panel-header h2{margin-bottom:0}.search-panel-query{font-family:var(--font-mono);font-size:11.5px;color:var(--accent);background:var(--accent-dim);padding:3px 9px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.search-panel-query-input{width:auto;max-width:160px;padding:4px 9px;font-family:var(--font-mono);font-size:11.5px;color:var(--accent);background:var(--accent-dim);border:1px solid rgba(0,102,255,.3);border-radius:6px}.search-panel-query-input:focus{outline:none;border-color:var(--accent);background:var(--panel)}.th-inline{display:flex;align-items:center;gap:8px}.th-label{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.th-label:hover{color:var(--accent)}.table-filter-input-inline{width:84px;padding:3px 7px;font-size:11px;text-transform:none;font-weight:400;border:1px solid var(--border);border-radius:6px;background:var(--panel-alt);color:var(--text);font-family:var(--font-body)}.table-row-highlight{animation:table-row-highlight-flash 2.5s ease-out}@keyframes table-row-highlight-flash{0%{background:var(--accent-dim)}to{background:transparent}}.searchable-field{position:relative}.searchable-field input{padding-right:32px}.field-dropdown-btn{position:absolute;top:0;right:0;height:100%;width:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0;margin:0;color:var(--muted);cursor:pointer;border-radius:0 8px 8px 0}.field-dropdown-btn:hover{color:var(--accent);background:var(--accent-dim)}.field-dropdown-btn:disabled{color:var(--muted-dim);cursor:not-allowed;background:none}.field-static-value{padding:10px 2px 9px;margin-bottom:2px;font-size:13.5px;color:var(--text);border:none;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-dropdown-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:25;max-height:220px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:9px;padding:6px;box-shadow:var(--shadow-pop)}.local-field-dropdown{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.local-field-dropdown .search-result-item{background:#fff6;border-color:#fff9}.local-field-dropdown .search-result-item:hover,.local-field-dropdown .search-result-item.highlighted{background:var(--accent-dim);border-color:var(--accent)}.global-search-results{width:320px;max-height:360px}.global-search-group+.global-search-group{margin-top:10px}.global-search-group-label{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-dim);padding:4px 6px 6px}.local-field-dropdown .global-search-group-label{color:#000}.cmr-topbar-icon-wrap{position:relative;display:flex}.notification-bell-dropdown{left:auto;right:0;width:320px;max-height:360px}.notification-bell-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--rose);color:#fff;font-family:var(--font-display);font-size:10px;font-weight:700;line-height:16px;text-align:center}.notification-bell-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:6px;vertical-align:middle}.notification-bell-viewall{display:block;width:100%;text-align:center;margin-top:2px;padding:9px 0 4px;background:none;border:none;border-top:1px solid var(--border);color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;font-family:var(--font-body)}.notification-bell-viewall:hover{text-decoration:underline}.global-search-empty{padding:14px 10px;text-align:center;color:var(--muted);font-size:12.5px}input.partner-code-badge{width:84px;padding:10px;font-size:12.5px;letter-spacing:.2px;font-weight:600;font-family:var(--font-mono);background:var(--accent-dim);color:var(--accent);border:1px solid rgba(0,102,255,.25);border-radius:8px;text-align:center;cursor:not-allowed}.doc-file-link{display:inline-block;width:100%;box-sizing:border-box;vertical-align:middle;background:var(--panel);color:var(--accent);text-decoration:none;font-family:var(--font-body);font-size:13px;font-weight:500;padding:9px 12px;border-radius:8px;border:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-file-link:hover{border-color:var(--accent);background:var(--accent-dim)}.dtp-field input[readonly]{cursor:pointer}.dtp-field input[readonly]:disabled{cursor:not-allowed}.dtp-popup{position:absolute;top:calc(100% + 4px);left:0;z-index:30;width:260px;background:var(--panel);border:1px solid var(--border);border-radius:11px;box-shadow:var(--shadow-pop);padding:11px}.dtp-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.dtp-nav-label{font-family:var(--font-display);font-weight:600;font-size:12px;color:var(--text);text-transform:capitalize}.dtp-nav-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;color:var(--muted);cursor:pointer}.dtp-nav-btn:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.dtp-nav-btn:disabled{color:var(--muted-dim);cursor:not-allowed}.dtp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:9.5px;font-weight:600;color:var(--muted-dim);text-transform:uppercase;text-align:center;margin-bottom:3px}.dtp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.dtp-day{aspect-ratio:1;width:100%;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:7px;font-size:11px;color:var(--text);cursor:pointer;font-family:var(--font-body)}.dtp-day:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.dtp-day-outside{color:var(--muted-dim)}.dtp-day-today{border:1px solid var(--accent);color:var(--accent);font-weight:600}.dtp-day-selected,.dtp-day-selected:hover{background:var(--accent);color:#fff;font-weight:600}.dtp-day-disabled{color:var(--muted-dim);cursor:not-allowed}.dtp-time{border-top:1px solid var(--border);margin-top:10px;padding-top:8px}.dtp-time-label{font-size:9.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.dtp-time-lists{display:flex;align-items:center;justify-content:center;gap:5px}.dtp-time-col{display:flex;flex-direction:column;gap:2px;width:48px;max-height:120px;overflow-y:auto;scroll-snap-type:y proximity}.dtp-time-sep{color:var(--muted-dim);font-weight:600}.dtp-time-item{flex:none;scroll-snap-align:center;text-align:center;padding:5px 0;background:none;border:none;border-radius:6px;font-family:var(--font-mono);font-size:11px;color:var(--text);cursor:pointer}.dtp-time-item:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.dtp-time-item-selected,.dtp-time-item-selected:hover{background:var(--accent);color:#fff}.dtp-time-item-disabled,.dtp-time-item:disabled{color:var(--muted-dim);cursor:not-allowed}.dtp-footer{display:flex;align-items:center;gap:12px;margin-top:10px;padding-top:8px;border-top:1px solid var(--border)}.dtp-footer-link{background:none;border:none;color:var(--accent);font-size:11px;font-weight:600;cursor:pointer;padding:0}.dtp-footer-link:hover{text-decoration:underline}.cmr-topbar-search{display:flex;align-items:center;gap:8px;flex:1;min-width:160px;max-width:360px;background:var(--panel-alt);border:1px solid transparent;border-radius:8px;padding:8px 14px;color:var(--muted-dim);position:relative}.cmr-topbar-search:focus-within{border-color:var(--muted-dim);background:var(--panel)}.cmr-topbar-search svg{flex-shrink:0}.cmr-topbar-search input{border:none;background:none;padding:0;font-size:13px;width:100%;color:var(--text)}.cmr-topbar-search input:focus{outline:none;box-shadow:none}.cmr-topbar-search input::placeholder{color:var(--muted-dim)}.cmr-topbar-icon-btn{position:relative;width:36px;height:36px;border-radius:9px;flex-shrink:0;background:var(--panel);border:1px solid var(--border);color:var(--muted);display:flex;align-items:center;justify-content:center}.cmr-topbar-icon-btn:hover{border-color:var(--accent);color:var(--accent)}.cmr-topbar-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:11px}.cmr-overview-grid{grid-template-columns:1fr 360px}@media (max-width: 1150px){.cmr-overview-grid{grid-template-columns:1fr}}.cmr-hero-pills{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cmr-hero-pill{display:flex;align-items:center;gap:10px;background:var(--pill-bg);border:1px solid rgba(255,255,255,.9);border-radius:8px;padding:6px 16px;cursor:default}.cmr-hero-pill-icon{width:26px;height:26px;border-radius:50%;flex-shrink:0;background:#ffb066;color:#4a3010;font-size:12px;display:flex;align-items:center;justify-content:center}.cmr-hero-pill-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.cmr-hero-pill-val{display:block;font-size:11px;font-weight:400;color:var(--header-muted, var(--muted))}.cmr-hero-pill-lbl{display:block;font-size:11px;font-weight:700;color:var(--header-text, var(--text));text-transform:uppercase;letter-spacing:.03em}.cmr-hero-stepper{display:flex;align-items:center;margin-top:4px}.cmr-hero-stepper-step{display:flex;align-items:center;gap:8px}.cmr-hero-stepper-circ{width:24px;height:24px;border-radius:50%;flex-shrink:0;background:var(--border);color:var(--muted);font-size:10px;display:flex;align-items:center;justify-content:center}.cmr-hero-stepper-circ.current,.cmr-hero-stepper-circ.done{background:var(--accent);color:#fff}.cmr-hero-stepper-label{font-size:12.5px;font-weight:600;color:var(--muted);white-space:nowrap}.cmr-hero-stepper-label.current{font-weight:700;color:var(--text)}.cmr-hero-stepper-line{flex:1;height:2px;background:var(--border);margin:0 12px;min-width:20px}.cmr-hero-stepper-line.done{background:linear-gradient(90deg,var(--accent-deep),var(--accent),var(--accent-glow))}.cmr-delivered-stamp{display:flex;align-items:center;justify-content:center;padding:40px 6px}.cmr-delivered-stamp-badge{position:relative;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:80%;padding:16px 11px;border:3.2px solid var(--green);border-radius:6px;color:var(--green);opacity:.85;transform:rotate(-8deg)}.cmr-delivered-stamp-badge:before{content:"";position:absolute;top:5.6px;right:5.6px;bottom:5.6px;left:5.6px;border:1.6px solid var(--green);border-radius:3px}.cmr-delivered-stamp-text{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.cmr-vstepper{display:flex;flex-direction:column}.cmr-vstepper-step{display:flex;align-items:flex-start;gap:10px}.cmr-vstepper-rail{display:flex;flex-direction:column;align-items:center}.cmr-vstepper-circ{width:20px;height:20px;border-radius:50%;flex-shrink:0;border:2px solid var(--border);background:var(--panel);display:flex;align-items:center;justify-content:center}.cmr-vstepper-circ.done{border-color:var(--accent);background:var(--accent)}.cmr-vstepper-circ.current{border-color:var(--accent);background:var(--panel);box-shadow:0 0 0 3px var(--accent-dim)}.cmr-vstepper-circ.current .cmr-vstepper-dot{background:var(--accent)}.cmr-vstepper-dot{width:6px;height:6px;border-radius:50%;background:var(--muted-dim)}.cmr-vstepper-line{width:2px;flex:1;min-height:18px;background:var(--border);margin:2px 0}.cmr-vstepper-line.done{background:linear-gradient(180deg,var(--accent-deep),var(--accent),var(--accent-glow))}.cmr-vstepper-label{font-size:12.5px;font-weight:600;color:#2a2a2a;padding:1px 0 15px}.cmr-vstepper-label.done{color:var(--text)}.cmr-eyebrow{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:13.5px;font-weight:700;color:var(--text);margin:10px 2px 2px}.cmr-parties-panel{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-card)}.cmr-parties-panel .cmr-box,.cmr-activity-card,.cmr-signature-card,.cmr-quickactions-card,.cmr-information-card,.cmr-issue-card{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.cmr-parties-panel .cmr-eyebrow{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--border);font-size:14.5px}.cmr-parties-panel .cmr-eyebrow-icon{width:24px;height:24px;border-radius:7px;font-size:12px}.cmr-parties-panel .grid.grid-3{gap:18px}@media (max-width: 900px){.cmr-parties-panel{padding:14px}}.cmr-route-panel{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-card)}.cmr-route-panel .cmr-box{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.cmr-route-panel .cmr-route-eyebrow-row{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--border)}.cmr-route-panel .cmr-eyebrow{margin:0;font-size:14.5px}.cmr-route-panel .cmr-eyebrow-icon{width:24px;height:24px;border-radius:7px;font-size:12px}.cmr-route-panel .grid.grid-3{gap:18px}@media (max-width: 900px){.cmr-route-panel{padding:14px}}.cmr-terms-panel{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-card)}.cmr-terms-panel .cmr-box{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.cmr-terms-panel .cmr-eyebrow{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--border);font-size:14.5px}.cmr-terms-panel .cmr-eyebrow-icon{width:24px;height:24px;border-radius:7px;font-size:12px}.cmr-terms-panel .grid.grid-3{gap:18px}@media (max-width: 900px){.cmr-terms-panel{padding:14px}}.cmr-payment-panel{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-card)}.cmr-payment-panel .cmr-box{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.cmr-payment-panel .cmr-eyebrow{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--border);font-size:14.5px}.cmr-payment-panel .cmr-eyebrow-icon{width:24px;height:24px;border-radius:7px;font-size:12px}.cmr-payment-panel .grid{gap:18px}@media (max-width: 900px){.cmr-payment-panel{padding:14px}}.cmr-cargo-panel,.cmr-documents-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-card)}.cmr-cargo-panel,.cmr-cargo-panel .card,.cmr-documents-panel,.cmr-documents-panel .cmr-box{background:#ffffff59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.6)}.cmr-cargo-panel .cmr-eyebrow,.cmr-documents-panel .cmr-eyebrow{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--border);font-size:14.5px}.cmr-cargo-panel .cmr-eyebrow-icon,.cmr-documents-panel .cmr-eyebrow-icon{width:24px;height:24px;border-radius:7px;font-size:12px}@media (max-width: 900px){.cmr-cargo-panel,.cmr-documents-panel{padding:14px}}.sig-row{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.sig-row:last-child{border-bottom:none}.sig-row-signed{background:transparent;border:1.5px solid var(--green);border-radius:10px;margin:6px -14px;padding:13px 16px;border-bottom-color:var(--green);box-shadow:0 1px 2px #0478570f}.sig-row-signed:first-child{margin-top:-6px}.sig-row-signed:last-child{margin-bottom:-6px;border-bottom:1.5px solid var(--green)}.sig-row-icon{width:30px;height:30px;border-radius:50%;flex-shrink:0;background:var(--panel-alt);border:1.5px solid var(--border);color:var(--muted-dim);display:flex;align-items:center;justify-content:center}.sig-row-icon.signed{background:var(--green-dim);border-color:transparent;color:var(--green)}.sig-row-icon.waiting{background:var(--amber-dim);border-color:transparent;color:var(--amber)}.sig-row-body{flex:1;min-width:0}.sig-row-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.sig-row-signed-content{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:2px}.sig-row-details{min-width:0}.sig-row-signed-content .sig-thumb{flex-shrink:0;margin-top:0;max-width:130px}.status-chip{font-size:10px;font-weight:700;letter-spacing:.03em;padding:3px 9px;border-radius:20px;white-space:nowrap;flex-shrink:0}.status-chip.signed{background:var(--green-dim);color:var(--green)}.status-chip.waiting{background:var(--amber-dim);color:var(--amber)}.status-chip.unavailable{background:var(--panel-alt);color:var(--muted-dim);border:1px solid var(--border)}.qa-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:8px;padding:11px 13px;border:1px solid var(--border);border-radius:8px;font-size:12.5px;font-weight:600;color:var(--text);background:var(--panel-alt);font-family:var(--font-body);cursor:pointer}.qa-btn:first-of-type{margin-top:0}.qa-btn:hover:not(:disabled){background:var(--border)}.qa-btn:disabled{opacity:.5;cursor:not-allowed}.doc-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.doc-gallery-thumb{position:relative;display:block;aspect-ratio:1 / 1;border-radius:9px;overflow:hidden;background:var(--panel-alt);border:1px solid var(--border)}.doc-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.doc-gallery-file{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted);padding:4px}.doc-gallery-file-name{font-size:8.5px;text-align:center;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.doc-gallery-upload{aspect-ratio:1 / 1;border-radius:9px;border:1.5px dashed var(--muted-dim);background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;font-size:10px;font-weight:600;font-family:var(--font-body)}.doc-gallery-upload:hover{border-color:var(--text);color:var(--text)}.cmr-eyebrow-icon{width:20px;height:20px;border-radius:6px;flex-shrink:0;background:var(--accent-dim);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:10.5px}@media (max-width: 600px){.cmr-topbar-search{display:none}.cmr-stepper-label{font-size:10px}}.grid-5{grid-template-columns:repeat(5,1fr)}.dash-kpi-row{margin-bottom:16px}.dash-kpi-tile{text-align:left;cursor:pointer;font:inherit;color:inherit;transition:transform .12s ease,box-shadow .12s ease}.dash-kpi-tile:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1018281a}.dash-main-grid{display:grid;grid-template-columns:1fr 360px;gap:16px;align-items:start;margin-bottom:16px}@media (max-width: 1150px){.dash-main-grid{grid-template-columns:1fr}}.dash-active-card table td,.dash-active-card table th{white-space:nowrap}.dash-route{display:inline-flex;align-items:center;gap:6px;font-size:13px}.dash-route-arrow{color:var(--muted)}.dash-last-activity{color:var(--muted);font-size:12.5px}.dash-attention-list{display:flex;flex-direction:column;gap:12px}.dash-attention-item{display:flex;gap:10px;padding:10px 12px 10px 10px;border-left:3px solid var(--amber);border-radius:8px;background:#ffffff80}.dash-attention-item.dash-attention-amendment{border-left-color:var(--rose)}.dash-attention-item.dash-attention-driver{border-left-color:var(--accent)}.dash-attention-icon{width:26px;height:26px;border-radius:50%;flex-shrink:0;margin-top:1px;background:var(--panel-alt);color:var(--muted);display:flex;align-items:center;justify-content:center}.dash-attention-body{min-width:0}.dash-attention-headline{font-size:13px;font-weight:600;color:var(--text)}.dash-attention-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.dash-attention-chip{border:1px solid var(--border);background:var(--panel);color:var(--accent);border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:700;cursor:pointer}.dash-attention-chip:hover{border-color:var(--accent);background:var(--accent-dim)}.dash-attention-chip-more{border-style:dashed;color:var(--muted);font-weight:600}.dash-attention-chip-more:hover{border-color:var(--muted);background:var(--panel-alt);color:var(--text)}.dash-attention-chips-modal{margin-top:0}.dash-activity-list{display:flex;flex-direction:column}.dash-activity-item{display:flex;align-items:baseline;gap:14px;width:100%;padding:9px 4px;border:none;background:none;border-top:1px solid var(--border);text-align:left;cursor:pointer;font:inherit;color:inherit}.dash-activity-item:first-child{border-top:none}.dash-activity-item:hover{background:var(--panel-alt)}.dash-activity-time{flex-shrink:0;width:76px;color:var(--muted);font-size:12px}.dash-activity-text{font-size:13px;color:var(--text)}.dash-cmr-preview-card{width:560px;max-width:100%;max-height:85vh;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-pop);animation:modal-pop-in .15s ease-out;display:flex;flex-direction:column;overflow:hidden}.dash-status-preview-card{width:420px;max-width:100%;max-height:85vh;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-pop);animation:modal-pop-in .15s ease-out;display:flex;flex-direction:column;overflow:hidden}.dash-preview-toolbar-actions{display:flex;align-items:center;gap:8px}.dash-preview-open-btn{width:40px;padding:10px!important;display:flex;align-items:center;justify-content:center}.dash-preview-route{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--text);margin-bottom:16px}.dash-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.dash-preview-label{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:3px}.dash-preview-subhead{font-size:13px;margin:0 0 8px;color:var(--text)}.dash-preview-sig-rows{display:flex;flex-direction:column;gap:6px}.dash-preview-sig-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px}@media (max-width: 560px){.dash-preview-grid{grid-template-columns:1fr}}@media (max-width: 900px){.grid-5{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.grid-5{grid-template-columns:1fr}.dash-activity-time{width:58px}}.signing-wrap{--primary: #1769e0;--primary-dark: #0e4fae;--primary-light: #eaf3ff;--success: #18a957;--success-light: #eaf9f0;--warning: #f59e0b;--warning-light: #fff7e6;--danger: #dc3545;--danger-light: #fff0f1;--text: #172033;--muted: #718096;--border: #e3eaf2;--background: #f5f8fc;--white: #ffffff;--radius: 18px;--shadow: 0 12px 35px rgba(28, 63, 105, .1);min-height:100vh;background-image:linear-gradient(#f5f8fc26,#f5f8fc26),url(/signing-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}.signing-wrap .header{background:var(--white);border-bottom:1px solid var(--border);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20}.signing-wrap .logo{display:flex;align-items:center;gap:10px}.signing-wrap .logo-mark{width:34px;height:34px;border-radius:9px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}.signing-wrap .logo-text{font-size:17px;font-weight:800;color:var(--text)}.signing-wrap .logo-text span{color:var(--primary)}.signing-wrap .cmr-number{font-size:12.5px;color:var(--muted);font-weight:700}.signing-wrap .journey-wrapper{background:var(--white);border-bottom:1px solid var(--border);padding:18px 24px}.signing-wrap .journey{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between}.signing-wrap .step{display:flex;align-items:center;flex:1}.signing-wrap .step:last-child{flex:0}.signing-wrap .step-icon{width:32px;height:32px;border-radius:50%;background:#e7eef8;color:#7890ad;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.signing-wrap .step.active .step-icon{background:var(--primary);color:#fff}.signing-wrap .step.completed .step-icon{background:var(--success);color:#fff}.signing-wrap .step-label{margin-left:8px;font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap}.signing-wrap .step.active .step-label,.signing-wrap .step.completed .step-label{color:var(--text)}.signing-wrap .step-line{height:2px;flex:1;background:#dfe7f1;margin:0 10px}.signing-wrap .step.completed .step-line{background:var(--success)}.signing-wrap .main{max-width:1100px;margin:32px auto;padding:0 20px;display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.signing-wrap .main.main--single{grid-template-columns:1fr}.signing-wrap .content-area{display:flex;justify-content:center}.signing-wrap .signing-card{width:100%;max-width:440px}.signing-wrap .card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:18px;margin-bottom:15px;box-shadow:0 4px 15px #14325a0a}.signing-wrap .card-title{font-size:14px;font-weight:800;margin-bottom:7px}.signing-wrap .card-text{font-size:12px;line-height:1.55;color:var(--muted)}.signing-wrap .badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:20px;font-size:11px;font-weight:800;background:var(--primary-light);color:var(--primary)}.signing-wrap .badge.success{background:var(--success-light);color:var(--success)}.signing-wrap .badge.warning{background:var(--warning-light);color:var(--warning)}.signing-wrap .badge.danger{background:var(--danger-light);color:var(--danger)}.signing-wrap .screen-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.signing-wrap .screen-header .icon-chip{width:44px;height:44px;border-radius:12px;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.signing-wrap .screen-header .icon-chip.warning{background:var(--warning-light);color:var(--warning)}.signing-wrap .screen-header .icon-chip.success{background:var(--success-light);color:var(--success)}.signing-wrap .screen-header .title{font-size:15px;font-weight:800}.signing-wrap .screen-header .subtitle{font-size:12px;color:var(--muted);margin-top:2px;line-height:1.5}.signing-wrap .otp{display:flex;gap:7px;margin:20px 0 6px;justify-content:center}.signing-wrap .otp input{width:44px;height:50px;border:1px solid var(--border);border-radius:10px;text-align:center;font-size:19px;font-weight:700;outline:none;background:var(--white);color:var(--text)}.signing-wrap .otp input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1769e01a}.signing-wrap .otp-resend{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}.signing-wrap .input-group{margin-bottom:15px}.signing-wrap .input-group label{display:block;font-size:11px;font-weight:700;margin-bottom:6px}.signing-wrap .input{width:100%;height:44px;border:1px solid var(--border);border-radius:10px;padding:0 12px;outline:none;font-size:13px;background:var(--white);color:var(--text)}.signing-wrap .input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1769e01a}.signing-wrap .button{width:100%;height:48px;border:none;border-radius:11px;background:var(--primary);color:#fff;font-size:13px;font-weight:800;cursor:pointer;transition:.2s}.signing-wrap .button:hover{background:var(--primary-dark);transform:translateY(-1px)}.signing-wrap .button:disabled{opacity:.45;cursor:not-allowed;transform:none}.signing-wrap .button:disabled:hover{background:var(--primary)}.signing-wrap .button.success{background:var(--success)}.signing-wrap .button.secondary{background:#fff;color:var(--primary);border:1px solid #cbdcf4}.signing-wrap .button.secondary:hover{background:var(--primary-light);transform:none}.signing-wrap .button.danger{background:var(--danger)}.signing-wrap .button-row{display:flex;gap:8px}.signing-wrap .button-row .button{width:auto;flex:1}.signing-wrap .check-list{list-style:none}.signing-wrap .check-list li{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f6;font-size:12.5px}.signing-wrap .check-list li:last-child{border-bottom:none}.signing-wrap .check-list li.toggle{cursor:pointer}.signing-wrap .check-list li input[type=checkbox]{display:none}.signing-wrap .check{width:22px;height:22px;border-radius:50%;background:var(--success-light);color:var(--success);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}.signing-wrap .check.pending{background:var(--white);color:transparent;border:1.5px solid var(--border)}.signing-wrap .check-sub{font-size:11px;color:var(--muted);margin-top:2px}.signing-wrap .instruction{background:var(--primary-light);border:1px solid #d5e6ff;border-radius:13px;padding:14px;margin-bottom:15px}.signing-wrap .instruction-title{font-size:12px;color:var(--primary);font-weight:800;margin-bottom:8px}.signing-wrap .instruction p{font-size:12px;line-height:1.5;color:#42658e}.signing-wrap .status-box{text-align:center;padding:22px 15px;background:var(--success-light);border:1px solid #ccefdc;border-radius:16px;margin-bottom:18px}.signing-wrap .status-box.info{background:var(--primary-light);border-color:#d5e6ff}.signing-wrap .status-box.warning{background:var(--warning-light);border-color:#fbe3b8}.signing-wrap .status-box.danger{background:var(--danger-light);border-color:#f6c6cb}.signing-wrap .status-circle{width:62px;height:62px;border-radius:50%;background:var(--success);color:#fff;margin:auto;display:flex;align-items:center;justify-content:center;font-size:27px}.signing-wrap .status-box.info .status-circle{background:var(--primary)}.signing-wrap .status-box.warning .status-circle{background:var(--warning)}.signing-wrap .status-box.danger .status-circle{background:var(--danger)}.signing-wrap .status-box h2{font-size:18px;margin-top:12px}.signing-wrap .status-box p{color:var(--muted);font-size:12px;margin-top:5px}.signing-wrap .timeline{position:relative}.signing-wrap .timeline-item{display:flex;gap:12px;margin-bottom:16px;position:relative}.signing-wrap .timeline-item:last-child{margin-bottom:0}.signing-wrap .timeline-icon{width:26px;height:26px;border-radius:50%;background:var(--success-light);color:var(--success);display:flex;align-items:center;justify-content:center;font-size:11px;z-index:2;flex-shrink:0}.signing-wrap .timeline-content strong{display:block;font-size:12px;margin-bottom:2px}.signing-wrap .timeline-content span{font-size:10.5px;color:var(--muted)}.signing-wrap .signature-wrap{margin-bottom:4px}.signing-wrap .role{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:#f7faff;margin-bottom:9px}.signing-wrap .role:last-child{margin-bottom:0}.signing-wrap .role-icon{width:36px;height:36px;border-radius:10px;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.signing-wrap .role strong{display:block;font-size:12.5px}.signing-wrap .role span{font-size:10.5px;color:var(--muted)}.signing-wrap .document-preview{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:14px;font-size:9px}.signing-wrap .document-header{display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #dfe5ed;margin-bottom:8px}.signing-wrap .document-title{font-size:14px;font-weight:900}.signing-wrap .document-row{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:5px}.signing-wrap .document-cell{border:1px solid #e2e7ed;padding:6px;min-height:30px}.signing-wrap .side-panel{display:flex;flex-direction:column;gap:16px}.signing-wrap .side-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.signing-wrap .side-card h3{font-size:14px;margin-bottom:14px}.signing-wrap .link-inline{background:none;border:none;color:var(--muted);text-decoration:underline;font-size:12px;cursor:pointer;padding:0}.signing-wrap .link-inline:hover{color:var(--primary)}.signing-wrap .summary-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:15px}.signing-wrap .summary-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}.signing-wrap .summary-row:last-child{border-bottom:none}.signing-wrap .summary-row .label{color:var(--muted)}.signing-wrap .summary-row .value{text-align:right}.signing-wrap .goods-line{font-size:12.5px;padding:8px 0;border-bottom:1px solid var(--border)}.signing-wrap .goods-line:last-child{border-bottom:none}.signing-wrap .goods-line .desc{color:var(--text)}.signing-wrap .goods-line .meta{color:var(--muted);margin-top:2px}.signing-wrap .app-screen{--primary-color: #0066cc;--primary-hover: #0052a3;--bg-color: #f8fafc;--card-bg: #ffffff;--card-bg-light: #f1f5f9;--text-main: #0f172a;--text-muted: #64748b;--border-color: #cbd5e1;--success-color: #10b981;--success-bg: #ecfdf5;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(0,0,0,.05);min-height:100vh;display:flex;flex-direction:column;background-color:transparent}.signing-wrap .app-screen .app-header{display:flex;flex-direction:column;gap:8px;padding:14px 20px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);max-width:400px;width:100%;margin:16px auto 20px;box-sizing:border-box}.signing-wrap .app-screen .app-header-top{display:flex;align-items:center;justify-content:flex-end}.signing-wrap .app-screen .app-title{font-size:14px;font-weight:700;color:#0d1b2a;letter-spacing:-.2px;text-align:left}.signing-wrap .app-screen .role-badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;background:#e0f2fe;color:#0284c7;letter-spacing:.5px}.signing-wrap .app-screen .app-content{flex:1;overflow-y:auto;padding:0 20px 20px;display:flex;flex-direction:column;gap:20px;max-width:440px;width:100%;margin:0 auto;box-sizing:border-box}.signing-wrap .app-screen .screen-heading{font-size:20px;font-weight:700;color:var(--text-main);text-align:center;margin-bottom:4px}.signing-wrap .app-screen .screen-subheading{font-size:14px;color:var(--text-muted);text-align:center;margin-bottom:12px;line-height:1.4}.signing-wrap .app-screen .section-label{font-size:14px;font-weight:600;color:var(--text-main);margin-bottom:8px}.signing-wrap .app-screen .card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;box-shadow:var(--shadow-sm)}.signing-wrap .app-screen .card-highlight{background:var(--card-bg-light);border:1px solid #e2e8f0;border-radius:var(--radius-md);padding:14px 16px;display:flex;align-items:center;gap:12px}.signing-wrap .app-screen .card-highlight .icon{font-size:20px;color:var(--primary-color)}.signing-wrap .app-screen .card-highlight .title{font-size:14px;font-weight:600;color:var(--text-main)}.signing-wrap .app-screen .card-highlight .subtitle{font-size:12px;color:var(--text-muted)}.signing-wrap .app-screen .form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.signing-wrap .app-screen .form-label{font-size:12px;font-weight:600;color:var(--text-main)}.signing-wrap .app-screen .form-label span{color:#ef4444}.signing-wrap .app-screen .form-input{width:100%;padding:12px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;color:var(--text-main);background:var(--card-bg);outline:none;transition:border-color .2s;box-sizing:border-box}.signing-wrap .app-screen .form-input:focus{border-color:var(--primary-color)}.signing-wrap .app-screen .otp-container{display:flex;justify-content:space-between;gap:8px;margin:10px 0}.signing-wrap .app-screen .otp-input{width:42px;height:48px;text-align:center;font-size:18px;font-weight:600;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text-main)}.signing-wrap .app-screen .btn{width:100%;padding:14px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;cursor:pointer;text-align:center;border:none;transition:background .2s}.signing-wrap .app-screen .btn-primary{background-color:var(--primary-color);color:#fff}.signing-wrap .app-screen .btn-primary:hover{background-color:var(--primary-hover)}.signing-wrap .app-screen .btn-primary:disabled{opacity:.45;cursor:not-allowed}.signing-wrap .app-screen .btn-outline{background-color:transparent;border:1px solid var(--border-color);color:var(--text-main)}.signing-wrap .app-screen .btn-outline:hover{background-color:var(--card-bg-light)}.signing-wrap .app-screen .btn-outline:disabled{opacity:.45;cursor:not-allowed}.signing-wrap .app-screen .button-group{display:flex;flex-direction:column;gap:10px;margin-top:10px}.signing-wrap .app-screen .status-list{display:flex;flex-direction:column;gap:12px}.signing-wrap .app-screen .status-item{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--text-main)}.signing-wrap .app-screen .status-icon{width:20px;height:20px;background:var(--success-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.signing-wrap .app-screen .status-icon.pending{background:var(--card-bg);border:1.5px solid var(--border-color)}.signing-wrap .app-screen .instruction-item{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-main);font-weight:500}.signing-wrap .app-screen .instruction-item .instruction-icon{color:var(--primary-color);font-size:18px;width:24px;text-align:center;flex-shrink:0}.signing-wrap .app-screen .success-banner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;margin-bottom:10px}.signing-wrap .app-screen .success-large-icon{width:56px;height:56px;background:var(--success-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:4px}.signing-wrap .app-screen .btn.ghost.small{width:90px;padding:8px 0;font-size:13px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:transparent;color:var(--text-main);margin-top:8px}.signing-wrap .app-screen .btn.ghost.small:hover{background:var(--card-bg-light)}.signing-wrap .app-screen .btn.ghost.small:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 1000px){.signing-wrap .main{grid-template-columns:1fr}.signing-wrap .side-panel{max-width:500px;margin:auto;width:100%}}@media (max-width: 700px){.signing-wrap .header{padding:12px 16px}.signing-wrap .journey-wrapper{padding:14px;overflow-x:auto}.signing-wrap .journey{min-width:600px}.signing-wrap .step-label{display:none}.signing-wrap .step-line{margin:0 6px}.signing-wrap .main{margin:18px auto;padding:0 12px}.signing-wrap .side-panel{display:none}.signing-wrap .app-screen .app-content{padding:0 16px 16px}.signing-wrap .app-screen .otp-input{width:38px;height:44px;font-size:16px}}
