/* The approved Mobile Phone card system, shared by the product family. */
.ps-frames{display:grid}.ps-frame{grid-area:1/1;visibility:hidden;pointer-events:none;min-width:0}.ps-frame.is-current{visibility:visible;pointer-events:auto}.ps-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}.ps-pair>*{min-width:0}.ps-scene-label{font-size:13px;color:var(--ui-meta);margin-bottom:24px}.ps-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--ui-divider);font-size:14px;line-height:1.5}.ps-row>span{color:var(--ui-text)}.ps-row strong{text-align:right;font-weight:500}.ps-status{display:flex;align-items:flex-start;gap:12px;border:1px solid #cde5d6;background:var(--ui-success-subtle);color:var(--ui-success);padding:16px;border-radius:8px;margin-top:24px}.ps-status strong{font-size:14px;font-weight:500;line-height:1.5;display:block}.ps-status p{font-size:14px;line-height:1.6;margin-top:4px;color:var(--ui-text)}.ps-status.neutral{background:var(--ui-surface);border-color:var(--ui-border);color:var(--ui-text)}.ps-status.warning{background:var(--ui-warning-soft);border-color:#eddfbf;color:var(--ui-warning)}.ps-copy{font-size:14px;line-height:1.65;color:var(--ui-text);margin:16px 0}.ps-progress{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:12px;font-size:14px;color:var(--ui-meta)}.ps-progress li{display:flex;align-items:center;gap:12px}.ps-progress li>span{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--ui-border);border-radius:50%;font-size:12px;background:white;flex-shrink:0}.ps-progress li.active{color:var(--ui-ink)}.ps-progress li.active>span{color:var(--ui-success);background:var(--ui-success-subtle);border-color:#cde5d6}.ps-methods{display:grid;gap:12px;margin-bottom:24px}.ps-methods>div{padding:16px;border:1px solid var(--ui-border);border-radius:8px;display:flex;justify-content:space-between;gap:12px;font-size:14px;background:white}.ps-methods>div.active{background:var(--ui-demo-blue);border-color:#a6c9f7}.ps-methods b{color:var(--ui-link);font-weight:500}.ps-country{padding:0 0 24px}.ps-country>span{display:inline-block;font:500 14px var(--ui-mono);background:var(--ui-demo-blue);color:var(--ui-link);padding:8px 12px;border-radius:8px;margin-bottom:16px}.ps-upload{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--ui-border);border-radius:8px;margin-top:16px;background:#fcfdff}.ps-upload svg{width:24px;height:24px;flex-shrink:0;color:var(--ui-link)}.ps-upload>div{flex:1;min-width:0}.ps-upload strong{display:block;font-size:14px;font-weight:500;line-height:1.5}.ps-upload span{display:block;font-size:13px;line-height:1.6;color:var(--ui-text);margin-top:4px;overflow-wrap:anywhere}.ps-upload b{font-weight:500;color:var(--ui-success)}.ps-code{font:400 12px/1.75 var(--ui-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0 0;padding:16px;border:1px solid var(--ui-border);border-radius:8px;background:#f7faff;color:var(--ui-ink);tab-size:2}.ps-code-label{font-size:13px;color:var(--ui-meta);margin-top:16px}.ps-endpoint{display:flex;gap:12px;align-items:baseline;margin-bottom:16px;font-size:13px;overflow-wrap:anywhere}.ps-endpoint b{font:500 12px var(--ui-mono);color:var(--ui-success)}.ps-endpoint code{min-width:0}.ps-log>div{display:flex;align-items:center;gap:16px;padding:16px 12px;border-bottom:1px solid var(--ui-divider);font-size:14px}.ps-log>div.active{background:var(--ui-demo-blue);border-radius:8px}.ps-log code{font-size:13px;color:var(--ui-link)}.product-family #example-2 .hv-demo{background:#eef3fb}.product-family #example-3 .hv-demo{background:var(--ui-success-subtle)}.product-family .phone-bottom a{overflow-wrap:anywhere}.product-family .phone-footer-brand .hv-brand{white-space:nowrap}.product-family .ps-auto .pa-panel-body h3{margin-bottom:8px}.product-family .phone-bottom .ps-docs{font-size:14px;margin-top:24px}.product-family .ec-card{padding:8px!important;border-radius:24px!important;box-shadow:var(--ui-shadow-card)!important;transition:none!important}.product-family .ec-card-details{padding:24px!important}.product-family .ec-detail-title{font-size:16px!important;font-weight:600!important}.product-family .ec-detail-copy{font-size:16px!important;line-height:1.65!important}.product-family .ec-card:hover{transform:none!important}.product-family .ec-card>div:first-child{border-radius:16px}.product-family .phone-hero-proof .bc-logo-set img{filter:none;opacity:1}
@media(max-width:780px){.ps-pair{grid-template-columns:1fr;gap:16px}.ps-scene-label{margin-bottom:16px}.ps-status,.ps-upload,.ps-methods>div{padding:12px}.ps-row{gap:12px}.ps-code{padding:12px}.product-family .ec-card-details{padding:24px 16px!important}.ps-endpoint{flex-wrap:wrap}}
.ec-family .ec-page{min-width:0!important}.ec-family h1{letter-spacing:-.03em!important;line-height:1.12!important}.ec-family h2{letter-spacing:-.025em!important}.ec-family .ec-card-details{display:flex;flex-direction:column;gap:24px}.ec-family .ec-detail+.ec-detail{border-top:1px solid var(--ui-divider);padding-top:24px}.ec-family .ec-logo-group img{filter:none!important;opacity:1!important}.ec-family .ec-closing{border-radius:16px!important}.ec-family .ec-demo-note{font-size:12px}.ec-family .ec-container{max-width:900px!important}.ec-family .ec-visual{padding:24px!important}
@media(max-width:780px){.ec-family .ec-visual{padding:16px!important}.ec-family .ec-stage{grid-template-columns:24px minmax(0,1fr)!important;gap:12px!important}.ec-family h1{font-size:36px!important}.ec-family h2{font-size:24px!important}}
@media(prefers-reduced-motion:reduce){.ps-frame{transition:none;animation:none}}
.photo-visual{border:1px solid #dbe6f4;border-radius:14px;background:#f7faff;overflow:hidden;margin:-4px 0 20px;box-shadow:0 8px 24px rgba(25,66,116,.08)}
.photo-visual-bar{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-bottom:1px solid #e1eaf5;color:#657893;font-size:11px}.photo-visual-bar b{font:500 10px var(--ui-mono);color:#2672dc}
.photo-visual-stage{position:relative;height:154px;background:#10233f;display:grid;place-items:center;overflow:hidden}.photo-visual-stage:before{content:"";position:absolute;inset:20px 42px;border:1px solid rgba(255,255,255,.65);border-radius:8px}.photo-scan-corners{position:absolute;inset:30px 54px;border:1px dashed rgba(160,202,255,.7);border-radius:6px}.photo-id-card{position:relative;width:144px;height:88px;border-radius:7px;background:linear-gradient(145deg,#fff,#eaf2ff);box-shadow:0 10px 18px rgba(0,0,0,.3);transform:rotate(-5deg);padding:11px;box-sizing:border-box}.photo-id-card i{display:block;width:18px;height:14px;border-radius:3px;background:#cfe3ff;margin-bottom:9px}.photo-id-card span{display:block;width:64px;height:4px;border-radius:3px;background:#b4c6db;box-shadow:0 9px #cad6e4,0 18px #dbe4ee}.photo-id-card em{position:absolute;right:10px;bottom:9px;width:22px;height:22px;border-radius:50%;background:#dceaff}.photo-visual-caption{position:absolute;bottom:10px;left:0;right:0;text-align:center;color:#dceaff;font-size:10px}.photo-visual-foot{display:flex;gap:7px;align-items:center;padding:10px 14px;color:#6d7f98;font-size:11px}.photo-dot{width:7px;height:7px;border-radius:50%;background:#d4deea}.photo-dot.active{background:#2776e7;box-shadow:0 0 0 3px #dceaff}
.photo-quality-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px}.photo-quality-card{position:relative;display:grid;place-items:center;height:122px;border-radius:9px;background:#10233f;overflow:hidden}.photo-quality-card .photo-id-card{width:124px;height:76px}.photo-glare{position:absolute;inset:0;background:linear-gradient(112deg,transparent 35%,rgba(255,255,255,.38) 48%,transparent 60%);animation:photo-glare 3.8s ease-in-out infinite}.photo-quality-checks{display:grid;align-content:center;gap:9px}.photo-quality-checks div{display:grid;grid-template-columns:20px 1fr auto;gap:7px;align-items:center;font-size:11px;color:#5f718b}.photo-quality-checks i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#d8f7e9;color:#15955b;font-style:normal;font-size:10px}.photo-quality-checks div:last-child i{background:#fff0d5;color:#a87714}.photo-quality-checks b{font-size:10px;color:#1a9a60;font-weight:600}.photo-quality-checks div:last-child b{color:#a87714}
.photo-lifecycle-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:6px;padding:20px 14px 14px;color:#60728d;text-align:center;font-size:10px}.photo-lifecycle-flow div{display:grid;justify-items:center;gap:7px}.photo-lifecycle-flow i{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e5efff;color:#2776e7;font-style:normal;font:500 11px var(--ui-mono)}.photo-lifecycle-flow .current i{background:#d8f7e9;color:#15955b}.photo-lifecycle-flow>b{color:#afc1d8;font-size:15px}.photo-lifecycle-result{margin:0 14px 14px;padding:11px 12px;border-radius:8px;background:#effaf4;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;color:#15955b;font-size:11px}.photo-lifecycle-result strong{color:#173052;font-size:12px}.photo-lifecycle-result small{color:#5f718b;font-size:10px}
@keyframes photo-glare{0%,35%{transform:translateX(-35%);opacity:.2}55%,75%{transform:translateX(35%);opacity:.75}100%{transform:translateX(45%);opacity:.15}}
.photo-scan-line{position:absolute;z-index:2;left:54px;right:54px;height:1px;background:#61a0ff;box-shadow:0 0 10px #61a0ff;animation:photo-scan 3.2s ease-in-out infinite}.photo-privacy{margin-left:auto;color:#7e91aa;font-size:10px}.photo-quality-badge{position:absolute;bottom:8px;left:8px;padding:4px 7px;border-radius:5px;background:rgba(8,26,52,.78);color:#dceaff;font:500 9px var(--ui-mono)}
@keyframes photo-scan{0%,15%{top:31px;opacity:0}25%{opacity:1}75%{opacity:1}90%,100%{top:124px;opacity:0}}
@media(max-width:780px){.photo-quality-grid{grid-template-columns:1fr}.photo-lifecycle-flow{gap:3px;padding-left:8px;padding-right:8px}}
/* Photo ID demos: a calmer, shorter card treatment aligned with the phone flow. */
body[data-product-page="photo"] .phone-demo-card{padding:18px}
body[data-product-page="photo"] .ps-pair{gap:16px}
body[data-product-page="photo"] .pa-panel-body{padding:18px}
body[data-product-page="photo"] .pa-panel-body h3{font-size:20px}
body[data-product-page="photo"] .ps-row{padding:10px 0;font-size:13px}
body[data-product-page="photo"] .ps-copy{font-size:13px;line-height:1.5;margin:10px 0}
body[data-product-page="photo"] .ps-status{padding:12px;margin-top:14px}
body[data-product-page="photo"] .ps-status p{font-size:13px;line-height:1.45}
body[data-product-page="photo"] .ps-progress{gap:9px;margin-bottom:16px;font-size:13px}
body[data-product-page="photo"] .ps-upload{padding:12px;margin-top:10px}
body[data-product-page="photo"] .photo-visual{margin:-18px -18px 16px;border-left:0;border-right:0;border-top:0;border-radius:0 0 12px 12px;box-shadow:none}
body[data-product-page="photo"] .photo-visual-stage{height:128px}
body[data-product-page="photo"] .photo-quality-card{height:102px}
body[data-product-page="photo"] .photo-lifecycle-flow{padding-top:14px}
body[data-product-page="photo"] .ps-scene-label{display:none}
body[data-product-page="photo"] [data-product-scene="photoCapture"] .ps-pair>.pa-panel:first-child .pa-panel-body>h3,
body[data-product-page="photo"] [data-product-scene="photoCapture"] .ps-pair>.pa-panel:first-child .pa-panel-body>.ps-copy{display:none}
body[data-product-page="photo"] [data-product-scene="photoCapture"] .ps-pair>.pa-panel:nth-child(2) .ps-row:first-of-type{display:none}
body[data-product-page="photo"] [data-product-scene="photoQuality"] .ps-pair>.pa-panel:first-child .ps-upload{display:none}
body[data-product-page="photo"] [data-product-scene="photoQuality"] .ps-pair>.pa-panel:first-child .ps-copy{margin-top:4px}
body[data-product-page="photo"] [data-product-scene="photoLifecycle"] .ps-pair>.pa-panel:first-child .ps-status{margin-top:10px}
body[data-product-page="photo"] [data-product-page="photo"] .phone-benefits{margin-top:16px}
@media(max-width:780px){body[data-product-page="photo"] .phone-demo-card{padding:12px}body[data-product-page="photo"] .photo-visual{margin:-12px -12px 14px}.photo-privacy{display:none}}
.photo-compact{background:#fff;border:1px solid #d8e4f3;border-radius:12px;overflow:hidden;box-shadow:0 8px 20px -14px #163e7830}.photo-compact-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--ui-divider);font-size:13px;color:var(--ui-ink)}.photo-compact-head b{font:400 11px var(--ui-mono);color:var(--ui-meta)}.photo-compact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;background:#edf5ff}.photo-compact-panel{background:#fff;border:1px solid #d8e4f3;border-radius:10px;overflow:hidden}.photo-compact-title{display:flex;justify-content:space-between;gap:8px;padding:11px 12px;border-bottom:1px solid var(--ui-divider);font-size:12px}.photo-compact-title span{font:400 10px var(--ui-mono);color:var(--ui-meta)}.photo-camera{height:132px;margin:12px;border-radius:8px;background:#122a4a;display:grid;place-items:center;position:relative;overflow:hidden}.photo-camera:before{content:"";position:absolute;inset:17px;border:1px dashed #8bbaf5;border-radius:6px}.photo-id-art{position:relative;z-index:1;width:118px;height:74px;border-radius:7px;background:linear-gradient(145deg,#fff,#e8f2ff);transform:rotate(-6deg);box-shadow:0 8px 14px #0005;padding:10px}.photo-id-art i{display:block;width:17px;height:12px;border-radius:3px;background:#cfe3ff;margin-bottom:9px}.photo-id-art span{display:block;width:57px;height:4px;background:#afc1d5;border-radius:4px;box-shadow:0 8px #c8d5e3,0 16px #d9e2ed}.photo-id-art em{position:absolute;right:9px;bottom:8px;width:21px;height:21px;border-radius:50%;background:#dceaff}.photo-camera-scan{position:absolute;left:17px;right:17px;top:50%;height:1px;background:#61a0ff;box-shadow:0 0 9px #61a0ff;animation:photo-scan 3.2s ease-in-out infinite}.photo-face-art{width:53px;height:66px;border-radius:28px 28px 10px 10px;background:linear-gradient(160deg,#b9dbff,#6e9bd1);position:relative;z-index:1}.photo-face-art:before{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#e7c5ad;left:16px;top:11px}.photo-face-art:after{content:"";position:absolute;width:40px;height:20px;border-radius:22px 22px 8px 8px;background:#244c7d;left:7px;bottom:0}.photo-compact-meta{display:flex;justify-content:space-between;gap:8px;padding:0 12px 12px;color:var(--ui-meta);font-size:11px}.photo-compact-meta b{color:var(--ui-success);font-weight:600}.photo-compact-status{margin:0 16px 16px;padding:11px 12px;border-radius:8px;border:1px solid #cde5d6;background:var(--ui-success-subtle);display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;color:var(--ui-success)}.photo-compact-status strong{color:var(--ui-ink);font-size:12px}.photo-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px;background:#edf5ff}.photo-review-preview{position:relative;height:150px;border-radius:9px;background:#122a4a;display:grid;place-items:center;overflow:hidden}.photo-review-preview .photo-id-art{width:130px;height:80px}.photo-review-tag{position:absolute;bottom:8px;left:8px;padding:4px 6px;border-radius:4px;background:#122a4acc;color:#dceaff;font:400 9px var(--ui-mono)}.photo-review-copy h3{font-size:18px;line-height:1.2;margin:2px 0 16px;letter-spacing:-.025em}.photo-review-line{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--ui-text)}.photo-review-line i{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#d8f7e9;color:var(--ui-success);font-style:normal;font-size:11px}.photo-review-line i.warn{background:#fff0d5;color:#a87714}.photo-review-copy .photo-compact-status{margin:20px 0 0}.photo-lifecycle-compact{padding:18px 16px;background:#edf5ff}.photo-lifecycle-track{display:grid;grid-template-columns:24px 1fr 24px 1fr 24px;align-items:center;gap:8px}.photo-lifecycle-track span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#dceaff;color:var(--ui-link);font:500 10px var(--ui-mono)}.photo-lifecycle-track span.done{background:#d8f7e9;color:var(--ui-success)}.photo-lifecycle-track i{height:1px;background:#c3d6ec}.photo-lifecycle-labels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:8px;color:var(--ui-meta);font-size:10px;text-align:center}.photo-lifecycle-compact .photo-compact-status{margin:18px 0 0}.photo-compact-status small{color:var(--ui-meta);font-size:10px}
@media(max-width:780px){.photo-compact-grid,.photo-review-grid{grid-template-columns:1fr;gap:10px}.photo-review-preview{height:120px}.photo-compact-head{padding-inline:12px}.photo-lifecycle-labels{font-size:9px}}
