*,*:before,*:after{box-sizing:border-box}img,video{max-width:100%;height:auto;display:block}html{font-size:16px}@media (max-width: 768px){html{font-size:15px}}@media (max-width: 480px){html{font-size:14px}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 16px}.desktop-only{display:block}.mobile-only{display:none}@media (max-width: 600px){.desktop-only{display:none}.mobile-only{display:block}}.row{display:flex;flex-wrap:wrap;margin:-8px}.col{flex:1 1 300px;margin:8px}:root{--primary-color: #ffffff;--secondary-color: #ffffff;--accent-color: #ff0000;--accent-hover: #cc0000;--accent-hover-color: #cc0000;--gray-light: #f5f5f5;--gray-medium: #e0e0e0;--gray-dark: #333333;--text-color: #000000;--border-color: #e0e0e0;--disabled-bg: #cccccc;--disabled-text: #666666;--success-bg: #d4edda;--success-text: #155724;--success-border: #c3e6cb;--error-bg: #f8d7da;--error-text: #721c24;--error-border: #f5c6cb;--transition-speed: .3s;--navbar-height: 80px;--sidebar-width: 260px;--sidebar-width-collapsed: 60px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;line-height:1.6;color:var(--text-color);background-color:var(--primary-color);min-height:100vh}body.sidebar-collapsed .main-content,body.sidebar-collapsed .home-container,body.sidebar-collapsed .stock-container,body.sidebar-collapsed .customer-container,body.sidebar-collapsed .material-container,body.sidebar-collapsed .quotation-container,body.sidebar-collapsed .order-container,body.sidebar-collapsed .invoice-container,body.sidebar-collapsed .jobcard-container,body.sidebar-collapsed .delivery-container,body.sidebar-collapsed .fettling-container,body.sidebar-collapsed .molding-container,body.sidebar-collapsed .closing-container,body.sidebar-collapsed .inspection-container,body.sidebar-collapsed .melting-container,body.sidebar-collapsed .spark-container,body.sidebar-collapsed .ppe-container,body.sidebar-collapsed .production-container,body.sidebar-collapsed .scrap-container,body.sidebar-collapsed .certificate-container,body.sidebar-collapsed .wage-container,body.sidebar-collapsed .heat-treatment-container,body.sidebar-collapsed .casting-flask-container,body.sidebar-collapsed .transaction-report-container{margin-left:var(--sidebar-width-collapsed)}.page-container{display:flex;min-height:100vh;background-color:var(--primary-color)}.sidebar{width:var(--sidebar-width);background-color:var(--gray-light);border-right:1px solid var(--border-color);padding:1rem;position:fixed;height:100vh;overflow-y:auto;z-index:100;transition:width var(--transition-speed) ease}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.main-content{flex:1;margin-left:var(--sidebar-width);padding:2rem;padding-top:calc(var(--navbar-height) + 2rem);background-color:var(--primary-color);transition:margin-left var(--transition-speed) ease}.main-content.sidebar-collapsed{margin-left:var(--sidebar-width-collapsed)}.section{background-color:var(--gray-light);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border-color)}.section-title{color:var(--text-color);font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.card{background-color:var(--primary-color);border-radius:8px;box-shadow:0 2px 10px #0000000d;padding:1.5rem;margin:1rem 0;transition:transform var(--transition-speed) ease;border:1px solid var(--border-color)}.card:hover{transform:translateY(-5px);box-shadow:0 4px 15px #0000001a}.btn{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:all var(--transition-speed) ease}.btn-primary{background-color:var(--accent-color);color:var(--primary-color)}.btn-primary:hover{background-color:#c00;transform:translateY(-2px)}.btn-secondary{background-color:var(--gray-light);color:var(--secondary-color);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--gray-medium)}.form-group{margin-bottom:1.5rem}.form-control{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;transition:border-color var(--transition-speed) ease;background-color:var(--primary-color);color:var(--text-color)}.form-control:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #ff00001a}.table{width:100%;border-collapse:collapse;margin:1rem 0;background-color:var(--primary-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.table th,.table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.table th{background-color:var(--gray-light);font-weight:600;color:var(--text-color)}.table tr:hover{background-color:var(--gray-light)}.container{max-width:1200px;margin:0 auto;padding:2rem;margin-top:4rem;background-color:var(--primary-color)}.page-header{margin-bottom:2rem;padding:1rem;border-bottom:1px solid var(--border-color);background-color:var(--gray-light);border-radius:8px;position:relative;z-index:1}.page-title{color:var(--text-color);font-size:2rem;font-weight:700;margin:0}.page-subtitle{color:var(--gray-dark);font-size:1.1rem;margin-top:.5rem}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500}.status-active{background-color:#e8f5e9;color:#2e7d32}.status-pending{background-color:#fff3e0;color:#ef6c00}.status-completed{background-color:#e3f2fd;color:#1565c0}@media (max-width: 768px){.sidebar{width:100%;height:auto;position:relative}.main-content{margin-left:0;padding-top:calc(var(--navbar-height) + 1rem)}.container{padding:1rem}.page-title{font-size:1.5rem}.section{padding:1rem}}.invoice-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;min-height:100vh;background:var(--primary-color);z-index:0;overflow-y:auto}.invoice-content{width:100%;max-width:1200px;margin:0 auto;padding:20px;padding-top:calc(var(--navbar-height) + 40px);padding-bottom:50px}.invoice-container{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:100vh;font-family:Inter,Arial,sans-serif;margin-left:250px;padding:24px;padding-top:calc(var(--navbar-height) + 40px);padding-bottom:40px;background:var(--primary-color)}.report-border-box{background-color:var(--primary-color);border:1px solid var(--border-color);border-radius:10px;padding:16px}.report-container{max-width:1240px;margin:0 auto}.report-title{color:var(--text-color);font-size:1.5rem;font-weight:700;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.report-section-title{color:var(--text-color);font-size:1.05rem;font-weight:600;margin:18px 0 10px}.charts-section{margin-bottom:16px}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 900px){.charts-grid{grid-template-columns:1fr}}.chart-card{background:var(--primary-color);border:1px solid var(--border-color);border-radius:8px;padding:10px}.chart-container{position:relative;width:100%;height:260px}.report-container table,.report-container .scrap-table{width:100%;border-collapse:collapse;background:var(--primary-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.report-container table th,.report-container table td,.report-container .scrap-table th,.report-container .scrap-table td{padding:10px 12px;border-bottom:1px solid var(--border-color);text-align:left;color:var(--text-color)}.report-container table th,.report-container .scrap-table th{background:var(--gray-light);font-weight:600}.report-container table tbody tr:nth-child(2n),.report-container .scrap-table tbody tr:nth-child(2n){background:#fafafa}.summary-row td{background:var(--gray-light)}.table-responsive{overflow-x:auto}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0 16px}.summary-item{background:var(--primary-color);border:1px solid var(--border-color);border-radius:8px;padding:10px 12px}.summary-label{display:block;font-size:.85rem;color:#555}.summary-value{display:block;margin-top:4px;font-size:1rem;font-weight:600}.summary-value.success{color:#2e7d32}.summary-value.warning{color:#ef6c00}.summary-value.danger{color:#c62828}.export-btn,.retry-btn,.primary-btn,.secondary-btn{padding:.6rem 1.2rem;border-radius:6px;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-speed) ease,transform var(--transition-speed) ease}.export-btn,.primary-btn{background:var(--accent-color);color:var(--primary-color);border-color:transparent}.export-btn:hover,.primary-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.secondary-btn,.retry-btn{background:var(--gray-light);color:var(--text-color)}.secondary-btn:hover,.retry-btn:hover{background:var(--gray-medium)}.loading-container{text-align:center;padding:12px}.loading-spinner{width:28px;height:28px;border:3px solid var(--gray-medium);border-top-color:var(--accent-color);border-radius:50%;display:inline-block;animation:spin .8s linear infinite;margin-bottom:6px}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#fdecea;color:#b71c1c;border:1px solid #f5c6cb;border-radius:8px;padding:10px 12px;margin:10px 0}.invoice-logo{height:38px;margin-right:10px}h1,h2{color:var(--text-color);margin-bottom:20px;font-weight:600}.invoice-card{background:var(--primary-color);border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 4px 6px -1px #0000001a;border:1px solid var(--border-color)}.invoice-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.invoice-card-title{color:var(--text-color);font-size:1.5rem;font-weight:600;text-align:center;margin-bottom:1.7rem}.invoice-header{display:flex;align-items:center;margin-bottom:24px}.invoice-input-group{display:flex;flex-direction:column;margin-bottom:20px}.invoice-app-name{color:#fff;font-weight:700;font-size:1.1rem;letter-spacing:1px}.invoice-label{color:var(--text-color);font-weight:500;font-size:.98rem;margin-bottom:.5rem}.invoice-input{background:var(--primary-color);border:1px solid var(--border-color);border-radius:8px;padding:12px;font-size:1rem;transition:all .3s ease;color:var(--text-color)}.invoice-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #ff00001a}.invoice-textarea{min-height:150px;resize:vertical}.invoice-button{background:var(--accent-color);color:var(--primary-color);border:none;border-radius:8px;padding:12px 24px;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:500;text-transform:uppercase;letter-spacing:1px}.invoice-button:hover:not(:disabled){background:#c00;transform:translateY(-2px)}.invoice-button:disabled{background:var(--gray-medium);cursor:not-allowed;transform:none}.invoice-section{margin-bottom:32px;width:100%;background:var(--gray-light);border-radius:8px;padding:1.5rem;border:1px solid var(--border-color)}.invoice-notification{padding:12px 24px;border-radius:8px;margin-bottom:20px;font-weight:500}.invoice-notification.error{background-color:#ffebee;color:#c62828;border:1px solid #ffcdd2}.invoice-notification.success{background-color:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.invoice-table-container{overflow-x:auto;background:var(--primary-color);border-radius:16px;padding:1px;margin-bottom:20px;border:1px solid var(--border-color)}.invoice-table{width:100%;border-collapse:collapse;background:var(--primary-color);border-radius:16px;overflow:hidden}.invoice-table th,.invoice-table td{padding:14px;text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-color);white-space:nowrap}.invoice-table th{background:var(--gray-light);font-weight:600;color:var(--text-color);position:sticky;top:0;z-index:1}.invoice-table tr:hover{background-color:var(--gray-light)}.invoice-no-data{text-align:center;padding:20px;color:var(--gray-dark);font-style:italic}.invoice-actions{display:flex;gap:8px;justify-content:flex-end}.invoice-action-button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:all .3s ease}.invoice-action-button.edit{background:var(--accent-color);color:var(--primary-color)}.invoice-action-button.edit:hover:not(:disabled){background:#c00;transform:translateY(-2px)}.invoice-action-button.delete{background:#f44336;color:var(--primary-color)}.invoice-action-button.delete:hover:not(:disabled){background:#d32f2f;transform:translateY(-2px)}.invoice-action-button:disabled{background:var(--gray-medium);cursor:not-allowed;transform:none}.invoice-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.invoice-modal-content{background:var(--primary-color);padding:24px;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 4px 6px #0000001a}.invoice-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.invoice-modal-title{font-size:1.5rem;font-weight:600;color:var(--text-color);margin:0}.invoice-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray-dark);padding:4px;transition:all .3s ease}.invoice-modal-close:hover{color:var(--accent-color)}.invoice-modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-color)}.error-message{color:#f44336;font-size:.875rem;margin-top:4px}.invoice-input.invalid{border-color:#f44336}.invoice-input.invalid:focus{box-shadow:0 0 0 3px #f443361a}@media (max-width: 1024px){.container{max-width:100%;padding:1rem}}@media (max-width: 900px){.sidebar{width:100%;height:auto;position:relative;border-right:none;border-bottom:1px solid var(--border-color);padding:.5rem}.main-content{margin-left:0;padding:1rem;padding-top:calc(var(--navbar-height) + 1rem)}.invoice-container{margin-left:0;padding:1rem}}@media (max-width: 768px){.container{padding:.5rem;margin-top:2rem}.card,.section{padding:1rem;margin:.5rem 0;border-radius:6px}.page-title{font-size:1.2rem}.section,.invoice-content,.invoice-container{padding:1rem}}@media (max-width: 600px){.row{flex-direction:column;margin:0}.col{margin:0 0 1rem;width:100%;flex:1 1 100%}.table th,.table td,.card,.section{padding:.5rem;font-size:.95rem}.sidebar{padding:.25rem}.main-content{padding:.5rem;padding-top:calc(var(--navbar-height) + .5rem)}.invoice-content,.invoice-container{padding:.5rem}}@media (max-width: 480px){html{font-size:13px}.container{padding:.25rem}.card,.section{padding:.25rem;font-size:.9rem}.invoice-content,.invoice-container{padding:.25rem}}html{font-size:clamp(13px,2vw,16px)}
