:root{--bg:#fff;--bg-strong:#a1abaf;--panel:#ffffffe0;--border:#062f6e29;--heading:#062f6e;--text:#101800;--muted:#4f5d66;--accent:#f5be0b;--accent-soft:#f5be0b80;--result-bg:#a1abaf29;--shadow:0 24px 60px #062f6e29;--sans:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--heading-font:"Segoe UI", "Trebuchet MS", Tahoma, Geneva, Verdana, sans-serif;--mono:"Consolas", "Courier New", monospace;font-family:var(--sans);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#fff 0% 62%,#062f6e 100%);font-weight:400;line-height:1.5}*{box-sizing:border-box}html{min-height:100%}body{min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;background:linear-gradient(#ffffff14,#fff0),repeating-linear-gradient(90deg,#062f6e0f 0 1px,#0000 1px 80px);position:fixed;inset:0}a{color:inherit}#root{z-index:1;width:min(1120px,100% - 32px);margin:0 auto;position:relative}h1,p{margin:0}h1{font-family:var(--heading-font);letter-spacing:-.04em;color:var(--heading);max-width:13ch;margin-bottom:0;font-size:clamp(2rem,4vw,3.6rem);line-height:1.02}@media (width<=900px){#root{width:min(100%,100% - 20px)}h1{max-width:none}}.datos-page{box-sizing:border-box;min-height:100vh;padding:48px 24px}.datos-panel{grid-template-columns:minmax(0,1.05fr) minmax(320px,520px);align-items:start;gap:32px;display:grid}.datos-copy{padding:24px 0}.brand-header{justify-content:flex-start;align-items:center;gap:16px;margin-bottom:18px;display:flex}.brand-logo{object-fit:contain;width:clamp(84px,12vw,144px);height:auto;display:block}.eyebrow{text-transform:uppercase;letter-spacing:.3em;color:var(--accent);margin:0 0 16px;font-size:.78rem}.lead{max-width:56ch;color:var(--muted);font-size:1.05rem}.scanner-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:28px;padding:24px}.form-section+.form-section{margin-top:22px}.section-heading{gap:6px;margin-bottom:16px;display:grid}.section-step{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-size:.8rem;font-weight:700}.section-heading h2{color:var(--heading);margin:0;font-size:1.35rem}.combo-grid{gap:14px;display:grid}.field-group{gap:8px;display:grid}.field-label{text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-size:.84rem}.field-control{width:100%;min-height:52px;color:var(--text);font:inherit;background:#fffffff5;border:1px solid #062f6e29;border-radius:16px;outline:none;padding:0 16px;transition:border-color .18s,box-shadow .18s,background-color .18s}.field-control:focus{border-color:#062f6e73;box-shadow:0 0 0 4px #062f6e14}.field-control:disabled{color:#101800a6;cursor:not-allowed;background:#a1abaf2e}.primary-button{color:#fff;width:100%;min-height:50px;font:inherit;letter-spacing:.02em;cursor:pointer;background:#062f6e;border:none;border-radius:16px;margin-top:18px;font-weight:700;transition:transform .18s,box-shadow .18s,background-color .18s,opacity .18s}.primary-button:hover:enabled{transform:translateY(-1px);box-shadow:0 16px 28px #062f6e38}.primary-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.qr-section{transition:opacity .18s,filter .18s}.qr-section-disabled{opacity:.58}.upload-box{border:1.5px dashed var(--accent-soft);cursor:pointer;background:linear-gradient(135deg,#fffffff5,#a1abaf38);border-radius:20px;gap:8px;padding:24px;transition:transform .18s,border-color .18s,box-shadow .18s,opacity .18s;display:grid}.upload-box:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 12px 24px #062f6e29}.upload-box-disabled{cursor:not-allowed;background:#a1abaf24;border-color:#a1abaf80}.upload-box-disabled:hover{box-shadow:none;border-color:#a1abaf80;transform:none}.upload-box input{display:none}.upload-title,.result-label,.status-label{text-transform:uppercase;letter-spacing:.16em;font-size:.84rem}.upload-title{color:var(--heading);font-weight:700}.upload-description{color:var(--muted)}.status-banner,.result-card,.preview-card{margin-top:18px}.status-banner,.result-card{border-radius:20px;padding:18px 20px}.status-banner{border:1px solid #0000;gap:10px;display:grid}.status-idle{background:#ffffffeb;border-color:#062f6e1f}.status-loading,.status-submitting,.status-processing{background:#f5be0b38;border-color:#f5be0b80}.status-success{background:#1018001f;border-color:#1018004d}.status-error{background:#062f6e1f;border-color:#062f6e4d}.status-banner.status-duplicate-ticket{color:#fff;background:#faa18f;border-color:#d16f5c}.status-banner.status-duplicate-ticket .status-label,.status-banner.status-duplicate-ticket strong{color:#fff}.status-label,.result-label{color:var(--muted)}.status-banner strong{color:var(--heading);white-space:pre-wrap;word-break:break-word;font-size:1rem}.result-card{background:#fffffff5;border:1px solid #062f6e14;gap:12px;display:grid}.result-card-hidden{display:none}.result-value{background:var(--result-bg);min-height:72px;color:var(--heading);font-family:var(--mono);word-break:break-word;border-radius:16px;padding:16px;font-size:.95rem;line-height:1.6}.preview-card{background:#ffffffeb;border:1px solid #062f6e14;border-radius:20px;margin-inline:0;padding:16px}.preview-card img{object-fit:contain;background:#fff;border-radius:14px;width:100%;max-height:320px;display:block}.preview-card figcaption{color:var(--muted);text-align:center;margin-top:12px;font-size:.92rem}.submit-row{border-top:1px solid #062f6e14;margin-top:24px;padding-top:22px}.submit-button{color:#101800;background:#f5be0b}.submit-button:hover:enabled{box-shadow:0 16px 28px #f5be0b47}@media (width<=900px){.datos-page{padding:24px 16px 40px}.datos-panel{grid-template-columns:1fr;gap:20px}.datos-copy{padding:0}.brand-header{align-items:flex-start;gap:12px}.scanner-card{border-radius:22px;padding:18px}.upload-box{padding:20px}}
