:root{color:#1f2933;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{background:linear-gradient(180deg,#fff5f5 0,#f7fafc 220px,#eef2f6);margin:0;min-height:100vh;overflow-x:hidden}.app-shell:before{background:linear-gradient(90deg,rgba(215,25,32,.08),transparent 28%,rgba(215,25,32,.05)),repeating-linear-gradient(135deg,rgba(215,25,32,.045) 0 1px,transparent 1px 18px);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:fixed;z-index:0}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;overflow-x:hidden;position:relative}.brand-header{background:#fffffff0;border-bottom:1px solid rgba(215,25,32,.16);box-shadow:0 12px 32px #0f172a14;position:sticky;top:0;z-index:20}.brand-header-inner{align-items:center;display:flex;gap:18px;justify-content:space-between;margin:0 auto;max-width:1480px;padding:12px 34px}.brand-lockup{align-items:center;display:flex;gap:14px;min-width:0}.brand-lockup>div{min-width:0}.brand-logo{background:#fff;border:1px solid rgba(215,25,32,.14);border-radius:8px;height:64px;object-fit:contain;padding:4px;width:150px}.brand-lockup p{color:#d71920;font-size:13px;font-weight:900;letter-spacing:0;margin:0 0 3px;text-transform:uppercase}.brand-lockup h1{color:#17212f;font-size:24px;line-height:1.15;margin:0;overflow-wrap:anywhere}.brand-ribbon{background:#d71920;border-radius:999px;color:#fff;font-size:13px;font-weight:900;padding:8px 14px;white-space:nowrap}.main-content{margin:0 auto;max-width:1480px;padding:34px;position:relative;width:100%;z-index:1}.page-grid{display:grid;gap:22px;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);min-width:0}.stacked-page{display:grid;gap:20px;min-width:0}.page-heading{margin-bottom:18px}.page-heading p{color:#d71920;font-size:13px;font-weight:700;letter-spacing:0;margin:0 0 6px;text-transform:uppercase}.page-heading h1{color:#17212f;font-size:32px;line-height:1.2;margin:0;text-shadow:0 1px 0 rgba(255,255,255,.7)}.panel{background:#ffffffeb;border:1px solid rgba(216,222,232,.92);border-radius:8px;box-shadow:0 20px 50px #0f172a1c;min-width:0;padding:22px;position:relative}.panel:before{background:#d71920;border-radius:8px 8px 0 0;content:"";height:4px;left:-1px;position:absolute;right:-1px;top:-1px}.registration-form,.filters{display:grid;gap:16px;min-width:0}.registration-form{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{align-items:end;grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:grid;gap:7px}.field span{color:#344054;font-size:14px;font-weight:700}.field input,.field select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#1f2933;min-height:44px;padding:10px 12px;width:100%}.field select option{background:#fff;color:#1f2933}.field input[type=file],.field input[hidden]{display:none}.field input:focus,.field select:focus{border-color:#d71920;box-shadow:0 0 0 3px #d7192024;outline:none}.field-error{color:#b42318;font-size:13px}.primary-button,.secondary-button{align-items:center;border-radius:8px;display:inline-flex;gap:8px;justify-content:center;min-height:44px;padding:10px 16px;text-align:center;white-space:nowrap}.primary-button{background:#d71920;border:1px solid #d71920;color:#fff;font-weight:800;box-shadow:0 10px 22px #d7192038}.secondary-button{background:#fff;border:1px solid #b8c3d3;color:#344054;font-weight:700}.primary-button:hover:not(:disabled){background:#bd1118;border-color:#bd1118}.secondary-button:hover:not(:disabled){border-color:#d71920;color:#b51218}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55}.registration-form .primary-button,.searchable-field,.upload-field{grid-column:span 2}.searchable-field{position:relative}.multi-select-control{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:inherit;display:flex;gap:8px;justify-content:flex-start;min-height:44px;padding:6px 8px;text-align:left;width:100%}.multi-select-control:focus{border-color:#d71920;box-shadow:0 0 0 3px #d7192024;outline:none}.selected-chip-row{align-items:center;display:flex;flex:1;flex-wrap:wrap;gap:6px;min-width:0}.multi-select-placeholder{color:#697586;padding-left:4px}.single-select-value{color:#1f2933;flex:1;font-weight:600;padding-left:4px}.single-select-menu{gap:2px}.selected-chip{align-items:center;background:#fff1f2;border:1px solid #f4a1a6;border-radius:999px;color:#b51218;display:inline-flex;font-size:13px;font-weight:800;gap:5px;max-width:100%;min-height:30px;padding:5px 8px}.multi-select-toggle{align-items:center;background:#fff;border:0;color:#475467;display:inline-flex;justify-content:center;min-height:32px;min-width:32px;padding:0}.multi-select-menu{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 16px 32px #0f172a29;display:grid;gap:8px;left:0;padding:10px;position:absolute;right:0;top:calc(100% + 6px);z-index:10}.multi-select-menu input{border:1px solid #cbd5e1;border-radius:8px;min-height:40px;padding:8px 10px;width:100%}.option-list{display:grid;gap:2px;max-height:180px;overflow:auto;padding:8px}.empty-options{color:#697586;margin:0;padding:10px;text-align:center}.check-option{align-items:center;background:transparent;border:0;border-radius:6px;color:inherit;cursor:pointer;display:flex;gap:8px;min-height:38px;padding:8px;text-align:left;width:100%}.check-option:hover{background:#fff1f2}.check-option input{height:16px;width:16px}.check-option span{color:#344054;font-size:14px;font-weight:600}.spot-card-preview{border:1px solid #d8dee8;border-radius:8px;max-height:220px;object-fit:contain;width:100%}.qr-result-panel,.success-state,.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:420px;text-align:center}.success-state svg{color:#d71920}.success-message{color:#b51218;font-weight:800}.qr-image{border:1px solid #d8dee8;border-radius:8px;box-shadow:0 12px 30px #0f172a1f;height:280px;object-fit:contain;width:280px}.muted,.empty-state p{color:#697586}.scanner-layout{display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(340px,.7fr)}.business-card-layout{display:grid;gap:20px;grid-template-columns:minmax(320px,1fr) minmax(320px,.85fr) minmax(280px,.75fr);min-width:0}.scanner-panel{display:grid;gap:16px}.scanner-video{aspect-ratio:16 / 9;background:#111827;border-radius:8px;object-fit:cover;width:100%}.scanner-actions,.button-row,.filter-actions{display:flex;flex-wrap:wrap;gap:10px}.upload-button input{display:none}.card-preview-image{border:1px solid #d8dee8;border-radius:8px;max-height:260px;object-fit:contain;width:100%}.card-preview-wrap{position:relative}.ocr-loader{align-items:center;background:#0f172ac7;border-radius:8px;color:#fff;display:flex;flex-direction:column;gap:10px;top:0;right:0;bottom:0;left:0;justify-content:center;padding:18px;position:absolute;text-align:center}.loader-ring{animation:spin .9s linear infinite;border:4px solid rgba(255,255,255,.25);border-radius:999px;border-top-color:#5eead4;height:42px;width:42px}.progress-track{background:#ffffff40;border-radius:999px;height:8px;max-width:260px;overflow:hidden;width:100%}.progress-fill{background:#5eead4;border-radius:inherit;height:100%;transition:width .35s ease}@keyframes spin{to{transform:rotate(360deg)}}.compact-heading{margin-bottom:12px}.compact-heading h2{font-size:22px;margin:0}.single-column-form{grid-template-columns:1fr}.single-column-form .primary-button,.single-column-form .searchable-field,.single-column-form .upload-field{grid-column:auto}.ocr-text{border:1px solid #d8dee8;border-radius:8px;padding:10px 12px}.ocr-text summary{color:#344054;cursor:pointer;font-weight:800}.ocr-text pre{color:#475467;font-size:13px;margin:10px 0 0;max-height:180px;overflow:auto;white-space:pre-wrap}.manual-lookup{align-items:end;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto auto}.notice{background:#fff8e6;border:1px solid #f4d587;border-radius:8px;color:#7a4d00;margin:0;padding:10px 12px}.detail-card{align-content:start;display:grid;gap:18px}.detail-card h2{font-size:26px;margin:0}.detail-list{display:grid;gap:14px;margin:0}.detail-list div{border-bottom:1px solid #edf1f5;padding-bottom:12px}.detail-list dt{color:#697586;font-size:13px;font-weight:700}.detail-list dd{margin:4px 0 0}.detail-summary-row{align-items:center;background:#fff1f2;border:1px solid #f4a1a6;border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;padding:14px}.detail-summary-row span{color:#697586;font-weight:800}.detail-summary-row strong{color:#d71920;font-size:26px}.dashboard-heading{align-items:center;display:flex;gap:16px;justify-content:space-between}.dashboard-kpi-grid{display:grid;gap:16px;grid-template-columns:repeat(5,minmax(150px,1fr))}.kpi-card{align-content:start;color:inherit;cursor:pointer;display:grid;gap:12px;justify-items:start;min-height:150px;text-align:left;width:100%}.kpi-card:hover,.kpi-card:focus{border-color:#d71920;box-shadow:0 18px 42px #d7192024;outline:none}.kpi-icon{align-items:center;background:#fff1f2;border:1px solid #f4a1a6;border-radius:8px;color:#d71920;display:inline-flex;height:42px;justify-content:center;width:42px}.kpi-card span{color:#697586;font-size:14px;font-weight:800}.kpi-card strong{color:#17212f;font-size:34px;line-height:1}.panel-title{font-size:18px;line-height:1.25;margin:0 0 16px}.activity-list{display:grid;gap:10px}.source-item,.activity-item{background:#f8fafc;border:1px solid #edf1f5;border-radius:8px;padding:12px}.source-item{align-items:center;color:inherit;cursor:pointer;display:flex;justify-content:space-between;min-height:78px;text-align:left;width:100%}.source-item:hover,.source-item:focus{background:#fff1f2;border-color:#d71920;outline:none}.source-item span,.activity-item span,.activity-item small{color:#697586}.source-item strong{color:#d71920;font-size:24px}.source-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.activity-item{display:grid;gap:4px}.activity-card-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.activity-card{align-items:center;background:#fffffff0;border:1px solid rgba(216,222,232,.92);border-radius:8px;box-shadow:0 14px 34px #0f172a14;color:#344054;display:grid;gap:8px;justify-items:start;min-height:118px;padding:18px;text-align:left;width:100%}.activity-card svg{color:#d71920}.activity-card span{color:#697586;font-size:14px;font-weight:800}.activity-card strong{color:#17212f;font-size:28px}.activity-card.active,.activity-card:hover,.activity-card:focus{border-color:#d71920;box-shadow:0 18px 42px #d7192024;outline:none}.activity-detail-panel{animation:fadeIn .18s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.report-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.report-tabs{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,220px));margin-bottom:16px}.report-tab{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#344054;font-weight:700;min-height:40px;padding:8px 12px}.report-tab.active{background:#fff1f2;border-color:#d71920;color:#b51218}.status-badge{border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;justify-self:start;padding:5px 10px}.status-badge.verified{background:#dcfce7;color:#166534}.status-badge.pending{background:#fef3c7;color:#92400e}.table-panel{padding:0}.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;min-width:760px;width:100%}th,td{border-bottom:1px solid #edf1f5;padding:13px 14px;text-align:left;vertical-align:middle}th{background:#f8fafc;color:#475467;font-size:13px}.empty-table{color:#697586;text-align:center}.badge-sheet{display:flex;justify-content:center;padding:30px}.print-only{display:none}.print-badge{align-items:center;background:#fff;border:0;display:flex;flex-direction:column;height:65mm;justify-content:flex-start;padding:4mm 1.5mm 1.5mm;text-align:center;text-transform:uppercase;width:100%}.print-badge h2{font-family:Arial,Helvetica,sans-serif;font-size:34pt;font-weight:1000;letter-spacing:0;line-height:.95;margin:0 0 4mm;max-width:100%;overflow-wrap:anywhere;width:100%}.print-badge p{font-family:Arial,Helvetica,sans-serif;font-size:25pt;font-weight:1000;letter-spacing:0;line-height:.98;margin:0 0 3.5mm;max-width:100%;overflow-wrap:anywhere;width:100%}.print-badge strong{font-family:Arial,Helvetica,sans-serif;font-size:22pt;font-weight:1000;letter-spacing:0;line-height:1;max-width:100%;overflow-wrap:anywhere;width:100%}@media(max-width:1040px){.page-grid,.scanner-layout,.business-card-layout,.filters{grid-template-columns:1fr}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-card-grid{grid-template-columns:1fr}.source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.app-shell:before{background:linear-gradient(90deg,rgba(215,25,32,.05),transparent 42%),repeating-linear-gradient(135deg,rgba(215,25,32,.035) 0 1px,transparent 1px 18px)}.main-content{padding:14px}body:before{background:none}.brand-header-inner{align-items:center;gap:10px;padding:10px 14px}.brand-logo{flex:0 0 auto;height:46px;width:96px}.brand-lockup{gap:10px;width:100%}.brand-lockup p{font-size:11px}.brand-lockup h1{font-size:17px}.brand-ribbon{display:none}.registration-form,.manual-lookup{grid-template-columns:1fr}.page-heading{margin-bottom:14px}.page-heading h1{font-size:25px}.compact-heading h2{font-size:20px}.panel{padding:16px}.scanner-actions,.button-row,.filter-actions,.report-tabs{display:grid;grid-template-columns:1fr}.primary-button,.secondary-button,.report-tab{justify-content:center;white-space:normal;width:100%}.dashboard-heading,.report-header{align-items:stretch;flex-direction:column}.dashboard-kpi-grid,.source-grid{grid-template-columns:1fr}.kpi-card,.activity-card{min-height:auto}.kpi-card strong{font-size:30px}.source-item{align-items:flex-start;gap:8px}.source-item span{overflow-wrap:anywhere}.registration-form .primary-button,.searchable-field,.upload-field{grid-column:auto}.qr-image{height:min(240px,calc(100vw - 88px));width:min(240px,calc(100vw - 88px))}.qr-result-panel,.success-state,.empty-state{min-height:300px}.manual-lookup{align-items:stretch}.scanner-video{min-height:220px}table{min-width:620px}th,td{padding:10px}}@media print{@page{margin:0}html,body{background:#fff;height:65mm;margin:0;overflow:hidden;width:100%}.no-print,.page-heading,.panel:not(.print-badge){display:none!important}.app-shell,.main-content,.stacked-page,.badge-sheet{display:block;padding:0}.print-only{display:flex}.badge-sheet{align-items:center;height:65mm;justify-content:flex-start;width:100%}.print-badge{background:transparent;border:0;box-shadow:none;height:65mm;margin:0;padding:4mm 1.5mm 1.5mm;page-break-after:avoid;width:100%}.print-badge h2{font-size:25pt;line-height:.95;margin-bottom:4mm}.print-badge p{font-size:25pt;line-height:.98;margin-bottom:3.5mm}.print-badge strong{font-size:20pt;line-height:1}}
