@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:.875rem;color:#222;background:#faf8f2;line-height:1.6;min-height:100vh}a{color:#c26800;text-decoration:none}a:hover{text-decoration:underline}table{border-collapse:collapse;border-spacing:0}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:.9375rem;line-height:1.5}.btn,.btn-add,.btn-ghost,.btn-muted,.btn-danger,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;font-weight:600;letter-spacing:.04em;border:1px solid #B0A790;border-radius:8px;background:#fff;color:#222;box-shadow:0 1px #1f29370a;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .12s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:hover,.btn-add:hover,.btn-ghost:hover,.btn-muted:hover,.btn-danger:hover,.btn-primary:hover{background:#faf8f2;border-color:#756d58;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;text-decoration:none}.btn:active,.btn-add:active,.btn-ghost:active,.btn-muted:active,.btn-danger:active,.btn-primary:active{transform:translateY(1px);box-shadow:0 1px #1f29370a}.btn:focus-visible,.btn-add:focus-visible,.btn-ghost:focus-visible,.btn-muted:focus-visible,.btn-danger:focus-visible,.btn-primary:focus-visible{outline:none;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708,0 0 0 3px #ffd60047;border-color:#ffd600}.btn:disabled,.btn-add:disabled,.btn-ghost:disabled,.btn-muted:disabled,.btn-danger:disabled,.btn-primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn:disabled:hover,.btn-add:disabled:hover,.btn-ghost:disabled:hover,.btn-muted:disabled:hover,.btn-danger:disabled:hover,.btn-primary:disabled:hover{background:#fff;border-color:#b0a790}.btn-primary{background:#ffd600;border-color:#ffd600;color:#222;font-weight:700;letter-spacing:.04em;box-shadow:0 4px 14px #ffd60059,0 1px #22222214}.btn-primary:hover:not(:disabled){background:#f5ca00;border-color:#f5ca00;color:#222;box-shadow:0 6px 18px #ffd60066,0 1px #2222221a;transform:translateY(-1px)}.btn-primary:active:not(:disabled){background:#e5bc00;border-color:#e5bc00;transform:translateY(0);box-shadow:0 1px #1f29370a}.btn-primary:disabled,.btn-primary:disabled:hover{background:#f2f0e7;border-color:#d5cdb7;color:#6b644f;box-shadow:none;transform:none;opacity:1;cursor:not-allowed}.btn-danger{color:#e53935;border-color:#e5393566;background:#fff}.btn-danger:hover{background:#e539350f;border-color:#e53935;color:#c62828;box-shadow:0 0 0 3px #e5393514}.btn-muted{color:#6b644f;border-color:#d5cdb7;background:transparent;box-shadow:none}.btn-muted:hover{background:#1f29370a;color:#3a3a3a;box-shadow:none}.btn-ghost{border-color:transparent;background:transparent;box-shadow:none}.btn-ghost:hover{background:#1f29370a;border-color:transparent;box-shadow:none}.btn-sm{padding:.25rem .75rem;font-size:.8125rem;letter-spacing:0}.btn-add{border-style:dashed;border-color:#756d58;color:#222}.btn-add:hover{border-color:#ffd600;border-style:solid;background:#ffd6001f;color:#222;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708,0 0 0 3px #ffd6002e}.btn-add:active{background:#ffd60038}.form-section{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;border:1px solid rgba(31,41,55,.08);margin-bottom:1rem}.form-section h2{font-size:.9375rem;font-weight:800;color:#222;letter-spacing:-.012em;margin-bottom:1rem;padding-bottom:.75rem;padding-left:.75rem;border-bottom:1px solid #D5CDB7;border-left:4px solid #455A64}.form-row{display:flex;gap:1rem;margin-bottom:.75rem}@media(max-width:768px){.form-row{flex-direction:column}}.form-group{flex:1;display:flex;flex-direction:column}.form-group.flex-2{flex:2}.form-group label{font-size:.6875rem;font-weight:700;color:#3a3a3a;margin-bottom:.25rem;letter-spacing:.04em;text-transform:none}.form-group .required{color:#e53935;margin-left:2px}.form-group .label-hint{margin-left:.5rem;font-size:.6875rem;font-weight:400;color:#6b644f;letter-spacing:0}.empty-state,.error-state{background:#fff;border-radius:12px;padding:2rem 1.5rem;margin:1.5rem auto;max-width:480px;text-align:center;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;border:1px solid rgba(31,41,55,.08);display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-state h2,.error-state h2{margin:0;font-size:1.0625rem;color:#222}.empty-state p,.error-state p{margin:0;color:#3a3a3a;line-height:1.6}.form-group input,.form-group select,.form-group textarea{padding:.5rem .75rem;font-family:inherit;font-size:.875rem;color:#222;background:#f2f0e7;border:1px solid #B0A790;border-radius:8px;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#6f6755}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#756d58}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;background:#fff;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60047}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#faf8f2;color:#6b644f;cursor:not-allowed;box-shadow:none}.form-group textarea{resize:vertical;min-height:4em;line-height:1.55}.form-group input[type=number],.form-group input[type=date],.form-group input[type=time],.form-group input[type=datetime-local]{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.form-group .readonly-value{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem .75rem;font-size:.9375rem;font-weight:600;color:#222}.form-group .readonly-value .readonly-hint{font-size:.6875rem;font-weight:400;color:#6b644f;margin-left:.5rem}.date-range-row{display:flex;align-items:center;gap:.5rem}.date-range-row input{flex:1}.date-range-sep{color:#3a3a3a;font-weight:500;flex-shrink:0}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.25rem}.form-actions--sticky{flex-direction:column;align-items:stretch;position:sticky;bottom:.5rem;z-index:10;margin-top:auto;padding-top:1.5rem}.form-actions-hint{margin:0;padding:.5rem 1rem;font-size:.8125rem;font-weight:700;color:#e65100;background:#ff98001f;border:1px solid rgba(255,152,0,.4);border-radius:8px}.form-actions-bar{display:flex;gap:.75rem;justify-content:flex-end;align-items:center;padding:1rem 1.25rem;background:#2a3140;border-radius:12px;box-shadow:0 -8px 24px #1f293724,0 4px 12px #1f29371a}@media(max-width:768px){.form-actions-bar{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}}.form-actions-bar .btn,.form-actions-bar .btn-primary,.form-actions-bar .btn-danger,.form-actions-bar .btn-muted,.form-actions-bar .btn-ghost,.form-actions-bar .btn-add{background:transparent;border-color:#ffffff40;color:#ffffffd9;box-shadow:none;letter-spacing:.04em}.form-actions-bar .btn:hover,.form-actions-bar .btn-primary:hover,.form-actions-bar .btn-danger:hover,.form-actions-bar .btn-muted:hover,.form-actions-bar .btn-ghost:hover,.form-actions-bar .btn-add:hover{background:#ffffff14;border-color:#ffffff80;color:#fff;box-shadow:none}.form-actions-bar .btn:disabled,.form-actions-bar .btn-primary:disabled,.form-actions-bar .btn-danger:disabled,.form-actions-bar .btn-muted:disabled,.form-actions-bar .btn-ghost:disabled,.form-actions-bar .btn-add:disabled{opacity:.4;background:transparent}.form-actions-bar .btn-primary{padding:.75rem 1.75rem;font-size:.9375rem;min-width:180px;background:#ffd600;border-color:#ffd600;color:#222;box-shadow:0 4px 14px #ffd60073,0 1px #0003}.form-actions-bar .btn-primary:hover:not(:disabled){background:#f5ca00;border-color:#f5ca00;color:#222;box-shadow:0 6px 20px #ffd6008c,0 1px #0003}.form-actions-bar .btn-primary:disabled,.form-actions-bar .btn-primary:disabled:hover{background:#ffffff14;border-color:#ffffff2e;color:#ffffff8c;box-shadow:none;opacity:1;cursor:not-allowed;transform:none}.data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;background:#fff;border:1px solid rgba(31,41,55,.08)}.data-table{width:100%;background:#fff;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;border:1px solid rgba(31,41,55,.08);overflow:hidden;min-width:600px;border-collapse:separate;border-spacing:0}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;white-space:nowrap}.data-table th{font-size:.6875rem;font-weight:700;color:#fff;letter-spacing:.08em;background:#2a3140;position:sticky;top:0;border-bottom:1px solid #3D4555}.data-table td{font-size:.875rem;vertical-align:middle;border-bottom:1px solid #E5DFD0}.data-table tbody tr{transition:background .2s ease;height:48px}.data-table tbody tr:nth-child(2n){background:#f2f0e773}.data-table tbody tr:hover{background:#ffd60014}.data-table tbody tr:last-child td{border-bottom:none}.data-table .actions{display:flex;gap:.25rem;flex-wrap:nowrap;justify-content:flex-end}.data-table .actions .btn:hover,.data-table .actions .btn-add:hover,.data-table .actions .btn-primary:hover,.data-table .actions .btn-danger:hover,.data-table .actions .btn-muted:hover,.data-table .actions .btn-ghost:hover,.data-table .actions .btn:active,.data-table .actions .btn-add:active,.data-table .actions .btn-primary:active,.data-table .actions .btn-danger:active,.data-table .actions .btn-muted:active,.data-table .actions .btn-ghost:active{transform:none}.data-table .number{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}@media(max-width:768px){.data-table{min-width:0;box-shadow:none;border-radius:0;border:none}.data-table thead{display:none}.data-table tbody tr{display:block;background:#fff;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;margin-bottom:.75rem;padding:.75rem}.data-table tbody tr:nth-child(2n){background:#fff}.data-table td{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid #E5DFD0;white-space:normal}.data-table td:before{content:attr(data-label);font-size:.6875rem;font-weight:700;color:#3a3a3a;letter-spacing:.04em;margin-right:.75rem;flex-shrink:0}.data-table td:last-child{border-bottom:none}.data-table td.actions{justify-content:flex-end}}.card{background:#fff;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;border:1px solid rgba(31,41,55,.08);padding:1.25rem;transition:all .2s ease;border-left:3px solid transparent}.card:hover{box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;border-left-color:#ffd600;transform:translateY(-1px)}.card h2{font-size:.9375rem;font-weight:700;color:#222;margin-bottom:.5rem;letter-spacing:-.012em}.card p{color:#3a3a3a;font-size:.875rem}.detail-section{background:#fff;padding:1.25rem 1.5rem;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;border:1px solid rgba(31,41,55,.08);margin-bottom:1rem}.detail-section h2{font-size:.9375rem;font-weight:800;color:#222;letter-spacing:-.012em;margin-bottom:1rem;padding-bottom:.75rem;padding-left:.75rem;border-bottom:1px solid #D5CDB7;border-left:4px solid #455A64}.detail-grid{display:grid;grid-template-columns:140px 1fr;gap:.75rem 1.25rem;align-items:start}.detail-grid dt{font-size:.8125rem;font-weight:600;color:#3a3a3a;letter-spacing:.04em;padding-top:2px}.detail-grid dd{font-size:.875rem;color:#222;margin:0}.badge{display:inline-flex;align-items:center;padding:2px .5rem;border-radius:20px;font-size:.6875rem;font-weight:600;line-height:1.4;letter-spacing:.04em}.badge.corporate{background:#fff8e1;color:#f57f17;border:1px solid rgba(245,127,23,.2)}.badge.individual{background:#f3e5f5;color:#7b1fa2;border:1px solid rgba(123,31,162,.2)}.status-badge{display:inline-flex;align-items:center;padding:3px .75rem;border-radius:20px;font-size:.6875rem;font-weight:700;line-height:1.4;letter-spacing:.04em;white-space:nowrap}.status-badge-sm{font-size:.6875rem;padding:1px .5rem;vertical-align:middle}.status-badge-lg{font-size:.9375rem;padding:.25rem 1rem;vertical-align:middle}.status-badge-payment{font-size:.6875rem;padding:2px .75rem;vertical-align:middle;opacity:.92;margin-left:.5rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #D5CDB7}.page-header h1{font-size:1.5rem;font-weight:800;color:#222;letter-spacing:-.012em}.page-header .header-actions{display:flex;gap:.5rem;align-items:center}.page-header-title{display:flex;flex-direction:column;gap:.25rem}.page-header-meta{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#3a3a3a;flex-wrap:wrap}.customer-code-label,.vehicle-code-label{font-weight:600;font-family:SF Mono,Cascadia Mono,Consolas,Monaco,Hiragino Sans,monospace;font-size:.875rem;color:#222;letter-spacing:0}.cell-vehicle-ids,.cell-customer-ids{font-weight:600;font-size:.875rem;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.cell-vehicle-sub,.cell-customer-sub{font-size:.6875rem;color:#6b644f;margin-top:2px}.search-bar{display:flex;gap:.75rem;align-items:center;margin-bottom:1.25rem;padding:.75rem 1rem;background:#fff;border-radius:8px;border:1px solid rgba(31,41,55,.08);box-shadow:0 1px #1f29370a;flex-wrap:wrap}.search-bar input[type=text],.search-bar input[type=search]{padding:.5rem .75rem;border:1px solid #B0A790;border-radius:8px;width:280px;font-size:.875rem;background:#f2f0e7;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.search-bar input[type=text]:hover,.search-bar input[type=search]:hover{border-color:#756d58}.search-bar input[type=text]:focus,.search-bar input[type=search]:focus{outline:none;background:#fff;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60047}.search-bar select{padding:.5rem .75rem;border:1px solid #B0A790;border-radius:8px;font-size:.875rem;background:#f2f0e7;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705}.search-bar select:focus{outline:none;background:#fff;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60047}.checkbox-label{font-size:.8125rem;color:#3a3a3a;display:flex;align-items:center;gap:.25rem;cursor:pointer;-webkit-user-select:none;user-select:none}.info-card{padding:1rem;border-radius:12px;margin-top:.75rem;margin-bottom:1rem}.info-card.info{background:#1e88e50f;border-left:3px solid #1E88E5}.info-card.warn{background:#ff980014;border-left:3px solid #FF9800}.loading,.empty{color:#6b644f;padding:2rem;text-align:center;font-size:.9375rem}.error{color:#e53935;font-size:.875rem;margin-bottom:.5rem}.back-link{margin-top:1rem}.back-link a{font-size:.875rem;color:#3a3a3a}.view-toggle{display:flex;border:1px solid #B0A790;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 1px #1f29370a}.view-toggle button{padding:.5rem .75rem;border:none;background:#fff;font-size:.8125rem;font-weight:500;color:#3a3a3a;border-right:1px solid #D5CDB7;transition:all .2s ease;cursor:pointer}.view-toggle button:last-child{border-right:none}.view-toggle button:hover{background:#faf8f2;color:#222}.view-toggle button.active{background:#455a64;color:#fff;font-weight:600}.contact-card{border:1px solid #D5CDB7;border-radius:8px;padding:1rem;margin-bottom:.75rem;background:#faf8f2}.contact-card .contact-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-weight:600;font-size:.875rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#1f293780;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-container{background:#fff;border-radius:12px;box-shadow:0 16px 40px #1f29371f,0 4px 12px #1f29370f;width:90%;max-width:600px;max-height:85vh;display:flex;flex-direction:column}.modal-container.modal-lg{max-width:900px}.modal-container.modal-sm{max-width:420px}.confirm-message{margin:0;font-size:.9375rem;line-height:1.6;color:#222;white-space:pre-wrap}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid #D5CDB7}.modal-header h2{font-size:1.25rem;font-weight:800;color:#222;letter-spacing:-.012em;margin:0}.modal-close{background:none;border:none;font-size:1.5rem;color:#6b644f;line-height:1;padding:0 .5rem;cursor:pointer;transition:color .2s ease}.modal-close:hover{color:#222}.modal-tabs{display:flex;border-bottom:1px solid #D5CDB7;padding:0 1.25rem}.modal-tabs button{padding:.75rem 1rem;border:none;background:none;font-size:.9375rem;font-weight:600;color:#6b644f;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;transition:all .2s ease}.modal-tabs button:hover{color:#222}.modal-tabs button.active{color:#222;border-bottom-color:#ffd600}.modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid #D5CDB7;background:#faf8f2;border-radius:0 0 12px 12px}.modal-footer .hint{margin:0 auto 0 0}.cancel-vehicle-status{margin-top:1rem}.cancel-vehicle-status h3{margin-bottom:.5rem;font-size:.9375rem;font-weight:700}.cancel-settlement{margin-top:1rem}.cancel-settlement h3{margin-bottom:.5rem;font-size:.9375rem;font-weight:700}.cancel-settlement .cancel-settlement-grid{display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem;align-items:center;padding:.75rem 1rem;background:#faf8f2;border:1px solid #D5CDB7;border-radius:8px;margin:0 0 .5rem}.cancel-settlement .cancel-settlement-grid dt{color:#6b644f;font-size:.8125rem;margin:0}.cancel-settlement .cancel-settlement-grid dd{margin:0;font-weight:600}.cancel-settlement .cancel-settlement-grid .number{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.cancel-settlement .cancel-settlement-note{margin-left:.25rem;font-size:.6875rem;color:#6b644f;font-weight:400}.cancel-settlement .cancel-fee-input{width:8em;text-align:right}.cancel-settlement .cancel-diff{font-weight:700}.cancel-settlement .cancel-diff .cancel-diff-label{display:inline-block;margin-left:.5rem;font-size:.8125rem;font-weight:500}.cancel-settlement .cancel-diff-refund{color:#c62828}.cancel-settlement .cancel-diff-unpaid{color:#e65100}.cancel-settlement .cancel-diff-balanced{color:#2e7d32}.cancel-note-input,.cancel-fee-input{padding:.5rem .75rem;border:1px solid #B0A790;border-radius:8px;background:#f2f0e7;color:#222;font-family:inherit;font-size:.875rem;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.cancel-note-input:focus,.cancel-fee-input:focus{outline:none;background:#fff;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60047}.cancel-note-input{width:100%;box-sizing:border-box;resize:vertical;margin-top:.5rem}.radio-group{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.radio-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.hint{font-size:.8125rem;color:#6b644f;margin-bottom:.5rem}.modal-body{padding:1.25rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1rem}.modal-body>p{margin:0}.modal-lead{margin:0;font-size:.9375rem;color:#3a3a3a;line-height:1.6}.toast-container{position:fixed;top:1.25rem;right:1.25rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem}.toast{padding:.75rem 1.25rem;border-radius:8px;font-size:.9375rem;font-weight:600;box-shadow:0 8px 24px #1f293714,0 2px 6px #1f29370d;animation:toast-in .3s ease}.toast--success{background:#e8f5e9;color:#2e7d32;border-left:4px solid #43A047}.toast--error{background:#ffebee;color:#c62828;border-left:4px solid #E53935}.toast--warning{background:#fff3e0;color:#e65100;border-left:4px solid #FF9800}@keyframes toast-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.vehicle-category-picker{border:1px solid #455A64;border-radius:8px;background:#455a6408;padding:1rem 1.25rem;margin-top:1.25rem;margin-bottom:1.25rem}.vehicle-category-picker .vcp-header{margin-bottom:1rem;border-bottom:1px dashed rgba(69,90,100,.3);padding-bottom:.5rem}.vehicle-category-picker .vcp-title{font-size:.9375rem;font-weight:700;color:#455a64;margin:0}.vehicle-category-picker .vcp-required{color:#e53935;margin-left:.25rem}.vehicle-category-picker .vcp-note{margin:.25rem 0 0;font-size:.8125rem;color:#3a3a3a}.vehicle-category-picker .vcp-row{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.vehicle-category-picker .vcp-row:last-of-type{margin-bottom:0}.vehicle-category-picker .vcp-label{flex:0 0 auto;min-width:1.5rem;padding-top:6px;font-size:.8125rem;font-weight:700;color:#455a64}.vehicle-category-picker .vcp-pills{display:flex;flex-wrap:wrap;gap:.5rem;flex:1 1 auto;min-width:0}.vehicle-category-picker .vcp-pill{display:inline-block;padding:5px .75rem;border:1px solid #B0A790;border-radius:20px;background:#fff;color:#3a3a3a;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;line-height:1.4;white-space:nowrap}.vehicle-category-picker .vcp-pill:hover{border-color:#455a64;color:#455a64;background:#455a640a}.vehicle-category-picker .vcp-pill.is-selected{background:#455a64;border-color:#455a64;color:#fff;font-weight:600}.vehicle-category-picker .vcp-pill:disabled{opacity:.4;cursor:not-allowed}.vehicle-category-picker .vcp-footer{margin-top:1rem;padding-top:.75rem;border-top:1px dashed rgba(69,90,100,.3);font-size:.8125rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.vehicle-category-picker .vcp-footer-label{color:#3a3a3a;font-weight:500}.vehicle-category-picker .vcp-footer-path{color:#455a64;font-weight:600}.vehicle-category-picker .vcp-footer-sep{color:#455a6480;margin:0 4px}.vehicle-category-picker .vcp-footer-empty{color:#6b644f;font-style:italic}.vehicle-category-tag{display:inline-flex;align-items:center;gap:0;border:1px solid rgba(69,90,100,.5);border-radius:20px;background:#455a6414;color:#455a64;font-weight:600;line-height:1.5;white-space:nowrap;max-width:100%;vertical-align:middle;letter-spacing:0}.vehicle-category-tag .vct-sep{color:#455a6466;margin:0 .5rem;font-weight:400}.vehicle-category-tag.vct-sm{font-size:.8125rem;padding:3px .75rem}.vehicle-category-tag.vct-md{font-size:.875rem;padding:.25rem 1rem}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.mono{font-family:SF Mono,Cascadia Mono,Consolas,Monaco,Hiragino Sans,monospace;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:0}.layout{display:flex;min-height:100vh}.sidebar{width:210px;background:#222;color:#fff;display:flex;flex-direction:column;flex-shrink:0;max-height:100vh;position:sticky;top:0;overflow-y:auto}.sidebar-toggle{display:none;position:fixed;top:.75rem;left:.75rem;z-index:1100;width:44px;height:44px;padding:0;border:none;border-radius:8px;background:#222;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:.25rem}.sidebar-toggle .sidebar-toggle-bar{display:block;width:22px;height:2px;background:#fff;border-radius:2px}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#1f293773;z-index:1000;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar-overlay.is-visible{opacity:1;pointer-events:auto}@media(max-width:768px){.sidebar-toggle{display:flex}.sidebar-overlay{display:block}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:1050;height:100vh;max-height:100vh;box-shadow:0 8px 24px #1f293714,0 2px 6px #1f29370d;transform:translate(-100%);transition:transform .2s ease}.sidebar.is-open{transform:translate(0)}}.sidebar-brand{padding:1.25rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo{display:block;width:100%;max-width:110px;height:auto}.sidebar-subtitle{font-size:1.25rem;font-weight:700;letter-spacing:.12em;color:#ffffffe6}.sidebar-today{margin-top:.25rem;font-size:.8125rem;font-weight:500;color:#fff9;letter-spacing:.04em}.sidebar-available-search{display:block;margin:.75rem 1rem;padding:.75rem 1rem;background:#ffd600;color:#222;font-size:.9375rem;font-weight:700;text-align:center;text-decoration:none;border-radius:8px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;transition:all .2s ease}.sidebar-available-search:hover{background:#f5ca00;transform:translateY(-1px)}.sidebar-available-search.router-link-active{background:#f5ca00;box-shadow:0 0 0 3px #ffd60040}.sidebar-nav{flex:1;padding:.75rem 0}.sidebar-nav .sidebar-nav-section{margin-bottom:1rem}.sidebar-nav .sidebar-nav-section:last-child{margin-bottom:0}.sidebar-nav .sidebar-nav-heading{padding:.25rem 1rem .5rem;font-size:.6875rem;font-weight:700;letter-spacing:.08em;color:#ffffff59;text-transform:uppercase}.sidebar-nav a{display:block;padding:.75rem 1rem;color:#ffffffa6;font-size:.9375rem;font-weight:500;text-decoration:none;transition:all .2s ease;border-left:3px solid transparent}.sidebar-nav a:hover{color:#fff;background:#ffffff0f}.sidebar-nav a.router-link-active{color:#ffd600;background:#ffd60014;border-left-color:#ffd600}.sidebar-user{padding:1rem;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.75rem}.sidebar-user .sidebar-user-info{display:flex;flex-direction:column;gap:2px}.sidebar-user .sidebar-user-name{font-size:.8125rem;color:#ffffffd9}.sidebar-user .sidebar-user-role{font-size:.6875rem;color:#ffffff80}.sidebar-user .sidebar-user-logout{padding:.25rem .75rem;font-size:.6875rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:transparent;color:#ffffff80;transition:all .2s ease;align-self:flex-start}.sidebar-user .sidebar-user-logout:hover{color:#fff;border-color:#fff6}.main{flex:1;padding:1.5rem 1.5rem 4rem;overflow-y:auto;max-height:100vh;display:flex;flex-direction:column}@media(max-width:768px){.main{padding:calc(44px + 1.5rem) .75rem 2rem}}.main:has(.form-actions--sticky){padding-bottom:.5rem}.main>*:has(.form-actions--sticky){flex:1 0 auto;display:flex;flex-direction:column}.main>* form:has(.form-actions--sticky){flex:1 0 auto;display:flex;flex-direction:column}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#faf8f2}.login-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 8px 24px #1f293714,0 2px 6px #1f29370d;width:100%;max-width:380px;border-top:4px solid #FFD600}.login-card h1{text-align:center;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:#222}.login-card .form-group{margin-bottom:1rem}.login-card .login-btn{width:100%;padding:.75rem;margin-top:.5rem;font-size:.9375rem;font-weight:600}.dashboard-alerts{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.dash-alert{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;font-size:.8125rem;font-weight:500;line-height:1.4}.dash-alert-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.6875rem;font-weight:700;color:#fff;flex-shrink:0}.dash-alert-danger{background:#e5393514;border-left:4px solid #E53935;color:#c62828}.dash-alert-danger .dash-alert-icon{background:#e53935}.dash-alert-warn{background:#ff980014;border-left:4px solid #FF9800;color:#7a4f00}.dash-alert-warn .dash-alert-icon{background:#ff9800}.dash-alert-info{background:#1e88e50f;border-left:4px solid #1E88E5;color:#0d47a1}.dash-alert-info .dash-alert-icon{background:#1e88e5}.dashboard-summary{display:flex;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.summary-card{background:#fff;border-radius:12px;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;border:1px solid rgba(31,41,55,.08);padding:1rem 1.25rem;min-width:160px;border-left:4px solid #FFD600;cursor:pointer}.summary-card.summary-warn{border-left-color:#e53935}.summary-number{font-size:1.5rem;font-weight:700;color:#222}.summary-label{font-size:.8125rem;color:#3a3a3a;margin-top:.25rem}.dashboard-calendars{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}@media(max-width:1100px){.dashboard-calendars{grid-template-columns:1fr}}.dashboard-calendars .form-section{margin-bottom:0}.welcome{color:#3a3a3a;margin-bottom:1.25rem;font-size:.9375rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.rate-note{font-size:.8125rem;color:#6b644f;margin-bottom:.5rem}.input-readonly{background:#faf8f2!important;color:#3a3a3a!important;cursor:not-allowed}.gw-id-input{display:flex;align-items:center}.gw-id-input .gw-id-prefix{font-weight:600;font-size:.9375rem;padding:.25rem 0 .25rem .5rem;border:1px solid #B0A790;border-right:none;border-radius:8px 0 0 8px;background:#faf8f2;line-height:1.6;white-space:nowrap}.gw-id-input input{border-radius:0 8px 8px 0!important;width:7em;letter-spacing:.1em}.name-stacked{display:flex;flex-direction:column;gap:2px}.name-stacked .sub-text{font-size:.8125rem;color:#6b644f}.vehicle-info-cell{display:flex;flex-direction:column;gap:.5rem;min-width:220px;padding:.25rem 0}.vehicle-info-cell .vehicle-name-link{padding:0;margin:0;background:none}.vehicle-info-cell .vehicle-name-link .vehicle-name-text{font-size:.9375rem}.vehicle-info-cell .vehicle-name-link:hover{background:none}.vehicle-info-cell .vehicle-category-tag{margin-top:2px;align-self:flex-start}.vehicle-info-meta{display:flex;flex-wrap:wrap;align-items:center;gap:2px;font-family:SF Mono,Cascadia Mono,Consolas,Monaco,Hiragino Sans,monospace;font-size:.6875rem;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:#6b644f;letter-spacing:0;margin-bottom:2px}.vehicle-info-meta .meta-id{white-space:nowrap;line-height:1.5}.vehicle-info-meta .meta-id:not(:first-child):before{content:"·";margin:0 .5rem;color:#b0a790}.vehicle-info-meta .meta-id-internal{color:#455a64;font-weight:600}.vehicle-name-link{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:#c26800;padding:.25rem .5rem;margin:-.75rem;border-radius:4px;transition:background .2s ease;flex-wrap:wrap;row-gap:2px}.vehicle-name-link .vehicle-name-text{font-weight:600;color:#c26800;text-decoration:underline;text-decoration-color:#c2680059;text-underline-offset:3px}.vehicle-name-link .vehicle-name-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;font-size:.6875rem;font-weight:600;color:#c26800;background:#c2680014;border:1px solid rgba(194,104,0,.25);border-radius:4px;padding:1px .5rem;line-height:1.5;white-space:nowrap;letter-spacing:0;transition:background .2s ease,border-color .2s ease}.vehicle-name-link .sub-text{flex-basis:100%;font-size:.8125rem;color:#6b644f;font-weight:400}.vehicle-name-link:hover{background:#c268000f;text-decoration:none}.vehicle-name-link:hover .vehicle-name-text{text-decoration-color:#c26800}.vehicle-name-link:hover .vehicle-name-chip{background:#c2680026;border-color:#c2680066}.rate-stacked{display:flex;flex-direction:column;gap:2px;line-height:1.4}.rate-stacked span{white-space:nowrap}.actions-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:.25rem}.actions-full{grid-column:1/-1}.special-price-tag{display:inline-block;font-size:.6875rem;font-weight:600;color:#e53935;border:1px solid #E53935;border-radius:4px;padding:0 .25rem;line-height:1.4}.option-toggle-row{display:flex;align-items:center;gap:1rem;padding:.5rem 0;border-bottom:1px solid #D5CDB7}.option-toggle-row:last-child{border-bottom:none}.opt-rate{font-size:.6875rem;color:#6b644f;margin-left:.5rem}.spec-unit{font-weight:400;color:#6b644f}.spec-pair{display:flex;align-items:center;gap:.5rem}.spec-pair-item{display:flex;align-items:center;gap:.25rem}.spec-pair-item input{width:100px}.multiselect-group{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.checkbox-label{display:flex;align-items:center;gap:.25rem;font-weight:400;cursor:pointer}.list-thumbnail{width:100px;height:68px;object-fit:cover;border-radius:8px;border:1px solid #D5CDB7;transition:opacity .2s ease}.list-thumbnail:hover{opacity:.75}.vd-timestamps{display:flex;gap:1rem;font-size:.6875rem;color:#6b644f;margin-bottom:.5rem}.vd-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.vd-grid-2{grid-template-columns:1fr}}.vd-title{font-size:1.5rem;font-weight:700;color:#222;margin-bottom:.25rem}.vd-category{font-size:.9375rem;color:#3a3a3a;margin-bottom:.5rem}.vd-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.vd-meta-item{font-size:.8125rem;color:#6b644f}.vd-rate-block{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.5rem}.vd-rate-item{display:flex;flex-direction:column}.vd-rate-label{font-size:.6875rem;font-weight:600;color:#3a3a3a;text-transform:uppercase;letter-spacing:.03em}.vd-rate-value{font-size:1.5rem;font-weight:700;color:#222}.vd-option-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid #D5CDB7}.vd-option-row:last-child{border-bottom:none}.vd-option-name{font-size:.9375rem;font-weight:600;color:#222}.vd-title-input{font-size:1.25rem!important;font-weight:700;margin-bottom:.75rem}.doc-image{max-width:400px;max-height:300px;border:1px solid #B0A790;border-radius:8px;margin:.5rem 0;display:block}.doc-pdf-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:1px solid #B0A790;border-radius:8px;background:#faf8f2;color:#c26800;text-decoration:none;margin:.5rem 0;max-width:400px}.doc-pdf-link:hover{background:#fff;border-color:#c26800}.doc-pdf-icon{font-size:1.25rem;line-height:1}.doc-pdf-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem}.image-section{margin-bottom:.5rem}.image-gallery{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.image-item{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.condition-history{list-style:none;padding:0;margin:.75rem 0 0;border-top:1px solid #B0A790}.condition-history li{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid #B0A790;font-size:.8125rem}.condition-history-date{color:#6b644f;flex-shrink:0;min-width:11em}.condition-history-link{color:#c26800;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.condition-history-link:hover{text-decoration:underline}.pending-add{position:relative}.pending-add:before{content:"追加予定";position:absolute;top:.25rem;left:.25rem;background:#2e7d32d9;color:#fff;font-size:.6875rem;font-weight:600;padding:2px 6px;border-radius:3px;z-index:1}.pending-delete{position:relative}.pending-delete img,.pending-delete .doc-pdf-link{opacity:.4;filter:grayscale(60%)}.pending-delete:before{content:"削除予定";position:absolute;top:.25rem;left:.25rem;background:#c62828d9;color:#fff;font-size:.6875rem;font-weight:600;padding:2px 6px;border-radius:3px;z-index:1}.util-overview{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;background:#fff;border:1px solid #D5CDB7;border-radius:8px;margin-bottom:1.5rem}.util-overview-main{text-align:center}.util-overview-rate{font-size:2rem;font-weight:800}.util-overview-label{font-size:.8125rem;color:#3a3a3a;margin-top:.25rem}.util-overview-stats{display:flex;gap:1rem;font-size:.8125rem;color:#6b644f}.util-cat-list{display:flex;flex-direction:column;gap:.75rem}.util-cat-row{display:grid;grid-template-columns:200px 1fr 80px;align-items:center;gap:.75rem}.util-cat-name{font-size:.8125rem;font-weight:600;color:#222}.util-cat-rate{font-size:.9375rem;font-weight:700;text-align:right}.util-inline-bar{display:flex;align-items:center;gap:.5rem}.util-inline-track{flex:1;height:16px;background:#faf8f2;border-radius:4px;overflow:hidden;min-width:80px}.util-inline-fill{height:100%;border-radius:4px;transition:width .3s ease}.util-inline-rate{font-size:.8125rem;font-weight:700;min-width:50px;text-align:right}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-header h2{margin-bottom:0}.maintenance-form{margin-bottom:1.25rem;padding:1rem;background:#faf8f2;border-radius:8px;border:1px solid #D5CDB7}.maintenance-form h3{margin-bottom:1rem;font-size:1.0625rem}.maintenance-form .form-group{margin-bottom:.75rem}.maintenance-form textarea{width:100%;padding:.5rem;border:1px solid #B0A790;border-radius:8px;font-size:.875rem;resize:vertical}.maintenance-table .maintenance-completed{font-size:.6875rem;color:#6b644f;margin-left:.25rem}.maintenance-table .actions{display:flex;gap:.25rem}.avs-search-section{margin-bottom:1.5rem}.avs-period-row{grid-template-columns:1fr 1fr;max-width:480px}.avs-filter-pills-wrap{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.avs-filter-row{display:flex;align-items:flex-start;gap:.75rem;flex-wrap:wrap}.avs-filter-label{flex:0 0 5rem;padding-top:.25rem;font-size:.8125rem;font-weight:600;color:#3a3a3a}.avs-filter-pills{display:flex;flex-wrap:wrap;gap:.5rem;flex:1 1 0;min-width:0}.avs-filter-pill{display:inline-block;padding:.25rem .75rem;border:1px solid #B0A790;border-radius:20px;background:#fff;color:#3a3a3a;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;line-height:1.4;white-space:nowrap}.avs-filter-pill:hover{border-color:#ffd600;color:#222;background:#ffd6001a}.avs-filter-pill.is-selected{background:#ffd600;border-color:#ffd600;color:#222;font-weight:600}.avs-result-count{font-size:.9375rem;font-weight:600;color:#3a3a3a;margin-bottom:1rem}.avs-results{margin-bottom:4rem}.avdm .avdm-mgmt{font-size:.9375rem;font-weight:500;color:#6b644f;margin-left:.5rem}.avdm .avdm-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:1.25rem;margin-bottom:1.25rem}@media(max-width:768px){.avdm .avdm-grid{grid-template-columns:1fr}}.avdm .avdm-photo-col{display:flex;flex-direction:column;gap:.5rem}.avdm .avdm-photo-main{width:100%;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:#faf8f2}.avdm .avdm-photo-main img{width:100%;height:100%;object-fit:cover;display:block}.avdm .avdm-photo-main-noimg{width:100%;aspect-ratio:4/3;object-fit:contain;background:#faf8f2;border-radius:8px}.avdm .avdm-photo-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.avdm .avdm-photo-thumbs img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;background:#faf8f2}.avdm .avdm-info-col{display:flex;flex-direction:column}.avdm .avdm-dl{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0}.avdm .avdm-dl dt{font-weight:600;color:#3a3a3a;font-size:.8125rem;align-self:center}.avdm .avdm-dl dd{margin:0;color:#222;font-size:.9375rem}.avdm .avdm-rate{display:flex;gap:.75rem;font-weight:600}.avdm .avdm-rate span:first-child{color:#222}.avdm .avdm-rate span:last-child{color:#3a3a3a}.avdm .avdm-section{margin-top:1.25rem}.avdm .avdm-section h3{font-size:.9375rem;font-weight:700;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid #D5CDB7}.avdm .avdm-opts{display:flex;flex-wrap:wrap;gap:.5rem}.avdm .avdm-opt-chip{display:inline-block;padding:.25rem .75rem;background:#ffd6001f;color:#222;border-radius:20px;font-size:.8125rem;font-weight:600}.avdm .avdm-empty{margin:0;color:#6b644f;font-size:.8125rem}.avdm .avdm-specs{grid-template-columns:minmax(140px,auto) 1fr}.fc-daygrid-day-number,.fc-col-header-cell-cushion{text-decoration:none!important;color:#222!important;cursor:default}.calendar-wrap{background:#fff;padding:1rem;border-radius:12px;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a}.date-nav{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.date-nav .date-label{font-size:1.0625rem;font-weight:600;margin:0 .5rem}.gantt-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.gantt-controls .date-nav{margin-bottom:0}.gantt-day-col{flex:1;padding:.25rem 0;text-align:center;border-left:1px solid #D5CDB7}.gantt-day-col .gantt-day-label{font-size:.6875rem;font-weight:600;color:#222}.gantt-day-col .gantt-day-dow{font-size:.6875rem;color:#6b644f}.gantt-wrap{background:#fff;border-radius:12px;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;overflow-x:auto}.gantt{min-width:1200px}.gantt-header{display:flex;border-bottom:2px solid #B0A790}.gantt-label-col{width:120px;min-width:120px;padding:.5rem .75rem;font-size:.6875rem;font-weight:600;color:#3a3a3a;background:#fafafa;border-right:1px solid #D5CDB7}.gantt-time-cols{flex:1;display:flex;background:#fafafa}.gantt-hour{flex:1;padding:.5rem 0;font-size:.6875rem;color:#6b644f;text-align:center;border-left:1px solid #D5CDB7}.gantt-row{display:flex;border-bottom:1px solid #D5CDB7;min-height:38px}.gantt-row .gantt-label-col{display:flex;flex-direction:column;justify-content:center;background:transparent}.gantt-row .gantt-vid{font-size:.8125rem;font-weight:600}.gantt-row .gantt-vname{font-size:.6875rem;color:#6b644f}.gantt-track{flex:1;position:relative;min-height:34px}.gantt-grid-line{position:absolute;top:0;bottom:0;width:1px;background:#d5cdb7}.gantt-bar{position:absolute;top:4px;bottom:4px;border-radius:4px;cursor:pointer;display:flex;align-items:center;padding:0 .5rem;overflow:hidden;transition:opacity .2s ease}.gantt-bar:hover{opacity:.85}.gantt-bar span{font-size:.6875rem;color:#fff;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.2)}.select-list{max-height:240px;overflow-y:auto;border:1px solid #B0A790;border-radius:8px;margin-top:.5rem}.select-list-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid #D5CDB7;transition:background .2s ease}.select-list-item:last-child{border-bottom:none}.select-list-item:hover{background:#ffd6000f}.select-list-item.selected{background:#ffd60026;border-left:3px solid #FFD600}.select-list-main{display:flex;align-items:center;gap:.75rem;flex:1;cursor:pointer}.select-list-code{font-size:.6875rem;font-weight:700;color:#222;min-width:80px}.select-list-name{font-size:.9375rem;font-weight:600;color:#222}.select-list-sub{font-size:.6875rem;color:#6b644f}.select-list-selected{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-top:.5rem;background:#ffd6001a;border:1px solid #FFD600;border-radius:8px}.pick-hint{font-size:.9375rem;font-weight:600;color:#f5ca00;margin-bottom:.75rem}.period-calendar-wrap{background:#fff;border:1px solid #B0A790;border-radius:8px;padding:.75rem;margin-bottom:.5rem}.period-calendar-wrap .fc-daygrid-day{cursor:pointer}.period-calendar-wrap .fc-daygrid-day:hover{background:#ffd6001a}.period-time-row{display:flex;align-items:flex-end;gap:.75rem;margin-top:.75rem}.period-arrow{font-size:1.25rem;color:#6b644f;padding-bottom:.5rem}.period-time-group{flex:1}.period-time-group label{display:block;font-size:.8125rem;font-weight:600;color:#3a3a3a;margin-bottom:.25rem}.period-time-display{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #B0A790;border-radius:8px;padding:.5rem .75rem}.period-date{font-size:.9375rem;font-weight:600;color:#222;min-width:100px}.period-date.empty{color:#6b644f;font-weight:400}.period-date-input{padding:.25rem .5rem;font-size:.9375rem;font-weight:600;color:#222;background:#faf8f2;border:1px solid #B0A790;border-radius:4px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.period-date-input:focus{outline:none;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60033}.time-select{padding:.25rem .5rem;border:1px solid #B0A790;border-radius:4px;font-size:.9375rem;font-weight:600;color:#222;background:#faf8f2;cursor:pointer}.time-select:disabled{opacity:.4;cursor:not-allowed}.time-select:focus{outline:none;border-color:#ffd600;box-shadow:0 0 0 2px #ffd6004d}.inline-new-form{margin-top:.75rem;padding:1rem;background:#faf8f2;border-radius:8px;border:1px dashed #B0A790}.billing-timing-toggle{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.billing-timing-toggle button{padding:.5rem 1rem;border:1px solid #B0A790;border-radius:8px;background:#fff;font-size:.9375rem;font-weight:600;color:#3a3a3a;transition:all .2s ease}.billing-timing-toggle button:hover{background:#faf8f2}.billing-timing-toggle button.active{background:#455a64;color:#fff;border-color:#455a64}.billing-tax-label{font-size:.8125rem;font-weight:500;color:#3a3a3a;margin-left:.75rem;letter-spacing:.04em}.billing-table{width:100%;margin-top:.5rem;background:#fff;border:1px solid #D5CDB7;border-radius:8px;border-collapse:separate;border-spacing:0;overflow:hidden}.billing-table th,.billing-table td{padding:.75rem 1rem;text-align:left}.billing-table thead th{background:#2a3140;color:#fff;font-weight:700;font-size:.6875rem;letter-spacing:.08em;text-transform:none;border-bottom:1px solid #3D4555;white-space:nowrap}.billing-table tbody td{font-size:.875rem;border-bottom:1px solid #E5DFD0}.billing-table tbody tr:last-child td{border-bottom:none}.billing-table tbody tr:nth-child(2n){background:#f2f0e773}.billing-table td.number,.billing-table th.number{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.billing-table td.datetime{font-size:.8125rem;color:#3a3a3a;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.billing-table tfoot{background:#faf8f2}.billing-table tfoot td{font-size:.8125rem;font-weight:600;color:#3a3a3a;border-top:1px solid #D5CDB7}.billing-table tfoot tr:first-child td{border-top:1px solid #B0A790}.billing-table tfoot td.number{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:#222}.billing-table .total-row td{font-size:.9375rem;font-weight:700;color:#222;border-top:2px solid #756D58;background:#fff}.billing-table .total-row td strong{font-size:1.0625rem;letter-spacing:-.012em}.billing-table .charge-skipped td{color:#6b644f;text-decoration:line-through;background:#9e9e9e0a}.billing-table .charge-skipped-label{margin-left:.5rem;font-size:.6875rem;color:#6b644f;text-decoration:none;font-style:italic}.billing-table .phase-header td{font-size:.6875rem;font-weight:700;color:#455a64;background:#455a640f;letter-spacing:.08em;text-transform:none;padding:.5rem 1rem;border-top:1px solid rgba(69,90,100,.15);border-bottom:1px solid rgba(69,90,100,.15)}.billing-input{width:120px;padding:.25rem .5rem;border:1px solid #B0A790;border-radius:4px;text-align:right;font-size:.875rem;background:#f2f0e7;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705}.billing-input:focus{outline:none;background:#fff;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60047}.billing-input-group{display:inline-flex;align-items:center;gap:.5rem;justify-content:flex-end}.condition-compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.condition-compare{grid-template-columns:1fr}}.condition-col{display:flex;flex-direction:column;gap:.5rem}.condition-col-title{font-size:.9375rem;font-weight:700;margin:0;color:#222}.condition-caption{font-size:.6875rem;color:#6b644f;margin-top:.25rem}.form-actions-inline{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.method-note{margin-left:.5rem;font-size:.6875rem;color:#3a3a3a}.billing-name{width:100%;text-align:left}.free-row,.fixed-row{background:#faf8f2}.fixed-row td{font-weight:600;color:#222}.fixed-row td:first-child{border-left:3px solid #FFD600}.print-button-group{display:flex;flex-wrap:wrap;gap:.5rem}.outstanding-row td{background:#ff98001f;color:#f57f17;font-size:.9375rem;font-weight:700;border-top:2px solid #FF9800}.overpaid-row td{background:#43a0471f;color:#2e7d32;font-size:.9375rem;font-weight:700;border-top:2px solid #43A047}.calendar-legend{display:flex;flex-wrap:wrap;gap:1rem;padding:.5rem 1rem;margin-bottom:.75rem;background:#fff;border-radius:8px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;font-size:.8125rem;color:#3a3a3a}.legend-item{display:inline-flex;align-items:center;gap:.5rem}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:4px;flex-shrink:0}.resv-list{display:flex;flex-direction:column;gap:.75rem}.resv-card{background:#fff;border-radius:12px;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;overflow:hidden}.resv-card-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgba(0,0,0,.06)}.resv-status-label{display:inline-block;font-size:1.0625rem;font-weight:700;letter-spacing:.04em;line-height:1.2}.resv-code{font-weight:600;font-size:.8125rem;color:#3a3a3a;letter-spacing:.04em}.resv-card-primary-action{margin-left:auto;display:flex;gap:.5rem}.resv-card-body{display:grid;grid-template-columns:minmax(280px,auto) 1fr;align-items:center;gap:1.5rem;padding:1rem}.resv-period{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#fff;border-radius:8px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708}.resv-period-cell{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.resv-period-date{font-size:1.5rem;font-weight:700;color:#222;line-height:1.15}.resv-period-time{font-size:.6875rem;font-weight:500;color:#6b644f;line-height:1.1;font-variant-numeric:tabular-nums}.resv-period-arrow{font-size:1.0625rem;color:#6b644f;font-weight:600}.resv-card-info{display:flex;flex-direction:column;gap:.5rem;min-width:0}.resv-card-customer{display:flex;align-items:center;gap:.25rem;font-weight:600;font-size:.9375rem}.resv-card-vehicle{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.8125rem;color:#3a3a3a}.resv-vehicle-ids{font-weight:600;color:#222;font-variant-numeric:tabular-nums}.resv-card-notes{padding:0 1rem .75rem;font-size:.8125rem;color:#6b644f}.resv-card-footer{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border-top:1px solid rgba(0,0,0,.06)}.resv-payment-badge{display:inline-block;padding:2px .5rem;border-radius:4px;font-size:.6875rem;font-weight:600}.resv-payment-spacer{flex:0 0 auto}.resv-card-amount{display:inline-flex;align-items:baseline;gap:.25rem;font-size:.8125rem;font-weight:600;color:#222}.resv-card-amount-note{font-size:.6875rem;font-weight:400;color:#6b644f}.resv-card-actions{margin-left:auto;display:flex;gap:.5rem}@media(max-width:768px){.resv-card-body{grid-template-columns:1fr;gap:.75rem}.resv-period{justify-content:space-between}}.info-icon{display:inline;border:none;background:none;color:#c26800;font-size:.8125rem;cursor:pointer;padding:0;margin-left:.25rem}.info-icon:hover{color:#222}.pdf-buttons{display:flex;gap:.5rem}.reservation-lock-banner{margin-top:1rem;line-height:1.6}.reservation-lock-banner strong{display:block;margin-bottom:.25rem;font-size:.9375rem}.reservation-lock-banner a{color:#c26800;text-decoration:underline}.reservation-lock-banner a:hover{color:#222}.form-readonly label{display:block;font-size:.8125rem;font-weight:600;color:#3a3a3a;margin-bottom:.25rem}.form-readonly-value{padding:.5rem .75rem;background:#faf8f2;border:1px solid #D5CDB7;border-radius:4px;color:#222;font-size:.875rem;min-height:1.5em}.period-time-row--readonly .period-time-display{cursor:default}.period-time-readonly{font-size:1.0625rem;font-weight:600;color:#222;font-variant-numeric:tabular-nums;padding:.25rem .5rem}.option-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.option-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem .75rem;padding:.75rem 1rem;background:#fff;border:1px solid #B0A790;border-radius:8px;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.option-card:hover{border-color:#ffd600;background:#ffd6000a}.option-card.is-selected{border-color:#ffd600;background:#ffd6001a;box-shadow:0 0 0 2px #ffd60040}.option-card .option-card-checkbox{width:18px;height:18px;margin:0;cursor:pointer;accent-color:#FFD600}.option-card .option-card-name{font-size:.9375rem;font-weight:600;color:#222;line-height:1.4}.option-card .option-card-rate{font-size:.6875rem;color:#6b644f;font-variant-numeric:tabular-nums;white-space:nowrap}.option-toggle-row--readonly{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#faf8f2;border:1px solid #D5CDB7;border-radius:4px;margin-bottom:.5rem}.option-toggle-row--readonly:last-child{margin-bottom:0}.option-toggle-row--readonly .option-readonly-name{font-weight:500;color:#222}.modal-error-card{margin-top:1rem;margin-bottom:0;line-height:1.5}.modal-error-card strong{display:block;margin-bottom:.25rem;font-size:.9375rem;color:#222}.modal-error-card p{margin:0;font-size:.8125rem;color:#3a3a3a}.name-cell{display:flex;flex-direction:column;gap:2px;white-space:normal!important}.name-cell a{font-size:.9375rem;font-weight:700;color:#222;text-decoration:none}.name-cell a:hover{color:#c26800;text-decoration:underline}.name-cell .kana{font-size:.6875rem;color:#6b644f}.list-summary{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.75rem 1rem;margin-bottom:.75rem;background:#fff;border-radius:8px;border:1px solid rgba(31,41,55,.08);box-shadow:0 1px #1f29370a;font-size:.8125rem;color:#3a3a3a}.list-summary-item strong{font-size:.9375rem;font-weight:700;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.list-summary-amount{font-size:1.0625rem!important;color:#222!important;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.012em}.list-summary-sep{color:#b0a790}.list-summary-note{margin-left:.5rem;font-size:.6875rem;color:#6b644f;font-weight:400}.list-summary-warn,.list-summary-warn strong{color:#e65100}.list-summary-refund,.list-summary-refund strong{color:#e53935}.sales-total-cell{font-size:.9375rem;font-weight:700;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sales-sub-cell{font-size:.8125rem;color:#6b644f;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sales-summary{display:grid;grid-template-columns:1fr auto auto;gap:1.25rem 1.5rem;align-items:center;position:relative;padding:1.5rem 1.75rem;background:#fff;border-radius:12px;border:1px solid rgba(31,41,55,.08);box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;margin-bottom:1rem;overflow:hidden}.sales-summary:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(to bottom,#2a3140,#455a64)}@media(max-width:900px){.sales-summary{grid-template-columns:1fr;gap:1rem}}.sales-summary-main{display:flex;flex-direction:column;gap:.25rem}.sales-summary-label{font-size:.6875rem;font-weight:700;color:#6b644f;letter-spacing:.08em;text-transform:uppercase}.sales-summary-amount{font-size:2.75rem;font-weight:900;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.012em;line-height:1.05}.sales-summary-status{display:flex;align-items:center}.sales-summary-balance{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1.25rem;background:#faf8f2;border-radius:8px;border:1px solid #D5CDB7;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";min-width:220px}@media(max-width:900px){.sales-summary-balance{min-width:0}}.sales-summary-balance-row{display:flex;align-items:baseline;gap:.75rem;justify-content:space-between;font-size:.8125rem;color:#3a3a3a}.sales-summary-balance-row.remaining-unpaid{color:#e65100;font-weight:700}.sales-summary-balance-row.remaining-over{color:#e53935;font-weight:700}.sales-summary-balance-row.remaining-balanced{color:#2e7d32}.sales-summary-balance-label{white-space:nowrap;letter-spacing:.04em}.sales-summary-balance-value{font-size:.9375rem;font-weight:700}.dd-sub{font-size:.6875rem;color:#6b644f;margin-top:2px}.page-header-note{margin:.5rem 0 0;font-size:.8125rem;color:#3a3a3a;line-height:1.5}.report-controls{display:flex;gap:1rem;margin-bottom:1.25rem;align-items:flex-end}.report-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:.75rem;margin-bottom:1.5rem}@media(max-width:1024px){.report-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.report-summary{grid-template-columns:repeat(2,1fr)}}.report-summary-card{padding:1rem .75rem;background:#fff;border:1px solid rgba(31,41,55,.08);border-radius:8px;box-shadow:0 1px #1f29370a;text-align:center}.report-summary-value{font-size:1.25rem;font-weight:800;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.012em}.report-summary-label{font-size:.6875rem;font-weight:600;color:#3a3a3a;margin-top:.25rem;letter-spacing:.04em}.report-paid{color:#43a047}.report-unpaid{color:#e53935}.report-projected{color:#283593}.report-status-cards{display:flex;gap:.75rem;flex-wrap:wrap}.report-status-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border:1px solid rgba(31,41,55,.08);border-radius:8px;box-shadow:0 1px #1f29370a}.report-status-detail{display:flex;flex-direction:column;gap:2px}.report-status-count{font-size:.8125rem;color:#3a3a3a}.report-status-amount{font-size:.9375rem;font-weight:700;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.report-chart{display:flex;flex-direction:column;gap:.5rem}.report-bar-row{display:grid;grid-template-columns:3rem 1fr auto auto;align-items:center;gap:.75rem}.report-bar-label{font-size:.8125rem;font-weight:600;color:#3a3a3a;text-align:right}.report-bar-track{height:24px;background:#f2f0e7;border-radius:4px;overflow:hidden;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705}.report-bar-fill{height:100%;background:linear-gradient(90deg,#ffd600,#f5ca00);border-radius:4px;min-width:2px;transition:width .3s ease}.report-bar-value{font-size:.8125rem;font-weight:600;color:#222;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";min-width:100px;text-align:right}.report-bar-count{font-size:.6875rem;color:#6b644f;min-width:40px}.report-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media(max-width:1024px){.report-grid-2{grid-template-columns:1fr}}.report-customer-code{display:block;font-size:.6875rem;color:#6b644f}.invoice-issued-banner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#43a04714;border:1px solid rgba(67,160,71,.4);border-left:3px solid #43A047;border-radius:8px;margin-bottom:1.25rem}.invoice-issued-info{display:flex;align-items:center;gap:.75rem}.invoice-issued-label{font-weight:700;color:#2e7d32;letter-spacing:.04em}.invoice-issued-date{font-size:.8125rem;color:#3a3a3a}.invoice-issued-actions{display:flex;gap:.5rem}.invoice-not-issued-banner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#faf8f2;border:1px solid #D5CDB7;border-radius:8px;margin-bottom:1.25rem;color:#3a3a3a}.sales-edit-section .section-note{margin:0 0 .75rem;padding:.5rem .75rem;background:#faf8f2;border-left:3px solid #455A64;border-radius:0 4px 4px 0;font-size:.8125rem;color:#3a3a3a;line-height:1.55}.sales-edit-section .section-actions{margin-top:.75rem;display:flex;gap:.5rem;justify-content:flex-end}.sales-edit-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:.75rem;background:#fff;border:1px solid #D5CDB7;border-radius:8px;overflow:hidden}.sales-edit-table th,.sales-edit-table td{padding:.75rem 1rem;text-align:left;vertical-align:middle}.sales-edit-table thead th{background:#2a3140;color:#fff;font-weight:700;font-size:.6875rem;letter-spacing:.08em;border-bottom:1px solid #3D4555;white-space:nowrap}.sales-edit-table tbody td{font-size:.875rem;border-bottom:1px solid #E5DFD0}.sales-edit-table tbody tr:last-child td{border-bottom:none}.sales-edit-table tbody tr:nth-child(2n){background:#f2f0e773}.sales-edit-table td.number,.sales-edit-table th.number{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sales-edit-table .checkbox-cell{text-align:center}.sales-edit-table .actions-col{width:80px;text-align:center}.sales-edit-table .datetime{font-size:.8125rem;color:#3a3a3a}.sales-edit-table input[type=text],.sales-edit-table input[type=number],.sales-edit-table select{width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;color:#222;background:#f2f0e7;border:1px solid #B0A790;border-radius:4px;box-shadow:inset 0 1px 2px #1f29371a,inset 0 0 0 1px #1f293705;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.sales-edit-table input[type=text]::placeholder,.sales-edit-table input[type=number]::placeholder,.sales-edit-table select::placeholder{color:#6f6755}.sales-edit-table input[type=text]:hover,.sales-edit-table input[type=number]:hover,.sales-edit-table select:hover{border-color:#756d58}.sales-edit-table input[type=text]:focus,.sales-edit-table input[type=number]:focus,.sales-edit-table select:focus{outline:none;background:#fff;border-color:#ffd600;box-shadow:0 0 0 3px #ffd60047}.sales-edit-table input[type=number]{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";text-align:right}.sales-edit-table input[type=checkbox]{width:auto;accent-color:#FFD600}.sales-edit-table .empty-row{text-align:center;color:#6b644f;padding:1.25rem;font-size:.8125rem;font-style:italic;background:#faf8f2}.sales-edit-table tfoot{background:#faf8f2}.sales-edit-table tfoot td{padding:.75rem 1rem;border-top:1px solid #D5CDB7;border-bottom:none;font-weight:600;font-size:.8125rem;color:#3a3a3a}.sales-edit-table tfoot tr:first-child td{border-top:2px solid #B0A790}.sales-edit-table tfoot td.number{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";color:#222}.sales-edit-table tfoot tr.total-row td{padding-top:.75rem;padding-bottom:.75rem;border-top:1px solid #B0A790;font-size:.9375rem;font-weight:700;color:#222}.sales-edit-table tfoot tr.total-row td strong{font-size:1.0625rem}.sales-edit-table tfoot tr.remaining-unpaid td{color:#e65100;background:#ff98000d}.sales-edit-table tfoot tr.remaining-unpaid td strong{color:#e65100}.sales-edit-table tfoot tr.remaining-over td{color:#e53935;background:#e539350d}.sales-edit-table tfoot tr.remaining-over td strong{color:#e53935}.sales-edit-table tfoot tr.remaining-balanced td{color:#2e7d32;background:#43a0470d}.sales-edit-table tfoot tr.remaining-balanced td strong{color:#2e7d32}.note{color:#3a3a3a;margin-bottom:1.25rem;font-size:.875rem}.rate-input{width:120px;text-align:right;padding:.25rem .5rem;border:1px solid #B0A790;border-radius:8px;font-size:.875rem}.category-select{padding:.5rem .75rem;border:1px solid #B0A790;border-radius:8px;font-size:.875rem}.inline-input{width:100%;padding:.25rem .5rem;border:1px solid #B0A790;border-radius:8px;font-size:.875rem}.sort-input{width:80px;text-align:right}.new-row{background:#fafafa}.inactive-row{opacity:.5}.user-edit-form h3{margin-bottom:1rem;font-size:1.0625rem}.user-edit-form .checkbox-group{display:flex;align-items:flex-end}.user-edit-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.user-edit-form .hint{color:#6b644f;font-size:.8125rem;font-weight:400}.user-table .self-tag{margin-left:.25rem;color:#6b644f;font-size:.8125rem}.login-history-filters{margin-bottom:1.25rem}.login-history-summary{margin-bottom:.75rem;color:#3a3a3a;font-size:.8125rem}.login-history-table .row-failure{background:#fff8f8}.login-history-table .role-tag{margin-left:.25rem;font-size:.6875rem}.login-history-table .text-muted{color:#6b644f;font-style:italic}.login-history-table .ua-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.25rem}.pagination .page-indicator{color:#3a3a3a;font-size:.8125rem;min-width:80px;text-align:center}.audit-log-filters{margin-bottom:1.25rem}.audit-log-summary{margin-bottom:.75rem;color:#3a3a3a;font-size:.8125rem}.audit-log-table .entity-link{color:#c26800;text-decoration:none;cursor:pointer}.audit-log-table .entity-link:hover{text-decoration:underline}.tabs{display:flex;gap:.25rem;border-bottom:2px solid #D5CDB7;margin-bottom:1.25rem}.tabs .tab{padding:.5rem 1rem;border:none;background:none;font-size:.875rem;font-weight:600;color:#6b644f;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s ease}.tabs .tab:hover{color:#222}.tabs .tab.active{color:#222;border-bottom-color:#ffd600}.option-add-form h3{margin-bottom:1rem;font-size:1.0625rem}.option-add-form .checkbox-group{display:flex;align-items:flex-end}.option-add-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.category-checkboxes{display:flex;flex-wrap:wrap;gap:.75rem}.category-check-item{display:flex;align-items:center;gap:.25rem;font-size:.875rem;cursor:pointer;white-space:nowrap}.setting-inline{display:flex;align-items:center;gap:.5rem}.setting-input{width:100px;padding:.25rem .5rem;border:1px solid #B0A790;border-radius:8px;font-size:.875rem;text-align:right}.category-list{display:flex;flex-direction:column;gap:1rem}.category-group{background:#fff;border-radius:8px;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a;overflow:hidden}.category-parent{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#faf8f2;font-weight:600}.category-parent .category-name{flex:1}.category-parent .category-slug{color:#6b644f;font-size:.8125rem;font-weight:400}.category-parent .category-order{color:#6b644f;font-size:.8125rem;font-weight:400;min-width:30px}.category-parent .inline-input{flex:1}.category-parent .inline-input-sm{max-width:150px}.category-parent .actions{display:flex;gap:.25rem}.category-children{padding-left:1.5rem}.category-child{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:.5rem 1rem;border-top:1px solid #D5CDB7}.category-child .category-name{flex:1;min-width:100px}.category-child .category-slug{color:#6b644f;font-size:.8125rem}.category-child .category-order{color:#6b644f;font-size:.8125rem;min-width:30px}.category-child.empty{color:#6b644f;font-size:.8125rem}.category-child .inline-input{flex:1}.category-child .inline-input-sm{max-width:150px}.category-child .actions{display:flex;gap:.25rem}.category-details{padding-left:1.5rem;width:100%}.category-detail{display:flex;align-items:center;gap:.75rem;padding:.25rem 1rem;border-top:1px solid #D5CDB7;font-size:.8125rem}.category-detail .category-name{flex:1;min-width:80px}.category-detail .category-slug{color:#6b644f}.category-detail .category-order{color:#6b644f;min-width:30px}.category-detail .inline-input{flex:1}.category-detail .inline-input-sm{max-width:120px}.category-detail .actions{display:flex;gap:.25rem}.ops-date-nav{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.ops-date-label{font-size:1.0625rem;font-weight:700;color:#222}.ops-date-input{padding:.25rem .5rem;border:1px solid #B0A790;border-radius:8px;font-size:.8125rem}.ops-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}@media(max-width:768px){.ops-summary{grid-template-columns:repeat(2,1fr)}}.ops-summary-card{padding:1rem;border-radius:8px;text-align:center;border:1px solid #D5CDB7;background:#fff}.ops-summary-count{font-size:2rem;font-weight:700}.ops-summary-label{font-size:.8125rem;color:#3a3a3a;margin-top:.25rem}.ops-departure .ops-summary-count{color:#283593}.ops-return .ops-summary-count{color:#e65100}.ops-overdue .ops-summary-count{color:#6b644f}.ops-overdue.has-items{border-color:#c62828;background:#f5cfcf}.ops-overdue.has-items .ops-summary-count{color:#c62828}.ops-active .ops-summary-count{color:#f57f17}.ops-section{margin-bottom:1.5rem}.ops-section h2{font-size:1.0625rem;margin-bottom:.75rem}.ops-section-danger h2{color:#c62828}.ops-row-danger{background:#f7d7d7}.ops-phone{display:block;font-size:.6875rem;color:#6b644f}.search-bar{display:flex;gap:.75rem;margin-bottom:1.25rem;align-items:center}.checkbox-inline{display:inline-flex;align-items:center;gap:.25rem;font-size:.9375rem;color:#222;cursor:pointer;white-space:nowrap}.search-input{flex:1;max-width:500px;padding:.5rem .75rem;border:1px solid #B0A790;border-radius:8px;font-size:.9375rem}.search-result-count{margin-bottom:1rem;font-size:.8125rem;color:#3a3a3a}.search-results{display:flex;flex-direction:column;gap:.75rem}.search-result-card{padding:1rem;background:#fff;border:1px solid #D5CDB7;border-radius:8px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.search-result-card:hover{border-color:#ffd600;box-shadow:0 2px 6px #1f29370f,0 1px 2px #1f29370a}.search-result-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.search-result-title{font-weight:600;color:#222}.search-result-parent{font-size:.8125rem;color:#6b644f}.search-result-field{font-size:.6875rem;color:#6b644f;margin-left:auto}.search-result-text{font-size:.8125rem;color:#3a3a3a;line-height:1.6;word-break:break-all}.search-result-text mark{background:#ffd6004d;padding:0 2px;border-radius:2px}.search-result-date{margin-top:.5rem;font-size:.6875rem;color:#6b644f}.drp-display{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid #B0A790;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .2s ease}.drp-display:hover{border-color:#ffd600}.drp-text{flex:1;font-size:.8125rem;color:#222}.drp-icon{flex-shrink:0;font-size:.8125rem}.drp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0000004d}.drp-popup{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000002e;padding:1.25rem;width:520px;max-width:95vw}.drp-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.8125rem;margin-bottom:.75rem;color:#222}.drp-step-hint{font-weight:400;font-size:.6875rem;color:#1e88e5}.drp-calendar{margin-bottom:.75rem}.drp-calendar .fc{font-size:.95rem}.drp-calendar .fc .fc-toolbar{margin-bottom:.5rem}.drp-calendar .fc .fc-toolbar-title{font-size:.875rem}.drp-calendar .fc .fc-button{padding:2px 8px;font-size:.6875rem}.drp-calendar .fc .fc-daygrid-day{cursor:pointer}.drp-selection{text-align:center;font-size:.8125rem;font-weight:600;color:#222;padding:.5rem;margin-bottom:.75rem;background:#ffd6001f;border-radius:8px}.drp-actions{display:flex;justify-content:flex-end;gap:.5rem}.print-page{background:#fff;color:#000;max-width:210mm;min-height:297mm;margin:1rem auto;padding:20mm 18mm;box-shadow:0 2px 12px #0000001a;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:10.5pt;line-height:1.6;position:relative}.print-page--cancelled{opacity:.7}.print-cancelled-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-25deg);font-size:120pt;font-weight:900;color:#dc26262e;letter-spacing:.3em;pointer-events:none;z-index:100;white-space:nowrap}.print-actions{position:sticky;top:0;z-index:10;background:#faf8f2;border-bottom:1px solid #B0A790;padding:.5rem 1rem;display:flex;gap:.5rem;justify-content:flex-end;align-items:center}.print-header{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid #000;padding-bottom:.5rem;margin-bottom:1.25rem}.print-title{font-size:20pt;font-weight:700;letter-spacing:.3em}.print-meta{font-size:9pt;text-align:right;line-height:1.5}.print-section{margin-bottom:1.25rem}.print-section h3{font-size:11pt;font-weight:700;border-left:4px solid #000;padding-left:.5rem;margin-bottom:.5rem}.print-kv{display:grid;grid-template-columns:120px 1fr;row-gap:.25rem;column-gap:.75rem}.print-kv dt{font-weight:600;color:#333}.print-kv dd{margin:0}.print-table{width:100%;border-collapse:collapse;font-size:10pt}.print-table th,.print-table td{border:1px solid #666;padding:6px 10px}.print-table th{background:#eee;font-weight:600;text-align:left}.print-table .number{text-align:right}.print-table .total-row td{background:#f5f5f5;font-weight:700}.print-note{font-size:9pt;color:#555;border:1px dashed #aaa;padding:.5rem;margin-top:1rem;background:#fafaf5}.print-company{margin-top:1.5rem;text-align:right;font-size:10pt;line-height:1.8}.print-signatures{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.print-signatures .sig-box{border-top:1px solid #000;padding-top:.5rem;text-align:center;min-height:60px}.print-condition-gallery{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.print-condition-gallery img{width:100%;border:1px solid #666}.print-sub{font-size:9pt;color:#555}.print-status-msg{padding:40px;text-align:center}.print-addressee{font-size:14pt;border-bottom:1px solid #333;padding-bottom:.25rem}.print-amount-box{font-size:20pt;font-weight:700;text-align:center;padding:.75rem;border:2px solid #000}.print-gap-sm{margin-top:.5rem}@media print{.print-actions{display:none!important}.print-page{box-shadow:none;margin:0;max-width:none;min-height:auto;padding:15mm}@page{size:A4;margin:0}}.doc-issue-panel{background:#fff;border-radius:12px;box-shadow:0 1px 2px #1f29370d,0 1px 1px #1f293708;padding:1.25rem 1.5rem;margin-top:1rem;margin-bottom:1rem}.doc-issue-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.doc-issue-header h3{font-size:.9375rem;font-weight:700;margin:0}.doc-issue-loading{font-size:.8125rem;color:#6b644f}.doc-issue-footer-note{font-size:.8125rem;color:#6b644f;margin-top:.75rem;margin-bottom:0}.doc-issue-form{padding:1rem;background:#ffd6000a;border-radius:8px;margin-bottom:1.25rem}.doc-issue-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem;margin-bottom:.75rem}.doc-issue-form-grid label{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem}.doc-issue-form-grid label span{color:#3a3a3a;font-weight:600}.doc-issue-form-grid label select,.doc-issue-form-grid label input{padding:.5rem;border:1px solid #B0A790;border-radius:4px;font-size:.875rem}@media(max-width:720px){.doc-issue-form-grid{grid-template-columns:1fr}}.doc-issue-form-notes{grid-column:1/-1}.doc-issue-form-actions{display:flex;justify-content:flex-end;gap:.5rem}.doc-issue-panel--compact .doc-issue-form{display:none}.doc-issue-panel--compact .doc-issue-list{margin-top:1rem}.doc-issue-rows{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;background:#ffd6000f;border-radius:8px}.doc-issue-row-form{display:grid;grid-template-columns:auto 1fr 1fr auto;align-items:end;gap:.75rem}@media(max-width:720px){.doc-issue-row-form{grid-template-columns:1fr 1fr}.doc-issue-row-form .doc-issue-row-label,.doc-issue-row-form button{grid-column:1/-1}}.doc-issue-row-label{font-weight:600;font-size:.875rem;color:#222;min-width:4em}.doc-issue-row-field{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem}.doc-issue-row-field-label{color:#3a3a3a;font-weight:600;font-size:.6875rem}.doc-issue-row-form input{padding:.25rem .5rem;border:1px solid #B0A790;border-radius:4px;font-size:.875rem}.doc-issue-row-form input[type=number]{text-align:right}.doc-issue-rows-hint{margin:.25rem 0 0;font-size:.6875rem;color:#6b644f}.doc-issue-list-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem;font-size:.8125rem;color:#3a3a3a}.doc-issue-list-toggle{display:inline-flex;align-items:center;gap:.25rem;cursor:pointer;font-weight:400;color:#6b644f}.doc-issue-list-toggle input{margin:0}.doc-issue-table{width:100%;border-collapse:collapse;font-size:.875rem}.doc-issue-table th,.doc-issue-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #D5CDB7;vertical-align:middle}.doc-issue-table th{background:#faf8f2;font-weight:600;font-size:.8125rem;color:#3a3a3a}.doc-issue-table .number{text-align:right}.doc-issue-row--cancelled{opacity:.55;text-decoration:line-through;text-decoration-color:#6b644f}.doc-issue-row--cancelled td:last-child,.doc-issue-row--cancelled td .doc-issue-cancelled-badge{text-decoration:none}.doc-issue-cancelled-badge{display:inline-block;margin-left:.5rem;padding:1px .5rem;background:#f5f5f5;color:#616161;font-size:.6875rem;border-radius:20px;font-weight:600}.doc-issue-replaces-note{display:block;margin-top:.25rem;font-size:.6875rem;color:#6b644f}.doc-issue-row-actions{display:flex;gap:.5rem}.doc-issue-empty{margin:0;padding:1rem;text-align:center;font-size:.8125rem;color:#6b644f}.doc-issue-remaining-summary{display:flex;gap:1rem;padding:.75rem 1rem;margin-top:1rem;background:#ffd60014;border-left:3px solid #FFD600;border-radius:4px;flex-wrap:wrap}.doc-issue-remaining-item{display:flex;align-items:baseline;gap:.5rem}.doc-issue-remaining-label{font-weight:600;font-size:.8125rem;color:#3a3a3a}.doc-issue-remaining-value{font-size:1.0625rem;font-weight:700;color:#222}.doc-issue-remaining-hint{font-size:.6875rem;color:#6b644f}.doc-issue-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.25rem;margin-top:1rem;padding:.75rem 1rem;background:#1e88e50f;border-left:3px solid #1E88E5;border-radius:4px;font-size:.8125rem;color:#3a3a3a}.doc-issue-summary strong{color:#222;font-size:.875rem;margin-left:.25rem}.doc-issue-summary-rest strong{color:#1e88e5;font-size:.9375rem}.doc-issue-summary-note{color:#6b644f;font-size:.6875rem}
