*{box-sizing:border-box;margin:0;padding:0}:root{--accent-color:#206dff;--accent-secondary:#8b3dff;--bg:#f0f4ff;--bg-card:#fff;--text-heading:#0c0c0e;--text-body:#313131;--text-muted:#6b7280;--border:#e5e5e5;--font-heading:"Rubik", sans-serif;--font-body:"Open Sans", sans-serif}body{font-family:var(--font-body);background:var(--bg);color:var(--text-body);-webkit-font-smoothing:antialiased;min-height:100vh}.topbar{border-bottom:1px solid var(--border);z-index:10;background:#fff;justify-content:space-between;align-items:center;height:64px;padding:0 2rem;display:flex;position:sticky;top:0}.topbar-logo{align-items:center;gap:.75rem;display:flex}.topbar-logo img{width:auto;height:36px}.topbar-badge{font-size:.7rem;font-weight:700;font-family:var(--font-heading);color:#fff;background:linear-gradient(135deg, var(--accent-color), var(--accent-secondary));letter-spacing:.5px;text-transform:uppercase;border-radius:100px;padding:.2rem .6rem}.topbar-back{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s;display:flex}.topbar-back:hover{color:var(--accent-color)}.page{box-sizing:border-box;width:100%;max-width:1280px;margin:0 auto;padding:3rem 2rem 5rem}.page-header{margin-bottom:2.5rem}.page-header h1{font-family:var(--font-heading);color:var(--text-heading);margin-bottom:.4rem;font-size:1.75rem;font-weight:700}.page-header p{color:var(--text-muted);font-size:.95rem}.stats-row{flex-wrap:wrap;gap:1.25rem;margin-bottom:2.5rem;display:flex}.stat-card{border:1px solid var(--border);background:#fff;border-radius:14px;flex:1;min-width:140px;padding:1.25rem 1.75rem}.stat-value{font-family:var(--font-heading);background:linear-gradient(135deg, var(--accent-color), var(--accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.35rem;font-size:2rem;font-weight:700;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem;font-size:.85rem;font-weight:600}.toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.search-wrap{flex:1;min-width:260px;max-width:450px;position:relative}.search-wrap svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}#search-input,#submissions-search{border:1px solid var(--border);width:100%;font-family:var(--font-body);color:var(--text-body);box-sizing:border-box;background:#fff;border-radius:10px;outline:none;padding:.65rem 1rem .65rem 2.5rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}#search-input:focus,#submissions-search:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #206dff1f}.results-count{color:var(--text-muted);white-space:nowrap;font-size:.875rem}.vc-list{flex-direction:column;gap:.75rem;display:flex}.vc-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;transition:box-shadow .2s,transform .2s;display:flex}.vc-card:hover{transform:translateY(-1px);box-shadow:0 6px 24px #00000012}.avatar-container{border:1px solid var(--border);background:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;padding:6px;display:flex;overflow:hidden;box-shadow:0 2px 10px #0000000d}.avatar-logo{object-fit:contain;max-width:100%;max-height:100%}.vc-info{flex:1;min-width:0}.vc-name{font-family:var(--font-heading);color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.15rem;font-size:1rem;font-weight:600;overflow:hidden}.vc-company{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.vc-url{color:var(--accent-color);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:220px;font-size:.8rem;overflow:hidden}.vc-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.btn-copy{font-family:var(--font-body);color:var(--accent-color);cursor:pointer;white-space:nowrap;background:#206dff14;border:1px solid #206dff33;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.btn-copy:hover{border-color:var(--accent-color);background:#206dff26}.btn-copy.copied{color:#22c55e;background:#22c55e14;border-color:#22c55e40}.btn-wa{font-family:var(--font-body);color:#15803d;cursor:pointer;white-space:nowrap;background:#22c55e1a;border:1px solid #22c55e40;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.btn-wa:hover{color:#fff;background:#22c55e;border-color:#22c55e}.btn-view{width:36px;height:36px;color:var(--accent-secondary);background:#8b3dff12;border:1px solid #8b3dff26;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:flex}.btn-view:hover{border-color:var(--accent-secondary);background:#8b3dff26}.empty-state{text-align:center;color:var(--text-muted);padding:4rem 2rem;display:none}.empty-state svg{opacity:.4;margin-bottom:1rem}.empty-state p{font-size:.95rem}.btn-qr{font-family:var(--font-body);color:#7c3aed;cursor:pointer;white-space:nowrap;background:#7c3aed14;border:1px solid #7c3aed33;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.btn-qr:hover{background:#7c3aed26;border-color:#7c3aed}.toolbar-actions{align-items:center;gap:.75rem;display:flex}.btn-export{font-family:var(--font-body);color:var(--accent-color);border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:.4rem;padding:.6rem 1.1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 6px #00000008}.btn-export:hover{border-color:var(--accent-color);background:#206dff14}#sort-select{border:1px solid var(--border);font-family:var(--font-body);color:var(--text-body);cursor:pointer;background:#fff;border-radius:10px;outline:none;padding:.6rem .9rem;font-size:.85rem;font-weight:600;transition:border-color .2s;box-shadow:0 2px 6px #00000008}#sort-select:focus{border-color:var(--accent-color)}.vc-date{color:#64748b;align-items:center;gap:5px;margin-top:4px;font-size:.76rem;font-weight:500;display:inline-flex}.vc-date svg{opacity:.7;flex-shrink:0}.dashboard-tabs{border-bottom:2px solid var(--border);gap:.75rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.tab-btn{font-family:var(--font-heading);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:6px 6px 0 0;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.tab-btn:hover{color:var(--accent-color);background:#206dff0a}.tab-btn.active{color:var(--accent-color);border-bottom-color:var(--accent-color);background:#fff}.tab-badge{color:#475569;background:#e2e8f0;border-radius:100px;padding:.15rem .5rem;font-size:.75rem}.tab-badge.warning{color:#fff;background:#ef4444}.submissions-grid{flex-direction:column;gap:1rem;display:flex}.sub-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex;box-shadow:0 4px 12px #00000008}.sub-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.sub-name{color:var(--text-heading);font-size:1.15rem;font-weight:700;font-family:var(--font-heading)}.sub-company{color:var(--text-muted);font-size:.9rem}.sub-badge{color:#166534;background:#dcfce7;border-radius:100px;padding:.25rem .6rem;font-size:.75rem;font-weight:700}.sub-details-grid{background:#f8fafc;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;padding:1rem;font-size:.85rem;display:grid}.sub-detail-item strong{color:#475569;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.2rem;font-size:.75rem;display:block}.sub-actions{flex-wrap:wrap;gap:.75rem;display:flex}.btn-receipt{color:#fff;cursor:pointer;background:#0284c7;border:none;border-radius:8px;align-items:center;gap:.35rem;padding:.45rem .85rem;font-size:.82rem;font-weight:600;display:flex}.btn-receipt:hover{background:#0369a1}.view-toggle-wrap{background:#e2e8f0;border-radius:8px;gap:2px;padding:3px;display:flex}.btn-view-toggle{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s}.btn-view-toggle.active{color:var(--accent-color);background:#fff;box-shadow:0 1px 3px #0000001a}.table-wrapper{border:1px solid var(--border);box-sizing:border-box;background:#fff;border-radius:12px;width:100%;max-width:100%;margin-top:1rem;overflow-x:auto;box-shadow:0 4px 12px #00000008}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:#0284c7}.submissions-table{border-collapse:collapse;text-align:left;width:max-content;min-width:100%;font-size:.83rem}.submissions-table th{color:#475569;border-bottom:2px solid var(--border);white-space:nowrap;font-weight:700;font-family:var(--font-heading);background:#f8fafc;padding:.85rem 1rem}.submissions-table td{vertical-align:top;color:var(--text-body);word-wrap:break-word;border-bottom:1px solid #f1f5f9;max-width:240px;padding:.85rem 1rem}.submissions-table tr:hover{background:#f8fafc}.modal-overlay{z-index:10000;background:#000000b3;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:16px;width:100%;max-width:650px;max-height:90vh;padding:1.5rem;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.btn-close-modal{cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;width:32px;height:32px;font-size:1rem}@media (width<=640px){.vc-url{display:none}.vc-card{flex-wrap:wrap;gap:1rem}.stats-row{gap:.75rem}.stat-card{padding:1rem 1.25rem}.btn-qr span,.btn-wa span{display:none}.toolbar-actions{justify-content:space-between;width:100%}}
