body{color:#e0e0e0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0a0a;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}#root{min-height:100vh}::selection{color:#fff;background:#e94560}@font-face{font-family:OCRA;src:url(/fonts/OCRAExtended.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}.card-container{perspective:1000px;width:380px;height:240px}.card{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.card.show-back{transform:rotateY(180deg)}.card-front,.card-back{backface-visibility:hidden;border-radius:14px;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.card-front{z-index:2}.card-back{z-index:1;transform:rotateY(180deg)}.card-bg-pattern{pointer-events:none;background:radial-gradient(at 80% 20%,#ffffff0f 0%,#0000 50%),radial-gradient(at 20% 80%,#ffffff0a 0%,#0000 50%);position:absolute;inset:0}.card-front-content{box-sizing:border-box;z-index:1;flex-direction:column;justify-content:space-between;height:100%;padding:20px 22px;display:flex;position:relative}.card-top-row{justify-content:space-between;align-items:flex-start;display:flex}.card-branding{align-items:center;display:flex}.card-bank-logo{object-fit:contain;filter:drop-shadow(0 1px 2px #00000026);max-width:100px;max-height:32px}.card-bank-name{letter-spacing:.5px;opacity:.9;font-family:Segoe UI,Arial,sans-serif;font-size:13px;font-weight:600}.card-custom-logo{object-fit:contain;max-width:80px;max-height:32px}.card-network{align-items:center;display:flex}.card-middle-row{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.card-middle-left{align-items:center;display:flex}.card-nfc-wrapper{opacity:.8;justify-content:flex-end;align-items:center;display:flex}.card-number{letter-spacing:2.5px;text-shadow:0 1px 3px #00000040;margin-top:4px;font-size:23px}.card-bottom-row{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.card-field{flex-direction:column;gap:1px;display:flex}.card-field-holder{flex:1}.card-field-expiry{text-align:right;min-width:80px}.card-field-label{text-transform:uppercase;letter-spacing:1.8px;opacity:.55;font-family:Arial,sans-serif;font-size:7.5px}.card-field-value{letter-spacing:1.2px;font-size:14px}.card-magnetic-stripe{background:linear-gradient(#000000d9 0%,#1e1e1ee6 40%,#000000d9 100%);width:100%;height:44px;margin-top:22px}.card-back-content{color:#ddd;padding:14px 22px;font-size:11px}.card-signature-strip{box-sizing:border-box;background:repeating-linear-gradient(90deg,#f0ede8 0 3px,#e5e0d5 3px 6px);border-radius:3px;justify-content:flex-end;align-items:center;width:100%;height:36px;padding-right:14px;display:flex}.card-cvv{color:#333;letter-spacing:2px;font-size:14px;font-style:italic}.card-back-info{text-align:center;opacity:.6;margin-top:10px;font-size:9px;line-height:1.3}.controls{color:#e0e0e0;box-sizing:border-box;background:#121212;border-right:1px solid #2a2a2a;width:320px;min-width:320px;height:100vh;padding:20px;overflow-y:auto}.controls::-webkit-scrollbar{width:6px}.controls::-webkit-scrollbar-track{background:#1a1a1a}.controls::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.controls-title{color:#fff;margin:0 0 2px;font-size:22px;font-weight:700}.controls-subtitle{color:#888;margin:0 0 20px;font-size:12px}.control-section{border-bottom:1px solid #2a2a2a;margin-bottom:20px;padding-bottom:16px}.section-title{color:#aaa;text-transform:uppercase;letter-spacing:1px;margin:0 0 10px;font-size:13px;font-weight:600}.control-label{color:#888;margin-top:8px;margin-bottom:4px;font-size:11px;display:block}.control-label:first-child{margin-top:0}.control-input{color:#e0e0e0;box-sizing:border-box;background:#1e1e1e;border:1px solid #333;border-radius:6px;outline:none;width:100%;padding:8px 10px;font-family:OCRB,Courier New,monospace;font-size:14px;transition:border-color .2s}.control-input:focus{border-color:#e94560}.control-row{gap:8px;display:flex}.control-field{flex:1}.control-color{cursor:pointer;background:0 0;border:1px solid #333;border-radius:6px;width:48px;height:36px;padding:2px}.control-file{color:#888;cursor:pointer;box-sizing:border-box;background:#1e1e1e;border:1px dashed #444;border-radius:6px;width:100%;padding:6px;font-size:11px}.bank-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.bank-btn{color:#ccc;cursor:pointer;text-align:center;background:#1e1e1e;border:2px solid #0000;border-radius:6px;padding:8px 4px;font-size:11px;font-weight:600;transition:all .2s}.bank-btn:hover{background:#2a2a2a}.bank-btn.active{border-color:var(--bank-color,#e94560);background:var(--bank-color,#e94560);color:var(--bank-text,#fff)}.network-row{gap:8px;display:flex}.network-btn{color:#ccc;cursor:pointer;background:#1e1e1e;border:1px solid #333;border-radius:6px;flex:1;padding:10px;font-size:12px;transition:all .2s}.network-btn.active{color:#fff;background:#2a1a20;border-color:#e94560}.surface-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.surface-btn{color:#aaa;cursor:pointer;background:#1e1e1e;border:2px solid #0000;border-radius:6px;flex-direction:column;align-items:center;gap:4px;padding:8px;font-size:10px;transition:all .2s;display:flex}.surface-btn:hover{background:#2a2a2a}.surface-btn.active{border-color:#e94560}.surface-preview{border-radius:4px;width:100%;height:40px}.surface-name{color:#999;font-size:10px}.size-row{gap:6px;display:flex}.size-btn{color:#aaa;cursor:pointer;background:#1e1e1e;border:1px solid #333;border-radius:6px;flex:1;padding:8px;font-size:11px;transition:all .2s}.size-btn.active{color:#fff;background:#2a1a20;border-color:#e94560}.custom-bank-toggle{margin-top:8px}.toggle-custom{color:#888;cursor:pointer;background:#1e1e1e;border:1px dashed #444;border-radius:6px;width:100%;padding:8px;font-size:11px;transition:all .2s}.toggle-custom:hover{color:#aaa;border-color:#666}.toggle-custom.active{color:#e94560;border-color:#e94560}.custom-bank-fields{background:#1a1a1a;border-radius:8px;margin-top:10px;padding:12px}.control-checkbox{color:#bbb;cursor:pointer;align-items:center;gap:8px;padding:6px 0;font-size:12px;display:flex}.control-checkbox input[type=checkbox]{accent-color:#e94560}.download-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#e94560,#c23152);border:none;border-radius:8px;width:100%;margin-top:8px;padding:12px;font-size:14px;font-weight:600;transition:opacity .2s}.download-btn:hover{opacity:.9}.preview-section{margin-top:12px}.preview-img{border:1px solid #333;border-radius:8px;width:100%}*{box-sizing:border-box;margin:0;padding:0}.app{background:#0a0a0a;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;display:flex}.preview-area{background:#0a0a0a;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex;position:relative}.preview-header{justify-content:center;align-items:center;gap:16px;width:100%;max-width:600px;margin-bottom:24px;display:flex}.preview-header h2{color:#666;text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:600}.preview-actions{gap:8px;display:flex}.flip-btn{color:#aaa;cursor:pointer;background:#1e1e1e;border:1px solid #333;border-radius:6px;padding:6px 14px;font-size:11px;transition:all .2s}.flip-btn:hover{color:#fff;border-color:#555}.flip-btn.active{color:#e94560;background:#2a1a20;border-color:#e94560}.canvas-wrapper{position:relative;overflow:hidden;box-shadow:0 4px 60px #00000080}.card-position{z-index:2;position:relative}.card-shadow{filter:blur(18px);transform-origin:50%;z-index:1;background:#00000040;border-radius:14px;width:380px;height:240px;margin-top:-110px;margin-left:-190px;position:absolute;top:50%;left:50%}.preview-hint{color:#555;text-align:center;margin-top:20px;font-size:12px}
