.login-page{background:var(--sidebar-bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:#1e293b;border:1px solid #ffffff0f;border-radius:12px;width:100%;max-width:380px;padding:40px 36px 36px}.login-header{text-align:center;margin-bottom:32px}.login-title{color:#f1f5f9;letter-spacing:.04em;font-size:18px;font-weight:600}.login-subtitle{color:var(--sidebar-accent);letter-spacing:.14em;text-transform:uppercase;margin-top:4px;font-size:10px}.login-heading{color:#94a3b8;text-align:center;margin-bottom:20px;font-size:14px;font-weight:500}.login-error{color:#fca5a5;text-align:center;background:#dc26261f;border:1px solid #dc262633;border-radius:6px;margin-bottom:16px;padding:8px 12px;font-size:12.5px}.login-field{margin-bottom:16px}.login-label{color:#94a3b8;letter-spacing:.02em;margin-bottom:6px;font-size:11.5px;font-weight:500;display:block}.login-input{color:#f1f5f9;box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;outline:none;width:100%;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .2s}.login-input:focus{border-color:var(--sidebar-accent)}.login-input::placeholder{color:#475569}.login-btn{width:100%;min-height:44px;color:var(--sidebar-bg);background:var(--sidebar-accent);cursor:pointer;letter-spacing:.04em;border:none;border-radius:6px;margin-top:8px;padding:10px;font-family:inherit;font-size:14px;font-weight:600;transition:background .2s,opacity .2s}.login-btn:hover:not(:disabled){background:#d4b35a}.login-btn:disabled{opacity:.6;cursor:not-allowed}.auth-loading{background:var(--bg);min-height:100vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:13.5px;display:flex}.auth-loading-spinner{border:3px solid var(--border);border-top-color:var(--sidebar-accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.hub-alerts{margin:20px 0}.kanban-board{gap:16px;margin-top:24px;display:flex;overflow-x:auto}.kanban-column{background:var(--bg-card);border:1px solid var(--border-light);border-radius:6px;flex:1;min-width:280px;padding:20px}.kanban-header{color:var(--text-primary);justify-content:space-between;align-items:center;margin-bottom:16px;font-size:13.5px;font-weight:500;display:flex}.kanban-board .kanban-count{background:var(--border-light);color:var(--text-muted);border-radius:3px;padding:1px 8px;font-size:11px;font-weight:400}.kanban-board .kanban-card{border:1px solid var(--border-light);cursor:pointer;border-radius:4px;margin-bottom:8px;padding:12px 14px;transition:all .15s}.kanban-board .kanban-card:hover{border-color:var(--border);background:#f1f5f94d}.kanban-board .kanban-card.urgent{border-left:2px solid var(--warning)}.kanban-board .kanban-card.overdue{border-left:2px solid var(--danger)}.kanban-board .kanban-card-title{color:var(--text-primary);margin-bottom:6px;font-size:13.5px;font-weight:500}.kanban-board .kanban-card-meta{color:var(--text-secondary);font-size:12.5px;line-height:1.6}.kanban-board .kanban-card-meta>div{margin-bottom:1px}.kanban-board .kanban-group-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:12px;margin-bottom:6px;font-size:11px;font-weight:400}.kanban-board .kanban-empty{color:var(--text-muted);font-size:13px}.kanban-show-more{width:100%;color:var(--text-muted);border:1px dashed var(--border);cursor:pointer;background:0 0;border-radius:4px;margin-top:4px;padding:6px 0;font-size:12px;transition:all .15s}.kanban-show-more:hover{color:var(--text-primary);border-color:var(--text-secondary);background:var(--border-light)}.kanban-card-row{justify-content:space-between;align-items:center;display:flex}.kpi-section{margin-top:24px;margin-bottom:8px}.kpi-section-title{color:var(--text-secondary);margin-bottom:12px;font-size:14px;font-weight:500}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.kpi-card{background:var(--bg-card);border:1px solid var(--border-light);text-align:center;border-radius:6px;padding:16px}.kpi-label{color:var(--text-muted);margin-bottom:6px;font-size:12px}.kpi-value{color:var(--text-primary);font-size:22px;font-weight:600;line-height:1.2}.kpi-sub{color:var(--text-muted);margin-top:4px;font-size:11px}.kpi-danger{color:var(--danger)}.kpi-warning{color:var(--warning)}@media (width<=1024px){.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.kanban-board{flex-direction:column}.kpi-grid{grid-template-columns:repeat(2,1fr)}}.drawer-title{color:var(--text-primary);margin:0 0 4px;font-size:15px;font-weight:500}.drawer-subtitle{color:var(--text-secondary);margin-bottom:24px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12.5px}.drawer-details{margin-bottom:24px;font-size:13.5px;line-height:2}.drawer-details strong{color:var(--text-secondary);margin-right:4px;font-weight:500}.drawer-section{margin-bottom:24px}.drawer-section-title{color:var(--text-primary);margin-bottom:10px;font-size:13.5px;font-weight:500}.drawer-section-body{background:var(--border-light);border-radius:4px;padding:16px;font-size:13.5px}.drawer-section-empty{color:var(--text-muted);font-size:13px}.cost-category-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);margin-bottom:6px;padding-bottom:4px;font-size:11px;font-weight:400}.cost-category-group{margin-bottom:14px}.cost-item-row{justify-content:space-between;padding:3px 0;font-size:13px;display:flex}.cost-item-status{margin-left:4px;font-size:11px}.cost-item-status.confirmed{color:var(--success)}.cost-item-status.estimated,.cost-item-status.pending{color:var(--text-muted)}.cost-total-row{border-top:1px solid var(--text-primary);justify-content:space-between;margin-top:10px;padding-top:10px;font-size:14px;font-weight:500;display:flex}.inventory-summary{gap:24px;font-size:13.5px;display:flex}.inventory-summary strong{color:var(--text-secondary);font-weight:500}.cost-section-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.margin-low{color:var(--danger);font-weight:500}.cost-status-badge{white-space:nowrap;border-radius:3px;padding:1px 6px;font-size:11px;font-weight:500;display:inline-block}.cost-status-confirmed{color:var(--success);background:var(--gold-light)}.cost-status-partial{color:var(--warning);background:#d977061a}.cost-status-pending{color:var(--text-muted);background:var(--border-light)}.wizard-container{width:100%}.wizard-steps{border-bottom:1px solid var(--border);justify-content:center;gap:8px;margin-bottom:24px;padding-bottom:16px;display:flex}.wizard-step{color:var(--text-muted);border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:all .2s;display:flex}.wizard-step-number{background:var(--border-light);width:24px;height:24px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.wizard-step-active .wizard-step-number{background:var(--sidebar-accent);color:#fff}.wizard-step-active{color:var(--text-primary);font-weight:500}.wizard-step-done .wizard-step-number{background:var(--success);color:#fff}.wizard-step-done{color:var(--success)}.wizard-step-label{white-space:nowrap}.wizard-body{min-height:200px}.wizard-section-title{color:var(--text-primary);margin:0 0 16px;font-size:15px;font-weight:500}.wizard-hint{color:var(--text-muted);margin:-8px 0 16px;font-size:12.5px}.required{color:var(--danger)}.wizard-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;display:flex}.wizard-actions-right{gap:8px;display:flex}.wizard-cost-table-wrapper{margin-bottom:12px;overflow-x:auto}.wizard-cost-table{border-collapse:collapse;width:100%;font-size:13px}.wizard-cost-table th{background:var(--border-light);text-align:left;color:var(--text-secondary);white-space:nowrap;padding:8px 6px;font-size:12px;font-weight:500}.wizard-cost-table td{vertical-align:middle;padding:4px}.wizard-cost-table tbody tr{border-bottom:1px solid var(--border-light)}.wizard-cost-table .form-input-sm,.wizard-cost-table .form-select-sm{height:30px;padding:4px 6px;font-size:12.5px}.wizard-row-delete{line-height:1;min-width:auto!important;padding:2px 8px!important;font-size:14px!important}.wizard-cost-footer{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.wizard-cost-total{color:var(--text-primary);font-size:14px}.wizard-cost-total strong{font-weight:600}.materials-actions{gap:8px;display:flex}.material-details{font-size:13.5px;line-height:2}.material-details strong{color:var(--text-secondary);margin-right:4px;font-weight:500}.supplier-info-card{background:var(--border-light);border-radius:4px;margin-top:24px;padding:16px}.supplier-info-title{color:var(--text-primary);margin-bottom:8px;font-size:13.5px;font-weight:500}.supplier-info-body{color:var(--text-secondary);font-size:13px;line-height:1.8}.sales-filters{align-items:center;gap:8px;display:flex}.sales-filters .form-input{width:150px}.sales-filters .form-select{width:120px}.sales-filters .separator{color:var(--text-muted);font-size:13px}.order-detail-card{background:var(--border-light);border-radius:4px;margin:16px 0;padding:20px;font-size:13.5px}.order-detail-card h4{color:var(--text-primary);margin:0 0 12px;font-size:14px;font-weight:500}.order-detail-body{line-height:2}.order-detail-body strong{color:var(--text-secondary);margin-right:4px;font-weight:500}.shipment-label{color:var(--text-secondary);font-size:13px}.transfer-history{margin-top:28px}.transfer-history h4{color:var(--text-primary);margin:0 0 12px;font-size:14px;font-weight:500}.transfer-notes{color:var(--text-secondary);font-size:12.5px}.wizard-modal{max-width:700px!important}.order-form-page{max-width:1100px;margin:0 auto}.product-search-section{margin-bottom:24px;position:relative}.product-search-input{padding:10px 14px;font-size:15px}.product-dropdown{background:var(--bg-card);border:1px solid var(--border);z-index:100;border-top:none;border-radius:0 0 6px 6px;max-height:280px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.product-dropdown-item{cursor:pointer;border-bottom:1px solid var(--border-light);align-items:center;gap:12px;padding:10px 14px;transition:background .15s;display:flex}.product-dropdown-item:hover{background:var(--bg)}.dropdown-model{color:var(--sidebar-accent,#c9a84c);min-width:80px;font-family:Noto Sans JP,monospace;font-weight:600}.dropdown-name{color:var(--text-primary);flex:1}.selected-product-badge{color:#78600a;background:#fef9ee;border:1px solid #f0d78c;border-radius:6px;margin-top:8px;padding:8px 12px;font-size:13px}.order-form-body{grid-template-columns:1fr 280px;align-items:start;gap:24px;display:grid}.form-section{margin-bottom:24px}.form-section-title{color:var(--text-primary);border-bottom:2px solid var(--sidebar-accent,#c9a84c);margin:0 0 12px;padding-bottom:6px;font-size:14px;font-weight:700}.specs-table{border-collapse:collapse;width:100%;font-size:13px}.specs-table th,.specs-table td{border:1px solid var(--border);vertical-align:middle;padding:6px 10px}.specs-table th{background:var(--bg);color:var(--text-primary);white-space:nowrap;text-align:left;width:100px;font-weight:600}.specs-table .form-input,.specs-table .form-select{background:0 0;border:none;width:100%;padding:2px 0;font-size:13px}.specs-table .form-input:focus,.specs-table .form-select:focus{background:#fffbe6;outline:none}.print-value{display:none}.cost-breakdown-table{border-collapse:collapse;width:100%;font-size:13px}.cost-breakdown-table th,.cost-breakdown-table td{border:1px solid var(--text-primary);text-align:left;padding:8px 12px}.cost-breakdown-table th{background:var(--border-light);font-weight:600}.cost-breakdown-table .empty-cell{min-width:120px;height:28px}.cost-breakdown-table .cost-total td{border-top:2px solid var(--text-primary);font-weight:700}.form-textarea{resize:vertical;min-height:60px}.print-notes{border:1px solid var(--border);white-space:pre-wrap;min-height:40px;padding:8px 12px;font-size:13px}.order-form-image-section{position:sticky;top:20px}.image-preview-area{aspect-ratio:1;border:2px solid var(--border);background:var(--bg);border-radius:8px;justify-content:center;align-items:center;width:100%;margin-bottom:12px;display:flex;overflow:hidden}.image-preview{object-fit:contain;max-width:100%;max-height:100%}.image-placeholder{text-align:center;color:var(--text-muted)}.image-placeholder-text{margin-bottom:4px;font-size:16px}.image-placeholder-sub{font-size:12px}.image-thumbnails{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.image-thumbnail{border:2px solid var(--border);cursor:pointer;border-radius:6px;flex-direction:column;align-items:center;width:56px;display:flex;overflow:hidden}.image-thumbnail:hover{border-color:var(--sidebar-accent,#c9a84c)}.image-thumbnail.active{border-color:var(--sidebar-accent,#c9a84c);box-shadow:0 0 0 2px #c9a84c4d}.image-thumbnail img{object-fit:cover;width:100%;height:52px}.image-print-check{color:var(--text-secondary,#6b7280);cursor:pointer;align-items:center;gap:4px;margin-top:4px;padding:2px 0;font-size:11px;display:flex}.image-print-check input[type=checkbox]{margin:0}.print-images{display:none}.image-upload-area{border:2px dashed var(--border);text-align:center;cursor:pointer;color:var(--text-secondary);border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:20px;font-size:13px;display:flex}.image-upload-area:hover{border-color:var(--sidebar-accent,#c9a84c);background:#fffbe6}.image-upload-area.drag-over{border-color:var(--sidebar-accent,#c9a84c);background:#fef9ee}.upload-icon{color:var(--sidebar-accent,#c9a84c);font-size:28px;font-weight:300;line-height:1}.order-form-actions{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:12px;margin-top:24px;padding:20px 0;display:flex}.save-success-msg{color:var(--success);font-size:13px;font-weight:600}.print-only,.print-header,.print-footer{display:none}@media (width<=900px){.order-form-body{grid-template-columns:1fr}.order-form-image-section{position:static}}@media print{.no-print,.sidebar,.app-layout>nav,.order-form-actions,.image-thumbnails,.image-upload-area,.image-placeholder,.product-search-section,.selected-product-badge{display:none!important}.print-only{display:block!important}.print-value{display:inline!important}.order-form-page input,.order-form-page select,.order-form-page textarea{display:none!important}*{color:#000!important;box-shadow:none!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0;font-family:Noto Sans JP,sans-serif;font-size:11px;background:#fff!important}@page{size:A4 portrait;margin:12mm 10mm}.app-layout{display:block!important}.main-content{margin:0!important;padding:0!important}.order-form-page{max-width:none;margin:0;padding:0}.print-header{text-align:center;margin-bottom:16px;display:block!important}.print-title{letter-spacing:6px;border-bottom:3px double #000;margin:0 0 12px;padding-bottom:8px;font-size:24px;font-weight:700}.print-meta{justify-content:space-between;margin-top:8px;padding:0 8px;font-size:12px;display:flex}.order-form-body{display:block}.order-form-fields{width:100%}.image-preview-area{display:none!important}.order-form-image-section{text-align:center;page-break-inside:avoid;margin-top:24px;position:static}.print-images{page-break-inside:avoid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px;display:grid!important}.print-image-item{text-align:center;border:1px solid #000;padding:4px}.print-image-item img{object-fit:contain;min-width:300px;max-width:100%;min-height:200px}.print-image-label{margin-top:2px;font-size:10px;color:#666!important}.form-section{margin-bottom:12px}.form-section-title{color:#000;margin-bottom:6px;padding-bottom:3px;font-size:12px;font-weight:700;border-bottom:1.5px solid #000!important}.specs-table{table-layout:fixed;width:100%}.specs-table th,.specs-table td{word-wrap:break-word;overflow-wrap:break-word;border-color:#000;padding:5px 8px;font-size:11px}.specs-table th{width:80px;font-weight:700;background:#eee!important}.cost-breakdown-table{table-layout:fixed;border:2px solid #000;width:100%}.cost-breakdown-table th,.cost-breakdown-table td{border-color:#000;padding:6px 10px;font-size:11px}.cost-breakdown-table th{background:#eee!important}.cost-breakdown-table .empty-cell{min-width:80px;height:28px;min-height:28px}.print-notes{border:1px solid #000;min-height:30px;padding:6px 8px;font-size:11px}.print-footer{border-top:1px solid #999;justify-content:space-between;margin-top:auto;padding-top:6px;padding-left:10mm;padding-right:10mm;font-size:10px;position:fixed;bottom:0;left:0;right:0;color:#666!important;display:flex!important}}.master-tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:20px;display:flex}.master-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px;font-size:13px;transition:all .15s}.master-tab:hover{color:var(--text-primary)}.master-tab.active{color:var(--text-primary);border-bottom-color:var(--sidebar-accent)}.bom-product-search{max-width:400px;margin-bottom:20px;position:relative}.bom-product-search .form-input{width:100%}.bom-search-dropdown{background:var(--bg-card);border:1px solid var(--border);z-index:50;border-top:none;border-radius:0 0 6px 6px;max-height:240px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000014}.bom-search-item{cursor:pointer;border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;display:flex}.bom-search-item:hover{background:#f8fafc}.bom-search-item:last-child{border-bottom:none}.bom-search-item-code{color:var(--text-muted);font-family:SF Mono,Consolas,monospace;font-size:11px}.bom-selected-product{background:var(--border-light);border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.bom-selected-info{flex-direction:column;gap:2px;display:flex}.bom-selected-name{color:var(--text-primary);font-size:14px;font-weight:500}.bom-selected-code{color:var(--text-secondary);font-family:SF Mono,Consolas,monospace;font-size:12px}.row-actions{gap:6px;display:flex}.row-actions .btn{padding:3px 8px;font-size:11px}.proto-images{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.proto-thumb{object-fit:cover;border:1px solid var(--border);border-radius:4px;width:80px;height:80px}.master-empty{text-align:center;color:var(--text-muted);padding:60px 20px;font-size:13.5px}.master-empty-hint{color:var(--text-muted);margin-top:8px;font-size:12px}.category-badge{color:var(--indigo);background:#eef2ff;border-radius:3px;padding:1px 8px;font-size:11px;font-weight:500;display:inline-block}.master-detail-grid{grid-template-columns:100px 1fr;gap:8px 12px;font-size:13.5px;line-height:1.8;display:grid}.master-detail-label{color:var(--text-secondary);font-size:12px;font-weight:500}.master-detail-value{color:var(--text-primary)}.process-tags{flex-wrap:wrap;gap:4px;display:flex}.process-tag{color:var(--text-secondary);background:#f1f5f9;border-radius:3px;padding:1px 7px;font-size:11px;display:inline-block}:root{--bg:#f8f7f4;--bg-card:#fff;--sidebar-bg:#1a1a2e;--sidebar-accent:#c9a84c;--text-primary:#2d2d3a;--text-secondary:#6b6b80;--text-muted:#9e9eb0;--border:#e8e6e1;--border-light:#f3f1ed;--success:#c9a84c;--warning:#d4a054;--danger:#b44a4a;--indigo:#8b7355;--amber:#c9a84c;--gold:#c9a84c;--gold-light:#f5ecd7;--gold-dark:#8b6914;--charcoal:#2d2d3a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-primary);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.6}h1,h2,h3,h4,h5,h6{font-weight:500}a{color:inherit;cursor:pointer;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none}input,select,textarea{font-family:inherit;font-size:inherit}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);color:#cbd5e1;z-index:100;width:220px;height:100vh;padding-bottom:80px;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-header{border-bottom:1px solid #ffffff14;padding:24px 20px 20px}.sidebar-title{color:#f1f5f9;letter-spacing:.03em;font-size:16px;font-weight:700}.sidebar-subtitle{color:var(--sidebar-accent);letter-spacing:.08em;margin-top:3px;font-size:10.5px}.nav-section-title{text-transform:uppercase;letter-spacing:.08em;color:#475569;padding:16px 20px 6px;font-size:10px}.nav-link{color:#94a3b8;border-left:3px solid #0000;padding:8px 20px;font-size:13.5px;transition:all .15s;display:block}.nav-link:hover{color:#e2e8f0;background:#ffffff0a}.nav-link-active{color:#f1f5f9;border-left-color:var(--sidebar-accent);background:#c9a84c1a;font-weight:500}.nav-link:focus-visible{outline:2px solid var(--sidebar-accent);outline-offset:-2px}.admin-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;font:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding-right:20px;display:flex}.admin-toggle:focus-visible{outline:2px solid var(--sidebar-accent);outline-offset:-2px}.admin-toggle .nav-section-title{flex:1}.admin-toggle-arrow{color:#ffffff40;font-size:9px;transition:transform .2s}.admin-toggle-arrow.open{transform:rotate(180deg)}.admin-section{transition:max-height .3s;overflow:hidden}.sidebar-user{background:var(--sidebar-bg);border-top:1px solid #ffffff14;margin-top:auto;padding:16px 20px;position:absolute;bottom:0;left:0;right:0}.sidebar-user-info{flex-direction:column;margin-bottom:8px;display:flex}.sidebar-user-name{color:#e2e8f0;font-size:12.5px;font-weight:500}.sidebar-user-role{color:var(--sidebar-accent);letter-spacing:.04em;margin-top:1px;font-size:10px}.sidebar-logout{color:#64748b;cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:4px;width:100%;padding:5px 0;font-family:inherit;font-size:11.5px;transition:all .15s;display:block}.sidebar-logout:hover{color:#e2e8f0;border-color:#ffffff26}.main-content{flex:1;min-height:100vh;margin-left:220px;padding:28px 32px}.page-header{margin-bottom:24px}.page-header h1,.page-header h2{color:var(--text-primary);font-size:22px;font-weight:600}.page-header p,.page-description{color:var(--text-secondary);margin-top:4px;font-size:13px}.tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:20px;display:flex}.tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px;font-size:13px;transition:all .15s}.tab:hover{color:var(--text-primary)}.tab.active,.tab-active{color:var(--text-primary);border-bottom-color:var(--sidebar-accent);font-weight:500}.search-bar{align-items:center;gap:12px;margin-bottom:16px;display:flex}.search-input,.search-bar .form-input{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;outline:none;width:280px;max-width:280px;padding:8px 14px;font-size:13px;transition:border-color .15s}.search-input:focus,.search-bar .form-input:focus{border-color:var(--sidebar-accent);box-shadow:0 0 0 3px #c9a84c1f}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.table-wrapper{background:var(--bg-card);border:none;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000000f,0 0 0 1px #0000000a}table,.data-table{border-collapse:collapse;width:100%}thead th,.data-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);background:0 0;padding:10px 16px;font-size:11.5px;font-weight:500}tbody td,.data-table td{vertical-align:middle;border-bottom:none;padding:12px 16px;font-size:13px}tbody tr,.data-table tr{transition:background .1s}tbody tr:hover,.data-table tr:hover td{background:var(--border-light)}tbody tr.clickable-row{cursor:pointer}.text-right{text-align:right}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.font-mono,.code-cell,.price{font-family:SF Mono,Consolas,Liberation Mono,monospace;font-size:12.5px}.price{font-variant-numeric:tabular-nums}.alert-row{background:#fef3c7!important}.alert-row:hover{background:#fde68a!important}.badge{border-radius:3px;padding:2px 10px;font-size:11.5px;font-weight:500;line-height:1.7;display:inline-block}.badge-success{background:var(--gold-light);color:var(--gold-dark)}.badge-warning{color:#96722a;background:#fdf6e3}.badge-danger{color:var(--danger);background:#faf0f0}.badge-info{color:var(--indigo);background:#f5f0e8}.badge-secondary{background:var(--border-light);color:var(--text-secondary)}.badge-gray{background:var(--border-light);color:var(--text-muted)}.badge-in_stock,.badge-delivered{background:var(--gold-light);color:var(--success)}.badge-sold,.badge-completed{color:var(--text-secondary);background:#f1f5f9}.badge-in_process,.badge-inspection{color:var(--indigo);background:#eef2ff}.badge-ordered,.badge-order_placed{color:#2563eb;background:#eff6ff}.badge-received{color:var(--amber);background:#fef3c7}.badge-sample{color:var(--amber);background:#fffbeb}.badge-estimated{color:var(--amber);background:#fef3c7}.badge-pending{color:var(--text-muted);background:#f1f5f9}.badge-confirmed{background:var(--gold-light);color:var(--success)}.badge-notified{color:#2563eb;background:#eff6ff}.badge-handed_over{background:var(--gold-light);color:var(--success)}.badge-active,.badge-on_sale{background:var(--gold-light);color:var(--gold-dark)}.badge-draft{background:var(--border-light);color:var(--text-muted)}.badge-in_production{color:var(--indigo);background:#eef2ff}.alert-bar{border-radius:6px;align-items:center;gap:8px;margin-bottom:8px;padding:10px 14px;font-size:13px;display:flex}.alert-bar-warning,.alert-bar.warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.alert-bar-danger,.alert-bar.danger{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.alert-icon{flex-shrink:0;font-size:14px}.alert-dismiss{cursor:pointer;color:inherit;opacity:.5;background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:16px}.alert-dismiss:hover{opacity:1}.kanban{gap:16px;margin-top:20px;display:flex}.kanban-col{flex:1;min-width:0}.kanban-col-header{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:2px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;font-size:12px;font-weight:500;display:flex}.kanban-count{background:var(--border-light);color:var(--text-muted);border-radius:10px;padding:1px 7px;font-size:11px}.kanban-card{background:var(--bg-card);border:none;border-radius:6px;margin-bottom:8px;padding:12px 14px;font-size:13px;box-shadow:0 1px 3px #0000000d,0 0 0 1px #00000008}.kanban-card-title{margin-bottom:4px;font-weight:500}.kanban-card-meta{color:var(--text-secondary);font-size:12px}.kanban-card-date{color:var(--text-muted);margin-top:6px;font-size:11px}.kanban-group-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:12px;margin-bottom:6px;font-size:11px;font-weight:500}.kanban-group-label:first-child{margin-top:0}.stat-cards{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}.stat-card{background:var(--bg-card);border:none;border-radius:8px;padding:16px 18px;box-shadow:0 1px 3px #0000000f,0 0 0 1px #0000000a}.stat-card-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px;font-size:11px}.stat-card-value{font-family:SF Mono,Consolas,monospace;font-size:22px;font-weight:500}.stat-card-sub{color:var(--text-secondary);margin-top:4px;font-size:12px}.inv-badge{align-items:center;gap:3px;margin-right:8px;font-size:12px;display:inline-flex}.inv-badge-label{color:var(--text-muted);font-size:11px}.inv-badge-count{font-family:SF Mono,Consolas,monospace;font-weight:500}.drawer-overlay{z-index:200;background:#0f172a4d;width:100%;height:100%;position:fixed;top:0;left:0}.drawer,.side-drawer{background:var(--bg-card);border-left:1px solid var(--border);z-index:201;flex-direction:column;width:480px;height:100vh;display:flex;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-4px 0 24px #00000014}.drawer-header{border-bottom:1px solid var(--border-light);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.drawer-title{font-size:15px;font-weight:500}.drawer-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:22px;transition:all .15s;display:flex}.drawer-close:hover{background:var(--border-light);color:var(--text-primary)}.drawer-body{flex:1;padding:20px;overflow-y:auto}.detail-section{margin-bottom:24px}.detail-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:500}.detail-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.detail-item{margin-bottom:0}.detail-label{color:var(--text-muted);margin-bottom:2px;font-size:11px}.detail-value{color:var(--text-primary);font-size:13px}.detail-value-large{color:var(--text-primary);font-family:SF Mono,Consolas,monospace;font-size:18px;font-weight:500}.cost-breakdown{background:var(--border-light);border-radius:6px;padding:14px}.cost-row{justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;display:flex}.cost-row+.cost-row{border-top:1px dashed var(--border)}.cost-row-label{align-items:center;gap:8px;display:flex}.cost-row-category{color:var(--text-muted);background:var(--border-light);border-radius:2px;padding:1px 6px;font-size:10px}.cost-row-amount{font-family:SF Mono,Consolas,monospace;font-size:13px}.cost-row-amount.estimated{color:var(--warning);font-style:italic}.cost-row-amount.pending{color:var(--text-muted)}.cost-line{justify-content:space-between;display:flex}.cost-separator{border-top:1px dashed var(--border);margin:8px 0}.cost-total{border-top:2px solid var(--border);justify-content:space-between;align-items:center;margin-top:6px;padding:10px 0 0;font-weight:500;display:flex}.cost-total-amount{font-family:SF Mono,Consolas,monospace;font-size:15px;font-weight:600}.custom-order-detail{background:var(--border-light);border-radius:6px;margin-top:6px;padding:12px 14px;font-size:13px}.custom-order-detail dt{color:var(--text-muted);margin-top:8px;font-size:11px}.custom-order-detail dt:first-child{margin-top:0}.custom-order-detail dd{color:var(--text-primary);margin-top:2px}.btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:7px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--sidebar-bg);color:#f1f5f9}.btn-primary:hover:not(:disabled){background:#1e293b}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:var(--gold-dark)}.btn-warning{background:var(--warning);color:#fff}.btn-warning:hover:not(:disabled){background:#b45309}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-outline{border:1px solid var(--border);color:var(--text-secondary);background:var(--bg-card)}.btn-outline:hover:not(:disabled){background:var(--border-light);color:var(--text-primary)}.btn-sm{padding:4px 12px;font-size:11px}.modal-overlay{z-index:300;background:#0f172a59;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg-card);border-radius:10px;width:90%;max-width:520px;max-height:85vh;padding:28px;overflow-y:auto;box-shadow:0 20px 60px #00000026,0 0 0 1px #0000000d}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-title{font-size:16px;font-weight:500}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.form-group{margin-bottom:14px}.form-label{color:var(--text-secondary);letter-spacing:.02em;margin-bottom:4px;font-size:12px;font-weight:500;display:block}.form-input,.form-select{border:1px solid var(--border);width:100%;color:var(--text-primary);background:var(--bg-card);box-sizing:border-box;border-radius:6px;outline:none;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.form-input:focus,.form-select:focus{border-color:var(--sidebar-accent);box-shadow:0 0 0 3px #c9a84c1f}.form-input::placeholder{color:var(--text-muted)}textarea.form-input{resize:vertical}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.loading{text-align:center;color:var(--text-muted);padding:60px;font-size:14px}.error{text-align:center;color:var(--danger);padding:60px;font-size:14px}.placeholder-page{min-height:400px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;font-size:15px;display:flex}.placeholder-page h2{color:var(--border);margin-bottom:8px;font-size:20px;font-weight:500}.status-label{white-space:nowrap;border-radius:3px;padding:2px 10px;font-size:11.5px;font-weight:500;display:inline-block}.text-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collapsible-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.collapsible-header:hover{color:var(--text-primary)}.collapsible-arrow{color:var(--text-muted);font-size:10px;transition:transform .2s}.collapsible-arrow.open{transform:rotate(180deg)}.collapsible-body{transition:max-height .3s;overflow:hidden}.empty-state{text-align:center;color:var(--text-muted);padding:48px 24px}.empty-state-icon{opacity:.4;margin-bottom:12px;font-size:32px}.empty-state-text{font-size:14px}.empty-state-sub{color:var(--text-muted);margin-top:4px;font-size:12.5px}td.empty-state{padding:48px 24px!important}.confirm-overlay{z-index:400;background:#0f172a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog{background:var(--bg-card);border-radius:10px;width:90%;max-width:400px;padding:24px 28px;box-shadow:0 20px 60px #00000026,0 0 0 1px #0000000d}.confirm-dialog-title{margin-bottom:8px;font-size:16px;font-weight:600}.confirm-dialog-body{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.6}.confirm-dialog-actions{justify-content:flex-end;gap:10px;display:flex}@media (width<=768px){.sidebar{flex-wrap:wrap;align-items:center;width:100%;height:auto;padding:8px 12px;display:flex;position:relative}.sidebar-header{border-bottom:none;margin-right:16px;padding:0}.nav-section-title{display:none}.nav-link{border-bottom:2px solid #0000;border-left:none;padding:6px 10px;font-size:12px}.nav-link-active{border-left-color:#0000;border-bottom-color:var(--sidebar-accent)}.main-content{margin-left:0;padding:16px}.stat-cards{grid-template-columns:repeat(2,1fr)}.kanban{flex-direction:column}.drawer,.side-drawer{width:100%}.search-input,.search-bar .form-input{width:100%;max-width:100%}.detail-grid,.form-grid{grid-template-columns:1fr}.metal-rates-latest{grid-template-columns:repeat(2,1fr)}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;right:16px}.toast{pointer-events:auto;border-radius:6px;align-items:center;gap:10px;min-width:260px;max-width:420px;padding:10px 16px;font-family:Noto Sans JP,system-ui,sans-serif;font-size:13px;animation:.25s ease-out toast-slide-in;display:flex;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014}@keyframes toast-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.toast-success{background:var(--gold-light);color:var(--success);border:1px solid #e8dbb5}.toast-error{color:var(--danger);background:#fef2f2;border:1px solid #fecaca}.toast-warning{color:var(--warning);background:#fffbeb;border:1px solid #fde68a}.toast-message{flex:1}.toast-close{color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1}.toast-close:hover{opacity:1}.search-select{width:100%;position:relative}.search-select-input-wrapper{align-items:center;display:flex;position:relative}.search-select-input{border:1px solid var(--border);width:100%;color:var(--text-primary);background:var(--bg-card);box-sizing:border-box;border-radius:4px;outline:none;padding:7px 52px 7px 10px;font-family:inherit;font-size:13.5px;transition:border-color .15s}.search-select-input:focus{border-color:var(--text-secondary)}.search-select-input::placeholder{color:var(--text-muted)}.search-select-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px;line-height:1;position:absolute;right:24px}.search-select-clear:hover{color:var(--text-primary)}.search-select-arrow{color:var(--text-muted);pointer-events:none;font-size:9px;position:absolute;right:8px}.search-select-dropdown{z-index:50;background:var(--bg-card);border:1px solid var(--border);border-top:none;border-radius:0 0 4px 4px;max-height:200px;margin:0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 8px #00000014}.search-select-option{cursor:pointer;padding:6px 10px;font-size:13px;transition:background .1s}.search-select-option:hover,.search-select-option.highlighted{background:var(--border-light)}.search-select-option.selected{color:var(--sidebar-accent);font-weight:500}.search-select-no-result{color:var(--text-muted);text-align:center;padding:8px 10px;font-size:13px}.metal-rates-latest{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:8px;display:grid}.metal-rate-card{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:8px;padding:16px}.metal-rate-card-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:12px;font-weight:600}.metal-rate-card-price{color:var(--text-primary);font-size:20px;font-weight:700}.metal-rate-change{margin-top:2px;font-size:12px;font-weight:500}.metal-rate-change-up{color:#dc2626}.metal-rate-change-down{color:#2563eb}.metal-rate-change-flat{color:var(--text-muted)}.metal-rate-card-date{color:var(--text-muted);margin-top:6px;font-size:11px}.metal-type-badge{color:#334155;background:#f1f5f9;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}
