.microservice-wrapper{width:100vw;height:100vh;position:relative;background-repeat:no-repeat;background-size:cover;background-position:bottom;background-image:url(/assets/initial_background_image.87f2e366.jpg)}.microservice-content-wrapper{width:100vw;height:100vh;position:fixed;left:0;top:0;right:0;bottom:0;background:linear-gradient(90deg,#212D3D 0%,#212D3D 33%,rgba(33,45,61,.9) 100%)}@media (max-width: 1280px) and (min-width: 768px){.microservice-content-wrapper{background:linear-gradient(90deg,#212D3D 0%,#212D3D 40%,rgba(33,45,61,.9) 100%)}}@media (max-width: 768px){.microservice-content-wrapper{background-color:#212d3d}}.microservice-content-inner-wrapper{width:100%;height:100%;position:relative}.microservice-initialization-wrapper{height:100%;width:100%;display:flex;justify-content:center;align-items:center}.microservice-initialization-wrapper-text{color:#efefef;font-family:var(--font);font-size:14px;text-align:center}.microservice-authentication-wrapper{width:100vw;height:100vh;position:fixed;z-index:50000;left:0;right:0;top:0;bottom:0}.microservice-authenticated-environment-wrapper{height:100%;width:100%;display:flex;flex-direction:row;align-items:stretch;background:var(--page-bg)}.microservice-authentication-component{width:100%;height:100%;position:relative;display:flex;flex-direction:row}.microservice-authentication-hubup-logo-row{position:absolute;left:0;top:0;pointer-events:none;padding:20px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.microservice-authentication-hubup-logo{height:40px;width:40px;margin-right:12px}.microservice-authentication-app-text{font-weight:700;font-size:16px;color:#fff}.microservice-authentication-component-left{width:30%;height:100%;padding-top:80px}.microservice-authentication-component-right{width:70%;height:100%}@media (max-width: 1280px) and (min-width: 768px){.microservice-authentication-component-left{width:60%}.microservice-authentication-component-right{width:40%}}@media (max-width: 768px){.microservice-authentication-component-left{width:100%}.microservice-authentication-component-right{width:0%}}.microservice-authentication-login-page{width:100%;height:100%;position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:4px 20px 20px}.papa-authentication-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.papa-authentication-fields-wrapper{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;max-width:440px;transition:all .3s cubic-bezier(.25,.8,.25,1);transform:translate(-500px)}.vertical-small-bar{height:22px;width:4px;background-color:#1079fc;margin-bottom:20px}.papa-authentication-title{font-size:30px;color:#fff;margin:0 0 20px;font-weight:700;width:100%;text-align:left;padding-left:16px}.papa-authentication-card{background-color:#323a48;border-radius:4px;padding:20px;width:100%;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.papa-authentication-field-name{width:100%;color:#efefef;margin:0;font-size:14px;font-weight:700}.papa-authentication-field-wrapper{width:100%;height:60px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;position:relative;margin-bottom:20px}.papa-authentication-field{width:100%;margin-top:10px!important;background-color:#e8f0fe;border-radius:8px;position:relative;box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.papa-authentication-field .MuiOutlinedInput-root{border-radius:8px}.papa-authentication-field .Mui-error{background-color:#f2dede!important}.papa-authentication-login-button{margin-top:16px!important;height:52px;border-radius:8px!important;padding-left:16px!important;padding-right:16px!important;width:100%;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;color:#fff;background-color:#1079fc!important;transition:all .3s cubic-bezier(.25,.8,.25,1)}.papa-authentication-login-button-icon{color:#fff;font-size:18px;margin-left:6px}.papa-authentication-login-button-text{color:#fff;font-size:18px;font-weight:700}.papa-authentication-login-button-disabled{opacity:.3}.papa-authentication-busy-wrapper{height:68px;padding-top:16px!important;width:100%;display:flex;justify-content:center;align-items:center;flex-direction:row}.papa-authentication-busy-wrapper-text{color:#fff;font-size:14px;margin-left:12px;font-style:italic}.papa-authentication-see-password-wrapper{position:absolute;right:0;top:7px;bottom:0;height:56px;width:56px;display:flex;justify-content:center;align-items:center}.papa-authentication-busy-wrapper-icon{color:#2cbe4e}.papa-authentication-busy-wrapper-text-success{color:#2cbe4e;font-size:14px;margin-left:12px;font-weight:700}.papa-authentication-wrapper-displayed .papa-authentication-fields-wrapper{transform:translate(0)}.home-page .page-body-scroll{gap:8px}.home-hero{display:flex;align-items:center;gap:16px;padding:24px 16px 16px;flex-wrap:wrap}.home-hero-logo{width:56px;height:56px}.home-hero-text{flex:1;min-width:240px}.home-hero-title{font-size:28px;font-weight:700;color:var(--navy)}.home-hero-title-accent{color:var(--blue)}.home-hero-title-sub{font-size:14px;font-weight:100;letter-spacing:3px;color:var(--text-muted)}.home-hero-subtitle{margin:4px 0 0;color:var(--text-muted);font-size:14px}.home-search-hint{display:flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:14px}.home-search-hint:hover{transform:translateY(-1px);box-shadow:var(--shadow-floating);color:var(--navy)}.home-search-hint kbd{font-family:var(--font);font-size:11px;padding:2px 6px;border-radius:4px;background:var(--page-bg);border:var(--border)}.home-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.home-tile-link{text-decoration:none}.home-tile{height:100%;gap:4px;transition:all .15s ease}.home-tile-link:hover .home-tile{transform:translateY(-1px);box-shadow:var(--shadow-floating)}.home-tile-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-chip);background:var(--blue-tint);color:var(--blue);margin-bottom:4px}.home-tile-value{font-size:24px;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums}.home-tile-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.home-tile-sub{font-size:12px;color:var(--text-faint)}.home-shortcuts-row{display:flex;gap:8px;flex-wrap:wrap}.home-shortcut{display:inline-flex;align-items:center;gap:4px;height:36px;padding:0 16px;border-radius:var(--radius-control);background:var(--blue-tint);color:var(--blue);font-weight:600;text-decoration:none;transition:all .15s ease}.home-shortcut:hover{transform:translateY(-1px);box-shadow:var(--shadow-resting)}.u-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:36px;padding:0 12px;border:none;border-radius:var(--radius-control);font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap;transition:all .15s ease;background:transparent}.u-btn:disabled{opacity:.45;cursor:not-allowed}.u-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.u-btn:not(:disabled):hover{transform:translateY(-1px)}.u-btn-primary{background:var(--blue);color:#fff}.u-btn-primary:not(:disabled):hover{box-shadow:var(--shadow-floating)}.u-btn-quiet{border:1px solid var(--border-color);background:var(--surface);color:var(--navy)}.u-btn-quiet:not(:disabled):hover{background:var(--hover-fill)}.u-btn-ghost{color:var(--navy)}.u-btn-ghost:not(:disabled):hover{background:var(--hover-fill);transform:none}.u-btn-danger{background:var(--danger);color:#fff}.u-btn-danger:not(:disabled):hover{box-shadow:var(--shadow-floating)}.u-btn-danger-quiet{border:1px solid rgba(230,57,70,.35);background:var(--surface);color:var(--danger)}.u-btn-danger-quiet:not(:disabled):hover{background:var(--danger-tint)}.u-btn-icononly{width:36px;padding:0;flex:0 0 auto}.u-card{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-resting);padding:16px;display:flex;flex-direction:column;gap:8px;min-width:0}.u-card-flush{padding:0;gap:0;overflow:hidden}.u-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:24px}.u-card-flush .u-card-header{padding:16px 16px 8px}.u-card-header-actions{display:flex;align-items:center;gap:8px}.u-modal-backdrop{position:fixed;inset:0;z-index:4000;background:rgba(0,34,74,.35);display:flex;align-items:center;justify-content:center;padding:24px}.u-modal{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-floating);display:flex;flex-direction:column;max-height:calc(100vh - 48px);width:100%;animation:u-modal-in .15s ease}@keyframes u-modal-in{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.u-modal-narrow{max-width:420px}.u-modal-default{max-width:560px}.u-modal-wide{max-width:820px}.u-modal-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 16px 8px}.u-modal-title{font-size:16px;font-weight:700;color:var(--navy);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.u-modal-body{padding:8px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.u-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px 16px}.u-confirm-message{line-height:1.5}.u-confirm-message strong{color:var(--navy)}.u-confirm-typecheck{display:flex;flex-direction:column;gap:4px}.u-confirm-typecheck-label{font-size:12px;color:var(--text-muted)}.u-search{display:flex;align-items:center;gap:4px;height:36px;padding:0 8px;border:1px solid var(--border-color);border-radius:var(--radius-control);background:var(--surface);min-width:200px;transition:box-shadow .15s ease}.u-search:focus-within{box-shadow:var(--focus-ring);border-color:var(--blue)}.u-search-icon{color:var(--text-faint);flex:0 0 auto}.u-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text)}.u-search-input::placeholder{color:var(--text-faint)}.u-search-clear{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);cursor:pointer}.u-search-clear:hover{background:var(--hover-fill)}.u-badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;white-space:nowrap}.u-badge-dot{width:7px;height:7px;border-radius:var(--radius-pill);background:currentColor}.u-badge-blue{background:var(--blue-tint);color:var(--blue)}.u-badge-navy{background:var(--navy-tint);color:var(--navy)}.u-badge-danger{background:var(--danger-tint);color:var(--danger)}.u-badge-success{background:var(--success-tint);color:var(--success)}.u-badge-warning{background:var(--warning-tint);color:#b45309}.u-badge-neutral{background:rgba(0,34,74,.07);color:var(--text-muted)}.u-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;text-align:center;color:var(--text-faint)}.u-empty-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-chip);background:var(--navy-tint);color:var(--navy)}.u-empty-title{font-weight:600;color:var(--text-muted)}.u-empty-hint{font-size:12px;max-width:360px}.u-field{display:flex;flex-direction:column;gap:4px;min-width:0}.u-field-label{font-size:12px;font-weight:600;color:var(--navy)}.u-field-required{color:var(--danger);margin-left:2px}.u-field-hint{font-size:12px;color:var(--text-faint)}.u-field-error{font-size:12px;color:var(--danger)}.u-input,.u-select,.u-textarea{height:36px;padding:0 8px;border:1px solid var(--border-color);border-radius:var(--radius-control);background:var(--surface);color:var(--text);outline:none;transition:box-shadow .15s ease;min-width:0;width:100%}.u-textarea{height:auto;min-height:72px;padding:8px;resize:vertical}.u-input:focus-visible,.u-select:focus-visible,.u-textarea:focus-visible{box-shadow:var(--focus-ring);border-color:var(--blue)}.u-input[readonly]{background:var(--page-bg);color:var(--text-muted)}.u-checkbox{width:16px;height:16px;border-radius:4px;accent-color:var(--blue);cursor:pointer}.u-table-wrapper{flex:1;min-height:0;overflow:auto}.u-table{width:100%;border-collapse:collapse;border-spacing:0}.u-table th{position:sticky;top:0;z-index:1;background:var(--surface);text-align:left;padding:8px 12px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--navy);border-bottom:1px solid var(--border-color);white-space:nowrap}.u-table th.u-th-sortable{cursor:pointer;user-select:none}.u-table th.u-th-sortable:hover{color:var(--blue)}.u-table th .u-th-inner{display:inline-flex;align-items:center;gap:4px}.u-table td{padding:8px 12px;border-bottom:1px solid rgba(0,34,74,.06);font-size:14px;color:var(--text);font-variant-numeric:tabular-nums}.u-table tbody tr{transition:background .15s ease}.u-table tbody tr:hover{background:var(--hover-fill)}.u-table tbody tr:last-child td{border-bottom:none}.u-td-muted{color:var(--text-faint)}.u-td-actions{display:flex;justify-content:flex-end;gap:4px}.u-list{display:flex;flex-direction:column;overflow-y:auto;min-height:0;flex:1}.u-list-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:var(--radius-control);background:transparent;text-align:left;cursor:pointer;transition:background .15s ease;color:var(--text);width:100%}.u-list-item:hover{background:var(--hover-fill)}.u-list-item.u-list-item-selected{background:var(--blue-tint);color:var(--blue);font-weight:600}.u-list-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.u-list-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.u-list-item-sub{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.u-list-item-selected .u-list-item-sub{color:var(--blue);opacity:.75}.u-kv{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:4px 16px;align-items:baseline}.u-kv-key{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.u-kv-value{min-width:0;overflow-wrap:anywhere}.upb-back-link{text-decoration:none}.upb-form{max-width:980px}.upb-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;border:2px dashed var(--border-color);border-radius:var(--radius-card);color:var(--text-muted);cursor:pointer;transition:all .15s ease;text-align:center}.upb-dropzone:hover{background:var(--hover-fill)}.upb-dropzone-over{border-color:var(--blue);background:var(--blue-tint)}.upb-dropzone-filled{border-color:#16a34a66}.upb-dropzone-icon{color:var(--text-faint)}.upb-dropzone-icon-ok{color:var(--success)}.upb-dropzone-filename{font-weight:600;color:var(--navy)}.upb-dropzone-hint{font-size:12px;color:var(--text-faint)}.upb-file-input{display:none}.upb-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.upb-field-wide{grid-column:1 / -1}.upb-parameters{display:flex;flex-direction:column;gap:8px}.upb-parameter-row{display:flex;align-items:flex-start;gap:8px;padding:12px;border:var(--border);border-radius:var(--radius-control)}.upb-parameter-fields{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px 12px;align-items:end}.upb-required-check{display:flex;align-items:center;gap:4px;height:36px;font-size:13px;color:var(--navy);font-weight:600;cursor:pointer;white-space:nowrap}.upb-parameter-actions{display:flex;flex-direction:column;gap:4px}.upb-errors{border:1px solid rgba(230,57,70,.35)}.upb-errors-title{color:var(--danger)}.upb-errors-list{margin:0;padding-left:20px;color:var(--danger);font-size:13px;display:flex;flex-direction:column;gap:2px}.upb-submit-row{display:flex;justify-content:flex-end;padding-bottom:8px}.bin-search{width:320px}.bin-upload-link{text-decoration:none}.bin-apps-card{width:280px;flex:0 0 auto}.bin-apps-card .u-list,.bin-versions-card .u-list{padding:4px}.bin-versions-card{width:200px;flex:0 0 auto}.bin-details-column{flex:1}.bin-details-placeholder{flex:1;justify-content:center}.bin-loading{padding:16px;color:var(--text-faint);text-align:center}.bin-usedby-list{display:flex;flex-wrap:wrap;gap:8px}.bin-usedby-chip{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border-radius:var(--radius-pill);background:var(--blue-tint);color:var(--blue);font-size:13px;font-weight:600;text-decoration:none;transition:all .15s ease}.bin-usedby-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-resting)}@media (max-width: 1100px){.bin-page .page-body{flex-direction:column;overflow-y:auto}.bin-apps-card,.bin-versions-card{width:100%;max-height:240px}}.upp-back-link{text-decoration:none}.upp-form{max-width:980px}.upp-fields-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,2fr) auto;gap:12px;align-items:end}.upp-field-wide{min-width:0}.upp-isdev-check{display:flex;align-items:center;gap:4px;height:36px;font-size:13px;font-weight:600;color:var(--navy);cursor:pointer;white-space:nowrap}@media (max-width: 900px){.upp-fields-grid{grid-template-columns:1fr}}.upp-app-header{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,1fr);gap:12px}@media (max-width: 700px){.upp-app-header{grid-template-columns:1fr}}.upp-parameters{display:flex;flex-direction:column;gap:4px}.upp-parameter-row{display:flex;align-items:center;gap:8px;padding:4px 0}.upp-parameter-name{width:280px;flex:0 0 auto;display:flex;align-items:center;gap:4px;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upp-parameter-value{flex:1}.upp-add-app-row{display:flex;justify-content:flex-start}.upp-errors{border:1px solid rgba(230,57,70,.35)}.upp-errors-title{color:var(--danger)}.upp-errors-list{margin:0;padding-left:20px;color:var(--danger);font-size:13px;display:flex;flex-direction:column;gap:2px}.upp-submit-row{display:flex;justify-content:flex-end;padding-bottom:8px}.upp-test-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;color:var(--text-muted);text-align:center}.upp-test-spinner{color:var(--blue);animation:upp-spin 1s linear infinite}@keyframes upp-spin{to{transform:rotate(360deg)}}.upp-test-results{display:flex;flex-direction:column;gap:8px}.upp-test-global{display:flex;align-items:center;gap:8px;padding:12px;border-radius:var(--radius-control);font-weight:600}.upp-test-global-success{background:var(--success-tint);color:var(--success)}.upp-test-global-error{background:var(--danger-tint);color:var(--danger)}.upp-script-result{border-radius:var(--radius-control);padding:8px 12px}.upp-script-success{background:var(--success-tint)}.upp-script-error{background:var(--danger-tint)}.upp-script-header{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--navy)}.upp-script-success .upp-script-header svg{color:var(--success)}.upp-script-error .upp-script-header svg{color:var(--danger)}.upp-script-output{margin-top:8px;padding:8px;border-radius:var(--radius-control);background:#0B1526;max-height:240px;overflow:auto;font-size:12px}.upp-output-line{color:#9fb3cc;white-space:pre-wrap}.upp-error-line{color:#ff8a93;white-space:pre-wrap}.pol-search{width:320px}.pol-create-link{text-decoration:none}.pol-list-card{width:300px;flex:0 0 auto}.pol-versions-card{width:180px;flex:0 0 auto}.pol-list-card .u-list,.pol-versions-card .u-list{padding:4px}.pol-details-column{flex:1}.pol-details-placeholder{flex:1;justify-content:center}.pol-loading{padding:16px;color:var(--text-faint);text-align:center}.pol-app-noparams{padding:0 16px 16px;font-size:13px}.pol-groups-list{display:flex;flex-wrap:wrap;gap:8px}.pol-group-chip{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border-radius:var(--radius-pill);background:var(--navy-tint);color:var(--navy);font-size:13px;font-weight:600;text-decoration:none;transition:all .15s ease}.pol-group-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-resting)}.pol-group-chip-count{font-size:11px;background:rgba(0,34,74,.12);border-radius:var(--radius-pill);padding:1px 6px}.pol-companies{font-size:13px}@media (max-width: 1100px){.pol-page .page-body{flex-direction:column;overflow-y:auto}.pol-list-card,.pol-versions-card{width:100%;max-height:240px}}.dg-search{width:320px}.dg-table-card{flex:1;min-height:0}.dg-loading{padding:16px;color:var(--text-faint);text-align:center}.dg-td-name{font-weight:600;color:var(--navy)}.dg-td-description{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.dg-policy-cell{display:flex;align-items:center;gap:8px}.dg-policy-link{display:inline-flex;align-items:center;gap:4px;color:var(--blue);text-decoration:none;font-weight:600}.dg-policy-link:hover{text-decoration:underline}.dg-devices-count{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border:none;border-radius:var(--radius-pill);background:var(--navy-tint);color:var(--navy);font-weight:600;cursor:pointer;transition:all .15s ease}.dg-devices-count:not(:disabled):hover{transform:translateY(-1px);box-shadow:var(--shadow-resting)}.dg-devices-count:disabled{opacity:.5;cursor:default}.dg-delete-button:not(:disabled){color:var(--danger)}.dg-devices-table{max-height:55vh}.dg-device-link{color:var(--blue);text-decoration:none}.dg-device-link:hover{text-decoration:underline}.dev-search{width:300px}.dev-quick-filters{display:flex;gap:4px;padding:2px;border-radius:var(--radius-control);background:rgba(0,34,74,.06)}.dev-quick-filter{height:30px;padding:0 12px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);font-weight:600;font-size:13px;cursor:pointer;transition:all .15s ease}.dev-quick-filter:hover{color:var(--navy)}.dev-quick-filter-active{background:var(--surface);color:var(--navy);box-shadow:var(--shadow-resting)}.dev-table-card{flex:1;min-height:0}.dev-loading{padding:16px;color:var(--text-faint);text-align:center}.dev-status-dot{display:inline-block;width:9px;height:9px;border-radius:var(--radius-pill)}.dev-status-online{background:var(--success);box-shadow:0 0 0 3px var(--success-tint)}.dev-status-offline{background:var(--text-faint)}.dev-td-id{font-weight:600;color:var(--navy)}.dev-group-link{color:var(--blue);text-decoration:none;font-weight:600}.dev-group-link:hover{text-decoration:underline}.dev-vehicle-cell{display:flex;align-items:center;gap:4px}.dev-vehicle-cell .u-btn{width:28px;height:28px;opacity:0;transition:opacity .15s ease}.u-table tbody tr:hover .dev-vehicle-cell .u-btn{opacity:1}.dev-td-lastseen{white-space:nowrap;color:var(--text-muted)}.dev-sort-active{color:var(--blue)}.dev-sort-idle{opacity:.35}.dev-pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 16px;border-top:var(--border)}.dev-pager-info{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}.dev-label-link{text-decoration:none}.dev-kv-key-value{font-size:11px;word-break:break-all}.dev-notes{display:flex;flex-direction:column;gap:8px}.dev-notes-list{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto;padding:8px 12px;border-radius:var(--radius-control);background:var(--page-bg)}.dev-note{display:flex;align-items:baseline;gap:12px;font-size:13px}.dev-note-date{flex:0 0 auto;color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.dev-note-message{color:var(--text);overflow-wrap:anywhere}.usr-search{width:300px}.usr-table-card{flex:1;min-height:0}.usr-loading{padding:16px;color:var(--text-faint);text-align:center}.usr-td-username{font-weight:600;color:var(--navy)}.usr-roles{display:flex;gap:4px;flex-wrap:wrap}.usr-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-container{width:250px;flex:0 0 auto;height:100vh;padding:8px}@media (max-width: 768px){.menu-container{display:none}}.menu-panel{display:flex;flex-direction:column;align-items:stretch;gap:8px;height:100%;padding:16px 8px 8px;border-radius:var(--radius-card);background-color:var(--navy);box-shadow:var(--shadow-resting)}.menu-logo-link{display:flex;align-items:center;gap:8px;padding:4px 8px 12px;text-decoration:none}.menu-logo{width:36px;height:36px;transition:transform .25s ease}.menu-logo-link:hover .menu-logo{transform:rotate(180deg)}.menu-logo-text{color:#fff;font-size:20px;font-weight:700;letter-spacing:.5px}.menu-logo-text-accent{color:var(--blue)}.menu-logo-text-sub{margin-left:4px;font-size:12px;font-weight:100;color:#fff9;letter-spacing:2px}.menu-search-button{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-control);background:rgba(255,255,255,.08);color:#ffffffbf;cursor:pointer;transition:all .15s ease}.menu-search-button:hover{background:rgba(255,255,255,.14);color:#fff}.menu-search-button-label{flex:1;text-align:left;font-size:13px}.menu-search-kbd{font-family:var(--font);font-size:11px;padding:2px 6px;border-radius:4px;background:rgba(255,255,255,.12);color:#fff9}.menu-section-title{margin-top:8px;padding:0 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#ffffff73}.menu-links{display:flex;flex-direction:column;gap:4px}.menu-link{display:flex;align-items:center;gap:8px;padding:10px 8px;border-radius:var(--radius-control);color:#fffc;text-decoration:none;transition:all .15s ease}.menu-link:hover{background:rgba(255,255,255,.1);color:#fff}.menu-link-active,.menu-link-active:hover{background:var(--blue);color:#fff}.menu-link-title{font-size:14px;font-weight:500;letter-spacing:.3px}.menu-logout{display:flex;align-items:center;gap:8px;padding:10px 8px;border:none;border-radius:var(--radius-control);background:transparent;color:#ffffffa6;cursor:pointer;transition:all .15s ease}.menu-logout:hover{background:var(--danger-tint);color:#ff8a93}.gs-backdrop{position:fixed;inset:0;z-index:4100;background:rgba(0,34,74,.35);display:flex;justify-content:center;align-items:flex-start;padding:12vh 24px 24px}.gs-panel{width:100%;max-width:640px;max-height:70vh;display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-floating);animation:gs-in .15s ease;overflow:hidden}@keyframes gs-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.gs-input-row{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:var(--border)}.gs-input-icon{color:var(--text-faint);flex:0 0 auto}.gs-input{flex:1;min-width:0;border:none;outline:none;font-size:16px;background:transparent;color:var(--text)}.gs-input::placeholder{color:var(--text-faint)}.gs-refresh{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);cursor:pointer}.gs-refresh:hover{background:var(--hover-fill)}.gs-refresh-spinning svg{animation:gs-spin 1s linear infinite}@keyframes gs-spin{to{transform:rotate(360deg)}}.gs-results{flex:1;min-height:0;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px}.gs-hint{padding:24px 16px;text-align:center;color:var(--text-faint);font-size:13px}.gs-group{display:flex;flex-direction:column;gap:2px}.gs-group-title{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted)}.gs-group-more{margin-left:auto;font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-faint)}.gs-result{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;border-radius:var(--radius-control);background:transparent;cursor:pointer;text-align:left;transition:background .1s ease}.gs-result-active{background:var(--blue-tint)}.gs-result-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.gs-result-title{color:var(--navy);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gs-result-sub{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gs-result-enter{color:var(--text-faint);opacity:0;flex:0 0 auto}.gs-result-active .gs-result-enter{opacity:1}.gs-footer{display:flex;gap:16px;padding:8px 16px;border-top:var(--border);font-size:12px;color:var(--text-faint)}.gs-footer kbd{font-family:var(--font);display:inline-block;min-width:18px;padding:1px 4px;margin-right:2px;text-align:center;border-radius:4px;background:var(--page-bg);border:var(--border)}:root{--navy: #00224A;--blue: #1079FC;--text: #2A3850;--text-muted: #6B7A93;--text-faint: #95A2B8;--page-bg: #EEF2F8;--surface: #FFFFFF;--danger: #E63946;--success: #16A34A;--warning: #F59E0B;--border: 1px solid rgba(0, 34, 74, .12);--border-color: rgba(0, 34, 74, .12);--hover-fill: rgba(0, 34, 74, .06);--blue-tint: rgba(16, 121, 252, .12);--navy-tint: rgba(0, 34, 74, .1);--danger-tint: rgba(230, 57, 70, .12);--success-tint: rgba(22, 163, 74, .12);--warning-tint: rgba(245, 158, 11, .14);--radius-card: 16px;--radius-control: 8px;--radius-chip: 12px;--radius-pill: 999px;--shadow-resting: 0 2px 4px rgba(0, 34, 74, .08);--shadow-floating: 0 6px 16px rgba(0, 34, 74, .18);--focus-ring: 0 0 0 3px rgba(16, 121, 252, .18);--font: "Google Sans Flex", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html{height:100vh;overflow:hidden;max-height:100vh}body{margin:0;padding:0;height:100vh;width:100vw;font-family:var(--font);font-size:14px;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100vh;width:100vw;overflow:hidden}h1,h2,h3,h4{margin:0;color:var(--navy)}input,select,textarea,button{font-family:var(--font);font-size:14px;color:var(--text)}a{color:var(--blue)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,34,74,.18);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:rgba(0,34,74,.32)}.hidden-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hidden-scrollbar::-webkit-scrollbar{display:none}.spacer{flex:1}.flex-row{display:flex;flex-direction:row;width:100%;justify-content:flex-start;align-items:center}.noselect{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.page-root{flex:1;min-width:0;height:100vh;display:flex;flex-direction:column;gap:8px;padding:8px 8px 8px 0;background:var(--page-bg);overflow:hidden}.page-titlebar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:44px;padding:0 8px}.page-titlebar h1{font-size:20px;font-weight:700;color:var(--navy);margin-right:auto;display:flex;align-items:center;gap:8px}.page-titlebar-count{font-size:13px;font-weight:400;color:var(--text-muted)}.page-body{flex:1;min-height:0;display:flex;gap:8px}.page-body-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin:-4px;padding:4px}.page-body-scroll>*{flex-shrink:0}.section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--navy)}.mono{font-family:var(--font-mono);font-size:13px}.text-muted{color:var(--text-muted)}.error-boundary{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:var(--page-bg)}.error-boundary-title{font-size:20px;font-weight:700;color:var(--navy)}.error-boundary-message{max-width:640px;padding:12px 16px;border-radius:var(--radius-control);background:var(--danger-tint);color:var(--danger);overflow-wrap:anywhere}.error-boundary-button{height:36px;padding:0 16px;border:none;border-radius:var(--radius-control);background:var(--blue);color:#fff;font-weight:600;cursor:pointer;transition:all .15s ease}.error-boundary-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-floating)}
