:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172018;background:#f5f7f1;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--propel: #cde059;--propel-base: #c0d830;--propel-nav: #bed62f;--propel-dark: #8ca700;--ink: #2f3330;--muted: #686d68;--line: #dfe6d8;--panel: #ffffff;--panel-soft: #f8faf4;--nav: var(--propel-nav);--primary-border: #b7cc39;--teal: #596a00;--steel: #4630d8;--danger: #b4473a;--warning: #9b6b18}.topbar-mode-pill{display:none}.pa-page{display:flex;width:100%;height:100%;min-width:0;min-height:0;flex-direction:column;overflow-y:auto;padding:22px 24px 40px;background:#f4f6f1;color:#1a2332}.pa-page-header{display:flex;flex-shrink:0;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px;padding:0;border:0;background:transparent;flex-wrap:wrap}.pa-page-header>div:first-child{min-width:min(100%,360px)}.pa-eyebrow,.pa-page-header>div>span:first-child{display:inline-flex;align-items:center;gap:6px;color:#6a8e0a;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.pa-page-header h1{margin:5px 0 0;color:#1a2332;font-size:27px;font-weight:800;letter-spacing:0;line-height:1.15}.pa-page-header p{margin:3px 0 0;color:#6b7789;font-size:13px}.pa-primary-button,.pa-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 17px;border-radius:10px;font-size:13px;font-weight:700;white-space:nowrap}.pa-primary-button{border:0;background:#9bc413;color:#fff;box-shadow:0 3px 8px #9bc41361}.pa-primary-button:hover:not(:disabled){background:#8cb111}.pa-secondary-button{border:1px solid #e2e6ed;background:#fff;color:#6b7789}.pa-primary-button.small{min-height:34px;padding:0 15px;border-radius:9px;font-size:12px}.pa-management-grid{display:grid;grid-template-columns:272px minmax(0,1fr);gap:14px;align-items:start;min-height:0}.pa-side-panel,.pa-panel{min-width:0;border:1px solid #e7ebe3;border-radius:14px;background:#fff;overflow:hidden}.pa-side-stats{display:flex;align-items:center;gap:14px;padding:12px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.pa-side-stats div,.pa-side-summary div{display:grid;gap:2px}.pa-side-stats strong,.pa-side-summary strong,.reports-admin-stats strong{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:17px;font-weight:700;line-height:1.1}.pa-side-stats span,.pa-side-summary em,.reports-admin-stats span{color:#8a96a8;font-size:10px;font-style:normal;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.camera-admin-group-tools{display:grid;gap:8px;padding:10px 12px;border-bottom:1px solid #eef1ea}.camera-admin-group-title,.camera-admin-group-row{display:flex;align-items:center;gap:8px}.camera-admin-group-title strong{flex:1;color:#1a2332;font-size:12px;font-weight:850}.camera-admin-group-title span,.camera-admin-group-row em{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;border-radius:999px;background:#eef1ea;color:#6a7485;font-size:10.5px;font-style:normal;font-weight:850}.camera-admin-group-form{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:6px}.camera-admin-group-form input{min-width:0;min-height:32px;padding:0 10px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#1a2332;font-size:12px;outline:none}.camera-admin-group-form input:focus{border-color:#9bc413}.camera-admin-group-form button,.camera-admin-group-row button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:0;cursor:pointer}.camera-admin-group-form button{width:32px;min-height:32px;border:1px solid #9bc413;border-radius:8px;background:#9bc413;color:#fff;box-shadow:0 2px 5px #9bc4133d}.camera-admin-group-form button:hover:not(:disabled){background:#8db310}.camera-admin-group-list{display:grid;gap:5px}.camera-admin-group-row{min-height:30px;padding:4px 6px 4px 9px;border:1px solid #eef1ea;border-radius:8px;background:#fbfcf9}.camera-admin-group-row span{min-width:0;flex:1;overflow:hidden;color:#1a2332;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.camera-admin-group-row button{width:auto;height:auto;min-height:22px;border:0;background:transparent;color:#8a96a8;font-size:10.5px;font-weight:850;line-height:1}.camera-admin-group-row button:hover:not(:disabled){background:transparent;color:#b4473a;text-decoration:underline}.camera-admin-group-form button:disabled,.camera-admin-group-row button:disabled{cursor:not-allowed;opacity:.5}.camera-admin-group-list p{margin:0;color:#8a96a8;font-size:11px;font-weight:650}.pa-side-summary{display:flex;align-items:center;gap:9px;padding:12px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.pa-side-summary>span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:#9bc41321;color:#6a8e0a}.pa-side-list{display:flex;max-height:calc(100vh - 250px);flex-direction:column;gap:5px;overflow-y:auto;padding:9px}.pa-list-row{display:flex;width:100%;align-items:center;gap:9px;padding:9px 11px;border:1px solid #eef1ea;border-radius:10px;background:#fbfcf9;color:#1a2332;text-align:left}.pa-list-row.active{border-color:#9bc4138c;background:#9bc41314}.pa-list-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#eef1ea;color:#8a96a8}.pa-list-row.active .pa-list-icon{background:#9bc4132e;color:#6a8e0a}.pa-list-copy{display:grid;min-width:0;flex:1;gap:2px}.pa-list-copy strong,.pa-list-row.notification>strong{display:flex;min-width:0;align-items:center;gap:5px;overflow:hidden;color:#1a2332;font-size:12.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.pa-list-copy em{overflow:hidden;color:#8a96a8;font-size:10.5px;font-style:normal;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.pa-status-pill,.pa-status-tag{display:inline-flex;align-items:center;gap:5px;padding:1px 8px;border-radius:999px;font-size:9.5px;font-style:normal;font-weight:800;white-space:nowrap}.pa-status-pill span{width:6px;height:6px;border-radius:50%;background:currentColor}.pa-status-pill.online,.pa-status-tag.published{background:#9bc41329;color:#6a8e0a}.pa-status-pill.offline{background:#e055551a;color:#c04747}.pa-status-pill.maintenance,.pa-status-tag.scheduled,.pa-status-tag.paused{background:#b453091f;color:#b45309}.pa-status-tag.draft{background:#3b82f61f;color:#2563eb}.pa-builder-stack{display:flex;min-width:0;flex-direction:column;gap:12px}.pa-panel-header{display:flex;align-items:center;gap:9px;min-height:40px;padding:10px 15px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.pa-panel-header>svg{flex:0 0 auto;color:#6a8e0a}.pa-panel-header strong{color:#1a2332;font-size:13px;font-weight:800}.pa-panel-header>span{color:#8a96a8;font-size:11px;font-weight:600}.pa-panel-header>em,.pa-panel-header .pa-panel-tabs{margin-left:auto}.pa-form-grid{display:grid;gap:10px;padding:13px 15px}.pa-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-form-grid label,.admin-appointments-selects label,.admin-appointments-search{display:grid;gap:5px}.pa-form-grid label>span,.admin-appointments-selects label>span,.admin-appointments-search>span{color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.pa-form-grid label>em{color:#c04747;font-size:11px;font-style:normal;font-weight:700}.pa-form-grid .wide{grid-column:1 / -1}.pa-form-grid input,.pa-form-grid select,.pa-form-grid textarea,.reports-form-grid input,.reports-form-grid select,.reports-form-grid textarea,.reports-source-name input,.reports-source-name select,.admin-appointments-selects select,.admin-appointments-search input{width:100%;min-height:34px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#1a2332;font-size:12.5px;outline:none}.pa-form-grid input,.pa-form-grid select,.reports-form-grid input,.reports-form-grid select,.reports-source-name input,.reports-source-name select,.admin-appointments-selects select,.admin-appointments-search input{padding:0 11px}.pa-form-grid input:focus,.pa-form-grid select:focus,.pa-form-grid textarea:focus,.reports-form-grid input:focus,.reports-form-grid select:focus,.reports-form-grid textarea:focus,.reports-source-name input:focus,.reports-source-name select:focus,.admin-appointments-selects select:focus,.admin-appointments-search input:focus{border-color:#9bc413}.pa-form-grid textarea{min-height:68px;padding:8px 11px;resize:vertical}.pa-segmented-row{display:flex;gap:6px}.pa-segmented-row button{flex:1;min-height:34px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:700}.pa-segmented-row button.active.online,.pa-segmented-row button.active{border-color:#9bc4138c;background:#9bc4131f;color:#6a8e0a}.pa-segmented-row button.active.offline{border-color:#e0555561;background:#e055551a;color:#c04747}.pa-segmented-row button.active.maintenance{border-color:#f59e0b73;background:#f59e0b24;color:#b45309}.pa-check-card{display:flex;width:100%;align-items:center;gap:8px;min-height:34px;padding:0 11px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#6b7789;font-size:12px;font-weight:700;text-align:left}.pa-check-card.active{border-color:#9bc41380;background:#9bc41314;color:#6a8e0a}.pa-check-card>span,.pa-option-card>i{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;flex:0 0 17px;border:1.5px solid #c9d0da;border-radius:5px;background:#fff;color:#fff}.pa-check-card.active>span,.pa-option-card.active>i{border-color:#9bc413;background:#9bc413}.pa-panel-footnote,.pa-panel-actions{display:flex;align-items:center;gap:8px;padding:11px 15px;border-top:1px solid #eef1ea;background:#fbfcf7;color:#6b7789;font-size:11.5px;font-weight:600}.pa-panel-footnote svg{color:#6a8e0a}.pa-panel-footnote.error{border-top:0;border:1px solid rgba(224,85,85,.28);border-radius:8px;background:#e0555514;color:#9f2f2f}.pa-panel-footnote.error svg{color:#c04747}.pa-panel-actions{justify-content:space-between}.pa-camera-preview{min-height:auto;aspect-ratio:16 / 6.5;background:linear-gradient(160deg,#242c3a,#161c27)}.pa-camera-preview:before{display:none}.pa-camera-preview>div{color:#8a96a8}.pa-camera-preview>div>svg{color:#9bc413}.pa-camera-preview strong{color:#e6eaf1;font-size:13px}.pa-camera-preview span{max-width:520px;color:#7d8899;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;white-space:normal;word-break:break-all}.pa-camera-live,.pa-camera-location{position:absolute;z-index:2;padding:3px 9px;border-radius:6px;background:#00000073;color:#fff!important;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px!important;font-weight:700}.pa-camera-live{top:10px;left:12px;display:inline-flex;align-items:center;gap:6px}.pa-camera-live:before{width:6px;height:6px;border-radius:50%;background:var(--status-dot, #9bc413);content:""}.pa-camera-location{right:12px;bottom:10px;color:#c9d2de!important;font-weight:600}.pa-list-row.notification{display:grid;gap:3px}.pa-list-kicker,.pa-method-row{display:flex;align-items:center;gap:6px;min-width:0}.pa-list-kicker{color:#8a96a8;font-size:9.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.pa-list-kicker .pa-status-tag{margin-left:auto;letter-spacing:0;text-transform:none}.pa-method-row em{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:5px;background:#eef1ea;color:#6b7789;font-size:9.5px;font-style:normal;font-weight:800}.pa-method-row small{min-width:0;overflow:hidden;color:#9aa6b6;font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.pa-card-grid{display:grid;gap:10px;padding:13px 15px}.pa-card-grid.two,.pa-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-card-grid.two,.pa-editor-grid{display:grid;gap:12px}.pa-option-card{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) 17px;gap:4px 10px;align-items:start;padding:12px 13px;border:1px solid #e7ebe3;border-radius:11px;background:#fff;text-align:left}.pa-option-card.active{border-color:#9bc4138c;background:#9bc41314}.pa-option-card>span{display:inline-flex;grid-row:1 / span 2;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:#eef1ea;color:#8a96a8}.pa-option-card.active>span{background:#9bc4132e;color:#6a8e0a}.pa-option-card strong{color:#1a2332;font-size:12.5px;font-weight:800}.pa-option-card em{grid-column:2;color:#8a96a8;font-size:10.5px;font-style:normal;font-weight:600;line-height:1.4}.pa-option-card>i{grid-column:3;grid-row:1;margin-top:2px}.pa-editor-grid{align-items:start}.pa-template-editor{padding:11px 13px 13px}.pa-template-toolbar{display:flex;gap:4px;margin-bottom:8px;flex-wrap:wrap}.pa-template-toolbar button{min-height:26px;padding:0 10px;border:1px solid #e2e6ed;border-radius:7px;background:#fff;color:#6b7789;font-size:11px;font-weight:700}.pa-template-editor textarea{width:100%;min-height:230px;padding:10px 12px;border:1px solid #e2e6ed;border-radius:9px;background:#fbfcf9;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;line-height:1.6;outline:none;resize:vertical}.pa-panel-tabs{display:flex;gap:4px}.pa-panel-tabs button{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 10px;border:1px solid #e2e6ed;border-radius:999px;background:#fff;color:#6b7789;font-size:11px;font-weight:700}.pa-panel-tabs button.active{border-color:#9bc4138c;background:#9bc4131f;color:#6a8e0a}.pa-notification-preview{min-height:230px;padding:13px;background:#f4f6f1}.pa-app-preview,.pa-email-preview{overflow:hidden;border:1px solid #e7ebe3;border-radius:12px;background:#fff;box-shadow:0 8px 22px #1a23321a}.pa-app-preview{max-width:340px;margin:0 auto}.pa-app-preview header,.pa-email-preview header{display:flex;align-items:center;gap:7px;padding:9px 12px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.pa-app-preview header svg{color:#6a8e0a}.pa-app-preview header strong,.pa-email-preview header strong{color:#1a2332;font-size:11px;font-weight:800}.pa-app-preview header span,.pa-email-preview header span{margin-left:auto;color:#9aa6b6;font-size:10px;font-weight:600}.pa-app-preview section,.pa-email-preview section{padding:11px 13px;color:#4b5563;font-size:11.5px;line-height:1.55}.pa-app-preview section>strong{display:block;margin-bottom:4px;color:#1a2332;font-size:12.5px;font-weight:800}.pa-toast{position:fixed;bottom:22px;left:50%;z-index:1200;display:flex;align-items:center;gap:8px;padding:10px 16px;transform:translate(-50%);border:1px solid rgba(155,196,19,.5);border-radius:11px;background:#f6fae7;color:#5d7d09;font-size:12.5px;font-weight:700;box-shadow:0 10px 28px #1a23322e}.rpm-root{gap:0;overflow:hidden;padding:0}.rpm-scroll{display:flex;flex:1;min-height:0;flex-direction:column;overflow-y:auto;padding:22px 24px 24px}.rpm-header-actions{display:flex;align-items:center;gap:16px}.rpm-stats{display:flex;align-items:center;gap:14px}.rpm-stats article{display:grid;gap:2px;text-align:right}.rpm-stats strong{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:19px;font-weight:700;line-height:1.1}.rpm-stats span{color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.rpm-layout{display:grid;flex-shrink:0;grid-template-columns:272px minmax(0,1fr);gap:14px;align-items:start}.rpm-list-panel{position:sticky;top:0;min-width:0;overflow:hidden;border:1px solid #e7ebe3;border-radius:14px;background:#fff}.rpm-search{position:relative;padding:11px 12px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.rpm-search svg{position:absolute;top:20px;left:22px;color:#9aa6b6}.rpm-search input{width:100%;height:32px;padding:0 10px 0 30px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#1a2332;font-size:12px;outline:none}.rpm-search input:focus,.rpm-form-grid input:focus,.rpm-form-grid select:focus,.rpm-form-grid textarea:focus,.rpm-field input:focus,.rpm-field select:focus,.rpm-n4-actions select:focus{border-color:#9bc413}.rpm-list{display:flex;max-height:calc(100vh - 260px);flex-direction:column;gap:5px;overflow-y:auto;padding:9px}.rpm-item{display:block;width:100%;padding:9px 11px;border:1px solid #eef1ea;border-radius:10px;background:#fbfcf9;cursor:pointer;text-align:left}.rpm-item.active{border-color:#9bc4138c;background:#9bc41314}.rpm-item-top{display:flex;align-items:center;gap:6px}.rpm-item-top em{color:#8a96a8;font-size:9.5px;font-style:normal;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.rpm-dirty-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#f59e0b}.rpm-item-top .rpm-status{margin-left:auto}.rpm-status{display:inline-flex;padding:1px 7px;border-radius:5px;font-size:9.5px;font-weight:800}.rpm-status.published{background:#9bc41329;color:#6a8e0a}.rpm-status.draft{background:#3b82f61f;color:#2563eb}.rpm-status.paused{background:#b453091f;color:#b45309}.rpm-item strong{display:block;overflow:hidden;margin-top:3px;color:#1a2332;font-size:12.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.rpm-item-source{display:block;margin-top:1px;color:#8a96a8;font-size:10.5px;font-weight:600}.rpm-empty{margin:0;padding:18px 0;color:#8a96a8;font-size:11.5px;font-weight:600;text-align:center}.rpm-builder{display:flex;min-width:0;flex-direction:column;gap:12px}.rpm-panel{min-width:0;overflow:hidden;border:1px solid #e7ebe3;border-radius:14px;background:#fff}.rpm-panel-head{display:flex;align-items:center;gap:9px;padding:10px 15px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.rpm-panel-head svg{flex-shrink:0;color:#6a8e0a}.rpm-panel-head strong{color:#1a2332;font-size:13px;font-weight:800}.rpm-panel-head>span{overflow:hidden;color:#8a96a8;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.rpm-panel-head .rpm-preview-meta{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px}.rpm-form-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;padding:13px 15px}.rpm-form-grid label{display:block;min-width:0}.rpm-form-grid label.wide{grid-column:1 / -1}.rpm-form-grid label>span,.rpm-field>span{display:block;margin-bottom:5px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.rpm-form-grid input,.rpm-form-grid select,.rpm-field input,.rpm-field select{width:100%;height:34px;padding:0 11px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#1a2332;font-size:12.5px;outline:none}.rpm-form-grid input{font-weight:600}.rpm-form-grid select,.rpm-field select,.rpm-n4-actions select{appearance:none;-webkit-appearance:none;padding-right:26px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239aa6b6' fill='none' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.rpm-form-grid textarea{width:100%;padding:8px 11px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#1a2332;font-size:12.5px;line-height:1.5;outline:none;resize:vertical}.rpm-source-body{display:flex;flex-direction:column;gap:11px;padding:13px 15px}.rpm-source-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px}.rpm-source-card{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:5px;padding:11px 12px;border:1px solid #e7ebe3;border-radius:11px;background:#fff;cursor:pointer;text-align:left}.rpm-source-card.active{border-color:#9bc4138c;background:#9bc41314}.rpm-source-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#eef1ea;color:#8a96a8}.rpm-source-card.active .rpm-source-icon{background:#9bc4132e;color:#6a8e0a}.rpm-source-card strong{color:#1a2332;font-size:12px;font-weight:800}.rpm-source-desc{color:#8a96a8;font-size:10.5px;font-weight:600;line-height:1.4}.rpm-field{display:block;min-width:0}.rpm-mono-input{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.rpm-field input[readonly]{background:#fbfcf9}.rpm-db-source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.rpm-schema-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 12px;border:1px solid #d8dfcc;border-radius:9px;background:#fbfcf7;color:#52616f;font-size:11.5px;font-weight:800;white-space:nowrap;cursor:pointer}.rpm-schema-action:disabled{opacity:.55;cursor:not-allowed}.rpm-source-hint{display:block;margin-top:5px;color:#8a96a8;font-size:10.5px;font-weight:700;letter-spacing:0;text-transform:none}.rpm-source-hint.bad{color:#b91c1c}.rpm-n4-box{display:flex;flex-direction:column;gap:9px;padding:11px 12px;border:1px dashed #d8dfcc;border-radius:11px;background:#fbfcf7}.rpm-n4-box.missing{border-color:#e0555573;background:#fdf6f6}.rpm-n4-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.rpm-n4-upload{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 13px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:700;cursor:pointer}.rpm-n4-upload input{display:none}.rpm-n4-actions select{height:32px;padding-left:11px;border:1px solid #e2e6ed;border-radius:9px;background-color:#fff;color:#1a2332;font-size:12px;outline:none}.rpm-n4-status{display:flex;align-items:center;gap:8px}.rpm-n4-status svg{flex-shrink:0;color:#6a8e0a}.rpm-n4-box.missing .rpm-n4-status svg{color:#c04747}.rpm-n4-status strong{display:block;color:#6a8e0a;font-size:12px;font-weight:700}.rpm-n4-box.missing .rpm-n4-status strong{color:#c04747}.rpm-n4-status span{display:block;color:#8a96a8;font-size:10.5px;font-weight:600}.rpm-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rpm-rows{display:flex;max-height:280px;flex-direction:column;gap:4px;overflow-y:auto;padding:9px}.rpm-col-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #eef1ea;border-radius:8px;background:#fbfcf9}.rpm-col-row>svg{flex-shrink:0;color:#c3cad4}.rpm-check{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;flex-shrink:0;padding:0;border:1.5px solid #c9d0da;border-radius:5px;background:#fff;color:#fff;cursor:pointer}.rpm-check.on{border-color:#9bc413;background:#9bc413}.rpm-col-label{flex:1;min-width:0;overflow:hidden;color:#1a2332;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.rpm-col-label.off{color:#9aa6b6}.rpm-col-label-input{min-height:24px;padding:2px 6px;margin-left:-6px;border:1px solid transparent;border-radius:5px;background:transparent}.rpm-col-label-input:hover{border-color:#e2e6ed}.rpm-col-label-input:focus{border-color:#9bc413;background:#fff;outline:none}.rpm-zone-add{display:inline-flex;flex-shrink:0;align-items:center;gap:3px;height:20px;padding:0 7px;border:1px dashed #c9d69a;border-radius:999px;background:transparent;color:#6a8e0a;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}.rpm-zone-add:hover{border-style:solid;background:#9bc41321}.rpm-zone-remove{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border:0;border-radius:5px;background:transparent;color:#9aa6b6;cursor:pointer}.rpm-zone-remove:hover{background:#b4473a1a;color:#b4473a}.rpm-col-type{color:#8a96a8;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.rpm-move{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789;cursor:pointer}.rpm-move:disabled{color:#d5dae2;cursor:default}.rpm-filter-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid #eef1ea;border-radius:8px;background:#fbfcf9}.rpm-filter-body{flex:1;min-width:0}.rpm-filter-name{display:flex;align-items:center;gap:6px}.rpm-filter-name>span{color:#1a2332;font-size:12px;font-weight:700}.rpm-preset{display:inline-flex;padding:1px 6px;border-radius:5px;background:#3b82f61a;color:#2563eb;font-size:9.5px;font-style:normal;font-weight:800}.rpm-filter-sub{display:block;color:#8a96a8;font-size:10.5px;font-weight:600}.rpm-date-mode{display:inline-flex;flex-shrink:0;gap:2px;padding:2px;border:1px solid #e0e6ee;border-radius:7px;background:#eef2f7}.rpm-date-mode button{width:54px;height:24px;padding:0;border:0;border-radius:5px;background:transparent;color:#647084;font-size:10px;font-weight:800;cursor:pointer}.rpm-date-mode button.on{background:#1a2332;color:#fff;box-shadow:0 1px 2px #1a23322e}.rpm-date-mode button:not(.on):hover{background:#fff;color:#1a2332}.rpm-access{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:13px 15px}.rpm-access h2{margin:0 0 7px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.rpm-access-list{display:flex;flex-direction:column;gap:4px}.rpm-access-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #eef1ea;border-radius:8px;background:#fbfcf9;cursor:pointer;text-align:left}.rpm-access-item.on{border-color:#9bc41373;background:#9bc41312}.rpm-access-text{flex:1;min-width:0}.rpm-access-text strong{display:block;overflow:hidden;color:#1a2332;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.rpm-access-text em{display:block;overflow:hidden;color:#8a96a8;font-size:10.5px;font-style:normal;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.rpm-preview-scroll{overflow-x:auto}.rpm-preview{padding:9px 12px 12px}.rpm-preview-head{display:flex;gap:10px;padding:0 8px 6px;color:#8a96a8;font-size:9.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.rpm-preview-head span{flex:1;min-width:100px}.rpm-preview-rows{display:flex;flex-direction:column;gap:4px}.rpm-preview-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border:1px solid #eef1ea;border-radius:8px;background:#fbfcf9}.rpm-preview-row span{flex:1;min-width:100px;overflow:hidden;color:#4b5563;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.rpm-preview .rpm-empty{padding:16px 0}.rpm-savebar{display:flex;flex-shrink:0;align-items:center;gap:10px;padding:11px 24px;border-top:1px solid #e7ebe3;background:#fff}.rpm-save-state{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700}.rpm-save-state.ok{color:#6a8e0a}.rpm-save-state.dirty{color:#b45309}.rpm-save-state.bad{color:#c04747}.rpm-save-button{height:36px;margin-left:auto;padding:0 17px;border:0;border-radius:9px;background:#9bc413;color:#fff;font-size:12.5px;font-weight:700;box-shadow:0 3px 8px #9bc41359;cursor:pointer}.rpm-save-button:hover:not(:disabled){background:#8cb111}.rpm-save-button:disabled{background:#c9d0da;box-shadow:none;cursor:default}.rpm-toast{position:fixed;z-index:1200;bottom:70px;left:50%;display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(155,196,19,.5);border-radius:11px;background:#f6fae7;color:#5d7d09;font-size:12.5px;font-weight:700;box-shadow:0 10px 28px #1a23322e;transform:translate(-50%)}.rpm-toast.bad{border-color:#e0555559;background:#fdf1f1;color:#c04747}.admin-appointments-root{gap:0}.admin-appointments-header-actions{display:flex;align-items:center;gap:8px}.admin-appointments-filters{display:flex;align-items:flex-end;gap:12px;margin-bottom:12px;padding:0;border:0;background:transparent;flex-wrap:wrap}.admin-appointments-error{order:-1;flex:1 1 100%}.admin-appointments-date-group{display:flex;gap:12px}.admin-appointments-date-group label{gap:5px}.admin-appointments-date-group>label>input{min-height:36px;border:1px solid #e2e6ed;border-radius:10px;background:#fff;font-size:12px}.admin-appointments-search{flex:1 1 260px;max-width:360px}.admin-appointments-search>div{position:relative}.admin-appointments-search svg{position:absolute;left:11px;top:11px;color:#9aa6b6}.admin-appointments-search input{min-height:36px;padding-left:32px}.admin-appointments-selects{display:flex;align-items:flex-end;gap:8px}.admin-appointments-selects>svg{margin-bottom:10px;color:#9aa6b6}.admin-appointments-selects select{min-width:120px;min-height:36px;border-radius:10px;font-size:12px}.admin-appointments-terminal-toggle{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 12px;border:1px solid #e2e6ed;border-radius:999px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:700}.admin-appointments-terminal-toggle.active{border-color:#9bc41373;background:#9bc41324;color:#6a8e0a}.admin-appointments-layout.single{display:block;min-height:0;overflow:visible;padding:0}.admin-appointments-table-panel{border:1px solid #e7ebe3;border-radius:14px;background:#fff;overflow:hidden}.admin-appointments-panel-title{min-height:44px;padding:11px 16px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.admin-appointments-panel-title svg{color:#6a8e0a}.admin-appointments-panel-title>span{min-width:22px;min-height:19px;padding:2px 7px;border-radius:999px;background:#9bc41329;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.admin-appointments-alert-pills{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}.admin-appointments-alert-pills button{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 11px;border:1px solid #e2e6ed;border-radius:999px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:700}.admin-appointments-alert-pills button>span{width:6px;height:6px;border-radius:50%;background:#c6ccbf}.admin-appointments-alert-pills button.severe>span{background:#e05555}.admin-appointments-alert-pills button.warning>span{background:#f59e0b}.admin-appointments-alert-pills button.minor>span{background:#3b82f6}.admin-appointments-alert-pills button.active{border-color:#d0d5c6;background:#eef1ea;color:#1a2332}.admin-appointments-alert-pills button.active.severe{border-color:#e0555566;background:#e055551f;color:#c04747}.admin-appointments-alert-pills button.active.warning{border-color:#f59e0b73;background:#f59e0b24;color:#b45309}.admin-appointments-alert-pills button.active.minor{border-color:#3b82f659;background:#3b82f61a;color:#2563eb}.admin-appointments-alert-pills em{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;font-style:normal;opacity:.75}.admin-appointments-table-scroll{padding:0 10px 12px;background:#fff}.admin-appointments-table{min-width:1330px;border-collapse:separate;border-spacing:0 5px;background:transparent}.admin-appointments-table th{padding:9px 10px 7px;border-bottom:0;background:transparent;color:#8a96a8;font-size:9.5px;letter-spacing:.07em}.admin-appointments-table td{padding:6px 10px;border-top:1px solid #eef1ea;border-bottom:1px solid #eef1ea;background:#fbfcf9;font-size:12px}.admin-appointments-table td:first-child{border-left:1px solid #eef1ea;border-radius:10px 0 0 10px}.admin-appointments-table td:last-child{border-right:1px solid #eef1ea;border-radius:0 10px 10px 0}.admin-appointments-table tbody tr:nth-child(2n),.admin-appointments-table tbody tr:nth-child(2n) td.admin-appointments-actions-cell{background:transparent}.admin-appointments-table tbody tr.terminal td{background:#fafbf8;opacity:.62}.admin-appointments-fab{display:none}@media(max-width:1100px){.pa-management-grid,.rpm-layout{grid-template-columns:1fr}.pa-side-list,.rpm-list{max-height:none}.pa-editor-grid,.pa-card-grid.two,.rpm-panel-grid,.rpm-access,.pa-form-grid.two,.rpm-form-grid{grid-template-columns:1fr}.rpm-list-panel{position:static}}@media(max-width:760px){.pa-page{padding:18px 16px 32px}.rpm-root{padding:0}.rpm-scroll{padding:18px 16px 24px}.rpm-header-actions,.admin-appointments-header-actions,.admin-appointments-selects,.admin-appointments-date-group{align-items:stretch;flex-direction:column}}.import-advice-compact-table th,.import-advice-compact-table td{padding:7px 9px;border-bottom:1px solid #eef1ea;text-align:left;white-space:nowrap}.import-advice-compact-table th{background:#f8faf4;color:#6b7789;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.import-advice-compact-table tbody tr:nth-child(2n){background:#fbfcf7}.import-advice-compact-table tbody tr:last-child td{border-bottom:0}.customer-appointments-table th,.customer-appointments-table td{padding:9px 11px;border-bottom:1px solid #eef1ea;text-align:center;vertical-align:middle;white-space:nowrap}.customer-appointments-table th{position:sticky;top:0;z-index:1;background:#f8faf4;color:#6b7789;font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.customer-appointments-table tbody tr:nth-child(2n){background:#fbfcf7}.customer-appointments-table tbody tr:hover{background:#9bc41312}.customer-appointments-table tbody tr:last-child td{border-bottom:0}.container-appointments-aside button:not(:disabled):hover{border-color:#9bc4138c!important}.bulk-booking-fab{bottom:max(10px,env(safe-area-inset-bottom))!important}@media(max-width:1180px){.container-appointments-root{flex-direction:column!important;overflow:auto!important}.container-appointments-main{flex:0 0 auto!important;min-height:620px}.container-appointments-aside{width:auto!important;min-height:520px;padding:0 24px 24px!important;overflow:visible!important}.bulk-booking-fab{right:14px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;width:46px!important;height:46px!important}}@media(max-width:640px){.bulk-booking-fab{right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;width:44px!important;height:44px!important}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f0f1f3}::-webkit-scrollbar-thumb{background:#d0d5de;border-radius:3px}.slot-cell:hover:not(.slot-disabled){background:#eef7c8!important;border-color:#9bc413!important;cursor:pointer}.slot-cell.slot-full:hover{background:#9bc41314!important;border-color:#9bc4134d!important;cursor:not-allowed!important}.slot-cell.slot-disabled{cursor:not-allowed!important;opacity:.4}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .25s ease forwards}.gantry-crane-overlay,.container-stack-overlay{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f4f5f7b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.gantry-crane-overlay:before,.container-stack-overlay:before{position:absolute;inset:0;opacity:.35;background-image:linear-gradient(#e2e6ed 1px,transparent 1px),linear-gradient(90deg,#e2e6ed 1px,transparent 1px);background-size:32px 32px;content:""}.gantry-crane-content,.container-stack-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:18px}.loader-copy,.container-stack-copy{max-width:min(520px,calc(100vw - 48px));text-align:center;font-family:Space Grotesk,sans-serif}.loader-copy div,.container-stack-copy div{margin-bottom:2px;color:#1a2332;font-size:14px;font-weight:600}.loader-copy span,.container-stack-copy span{display:block;color:#8a96a8;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.55;letter-spacing:.02em}.loader-copy.compact div{font-size:13px}.loader-copy.compact span{font-size:10px}.container-stack-loader,.slot-track-loader{display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;padding:18px 14px;color:#6b7789;font-size:12px}.form-opening-overlay{position:fixed;inset:0;z-index:2900;display:flex;align-items:center;justify-content:center;background:#f4f5f794;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.form-opening-card{display:flex;min-width:220px;flex-direction:column;align-items:center;gap:14px;padding:22px 24px 20px;border:1px solid #e2e6ed;border-radius:8px;background:#fffffff0;box-shadow:0 18px 50px #1a23321f}.global-task-spinner{position:fixed;right:20px;bottom:20px;z-index:3200;display:inline-flex;align-items:center;min-height:38px;gap:10px;padding:9px 12px;border:1px solid rgba(138,150,168,.22);border-radius:8px;background:#fffffff0;box-shadow:0 12px 28px #1a233229;color:#1a2332;font-size:12px;font-weight:750;pointer-events:none}.global-task-spinner-mark{width:17px;height:17px;flex:0 0 auto;border:2px solid #dfe6d8;border-top-color:var(--propel-dark);border-radius:50%;animation:propelGlobalTaskSpin .7s linear infinite}@keyframes propelGlobalTaskSpin{to{transform:rotate(360deg)}}@keyframes propelContainerStackRise{0%,to{opacity:0;transform:translateY(var(--cs-rise-y))}15%{opacity:1;transform:translateY(var(--cs-rise-y))}45%,85%{opacity:1;transform:translateY(0)}}@keyframes propelContainerStackBase{0%,to{opacity:.15}50%{opacity:.35}}@keyframes propelGantryTrolley{0%,to{transform:translate(-8%)}50%{transform:translate(8%)}}@keyframes propelGantryCable{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@keyframes propelGantryLoad{0%,to{transform:translateY(-30px)}50%{transform:translateY(0)}}@keyframes propelGantryWarn{0%,to{opacity:.6}50%{opacity:1}}@keyframes propelSlotTrackFill{0%,to{background:#e2e6ed}20%,60%{background:var(--slot-track-color)}}@media(max-width:620px){.global-task-spinner{right:12px;bottom:12px}}@media(prefers-reduced-motion:reduce){.form-opening-card *,.global-task-spinner-mark,.gantry-crane-content *,.container-stack-loader *,.slot-track-loader *,.container-stack-content *{animation:none}}input[type=number]::-webkit-inner-spin-button{opacity:1}.boot-screen{display:grid;min-height:100vh;place-items:center;color:var(--muted)}.app-frame{display:grid;grid-template-rows:64px minmax(0,1fr) 36px;min-height:100vh}.app-frame-topbar-only{grid-template-rows:64px minmax(0,1fr) 36px}.app-frame-topbar-only .main-pane{min-height:calc(100vh - 100px)}.topbar-shell-content{height:calc(100vh - 100px);overflow:hidden;padding:0}.app-frame-topbar-only .topbar-left{padding-left:12px}.shell-body{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 100px);transition:grid-template-columns .18s ease}.app-frame.nav-rail .shell-body{grid-template-columns:84px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;gap:22px;height:calc(100vh - 100px);border-right:1px solid var(--primary-border);background:#fff;color:var(--ink);padding:12px 8px;overflow:hidden;transition:padding .18s ease}.brand-lockup{display:flex;align-items:center;gap:12px;min-height:48px;color:inherit;text-decoration:none}.brand-mark{display:grid;flex:0 0 44px;width:44px;height:44px;place-items:center;border-radius:8px;background:#ffffffb3}.brand-mark img{width:31px;height:31px;object-fit:contain}.brand-wordmark{display:grid;gap:4px;min-width:0}.brand-wordmark img{width:128px;height:auto}.brand-wordmark span,.sidebar-user-card span{color:#2f3330b8;font-size:.78rem}.main-nav{display:grid;gap:2px}.nav-section-label{padding:8px 10px 4px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.nav-section-spaced{margin-top:8px;padding-top:16px;border-top:1px solid #e2e6ed}.nav-item{display:flex;align-items:center;gap:10px;min-height:42px;padding:9px 12px;border-radius:7px;color:#6b7789;text-decoration:none;font-size:13px;font-weight:600;transition:background .15s ease,color .15s ease}.nav-item.active,.nav-item:hover{background:#9bc4131f;color:#6a8e0a}.nav-item svg{flex:0 0 auto}.sidebar-footer{margin-top:auto}.sidebar-user-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border-radius:8px;background:#ffffffb8;border:1px solid rgba(255,255,255,.62)}.sidebar-user-card strong,.sidebar-user-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:grid;width:36px;height:36px;place-items:center;border-radius:8px;background:var(--propel);color:var(--ink);font-weight:850;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.small{width:34px;height:34px;font-size:.82rem}.avatar.large{width:80px;height:80px;font-size:1.35rem}.nav-rail .sidebar{align-items:center;padding-inline:10px}.nav-rail .brand-wordmark,.nav-rail .nav-label,.nav-rail .nav-section-label,.nav-rail .sidebar-footer{display:none}.nav-rail .main-nav{width:100%}.nav-rail .nav-item{justify-content:center;padding:0}.main-pane{min-width:0;background:#f5f7f1}.app-footer{display:flex;flex-wrap:wrap;align-items:center;align-content:center;justify-content:space-between;column-gap:16px;min-height:36px;padding:0 24px;border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:.82rem;line-height:1.2}.app-footer-version{margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;min-height:64px;padding:0;border-bottom:1px solid var(--primary-border);background:var(--propel-nav)}.appbar-drawer-slot{display:flex;flex:0 0 84px;align-items:center;justify-content:center;align-self:stretch;border-right:1px solid rgba(47,51,48,.14)}.topbar-left,.topbar-actions,.heading-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.topbar-left{flex:1 1 auto;padding-left:12px}.topbar-actions{margin-left:auto;padding-right:24px}.rail-toggle,.topbar-icon-button,.profile-avatar-btn{display:inline-grid;width:38px;height:38px;place-items:center;border:1px solid rgba(47,51,48,.14);border-radius:8px;background:#ffffffa8;color:var(--ink)}.profile-avatar-btn{width:40px;height:40px;padding:2px}.topbar-logo{display:inline-flex;align-items:center;height:44px;padding:0 3px;line-height:0;text-decoration:none}.topbar-logo .propel-logo-lockup{--propel-logo-scale: .68}.propel-logo-lockup{--propel-logo-scale: 1;display:inline-flex;align-items:center;gap:calc(18px * var(--propel-logo-scale));line-height:0}.propel-logo-mark{display:block;flex:0 0 auto;width:calc(64px * var(--propel-logo-scale));height:calc(56px * var(--propel-logo-scale))}.propel-logo-wordmark{display:flex;min-width:0;flex-direction:column;gap:calc(6px * var(--propel-logo-scale))}.propel-logo-text{display:block;color:inherit;font-family:Manrope,Space Grotesk,sans-serif;font-size:calc(40px * var(--propel-logo-scale));font-weight:700;letter-spacing:0;line-height:1}.propel-logo-pulse{display:block;width:calc(140px * var(--propel-logo-scale));height:calc(6px * var(--propel-logo-scale))}.profile-menu{position:relative}.profile-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:50;width:360px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 16px 36px #2f333029;overflow:hidden}.profile-popover-body{padding:22px 28px 0}.profile-popover-body h2{margin-bottom:16px;font-size:1.15rem;font-weight:800}.profile-popover-header{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;align-items:center;padding-bottom:22px}.profile-popover-header strong,.profile-popover-header span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-popover-header span{margin-top:3px;color:var(--muted);font-size:.86rem}.profile-email{display:flex!important;align-items:center;gap:7px}.profile-email svg{flex:0 0 auto}.profile-popover-footer{padding:18px 28px 24px;border-top:1px solid var(--line);text-align:center}.profile-menu-action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;border:1px solid var(--primary-border);border-radius:8px;background:#fff;color:var(--ink);padding:0 16px;font-weight:800}.profile-menu-action:hover{background:#f5f8eb}.login-page{align-items:center;background-image:url(/napier-port-auth-bg.jpg);background-position:center top;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:100vh;padding:24px 24px 15vh}.login-panel{background:#000c;border:1px solid #ffffff;color:#fff;margin:auto;max-width:700px;min-height:350px;padding:30px 60px;width:100%}.login-logo{--propel-logo-scale: 1.03;display:flex;margin:0 auto 20px;max-width:100%;width:fit-content}.terms-row{display:grid;justify-content:center;padding-left:20px;padding-right:15px}.terms-control{align-items:center;color:#fff;display:flex;gap:6px;justify-content:center}.terms-control .MuiCheckbox-root{align-self:center;padding:0}.terms-control .MuiTypography-root{color:#fff;line-height:1.4;text-align:center}.login-panel a,.login-panel .MuiLink-root{color:var(--propel);font-weight:600}.login-actions .MuiButton-root{margin-bottom:15px;margin-top:10px;max-width:300px;min-width:100px}.login-actions .MuiButton-contained{background:var(--propel);color:var(--ink);font-weight:700;text-transform:none}.login-actions .MuiButton-contained:hover{background:#d4eb45}.login-actions .MuiButton-contained.Mui-disabled{background:#bed62f59;color:#ffffff94}.terms-content{color:var(--muted)}.terms-content h6{margin-bottom:8px}.terms-content ol,.terms-content ul{margin-bottom:0;margin-top:8px;padding-left:24px}.terms-content li{font-size:.875rem;line-height:1.55;margin-bottom:12px}.auth-status,.user-pill,.hold-pill,.integrity-note,.source-badge,.status-pill{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border-radius:8px;font-size:.82rem;font-weight:800;white-space:nowrap}.auth-status,.user-pill{background:#f5f8eb;color:var(--ink)}.page-access-denied{display:grid;place-items:center;align-content:center;gap:8px;width:100%;min-height:min(420px,100%);padding:32px;color:#6b7789;text-align:center}.page-access-denied strong{color:#1a2332;font-size:18px;font-weight:850}.page-access-denied span{max-width:420px;font-size:13px;line-height:1.5}.hold-pill,.integrity-note,.source-badge.local,.status-pill.booked{background:#ecf7d1;color:#50610f}.status-pill.reserved{background:#f3f6e5;color:#596a00}.source-badge.n4{background:#edf1f5;color:var(--steel)}.status-pill.canceled{background:#f5e7e4;color:var(--danger)}.page-stack,.appointments-page{display:grid;gap:18px}.appointments-page{grid-template-columns:minmax(0,1fr) minmax(320px,25%);align-items:start}.appointments-page>.page-heading{grid-column:1 / -1}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.eyebrow{margin:0 0 4px;color:var(--teal);font-size:.78rem;font-weight:850;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:2rem;letter-spacing:0}h2{margin-bottom:0;font-size:1rem;letter-spacing:0}.icon-text-button,.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 13px;font-weight:800}.icon-text-button.primary{border-color:#b9cc3e;background:var(--propel);color:var(--ink)}.icon-text-button.secondary{border-color:#ffffff2e;background:#596a00;color:#fff}.topbar .icon-text-button.primary{border-color:#2f333024;background:#ffffffb8}.full-width{width:100%}.text-button{border:0;background:transparent;color:var(--teal)}.stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.stat-card,.work-surface,.bookings-panel,.slot-board,.bulk-panel,.appointment-form-panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 8px 24px #1720180d}.stat-card{display:flex;align-items:center;gap:14px;min-height:92px;padding:16px}.stat-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:#ecf7d1;color:#50610f}.stat-value{font-size:1.45rem;font-weight:850}.stat-label,.section-header p,.form-message,.empty-workbench p,.empty-form-state span,.appointment-context span{color:var(--muted)}.work-surface,.bookings-panel,.slot-board,.bulk-panel,.appointment-form-panel{padding:16px}.booking-concept-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,26%);gap:18px;align-items:start}.customer-bookings-panel{min-width:0}.customer-bookings-primary{min-height:560px}.availability-panel{position:sticky;top:88px;min-width:0;max-height:calc(100vh - 112px);overflow-y:auto}.gate-slot-workbench{min-width:0}.concept-slot-grid{display:grid;grid-template-columns:72px repeat(3,minmax(130px,1fr));border:1px solid var(--line);border-radius:8px;background:#fff;overflow:auto}.concept-grid-heading,.concept-zone-cell,.concept-slot-cell{min-height:54px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.concept-grid-heading:nth-child(4),.concept-grid-row .concept-slot-cell:last-child{border-right:0}.concept-grid-heading{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:7px;background:#f7faef;color:#4d584f;padding:0 12px;font-size:.78rem;font-weight:850;text-transform:uppercase}.concept-grid-heading.gate{justify-content:center;text-transform:none;font-size:.88rem}.concept-grid-row{display:contents}.concept-zone-cell{display:grid;place-items:center;background:#fbfcf6;color:var(--teal);font-weight:850}.concept-slot-cell{display:grid;align-content:center;justify-items:center;gap:3px;border-top:0;border-left:0;background:#fff;color:var(--ink)}.concept-slot-cell strong{font-size:1.15rem}.concept-slot-cell span{color:var(--muted);font-size:.74rem;font-weight:800}.concept-slot-cell:not(:disabled):hover,.concept-slot-cell.selected{background:#f6fae9;box-shadow:inset 0 0 0 2px var(--propel-dark)}.concept-slot-cell:disabled{background:#f2f4ef;color:#9aa39b}.booking-lock-grid,.booking-contract-grid{display:grid;gap:10px}.booking-lock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-lock-grid>div,.booking-contract-grid>div{display:grid;gap:4px;min-width:0;padding:11px;border:1px solid var(--line);border-radius:8px;background:#f8faf4}.booking-lock-grid span,.booking-contract-grid span{color:var(--muted);font-size:.8rem}.booking-lock-grid strong,.booking-contract-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-contract-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-contract-grid svg{color:var(--teal)}.concept-booking-form{display:grid;gap:12px}.container-appointment-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:10px;overflow-x:auto}.container-tab{display:inline-flex;align-items:center;gap:8px;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);padding:0 14px;font-weight:850;white-space:nowrap}.container-tab.active{border-color:var(--propel-dark);background:#f2f8d7;color:#50610f}.container-tab span{display:inline-grid;min-width:22px;height:22px;place-items:center;border-radius:999px;background:var(--propel);color:var(--ink);font-size:.75rem}.container-design-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,28%);gap:18px;align-items:start}.schedule-panel{min-width:0}.gate-tabs{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto}.gate-tab{position:relative;display:grid;gap:2px;min-width:160px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:10px 38px 10px 12px;text-align:left}.gate-tab.active{border-color:var(--propel-dark);background:#f6fae9;box-shadow:inset 0 -3px 0 var(--propel-dark)}.gate-tab span{color:var(--muted);font-size:.74rem}.gate-tab em{position:absolute;top:10px;right:10px;display:inline-grid;min-width:24px;height:24px;place-items:center;border-radius:999px;background:#edf3e7;color:var(--teal);font-style:normal;font-weight:850}.slot-schedule-scroll{overflow-x:auto;padding-bottom:6px}.design-slot-grid{display:grid;grid-template-columns:120px repeat(17,minmax(58px,1fr));min-width:1120px;gap:4px}.design-grid-corner,.design-time-header,.design-gate-label,.design-slot-cell{min-height:52px;border:1px solid var(--line);border-radius:8px}.design-grid-corner,.design-time-header{display:grid;place-items:center;background:#f7faef;color:#4d584f;font-size:.74rem;font-weight:850;text-transform:uppercase}.design-gate-label{display:grid;align-content:center;gap:2px;background:#fbfcf6;padding:8px 10px}.design-gate-label span{color:var(--muted);font-size:.72rem}.design-slot-cell{display:grid;align-content:center;justify-items:center;gap:2px;background:#fff;color:var(--ink)}.design-slot-cell strong{font-size:1.05rem}.design-slot-cell span{color:var(--muted);font-size:.72rem;font-weight:800}.design-slot-cell.empty{background:#fff}.design-slot-cell.partial{border-color:#9bc4136b;background:#9bc4131c}.design-slot-cell.busy{border-color:#b97b165c;background:#f5ad3e1f}.design-slot-cell.full,.design-slot-cell.closed{background:#f2f4ef;color:#9aa39b}.design-slot-cell:not(:disabled):hover,.range-slot:not(:disabled):hover{border-color:var(--propel-dark);box-shadow:inset 0 0 0 1px var(--propel-dark)}.slot-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px;color:var(--muted);font-size:.82rem;font-weight:750}.slot-legend span{display:inline-flex;align-items:center;gap:6px}.slot-legend i{display:inline-block;width:14px;height:14px;border:1px solid var(--line);border-radius:4px}.slot-legend i.partial{border-color:#9bc4136b;background:#9bc4131c}.slot-legend i.busy{border-color:#b97b165c;background:#f5ad3e1f}.slot-legend i.full{background:#f2f4ef}.design-side-panel{position:sticky;top:88px;min-width:0}.mini-upcoming-list{display:grid;gap:8px;margin-top:16px}.mini-booking-card{display:grid;gap:3px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px}.mini-booking-card span,.mini-booking-card em{color:var(--muted);font-size:.8rem;font-style:normal}.range-controls,.slot-management-tools{display:inline-flex;align-items:center;gap:10px}.range-controls select,.slot-management-tools select,.booking-filter-bar select{width:auto;min-width:130px}.range-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}.range-table{width:100%;min-width:900px;border-collapse:collapse;background:#fff}.range-table th,.range-table td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:7px;text-align:center}.range-table thead th{position:sticky;top:0;z-index:1;background:#f7faef;color:#4d584f;font-size:.78rem;text-transform:uppercase}.range-table tbody th{position:sticky;left:0;z-index:1;display:grid;gap:2px;background:#fbfcf6;text-align:left}.range-table tbody th span{color:var(--muted);font-size:.74rem}.range-slot{display:inline-grid;width:100%;min-width:58px;min-height:34px;place-items:center;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font-weight:850}.range-slot.partial{border-color:#9bc4136b;background:#9bc4131c}.range-slot.busy{border-color:#b97b165c;background:#f5ad3e1f}.range-slot.full,.range-slot.closed{background:#f2f4ef;color:#9aa39b}.booking-filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,auto)) repeat(2,minmax(190px,auto));gap:10px;margin-bottom:14px}.booking-grid-large{height:min(660px,calc(100vh - 340px))}.booking-reference-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-grid-actions{display:inline-flex;gap:4px}.booking-grid-actions button{display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.gate-config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gate-config-card{display:grid;gap:14px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px}.gate-config-card-header{display:flex;align-items:center;gap:8px;font-size:1rem}.gate-config-checks{display:flex;flex-wrap:wrap;gap:12px}.slot-management-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.slot-management-cell{display:grid;gap:7px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px}.slot-management-cell input{text-align:center;font-weight:850}.slot-management-cell em{color:var(--muted);font-size:.74rem;font-style:normal}.material-date-field{min-width:220px!important}.material-date-field label{display:block;gap:0}.material-date-field input{min-height:auto;border:0;border-radius:0;padding:8.5px 14px}.material-date-field .MuiOutlinedInput-root{min-height:38px;border-radius:8px;background:#fff}.material-grid-wrap{height:min(620px,calc(100vh - 260px));min-height:430px}.material-grid-wrap .MuiDataGrid-root{border:1px solid var(--line);border-radius:8px;color:var(--ink);font-family:inherit}.material-grid-wrap .MuiDataGrid-columnHeaders{background:#f1f5eb;color:#4d584f;font-weight:850}.material-grid-wrap .MuiDataGrid-cell{align-items:center}.material-grid-wrap .MuiDataGrid-footerContainer{border-top-color:var(--line)}.material-grid-reference{display:grid;min-width:0;line-height:1.1}.material-grid-reference span{color:var(--muted);font-size:.72rem;font-weight:750}.material-grid-reference strong{overflow:hidden;text-overflow:ellipsis}.availability-panel .section-header{align-items:flex-start;flex-direction:column}.bulk-booking-card{display:grid;gap:12px;margin-bottom:14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8faf4}.bulk-booking-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bulk-booking-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.bulk-booking-actions>span{color:var(--muted);font-size:.82rem;font-weight:800}.bulk-booking-actions .icon-text-button{flex:0 0 auto}.icon-text-button:disabled{opacity:.58}.availability-panel .concept-slot-grid{grid-template-columns:58px repeat(3,minmax(72px,1fr))}.availability-panel .concept-grid-heading{min-height:46px;padding:0 8px;font-size:.72rem}.availability-panel .concept-grid-heading.gate{gap:4px;font-size:.78rem}.availability-panel .concept-grid-heading.gate svg{display:none}.availability-panel .concept-zone-cell,.availability-panel .concept-slot-cell{min-height:48px}.availability-panel .concept-slot-cell strong{font-size:1rem}.booking-page-message{margin-top:12px}.container-booking-modal{width:min(920px,calc(100vw - 24px))}.container-booking-context{grid-template-columns:repeat(4,minmax(0,1fr))}.concept-modal-section{display:grid;gap:12px}.design-booking-modal{width:min(1080px,calc(100vw - 24px))}.design-modal-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:14px 18px;border-bottom:1px solid var(--line);background:#f8faf4}.design-step{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border-radius:8px;color:var(--muted);font-size:.82rem;font-weight:850}.design-step span{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid var(--line);border-radius:999px;background:#fff}.design-step.active{color:#50610f;background:#f2f8d7}.design-step.done{color:#50610f}.design-step.done span,.design-step.active span{border-color:var(--propel-dark);background:var(--propel);color:var(--ink)}.design-modal-body{min-height:460px}.design-step-panel{display:grid;gap:14px}.truck-lookup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.lookup-message{padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8faf4}.field-error{color:var(--danger);font-size:.78rem;font-style:normal;font-weight:800}.design-load-options{grid-template-columns:repeat(5,minmax(0,1fr))}.design-load-options .truck-load-option{display:grid;gap:3px;align-content:center}.design-load-options .truck-load-option span:last-child{color:var(--muted);font-size:.7rem;font-weight:750}.design-truck-preview{min-height:220px}.concept-truck-visual{display:flex;align-items:end;min-width:720px;padding:16px 8px}.concept-truck-cab{position:relative;flex:0 0 130px;width:130px;height:126px;border-radius:12px 18px 10px 10px;background:var(--propel-base);box-shadow:inset -10px 0 #50610f24}.concept-truck-window{position:absolute;left:20px;top:16px;width:70px;height:34px;border-radius:6px;background:#ffffff75}.concept-truck-grille{position:absolute;left:18px;top:66px;width:84px;height:18px;border-radius:5px;background:#2f333033}.concept-truck-wheel,.concept-trailer-wheels span{position:absolute;width:34px;height:34px;border-radius:999px;background:radial-gradient(circle at center,#fff 0 18%,#c6c8c4 19% 34%,#5b5e5b 35% 57%,#202320 58% 100%);box-shadow:0 4px 8px #1f231f3d}.concept-truck-wheel.front{left:14px;bottom:-16px}.concept-truck-wheel.rear{right:12px;bottom:-16px}.concept-truck-trailers{display:flex;align-items:end;gap:18px;padding-left:18px}.concept-trailer{position:relative;width:240px;padding-bottom:32px}.concept-trailer-deck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;height:112px;border:1px solid #b8bec8;border-radius:8px;background:#dde0e6;padding:8px}.concept-position{display:grid;place-items:center;border:1px solid #c0c6d2;border-radius:6px;background:#fff;color:var(--ink);font-weight:850}.concept-position.active{border-color:var(--propel-dark);background:#9bc4132e;color:#50610f}.concept-position.inactive{opacity:.3}.concept-position strong{font-size:1.1rem}.concept-position span{color:inherit;font-size:.72rem}.concept-trailer-frame{height:10px;margin-top:5px;border-radius:999px;background:#9aa0ac}.concept-trailer-wheels span{bottom:0}.concept-trailer-wheels span:first-child{left:46px}.concept-trailer-wheels span:last-child{right:46px}.design-container-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.container-detail-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:#f8faf4;padding:12px}.container-detail-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.container-detail-card-header span{border-radius:999px;background:#ecf7d1;color:#50610f;padding:3px 9px;font-size:.75rem;font-weight:850}.booking-confirm-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid var(--line);border-radius:8px;background:#f8faf4;padding:14px}.booking-confirm-card>div{display:grid;gap:3px}.booking-confirm-card span{color:var(--muted);font-size:.8rem;font-weight:750}.booking-confirm-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-detail-list{grid-column:1 / -1;border-top:1px solid var(--line);padding-top:10px}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.timeline-list{display:grid;gap:10px}.timeline-row{display:grid;grid-template-columns:70px 160px 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.timeline-row:first-child{border-top:0}.timeline-row span{color:var(--teal);font-weight:800}.timeline-row em{color:var(--muted);font-style:normal}.empty-workbench{display:grid;min-height:320px;align-content:center;justify-items:center;text-align:center}.empty-workbench svg{color:var(--teal);margin-bottom:12px}.appointments-workspace{grid-column:1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start;min-width:0}.bookings-panel{min-width:0}.booking-side-stack{display:grid;gap:16px}.availability-side-stack{grid-column:2;grid-row:2;position:sticky;top:88px;display:grid;gap:16px;min-width:0;max-height:calc(100vh - 112px);overflow-y:auto;align-content:start}.availability-side-stack .inline-fields.two{grid-template-columns:1fr}.availability-side-stack textarea{min-height:92px}.booking-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.search-control,.date-control,label{display:grid;gap:6px}.search-control,.date-control{display:flex;align-items:center;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 10px}.search-control{flex:1 1 260px}.search-control input,.date-control input{min-height:34px;border:0;padding:0}.check-control{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.check-control input{width:16px;min-height:16px}.booking-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}.booking-table{width:100%;min-width:940px;border-collapse:collapse;background:#fff}.booking-table th,.booking-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:.88rem}.booking-table th{position:sticky;top:0;z-index:1;background:#f1f5eb;color:#4d584f;font-size:.76rem;font-weight:850;text-transform:uppercase}.booking-table tr:last-child td{border-bottom:0}.booking-table .is-canceled{color:#909a91}.table-stack{display:grid;gap:2px}.row-actions{display:flex;justify-content:flex-end;gap:4px}.row-actions button{display:inline-grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.row-actions button:disabled{opacity:.45}.bulk-form,.appointment-form{display:grid;gap:12px}.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.capability-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.capability{display:inline-flex;align-items:center;justify-content:center;min-height:26px;border-radius:6px;background:#f0f2ed;color:#8a938b;font-size:.72rem;font-weight:800}.capability.on{background:#ecf7d1;color:#50610f}.zone-board{display:flex;flex-direction:column;min-width:0;min-height:320px;max-height:520px;overflow:hidden}.availability-table-wrap{flex:1 1 auto;min-height:0;overflow:auto;border:1px solid var(--line);border-radius:8px}.availability-table{width:100%;min-width:360px;table-layout:fixed;border-collapse:separate;border-spacing:0;background:#fff}.availability-table th,.availability-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px;text-align:left;vertical-align:top}.availability-table th:last-child,.availability-table td:last-child{border-right:0}.availability-table tr:last-child th,.availability-table tr:last-child td{border-bottom:0}.availability-table thead th{position:sticky;top:0;z-index:1;background:#f7faef}.zone-heading,.zone-row-heading{position:sticky;left:0;z-index:2;width:58px;min-width:58px;color:var(--teal);font-weight:850}.zone-heading{z-index:3!important}.zone-row-heading{background:#fbfcf6;vertical-align:middle!important}.selected-gate-heading{box-shadow:inset 0 3px 0 var(--propel-dark)}.gate-column-heading{display:flex;align-items:center;justify-content:center;width:100%;min-height:28px;border:0;background:transparent;color:var(--ink);padding:0;text-align:center;font-size:.8rem;font-weight:850}.availability-cell{display:grid;place-items:center;width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:5px;text-align:center}.availability-cell:not(:disabled):hover,.availability-cell.selected{border-color:var(--propel-dark);box-shadow:inset 0 0 0 1px var(--propel-dark)}.availability-cell:disabled{background:#f3f4ef;opacity:.64}.availability-cell-main{display:inline-flex;align-items:baseline;gap:5px}.availability-cell-main strong{font-size:1.1rem}.availability-cell-main span{color:var(--muted);font-size:.78rem}.unavailable-slot-cell{color:var(--muted);text-align:center!important;vertical-align:middle!important;background:#fbfcf6}label span{color:var(--muted);font-size:.78rem;font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 10px}input,select{min-height:38px}textarea{min-height:112px;padding:10px;resize:vertical;line-height:1.45}input[readonly]{background:#f4f6ef;color:var(--muted)}.inline-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.inline-fields.two,.appointment-form .inline-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.appointment-context>div{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8faf4}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;border-radius:8px;background:#edf3e7}.segment{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:800}.segment.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px #17201814}.truck-load-row{display:grid;grid-template-columns:1fr;gap:12px}.truck-load-preview,.truck-load-option{border:1px solid var(--line);border-radius:8px;background:#fff}.truck-load-preview{display:grid;align-content:center;justify-items:stretch;min-height:360px;overflow-x:auto;padding:12px}.truck-load-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.truck-load-option{min-height:44px;padding:8px;color:var(--ink);font-weight:850;text-align:center}.truck-load-option.active{border-color:var(--propel-dark);box-shadow:inset 0 0 0 1px var(--propel-dark)}.truck-load-option span:last-child{font-size:.75rem}.truck-load-visual{width:100%;max-width:none;margin:0 auto}.truck-visual-canvas{display:grid;grid-template-columns:176px minmax(0,1fr);align-items:end;gap:8px;min-height:304px;padding:14px 12px 18px;background:#fff}.truck-visual-cab{position:relative;height:218px}.truck-visual-cab-svg{position:absolute;left:0;bottom:36px;width:176px;height:162px;overflow:visible}.truck-visual-cab-wheel{position:absolute;bottom:0;width:42px;height:42px;border-radius:999px;background:radial-gradient(circle at center,#fff 0 18%,#b7c734 19% 34%,#4d504d 35% 57%,#202320 58% 100%);box-shadow:0 4px 8px #1f231f3d}.truck-visual-cab-wheel.front{left:35px}.truck-visual-cab-wheel.rear{right:17px}.truck-visual-trailer{position:relative;min-width:0;padding-bottom:46px}.truck-visual-deck{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:198px;align-items:stretch;margin-bottom:14px}.truck-container-form{display:grid;align-content:start;gap:8px;min-width:0;min-height:198px;padding:10px;background:#82837f;color:#fff}.truck-container-form-header{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#fff}.truck-container-form-header span{color:#fff;font-size:.76rem;font-weight:850}.truck-container-form label{min-width:0}.truck-container-form label span{color:#fff;font-size:.72rem}.truck-container-form input,.truck-container-form select{min-height:34px;border-color:#ffffffb8;background:#fff}.truck-visual-frame{height:18px;background:#82837f}.truck-visual-wheels{position:absolute;bottom:0;display:inline-flex;gap:10px}.truck-visual-wheels.left{left:96px}.truck-visual-wheels.right{right:30px}.truck-visual-wheels:before{content:"";position:absolute;left:-8px;right:-8px;top:18px;height:5px;border-radius:999px;background:#5f625f}.truck-visual-wheels span{position:relative;width:42px;height:42px;border:0;border-radius:999px;background:radial-gradient(circle at center,#f9faf7 0 17%,#c6c8c4 18% 32%,#5b5e5b 33% 56%,#202320 57% 100%);box-shadow:0 4px 8px #1f231f42}.truck-visual-wheels span:after{content:"";position:absolute;inset:13px;border:2px solid #9da09b;border-radius:inherit;background:#fff}.form-message{min-height:22px;font-weight:750}.modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:12px;background:#2f33306b}.appointment-modal{width:min(1520px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 24px 60px #2f333047}.modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 18px 14px;border-bottom:1px solid var(--line);background:#fff}.modal-header p{margin-bottom:0;color:var(--muted)}.modal-header-actions{display:inline-flex;align-items:center;gap:8px}.modal-appointment-form{padding:18px}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px}.empty-form-state{display:grid;min-height:220px;align-content:center;justify-items:center;gap:8px;text-align:center}.empty-form-state svg{color:var(--teal)}@media(max-width:1240px){.appointments-workspace,.booking-concept-layout{grid-template-columns:1fr}.availability-panel{position:static;max-height:none;overflow:visible}.material-grid-wrap{height:520px}.booking-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.appointments-page{grid-template-columns:1fr}.appointments-page>.page-heading,.appointments-page>.availability-side-stack,.appointments-page>.appointments-workspace{grid-column:1;grid-row:auto}.availability-side-stack{position:static;max-height:none;overflow:visible}.zone-board{max-height:560px}.availability-table-wrap{max-height:420px}.stat-grid,.booking-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.material-grid-wrap{height:480px}.container-booking-context{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.app-frame,.app-frame.nav-rail,.shell-body,.app-frame.nav-rail .shell-body{grid-template-columns:1fr}.appbar-drawer-slot{display:none}.topbar-left{padding-left:0}.topbar-actions{padding-right:0}.sidebar{position:sticky;z-index:30;flex-direction:row;align-items:center;height:auto;padding:10px 12px;overflow-x:auto}.brand-wordmark,.nav-section-label,.sidebar-footer{display:none}.brand-mark{flex-basis:40px;width:40px;height:40px}.main-nav{display:flex;width:max-content}.nav-item{justify-content:center;width:44px;padding:0}.nav-label,.rail-toggle{display:none}.topbar{padding-left:16px;padding-right:16px}.timeline-row{grid-template-columns:58px 1fr}.timeline-row em{grid-column:2}}@media(max-width:640px){h1{font-size:1.65rem}.page-heading,.topbar,.booking-toolbar{align-items:flex-start;flex-direction:column}.heading-tools,.topbar-left,.topbar-actions,.booking-toolbar,.profile-menu,.search-control,.date-control,.icon-text-button{width:100%}.profile-menu{display:flex;justify-content:flex-end}.topbar-logo{display:none}.stat-grid,.booking-side-stack,.booking-contract-grid,.inline-fields,.inline-fields.two,.appointment-form .inline-fields,.appointment-context,.truck-load-row,.booking-lock-grid{grid-template-columns:1fr}.material-date-field{width:100%!important}.bulk-booking-fields{grid-template-columns:1fr}.bulk-booking-actions{align-items:stretch;flex-direction:column}.concept-slot-grid{grid-template-columns:64px repeat(3,minmax(96px,1fr))}.truck-load-options{grid-template-columns:repeat(2,minmax(0,1fr))}.truck-visual-canvas{grid-template-columns:1fr}.truck-visual-cab{display:none}.truck-visual-deck{grid-template-columns:1fr}.truck-container-form{grid-column:auto!important}.profile-popover{left:0;right:auto;width:min(320px,calc(100vw - 32px))}.login-panel{padding:24px}.login-logo{--propel-logo-scale: .86}}.import-advice-root{display:flex;height:100%;min-height:0;overflow:hidden;background:#f4f5f7;color:#1a2332}.import-advice-sidebar{display:flex;flex-shrink:0;flex-direction:column;gap:14px;overflow:hidden;padding:12px 8px;border-right:1px solid #e2e6ed;background:#fff;transition:width .18s ease}.import-advice-sidebar nav{display:flex;flex-direction:column;gap:2px}.import-advice-nav-section{padding:8px 10px 4px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.import-advice-nav-item{display:flex;align-items:center;gap:10px;min-height:42px;padding:9px 12px;border-radius:7px;color:#6b7789;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s ease,color .15s ease}.import-advice-sidebar.rail .import-advice-nav-item{justify-content:center;padding-inline:0}.import-advice-nav-item.active,.import-advice-nav-item:hover{background:#9bc4131f;color:#6a8e0a}.import-advice-nav-item strong{margin-left:auto;padding:1px 7px;border-radius:10px;background:#9bc413;color:#fff;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.ia-stats-box{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding:12px 14px;border:1px solid #e2e6ed;border-radius:8px;background:#f8f9fb}.ia-stats-box div{display:flex;align-items:center;justify-content:space-between;gap:12px}.ia-stats-box span{color:#8a96a8;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.ia-stats-box strong{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px}.ia-stats-box .success{color:#6a8e0a}.ia-stats-box .warning{color:#b45309}.ia-stats-box .info{color:#2563eb}.import-advice-main{display:flex;flex:1;min-width:0;min-height:0;flex-direction:column;overflow:hidden}.ia-vessels-strip{display:flex;align-items:stretch;flex-shrink:0;gap:0;overflow:hidden;padding:5px 20px;border-bottom:1px solid #e2e6ed;background:#fff}.ia-vessels-track{display:flex;flex:1 1 auto;gap:10px;margin:0 10px;min-width:0;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none}.ia-vessels-track::-webkit-scrollbar{display:none}.ia-vessel-chevron{display:inline-flex;flex:0 0 35px;align-items:center;justify-content:center;min-height:40px;border:1px solid #d7dfc8;border-radius:0;background:#fff;color:#3f5206;cursor:pointer}.ia-vessel-chevron:disabled{opacity:.15;cursor:default}.ia-vessel-chevron:not(:disabled):hover{background:#f5f8ec}.ia-vessels-strip.all-visible .ia-vessel-chevron{display:none}.ia-vessels-strip.all-visible .ia-vessels-track{margin-inline:0}.ia-vessel-card{display:flex;flex:0 0 330px;align-items:center;gap:8px;min-height:40px;padding:5px 10px;border:1px solid rgba(106,142,10,.28);border-radius:2px;background:#e8f2c6;color:#000000de;-webkit-user-select:none;user-select:none}.ia-vessel-icon,.ia-vessel-lock{flex:0 0 auto;color:#3f5206}.ia-vessel-copy{min-width:0;flex:1 1 auto}.ia-vessel-copy h2{margin:0;color:#000000de;font-size:12px;font-weight:700;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-vessel-copy span{display:block;color:#000000b3;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-toolbar{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px 10px;border-bottom:1px solid #e2e6ed;background:#fff}.ia-toolbar h1{margin:0 0 2px;color:#1a2332;font-size:20px;font-weight:800}.ia-toolbar p{margin:0;color:#8a96a8;font-size:13px}.ia-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ia-operational-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:14px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.ia-operational-pill span{width:6px;height:6px;border-radius:999px}.ia-operational-pill.open{border:1px solid rgba(155,196,19,.35);background:#9bc4131f;color:#6a8e0a}.ia-operational-pill.open span{background:#9bc413}.ia-operational-pill.closed{border:1px solid rgba(220,38,38,.25);background:#dc262614;color:#dc2626}.ia-operational-pill.closed span{background:#dc2626}.ia-ghost-button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 14px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789;font-size:12px;font-weight:700}.ia-ghost-button:hover:not(:disabled){border-color:#9bc413;color:#6a8e0a}.ia-bulk-bar{display:flex;flex-shrink:0;align-items:flex-start;gap:10px;padding:10px 20px;border-bottom:1px solid #e2e6ed;background:#fff;flex-wrap:nowrap}.ia-bulk-entry{flex:1 1 420px;min-width:320px}.ia-bulk-entry label,.ia-search-box label,.ia-filter-controls label{display:block;margin-bottom:4px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.ia-bulk-entry>div{display:flex;gap:8px}.ia-bulk-entry textarea{flex:1;min-height:34px;max-height:34px;padding:8px 10px;resize:vertical;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;line-height:1.4;text-transform:uppercase}.ia-bulk-entry button,.ia-set-panel-footer .primary{min-height:34px;padding:0 15px;border:none;border-radius:6px;background:#9bc413;color:#fff;font-size:13px;font-weight:800;white-space:nowrap}.ia-bulk-entry button:disabled{opacity:.5}.ia-search-box{flex:0 0 250px;min-width:220px}.ia-search-box>div{position:relative}.ia-search-box input{width:100%;min-height:34px;padding:8px 34px 8px 10px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:13px}.ia-filter-controls{flex:0 0 372px;min-width:340px}.ia-filter-controls>div{display:flex;gap:6px}.ia-filter-controls select{width:auto;min-width:104px;min-height:34px;padding:5px 8px;border:1px solid #d8dce4;border-radius:5px;background:#fff;color:#1a2332;font-size:12px;line-height:1.2}.ia-search-box button{position:absolute;top:50%;right:8px;display:grid;width:24px;height:24px;place-items:center;transform:translateY(-50%);border:none;background:transparent;color:#8a96a8}.ia-error,.ia-warning{margin:6px 0 0;padding:6px 10px;border-radius:5px;font-size:12px}.ia-error{border:1px solid rgba(220,38,38,.2);background:#dc26260f;color:#dc2626}.ia-warning{border:1px solid rgba(230,130,20,.25);background:#e682140f;color:#b45309}.ia-load-error{margin:12px 28px 0}.ia-section-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:14px 28px;border-bottom:1px solid #e2e6ed;background:#fff}.ia-section-header div{display:flex;align-items:center;gap:9px}.ia-section-header strong{color:#1a2332;font-size:14px}.ia-section-header span{padding:2px 8px;border-radius:3px;background:#9bc41326;color:#6a8e0a;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.ia-section-header p{margin:0;color:#8a96a8;font-size:11px}.ia-section-header p strong{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.ia-body{display:flex;flex:1;min-height:0;overflow:hidden}.ia-list-wrap{display:flex;flex:1;min-width:0;min-height:0;flex-direction:column;background:#fff}.ia-filter-bar{display:flex;flex-shrink:0;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid #e2e6ed;background:#f8f9fb;flex-wrap:wrap}.ia-filter-bar>span:first-child{margin-right:4px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.ia-filter-bar select{width:auto;min-width:104px;min-height:30px;padding:5px 8px;border:1px solid #d8dce4;border-radius:5px;background:#fff;color:#1a2332;font-size:12px;line-height:1.2}.ia-filter-bar .ia-result-count{margin-left:auto;color:#8a96a8;font-size:11px}.ia-table-scroll{flex:1;min-height:0;overflow:auto}.ia-container-table{width:100%;min-width:1180px;border-collapse:collapse;font-size:13px}.ia-container-table th{position:sticky;top:0;z-index:2;padding:10px;border-bottom:1px solid #e2e6ed;background:#fff;color:#6b7789;font-size:11px;font-weight:800;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap}.ia-container-table td{padding:10px;border-bottom:1px solid #f0f1f3;color:#1a2332;vertical-align:middle}.ia-container-table tbody tr:hover{background:#f8f9fb}.ia-container-table tbody tr.selected{background:#9bc4130f}.ia-container-table input[type=checkbox]{width:13px;height:13px;min-height:0;margin:0;padding:0;accent-color:#9bc413}.ia-select-col{width:42px}.ia-status-col{width:48px}.ia-group-col{width:250px}.ia-holds-col{width:150px}.ia-reefer-col,.ia-reefer-cell{width:76px;text-align:center}.ia-reefer-col .ia-th-button{justify-content:center;width:100%}.ia-reefer-cell input[type=checkbox]{display:block;margin:0 auto}.ia-th-button{display:inline-flex;align-items:center;gap:5px;padding:0;border:none;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit}.ia-th-button span{color:#9bc413;font-size:9px}.ia-status-cell{text-align:center}.ia-status-icon{display:inline-flex;align-items:center;justify-content:center}.ia-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.ia-mono.strong{color:#1a2332;font-weight:800}.ia-mono.muted{color:#6b7789}.ia-mono.number{text-align:right}.ia-location-pill,.ia-block-badge{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:3px;background:#f0f1f3;color:#6b7789;font-size:11px;font-weight:700}.ia-location-pill.yard{background:#4630d814;color:#4630d8}.ia-hold-list{display:flex;gap:4px;flex-wrap:wrap}.ia-hold-list span{padding:1px 6px;border:1px solid rgba(220,38,38,.2);border-radius:3px;background:#dc262614;color:#dc2626;font-size:10px;font-weight:700}.ia-empty-mark{color:#d0d5de}.ia-empty-row{padding:40px 0!important;color:#b0b8c4!important;text-align:center}.ia-group-static{display:inline-flex;align-items:center;gap:6px;color:#6b7789;font-size:12px}.ia-group-select{position:relative;display:inline-block}.ia-group-pill{display:inline-flex;align-items:center;gap:6px;max-width:230px;padding:4px 10px;border-radius:5px;font-size:12px;font-weight:700}.ia-group-pill span:nth-child(2),.ia-group-pill span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ia-group-pill.is-set{border:1px solid #d8dce4;background:#fff;color:#1a2332}.ia-group-pill.is-empty{border:1px solid #9bc413;background:#9bc4131f;color:#6a8e0a}.ia-group-pill:hover{border-color:#9bc413;background:#9bc4130f}.ia-block-badge{min-height:16px;padding:1px 5px;background:#4630d814;color:#4630d8;font-size:9px;letter-spacing:.04em;text-transform:uppercase}.ia-group-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:250px;padding:14px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;box-shadow:0 12px 32px #0000001f}.ia-group-popover-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;min-width:460px}.ia-group-popover h3,.ia-set-panel h3{margin:0 0 7px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.ia-group-option-list,.ia-set-options{display:flex;flex-direction:column;gap:2px;max-height:250px;overflow-y:auto}.ia-group-option-list button,.ia-set-options button,.ia-remove-group button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 8px;border:none;border-radius:4px;background:transparent;color:#1a2332;font-size:12px;text-align:left}.ia-group-option-list button:hover,.ia-set-options button:hover,.ia-remove-group button:hover{background:#f4f5f7}.ia-group-option-list button.active,.ia-set-options button.active{background:#9bc41326;color:#6a8e0a;font-weight:800}.ia-group-popover-footer{margin-top:10px;padding-top:8px;border-top:1px solid #e2e6ed}.ia-group-popover-footer .danger,.ia-remove-group .danger{justify-content:center;border:1px solid #fecaca;background:#fef2f2;color:#dc2626;font-weight:800}.ia-set-panel{display:flex;order:-1;flex:0 0 420px;flex-direction:column;border-right:1px solid #e2e6ed;background:#fff;box-shadow:4px 0 16px #0000000f}.ia-set-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #e2e6ed;background:#9bc41314}.ia-set-panel-header h2{margin:0;color:#1a2332;font-size:14px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.ia-set-panel-header span{display:block;margin-top:2px;color:#6b7789;font-size:12px}.ia-set-panel-header button{display:grid;width:28px;height:28px;place-items:center;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789}.ia-set-panel-body{flex:1;min-height:0;overflow-y:auto;padding:18px 20px}.ia-set-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ia-set-options button span,.ia-remove-group button span{width:14px;height:14px;flex:0 0 14px;border:2px solid #d0d5de;border-radius:999px;background:#fff}.ia-set-options button.active span{border-color:#9bc413;background:#9bc413;box-shadow:inset 0 0 0 2px #fff}.ia-set-options button.new-block{margin-bottom:4px;padding-top:8px;border-top:1px dashed #e2e6ed;border-radius:0}.ia-remove-group{margin-top:14px;padding-top:10px;border-top:1px solid #e2e6ed}.ia-remove-group button.active span{border-color:#dc2626;background:#dc2626;box-shadow:inset 0 0 0 2px #fff}.ia-success-alert{display:flex;align-items:center;gap:8px;margin-bottom:14px;padding:9px 12px;border:1px solid rgba(155,196,19,.35);border-radius:6px;background:#9bc4131f;color:#6a8e0a;font-size:13px;font-weight:800}.ia-set-panel-footer{display:flex;flex-direction:column;gap:12px;padding:14px 20px;border-top:1px solid #e2e6ed;background:#f8f9fb}.ia-set-panel-footer label{display:flex;align-items:center;gap:8px;color:#6b7789;font-size:12px}.ia-set-panel-footer input{width:13px;height:13px;min-height:0;margin:0;padding:0;accent-color:#9bc413}.ia-set-panel-footer>div{display:flex;gap:8px}.ia-set-panel-footer button{flex:1}.ia-set-panel-footer .secondary{min-height:38px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789;font-size:13px;font-weight:800}.ia-floating-selection{position:fixed;bottom:60px;left:50%;z-index:35;display:flex;align-items:center;gap:12px;padding:10px 16px;transform:translate(-50%);border-radius:10px;background:#1a2332;color:#fff;box-shadow:0 12px 32px #00000040}.ia-floating-selection strong{padding:4px 12px;border-radius:6px;background:#9bc413;color:#fff;font-family:JetBrains Mono,ui-monospace,monospace;font-size:18px;line-height:1}.ia-floating-selection span{color:#d0d5de;font-size:13px;font-weight:700}.ia-floating-selection button{min-height:32px;padding:0 14px;border:1px solid #3a4453;border-radius:6px;background:transparent;color:#d0d5de;font-size:12px;font-weight:800}.ia-floating-selection button.primary{border-color:#9bc413;background:#9bc413;color:#fff}.ia-toast{position:fixed;right:24px;bottom:54px;z-index:50;display:flex;align-items:center;gap:8px;padding:11px 20px;border:1px solid rgba(155,196,19,.4);border-radius:8px;background:#fff;color:#6a8e0a;font-size:13px;font-weight:800;box-shadow:0 8px 24px #0000001f;animation:fadeUp .2s ease}.ia-toast.warning{border-color:#e6821466;color:#b45309}.export-pre-advice-root{display:flex;width:100%;height:100%;min-width:0;min-height:0;background:#f4f6f1}.export-pre-advice-main{display:flex;flex:1;min-width:0;min-height:0;flex-direction:column;overflow:hidden}.epa-vessels-strip{display:flex;flex-shrink:0;gap:8px;overflow-x:auto;padding:8px 20px;border-bottom:1px solid #e2e6ed;background:#fff}.epa-vessels-label{display:flex;flex-shrink:0;flex-direction:column;justify-content:center;padding-right:10px;border-right:1px solid #e2e6ed}.epa-vessels-label span{color:#b0b8c4;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.epa-vessels-label strong{color:#6b7789;font-size:11px}.epa-vessel-card{display:flex;flex:0 0 248px;flex-direction:column;gap:4px;padding:7px 9px;border:1px solid #e2e6ed;border-radius:6px;background:#f8f9fb}.epa-vessel-top,.epa-vessel-bottom,.epa-vessel-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.epa-vessel-top h2{margin:0;overflow:hidden;color:#1a2332;font-size:11px;font-weight:800;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap}.epa-vessel-top span,.epa-vessel-foot span{color:#8a96a8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px}.epa-vessel-bottom{align-items:flex-start;flex-direction:column;gap:3px}.epa-vessel-bottom strong,.epa-vessel-foot strong{color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px}.epa-vessel-status{max-width:100%;overflow:hidden;padding:1px 5px;border-radius:3px;font-size:9px!important;font-weight:800;letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.epa-vessel-status.open{background:#9bc4131f;color:#6a8e0a}.epa-vessel-status.closing{background:#b453091a;color:#b45309}.epa-vessel-status.closed{background:#dc262614;color:#dc2626}.epa-vessel-status.scheduled{background:#8a96a81f;color:#6b7789}.epa-toolbar{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px 10px;border-bottom:1px solid #e2e6ed;background:#fff}.epa-toolbar h1{margin:0;color:#1a2332;font-size:20px;font-weight:800}.epa-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.epa-operational-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid rgba(155,196,19,.35);border-radius:14px;background:#9bc4131f;color:#6a8e0a;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.epa-operational-pill span{width:6px;height:6px;border-radius:999px;background:#9bc413}.epa-ghost-button,.epa-primary-button,.epa-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 14px;border-radius:6px;font-size:12px;font-weight:800;white-space:nowrap}.epa-ghost-button,.epa-secondary-button{border:1px solid #d8dce4;background:#fff;color:#6b7789}.epa-ghost-button:hover:not(:disabled),.epa-secondary-button:hover:not(:disabled){border-color:#9bc413;color:#6a8e0a}.epa-primary-button{border:1px solid #9bc413;background:#9bc413;color:#fff}.epa-primary-button:disabled,.epa-secondary-button:disabled,.epa-ghost-button:disabled{opacity:.52}.epa-filter-bar{display:flex;flex-shrink:0;align-items:flex-start;gap:10px;padding:10px 20px;border-bottom:1px solid #e2e6ed;background:#fff;flex-wrap:nowrap}.epa-search-box{flex:1 1 360px;min-width:280px}.epa-filter-controls{flex:0 0 470px;min-width:420px}.epa-search-box label,.epa-filter-controls label,.epa-field>span{display:block;margin-bottom:4px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.epa-search-box>div{position:relative;display:flex;align-items:center}.epa-search-box .epa-search-icon{position:absolute;left:10px;color:#8a96a8}.epa-search-box input{width:100%;min-height:34px;padding:8px 34px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:13px}.epa-search-box button{position:absolute;right:8px;display:grid;width:24px;height:24px;place-items:center;border:none;background:transparent;color:#8a96a8}.epa-filter-controls>div{display:flex;gap:6px}.epa-filter-controls select{width:100%;min-width:126px;min-height:34px;padding:5px 8px;border:1px solid #d8dce4;border-radius:5px;background:#fff;color:#1a2332;font-size:12px;line-height:1.2}.epa-section-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:14px 28px;border-bottom:1px solid #e2e6ed;background:#fff}.epa-section-header div{display:flex;align-items:center;gap:9px}.epa-section-header strong{color:#1a2332;font-size:14px}.epa-section-header p{margin:0;color:#8a96a8;font-size:11px}.epa-table-wrap{flex:1;min-height:0;overflow:hidden;background:#fff}.epa-table-scroll{height:100%;min-height:0;overflow:auto;overscroll-behavior:contain}.epa-container-table{width:100%;min-width:1120px;border-collapse:collapse;font-size:13px}.epa-container-table th{position:sticky;top:0;z-index:2;padding:10px;border-bottom:1px solid #e2e6ed;background:#fff;color:#6b7789;font-size:11px;font-weight:800;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap}.epa-container-table th.epa-number-col,.epa-container-table td.epa-number-col{text-align:right}.epa-container-table td{padding:10px;border-bottom:1px solid #f0f1f3;color:#1a2332;vertical-align:middle}.epa-container-table tbody tr:nth-child(2n){background:#fbfcf7}.epa-container-table tbody tr:hover{background:#f8f9fb}.epa-container-table tbody tr.pending .epa-status-cell{color:#6b7789;font-style:italic}.epa-container-table tbody tr.not-editable td{color:#c6c6c6}.epa-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.epa-mono.strong{color:#1a2332;font-weight:800}.epa-container-table tbody tr.not-editable td.epa-mono.strong{color:#c6c6c6}.epa-mono.muted{color:#6b7789}.epa-mono.number{text-align:right;white-space:nowrap}.epa-status-pill{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:800;white-space:nowrap}.epa-container-table tbody tr.not-editable .epa-status-pill{background:transparent;color:#c6c6c6;padding-left:0;padding-right:0}.epa-status-pill.advised,.epa-status-pill.inbound{background:#9bc4131f;color:#6a8e0a}.epa-status-pill.pending{background:#b453091a;color:#b45309}.epa-status-pill.yard{background:#4630d814;color:#4630d8}.epa-status-pill.loaded{background:#edf1f5;color:#6b7789}.epa-status-pill.queued,.epa-status-pill.stored{background:#9bc4131f;color:#6a8e0a}.epa-status-pill.queuedisabled,.epa-status-pill.notqueued{background:#f3f6e5;color:#596a00}.epa-status-pill.queuefailed,.epa-status-pill.failed{background:#f5e7e4;color:#b4473a}.epa-edi-cell{display:flex;align-items:center;gap:12px;white-space:nowrap}.epa-edi-actions{display:inline-flex;flex:0 0 62px;align-items:center;gap:6px;margin-left:auto}.epa-action-col{width:64px;text-align:center!important}.epa-icon-button{display:inline-grid;width:32px;height:32px;place-items:center;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789}.epa-icon-button:hover:not(:disabled){border-color:#9bc413;color:#6a8e0a}.epa-icon-button:disabled{opacity:.42}.epa-empty-row{padding:40px 0!important;color:#b0b8c4!important;text-align:center}.epa-modal{position:relative;display:flex;width:min(1320px,calc(100vw - 24px));max-height:calc(100vh - 24px);flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 24px 60px #2f333047}.epa-modal-header{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 14px;border-bottom:1px solid #e2e6ed;background:#fff}.epa-modal-header h2{margin:0 0 3px;color:#1a2332;font-size:18px;font-weight:850}.epa-modal-header p{margin:0;color:#8a96a8;font-size:13px}.epa-stepper{display:grid;flex-shrink:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:12px 20px;border-bottom:1px solid #e2e6ed;background:#f8f9fb}.epa-step{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border:none;border-radius:7px;background:transparent;color:#6b7789;font-size:12px;font-weight:850}.epa-step span{display:inline-grid;width:22px;height:22px;place-items:center;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6b7789;font-size:11px}.epa-step.active{background:#9bc41324;color:#6a8e0a}.epa-step.done{color:#6a8e0a}.epa-step:disabled{cursor:not-allowed;opacity:.55}.epa-step.done span,.epa-step.active span{border-color:#9bc413;background:#9bc413;color:#fff}.epa-modal-body{flex:1;min-height:0;overflow:hidden;padding:0}.epa-form-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;height:100%;min-height:0}.epa-form-content{min-width:0;overflow-y:auto;padding:18px 20px}.epa-form-aside{display:flex;min-width:0;flex-direction:column;gap:12px;overflow-y:auto;padding:18px;border-left:1px solid #e2e6ed;background:#fbfcf7}.epa-step-heading{display:grid;gap:3px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #edf0e7}.epa-step-heading span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.epa-step-heading h3{margin:0;color:#1a2332;font-size:18px;font-weight:850}.epa-step-heading p{margin:0;color:#8a96a8;font-size:12px}.epa-step-panel{display:grid;gap:14px}.epa-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.epa-readonly-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.epa-readonly-grid.wide{grid-column:1 / -1}.epa-info-field{min-width:0;padding:11px 12px;border:1px solid #e2e6ed;border-radius:7px;background:#fbfcf7}.epa-info-field span,.epa-info-field strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epa-info-field span{color:#8a96a8;font-size:10px;font-weight:850;text-transform:uppercase}.epa-info-field strong{margin-top:4px;color:#1a2332;font-size:13px;font-weight:800}.epa-field{display:flex;min-width:0;flex-direction:column}.epa-field.wide,.epa-seal-editor{grid-column:span 2}.epa-field input,.epa-field select,.epa-field textarea{width:100%;min-height:38px;padding:8px 10px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#1a2332;font-size:13px}.epa-field input:read-only{background:#f8f9fb;color:#6b7789}.epa-combobox{position:relative;min-width:0}.epa-combobox-menu{position:absolute;z-index:40;top:calc(100% + 4px);right:0;left:0;max-height:220px;overflow-y:auto;border:1px solid #d8dce4;border-radius:6px;background:#fff;box-shadow:0 14px 30px #0f172a24}.epa-combobox-menu button,.epa-combobox-menu .empty{display:grid;width:100%;gap:2px;padding:9px 11px;border:0;border-bottom:1px solid #edf0e7;background:#fff;color:#1a2332;font-size:12px;text-align:left}.epa-combobox-menu button:last-child,.epa-combobox-menu .empty:last-child{border-bottom:0}.epa-combobox-menu button:hover{background:#f6f9ee}.epa-combobox-menu strong{font-weight:850}.epa-combobox-menu span{color:#6b7789}.epa-combobox-menu .empty{color:#92400e;font-weight:800}.epa-field input.has-error{border-color:#d977068c;background:#fffbeb}.epa-field-hint{margin-top:5px;color:#6b7789;font-size:11px;font-style:normal;font-weight:750}.epa-field-message{margin-top:5px;font-size:11px;font-style:normal;font-weight:800}.epa-field-message.warning{color:#92400e}.epa-seal-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.epa-seal-input-row button{display:inline-flex;align-items:center;gap:5px;min-height:38px;padding:0 12px;border:1px solid #9bc413;border-radius:6px;background:#9bc413;color:#fff;font-size:12px;font-weight:800}.epa-seal-list{display:flex;align-items:center;gap:6px;min-height:30px;margin-top:8px;flex-wrap:wrap}.epa-seal-list span{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:2px 7px;border-radius:4px;background:#9bc41324;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:800}.epa-seal-list button{display:grid;width:18px;height:18px;place-items:center;border:none;background:transparent;color:inherit}.epa-seal-list em,.epa-toggle-card p{margin:0;color:#8a96a8;font-size:12px;font-style:normal}.epa-summary-hero,.epa-summary-card{min-width:0;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.epa-summary-hero{display:grid;gap:5px;padding:14px;border-color:#9bc41359;background:#9bc4131a}.epa-summary-hero span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.epa-summary-hero strong{overflow:hidden;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:18px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.epa-summary-hero em{color:#6b7789;font-size:12px;font-style:normal;font-weight:800}.epa-summary-card{display:grid;gap:10px;padding:13px}.epa-summary-card h3{margin:0;color:#1a2332;font-size:12px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.epa-summary-card dl{display:grid;gap:8px;margin:0}.epa-summary-card dl div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:8px}.epa-summary-card dt{color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.epa-summary-card dd{min-width:0;margin:0;overflow:hidden;color:#1a2332;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.epa-readiness-list{display:grid;gap:6px}.epa-readiness-list span{display:flex;align-items:center;gap:7px;min-height:28px;padding:0 9px;border:1px solid #e2e6ed;border-radius:6px;background:#f8f9fb;color:#8a96a8;font-size:12px;font-weight:800}.epa-readiness-list span.complete{border-color:#9bc41359;background:#9bc4131f;color:#6a8e0a}.epa-alert{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:6px;font-size:13px;font-weight:800}.epa-alert.warning{border:1px solid rgba(180,83,9,.22);background:#b4530914;color:#b45309}.epa-page-alert{display:flex;align-items:center;gap:8px;margin:0 22px 12px;padding:10px 12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#6b7789;font-size:12px;font-weight:750}.epa-page-alert.warning{border-color:#b4530938;background:#b4530914;color:#b45309}.epa-lookup-strip{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:center;margin-bottom:12px;padding:10px;border:1px solid #e2e6ed;border-radius:8px;background:#fbfcf7;color:#6b7789;font-size:12px}.epa-lookup-strip.warning{border-color:#d9770659;background:#fffbeb;color:#92400e;font-weight:800}.epa-lookup-strip.two{grid-template-columns:repeat(2,minmax(0,1fr))}.epa-additional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.epa-toggle-card{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.epa-toggle-card.wide{grid-column:1 / -1}.epa-toggle-card>label{display:flex;align-items:center;gap:9px;color:#1a2332;font-size:13px;font-weight:850}.epa-toggle-card input[type=checkbox]{width:15px;height:15px;min-height:0;margin:0;padding:0;accent-color:#9bc413}.epa-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.epa-oversize-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.epa-confirm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.epa-confirm-grid section{min-width:0;padding:14px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.epa-confirm-grid h3{margin:0 0 12px;color:#1a2332;font-size:13px;font-weight:850}.epa-confirm-grid dl{display:grid;gap:8px;margin:0}.epa-confirm-grid dl div{display:grid;grid-template-columns:128px minmax(0,1fr);gap:10px}.epa-confirm-grid dt{color:#8a96a8;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.epa-confirm-grid dd{min-width:0;margin:0;overflow-wrap:anywhere;color:#1a2332;font-size:13px;font-weight:700}.epa-response-panel{display:grid;gap:14px}.epa-response-status,.epa-response-summary{display:grid;justify-items:center;gap:10px;padding:28px 18px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;text-align:center}.epa-response-status.success{border-color:#6a8e0a38;background:#9bc41314}.epa-response-status.error{border-color:#b84f0040;background:#fff8ed}.epa-response-status span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#9bc413;color:#fff}.epa-response-status.error span{background:#b15c00}.epa-response-status h3,.epa-response-summary h3{margin:0;color:#1a2332;font-size:18px;font-weight:850}.epa-response-status p{max-width:520px;margin:0;color:#6b7789;font-size:13px;line-height:1.5}.epa-response-status p.warning{color:#8a4f00;font-weight:760}.epa-response-summary{justify-items:stretch;padding:16px;text-align:left}.epa-response-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0}.epa-response-summary dl div{display:grid;gap:3px;min-width:0}.epa-response-summary dt{color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.epa-response-summary dd{min-width:0;margin:0;overflow-wrap:anywhere;color:#1a2332;font-size:13px;font-weight:760}.epa-dot-flashing{position:relative;width:10px;height:10px;margin:14px 15px 0;border-radius:50%;animation:epaDotFlashing 1s infinite linear alternate;animation-delay:.5s;background-color:#333;color:#333}.epa-dot-flashing:before,.epa-dot-flashing:after{content:"";position:absolute;top:0;display:inline-block;width:10px;height:10px;border-radius:50%;background-color:#333;color:#333}.epa-dot-flashing:before{left:-15px;animation:epaDotFlashing 1s infinite alternate;animation-delay:0s}.epa-dot-flashing:after{left:15px;animation:epaDotFlashing 1s infinite alternate;animation-delay:1s}@keyframes epaDotFlashing{0%{background-color:#333}50%,to{background-color:#ddd}}.epa-modal-footer{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;border-top:1px solid #e2e6ed;background:#f8f9fb}.epa-modal-footer>div:last-child{display:flex;align-items:center;gap:8px}.epa-form-message{color:#6a8e0a;font-size:12px;font-weight:800}.epa-form-message.warning{color:#b45309}.epa-warning-modal-backdrop{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:20px;background:#0c121c73}.epa-warning-modal{display:grid;gap:14px;width:min(420px,100%);padding:18px;border:1px solid rgba(180,83,9,.25);border-radius:8px;background:#fff;box-shadow:0 24px 70px #0c121c3d}.epa-warning-modal header{display:flex;align-items:center;gap:9px;color:#b45309}.epa-warning-modal h3,.epa-warning-modal p{margin:0}.epa-warning-modal h3{color:#1a2332;font-size:16px}.epa-warning-modal p{color:#5c6878;font-size:13px;line-height:1.5}.epa-warning-modal footer{display:flex;justify-content:flex-end;gap:10px}.import-advice-root,.export-pre-advice-root{height:100%;background:#f4f6f1;color:#1a2332;font-family:Inter,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.import-advice-main,.export-pre-advice-main{overflow-y:auto;padding:20px 24px 40px}.export-pre-advice-main{overflow:hidden}.export-pre-advice-main>:not(.epa-table-card){flex-shrink:0}.ia-vessels-strip{gap:8px;overflow:visible;padding:0 0 5px;margin-bottom:12px;border:0;background:transparent}.ia-vessels-track{gap:8px;margin:0;overflow-x:auto;scrollbar-width:thin}.ia-vessels-track::-webkit-scrollbar{display:block;height:8px}.ia-vessel-chevron{display:inline-flex}.ia-vessel-card{flex:0 0 262px;min-height:52px;gap:10px;padding:9px 13px;border:1px solid #e7ebe3;border-radius:11px;background:#fff;color:#1a2332}.ia-vessel-icon{width:32px;height:32px;padding:8px;border-radius:9px;background:#9bc41321;color:#6a8e0a}.ia-vessel-lock{margin-left:auto;color:#8a96a8}.ia-vessel-copy h2{color:#1a2332;font-size:12px;font-weight:800}.ia-vessel-copy span{color:#6a8e0a;font-size:10.5px;font-weight:600}.ia-toolbar,.epa-toolbar{align-items:flex-end;padding:0;margin-bottom:14px;border:0;background:transparent}.ia-page-heading,.epa-page-heading{min-width:0}.ia-page-kicker,.epa-page-kicker{display:flex;align-items:center;gap:6px;color:#6a8e0a;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.ia-toolbar h1,.epa-toolbar h1{margin:5px 0 0;color:#1a2332;font-size:27px;font-weight:800;letter-spacing:0}.ia-toolbar p,.epa-toolbar p{margin:3px 0 0;color:#6b7789;font-size:13px}.ia-toolbar-actions,.epa-toolbar-actions{gap:8px}.ia-operational-pill,.epa-operational-pill{height:31px;padding:0 12px;border-radius:999px;font-size:11.5px;letter-spacing:0;text-transform:none}.ia-operational-pill span,.epa-operational-pill span{width:7px;height:7px}.ia-ghost-button,.epa-ghost-button{min-height:31px;padding:0 12px;border-color:#e2e6ed;border-radius:8px;background:#fff;font-size:11.5px;font-weight:700}.epa-primary-button{min-height:38px;padding:0 16px;border:0;border-radius:10px;box-shadow:0 3px 8px #9bc41361;font-size:12.5px;font-weight:700}.ia-bulk-bar,.epa-filter-bar{gap:12px;align-items:flex-end;padding:0;margin-bottom:12px;border:0;background:transparent;flex-wrap:wrap}.ia-bulk-bar{align-items:flex-start}.ia-bulk-entry{flex:1.5 1 330px}.ia-bulk-entry label,.ia-search-box label,.ia-filter-controls label,.epa-search-box label,.epa-filter-controls label,.epa-field>span{margin-bottom:5px;font-size:10px}.ia-bulk-entry>div{gap:7px}.ia-bulk-entry textarea{height:38px;min-height:38px;max-height:none;padding:9px 12px;border-color:#e2e6ed;border-radius:10px;background:#fff;font-size:12px;font-weight:600}.ia-bulk-entry button{min-height:38px;padding:0 16px;border-radius:10px;box-shadow:0 3px 8px #9bc4134d;font-size:12.5px;font-weight:700}.ia-search-box{flex:0 0 250px}.epa-search-box{flex:0 0 260px;min-width:240px}.ia-search-box>div,.epa-search-box>div{position:relative}.ia-search-icon,.epa-search-box .epa-search-icon{position:absolute;top:12px;left:11px;color:#9aa6b6}.ia-search-box input,.epa-search-box input{height:38px;min-height:38px;padding:0 30px 0 32px;border-color:#e2e6ed;border-radius:10px;background:#fff;font-size:12px}.ia-search-box button,.epa-search-box button{top:8px;right:7px;width:22px;height:22px;transform:none;border-radius:6px}.ia-filter-controls,.epa-filter-controls{flex:0 1 auto;min-width:0}.ia-filter-controls>div,.epa-filter-controls>div{gap:7px}.ia-filter-controls select,.epa-filter-controls select{height:38px;min-height:38px;min-width:0;padding:0 26px 0 11px;appearance:none;border-color:#e2e6ed;border-radius:10px;background-color:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%239aa6b6' fill='none' stroke-width='1.6'/></svg>");background-repeat:no-repeat;background-position:right 9px center;color:#1a2332;font-size:12px}.ia-body{align-items:flex-start;gap:12px;overflow:visible}.ia-list-wrap,.epa-table-card{min-width:0;overflow:hidden;border:1px solid #e7ebe3;border-radius:14px;background:#fff}.ia-table-scroll,.epa-table-scroll{flex:none;max-width:100%;overflow:auto}.ia-container-table,.epa-container-table{min-width:1080px;font-size:12px}.ia-container-table th,.epa-container-table th{padding:9px 10px 7px;border-bottom:1px solid #eef1ea;background:#fbfcf7;color:#8a96a8;font-size:9.5px;letter-spacing:.07em}.ia-container-table td,.epa-container-table td{height:46px;padding:5px 10px;border-bottom:1px solid #f2f4ee}.ia-container-table tbody tr:hover,.epa-container-table tbody tr:hover{background:#fbfcf7}.ia-select-col,.ia-status-col{width:34px}.ia-status-icon svg{width:17px;height:17px}.ia-mono,.epa-mono{font-size:11.5px}.ia-mono.strong,.epa-mono.strong{font-size:12.5px;font-weight:700}.ia-location-pill,.ia-block-badge,.epa-status-pill{border-radius:999px;font-size:10.5px;font-weight:800}.ia-location-pill{border:1px solid rgba(155,196,19,.28);background:#9bc4131a;color:#6a8e0a}.ia-hold-list span{border:0;border-radius:5px;background:#b453091a;color:#b45309}.ia-reefer-pill{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:#2563eb1a;color:#2563eb}.ia-table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 16px;border-top:1px solid #eef1ea;background:#fbfcf7;color:#8a96a8;font-size:11.5px;font-weight:600}.ia-table-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:10.5px}.ia-table-legend>span{display:inline-flex;align-items:center;gap:5px}.ia-table-legend svg{color:#6a8e0a}.ia-table-legend>span:nth-child(3) svg{color:#dc2626}.ia-table-legend>span:nth-child(4) svg{color:#8a96a8}.ia-group-pill{height:28px;max-width:230px;padding:0 11px;border-radius:999px;font-size:11.5px}.ia-group-popover{top:calc(100% + 5px);z-index:40;padding:11px;border-radius:12px;box-shadow:0 16px 40px -12px #141e194d}.ia-group-option-list button,.ia-set-options button,.ia-remove-group button{padding:6px 9px;border-radius:7px;font-size:11.5px}.ia-set-panel{order:0;flex:0 0 330px;border:1px solid #e7ebe3;border-radius:14px;background:#fff;box-shadow:none;position:sticky;top:0;overflow:hidden}.ia-set-panel-header{padding:13px 15px 11px;border-bottom-color:#eef1ea;background:#fbfcf7}.ia-set-panel-header h2{font-size:13.5px;letter-spacing:0;text-transform:none}.ia-set-panel-header span{font-size:11px}.ia-set-panel-header button{width:26px;height:26px;border-radius:8px}.ia-set-panel-body{padding:13px 15px}.ia-set-panel-grid{gap:13px}.ia-success-alert{padding:7px 11px;border-radius:9px;font-size:11.5px;font-weight:700}.ia-set-panel-footer{flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:11px 15px;border-top-color:#eef1ea;background:#fbfcf7}.ia-set-panel-footer label{font-size:11px}.ia-set-panel-footer>div{flex-shrink:0;gap:7px}.ia-set-panel-footer button,.ia-set-panel-footer .secondary,.ia-set-panel-footer .primary{flex:0 0 auto;min-height:32px;border-radius:9px;font-size:11.5px;font-weight:700}.ia-floating-selection{bottom:20px;padding:10px 12px 10px 18px;border-radius:14px;box-shadow:0 18px 44px -12px #141e1980}.ia-floating-selection strong{padding:0;background:transparent;font-size:12.5px}.ia-floating-selection button{min-height:34px;border-radius:10px}.ia-toast{right:22px;bottom:22px;z-index:1200;border-radius:12px;box-shadow:0 14px 34px -10px #141e194d;font-size:12.5px;font-weight:700}.epa-table-card{display:flex;flex:1;min-height:0;flex-direction:column}.epa-section-header{padding:11px 16px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.epa-section-header strong{font-size:13.5px;font-weight:800}.epa-section-header svg{color:#6a8e0a}.epa-table-wrap{flex:1;overflow:hidden}.epa-action-col{width:60px}.epa-icon-button{width:28px;height:28px;border-color:#e2e6ed;border-radius:8px}.epa-edi-button{flex:0 0 28px;padding:0;line-height:1}.epa-edi-button svg{display:block}.epa-edi-button:hover:not(:disabled){background:#f3f6e5}.epa-edi-button:focus-visible{outline:2px solid #6a8e0a;outline-offset:2px}.epa-modal-backdrop{z-index:1000;display:flex;align-items:center;justify-content:center;padding:22px;background:#1a233273;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.epa-modal{width:100%;max-width:1060px;max-height:94vh;border:0;border-radius:18px;box-shadow:0 34px 70px -28px #141e1980}.epa-modal-header{padding:15px 18px 12px;border-bottom-color:#eef1ea;background:#fbfcf7}.epa-modal-header h2{font-size:16.5px;font-weight:800}.epa-modal-header p{font-size:12px}.epa-stepper{display:flex;gap:6px;padding:10px 18px;border-bottom-color:#eef1ea;background:#fff;overflow-x:auto}.epa-step{flex:0 0 auto;min-height:32px;padding:0 12px;border:1px solid #e2e6ed;border-radius:999px;background:#fff;font-size:11.5px;font-weight:700}.epa-step span{width:18px;height:18px;font-size:10px}.epa-step.active{border-color:#9bc41361;background:#9bc4131f}.epa-step.done{border-color:#9bc41359;background:#fff}.epa-step.done span,.epa-step.active span{background:#9bc413}.epa-modal-body{overflow-y:auto}.epa-form-workspace{display:grid;grid-template-columns:minmax(0,1fr) 252px;gap:16px;height:auto;padding:16px 18px}.epa-form-content{overflow:visible;padding:0}.epa-form-aside{gap:10px;overflow:visible;padding:0;border-left:0;background:transparent}.epa-step-heading{margin-bottom:13px;padding-bottom:0;border-bottom:0}.epa-step-heading span{color:#9bc413}.epa-step-heading h3{font-size:16px;font-weight:800}.epa-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.epa-field input,.epa-field select,.epa-field textarea{min-height:38px;border-color:#e2e6ed;border-radius:10px;font-size:12.5px}.epa-field select{appearance:none;padding-right:26px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%239aa6b6' fill='none' stroke-width='1.6'/></svg>");background-repeat:no-repeat;background-position:right 9px center}.epa-readonly-grid.wide,.epa-field.wide,.epa-seal-editor{grid-column:1 / -1}.epa-info-field,.epa-toggle-card,.epa-response-status,.epa-response-summary{border-color:#eef1ea;border-radius:13px}.epa-summary-hero{border:0;border-radius:13px;background:#1a2332;color:#fff}.epa-summary-hero strong{color:#fff;font-size:15px}.epa-summary-hero em{color:#8f9aab}.epa-summary-card{border-color:#eef1ea;border-radius:13px;padding:12px 14px}.epa-summary-card dl div{display:flex;justify-content:space-between;gap:8px}.epa-summary-card dd{text-align:right}.epa-readiness-list{display:flex;flex-wrap:wrap;gap:5px}.epa-readiness-list span{min-height:23px;padding:0 9px;border-radius:999px;font-size:10.5px;font-weight:700}.epa-modal-footer{padding:12px 18px;border-top-color:#eef1ea;background:#fbfcf7}.epa-secondary-button{min-height:36px;padding:0 15px;border-color:#e2e6ed;border-radius:10px;font-size:12.5px;font-weight:700}.epa-modal-footer .epa-primary-button{min-height:36px;padding:0 17px}.epa-warning-modal{border:0;border-radius:16px;box-shadow:0 30px 60px -20px #141e1980}.reports-empty-state{display:grid;flex:1;place-items:center;align-content:center;gap:8px;color:#6b7789;text-align:center}.reports-empty-state svg{color:#6a8e0a}.reports-empty-state h2{margin:0;color:#1a2332}.reports-empty-state p{margin:0}.gate-slot-admin-root{display:flex;height:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#f4f6f1}.gate-slot-admin-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid #e2e6ed;background:#fff}.gate-slot-admin-header>div:first-child span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.gate-slot-admin-header h1{margin:2px 0 0;color:#1a2332;font-size:24px;font-weight:850}.gate-slot-admin-header p{margin:3px 0 0;color:#6b7789;font-size:13px}.gate-slot-admin-header>div:last-child{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.gate-slot-admin-header label{display:grid;gap:4px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.gate-slot-admin-header input,.gate-slot-capacity-toolbar input{min-height:36px;padding:7px 10px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.gate-slot-primary{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 15px;border:1px solid #9bc413;border-radius:6px;background:#9bc413;color:#fff;font-size:12px;font-weight:850}.gate-slot-primary:disabled{cursor:not-allowed;border-color:#d8dce4;background:#eef1f5;color:#9aa6b6}.gate-slot-dirty-pill{align-self:center;padding:6px 10px;border:1px solid rgba(180,83,9,.28);border-radius:999px;background:#b4530917;color:#b45309;font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.gate-slot-kpis{display:grid;flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px 22px;border-bottom:1px solid #e2e6ed;background:#fbfcf7}.gate-slot-kpis article{display:grid;gap:4px;padding:12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.gate-slot-kpis strong{color:#1a2332;font-size:22px;line-height:1}.gate-slot-kpis span{color:#8a96a8;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.gate-slot-admin-layout{display:grid;flex:1;grid-template-columns:320px minmax(0,1fr);min-height:0}.gate-slot-gate-list{display:flex;min-width:0;min-height:0;flex-direction:column;gap:10px;overflow-y:auto;padding:14px;border-right:1px solid #e2e6ed;background:#fff}.gate-slot-gate-list button{display:grid;position:relative;gap:5px;min-width:0;padding:13px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#1a2332;text-align:left}.gate-slot-gate-list button.active{border-color:#9bc413;background:#9bc41314;box-shadow:inset 3px 0 #9bc413}.gate-slot-source{width:fit-content;padding:2px 7px;border-radius:4px;background:#9bc41321;color:#6a8e0a;font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.gate-slot-gate-list strong{color:#1a2332;font-size:16px;font-weight:850}.gate-slot-gate-list em{overflow:hidden;color:#8a96a8;font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.gate-slot-gate-list button>div{display:flex;gap:6px;flex-wrap:wrap}.gate-slot-gate-list button>div span{padding:2px 7px;border:1px solid #e2e6ed;border-radius:4px;background:#f8f9fb;color:#6b7789;font-size:10px;font-weight:800}.gate-slot-add-card{display:grid;gap:8px;padding:12px;border:1px solid #d8dce4;border-radius:8px;background:#f8f9fb}.gate-slot-add-card strong{font-size:13px}.gate-slot-add-card>div{display:grid;grid-template-columns:minmax(0,1fr) 84px;gap:8px}.gate-slot-add-card input{width:100%;min-width:0;height:34px;padding:0 10px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#1a2332;font-size:12px;font-weight:750}.gate-slot-gate-list .gate-slot-add-card button{display:flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-color:#9bc413;background:#9bc4131f;color:#6a8e0a;text-align:center;font-size:12px;font-weight:850}.gate-slot-workspace{display:grid;min-width:0;min-height:0;gap:14px;align-content:start;overflow-y:auto;padding:16px}.gate-slot-panel{display:grid;min-width:0;gap:14px;padding:14px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.gate-slot-panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.gate-slot-panel-title strong{color:#1a2332;font-size:14px;font-weight:850}.gate-slot-panel-title span{overflow:hidden;color:#8a96a8;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.gate-slot-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}.gate-slot-rule-grid>div{display:grid;gap:8px;align-content:start}.gate-slot-rule-grid>div>span,.gate-slot-capacity-toolbar label{color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.gate-slot-option-row{display:flex;gap:7px;flex-wrap:wrap}.gate-slot-option-row button,.gate-slot-capacity-toolbar button{min-height:34px;padding:0 12px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789;font-size:12px;font-weight:850}.gate-slot-option-row button.active,.gate-slot-capacity-toolbar button:hover{border-color:#9bc413;background:#9bc4131f;color:#6a8e0a}.gate-slot-check-grid{display:grid;gap:7px}.gate-slot-check-grid label{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:9px 10px;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#1a2332;font-size:12px;font-weight:760;line-height:1.3}.gate-slot-check-grid input{width:14px;height:14px;margin-top:1px;accent-color:#9bc413}.gate-slot-capacity-toolbar button:disabled,.gate-slot-capacity-toolbar input:disabled,.gate-slot-capacity-grid input:disabled{cursor:not-allowed;opacity:.58}.gate-slot-capacity-toolbar button.danger{border-color:#dc262638;background:#dc26260f;color:#dc2626}.gate-slot-readonly-pill{align-self:center;padding:6px 9px;border:1px solid rgba(59,130,246,.25);border-radius:999px;background:#3b82f614;color:#2563eb;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.gate-slot-rule-summary{grid-column:span 2;padding:14px;border:1px solid rgba(155,196,19,.35);border-radius:8px;background:#9bc4131a}.gate-slot-rule-summary strong{color:#1a2332;font-size:28px;line-height:1}.gate-slot-rule-summary span{color:#6a8e0a!important;line-height:1.35}.gate-slot-capacity-toolbar{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.gate-slot-capacity-toolbar label{display:grid;gap:4px}.gate-slot-capacity-toolbar input{width:84px;text-align:center}.gate-slot-capacity-toolbar select{min-height:36px;padding:7px 8px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.gate-slot-capacity-toolbar-secondary{margin-top:-4px;padding-top:12px;border-top:1px dashed #e2e6ed}.gate-slot-capacity-toolbar-secondary input{width:64px}.gate-slot-warning-banner{display:grid;gap:6px;padding:12px 14px;border:1px solid rgba(180,83,9,.3);border-radius:8px;background:#b4530912}.gate-slot-warning-banner strong{color:#b45309;font-size:12px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.gate-slot-warning-banner ul{margin:0;padding-left:18px;color:#7c4a12;font-size:12.5px;line-height:1.45}.gate-slot-warning-dot{position:absolute;top:11px;right:11px;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#b45309;color:#fff;font-size:11px;font-weight:900;line-height:1}.gate-slot-capacity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}.gate-slot-capacity-grid label{display:grid;gap:5px;justify-items:center;padding:10px 8px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.gate-slot-capacity-grid label.active{border-color:#9bc41359;background:#9bc41314}.gate-slot-capacity-grid label.busy{border-color:#b4530947;background:#b4530912}.gate-slot-capacity-grid label.closed{border-color:#dc262633;background:#dc26260d}.gate-slot-capacity-grid span{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:850}.gate-slot-capacity-grid input{width:58px;min-height:32px;padding:5px 6px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:800;text-align:center}.gate-slot-capacity-grid em{color:#8a96a8;font-size:10px;font-style:normal;font-weight:800}.gate-slot-preview-scroll{min-width:0;overflow:auto}.gate-slot-preview-table{width:100%;min-width:620px;border-collapse:separate;border-spacing:4px;font-size:12px}.gate-slot-preview-table th{padding:8px 10px;border:1px solid #e2e6ed;border-radius:5px;background:#f8f9fb;color:#6b7789;font-weight:850;text-align:center;white-space:nowrap}.gate-slot-preview-table tbody th{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace}.gate-slot-preview-table td{padding:8px 10px;border:1px solid #e2e6ed;border-radius:5px;background:#fff;color:#6b7789;font-family:JetBrains Mono,ui-monospace,monospace;font-weight:800;text-align:center;white-space:nowrap}.gate-slot-preview-table td.used{border-color:#9bc41359;background:#9bc41317;color:#6a8e0a}.gate-slot-preview-table td.full{border-color:#b4530947;background:#b4530914;color:#b45309}.gate-slot-preview-table td.closed{border-color:#dc26262e;background:#dc26260d;color:#dc2626}.gsx-root{display:flex;height:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#f4f6f1;color:#1a2332}.gsx-scroll{flex:1;min-height:0;overflow-y:auto;padding:24px 26px 40px}.gsx-root input[type=number]{-moz-appearance:textfield;appearance:textfield}.gsx-root input[type=number]::-webkit-inner-spin-button,.gsx-root input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.gsx-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.gsx-eyebrow{display:flex;align-items:center;gap:6px;color:#6a8e0a;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.gsx-title{margin:5px 0 0;font-size:27px;font-weight:800;letter-spacing:-.015em}.gsx-subtitle{margin:3px 0 0;font-size:13px;color:#6b7789}.gsx-header-actions{display:flex;align-items:center;gap:10px}.gsx-dirty{display:inline-flex;align-items:center;height:40px;padding:0 12px;border:1px solid rgba(180,83,9,.28);border-radius:999px;background:#b4530917;color:#b45309;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.gsx-save{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 17px;border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:700;cursor:pointer}.gsx-save:disabled{opacity:.55;cursor:not-allowed;box-shadow:none!important}.gsx-kpis{display:flex;align-items:center;background:#fff;border:1px solid #e7ebe3;border-radius:14px;padding:16px 4px;margin-bottom:18px}.gsx-kpi{flex:1;padding:0 22px;border-right:1px solid #eef1ea}.gsx-kpi:last-child{border-right:none}.gsx-kpi-num{font-family:JetBrains Mono,ui-monospace,monospace;font-size:26px;font-weight:600}.gsx-kpi-label{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#8a96a8;margin-top:5px}.gsx-kpi-ring{display:flex;align-items:center;gap:14px}.gsx-ring{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.gsx-ring-inner{width:37px;height:37px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.gsx-kpi-ring .gsx-kpi-label{margin-top:0}.gsx-split{display:flex;gap:16px;align-items:flex-start}.gsx-switcher{width:300px;flex-shrink:0;display:flex;flex-direction:column;gap:10px}.gsx-switcher-label{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a96a8;padding:0 2px}.gsx-card{text-align:left;position:relative;border-radius:13px;padding:14px 15px;cursor:pointer}.gsx-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.gsx-card-top strong{font-size:16px;font-weight:800;color:#1a2332}.gsx-source{padding:3px 8px;border-radius:5px;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.gsx-card-type{margin-top:4px;font-size:11.5px;color:#8a96a8;font-weight:600}.gsx-card-stats{display:flex;align-items:center;justify-content:space-between;margin:12px 0 6px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.gsx-card-stats span:first-child{color:#8a96a8}.gsx-bar-track{height:8px;border-radius:5px;background:#eef1ea;overflow:hidden}.gsx-card-closed{margin-top:9px;font-size:10.5px;color:#98a2af;font-weight:600}.gsx-add-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:42px;border:1px dashed #c4ccbe;border-radius:12px;background:transparent;color:#6a8e0a;font-size:12.5px;font-weight:700;cursor:pointer}.gsx-add-btn:hover{background:#9bc41312;border-color:#9bc413}.gsx-add-form{display:grid;gap:8px;padding:12px;border:1px solid #e2e6ed;border-radius:12px;background:#f8faf4}.gsx-add-form>div{display:grid;grid-template-columns:minmax(0,1fr) 84px;gap:8px}.gsx-add-form input{width:100%;min-width:0;height:34px;padding:0 10px;border:1px solid #d8dce4;border-radius:8px;background:#fff;color:#1a2332;font-size:12px;font-weight:600}.gsx-add-confirm{height:34px;border:none;border-radius:8px;background:#9bc413;color:#fff;font-size:12px;font-weight:800;cursor:pointer}.gsx-workspace{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px}.gsx-panel{background:#fff;border:1px solid #e7ebe3;border-radius:14px;padding:17px 18px}.gsx-panel-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.gsx-panel-head strong{font-size:14.5px;font-weight:800}.gsx-panel-head span{font-size:11.5px;color:#98a2af}.gsx-rules{display:flex;flex-wrap:wrap;gap:24px;margin-top:15px}.gsx-rule-label{font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#8a96a8;margin-bottom:8px}.gsx-seg{display:inline-flex;background:#eef1ea;border:1px solid #e7ebe3;border-radius:10px;padding:3px;gap:3px}.gsx-toggles{display:flex;gap:8px;flex-wrap:wrap}.gsx-sync-rule{flex:1 1 460px}.gsx-sync-fields{display:grid;grid-template-columns:repeat(4,minmax(98px,1fr));gap:8px;margin-top:10px}.gsx-sync-field{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 50px auto;align-items:center;gap:6px;min-height:32px;padding:5px 7px 5px 9px;border:1px solid #e7ebe3;border-radius:8px;background:#f8faf4}.gsx-sync-field span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:800;color:#6b7789}.gsx-sync-field input{width:50px;height:24px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#1a2332;text-align:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;font-weight:700}.gsx-sync-field em{color:#98a2af;font-size:9.5px;font-style:normal;font-weight:800;text-transform:uppercase}.gsx-company-picker{margin-top:16px;padding-top:16px;border-top:1px dashed #e2e6dc}.gsx-company-picker-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:11px}.gsx-company-heading{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}.gsx-company-title{font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#8a96a8;white-space:nowrap}.gsx-company-count{display:inline-flex;align-items:center;height:20px;padding:0 9px;border-radius:999px;background:#9bc41329;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;font-weight:800;white-space:nowrap}.gsx-company-count.is-empty{background:#b453091f;color:#b45309}.gsx-company-warning{display:inline-flex;align-items:center;gap:5px;color:#b45309;font-size:11px;font-weight:700;white-space:nowrap}.gsx-company-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gsx-company-search{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 11px;border:1px solid #e2e6ed;border-radius:8px;background:#f8faf4;color:#9aa6b6}.gsx-company-search input{width:180px;min-width:0;border:none;outline:none;background:transparent;color:#1a2332;font-family:inherit;font-size:12px;font-weight:600}.gsx-company-actions button{height:32px;padding:0 11px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#6b7789;font-size:11px;font-weight:700;cursor:pointer}.gsx-company-actions button:hover{border-color:#9bc413;color:#6a8e0a}.gsx-company-actions button.danger:hover{border-color:#dc2626;color:#dc2626}.gsx-company-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:216px;overflow-y:auto;padding:2px}.gsx-company-option{display:flex;align-items:center;gap:11px;min-width:0;text-align:left;padding:10px 12px;border:1px solid #e7ebe3;border-radius:10px;background:#fff;color:#1a2332;cursor:pointer}.gsx-company-option:hover{border-color:#c4ccbe;background:#f8faf4}.gsx-company-option.selected{border-color:#9bc413;background:#9bc41312}.gsx-company-check{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:19px;height:19px;border:1.5px solid #c4ccbe;border-radius:6px;background:#fff;color:#fff}.gsx-company-option.selected .gsx-company-check{border-color:#9bc413;background:#9bc413}.gsx-company-text{min-width:0;flex:1;display:block}.gsx-company-text strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1a2332;font-size:12.5px;font-weight:700}.gsx-company-text em{display:block;margin-top:1px;color:#98a2af;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-style:normal;font-weight:600}.gsx-company-empty{grid-column:1 / -1;padding:22px;text-align:center;color:#98a2af;font-size:12px;font-weight:700}.gsx-cap-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.gsx-cap-head strong{font-size:14.5px;font-weight:800}.gsx-cap-hint{font-size:11.5px;color:#98a2af;margin-top:2px}.gsx-cap-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gsx-setall{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 5px 0 11px;border:1px solid #e2e6ed;border-radius:9px;background:#f8faf4;font-size:11px;font-weight:700;color:#6b7789}.gsx-setall input{width:40px;height:26px;border:1px solid #e2e6ed;border-radius:6px;background:#fff;text-align:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:#1a2332}.gsx-setall button{height:26px;padding:0 9px;border:none;border-radius:6px;background:#9bc413;color:#fff;font-size:11px;font-weight:800;cursor:pointer}.gsx-preset{height:34px;padding:0 13px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:700;cursor:pointer}.gsx-preset:hover{border-color:#9bc413;color:#6a8e0a}.gsx-preset-danger{border-color:#dc26263d;background:#dc26260d;color:#dc2626}.gsx-preset-danger:hover{border-color:#dc262680;color:#dc2626}.gsx-n4-pill{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border:1px solid rgba(59,130,246,.25);border-radius:999px;background:#3b82f614;color:#2563eb;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.gsx-bars{display:flex;align-items:flex-end;gap:7px;margin-top:22px;padding-bottom:9px;border-bottom:1px solid #eef1ea}.gsx-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.gsx-bar-input{width:46px;height:26px;padding:0 4px;border:1px solid #d3dbc6;border-radius:6px;text-align:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.gsx-bar-drag{height:150px;width:100%;display:flex;align-items:flex-end;justify-content:center;touch-action:none}.gsx-bar{width:66%;max-width:32px;border-radius:6px 6px 3px 3px;position:relative;overflow:hidden}.gsx-bar-label{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;font-weight:600;color:#8a96a8}.gsx-legend{display:flex;align-items:center;gap:18px;margin-top:12px;flex-wrap:wrap}.gsx-legend>span{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#6b7789;font-weight:600}.gsx-swatch{width:11px;height:11px;border-radius:3px}.gsx-legend-note{margin-left:auto;color:#98a2af!important;font-weight:400!important}.gsx-strip{margin-top:14px}.gsx-strip-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.gsx-strip-name{width:92px;flex-shrink:0;display:flex;flex-direction:column}.gsx-strip-name strong{font-size:12.5px;font-weight:800;color:#1a2332}.gsx-strip-name span{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.gsx-strip-cells{flex:1;display:flex;gap:3px;min-width:0}.gsx-cell{flex:1;height:22px;border-radius:4px;border:1px solid transparent}.gsx-strip-ticks{display:flex;gap:3px;margin-top:10px;padding-left:104px}.gsx-strip-ticks span{flex:1;text-align:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;color:#b0b8ab}@media(max-width:900px){.gsx-split{flex-direction:column}.gsx-switcher{width:100%}.gsx-kpis{flex-wrap:wrap}.gsx-kpi{flex-basis:45%}.gsx-company-picker-top,.gsx-company-actions{align-items:stretch}.gsx-company-search{flex:1 1 220px}.gsx-company-search input{width:100%}.gsx-company-list{grid-template-columns:1fr}.gsx-sync-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-appointments-root{display:flex;height:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#f4f6f1}.admin-appointments-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:18px;padding:14px 22px 12px;border-bottom:1px solid #e2e6ed;background:#fff}.admin-appointments-header span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-appointments-header h1{margin:2px 0 0;color:#1a2332;font-size:22px;font-weight:850}.admin-appointments-header p{margin:3px 0 0;color:#6b7789;font-size:13px}.admin-appointments-ghost{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:32px;padding:0 12px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789;font-size:12px;font-weight:850}.admin-appointments-ghost:disabled{cursor:not-allowed;opacity:.58}.admin-appointments-filters{display:flex;flex-shrink:0;align-items:center;gap:8px;padding:9px 22px;border-bottom:1px solid #e2e6ed;background:#fff;overflow-x:auto;white-space:nowrap}.admin-appointments-result-count{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid rgba(155,196,19,.35);border-radius:6px;background:#9bc4131c;color:#6a8e0a;font-size:12px;font-weight:850;white-space:nowrap}.admin-appointments-error{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid rgba(220,38,38,.2);border-radius:6px;background:#dc26260f;color:#b91c1c;font-size:12px;font-weight:800;white-space:nowrap}.admin-appointments-date-group,.admin-appointments-selects{display:flex;align-items:center;gap:6px;flex:0 0 auto}.admin-appointments-date-group label{display:flex;align-items:center;gap:5px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-appointments-date-group>label>input,.admin-appointments-search input,.admin-appointments-selects select{min-height:32px;padding:5px 9px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:12px}.admin-appointments-date-group>label>input{font-family:JetBrains Mono,ui-monospace,monospace}.admin-appointments-search{position:relative;display:flex;flex:1 1 280px;align-items:center;min-width:230px}.admin-appointments-search svg{position:absolute;left:10px;color:#8a96a8}.admin-appointments-search input{width:100%;padding-left:34px}.admin-appointments-selects{flex-wrap:nowrap}.admin-appointments-selects svg{color:#8a96a8}.admin-appointments-selects select{min-width:126px}.admin-appointments-layout{display:grid;flex:1;grid-template-columns:330px minmax(0,1fr);min-height:0}.admin-appointments-layout.single{grid-template-columns:minmax(0,1fr)}.admin-appointments-timeline{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;border-right:1px solid #e2e6ed;background:#fff}.admin-appointments-panel-title{display:flex;flex-shrink:0;align-items:center;gap:8px;min-width:0;padding:14px;border-bottom:1px solid #e2e6ed}.admin-appointments-panel-title strong{color:#1a2332;font-size:14px;font-weight:850}.admin-appointments-panel-title span{margin-left:auto;overflow:hidden;color:#8a96a8;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.admin-appointments-day-list{display:flex;min-height:0;flex-direction:column;gap:10px;overflow-y:auto;padding:14px}.admin-appointments-day-list article{display:grid;gap:8px;padding:10px;border:1px solid #e2e6ed;border-radius:8px;background:#fbfcf7}.admin-appointments-day-list header{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-appointments-day-list header strong{color:#1a2332;font-size:12px}.admin-appointments-day-list header span{color:#8a96a8;font-size:11px;font-weight:800}.admin-appointments-day-list article>div{display:grid;gap:6px}.admin-appointments-day-list button{display:grid;grid-template-columns:48px minmax(0,1fr);gap:2px 8px;min-width:0;padding:8px;border:1px solid #e2e6ed;border-radius:6px;background:#fff;text-align:left}.admin-appointments-day-list button span{grid-row:span 2;align-self:center;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:850}.admin-appointments-day-list button strong,.admin-appointments-day-list button em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-appointments-day-list button strong{color:#1a2332;font-size:12px}.admin-appointments-day-list button em{color:#8a96a8;font-size:11px;font-style:normal}.admin-appointments-day-list p{margin:0;padding:24px 0;color:#8a96a8;font-size:13px;text-align:center}.admin-appointments-table-panel{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#fff}.admin-appointments-table-scroll{min-height:0;overflow:auto}.admin-appointments-table{width:100%;min-width:1700px;border-collapse:collapse;font-size:13px}.admin-appointments-table th{position:sticky;top:0;z-index:2;padding:10px;border-bottom:1px solid #e2e6ed;background:#fff;color:#6b7789;font-size:11px;font-weight:850;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap}.admin-appointments-table td{padding:10px;border-bottom:1px solid #f0f1f3;color:#1a2332;vertical-align:middle}.admin-appointments-table tbody tr:nth-child(2n){background:#fbfcf7}.admin-appointments-table tbody tr.terminal{background:#f4f5f7;opacity:.72}.admin-appointments-table th.admin-appointments-actions-heading,.admin-appointments-table td.admin-appointments-actions-cell{position:sticky;right:0;background:#fff;box-shadow:-8px 0 16px #1a233214}.admin-appointments-table th.admin-appointments-actions-heading{z-index:4;text-align:center}.admin-appointments-table td.admin-appointments-actions-cell{z-index:1}.admin-appointments-table tbody tr:nth-child(2n) td.admin-appointments-actions-cell{background:#fbfcf7}.admin-appointments-table tbody tr.terminal td.admin-appointments-actions-cell{background:#f4f5f7}.admin-appointments-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;white-space:nowrap}.admin-appointments-pin-button{width:40px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(107,119,137,.22);border-radius:999px;background:#fff;color:#6b7789;cursor:pointer;box-shadow:0 4px 12px #1a23320f}.admin-appointments-pin-button.visible{width:54px;border-color:#9bc4135c;background:#9bc4131f;color:#6a8e0a}.admin-appointments-pin-button span{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:850}.admin-appointments-muted{color:#b0b8c4;font-weight:850}.admin-appointments-type,.admin-appointments-status{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:850;white-space:nowrap}.admin-appointments-type{background:#f1f5f9;color:#475569}.admin-appointments-status{background:#2563eb17;color:#2563eb}.admin-appointments-type.full{background:#9bc41321;color:#6a8e0a}.admin-appointments-type.empty{background:#2563eb17;color:#2563eb}.admin-appointments-status.confirmed,.admin-appointments-status.created{background:#9bc41321;color:#6a8e0a}.admin-appointments-status.completed{background:#4630d814;color:#4630d8}.admin-appointments-status.usedlate{background:#d977061a;color:#b45309}.admin-appointments-status.mia,.admin-appointments-status.no-show,.admin-appointments-status.cancelled,.admin-appointments-status.expired{background:#dc262612;color:#dc2626}.admin-appointments-zone{display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:24px;border:1px solid rgba(155,196,19,.32);border-radius:999px;background:#9bc4131a;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:850}.admin-appointments-alert{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:24px;padding:0 7px;border-radius:999px;background:#f1f5f9;color:#8a96a8;font-size:11px;font-weight:850}.admin-appointments-alert.warning{border:1px solid rgba(180,83,9,.22);background:#b4530914;color:#b45309}.admin-appointments-alert.severe{border:1px solid rgba(220,38,38,.24);background:#dc262614;color:#dc2626}.admin-appointments-alert.minor{border:1px solid rgba(37,99,235,.2);background:#2563eb14;color:#2563eb}.admin-appointments-toggle{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 10px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789;font-size:12px;font-weight:800}.admin-appointments-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;min-width:128px;width:100%}.admin-appointments-icon-action,.admin-appointments-billable-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6b7789;font-size:11px;font-weight:850;cursor:pointer}.admin-appointments-icon-action{width:32px;padding:0;border-color:#9bc4135c;background:#9bc4131f;color:#6a8e0a}.admin-appointments-icon-action:disabled,.admin-appointments-billable-action:disabled{cursor:not-allowed;opacity:.55}.admin-appointments-billable-action{min-width:82px;padding:0 10px}.admin-appointments-billable-action.active{border-color:#9bc4135c;background:#9bc41321;color:#6a8e0a}.admin-appointments-empty{padding:36px 0!important;color:#8a96a8!important;text-align:center}.admin-appointments-fab{position:fixed;right:26px;bottom:26px;z-index:40;width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#9bc413;color:#fff;cursor:pointer;box-shadow:0 14px 30px #5f7f0947}.admin-appointment-modal-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:22px;background:#1a23325c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-appointment-modal{width:min(880px,100%);max-height:calc(100vh - 44px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #e2e6ed;border-radius:8px;background:#fff;box-shadow:0 22px 60px #1a233238}.admin-appointment-modal>header,.admin-appointment-modal>footer{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e2e6ed;background:#fbfcf7}.admin-appointment-modal>header span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-appointment-modal>header h2{margin:3px 0 0;color:#1a2332;font-size:18px}.admin-appointment-modal>header button{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6b7789;cursor:pointer}.admin-appointment-modal>footer{justify-content:flex-end;border-top:1px solid #e2e6ed;border-bottom:none}.admin-appointment-mode-switch{display:inline-flex;gap:6px;padding:14px 18px 0}.admin-appointment-mode-switch button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6b7789;font-size:12px;font-weight:850;cursor:pointer}.admin-appointment-mode-switch button.active{border-color:#9bc41361;background:#9bc4131f;color:#6a8e0a}.admin-appointment-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;overflow-y:auto;padding:16px 18px}.admin-appointment-form-field{display:flex;min-width:0;flex-direction:column;gap:5px}.admin-appointment-form-field.wide{grid-column:span 2}.admin-appointment-form-field span{color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-appointment-form-field input,.admin-appointment-form-field select{width:100%;min-height:36px;box-sizing:border-box;padding:7px 9px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:13px}.admin-appointment-form-field input:disabled,.admin-appointment-form-field select:disabled{color:#8a96a8;cursor:not-allowed;opacity:.75}.admin-appointment-save-error{margin:0 18px 14px;padding:10px 12px;border:1px solid rgba(220,38,38,.2);border-radius:6px;background:#dc26260f;color:#b91c1c;font-size:12px;font-weight:800}.admin-appointment-primary{min-height:34px;padding:0 16px;border:none;border-radius:6px;background:#9bc413;color:#fff;font-size:12px;font-weight:850;cursor:pointer;box-shadow:0 8px 18px #5f7f0924}.admin-appointment-primary:disabled{cursor:not-allowed;opacity:.65}.admin-booking-controls{display:grid;grid-template-columns:minmax(240px,1.15fr) minmax(170px,.85fr);gap:10px;align-items:end}.admin-booking-controls.bulk{grid-template-columns:1fr}.admin-booking-controls label{display:flex;min-width:0;flex-direction:column;gap:5px}.admin-booking-controls label span,.admin-booking-saving,.admin-booking-error{font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-booking-controls label span{color:#8a96a8}.admin-booking-controls input,.admin-booking-controls select{min-height:34px;box-sizing:border-box;padding:6px 9px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#1a2332;font-size:12px}.admin-booking-company-wide,.admin-booking-saving,.admin-booking-error{grid-column:1 / -1}.admin-booking-header-switch{display:inline-flex;gap:2px;align-items:center;padding:2px;border:1px solid #d8dce4;border-radius:999px;background:#fff;box-shadow:0 4px 12px #1a23320f}.admin-booking-header-switch button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;padding:0 10px;border:none;border-radius:999px;background:transparent;color:#6b7789;font-size:11px;font-weight:850;cursor:pointer}.admin-booking-header-switch button.active{border-color:#9bc4135c;background:#9bc4131c;color:#6a8e0a}.admin-booking-header-switch button:disabled{cursor:not-allowed;opacity:.55}.admin-booking-saving{color:#6a8e0a}.admin-booking-error{grid-column:1 / -1;padding:8px 10px;border:1px solid rgba(220,38,38,.2);border-radius:6px;background:#dc26260f;color:#b91c1c}.notification-menu,.notification-bell{position:relative}.notification-bell span{position:absolute;top:-5px;right:-5px;display:grid;min-width:18px;height:18px;place-items:center;border:2px solid var(--propel-nav);border-radius:999px;background:#dc2626;color:#fff;font-size:10px;font-weight:850}.notification-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:380px;overflow:hidden;border:1px solid #e2e6ed;border-radius:8px;background:#fff;box-shadow:0 16px 36px #2f333029}.notification-popover header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid #e2e6ed}.notification-popover header strong{color:#1a2332;font-size:14px}.notification-popover header span{color:#8a96a8;font-size:11px;font-weight:800}.notification-popover>div{display:grid;max-height:340px;overflow-y:auto}.notification-mark-all{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6a8e0a;font-size:11px;font-weight:800;cursor:pointer}.notification-mark-all:hover{border-color:#9bc413;background:#9bc4131a}.notification-row{display:grid;gap:4px;min-width:0;padding:12px 16px;border:0;border-bottom:1px solid #f0f1f3;background:#fff;text-align:left;cursor:pointer}.notification-row:hover{background:#fafbf6}.notification-row.unread{background:#9bc4130f}.notification-row.unread:hover{background:#9bc4131c}.notification-row-kicker{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#6a8e0a;font-size:9.5px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.notification-row-kicker em{color:#8a96a8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-style:normal;font-weight:600;letter-spacing:0;text-transform:none;white-space:nowrap}.notification-row strong{display:flex;align-items:center;gap:7px;color:#1a2332;font-size:13px}.notification-row.unread strong{font-weight:850}.notification-unread-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:#9bc413}.notification-row p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0;color:#6b7789;font-size:12px;line-height:1.45}.notification-modal-backdrop{z-index:90}.notification-modal{display:flex;width:min(680px,calc(100vw - 32px));max-height:min(78vh,720px);flex-direction:column;overflow:hidden;border:1px solid #d8dce4;border-radius:12px;background:#fff;box-shadow:0 24px 60px #1a23324d}.notification-modal>header{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 14px;border-bottom:1px solid #e2e6ed}.notification-modal-kicker{display:flex;flex-wrap:wrap;gap:5px}.notification-modal-kicker em{padding:2px 8px;border-radius:999px;background:#9bc41321;color:#6a8e0a;font-size:9.5px;font-style:normal;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.notification-modal>header h2{margin:7px 0 0;color:#1a2332;font-size:20px;font-weight:850;line-height:1.25}.notification-modal>header p{margin:5px 0 0;color:#8a96a8;font-size:12px}.notification-modal>header>button{display:inline-grid;width:30px;height:30px;flex-shrink:0;place-items:center;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#6b7789;cursor:pointer}.notification-modal>header>button:hover{border-color:#9bc413;color:#6a8e0a}.notification-modal>section{flex:1;overflow-y:auto;padding:18px 20px;color:#26303f;font-size:14px;line-height:1.6}.notification-modal>section p{margin:0 0 12px}.notification-modal>section p:last-child{margin-bottom:0}.notification-modal>footer{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-top:1px solid #e2e6ed;background:#fbfcf7}.notification-modal>footer>span{display:inline-flex;align-items:center;gap:6px;color:#6a8e0a;font-size:12px;font-weight:800}.notification-modal>footer>button{min-height:34px;padding:0 16px;border:1px solid #9bc413;border-radius:8px;background:#9bc413;color:#fff;font-size:12px;font-weight:850;cursor:pointer}.notification-modal>footer>button:hover{background:#8db310}.pa-chip-field{display:flex;min-width:0;flex-direction:column}.pa-chip-field>span{margin-bottom:6px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.pa-chip-options{display:flex;flex-wrap:wrap;gap:6px}.pa-chip-options button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 11px;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6b7789;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}.pa-chip-options button:hover{border-color:#c6d495}.pa-chip-options button.on{border-color:#9bc413;background:#9bc41321;color:#6a8e0a}.shipping-lines-admin-root{display:flex;height:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#f4f6f1}.shipping-lines-admin-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px;border-bottom:1px solid #e2e6ed;background:#fff}.shipping-lines-admin-header>div:first-child span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.shipping-lines-admin-header h1{margin:2px 0 0;color:#1a2332;font-size:23px;font-weight:850}.shipping-lines-admin-header>div:last-child,.shipping-lines-editor-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.shipping-lines-primary-button,.shipping-lines-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 14px;border-radius:6px;font-size:12px;font-weight:850;white-space:nowrap}.shipping-lines-primary-button{border:1px solid #9bc413;background:#9bc413;color:#fff}.shipping-lines-secondary-button{border:1px solid #d8dce4;background:#fff;color:#6b7789}.shipping-lines-primary-button:disabled,.shipping-lines-secondary-button:disabled{cursor:not-allowed;opacity:.58}.shipping-lines-admin-stats{display:grid;flex-shrink:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 22px;border-bottom:1px solid #e2e6ed;background:#fbfcf7}.shipping-lines-admin-stats article{display:grid;gap:4px;padding:12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.shipping-lines-admin-stats strong{color:#1a2332;font-size:22px;line-height:1}.shipping-lines-admin-stats span{color:#8a96a8;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.shipping-lines-admin-alert{display:flex;flex-shrink:0;align-items:center;gap:8px;margin:12px 22px 0;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:760}.shipping-lines-admin-alert.warning{border:1px solid rgba(214,118,0,.32);background:#fff8ed;color:#8a4f00}.shipping-lines-admin-alert.success{border:1px solid rgba(106,142,10,.25);background:#9bc4131a;color:#567500}.shipping-lines-admin-layout{display:grid;flex:1;grid-template-columns:330px minmax(0,1fr);min-height:0;overflow:hidden}.shipping-lines-list-panel,.shipping-lines-editor-panel{min-width:0;min-height:0;background:#fff}.shipping-lines-list-panel{display:flex;flex-direction:column;gap:12px;padding:14px;border-right:1px solid #e2e6ed}.shipping-lines-search{position:relative;display:flex;align-items:center;flex-shrink:0}.shipping-lines-search svg{position:absolute;left:10px;color:#8a96a8}.shipping-lines-search input,.shipping-lines-form-grid input{width:100%;min-height:36px;padding:8px 10px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:13px}.shipping-lines-search input{padding-left:34px}.shipping-lines-list{display:flex;min-height:0;flex-direction:column;gap:8px;overflow-y:auto}.shipping-lines-list button{display:flex;align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#1a2332;text-align:left}.shipping-lines-list button.active{border-color:#9bc413;background:#9bc41314;box-shadow:inset 3px 0 #9bc413}.shipping-lines-list svg{flex:0 0 auto;color:#6a8e0a}.shipping-lines-list button span{display:grid;min-width:0;gap:3px}.shipping-lines-list strong{overflow:hidden;color:#1a2332;font-size:14px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.shipping-lines-list em,.shipping-lines-list p{color:#8a96a8;font-size:12px;font-style:normal}.shipping-lines-list p{margin:8px 2px}.shipping-lines-editor-panel{display:grid;align-content:start;gap:16px;overflow-y:auto;padding:18px 22px}.shipping-lines-panel-title{display:flex;align-items:center;gap:8px;color:#1a2332;font-size:14px;font-weight:850}.shipping-lines-panel-title svg{color:#6a8e0a}.shipping-lines-form-grid{display:grid;grid-template-columns:minmax(220px,1fr) 160px;gap:12px}.shipping-lines-form-grid label{display:grid;gap:5px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.shipping-lines-group-preview{display:grid;gap:10px;padding:14px;border:1px solid #e2e6ed;border-radius:8px;background:#fbfcf7}.shipping-lines-group-preview strong{color:#1a2332;font-size:13px;font-weight:850}.shipping-lines-group-preview div{display:flex;gap:8px;flex-wrap:wrap}.shipping-lines-group-preview span{padding:5px 8px;border-radius:6px;background:#9bc4131f;color:#5f7f00;font-size:12px;font-weight:760}.shipping-lines-group-preview em,.shipping-lines-validation{margin:0;color:#8a96a8;font-size:12px;font-style:normal}.shipping-lines-validation{color:#b15c00;font-weight:760}.shipping-lines-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.shipping-lines-header-actions .shipping-lines-search{width:240px}.shipping-lines-content{display:grid;flex:1;align-content:start;gap:12px;min-height:0;overflow-y:auto;padding:16px 22px 22px}.shipping-lines-content .shipping-lines-admin-alert{margin:0}.shipping-lines-table-panel{overflow:hidden;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.shipping-lines-table{width:100%;border-collapse:collapse;table-layout:fixed}.shipping-lines-table th,.shipping-lines-table td{padding:13px 14px;border-bottom:1px solid #edf0f4;color:#1a2332;font-size:13px;text-align:left;vertical-align:middle}.shipping-lines-table th{background:#fbfcf7;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.shipping-lines-table tbody tr:last-child td{border-bottom:0}.shipping-lines-table tbody tr:hover td{background:#fcfdf8}.shipping-lines-table th:first-child,.shipping-lines-table td:first-child{width:150px}.shipping-lines-table th:nth-child(3),.shipping-lines-table td:nth-child(3){width:90px;text-align:right}.shipping-lines-table th:last-child,.shipping-lines-table td:last-child{width:94px;text-align:right}.shipping-lines-table strong{color:#1a2332;font-size:13px;font-weight:850}.shipping-lines-alias-chips{display:flex;gap:7px;flex-wrap:wrap}.shipping-lines-alias-chips span{padding:4px 8px;border:1px solid rgba(155,196,19,.24);border-radius:6px;background:#9bc4131a;color:#4e6900;font-size:12px;font-weight:760}.shipping-lines-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.shipping-lines-row-actions button,.shipping-lines-dialog header button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789}.shipping-lines-row-actions button:hover,.shipping-lines-dialog header button:hover{border-color:#9bc413;color:#5f7f00}.shipping-lines-empty{display:grid;justify-items:center;gap:8px;padding:34px 20px;color:#8a96a8;font-size:13px}.shipping-lines-empty svg{color:#6a8e0a}.shipping-lines-empty strong{color:#1a2332}.shipping-lines-dialog-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#1a233261}.shipping-lines-dialog{display:grid;gap:16px;width:min(540px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow-y:auto;padding:18px;border:1px solid #d8dce4;border-radius:8px;background:#fff;box-shadow:0 20px 50px #1a233233}.shipping-lines-dialog header,.shipping-lines-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.shipping-lines-dialog header span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.shipping-lines-dialog h2{margin:2px 0 0;color:#1a2332;font-size:18px;font-weight:850}.shipping-lines-dialog-form{display:grid;gap:12px}.shipping-lines-dialog-form label{display:grid;gap:5px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.shipping-lines-dialog-form input,.shipping-lines-dialog-form textarea{width:100%;padding:8px 10px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:13px}.shipping-lines-dialog-form input{min-height:36px}.shipping-lines-dialog-form textarea{min-height:150px;resize:vertical}.company-admin-root,.notification-admin-root,.traffic-cameras-root,.camera-admin-root{display:flex;height:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#f4f6f1}.company-admin-header,.notification-admin-header,.traffic-cameras-header,.camera-admin-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px;border-bottom:1px solid #e2e6ed;background:#fff}.company-admin-header>div>span,.notification-admin-header span,.traffic-cameras-header span,.camera-admin-header span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.company-admin-header h1,.notification-admin-header h1,.traffic-cameras-header h1,.camera-admin-header h1{margin:2px 0 0;color:#1a2332;font-size:23px;font-weight:850}.company-admin-header p,.notification-admin-header p,.traffic-cameras-header p,.camera-admin-header p{margin:3px 0 0;color:#6b7789;font-size:13px}.company-admin-header section,.company-admin-kpis article,.company-admin-invite,.company-admin-users,.notification-panel,.notification-preview-panel,.traffic-camera-card,.camera-admin-editor{border:1px solid #e2e6ed;border-radius:8px;background:#fff}.company-admin-header section{display:flex;align-items:center;gap:9px;padding:10px 13px;color:#6a8e0a;font-size:13px;font-weight:850}.company-admin-kpis{display:grid;flex-shrink:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px 22px;border-bottom:1px solid #e2e6ed;background:#fbfcf7}.company-admin-kpis article{display:grid;gap:4px;padding:12px}.company-admin-kpis strong{color:#1a2332;font-size:22px;line-height:1}.company-admin-kpis span{color:#8a96a8;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.company-admin-layout{display:grid;flex:1;grid-template-columns:330px minmax(0,1fr);gap:16px;min-height:0;overflow:hidden;padding:16px}.company-admin-invite,.company-admin-users,.notification-builder,.camera-admin-editor{min-width:0;min-height:0}.company-admin-invite{display:grid;gap:12px;align-content:start;padding:14px}.company-admin-panel-title,.notification-panel-title{display:flex;align-items:center;gap:8px;min-width:0}.company-admin-panel-title strong,.notification-panel-title strong{color:#1a2332;font-size:14px;font-weight:850}.company-admin-invite label,.notification-form-grid label,.camera-admin-form label{display:grid;gap:4px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.company-admin-invite input,.company-admin-invite select,.notification-form-grid input,.notification-form-grid select,.camera-admin-form input,.camera-admin-form select,.camera-admin-form textarea{width:100%;min-height:36px;padding:8px 10px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#1a2332;font-size:13px}.company-admin-invite button,.notification-admin-header button,.notification-preview-panel button,.traffic-cameras-header button,.camera-admin-header button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 14px;border:1px solid #9bc413;border-radius:6px;background:#9bc413;color:#fff;font-size:12px;font-weight:850}.company-admin-users{display:flex;flex-direction:column;overflow:hidden}.company-admin-users-toolbar{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-bottom:1px solid #e2e6ed}.company-admin-search{position:relative;display:flex;align-items:center;min-width:260px}.company-admin-search svg{position:absolute;left:10px;color:#8a96a8}.company-admin-search input{width:100%;min-height:34px;padding:7px 10px 7px 34px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:13px}.company-admin-table-scroll,.camera-admin-list,.notification-list{min-height:0;overflow-y:auto}.company-admin-table{width:100%;min-width:820px;border-collapse:collapse;font-size:13px}.company-admin-table th,.company-admin-table td{padding:10px;border-bottom:1px solid #f0f1f3;text-align:left}.company-admin-table th{color:#6b7789;font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.company-admin-table td span{display:inline-flex;align-items:center;gap:6px;color:#6b7789}.company-admin-table select{min-height:30px;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#1a2332}.company-admin-footnote,.camera-admin-savebar{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:7px;padding:10px 22px;border-top:1px solid #e2e6ed;background:#fff;color:#6a8e0a;font-size:12px;font-weight:850}.notification-admin-layout,.camera-admin-layout{display:grid;flex:1;grid-template-columns:320px minmax(0,1fr);min-height:0;overflow:hidden}.notification-list,.camera-admin-list{display:flex;min-width:0;flex-direction:column;gap:8px;padding:14px;border-right:1px solid #e2e6ed;background:#fff}.notification-list-summary{display:grid;gap:2px;padding:12px;border:1px solid rgba(155,196,19,.35);border-radius:8px;background:#9bc4131a}.notification-list-summary strong{color:#1a2332;font-size:24px}.notification-list-summary span{color:#6a8e0a;font-size:11px;font-weight:850;text-transform:uppercase}.notification-list button,.camera-admin-list button{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;text-align:left}.notification-list button.active,.camera-admin-list button.active{border-color:#9bc413;background:#9bc41314;box-shadow:inset 3px 0 #9bc413}.notification-list button span{color:#6a8e0a;font-size:10px;font-weight:850;text-transform:uppercase}.notification-list button strong{overflow:hidden;color:#1a2332;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.notification-list button em{color:#8a96a8;font-size:11px;font-style:normal}.notification-builder{display:grid;gap:14px;align-content:start;overflow-y:auto;padding:16px}.notification-panel{display:grid;gap:14px;padding:14px}.notification-panel-title span{margin-left:auto;color:#8a96a8;font-size:11px}.notification-delivery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.notification-delivery-grid button{display:grid;gap:5px;min-height:104px;padding:12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#1a2332;text-align:left}.notification-delivery-grid button.active{border-color:#9bc413;background:#9bc4131a}.notification-delivery-grid span{color:#8a96a8;font-size:12px}.notification-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.notification-editor-panel{min-height:360px}.tinymce-shell{display:grid;min-height:300px;border:1px solid #d8dce4;border-radius:8px;overflow:hidden}.tinymce-toolbar{display:flex;gap:4px;padding:8px;border-bottom:1px solid #d8dce4;background:#f8f9fb;flex-wrap:wrap}.tinymce-toolbar button{min-height:28px;padding:0 9px;border:1px solid #d8dce4;border-radius:5px;background:#fff;color:#6b7789;font-size:12px;font-weight:800}.tinymce-shell textarea{min-height:260px;padding:14px;border:0;resize:vertical;color:#1a2332;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px;line-height:1.5}.notification-preview-panel{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px}.notification-preview-panel section{min-width:0}.notification-preview-panel h2{margin:0 0 6px;color:#1a2332;font-size:16px}.notification-preview-panel p{margin:0;color:#6b7789}.traffic-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-height:0;overflow-y:auto;padding:16px}.traffic-camera-groups{display:grid;align-content:start;gap:16px;min-height:0;overflow-y:auto;padding:16px}.traffic-camera-group{display:grid;gap:10px;min-width:0}.traffic-camera-group-header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.traffic-camera-group-header span{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.traffic-camera-group-header h2{margin:2px 0 0;color:#1a2332;font-size:18px;font-weight:850}.traffic-camera-carousel-actions{display:inline-flex;align-items:center;gap:7px}.traffic-camera-carousel-actions button,.traffic-camera-fullscreen header button,.traffic-camera-fullscreen main>button{display:inline-grid;place-items:center;border:1px solid #dfe5da;background:#fff;color:#506070;cursor:pointer}.traffic-camera-carousel-actions button{width:30px;height:30px;border-radius:8px}.traffic-camera-carousel-actions button:hover{border-color:#9bc413;color:#6a8e0a}.traffic-camera-carousel-actions>span{min-width:44px;color:#6b7789;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700;text-align:center}.traffic-camera-thumbs{display:flex;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px}.traffic-camera-thumbs button{display:grid;grid-template-columns:58px minmax(110px,1fr);align-items:center;gap:9px;min-width:210px;padding:5px 9px 5px 5px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#334052;text-align:left;cursor:pointer}.traffic-camera-thumbs button.active{border-color:#9bc4139e;background:#9bc41314}.traffic-camera-thumbs img,.traffic-camera-thumbs svg{width:58px;height:36px;border-radius:6px;background:#eef1ea;object-fit:cover}.traffic-camera-thumbs svg{padding:9px;color:#6a8e0a}.traffic-camera-thumbs span{overflow:hidden;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.traffic-camera-card{display:grid;min-width:0;overflow:hidden}.traffic-camera-frame,.camera-admin-preview{position:relative;display:grid;min-height:280px;place-items:center;overflow:hidden;background:linear-gradient(135deg,#1a2332d6,#596a00c7),repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 70px);color:#fff}.traffic-camera-frame{width:100%;border:0;cursor:zoom-in;text-align:inherit}.traffic-camera-frame:before,.camera-admin-preview:before{content:"";position:absolute;inset:auto 0 44px;height:74px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:skewY(-5deg)}.traffic-camera-frame>div,.camera-admin-preview>div{position:relative;z-index:1;display:grid;justify-items:center;gap:8px;text-align:center}.traffic-camera-image,.camera-admin-preview-image{position:absolute;inset:0;width:100%;height:100%;min-height:inherit;object-fit:cover}.traffic-camera-frame strong,.camera-admin-preview strong{font-size:22px}.traffic-camera-frame span{padding:3px 9px;border-radius:999px;background:#9bc41338;color:#fff;font-size:11px;font-weight:850}.traffic-camera-frame p{position:absolute;right:12px;bottom:10px;margin:0;color:#ffffffd1;font-size:12px}.traffic-camera-frame em{position:absolute;top:10px;right:10px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:6px;background:#1a2332a8;color:#ffffffe6;font-size:11px;font-style:normal;font-weight:850;opacity:0;transition:opacity .14s ease}.traffic-camera-frame:hover em,.traffic-camera-frame:focus-visible em{opacity:1}.traffic-camera-card section{display:grid;gap:8px;padding:14px}.traffic-camera-card section>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.traffic-camera-card h2{margin:0;color:#1a2332;font-size:16px}.traffic-camera-card p{margin:0;color:#6b7789;font-size:13px}.traffic-camera-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#8a96a8;font-size:12px}.traffic-camera-card a{display:inline-flex;align-items:center;gap:5px;color:#6a8e0a;font-weight:850;text-decoration:none}.traffic-camera-status,.camera-admin-list small{padding:2px 7px;border-radius:4px;font-size:10px;font-weight:850;text-transform:uppercase}.traffic-camera-status.online,.camera-admin-list small.online{background:#9bc41321;color:#6a8e0a}.traffic-camera-status.offline,.camera-admin-list small.offline{background:#dc262612;color:#dc2626}.traffic-camera-status.maintenance,.camera-admin-list small.maintenance{background:#b453091a;color:#b45309}.traffic-camera-empty{display:grid;grid-column:1 / -1;place-items:center;align-content:center;gap:8px;min-height:360px;color:#6b7789;text-align:center}.traffic-camera-empty.compact{min-height:180px;padding:18px}.traffic-camera-empty.compact h2{margin:0;font-size:14px}.traffic-camera-fullscreen{position:fixed;inset:0;z-index:1400;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#0d141f;color:#fff}.traffic-camera-fullscreen header,.traffic-camera-fullscreen footer{position:relative;z-index:2;display:flex;align-items:center;gap:14px;padding:14px 18px;background:#0d141fd1}.traffic-camera-fullscreen header{justify-content:space-between}.traffic-camera-fullscreen header div{display:grid;gap:2px}.traffic-camera-fullscreen header span{color:#ffffffa8;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.traffic-camera-fullscreen header strong{font-size:18px}.traffic-camera-fullscreen header button{width:34px;height:34px;border-color:#ffffff2e;border-radius:8px;background:#ffffff14;color:#fff}.traffic-camera-fullscreen main{position:relative;display:grid;min-width:0;min-height:0;place-items:center;overflow:hidden}.traffic-camera-fullscreen main img{width:100%;height:100%;object-fit:contain}.traffic-camera-fullscreen main>button{position:absolute;top:50%;width:44px;height:58px;transform:translateY(-50%);border-color:#ffffff2e;border-radius:10px;background:#0d141fb3;color:#fff}.traffic-camera-fullscreen main>button:hover,.traffic-camera-fullscreen header button:hover{background:#9bc4133d}.traffic-camera-fullscreen main>button.previous{left:16px}.traffic-camera-fullscreen main>button.next{right:16px}.traffic-camera-fullscreen footer{justify-content:space-between;color:#ffffffb8;font-size:12px}.traffic-camera-fullscreen footer>div{display:flex;gap:6px}.traffic-camera-fullscreen footer>div button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#ffffff52}.traffic-camera-fullscreen footer>div button.active{background:#9bc413}.traffic-camera-fullscreen-empty{display:grid;place-items:center;gap:9px;color:#ffffffc7}.camera-admin-list button{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.camera-admin-list button span{display:grid;min-width:0;gap:2px}.camera-admin-list strong,.camera-admin-list em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-admin-list strong{color:#1a2332;font-size:13px}.camera-admin-list em{color:#8a96a8;font-size:11px;font-style:normal}.camera-admin-editor{display:grid;grid-template-rows:300px auto auto;overflow-y:auto;margin:16px}.camera-admin-preview{min-height:300px}.camera-admin-preview span{max-width:min(720px,80vw);overflow:hidden;color:#ffffffbf;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.camera-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.camera-admin-form label.wide{grid-column:1 / -1}.camera-admin-form textarea{min-height:86px;resize:vertical}.camera-admin-check{display:flex!important;align-items:center;flex-direction:row!important;gap:8px!important;color:#1a2332!important;font-size:13px!important;letter-spacing:0!important;text-transform:none!important}.camera-admin-check input{width:15px!important;min-height:15px!important;accent-color:#9bc413}@keyframes iaSpin{to{transform:rotate(360deg)}}.spinning{animation:iaSpin .7s linear infinite}@media(max-width:980px){.ia-toolbar,.ia-bulk-bar,.ia-section-header,.ia-vessels-strip{padding-inline:16px}.ia-bulk-bar{flex-direction:column}.ia-search-box{flex-basis:auto}.ia-set-panel{position:absolute;top:0;left:0;bottom:0;z-index:25;width:min(420px,96vw)}.epa-toolbar,.epa-filter-bar,.epa-section-header,.epa-vessels-strip{padding-inline:16px}.epa-filter-bar{flex-direction:column}.epa-search-box,.epa-filter-controls{flex-basis:auto;width:100%;min-width:0}.epa-form-grid,.epa-additional-grid,.epa-confirm-grid,.epa-form-workspace{grid-template-columns:1fr}.epa-form-aside{border-top:1px solid #e2e6ed;border-left:0}.epa-readonly-grid{grid-template-columns:1fr}.epa-field.wide,.epa-readonly-grid.wide,.epa-seal-editor,.epa-toggle-card.wide{grid-column:auto}.epa-oversize-grid,.epa-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.epa-lookup-strip,.epa-lookup-strip.two,.epa-response-summary dl{grid-template-columns:1fr}.epa-modal-footer{align-items:stretch;flex-direction:column}.epa-modal-footer>div:last-child{justify-content:flex-end;flex-wrap:wrap}.reports-admin-header,.reports-hero,.reports-runner-header{align-items:stretch;flex-direction:column}.reports-admin-stats,.reports-admin-layout,.reports-layout,.reports-builder-grid,.reports-access-grid,.reports-form-grid,.reports-n4-xml-panel,.reports-runtime-filter-grid{grid-template-columns:1fr}.reports-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-admin-list,.reports-library{border-right:0;border-bottom:1px solid #e2e6ed}.reports-admin-layout,.reports-layout{overflow-y:auto}.reports-form-grid label.wide{grid-column:auto}.gate-slot-admin-header{align-items:stretch;flex-direction:column}.gate-slot-admin-header>div:last-child{align-items:stretch}.gate-slot-kpis,.gate-slot-admin-layout,.gate-slot-rule-grid{grid-template-columns:1fr}.gate-slot-gate-list{border-right:0;border-bottom:1px solid #e2e6ed}.gate-slot-admin-layout{overflow-y:auto}.gate-slot-rule-summary{grid-column:auto}.admin-appointments-header,.admin-appointments-filters,.admin-appointments-filter-bar{align-items:stretch;flex-direction:column}.admin-appointments-filter-bar .admin-appointments-search,.admin-appointments-filter-bar .admin-appointments-selects label,.admin-appointments-filter-bar .admin-appointments-terminal-toggle{width:100%;max-width:none}.admin-appointments-filter-bar .admin-appointments-selects{display:flex;align-items:stretch;flex-direction:column;gap:8px}.admin-appointments-layout{grid-template-columns:1fr}.admin-appointments-timeline{border-right:0;border-bottom:1px solid #e2e6ed}.admin-appointments-layout{overflow-y:auto}.admin-appointments-search{min-width:0}.company-admin-header,.notification-admin-header,.shipping-lines-admin-header,.traffic-cameras-header,.camera-admin-header,.notification-preview-panel{align-items:stretch;flex-direction:column}.company-admin-kpis,.company-admin-layout,.shipping-lines-admin-stats,.shipping-lines-admin-layout,.shipping-lines-form-grid,.notification-admin-layout,.camera-admin-layout,.notification-form-grid,.notification-delivery-grid,.traffic-camera-grid,.camera-admin-form{grid-template-columns:1fr}.traffic-camera-groups{padding:12px}.traffic-camera-group-header{align-items:stretch;flex-direction:column;gap:8px}.traffic-camera-carousel-actions{justify-content:space-between}.traffic-camera-thumbs button{min-width:180px}.traffic-camera-fullscreen header,.traffic-camera-fullscreen footer{padding:12px}.traffic-camera-fullscreen main>button{width:38px;height:52px}.notification-list,.shipping-lines-list-panel,.camera-admin-list{border-right:0;border-bottom:1px solid #e2e6ed}.notification-admin-layout,.camera-admin-layout,.shipping-lines-admin-layout,.company-admin-layout{overflow-y:auto}.shipping-lines-header-actions{align-items:stretch;justify-content:stretch}.shipping-lines-header-actions .shipping-lines-search{width:100%}.shipping-lines-table-panel{overflow-x:auto}.shipping-lines-table{min-width:620px}.company-admin-search{min-width:0}.notification-popover{right:-72px;width:min(380px,calc(100vw - 24px))}}.port-admin-shell .pa-page{display:flex;height:100%;min-height:0;flex-direction:column;overflow-y:auto;padding:22px 24px 40px;background:#f4f6f1}.port-admin-shell .pa-page-header{align-items:flex-end;margin-bottom:16px;padding:0;border:0;background:transparent}.port-admin-shell .rpm-root{overflow:hidden;padding:0}.port-admin-shell .pa-side-panel.camera-admin-list,.port-admin-shell .pa-side-panel.notification-list{display:block;padding:0;border:1px solid #e7ebe3;border-radius:14px;background:#fff;overflow:hidden}.port-admin-shell .pa-side-panel .pa-side-list{border:0;background:transparent}.port-admin-shell .pa-list-row,.port-admin-shell .pa-list-row.notification,.port-admin-shell .pa-list-row.active{box-shadow:none}.port-admin-shell .camera-admin-preview.pa-camera-preview{display:grid;min-height:auto}.port-admin-shell .reports-admin-root{display:flex;gap:0;overflow-y:auto;padding:22px 24px 40px}.port-admin-shell .reports-admin-header{margin-bottom:16px}.port-admin-shell .reports-admin-layout{display:grid;grid-template-columns:272px minmax(0,1fr);gap:14px;min-height:0;overflow:visible;padding:0 0 68px}.port-admin-shell .reports-admin-stats{display:flex;grid-template-columns:none;gap:14px;padding:0;border:0;background:transparent}.port-admin-shell .reports-admin-list{display:block;border:1px solid #e7ebe3;border-radius:14px;background:#fff;overflow:hidden}.port-admin-shell .reports-builder{display:flex;gap:12px;overflow:visible;padding:0}.port-admin-shell .reports-builder-panel,.port-admin-shell .reports-admin-list{border-color:#e7ebe3;border-radius:14px}.port-admin-shell .admin-appointments-root{display:flex;gap:0;overflow-y:auto;padding:22px 24px 40px}.port-admin-shell .admin-appointments-header{margin-bottom:16px}.port-admin-shell .admin-appointments-filters{align-items:flex-end;margin-bottom:12px;padding:0;border:0;background:transparent}.port-admin-shell .admin-appointments-layout.single{display:block;overflow:visible;padding:0}.port-admin-shell .admin-appointments-table-panel{border:1px solid #e7ebe3;border-radius:14px;background:#fff;overflow:hidden}.port-admin-shell .admin-appointments-table-scroll{background:#fff}.port-admin-shell .admin-appointments-fab{display:none}.admin-appointments-header .pa-eyebrow{display:inline-flex;align-items:center;gap:6px}.admin-appointments-filter-bar{display:flex;flex-shrink:0;align-items:flex-end;gap:12px;margin-bottom:12px;padding:0;border:0;background:transparent;flex-wrap:wrap}.admin-appointments-filter-bar .admin-appointments-error{align-self:center}.admin-appointments-filter-bar .admin-appointments-date-group{gap:10px}.admin-appointments-filter-bar .admin-appointments-date-group label{display:block}.admin-appointments-filter-bar .admin-appointments-date-picker{display:block;position:relative}.admin-appointments-filter-bar .admin-appointments-date-group label>span,.admin-appointments-filter-bar .admin-appointments-search>span,.admin-appointments-filter-bar .admin-appointments-selects label>span{display:block;margin-bottom:5px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-appointments-filter-bar .admin-appointments-date-group>label>input,.admin-appointments-filter-bar .admin-appointments-search input,.admin-appointments-filter-bar .admin-appointments-selects select{box-sizing:border-box;height:36px;min-height:36px;border:1px solid #e2e6ed;border-radius:10px;background-color:#fff;color:#1a2332;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:12px;outline:none}.admin-appointments-filter-bar .admin-appointments-date-group>label>input{width:142px;padding:0 10px;cursor:pointer}.admin-appointments-filter-bar .admin-appointments-date-group>label>input:focus,.admin-appointments-filter-bar .admin-appointments-search input:focus,.admin-appointments-filter-bar .admin-appointments-selects select:focus{border-color:#9bc413}.admin-appointments-filter-bar .admin-appointments-date-popover{position:absolute;z-index:80;top:calc(100% + 8px);left:0;width:284px;padding:8px;border:1px solid #e7ebe3;border-radius:12px;background:#fff;box-shadow:0 18px 44px #141e192e}.admin-appointments-filter-bar .admin-appointments-search{display:block;flex:1 1 230px;max-width:340px;min-width:230px}.admin-appointments-filter-bar .admin-appointments-search>div{position:relative}.admin-appointments-filter-bar .admin-appointments-search svg{top:11px;left:11px}.admin-appointments-filter-bar .admin-appointments-search input{width:100%;padding:0 32px}.admin-appointments-filter-bar .admin-appointments-search button{position:absolute;top:7px;right:7px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:#8a96a8;cursor:pointer}.admin-appointments-filter-bar .admin-appointments-selects{display:contents}.admin-appointments-filter-bar .admin-appointments-selects label{display:block}.admin-appointments-filter-bar .admin-appointments-selects select{appearance:none;-webkit-appearance:none;min-width:128px;padding:0 28px 0 11px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6"><path d="M1 1l4 4 4-4" stroke="%239aa6b6" fill="none" stroke-width="1.6"/></svg>');background-position:right 9px center;background-repeat:no-repeat}.admin-appointments-filter-bar .admin-appointments-terminal-toggle{height:36px;min-height:36px;padding:0 12px;border-color:#e2e6ed;border-radius:999px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:750}.admin-appointments-filter-bar .admin-appointments-gate-filter{width:100%;min-width:152px;height:36px;border-radius:10px;background:#fff;color:#1a2332;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:12px}.admin-appointments-filter-bar .admin-appointments-gate-filter .MuiSelect-select{padding:8px 32px 8px 11px}.admin-appointments-filter-bar .admin-appointments-gate-filter .MuiOutlinedInput-notchedOutline{border-color:#e2e6ed}.admin-appointments-filter-bar .admin-appointments-gate-filter.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#9bc413;border-width:1px}.admin-appointments-filter-bar .admin-appointments-terminal-toggle.active{border-color:#9bc4136b;background:#9bc4131f;color:#6a8e0a}.admin-appointments-design-table .admin-appointments-panel-title{padding:11px 16px;border-bottom:1px solid #eef1ea;background:#fbfcf7;flex-wrap:wrap}.admin-appointments-design-table .admin-appointments-panel-title>span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:19px;margin-left:0;padding:0 6px;border-radius:999px;background:#9bc41329;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:750}.admin-appointments-design-table .admin-appointments-alert-pills{margin-left:auto}.admin-appointments-design-table .admin-appointments-alert-pills button{min-height:28px;padding:0 11px;border-color:#e2e6ed;border-radius:999px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:750}.admin-appointments-design-table .admin-appointments-alert-pills button.active{border-color:#9bc4136b;background:#9bc4131f;color:#6a8e0a}.admin-appointments-grid-scroll{min-height:0;overflow-x:auto}.admin-appointments-grid-shell{min-width:1370px}.admin-appointments-grid-head,.admin-appointments-grid-main{display:grid;grid-template-columns:72px 94px 116px 104px 82px 58px 58px minmax(150px,1.2fr) 88px 124px minmax(165px,1fr) 144px;gap:0 10px;align-items:center}.admin-appointments-grid-head{padding:9px 16px 7px;color:#8a96a8;font-size:9.5px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.admin-appointments-grid-head span:last-child{text-align:right}.admin-appointments-grid-body{display:flex;flex-direction:column;gap:5px;padding:0 10px 12px}.admin-appointments-grid-row{border:1px solid #eef1ea;border-radius:10px;background:#fff}.admin-appointments-grid-row[title]{cursor:pointer}.admin-appointments-grid-row.terminal{background:#f4f6f1;opacity:.72}.admin-appointments-grid-main{min-height:56px;padding:7px 6px}.admin-appointments-grid-row .admin-appointments-alert{width:fit-content;min-width:0;min-height:0;gap:5px;padding:2px 8px;border:0;border-radius:5px;background:#9bc4131f;color:#6a8e0a;font-size:10.5px;font-weight:750}.admin-appointments-grid-row .admin-appointments-alert>span{width:6px;height:6px;border-radius:50%;background:currentColor}.admin-appointments-grid-row .admin-appointments-alert.warning{background:#b453091a;color:#b45309}.admin-appointments-grid-row .admin-appointments-alert.severe{background:#dc262614;color:#dc2626}.admin-appointments-grid-row .admin-appointments-alert.minor{background:#2563eb14;color:#2563eb}.admin-appointments-grid-row .admin-appointments-status,.admin-appointments-grid-row .admin-appointments-type{width:fit-content;min-height:0;padding:2px 8px;border-radius:5px;font-size:10.5px;font-weight:750;text-transform:none}.admin-appointments-number-cell,.admin-appointments-company-cell,.admin-appointments-reference-cell{min-width:0}.admin-appointments-number-cell strong,.admin-appointments-reference-cell strong{display:block;overflow:hidden;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.admin-appointments-number-cell .admin-appointments-pin-button{width:auto;height:auto;min-height:0;margin-top:1px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#8a96a8;font-size:10.5px}.admin-appointments-number-cell .admin-appointments-pin-button.visible{width:auto;border:0;background:transparent;color:#6a8e0a}.admin-appointments-gate-cell{display:flex;min-width:0;align-items:center;gap:6px}.admin-appointments-gate-cell span{overflow:hidden;color:#1a2332;font-size:12px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.admin-appointments-gate-cell em{flex-shrink:0;padding:1px 6px;border-radius:5px;background:#eef1ea;color:#6b7789;font-size:9.5px;font-style:normal;font-weight:850;letter-spacing:.04em}.admin-appointments-date-cell span{display:block;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.admin-appointments-date-cell small{color:#8a96a8;font-size:10px;font-weight:650}.admin-appointments-grid-row .admin-appointments-zone{min-width:0;min-height:0;padding:2px 7px;border:0;border-radius:6px;background:#eef1ea;color:#4b5563;font-size:11.5px}.admin-appointments-company-cell strong{display:block;color:#1a2332;font-size:12px}.admin-appointments-company-cell span,.admin-appointments-reference-cell span{display:block;overflow:hidden;color:#8a96a8;font-size:10.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.admin-appointments-rego{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:650}.admin-appointments-rego.muted{color:#b45309}.admin-appointments-grid-row .admin-appointments-actions{justify-content:flex-end;gap:6px;min-width:0}.admin-appointments-grid-row .admin-appointments-billable-action{min-width:0;min-height:26px;height:26px;padding:0 8px;border-radius:7px;font-size:10.5px}.admin-appointments-grid-row .admin-appointments-icon-action{width:28px;min-height:26px;height:26px;border-color:#e2e6ed;border-radius:7px;background:#fff;color:#6b7789}.admin-appointments-grid-row .admin-appointments-icon-action:disabled{color:#b0b8c4}.admin-appointments-grid-row .admin-appointments-cancel-action:not(:disabled){border-color:#fecaca;color:#dc2626}.admin-appointments-grid-row .admin-appointments-cancel-action:not(:disabled):hover{background:#fef2f2}.admin-appointments-alert-details{display:flex;flex-direction:column;gap:5px;margin:0 10px;padding:8px 2px 10px;border-top:1px dashed #e7ebe3}.admin-appointments-alert-details div{display:flex;align-items:center;gap:7px;color:#2563eb;font-size:11.5px;font-weight:650}.admin-appointments-alert-details div.warning{color:#b45309}.admin-appointments-alert-details div.severe{color:#dc2626}.admin-appointments-alert-details span{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:currentColor}.admin-appointments-grid-body .admin-appointments-empty{display:flex;align-items:center;flex-direction:column;gap:8px;padding:38px 0;color:#8a96a8!important;font-size:12.5px;font-weight:650}@media(max-width:1100px){.port-admin-shell .pa-management-grid,.port-admin-shell .reports-admin-layout,.port-admin-shell .pa-editor-grid,.port-admin-shell .pa-card-grid.two,.port-admin-shell .reports-builder-grid,.port-admin-shell .reports-access-grid,.port-admin-shell .pa-form-grid.two,.port-admin-shell .reports-form-grid{grid-template-columns:1fr}}.company-admin-shell .company-admin-root{display:flex;width:100%;height:100%;min-width:0;min-height:0;flex-direction:column;overflow-y:auto;padding:22px 24px 40px;background:#f4f6f1;color:#1a2332}.company-admin-shell .company-admin-header{align-items:flex-end;margin-bottom:16px;padding:0;border:0;background:transparent;flex-wrap:wrap}.company-admin-shell .company-admin-header>div:first-child{min-width:min(560px,100%)}.company-admin-shell .company-admin-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#6a8e0a;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.company-admin-shell .company-admin-header h1{margin:5px 0 0;color:#1a2332;font-size:27px;font-weight:800;letter-spacing:-.015em}.company-admin-shell .company-admin-header p{margin:3px 0 0;color:#6b7789;font-size:13px}.company-admin-shell .company-admin-header-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.company-admin-shell .company-admin-refresh{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;min-height:34px;padding:0 12px;border:1px solid #dfe5d7;border-radius:9px;background:#fff;color:#4b5563;font-size:12px;font-weight:800;cursor:pointer}.company-admin-shell .company-admin-refresh:disabled{opacity:.58;cursor:default}.company-admin-shell .company-admin-header-stats{display:flex;align-items:center;gap:14px;padding:0;border:0;background:transparent}.company-admin-shell .company-admin-header-stats article{display:grid;gap:2px;min-width:52px;padding:0;border:0;background:transparent;text-align:right}.company-admin-shell .company-admin-header-stats strong{color:#1a2332;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:19px;font-weight:700;line-height:1.1}.company-admin-shell .company-admin-header-stats strong.is-warning{color:#b45309}.company-admin-shell .company-admin-header-stats span{color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.company-admin-shell .company-admin-company-pill{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid #e7ebe3;border-radius:10px;background:#fff;color:#6a8e0a}.company-admin-shell .company-admin-company-pill strong{color:#1a2332;font-size:12.5px;font-weight:800}.company-admin-shell .company-admin-layout{display:grid;flex:initial;grid-template-columns:288px minmax(0,1fr);gap:14px;align-items:start;min-height:initial;overflow:visible;padding:0}.company-admin-shell .company-admin-layout-single{grid-template-columns:1fr}.company-admin-shell .company-admin-invite,.company-admin-shell .company-admin-users{min-width:0;border:1px solid #e7ebe3;border-radius:14px;background:#fff;overflow:hidden}.company-admin-shell .company-admin-invite{display:block;padding:0}.company-admin-shell .company-admin-invite>.company-admin-panel-title,.company-admin-shell .company-admin-users-toolbar{padding:10px 15px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.company-admin-shell .company-admin-panel-title{display:flex;align-items:center;gap:9px;min-width:0;color:#6a8e0a}.company-admin-shell .company-admin-panel-title strong{color:#1a2332;font-size:13px;font-weight:800}.company-admin-shell .company-admin-invite-body{display:flex;flex-direction:column;gap:11px;padding:13px 15px}.company-admin-shell .company-admin-invite label,.company-admin-shell .company-admin-field{display:grid;gap:5px;color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.company-admin-shell .company-admin-invite input{width:100%;height:36px;min-height:36px;padding:0 11px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#1a2332;font-size:12.5px;font-weight:600;outline:none}.company-admin-shell .company-admin-invite input:focus{border-color:#9bc413}.company-admin-shell .company-admin-invite input.is-invalid{border-color:#e0555580}.company-admin-shell .company-admin-role-toggle{display:flex;gap:6px}.company-admin-shell .company-admin-role-toggle button{flex:1;min-height:34px;padding:0 8px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:700;cursor:pointer}.company-admin-shell .company-admin-role-toggle button.active{border-color:#9bc41380;background:#9bc41324;color:#6a8e0a}.company-admin-shell .company-admin-submit{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;min-height:38px;padding:0 14px;border:0;border-radius:9px;background:#9bc413;color:#fff;font-size:12.5px;font-weight:700;box-shadow:0 3px 8px #9bc41359;cursor:pointer}.company-admin-shell .company-admin-submit:disabled{background:#c9d0da;box-shadow:none;cursor:default}.company-admin-shell .company-admin-note{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid #eef1ea;border-radius:10px;background:#fbfcf9;color:#6b7789;font-size:11px;font-weight:600;line-height:1.5}.company-admin-shell .company-admin-note svg{flex-shrink:0;margin-top:1px;color:#6a8e0a}.company-admin-shell .company-admin-users{display:flex;flex-direction:column}.company-admin-shell .company-admin-users-toolbar{display:flex;align-items:center;gap:10px;justify-content:flex-start;flex-wrap:wrap;padding:11px 16px}.company-admin-shell .company-admin-users-toolbar .company-admin-panel-title{flex:0 0 auto}.company-admin-shell .company-admin-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:19px;padding:0 6px;border-radius:999px;background:#9bc41329;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:700}.company-admin-shell .company-admin-search{position:relative;display:flex;align-items:center;width:200px;min-width:200px;margin-left:auto}.company-admin-shell .company-admin-search svg{position:absolute;left:10px;color:#9aa6b6}.company-admin-shell .company-admin-search input{width:100%;height:32px;min-height:32px;padding:0 10px 0 30px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;color:#1a2332;font-size:12px;outline:none}.company-admin-shell .company-admin-search input:focus{border-color:#9bc413}.company-admin-shell .company-admin-table-scroll{min-height:0;overflow-x:auto;overflow-y:visible}.company-admin-shell .company-admin-table{display:block;width:100%;min-width:780px;border-collapse:initial;font-size:12.5px}.company-admin-shell .company-admin-grid-header,.company-admin-shell .company-admin-user-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(200px,1.4fr) 150px 130px 128px;gap:0 12px;align-items:center}.company-admin-shell .company-admin-grid-header{padding:9px 16px 7px;color:#8a96a8;font-size:9.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.company-admin-shell .company-admin-user-list{display:flex;flex-direction:column;gap:5px;padding:0 10px 12px}.company-admin-shell .company-admin-user-row{min-height:48px;padding:6px;border:1px solid #eef1ea;border-radius:10px;background:#fbfcf9}.company-admin-shell .company-admin-user-row.is-disabled{opacity:.62}.company-admin-shell .company-admin-user-name,.company-admin-shell .company-admin-user-email{display:flex;align-items:center;min-width:0;gap:9px}.company-admin-shell .company-admin-avatar{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#eef1ea;color:#6b7789;font-size:10.5px;font-weight:800}.company-admin-shell .company-admin-avatar.is-admin{background:#9bc4132e;color:#6a8e0a}.company-admin-shell .company-admin-user-name strong{min-width:0;overflow:hidden;color:#1a2332;font-size:12.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.company-admin-shell .company-admin-user-email{gap:6px;color:#6b7789}.company-admin-shell .company-admin-user-email svg{flex-shrink:0;color:#9aa6b6}.company-admin-shell .company-admin-user-email span{min-width:0;overflow:hidden;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.company-admin-shell .company-admin-grid-select{height:30px;min-height:30px;padding:0 24px 0 9px;border:1px solid #e2e6ed;border-radius:8px;background-color:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%239aa6b6' fill='none' stroke-width='1.6'/></svg>");background-position:right 8px center;background-repeat:no-repeat;color:#4b5563;font-size:11.5px;font-weight:700;outline:none;cursor:pointer;appearance:none}.company-admin-shell .company-admin-grid-select.is-admin-role,.company-admin-shell .company-admin-grid-select.is-status-active{border-color:#9bc41380;background-color:#9bc4131a;color:#6a8e0a}.company-admin-shell .company-admin-grid-select.is-status-pending{border-color:#f59e0b73;background-color:#f59e0b1a;color:#b45309}.company-admin-shell .company-admin-grid-select.is-status-disabled{border-color:#e2e6ed;background-color:#f3f5ef;color:#8a96a8}.company-admin-shell .company-admin-role-chip,.company-admin-shell .company-admin-status-chip{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:30px;padding:0 9px;overflow:hidden;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#4b5563;font-size:11.5px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.company-admin-shell .company-admin-role-chip.is-admin-role,.company-admin-shell .company-admin-status-chip.is-status-active{border-color:#9bc41380;background:#9bc4131a;color:#6a8e0a}.company-admin-shell .company-admin-status-chip.is-status-pending{border-color:#f59e0b73;background:#f59e0b1a;color:#b45309}.company-admin-shell .company-admin-status-chip.is-status-rejected,.company-admin-shell .company-admin-status-chip.is-status-disabled{border-color:#e2e6ed;background:#f3f5ef;color:#8a96a8}.company-admin-shell .company-admin-login-cell{display:grid;gap:2px}.company-admin-shell .company-admin-login-cell strong{color:#4b5563;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11.5px;font-weight:500}.company-admin-shell .company-admin-login-cell span{color:#8a96a8;font-size:10px;font-weight:600}.company-admin-shell .company-admin-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:38px 0;color:#8a96a8;font-size:12.5px;font-weight:600}.company-admin-shell .company-admin-denied{min-height:280px;justify-content:center;border:1px solid #e7ebe3;border-radius:14px;background:#fff}.company-admin-shell .company-admin-denied strong{color:#1a2332;font-size:15px}.company-admin-shell .company-admin-error{display:flex;align-items:center;gap:8px;margin:12px 16px 0;padding:10px 12px;border:1px solid rgba(224,85,85,.35);border-radius:10px;background:#e0555514;color:#9f2f2f;font-size:12px;font-weight:700}.company-admin-shell .company-admin-spin{animation:company-admin-spin .82s linear infinite}@keyframes company-admin-spin{to{transform:rotate(360deg)}}.company-admin-shell .company-admin-footnote{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid #eef1ea;background:#fbfcf7;color:#6b7789;font-size:11.5px;font-weight:600}.company-admin-shell .company-admin-footnote svg{color:#6a8e0a}.company-admin-shell .company-admin-toast{position:fixed;bottom:22px;left:50%;z-index:1200;display:flex;align-items:center;gap:8px;transform:translate(-50%);padding:10px 16px;border:1px solid rgba(155,196,19,.5);border-radius:11px;background:#f6fae7;color:#5d7d09;box-shadow:0 10px 28px #1a23322e;font-size:12.5px;font-weight:700}@media(max-width:1100px){.company-admin-shell .company-admin-layout{grid-template-columns:1fr}}@media(max-width:760px){.company-admin-shell .company-admin-root{padding:18px 16px 32px}.company-admin-shell .company-admin-header,.company-admin-shell .company-admin-header-actions,.company-admin-shell .company-admin-users-toolbar{align-items:stretch;flex-direction:column}.company-admin-shell .company-admin-header-stats{justify-content:space-between}.company-admin-shell .company-admin-header-stats article{text-align:left}.company-admin-shell .company-admin-search{width:100%;min-width:0;margin-left:0}}.rpx-root{display:flex;height:100%;min-width:0;min-height:0;flex-direction:column;overflow:hidden;background:#f4f6f1}.rpx-layout{display:grid;flex:1;min-height:0;grid-template-columns:300px minmax(0,1fr)}.rpx-library{display:flex;min-width:0;min-height:0;flex-direction:column;border-right:1px solid #e2e6ed;background:#fff}.rpx-library-head{display:grid;flex-shrink:0;gap:10px;padding:16px 14px 12px;border-bottom:1px solid #e2e6ed}.rpx-library-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.rpx-library-title h1{margin:0;color:#1a2332;font-size:17px;font-weight:850}.rpx-count{display:inline-flex;align-items:center;height:20px;padding:0 9px;border-radius:999px;background:#9bc41329;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;font-weight:800}.rpx-search{position:relative;display:flex;align-items:center}.rpx-search svg{position:absolute;left:10px;color:#8a96a8}.rpx-search input{width:100%;min-height:34px;padding:7px 10px 7px 33px;border:1px solid #d8dce4;border-radius:7px;background:#f8f9fb;color:#1a2332;font-size:12.5px}.rpx-search input:focus{border-color:#9bc413;outline:none}.rpx-chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.rpx-chips button{min-height:26px;padding:0 10px;border:1px solid #d8dce4;border-radius:999px;background:#fff;color:#6b7789;font-size:11.5px;font-weight:800;white-space:nowrap;cursor:pointer}.rpx-chips button.active{border-color:#9bc413;background:#9bc41321;color:#6a8e0a}.rpx-report-list{display:grid;flex:1;min-height:0;align-content:start;gap:8px;overflow-y:auto;padding:12px}.rpx-report-list>button{display:grid;min-width:0;gap:3px;padding:10px 12px;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#1a2332;text-align:left;cursor:pointer}.rpx-report-list>button:hover{border-color:#c6d495}.rpx-report-list>button.active{border-color:#9bc413;background:#9bc41312;box-shadow:inset 3px 0 #9bc413}.rpx-report-list strong{overflow:hidden;font-size:13.5px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.rpx-report-list em{overflow:hidden;color:#6b7789;font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.rpx-report-list small{overflow:hidden;margin-top:2px;color:#8a96a8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap}.rpx-list-empty{margin:0;padding:14px;border:1px dashed #d8dce4;border-radius:8px;color:#8a96a8;font-size:12px;text-align:center}.rpx-runner{display:flex;min-width:0;min-height:0;flex-direction:column;background:#fff}.rpx-runner-head{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 20px 14px;border-bottom:1px solid #e2e6ed}.rpx-eyebrow{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.rpx-runner-head h2{margin:2px 0 0;color:#1a2332;font-size:21px;font-weight:850}.rpx-runner-head p{margin:3px 0 0;color:#6b7789;font-size:12.5px}.rpx-ghost-button{display:inline-flex;flex-shrink:0;align-items:center;gap:7px;min-height:34px;padding:0 13px;border:1px solid #d8dce4;border-radius:8px;background:#fff;color:#6b7789;font-size:12px;font-weight:850;white-space:nowrap;cursor:pointer}.rpx-ghost-button:hover:not(:disabled){border-color:#9bc413;color:#6a8e0a}.rpx-ghost-button:disabled{color:#c7ced9;cursor:not-allowed}.rpx-querybar{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid #e2e6ed;background:#fbfcf7}.rpx-token{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 11px;border:1px solid #d8dce4;border-radius:8px;background:#fff}.rpx-token:focus-within{border-color:#9bc413;box-shadow:0 0 0 3px #9bc41329}.rpx-token-label{color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.rpx-token-label i{margin-left:2px;color:#6a8e0a;font-style:normal}.rpx-token-value{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600;white-space:nowrap}.rpx-token-trigger{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0;border:0;background:none;cursor:pointer}.rpx-token-trigger svg{color:#6a8e0a}.rpx-token select,.rpx-token input{min-height:32px;padding:0;border:0;background:transparent;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600;outline:none}.rpx-token input{width:13ch}.rpx-token input::placeholder{color:#b0b9c6;font-weight:500}.rpx-no-filters{color:#8a96a8;font-size:12px}.rpx-run-button{display:inline-flex;align-items:center;gap:7px;min-height:34px;margin-left:auto;padding:0 16px;border:1px solid #9bc413;border-radius:8px;background:#9bc413;color:#fff;font-size:12px;font-weight:850;white-space:nowrap;cursor:pointer}.rpx-run-button:hover:not(:disabled){background:#8db310}.rpx-run-button:disabled{opacity:.6;cursor:wait}.rpx-run-error{margin:10px 20px 0}.rpx-table-zone{flex:1;min-height:0;overflow:auto}.rpx-table-zone.is-running{opacity:.55;pointer-events:none}.rpx-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px}.rpx-table th{position:sticky;top:0;z-index:1;padding:9px 12px;border-bottom:1px solid #e2e6ed;background:#fff;color:#8a96a8;font-size:10.5px;font-weight:850;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap}.rpx-table th:first-child,.rpx-table td:first-child{padding-left:20px}.rpx-table td{padding:8px 12px;border-bottom:1px solid #f0f2f5;color:#26303f;white-space:nowrap}.rpx-table th.rpx-num,.rpx-table td.rpx-num{text-align:right}.rpx-table td.rpx-num{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-variant-numeric:tabular-nums}.rpx-table td.rpx-date{color:#3a4657;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px}.rpx-table tbody tr:hover td{background:#fafbf6}.rpx-empty-cell{padding:48px 20px;color:#8a96a8;text-align:center}.rpx-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#edf1f5;color:#5b6b80;font-size:10.5px;font-weight:850}.rpx-pill.good{background:#9bc41329;color:#6a8e0a}.rpx-pill.bad{background:#b4473a1f;color:#b4473a}.rpx-statusbar{display:flex;flex-shrink:0;align-items:center;gap:14px;padding:8px 20px;border-top:1px solid #e2e6ed;background:#fbfcf7;color:#6b7789;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.rpx-statusbar-rows{color:#1a2332;font-weight:700;white-space:nowrap}.rpx-statusbar-source{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpx-statusbar-run{margin-left:auto;white-space:nowrap}.rpx-root button:focus-visible{outline:2px solid #6a8e0a;outline-offset:1px}.rpx-datefield{position:relative}.rdp-pop{position:absolute;top:calc(100% + 8px);left:0;z-index:60;width:max-content;border:1px solid #d8dce4;border-radius:10px;background:#fff;box-shadow:0 14px 34px #1a233229;animation:rdp-in .13s ease}@keyframes rdp-in{0%{opacity:0;transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.rdp-pop{animation:none}}.rdp-pop-range{display:grid;grid-template-columns:122px minmax(0,1fr)}.rdp-presets{display:grid;align-content:start;gap:2px;padding:10px;border-right:1px solid #eef0f4;border-radius:10px 0 0 10px;background:#fbfcf7}.rdp-presets button{padding:6px 9px;border:0;border-radius:6px;background:transparent;color:#4a5568;font-size:12px;font-weight:750;text-align:left;white-space:nowrap;cursor:pointer}.rdp-presets button:hover{background:#f0f3e7;color:#1a2332}.rdp-presets button.active{background:#9bc41329;color:#5d7d09}.rdp-body{display:grid;gap:10px;padding:12px}.rdp-cal{display:grid;gap:8px}.rdp-cal-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}.rdp-cal-nav strong{color:#1a2332;font-size:13px;font-weight:850}.rdp-cal-nav button{display:inline-grid;width:26px;height:26px;place-items:center;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789;cursor:pointer}.rdp-cal-nav button:hover{border-color:#9bc413;color:#6a8e0a}.rdp-cal-grid{display:grid;grid-template-columns:repeat(7,34px);gap:2px}.rdp-cal-dow{display:grid;height:20px;place-items:center;color:#b0b9c6;font-size:9.5px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.rdp-cal-day{height:30px;border:0;border-radius:6px;background:transparent;color:#334052;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600;cursor:pointer}.rdp-cal-day:hover{background:#eef2e2}.rdp-cal-day.mid{border-radius:0;background:#9bc41326}.rdp-cal-day.edge{background:#9bc413;color:#fff;font-weight:700}.rdp-cal-day.today:not(.edge){box-shadow:inset 0 0 0 1px #9bc413}.rdp-foot{display:flex;align-items:center;gap:8px;padding-top:10px;border-top:1px solid #eef0f4}.rdp-foot>span{overflow:hidden;margin-right:auto;color:#6b7789;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.rdp-clear{padding:0;border:0;background:none;color:#8a96a8;font-size:12px;font-weight:750;cursor:pointer}.rdp-clear:hover{color:#b4473a}.rdp-done,.rdp-today{min-height:28px;padding:0 12px;border-radius:6px;font-size:11.5px;font-weight:850;cursor:pointer}.rdp-done{border:1px solid #9bc413;background:#9bc413;color:#fff}.rdp-today{border:1px solid #d8dce4;background:#fff;color:#6b7789}.rdp-today:hover{border-color:#9bc413;color:#6a8e0a}@media(max-width:1020px){.rpx-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.rpx-library{max-height:40vh;border-right:0;border-bottom:1px solid #e2e6ed}.rpx-runner-head{flex-wrap:wrap}.rpx-run-button{margin-left:0}.rdp-pop-range{grid-template-columns:1fr}.rdp-presets{grid-template-columns:repeat(3,1fr);border-right:0;border-bottom:1px solid #eef0f4;border-radius:10px 10px 0 0}}.rte-root{display:flex;min-width:0;flex-direction:column;margin:13px 15px 15px;border:1px solid #d8dce4;border-radius:8px;background:#fff}.rte-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid #e2e6ed;background:#f8f9fb;border-radius:8px 8px 0 0}.rte-toolbar button{display:inline-grid;width:28px;height:28px;place-items:center;border:1px solid transparent;border-radius:6px;background:transparent;color:#4a5568;cursor:pointer}.rte-toolbar button:hover{border-color:#d8dce4;background:#fff;color:#1a2332}.rte-toolbar-hint{margin-left:auto;color:#b0b9c6;font-size:10.5px;white-space:nowrap}.rte-editor{min-height:190px;max-height:380px;overflow-y:auto;padding:12px 14px;color:#26303f;font-size:13.5px;line-height:1.55;outline:none}.rte-editor:focus{box-shadow:inset 0 0 0 2px #9bc41359;border-radius:0 0 8px 8px}.rte-editor p{margin:0 0 10px}.rte-editor img{max-width:100%;height:auto;border-radius:6px}.pa-notification-preview img,.notification-modal>section img,.notification-row p img{max-width:100%;height:auto;border-radius:6px}.pa-datetime-pair{display:flex;min-width:0;flex-direction:column}.pa-datetime-pair>span{margin-bottom:6px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.pa-datetime-pair>div{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:8px}.pa-datetime-pair input[type=time]{min-height:36px;padding:7px 9px;border:1px solid #d8dce4;border-radius:6px;background:#f8f9fb;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.pa-datetime-pair input[type=time]:focus{border-color:#9bc413;outline:none}.pa-field-error{margin-top:4px;color:#b4473a;font-size:11px;font-style:normal}.pa-field-hint{margin-top:4px;color:#8a96a8;font-size:11px;font-style:normal}.notification-modal-vessel{display:inline-flex;align-items:center;gap:6px;margin-top:8px!important;padding:5px 10px;border:1px solid rgba(155,196,19,.4);border-radius:999px;background:#9bc4131a;color:#5d7d09!important;font-size:12px!important;font-weight:750}.nz-datefield{display:inline-flex;min-width:0;vertical-align:middle}.nz-datefield.full{display:flex;width:100%}.nz-datefield .rpx-token{width:100%;min-height:36px;background:#f8f9fb}.nz-datefield .rpx-token-trigger{width:100%;justify-content:flex-start}.nz-datefield .rpx-token-value{overflow:hidden;text-overflow:ellipsis}.nz-datefield.disabled .rpx-token{background:#eef0f4}.nz-datefield.disabled .rpx-token-trigger{color:#9aa6b6;cursor:not-allowed}.nz-datefield.disabled .rpx-token-trigger svg{color:#b0b9c6}.rpm-preset-select{min-height:26px;max-width:200px;flex-shrink:0;padding:2px 6px;border:1px solid #e0e6ee;border-radius:6px;background:#fff;color:#4a5568;font-size:11px;font-weight:700}.rpm-preset-select:focus{border-color:#9bc413;outline:none}.pa-email-frame{width:100%;min-height:420px;border:0;border-radius:0 0 8px 8px;background:#595859}.notification-admin-root .pa-panel{overflow:visible}.notification-admin-root .pa-panel>.pa-panel-header:first-child{border-radius:13px 13px 0 0}.notification-admin-root .pa-panel>*:last-child{border-radius:0 0 13px 13px}.notification-admin-root .pa-panel>.pa-notification-preview{border-radius:0}.notification-admin-root .pa-panel>.rte-root:last-child{border-radius:8px}.pa-header-buttons{display:flex;flex-shrink:0;align-items:center;gap:10px}.rpm-filter-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789;cursor:pointer}.rpm-filter-remove:hover{border-color:#b4473a;background:#b4473a14;color:#b4473a}.rpx-th-sort{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap;cursor:pointer}.rpx-th-sort svg{flex-shrink:0;opacity:.4}.rpx-th-sort:hover,.rpx-th-sort.active{color:#1a2332}.rpx-th-sort.active svg{color:#6a8e0a;opacity:1}.rpx-table th.rpx-num .rpx-th-sort{flex-direction:row-reverse}.rpx-table thead tr:first-child th{height:36px;padding-top:0;padding-bottom:0}.rpx-column-filter-row th{position:sticky;top:36px;z-index:1;padding:0 12px 9px;background:#fff;border-bottom:1px solid #e2e6ed}.rpx-column-filter-row th:first-child{padding-left:20px}.rpx-column-filter-row input{width:100%;min-width:72px;min-height:26px;padding:3px 8px;border:1px solid #e2e6ed;border-radius:6px;background:#f8f9fb;color:#1a2332;font-size:11.5px;font-weight:500}.rpx-column-filter-row input:focus{border-color:#9bc413;outline:none}.rpx-column-filter-row input::placeholder{color:#c0c8d4}.rpx-runner-actions{display:flex;flex-shrink:0;align-items:center;gap:8px}.rpx-ghost-button.active{border-color:#9bc413;background:#9bc4131a;color:#6a8e0a}.rpx-filter-count{display:inline-grid;min-width:17px;height:17px;place-items:center;padding:0 4px;border-radius:999px;background:#9bc413;color:#fff;font-size:10px;font-style:normal;font-weight:850}.rpx-column-filter-row th{background:#fbfcf7;padding-top:7px}.rpx-colfilter{position:relative;display:flex;align-items:center}.rpx-colfilter>svg{position:absolute;left:9px;color:#b0b9c6;pointer-events:none}.rpx-colfilter input{width:100%;min-width:84px;min-height:28px;padding:3px 9px 3px 27px;border:1px solid #dde2ea;border-radius:999px;background:#fff;color:#1a2332;font-size:12px;font-weight:500}.rpx-colfilter input:focus{border-color:#9bc413;box-shadow:0 0 0 3px #9bc41324;outline:none}.rpx-colfilter.has-value input{border-color:#9bc413;background:#9bc41312}.rpx-colfilter.has-value>svg{color:#6a8e0a}.rpx-colfilter input::placeholder{color:#b6bfcb;font-weight:500;text-transform:none;letter-spacing:0}.company-admin-shell .company-admin-user-row,.company-admin-shell .company-admin-grid-header{grid-template-columns:minmax(130px,1fr) minmax(190px,1.3fr) 140px minmax(120px,1fr) 110px 96px}.company-admin-primary{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 14px;border:1px solid #9bc413;border-radius:8px;background:#9bc413;color:#fff;font-size:12px;font-weight:850;white-space:nowrap;cursor:pointer}.company-admin-primary:hover{background:#8db310}.cu-row-actions{display:inline-flex;justify-content:flex-end;gap:5px}.cu-row-action{display:inline-grid;width:26px;height:26px;place-items:center;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789;cursor:pointer}.cu-row-action:hover{border-color:#9bc413;color:#6a8e0a}.cu-row-action.approve{border-color:#9bc4138c;background:#9bc4131f;color:#6a8e0a}.cu-row-action.danger:hover{border-color:#b4473a;background:#b4473a14;color:#b4473a}.cu-modal-backdrop{z-index:90}.cu-modal{display:flex;width:min(760px,calc(100vw - 32px));max-height:min(84vh,780px);flex-direction:column;overflow:hidden;border:1px solid #d8dce4;border-radius:12px;background:#fff;box-shadow:0 24px 60px #1a23324d}.cu-modal>header{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 14px;border-bottom:1px solid #e2e6ed}.cu-modal-kicker{color:#6a8e0a;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.cu-modal>header h2{margin:4px 0 0;color:#1a2332;font-size:19px;font-weight:850}.cu-modal>header p{margin:4px 0 0;color:#8a96a8;font-size:12px}.cu-modal>header>button{display:inline-grid;width:30px;height:30px;flex-shrink:0;place-items:center;border:1px solid #e2e6ed;border-radius:8px;background:#fff;color:#6b7789;cursor:pointer}.cu-modal>header>button:hover{border-color:#9bc413;color:#6a8e0a}.cu-modal>section{flex:1;overflow-y:auto;padding:16px 20px}.cu-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.cu-form-grid label{display:flex;min-width:0;flex-direction:column}.cu-form-grid label>span{margin-bottom:5px;color:#8a96a8;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.cu-form-grid input{min-height:36px;padding:8px 10px;border:1px solid #d8dce4;border-radius:7px;background:#fff;color:#1a2332;font-size:13px}.cu-form-grid input:focus{border-color:#9bc413;outline:none}.cu-roles-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;padding-top:4px;border-top:1px solid #eef0f4}.cu-roles-head strong{padding-top:8px;color:#1a2332;font-size:13px;font-weight:850}.cu-roles-head span{padding-top:8px;color:#6a8e0a;font-size:11px;font-weight:800}.cu-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cu-role-card{display:flex;min-width:0;gap:9px;padding:10px 11px;border:1px solid #e2e6ed;border-radius:9px;background:#fff;text-align:left;cursor:pointer}.cu-role-card:hover{border-color:#c6d495}.cu-role-card.selected{border-color:#9bc413;background:#9bc41312}.cu-role-check{display:inline-grid;width:17px;height:17px;flex-shrink:0;place-items:center;margin-top:1px;border:1.5px solid #c9d0da;border-radius:5px;background:#fff;color:#fff}.cu-role-check.on{border-color:#9bc413;background:#9bc413}.cu-role-body{display:grid;min-width:0;gap:3px}.cu-role-body strong{color:#1a2332;font-size:12.5px;font-weight:800}.cu-role-body em{color:#6b7789;font-size:11px;font-style:normal;line-height:1.4}.cu-role-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.cu-role-meta i{padding:1px 7px;border-radius:999px;background:#9bc41321;color:#6a8e0a;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-style:normal;font-weight:700}.cu-role-meta small{padding:1px 7px;border-radius:999px;background:#eef1f5;color:#6b7789;font-size:9.5px;font-weight:750}.cu-roles-empty{margin:0;padding:14px;border:1px dashed #d8dce4;border-radius:8px;color:#8a96a8;font-size:12px;text-align:center}.cu-requested-roles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.cu-requested-roles em{padding:3px 10px;border:1px solid rgba(180,130,20,.4);border-radius:999px;background:#b4821414;color:#9b6b18;font-size:11px;font-style:normal;font-weight:750}.cu-modal>footer{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid #e2e6ed;background:#fbfcf7}.cu-button-ghost{min-height:34px;padding:0 14px;border:1px solid #d8dce4;border-radius:8px;background:#fff;color:#6b7789;font-size:12px;font-weight:850;cursor:pointer}.cu-button-primary{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 16px;border:1px solid #9bc413;border-radius:8px;background:#9bc413;color:#fff;font-size:12px;font-weight:850;cursor:pointer}.cu-button-primary:hover:not(:disabled){background:#8db310}.cu-button-primary:disabled,.cu-button-ghost:disabled{opacity:.55;cursor:not-allowed}@media(max-width:760px){.cu-form-grid,.cu-role-grid{grid-template-columns:1fr}}.company-admin-shell .company-admin-user-row,.company-admin-shell .company-admin-grid-header{grid-template-columns:minmax(170px,1.1fr) minmax(190px,1fr) minmax(240px,1.7fr) 96px 96px}.company-admin-shell .company-admin-user-row{align-items:center}.cu-name-block{display:grid;min-width:0;gap:1px}.cu-name-block strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cu-name-block em{overflow:hidden;color:#8a96a8;font-size:11px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.cu-contact{display:grid;min-width:0;gap:3px}.cu-contact span{display:inline-flex;align-items:center;gap:6px;overflow:hidden;color:#6b7789;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.cu-contact svg{flex-shrink:0;color:#b0b9c6}.cu-role-chips{display:flex;flex-wrap:wrap;gap:4px;min-width:0;padding:6px 0}.cu-chip{padding:2px 9px;border:1px solid #e2e6ed;border-radius:999px;background:#f6f8fa;color:#4a5568;font-size:11px;font-weight:750;white-space:nowrap}.cu-chip.admin{border-color:#9bc41380;background:#9bc41321;color:#5d7d09}.cu-chip.requested{border-color:#b4821473;border-style:dashed;background:#b4821412;color:#9b6b18}.cu-chip.empty{border-style:dashed;color:#9aa6b6}.tm-page{overflow:hidden}.tm-header-actions{display:flex;align-items:center;gap:8px}.tm-icon-button{width:40px;padding:0}.tm-stats{display:grid;flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;border:1px solid #e2e6ed;border-radius:8px;background:#fff}.tm-stats>div{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;min-height:50px;padding:8px 14px;border-right:1px solid #eef0f4}.tm-stats>div:last-child{border-right:0}.tm-stats svg{color:#6a8e0a}.tm-stats strong{color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:18px}.tm-stats span{color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tm-layout{display:grid;min-width:0;min-height:0;flex:1;grid-template-columns:330px minmax(0,1fr);gap:14px}.tm-revisions{display:flex;min-height:0;flex-direction:column;border-radius:8px}.tm-revisions>header{display:flex;min-height:42px;flex-shrink:0;align-items:center;justify-content:space-between;padding:9px 12px;border-bottom:1px solid #eef1ea;background:#fbfcf7}.tm-revisions>header strong{color:#1a2332;font-size:13px;font-weight:800}.tm-revisions>header span{display:inline-grid;min-width:22px;height:22px;place-items:center;border-radius:6px;background:#eef2e2;color:#5d7d09;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.tm-revision-list{min-height:0;overflow-y:auto}.tm-revision-row{display:grid;width:100%;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 10px 10px 12px;border:0;border-bottom:1px solid #f0f2ed;background:#fff;color:#1a2332;text-align:left;cursor:pointer}.tm-revision-row:hover{background:#fbfcf7}.tm-revision-row.active{box-shadow:inset 3px 0 #9bc413;background:#9bc41314}.tm-revision-icon{display:inline-grid;width:28px;height:28px;place-items:center;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789}.tm-revision-row.active .tm-revision-icon{border-color:#9bc4138c;color:#6a8e0a}.tm-revision-copy{display:grid;min-width:0;gap:1px}.tm-revision-copy strong{overflow:hidden;font-size:12.5px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.tm-revision-copy em,.tm-revision-copy small{overflow:hidden;color:#8a96a8;font-size:10.5px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.tm-revision-copy small{color:#a6afbc;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px}.tm-status{display:inline-flex;min-height:22px;align-items:center;gap:4px;padding:2px 7px;border-radius:6px;background:#eef1f5;color:#6b7789;font-size:9.5px;font-style:normal;font-weight:800;white-space:nowrap}.tm-status.ready,.tm-status.published{background:#9bc41324;color:#5d7d09}.tm-status.processing,.tm-status.queued,.tm-status.uploaded{background:#2563eb1a;color:#2563eb}.tm-status.failed{background:#b4473a1a;color:#b4473a}.tm-navigation-status{display:inline-flex;min-height:24px;align-items:center;gap:5px;padding:3px 7px;border-radius:6px;background:#eef1f5;color:#6b7789;font-size:9.5px;font-weight:800;white-space:nowrap}.tm-navigation-status.approved{background:#28855c1f;color:#25764f}.tm-navigation-status.pending{background:#b482141a;color:#9b6b18}.tm-navigation-status.blocked{background:#b4473a1a;color:#a13d33}.tm-detail{display:grid;min-width:0;min-height:0;grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:14px}.tm-detail>.pa-panel{display:flex;min-height:0;flex-direction:column;border-radius:8px}.tm-preview-panel .pa-panel-header .tm-status{margin-left:auto}.tm-preview{display:grid;min-height:0;flex:1;place-items:center;overflow:hidden;background:#f4f6f1}.tm-preview.ready{background:#e9edf0}.tm-preview img{display:block;width:100%;height:100%;object-fit:contain}.tm-preview>div{display:grid;max-width:360px;place-items:center;gap:7px;padding:24px;color:#8a96a8;text-align:center}.tm-preview>div svg{color:#6a8e0a}.tm-preview>div strong{color:#1a2332;font-size:13px}.tm-preview>div span{color:#8a96a8;font-size:11px;line-height:1.4}.tm-detail-grid{display:grid;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;margin:0;padding:6px 14px;overflow:visible}.tm-detail-scroll{min-height:0;flex:1;overflow-y:auto}.tm-detail-grid>div{min-width:0;padding:11px 4px;border-bottom:1px solid #eef0f4}.tm-detail-grid>div.wide{grid-column:1 / -1}.tm-detail-grid dt{margin-bottom:4px;color:#8a96a8;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tm-detail-grid dd{overflow:hidden;margin:0;color:#26303f;font-size:11.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.tm-detail-grid dd.tm-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px}.tm-attempt-history{margin:4px 14px 14px;border-top:1px solid #dfe4ea}.tm-attempt-history>header{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;padding:9px 4px}.tm-attempt-history>header>div{display:inline-flex;min-width:0;align-items:center;gap:7px;color:#26303f;font-size:11.5px}.tm-attempt-history>header>div>svg{flex-shrink:0;color:#6a8e0a}.tm-attempt-history>header>div>span{display:inline-grid;min-width:20px;height:20px;place-items:center;border-radius:5px;background:#eef2e2;color:#5d7d09;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:800}.tm-attempt-history>header>button{display:inline-grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border:1px solid #d8dce4;border-radius:6px;background:#fff;color:#6b7789;cursor:pointer}.tm-attempt-history>header>button:disabled{opacity:.55;cursor:not-allowed}.tm-attempt-list{border-top:1px solid #eef0f4}.tm-attempt-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:10px 4px;border-bottom:1px solid #eef0f4}.tm-attempt-outcome-icon{display:inline-grid;width:28px;height:28px;place-items:center;border-radius:6px;background:#eef1f5;color:#6b7789}.tm-attempt-outcome-icon.succeeded{background:#28855c1c;color:#25764f}.tm-attempt-outcome-icon.failed{background:#b4473a1a;color:#a13d33}.tm-attempt-outcome-icon.active{background:#2563eb1a;color:#2563eb}.tm-attempt-outcome-icon.expired{background:#b482141c;color:#9b6b18}.tm-attempt-main{display:grid;min-width:0;gap:4px}.tm-attempt-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.tm-attempt-heading strong{color:#1a2332;font-size:11px}.tm-attempt-status{display:inline-flex;min-height:20px;align-items:center;padding:2px 6px;border-radius:5px;background:#eef1f5;color:#6b7789;font-size:8.5px;font-weight:800;white-space:nowrap}.tm-attempt-status.succeeded{background:#28855c1c;color:#25764f}.tm-attempt-status.failed{background:#b4473a1a;color:#a13d33}.tm-attempt-status.active{background:#2563eb1a;color:#2563eb}.tm-attempt-status.expired{background:#b482141c;color:#9b6b18}.tm-attempt-summary,.tm-attempt-identifiers{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:3px 10px;color:#8a96a8;font-size:9.5px}.tm-attempt-summary>span:not(:last-child):after{position:relative;left:5px;color:#c4cad3;content:"·"}.tm-attempt-identifiers>span{display:inline-flex;max-width:100%;align-items:center;gap:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-attempt-identifiers .tm-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:8.5px}.tm-attempt-lease,.tm-attempt-failure{display:flex;align-items:flex-start;gap:5px;margin:2px 0 0;font-size:9.5px;line-height:1.4}.tm-attempt-lease{color:#2563eb}.tm-attempt-lease.expired{color:#9b6b18}.tm-attempt-failure{padding:6px 7px;border-left:2px solid rgba(180,71,58,.55);background:#b4473a0d;color:#8f3830}.tm-attempt-failure svg{flex-shrink:0;margin-top:1px}.tm-attempt-placeholder,.tm-attempt-error{display:flex;min-height:50px;align-items:center;justify-content:center;gap:7px;border-top:1px solid #eef0f4;color:#8a96a8;font-size:10px}.tm-attempt-error{justify-content:flex-start;padding:8px 4px;color:#9f2f2f}.tm-attempt-error span{flex:1}.tm-attempt-error button{border:0;background:transparent;color:#8f3830;font-size:9.5px;font-weight:800;cursor:pointer}.tm-detail-actions{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding:11px 14px;border-top:1px solid #eef1ea;background:#fbfcf7}.tm-detail-actions>span{color:#6b7789;font-size:10.5px;font-weight:650}.tm-detail-actions>div{display:flex;flex-shrink:0;align-items:center;gap:8px}.tm-navigation-review{margin:4px 14px 14px;border-top:1px solid #dfe4ea}.tm-navigation-review>header{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;padding:9px 4px}.tm-navigation-review>header>div{display:inline-flex;align-items:center;gap:7px;color:#26303f;font-size:11.5px}.tm-navigation-review>header svg{color:#6a8e0a}.tm-navigation-review>dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid #eef0f4}.tm-navigation-review>dl>div{min-width:0;padding:9px 4px;border-bottom:1px solid #eef0f4}.tm-navigation-review>dl>div.wide{grid-column:1 / -1}.tm-navigation-review dt{margin-bottom:3px;color:#8a96a8;font-size:9px;font-weight:800;text-transform:uppercase}.tm-navigation-review dd{overflow:hidden;margin:0;color:#26303f;font-size:10.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.tm-navigation-review dd.tm-mono,.tm-navigation-artifact .tm-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px}.tm-navigation-review>p{margin:0;padding:10px 4px;border-top:1px solid #eef0f4;color:#6b7789;font-size:10.5px;line-height:1.45}.tm-navigation-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:10px}.tm-navigation-actions a{text-decoration:none}.tm-button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 14px;border-radius:8px;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}.tm-button.primary{border:1px solid #9bc413;background:#9bc413;color:#fff}.tm-button.primary:hover:not(:disabled){background:#8db310}.tm-button.secondary{border:1px solid #d8dce4;background:#fff;color:#6b7789}.tm-button:disabled,.tm-modal button:disabled{opacity:.55;cursor:not-allowed}.tm-empty{display:grid;min-height:160px;place-items:center;align-content:center;gap:8px;padding:24px;color:#9aa6b6;text-align:center}.tm-empty.compact{min-height:140px}.tm-empty strong{color:#6b7789;font-size:12px}.tm-empty-detail{grid-column:1 / -1;border:1px dashed #d8dce4;border-radius:8px;background:#fff}.tm-modal-backdrop{z-index:100}.tm-modal{display:flex;width:min(580px,calc(100vw - 32px));max-height:min(88vh,760px);flex-direction:column;overflow:hidden;border:1px solid #d8dce4;border-radius:8px;background:#fff;box-shadow:0 24px 60px #1a23324d}.tm-modal>header{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px 19px 14px;border-bottom:1px solid #e2e6ed}.tm-modal>header span{color:#6a8e0a;font-size:9.5px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.tm-modal>header h2{margin:4px 0 0;color:#1a2332;font-size:19px;font-weight:850}.tm-modal>header>button{display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid #e2e6ed;border-radius:6px;background:#fff;color:#6b7789;cursor:pointer}.tm-modal>section:not(.tm-publish-modal){display:grid;gap:14px;padding:18px 19px;overflow-y:auto}.tm-dropzone{display:grid;width:100%;min-height:126px;place-items:center;align-content:center;gap:6px;padding:16px;border:1px dashed #c9d0da;border-radius:8px;background:#fbfcf7;color:#8a96a8;cursor:pointer}.tm-dropzone:hover,.tm-dropzone.dragging,.tm-dropzone.selected{border-color:#9bc413;background:#9bc41312}.tm-dropzone svg{color:#6a8e0a}.tm-dropzone strong{max-width:100%;overflow:hidden;color:#1a2332;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.tm-dropzone span{color:#8a96a8;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px}.tm-field{display:grid;gap:5px}.tm-field>span{color:#8a96a8;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.tm-field input{width:100%;min-height:38px;padding:0 11px;border:1px solid #d8dce4;border-radius:7px;color:#1a2332;font-size:13px}.tm-field input:focus{border-color:#9bc413;outline:none}.tm-field textarea{width:100%;min-height:72px;padding:9px 11px;border:1px solid #d8dce4;border-radius:7px;color:#1a2332;font:inherit;font-size:12px;line-height:1.4;resize:vertical}.tm-field textarea:focus{border-color:#9bc413;outline:none}.tm-crs-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;padding:10px 11px;border:1px solid #e2e6ed;border-radius:7px;background:#f8f9fb}.tm-crs-row>span{display:inline-flex;align-items:center;gap:7px;color:#6b7789;font-size:11px;font-weight:750}.tm-crs-row>span svg{color:#6a8e0a}.tm-crs-row strong{grid-row:span 2;color:#1a2332;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.tm-crs-row em{color:#8a96a8;font-size:10px;font-style:normal}.tm-attestation{display:flex;min-height:40px;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e2e6ed;border-radius:7px;color:#6b7789;cursor:pointer}.tm-attestation.checked{border-color:#9bc4138c;background:#9bc4130f;color:#5d7d09}.tm-attestation input{position:absolute;opacity:0;pointer-events:none}.tm-attestation>span{display:inline-grid;width:18px;height:18px;flex:0 0 18px;place-items:center;border:1.5px solid #c9d0da;border-radius:5px;background:#fff;color:#fff}.tm-attestation.checked>span{border-color:#9bc413;background:#9bc413}.tm-attestation strong{font-size:11.5px;font-weight:750}.tm-upload-progress{display:grid;gap:6px}.tm-upload-progress>div{display:flex;align-items:center;justify-content:space-between;color:#6b7789;font-size:11px;font-weight:700}.tm-upload-progress strong{color:#5d7d09;font-family:JetBrains Mono,ui-monospace,monospace}.tm-upload-progress progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:4px;background:#e8ecdf}.tm-upload-progress progress::-webkit-progress-bar{background:#e8ecdf}.tm-upload-progress progress::-webkit-progress-value{background:#9bc413}.tm-upload-progress progress::-moz-progress-bar{background:#9bc413}.tm-inline-error{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid rgba(180,71,58,.3);border-radius:7px;background:#b4473a14;color:#9f2f2f;font-size:11px;font-weight:700}.tm-modal>footer{display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:9px;padding:12px 19px;border-top:1px solid #e2e6ed;background:#fbfcf7}.tm-publish-modal{width:min(500px,calc(100vw - 32px))}.tm-publish-copy{display:flex;align-items:center;gap:12px;padding:22px 19px}.tm-publish-reason{padding:0 19px 18px}.tm-release-scope{display:grid;gap:7px;padding:0 19px 18px}.tm-release-scope>strong{color:#8a96a8;font-size:10px;font-weight:800;text-transform:uppercase}.tm-release-scope .tm-attestation>div{display:grid;min-width:0;gap:2px}.tm-release-scope .tm-attestation small{color:#8a96a8;font-size:9.5px;font-weight:600;line-height:1.35}.tm-release-scope>p{margin:0;color:#9b6b18;font-size:10px;font-weight:700}.tm-review-modal{width:min(650px,calc(100vw - 32px))}.tm-navigation-artifact{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 11px;border:1px solid #e2e6ed;border-radius:7px;background:#f8f9fb}.tm-navigation-artifact>svg{color:#6a8e0a}.tm-navigation-artifact>div{display:grid;min-width:0;gap:2px}.tm-navigation-artifact strong{color:#1a2332;font-size:11.5px}.tm-navigation-artifact span{overflow:hidden;color:#8a96a8;text-overflow:ellipsis;white-space:nowrap}.tm-navigation-artifact a{display:inline-flex;align-items:center;gap:5px;color:#5d7d09;font-size:10px;font-weight:800;text-decoration:none}.tm-review-warning{display:flex;align-items:center;gap:7px;color:#9b6b18;font-size:10.5px;font-weight:700}.tm-readiness-blockers{display:grid;gap:5px;margin-top:9px;padding:9px 10px;border:1px solid rgba(180,71,58,.25);border-radius:6px;background:#b4473a0f;color:#7f352e;font-size:10px;line-height:1.4}.tm-readiness-blockers strong{font-size:10.5px}.tm-readiness-blockers span:before{content:"- "}.tm-review-checklist{display:grid;gap:7px;margin:0;padding:0;border:0}.tm-review-checklist legend{margin-bottom:6px;color:#8a96a8;font-size:10px;font-weight:800;text-transform:uppercase}.tm-history-modal{width:min(680px,calc(100vw - 32px))}.tm-history-list{min-height:180px;overflow-y:auto}.tm-history-list>article{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;padding:13px 18px;border-bottom:1px solid #eef0f4}.tm-history-icon{display:inline-grid;width:30px;height:30px;place-items:center;border-radius:6px;background:#9bc4131f;color:#5d7d09}.tm-history-icon.rollback{background:#2563eb1a;color:#2563eb}.tm-history-list article>div{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px}.tm-history-list article strong{color:#1a2332;font-size:11.5px}.tm-history-list article p{grid-column:1 / -1;margin:0;color:#6b7789;font-size:10.5px;line-height:1.4}.tm-history-list article small,.tm-history-list article em{color:#8a96a8;font-size:9.5px;font-style:normal}.tm-history-list article em{color:#5d7d09;font-weight:750;text-align:right}.tm-publish-copy>svg{flex-shrink:0;color:#6a8e0a}.tm-publish-copy>div{display:grid;min-width:0;gap:4px}.tm-publish-copy strong{overflow:hidden;color:#1a2332;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.tm-publish-copy span{color:#8a96a8;font-size:10.5px}@media(max-width:1200px){.tm-detail{grid-template-columns:minmax(0,1fr);overflow-y:auto}.tm-detail>.pa-panel{min-height:360px}.tm-detail>.tm-detail-panel{min-height:320px}}@media(max-width:840px){.tm-page{overflow-y:auto}.tm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tm-stats>div:nth-child(2n){border-right:0}.tm-stats>div:nth-child(-n+4){border-bottom:1px solid #eef0f4}.tm-layout{display:flex;min-height:auto;flex-direction:column}.tm-revisions{max-height:360px}.tm-detail{min-height:720px;overflow:visible}}@media(max-width:540px){.tm-stats>div{grid-template-columns:auto auto minmax(0,1fr);padding:8px 10px}.tm-detail-grid{grid-template-columns:minmax(0,1fr)}.tm-attempt-summary,.tm-attempt-identifiers{gap:3px 8px}.tm-detail-actions{align-items:stretch;flex-direction:column}.tm-detail-actions>div{width:100%}.tm-detail-actions>div .tm-button{flex:1}.tm-crs-row{grid-template-columns:minmax(0,1fr)}.tm-crs-row strong{grid-row:auto}}.ia-vessel-feed-message{margin-bottom:12px;padding:10px 12px;border:1px solid #d7dfc8;background:#f5f8ec;color:#3f5206}.epa-same-booking-toggle{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;cursor:pointer}.epa-same-booking-toggle input{appearance:none;width:34px;height:20px;margin:0;border:1px solid #819063;border-radius:12px;background:#e2e6ed;cursor:pointer}.epa-same-booking-toggle input:before{content:"";display:block;width:14px;height:14px;margin:2px;border-radius:50%;background:#fff;transition:transform .12s ease}.epa-same-booking-toggle input:checked{background:#6a8e0a}.epa-same-booking-toggle input:checked:before{transform:translate(14px)}.epa-same-booking-toggle input:focus-visible{outline:2px solid #3f5206;outline-offset:3px}.staging-preview-notice{grid-column:1 / -1;padding:8px 16px;background:#fff2cf;color:#5d4510;font-size:13px;font-weight:600;text-align:center}.app-frame.read-only-preview{grid-template-rows:34px 64px minmax(0,1fr) 36px}.app-frame.read-only-preview .shell-body,.app-frame.read-only-preview .main-pane{min-height:calc(100vh - 134px)}.app-frame.read-only-preview .sidebar,.app-frame.read-only-preview .topbar-shell-content{height:calc(100vh - 134px)}.rpx-pagination{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.rpx-pagination button{border:1px solid var(--border, #d1d5db);border-radius:4px;background:transparent;color:inherit;padding:3px 7px;cursor:pointer}.rpx-pagination button:disabled{opacity:.45;cursor:default}
