*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #0f1117;--bg-secondary: #1a1d27;--bg-card: #21242f;--bg-input: #2a2d3a;--bg-hover: #32364a;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--accent: #06b6d4;--accent-glow: rgba(6, 182, 212, .15);--accent-hover: #22d3ee;--border: #2e3348;--border-focus: #06b6d4;--pcs-color: #f4943d;--neosurf-color: #fb89c6;--transcash-color: #f2848c;--danger: #ef4444;--success: #10b981;--purple: #8b5cf6;--radius: 8px;--radius-lg: 12px;--shadow: 0 4px 24px rgba(0, 0, 0, .3);--transition: .2s ease}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;min-height:100vh}.app-header{background:linear-gradient(135deg,var(--bg-secondary) 0%,#1e1b4b 100%);border-bottom:1px solid var(--border);padding:2rem 1.5rem;text-align:center}.app-header__title{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:800;letter-spacing:.05em;background:linear-gradient(135deg,var(--accent) 0%,var(--purple) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-header__subtitle{color:var(--text-secondary);font-size:.875rem;margin-top:.5rem}.app-main{max-width:1400px;margin:0 auto;padding:1.5rem}.app-layout{display:flex;gap:2rem;align-items:flex-start}.app-sidebar{flex:1;min-width:0}.app-preview{flex:0 0 auto;position:sticky;top:1.5rem}.preview-ticket{background-color:#fff;color:#000}.coupon-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow)}.type-selector{margin-bottom:1.5rem}.type-selector__title{font-size:1rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem;text-align:center}.type-selector__buttons{display:flex;gap:.5rem}.type-btn{flex:1;padding:.75rem;border:2px solid transparent;border-radius:var(--radius);font-size:.95rem;font-weight:700;cursor:pointer;transition:all var(--transition);color:#000;position:relative;overflow:hidden}.type-btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s}.type-btn:hover:after{left:100%}.type-btn--pcs{background:var(--pcs-color)}.type-btn--neosurf{background:var(--neosurf-color)}.type-btn--transcash{background:var(--transcash-color)}.type-btn--active{border-color:#fff;transform:scale(1.03);box-shadow:0 0 20px #ffffff26}.type-selector__hint{text-align:center;font-size:.75rem;color:var(--text-muted);margin-top:.75rem}.form-field{margin-bottom:.75rem}.form-field label{display:block;font-size:.8rem;font-weight:500;color:var(--text-secondary);margin-bottom:.3rem}.form-field input,.form-field select{width:100%;padding:.6rem .75rem;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.875rem;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition);outline:none}.form-field input:focus,.form-field select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow)}.form-field input:disabled{opacity:.5;cursor:not-allowed}.form-field--row{display:flex;gap:.75rem}.form-field__half{flex:1}.form-field__half label{display:block;font-size:.8rem;font-weight:500;color:var(--text-secondary);margin-bottom:.3rem}.form-field__half input{width:100%;padding:.6rem .75rem;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.875rem;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition);outline:none}.form-field__half input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow)}.form-field--checkbox{display:flex;align-items:center;gap:.5rem}.form-field--checkbox input[type=checkbox]{width:auto;accent-color:var(--accent);cursor:pointer}.form-field--checkbox label{display:inline;margin-bottom:0;cursor:pointer}.form-divider{border:none;border-top:1px solid var(--border);margin:1rem 0}.custom-amount-input{margin-top:.5rem}.action-buttons{display:flex;gap:.5rem;margin-top:1.25rem}.action-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.75rem 1rem;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition);color:#fff}.action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.action-btn:active{transform:translateY(0)}.action-btn--cutmark{background:var(--success)}.action-btn--jpg,.action-btn--pdf{background:var(--purple)}.action-btn__icon{font-size:1rem}.cut-mark{border:1px dashed #000!important}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;max-width:550px;width:100%;position:relative;box-shadow:var(--shadow);max-height:90vh;overflow-y:auto}.modal-box h2{margin-bottom:1rem}.modal-box h3{color:var(--accent);margin-top:1rem;margin-bottom:.5rem;font-size:1rem}.modal-box p{color:var(--text-secondary);margin-bottom:.75rem;line-height:1.6}.modal-close{position:absolute;top:.75rem;right:1rem;background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;transition:color var(--transition);line-height:1}.modal-close:hover{color:var(--danger)}.modal-title{color:var(--accent);font-size:1.25rem}.modal-title--warning{color:var(--pcs-color);font-size:1.5rem;text-align:center}.modal-accept{display:block;width:100%;padding:.75rem;margin-top:1rem;background:linear-gradient(135deg,var(--accent) 0%,var(--purple) 100%);border:none;border-radius:var(--radius);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity var(--transition)}.modal-accept:hover{opacity:.9}.modal-enter-active,.modal-leave-active{transition:opacity .25s ease}.modal-enter-from,.modal-leave-to{opacity:0}.app-footer{background:var(--bg-secondary);border-top:1px solid var(--border);padding:2rem 1.5rem;margin-top:3rem}.footer-grid{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-col h4{color:var(--text-primary);font-size:.9rem;font-weight:600;margin-bottom:.75rem}.status-table{width:100%;border-collapse:collapse;font-size:.8rem}.status-table th,.status-table td{padding:.4rem .5rem;border-bottom:1px solid var(--border)}.status-table th{color:var(--text-muted);font-weight:500;text-align:left}.status-table td{color:var(--success)}.footer-links{list-style:none}.footer-links li{margin-bottom:.4rem;color:var(--text-muted);font-size:.85rem}.footer-links a{color:var(--accent);text-decoration:none;transition:color var(--transition)}.footer-links a:hover{color:var(--accent-hover)}@media(max-width:900px){.app-layout{flex-direction:column}.app-preview{position:static;width:100%;display:flex;justify-content:center;order:-1}.app-sidebar{width:100%}.footer-grid{grid-template-columns:1fr}.type-selector__buttons,.action-buttons{flex-direction:column}}@media(max-width:400px){.preview-ticket{transform:scale(.85);transform-origin:top center}}@font-face{font-family:ArialCustom;src:url(/fonts/IckyTicketMono.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Chainprinter Regular;src:url(/fonts/ChainprinterRegular.ttf) format("truetype")}.pcs_ticket_preview{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:transparent;width:355px}.pcsLine01{font-size:16px;margin-top:5px}.pcsLine02,.pcsLine03,.pcsLine04{font-size:16px;margin-top:-5px}.pcsLine05{font-size:16px;margin-top:0;margin-bottom:-5px}.pcsLine06{font-size:10px;margin-top:5px}.pcsLine07,.pcsLine08,.pcsLine09,.pcsLine10{font-size:16px;margin-top:-5px}.pcsLine11,.pcsLine13{font-size:10px}.pcsLine14,.pcsLine15{font-size:16px;margin-top:-5px}.pcsLine16{font-size:10px}.pcsLine17{font-size:30px}.pcsLine18{font-size:16px;margin-top:0}.pcsLine19,.pcsLine20,.pcsLine21{font-size:16px;margin-top:-5px}.pcsLine22{font-size:10px}.pcsLine23{font-size:16px;margin-top:-5px}.pcsLine24{font-size:10px}.pcsLine25{font-size:30px}.pcsLine26,.pcsLine27,.pcsLine28,.pcsLine29{font-size:16px;margin-top:-5px}.pcsLine30{font-size:10px}.pcsLine31,.pcsLine32,.pcsLine33,.pcsLine34,.pcsLine35{font-size:16px;margin-top:-5px}.pcsLine36{font-size:10px}.pcsLine37{font-size:30px}.pcsLine38{font-size:10px}.pcsLine39,.pcsLine40,.pcsLine41{font-size:16px;margin-top:-5px}.pcsLine42{font-size:30px}.pcsLine43,.pcsLine44,.pcsLine45,.pcsLine46,.pcsLine47,.pcsLine48,.pcsLine49,.pcsLine50,.pcsLine51,.pcsLine52,.pcsLine53{font-size:16px;margin-top:-5px}.pcsLine54{font-size:10px}.pcsLine55,.pcsLine56{font-size:16px;margin-top:-5px}.pcsLine57{font-size:10px}.pcsLine58,.pcsLine59,.pcsLine60,.pcsLine61,.pcsLine62,.pcsLine63,.pcsLine64,.pcsLine65,.pcsLine66{font-size:16px;margin-top:-5px}.pcsLine67{font-size:10px}.pcsLine68{font-size:16px;margin-top:-5px}.pcsLine69{display:flex;justify-content:center;align-items:center}.pcsLine69 img{width:300px}.pcsLine70,.pcsLine71{font-size:16px;margin-top:-5px}.neosurf_ticket_preview{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:transparent;width:355px}.neosurfMargin{line-height:1;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}.neosurfMarginLogo,.neosurfMarginNumber{margin-top:20px}.neosurfLine01,.neosurfLine02,.neosurfLine03,.neosurfLine04,.neosurfLine05{font-size:16px}.neosurfLine06{font-size:10px}.neosurfLine07,.neosurfLine08,.neosurfLine09,.neosurfLine10{font-size:16px}.neosurfLine11{font-size:10px}.neosurfLine12{display:flex;justify-content:center;align-items:center}.neosurfLine12 img{width:250px}.neosurfLine13{font-size:10px}.neosurfLine14{font-size:16px}.neosurfLine15{font-size:10px}.neosurfLine16{font-size:16px}.neosurfLine17{font-size:10px}.neosurfLine18,.neosurfLine19,.neosurfLine20,.neosurfLine21,.neosurfLine22{font-size:16px}.neosurfLine23{font-size:10px}.neosurfLine24,.neosurfLine25,.neosurfLine26,.neosurfLine27,.neosurfLine28,.neosurfLine29,.neosurfLine30,.neosurfLine31,.neosurfLine32,.neosurfLine33{font-size:16px}.neosurfLine34{font-size:10px}.neosurfLine35{font-size:30px}.neosurfLine36{font-size:10px}.neosurfLine37,.neosurfLine38,.neosurfLine39{font-size:16px}.neosurfLine40{font-size:10px}.neosurfLine41,.neosurfLine42{font-size:16px}.neosurfLine43{font-size:10px}.neosurfLine44,.neosurfLine45{font-size:16px}.neosurfLine46{font-size:10px}.neosurfLine47,.neosurfLine48,.neosurfLine49{font-size:16px}.neosurfLine50{font-size:10px}.neosurfLine51,.neosurfLine52,.neosurfLine53,.neosurfLine54,.neosurfLine55{font-size:16px}.neosurfLine56{font-size:10px}.neosurfLine57{font-size:16px}.neosurfLine58{font-size:16px;color:#fff}.neosurfLine59,.neosurfLine60{font-size:16px}.transcash_ticket_preview{width:355px;background-color:#fff;text-align:center}.transcashLine01,.transcashLine02,.transcashLine03,.transcashLine04,.transcashLine05,.transcashLine06,.transcashLine07,.transcashLine08,.transcashLine09,.transcashLine10,.transcashLine11,.transcashLine12,.transcashLine13,.transcashLine14,.transcashLine15,.transcashLine16,.transcashLine17,.transcashLine18,.transcashLine19,.transcashLine20,.transcashLine21,.transcashLine22,.transcashLine23,.transcashLine24,.transcashLine25,.transcashLine26,.transcashLine27,.transcashLine28,.transcashLine29,.transcashLine30,.transcashLine31,.transcashLine32,.transcashLine33,.transcashLine34,.transcashLine35,.transcashLine36,.transcashLine37,.transcashLine38,.transcashLine39,.transcashLine40,.transcashLine41,.transcashLine42,.transcashLine43,.transcashLine44,.transcashLine45,.transcashLine46,.transcashLine47,.transcashLine48,.transcashLine49,.transcashLine50,.transcashLine51,.transcashLine52,.transcashLine53,.transcashLine54,.transcashLine55,.transcashLine56,.transcashLine57,.transcashLine58,.transcashLine59,.transcashLine60,.transcashLine61,.transcashLine62,.transcashLine63,.transcashLine64,.transcashLine65,.transcashLine66,.transcashLine67,.transcashLine68,.transcashLine69,.transcashLine70,.transcashLine71,.transcashLine72,.transcashLine73,.transcashLine74,.transcashLine75,.transcashLine76,.transcashLine77,.transcashLine78,.transcashLine79,.transcashLine80,.transcashLine81{font-size:15px}.pcs_ticket_preview,.neosurf_ticket_preview,.transcash_ticket_preview{font-family:ArialCustom,sans-serif}.pcs_ticket_preview .pcsLine12 img,.neosurf_ticket_preview .neosurfLine12 img{display:block;margin:0 auto}
