:root{font-family:Tahoma,Arial,sans-serif;color:#17202a;background:#f7f9fb;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f7f9fb}.page-shell{width:min(100% - 2rem,72rem);margin-inline:auto;padding-block:3rem}.stack{display:flex;flex-direction:column}.stack-sm{gap:.5rem}.stack-md{gap:.75rem}.stack-lg{gap:1.5rem}.text{margin:0}.text-display{font-size:clamp(1.8rem,4vw,3rem)}.text-muted{color:#52606d}.status{display:inline-flex;border-radius:.375rem;padding:.25rem .5rem}.status-info{color:#1769aa;background:#e8f1f8}.status-success{color:#18794e}.status-danger{color:#b42318}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:1rem;padding:1rem clamp(1rem,3vw,2rem);background:#fff;border-bottom:1px solid #d9e2ec}.app-brand{display:flex;flex-direction:column;gap:.2rem;min-width:max-content}.app-brand strong{font-size:1.05rem}.app-subtitle,.organization-id,.principal-role{color:#52606d;font-size:.82rem}.app-context{display:flex;flex-direction:column;gap:.2rem;min-width:0;margin-inline:auto}.organization-name,.principal-id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-user{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;max-width:14rem;min-width:0}button,input{font:inherit}button{cursor:pointer;border:0;border-radius:.5rem;padding:.65rem 1rem;color:#fff;background:#1769aa}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8fc7ed;outline-offset:2px}input{display:block;width:100%;margin-top:.35rem;border:1px solid #d9e2ec;border-radius:.5rem;padding:.65rem}.auth-page{display:grid;min-height:100vh;place-items:center;padding:1rem}.auth-card{width:min(100%,28rem);padding:2rem;background:#fff;border:1px solid #d9e2ec;border-radius:1rem;box-shadow:0 1rem 3rem #17202a14}.form-error{color:#b42318}.loading-state{color:#1769aa}.app-nav{display:flex;gap:.35rem;padding:.65rem clamp(1rem,3vw,2rem);background:#fff;border-bottom:1px solid #d9e2ec;overflow-x:auto}.app-nav a{color:#52606d;text-decoration:none;border-radius:.4rem;padding:.5rem .75rem;white-space:nowrap}.app-nav a.active{color:#1769aa;background:#e8f1f8;font-weight:700}.app-content{flex:1}.dashboard-empty{width:min(100% - 2rem,72rem);margin-inline:auto;margin-block:2rem;padding:2rem;border:1px dashed #d9e2ec;border-radius:1rem;background:#fff}.dashboard-page .page-heading{margin-block-end:1.25rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem}.dashboard-card{min-width:0;padding:1.25rem;border:1px solid #d9e2ec;border-radius:.85rem;background:#fff;box-shadow:0 .2rem .8rem #17202a0a}.dashboard-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.dashboard-card-heading h2{margin:0;font-size:1.05rem}.dashboard-card-heading a{color:#1769aa;text-decoration:none;white-space:nowrap}.dashboard-card-value{display:flex;flex-direction:column;gap:.2rem;margin-block-start:1.1rem}.dashboard-card-value strong{font-size:2rem;line-height:1}.dashboard-card-value span,.dashboard-card-value small{color:#52606d}.dashboard-unavailable{color:#52606d;margin-block-end:0}.dashboard-card-error{margin-block-start:1rem}.dashboard-card-error p{margin-block:0 .75rem}.dashboard-card-error button{padding:.5rem .75rem}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-block-end:1.5rem}.page-heading h1{margin:.4rem 0 0}.back-link{color:#1769aa;text-decoration:none;font-size:.9rem}.button-link{display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#1769aa;border-radius:.5rem;padding:.65rem 1rem;text-decoration:none;white-space:nowrap}.data-table-desktop{overflow-x:auto;border:1px solid #d9e2ec;border-radius:.75rem;background:#fff}.data-table{width:100%;border-collapse:collapse;min-width:46rem}.data-table th,.data-table td{padding:.85rem 1rem;text-align:start;border-bottom:1px solid #edf2f7;vertical-align:middle}.data-table th{color:#52606d;font-size:.85rem;background:#f7f9fb}.data-table tbody tr:last-child td{border-bottom:0}.data-table a,.card-action{color:#1769aa;text-decoration:none;font-weight:600}.data-table-mobile{display:none}.data-card{background:#fff;border:1px solid #d9e2ec;border-radius:.75rem;padding:1rem}.shipment-card-content{display:flex;flex-direction:column;gap:.8rem}.shipment-card-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.compact-details,.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0}.compact-details div,.detail-grid div{min-width:0}dt{color:#52606d;font-size:.82rem}dd{margin:.2rem 0 0;overflow-wrap:anywhere}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-block-start:1.25rem}.pagination button:disabled{cursor:not-allowed;opacity:.45}.empty-state{padding:2rem;text-align:center;border:1px dashed #d9e2ec;border-radius:.75rem;background:#fff}.empty-state h2{margin-block-start:0}.empty-state p{color:#52606d}.detail-card{padding:clamp(1rem,3vw,2rem);border:1px solid #d9e2ec;border-radius:.85rem;background:#fff}.detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-block-end:1.25rem;border-bottom:1px solid #edf2f7}.detail-heading h2{margin:.25rem 0 0;overflow-wrap:anywhere}.eyebrow{margin:0;color:#52606d;font-size:.82rem}.detail-grid{margin-block:1.5rem}.detail-section{margin-block-start:1.5rem;padding-block-start:1.25rem;border-top:1px solid #edf2f7}.detail-section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.detail-section-heading h3{margin-block:0}.locations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.location-block,.stops{padding:1rem;border-radius:.65rem;background:#f7f9fb}.location-block h3,.stops h3,.detail-actions h3{margin-block-start:0}.location-block p{margin-block:.4rem 0;overflow-wrap:anywhere}.stops{margin-block-start:1rem}.stops li+li{margin-block-start:.45rem}.detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin-block-start:1.5rem;padding-block-start:1.25rem;border-top:1px solid #edf2f7}.detail-actions h3{flex-basis:100%;margin-block-end:0}.success-message{color:#18794e}.trip-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;padding:0;margin:1.5rem 0;list-style:none}.trip-progress li{display:flex;justify-content:center;padding:.45rem;border:1px solid #d9e2ec;border-radius:.5rem;opacity:.55}.trip-progress li.current{opacity:1;border-color:#8fc7ed;background:#f2f8fc}.shipment-form{display:flex;flex-direction:column;gap:1.25rem;padding:clamp(1rem,3vw,2rem);background:#fff;border:1px solid #d9e2ec;border-radius:.85rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-field{min-width:0}.form-field label{display:block;font-weight:600}.form-field input{margin-block-start:.45rem}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.location-fieldset{display:flex;flex-direction:column;gap:1rem;border:1px solid #d9e2ec;border-radius:.65rem;padding:1rem}.location-fieldset legend{padding-inline:.4rem;font-weight:700}.form-errors{color:#b42318;padding:.75rem 1rem;border:1px solid #f4b4ae;border-radius:.5rem;background:#fff5f4}.form-errors ul{margin:0;padding-inline-start:1.25rem}.field-error{margin:.35rem 0 0;color:#b42318;font-size:.85rem}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:1rem;background:#17202a73}.dialog{width:min(100%,30rem);padding:1.5rem;border-radius:.8rem;background:#fff;box-shadow:0 1rem 3rem #17202a38}.dialog h2{margin-block-start:0}.dialog-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-block-start:1.25rem}@media(max-width:720px){.app-header{flex-wrap:wrap}.app-context{order:3;flex-basis:calc(100% - 5rem);margin-inline:0}.app-user{margin-inline-start:auto}.data-table-desktop{display:none}.data-table-mobile{display:grid;gap:.75rem}}@media(max-width:480px){.app-header{align-items:flex-start}.app-user{max-width:9rem}.app-user .principal-id{display:none}.dashboard-empty{padding:1.25rem}.page-heading{flex-direction:column}.page-heading .button-link{align-self:stretch}.detail-heading,.detail-section-heading{flex-direction:column;align-items:flex-start}.detail-grid,.locations-grid,.form-grid,.field-row,.compact-details{grid-template-columns:1fr}.trip-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.shipment-form{padding:1rem}}
