:root{--bg-dark:#121212;--bg-panel:#1e1e1e;--text-main:#fff;--text-muted:#a0a0a0;--primary:#007bff;--primary-hover:#0056b3;--border-color:#333;--paper-bg:#fff}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);height:100vh;font-family:Inter,Roboto,sans-serif;overflow:hidden}#root{height:100%}.app-container{flex-direction:column;height:100%;display:flex}.topbar{background-color:var(--bg-panel);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;height:60px;padding:0 20px;display:flex}.logo{font-size:1.2rem;font-weight:700}.btn-primary{background-color:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 16px;font-weight:500;transition:background-color .2s;display:flex}.btn-primary:hover{background-color:var(--primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:var(--bg-dark);color:var(--text-main);border:1px solid var(--border-color);cursor:pointer;border-radius:4px;padding:6px 10px;font-size:.8rem;transition:all .2s}.btn-secondary:hover{background-color:var(--border-color)}.main-content{flex:1;display:flex;overflow:hidden}.form-sidebar{background-color:var(--bg-panel);border-right:1px solid var(--border-color);width:300px;padding:20px;overflow-y:auto}.form-group{margin-bottom:20px}.form-group label{color:var(--text-muted);margin-bottom:8px;font-size:.9rem;display:block}.form-group input{background-color:var(--bg-dark);border:1px solid var(--border-color);color:#fff;border-radius:6px;width:100%;padding:10px;font-family:monospace;font-size:1rem}.form-group input:focus{border-color:var(--primary);outline:none}.canvas-wrapper{background-color:var(--bg-dark);flex:1;justify-content:center;align-items:center;padding:40px;display:flex;overflow:auto}.a4-paper{background-color:var(--paper-bg);box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;width:297mm;min-width:297mm;height:210mm;min-height:210mm;padding:9mm 8.5mm;display:flex;box-shadow:0 10px 30px #00000080}.grid-container{box-sizing:content-box;gap:0;display:inline-grid}.label-card{color:#000;box-sizing:border-box;width:100%;height:100%;margin:0;padding:0;position:relative}.qr-container{width:25mm;height:25mm;margin:0;padding:0;position:absolute;top:50%;left:2mm;transform:translateY(-50%)}.qr-container svg{width:100%;height:100%;display:block}.text-container{flex-direction:column;gap:5mm;display:flex;position:absolute;top:8mm;left:37mm;right:10mm}.text-line{align-items:center;height:5.5mm;line-height:5.5mm;display:flex;overflow:visible}.material-line .value,.date-line .value{white-space:nowrap;font-family:Cordia New,sans-serif;font-size:24pt;font-weight:400}@media print{@page{size:A4 landscape;margin:0}body,html,#root,.app-container,.main-content{background:0 0!important;height:auto!important;overflow:visible!important}.no-print,.canvas-wrapper{padding:0!important;display:none!important}body{visibility:hidden}.a4-paper{visibility:visible;page-break-after:always;width:297mm;height:210mm;margin:0;position:relative;box-shadow:none!important}.canvas-wrapper{display:block!important}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;padding:20px;display:flex;box-shadow:0 10px 30px #00000080}.modal-title{color:var(--text-main);font-size:1.2rem;font-weight:600}
