*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:Roboto,Helvetica,Arial,sans-serif;background-color:#f5f5f5;overflow-x:hidden;margin:0;padding:0}#root{display:flex;flex-direction:column;min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#888;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#555}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-in-out}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 600px){.hide-on-mobile{display:none!important}.full-width-mobile{width:100%!important}.stack-on-mobile{flex-direction:column!important}}@media (min-width: 601px) and (max-width: 960px){.hide-on-tablet{display:none!important}}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.mx-auto{margin-left:auto;margin-right:auto}.w-100{width:100%}.h-100{height:100%}@media print{body *{visibility:hidden}#print-section,#print-section *{visibility:visible}#print-section{position:absolute;left:0;top:0;width:80mm;margin:0;padding:5px;font-family:Courier New,Courier,monospace;font-size:12px;color:#000;background:#fff}@page{margin:0;size:80mm auto}#print-section table{width:100%;border-collapse:collapse}#print-section th,#print-section td{padding:2px 0;text-align:left}.ticket-divider{border-top:1px dashed #000;margin:5px 0}}
