@import url(https://fonts.googleapis.com/css2?family=Beth+Ellen&family=Cedarville+Cursive&family=Fasthand&family=Freehand&family=Homemade+Apple&family=Hurricane&family=Nothing+You+Could+Do&family=Playwrite+CA:wght@100..400&family=Reenie+Beanie&family=Seaweed+Script&family=Shadows+Into+Light&family=Sue+Ellen+Francisco&family=Vibur&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}*{box-sizing:border-box}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.header{background-color:#033d82;box-shadow:0 2px 4px #0000001a;color:#fff;margin-bottom:2rem;padding:1.5rem 0}.header-bar{align-items:center;display:flex;gap:1rem;justify-content:space-between}.header h1{font-size:1.75rem;margin:0}.header-actions{align-items:center;display:flex;justify-content:flex-end;min-height:2.25rem}.header-tutorial-controls{align-items:center;display:inline-flex;gap:.5rem;position:relative;z-index:30020}.tutorial-help-button{align-items:center;background-color:#6c757d;border:none;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.2rem;font-weight:700;height:2.25rem;justify-content:center;line-height:1;transition:background-color .2s;width:2.25rem}.tutorial-help-button:hover{background-color:#5a6268}.tutorial-help-button:focus-visible{outline:2px solid #fff;outline-offset:2px}.tutorial-demo-pill{background:#f8f3cd;border:1px solid #e8d786;border-radius:999px;color:#6a4f00;font-size:.8rem;font-weight:600;padding:.35rem .55rem}.container{margin:0 auto;max-width:1200px;padding:0 1rem}.card{background:#fff;border-radius:4px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.card h2{border-bottom:2px solid #033d82;color:#033d82;margin-top:0;padding-bottom:.5rem}.card h3{color:#033d82;margin-bottom:1rem;margin-top:1.5rem}.form{gap:1rem}.form,.form-group{display:flex;flex-direction:column}.form-group label{color:#333;font-weight:500;margin-bottom:.5rem}.input{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:1rem;padding:.75rem}.input:focus{border-color:#033d82;box-shadow:0 0 0 3px #033d821a;outline:none}select.input{appearance:menulist;background-color:#fff;width:100%}.combo-input-shell{position:relative}.combo-input-field{padding-right:3rem}.combo-input-arrow{color:#033d82;font-size:1rem;pointer-events:none;position:absolute;right:.9rem;top:50%;transform:translateY(-50%)}.combo-input-picker{appearance:auto;cursor:pointer;height:100%;opacity:0;position:absolute;right:0;top:0;width:3rem}.button{border:none;border-radius:4px;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.button-primary{background-color:#033d82;color:#fff}.button-primary:hover{background-color:#022853}.button-secondary{background-color:#6c757d;color:#fff}.button-secondary:hover{background-color:#5a6268}.button-danger{background-color:#dc3545;color:#fff;padding:.75rem 1.5rem}.button-danger:hover{background-color:#c82333}.button-danger-small{background-color:#dc3545;color:#fff;font-size:.875rem;padding:.5rem 1rem}.button-danger-small:hover{background-color:#c82333}.button-group{display:flex;gap:1rem;margin-bottom:1.5rem}.button-group button{flex:1 1}.list{list-style:none;margin:0;padding:0}.list li{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:1rem}.list li:last-child{border-bottom:none}.list li>div{flex:1 1}.table-wrapper{margin-bottom:1.5rem;overflow-x:auto}.table{background:#fff;border-collapse:collapse;width:100%}.table thead{background-color:#f8f9fa}.table th{border-bottom:2px solid #dee2e6;color:#033d82;font-weight:600;padding:.75rem;text-align:left}.table td{border-bottom:1px solid #dee2e6;padding:.75rem}.table tbody tr:hover{background-color:#f8f9fa}.empty-state{color:#6c757d;font-style:italic;padding:2rem;text-align:center}.nav{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.nav a{border-radius:4px;color:#033d82;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}.nav a.active,.nav a:hover{background-color:#0339821a;font-weight:500}.section{margin-bottom:2rem}.section-title{border-left:4px solid #033d82;color:#033d82;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-left:1rem}.details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.detail-item{background-color:#f8f9fa;border-radius:4px;padding:1rem}.detail-item strong{color:#033d82;display:block;margin-bottom:.5rem}.detail-item span{color:#666}.error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.error,.success{margin-bottom:1rem;padding:1rem}.success{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724}.signature-preview{align-items:center;background:#fafafa;border:1px solid #ddd;border-radius:4px;display:flex;font-size:2rem;line-height:1.2;min-height:56px;padding:.75rem}.modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:1rem;pointer-events:auto;position:fixed;z-index:40000}.modal{background:#fff;border-radius:8px;border-top:5px solid #033d82;box-shadow:0 10px 30px #0003;padding:1.25rem;width:min(520px,100%)}.modal-title{color:#033d82;margin:0 0 .6rem}.modal-body{color:#333;line-height:1.45;margin-bottom:1rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.loading{color:#6c757d;padding:2rem;text-align:center}@media (max-width:768px){.header h1{font-size:1.25rem}.header-bar{align-items:flex-start}.tutorial-help-button{font-size:1.05rem;height:2rem;width:2rem}.tutorial-demo-pill{display:none}.button-group{flex-direction:column}.details{grid-template-columns:1fr}.table{font-size:.875rem}.table td,.table th{padding:.5rem}.modal-actions{flex-direction:column}}.toggle-group{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.toggle-label{color:#333;font-weight:500}.toggle{cursor:pointer;display:inline-block;height:26px;position:relative;width:48px}.toggle input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:26px;inset:0;position:absolute;transition:background-color .2s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:20px;left:3px;position:absolute;transition:transform .2s;width:20px}.toggle input:checked+.toggle-slider{background-color:#033d82}.toggle input:checked+.toggle-slider:before{transform:translateX(22px)}.action-bar{justify-content:space-between;margin-bottom:1.5rem}.action-bar,.action-bar-left{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.action-bar-right{display:flex;flex-wrap:wrap;gap:.75rem}.search-input{width:180px}.list-item-clickable{cursor:pointer}.list-item-clickable:hover{background-color:#f0f4ff}.card-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.card-header-row h3{margin:0}.item-title{font-weight:600;margin-bottom:.25rem}.item-meta{color:#555;display:flex;flex-wrap:wrap;font-size:.875rem;gap:.75rem}.item-problem{color:#888;font-style:italic}.so-number{color:#033d82;font-size:1rem;font-weight:700;margin-bottom:.25rem}.so-meta{color:#555;display:flex;font-size:.875rem;gap:1rem}.badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.03em;padding:.2rem .6rem;text-transform:uppercase}.badge-depot{background-color:#fff3cd;color:#856404}.badge-so{background-color:#cfe2ff;color:#084298}.badge-travel{background-color:#d1e7dd;color:#0a3622}.badge-trip-to-so{background-color:#d1fae5;color:#065f46}.badge-return-trip{background-color:#eaf2ff;color:#1f4e8c}.badge-depot-trip{background-color:#fef3c7;color:#7c4a03}.badge-other-trip{background-color:#f3e8ff;color:#6b21a8}.week-separator{background-color:#eef2f8;border-left:4px solid #033d82;border-radius:4px 4px 0 0;color:#033d82;font-size:.875rem;font-weight:600;margin-bottom:0;margin-top:1.5rem;padding:.5rem 1rem}.expense-row-content{align-items:flex-start;display:flex;flex:1 1;gap:1rem}.expense-delete-btn{align-items:center;align-self:center;background:none;border:none;border-radius:4px;color:#aaa;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:.25rem;transition:color .15s,background-color .15s}.expense-delete-btn:hover{background-color:#fdecea;color:#dc3545}.expense-delete-btn:disabled{cursor:not-allowed;opacity:.4}.expense-date{color:#033d82;font-size:.875rem;font-weight:600;min-width:90px;padding-top:.1rem}.expense-detail{align-items:center;display:flex;flex-wrap:wrap;font-size:.875rem;gap:.5rem}.expense-notes{color:#888;font-style:italic}.catalog-layout{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.catalog-column{min-height:520px}.catalog-selected{background-color:#e6f0ff;border-left:4px solid #033d82}.catalog-item-row{align-items:center;display:flex;gap:.5rem;justify-content:flex-start;width:100%}.catalog-item-content{flex:1 1;min-width:0}.catalog-item-actions{display:flex;flex-shrink:0;gap:.35rem;margin-left:auto}.catalog-icon-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;line-height:1;padding:.25rem .4rem;transition:background-color .15s}.catalog-icon-btn:hover{background-color:#00000014}.catalog-delete-btn:hover{background-color:#fee2e2}.catalog-save-btn:hover{background-color:#dcfce7}.catalog-inline-input{border:1px solid #033d82;border-radius:4px;font-family:inherit;font-size:1rem;font-weight:600;outline:none;padding:.2rem .4rem;width:100%}@media (max-width:900px){.catalog-layout{grid-template-columns:1fr}}