/* Shared application/account ID scanner presentation. No validation or evidence authority. */
.identity-scanner-preview{box-sizing:border-box;width:min(672px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;border:1px solid #dce6f1;border-radius:18px;background:#fff;color:#183051;font:14px/1.55 Inter,system-ui,sans-serif;box-shadow:0 24px 80px #10213d55;overflow:hidden}
.identity-scanner-preview[open]{display:flex;flex-direction:column}.identity-scanner-preview::backdrop{background:#11213d80;backdrop-filter:blur(5px)}
.identity-scanner-preview *{box-sizing:border-box}.identity-scanner-preview [hidden]{display:none!important}
.identity-scanner-preview header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e1e8f0;flex:0 0 auto}.identity-scanner-preview h3{font-size:16px;margin:0;font-weight:600}
.identity-scanner-preview header button{width:42px;height:42px;padding:0;border:1px solid #dce6f1;border-radius:50%;background:#fff;color:#486889;font:25px/1 system-ui;cursor:pointer}.identity-scanner-preview button:focus-visible{outline:3px solid #0a8bd5;outline-offset:3px}
.identity-scanner-preview-body{overflow:auto;padding:20px;min-height:0;scrollbar-color:#df1f783d transparent;scrollbar-width:thin}
.identity-scanner-preview-stage{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(180px,42vh,360px);padding:12px;background:linear-gradient(135deg,#f4f9ff,#fff7fb);border-radius:14px}
.identity-scanner-preview-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:min(440px,48dvh);object-fit:contain;transition:transform .45s ease,opacity .3s ease}
.identity-scanner-preview-stage>.identity-scanner-original{max-height:100%;max-width:100%;transition:opacity .3s ease}
.identity-scanner-source-outline{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.identity-scanner-source-outline path,.identity-scanner-card svg :is(path,rect){fill:none;stroke:#ec4899;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}
.identity-scanner-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:transform .45s ease;max-width:calc(100% - 24px)}
.identity-scanner-card.is-staging{transform:translate(-50%,calc(-50% + 12px)) scale(.94)}.identity-scanner-card.is-verified{transform:translate(-50%,-50%) scale(.98);transition-duration:.18s}
.identity-scanner-card img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}.identity-scanner-card svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.identity-scanner-card .identity-scanner-solid{opacity:0}.identity-scanner-card.is-solid .identity-scanner-solid{opacity:1}.identity-scanner-card.is-solid .identity-scanner-segments{opacity:0}
.identity-scanner-preview-badge{display:table;margin:12px auto 0;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:700;background:#fff0f4;color:#a51045;opacity:0;transition:opacity .18s ease}.identity-scanner-preview-badge.is-visible{opacity:1}.identity-scanner-preview-badge[data-state=ok]{background:#edfbf7;color:#087f68}
.identity-scanner-preview-status{font-size:12px;color:#61768c;margin:12px 0}.identity-scanner-preview .scan-preview-text{max-height:none;overflow:visible}.identity-scanner-preview .scan-terminal-message-success{margin:5px 0 10px}
.identity-scanner-preview.is-checking .identity-scanner-preview-stage::after{content:'';position:absolute;inset:0 0 auto;height:22%;background:linear-gradient(180deg,transparent,#5dddf373,#fff9);border-bottom:2px solid #fff;animation:identityThumbnailScan 2s ease-in-out infinite alternate}
.identity-scanner-symbol{font:44px/1 system-ui;color:#0879db}.identity-scanner-preview.is-dark{background:#142442;color:#e4edf9}.identity-scanner-preview.is-dark header button{background:#1c3050;color:#e4edf9;border-color:#496483}
@media(prefers-reduced-motion:reduce){.identity-scanner-preview *{animation:none!important;transition:none!important}}
        .id-scan-shell {
            margin-top: .85rem;
            overflow: visible;
            width: 100%;
            max-width: 100%;
            border-radius: 0;
            border: 0;
            background: transparent;
            box-shadow: none;
        }
        .id-scan-stage {
            position: relative;
            width: min(100%, 23rem);
            min-height: 0;
            aspect-ratio: 1.586;
            margin: 0 auto;
            overflow: hidden;
            border-radius: .85rem;
            border: 1px dashed rgba(242, 59, 151, .48);
            background:
                radial-gradient(circle at 72% 72%, rgba(242, 59, 151, .14), transparent 32%),
                linear-gradient(135deg, rgba(6, 20, 48, .92), rgba(9, 21, 46, .92) 48%, rgba(45, 9, 54, .82));
            box-shadow:
                inset 0 0 0 1px rgba(36, 224, 233, .1),
                inset 0 0 36px rgba(36, 224, 233, .08);
            transition:
                border-color .24s ease,
                box-shadow .24s ease,
                transform .24s ease,
                background .24s ease;
        }
        .id-scan-stage::after {
            content: '';
            position: absolute;
            inset: 18px;
            z-index: 6;
            color: rgba(248, 250, 252, .9);
            background:
                linear-gradient(currentColor, currentColor) left top / 16px 2px no-repeat,
                linear-gradient(currentColor, currentColor) left top / 2px 16px no-repeat,
                linear-gradient(currentColor, currentColor) right top / 16px 2px no-repeat,
                linear-gradient(currentColor, currentColor) right top / 2px 16px no-repeat,
                linear-gradient(currentColor, currentColor) left bottom / 16px 2px no-repeat,
                linear-gradient(currentColor, currentColor) left bottom / 2px 16px no-repeat,
                linear-gradient(currentColor, currentColor) right bottom / 16px 2px no-repeat,
                linear-gradient(currentColor, currentColor) right bottom / 2px 16px no-repeat;
            filter: drop-shadow(0 0 7px rgba(36, 224, 233, .32));
            pointer-events: none;
            transform-origin: center;
            transition: transform .24s ease, opacity .24s ease, filter .24s ease;
        }
        .id-scan-stage.is-clickable {
            cursor: pointer;
        }
        .id-scan-stage.is-clickable:hover,
        .id-scan-stage.is-clickable:focus-visible,
        .id-scan-stage.is-clickable:active {
            border-color: rgba(244, 114, 182, .86);
            box-shadow:
                inset 0 0 0 1px rgba(36, 224, 233, .16),
                inset 0 0 36px rgba(36, 224, 233, .1),
                0 0 26px rgba(244, 114, 182, .2);
        }
        .id-scan-stage.is-clickable:focus-visible {
            outline: 2px solid rgba(36, 224, 233, .72);
            outline-offset: 3px;
        }
        .id-scan-stage.is-clickable:hover::after,
        .id-scan-stage.is-clickable:focus-visible::after,
        .id-scan-stage.is-clickable:active::after {
            opacity: .94;
            transform: scale(1.08);
            filter: drop-shadow(0 0 11px rgba(36, 224, 233, .46));
        }
        .id-scan-clear {
            position: absolute;
            top: .55rem;
            right: .55rem;
            z-index: 9;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 1.9rem;
            height: 1.9rem;
            border-radius: 999px;
            border: 1px solid rgba(244, 114, 182, .58);
            background: rgba(6, 17, 39, .78);
            color: rgba(255, 228, 245, .96);
            font-size: 1rem;
            font-weight: 800;
            line-height: 1;
            box-shadow: 0 0 18px rgba(244, 114, 182, .24), inset 0 1px 0 rgba(255,255,255,.12);
            backdrop-filter: blur(8px);
            transition: transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
        }
        .id-scan-clear:hover {
            transform: scale(1.04);
            border-color: rgba(244, 114, 182, .92);
            background: rgba(244, 114, 182, .18);
            color: #fff;
        }
        .id-scan-clear.hidden {
            display: none;
        }
        .id-scan-image {
            position: relative;
            z-index: 1;
            display: block;
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        .id-scan-image:not([src]),
        .id-scan-image[src=""] {
            display: none;
        }
        .id-scan-image.is-prepared-card { width:auto; height:auto; max-width:calc(100% - 20px); max-height:calc(100% - 16px); margin:auto; }
        .id-scan-stage:has(.id-scan-image.is-prepared-card) { display:flex; align-items:center; justify-content:center; }
        .id-scan-empty {
            position: absolute;
            inset: clamp(.75rem, 7%, 1.1rem);
            z-index: 3;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            gap: .42rem;
            min-width: 0;
            overflow: hidden;
            padding: .15rem;
            color: rgba(248, 250, 252, 0.94);
            text-align: center;
            pointer-events: none;
        }
        .id-scan-empty::before {
            content: '';
            position: absolute;
            left: 9%;
            right: 9%;
            height: 2px;
            border-radius: 999px;
            background: linear-gradient(90deg, transparent, rgba(34,211,238,.88), rgba(244,114,182,.82), transparent);
            box-shadow: 0 0 14px rgba(34,211,238,.5), 0 0 18px rgba(244,114,182,.28);
            opacity: .72;
            animation: scanSweep 2.6s ease-in-out infinite;
            transition: opacity .24s ease;
        }
        .id-scan-empty > * {
            position: relative;
            z-index: 1;
        }
        .id-scan-empty i {
            font-size: 1.85rem;
            color: rgba(248, 250, 252, .92);
            filter: drop-shadow(0 0 8px rgba(36, 224, 233, .34));
            transition: transform .26s ease, filter .26s ease;
        }
        .id-scan-empty-title {
            display: block;
            max-width: 100%;
            font-size: clamp(.76rem, 2.5vw, .92rem);
            font-weight: 800;
            line-height: 1.15;
            text-transform: none;
            letter-spacing: 0;
            overflow-wrap: anywhere;
            transition: opacity .2s ease, transform .2s ease;
        }
        .id-scan-empty-copy {
            max-width: min(100%, 11.5rem);
            color: rgba(203, 213, 225, .88);
            font-size: clamp(.68rem, 2.15vw, .78rem);
            line-height: 1.35;
            overflow-wrap: anywhere;
            transition: opacity .2s ease, transform .2s ease;
        }
        .id-scan-empty.hidden {
            display: none;
        }
        .id-scan-grid {
            position: absolute;
            inset: 0;
            z-index: 2;
            background-image:
                linear-gradient(rgba(34,211,238,0.12) 1px, transparent 1px),
                linear-gradient(90deg, rgba(244,114,182,0.1) 1px, transparent 1px);
            background-size: 24px 24px;
            opacity: .5;
            pointer-events: none;
            transition: opacity .24s ease;
        }
        .id-scan-stage.is-clickable:hover .id-scan-empty i,
        .id-scan-stage.is-clickable:focus-visible .id-scan-empty i,
        .id-scan-stage.is-clickable:active .id-scan-empty i {
            transform: translateY(.82rem) scale(1.18);
            filter: drop-shadow(0 0 13px rgba(36, 224, 233, .52)) drop-shadow(0 0 14px rgba(244, 114, 182, .28));
        }
        .id-scan-stage.is-clickable:hover .id-scan-empty-title,
        .id-scan-stage.is-clickable:hover .id-scan-empty-copy,
        .id-scan-stage.is-clickable:focus-visible .id-scan-empty-title,
        .id-scan-stage.is-clickable:focus-visible .id-scan-empty-copy,
        .id-scan-stage.is-clickable:active .id-scan-empty-title,
        .id-scan-stage.is-clickable:active .id-scan-empty-copy {
            opacity: 0;
            transform: translateY(.25rem);
        }
        .id-scan-stage.is-clickable:hover .id-scan-empty::before,
        .id-scan-stage.is-clickable:focus-visible .id-scan-empty::before,
        .id-scan-stage.is-clickable:active .id-scan-empty::before,
        .id-scan-stage.is-clickable:hover .id-scan-grid,
        .id-scan-stage.is-clickable:focus-visible .id-scan-grid,
        .id-scan-stage.is-clickable:active .id-scan-grid {
            opacity: .16;
        }
        .id-scan-polygon-overlay {
            position: absolute;
            inset: 0;
            z-index: 5;
            width: 100%;
            height: 100%;
            pointer-events: none;
        }
        .id-scan-polygon-overlay:has(.id-thumbnail-crop-outline) { overflow: visible; }
        .id-thumbnail-crop-outline {
            fill: none;
            stroke: #ec4899;
            stroke-width: 2;
            stroke-linejoin: round;
            stroke-linecap: round;
            stroke-dasharray: none;
            vector-effect: non-scaling-stroke;
            animation: none;
        }
        .id-scan-polygon-shape {
            fill: rgba(34, 211, 238, 0.12);
            stroke: rgba(34, 211, 238, 0.98);
            stroke-width: 2.2;
            stroke-linejoin: round;
            stroke-linecap: round;
            stroke-dasharray: 10 7;
            filter: drop-shadow(0 0 10px rgba(34,211,238,0.62)) drop-shadow(0 0 10px rgba(244,114,182,0.42));
            animation: polygonPulse 2s linear infinite;
        }
        .id-scan-box {
            position: absolute;
            z-index: 5;
            overflow: hidden;
            border: 2px solid rgba(34, 211, 238, 0.98);
            border-radius: .8rem;
            box-shadow:
                0 0 0 9999px rgba(2, 6, 23, 0.34),
                0 0 0 3px rgba(255,255,255,0.18) inset,
                0 0 24px rgba(34,211,238,0.52),
                0 0 34px rgba(244,114,182,0.32);
            pointer-events: none;
        }
        .id-scan-box::before {
            content: '';
            position: absolute;
            inset: .38rem;
            border: 1px dashed rgba(255,255,255,0.48);
            border-radius: .58rem;
        }
        .id-scan-line {
            position: absolute;
            left: 5%;
            right: 5%;
            height: 3px;
            border-radius: 999px;
            background: linear-gradient(90deg, transparent, rgba(34,211,238,0.98), rgba(244,114,182,0.96), rgba(16,185,129,0.92), transparent);
            box-shadow: 0 0 16px rgba(34,211,238,0.72), 0 0 20px rgba(244,114,182,0.45);
            animation: scanSweep 1.85s linear infinite;
        }
        .id-scan-shell[data-state="ok"] .id-scan-box,
        .id-scan-shell[data-state="ok"] .id-scan-polygon-shape {
            border-color: rgba(16,185,129,0.98);
            stroke: rgba(16,185,129,0.98);
            filter: drop-shadow(0 0 11px rgba(16,185,129,0.66));
        }
        .id-scan-shell[data-state="error"] .id-scan-box,
        .id-scan-shell[data-state="error"] .id-scan-polygon-shape {
            border-color: rgba(248,113,113,0.98);
            stroke: rgba(248,113,113,0.98);
            filter: drop-shadow(0 0 11px rgba(248,113,113,0.58));
        }
        .id-scan-shell[data-state="ok"] .id-scan-line {
            opacity: .28;
            animation-duration: 2.8s;
        }
        .id-scan-footer {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: .65rem;
            padding: .72rem 0 .05rem;
        }
        .id-scan-activity { position:absolute; inset:0; z-index:6; display:none; pointer-events:none; background:linear-gradient(180deg,#ffffff14,#dcf7ff28); }
        .id-scan-activity::before { content:''; position:absolute; inset:0 0 auto; height:22%; background:linear-gradient(180deg,transparent,#5dddf373,#fff9); border-bottom:2px solid #fff; animation:identityThumbnailScan 2s ease-in-out infinite alternate; }
        .id-scan-activity span { position:absolute; left:50%; bottom:12px; transform:translateX(-50%); white-space:nowrap; color:#164c72; font-size:12px; font-weight:700; text-shadow:0 1px 8px #fff; }
        .id-scan-activity span::before { content:''; position:absolute; z-index:-1; inset:-12px -25px; background:radial-gradient(ellipse,#fffffff5 35%,#ffffff00 73%); }
        .id-scan-shell[data-state="scanning"] .id-scan-activity { display:block; }
        .identity-result-icon { display:inline-flex; align-items:center; justify-content:center; margin-left:7px; width:16px; height:16px; font-weight:800; text-decoration:none; }
        .identity-result-icon[data-state="ok"] { color:#16855f; }
        .identity-result-icon[data-state="error"] { color:#d12661; }
        .identity-result-icon[data-state="unavailable"] { color:#55769a; }
        .identity-result-icon[data-state="scanning"] { width:12px; height:12px; border:2px solid #aad9eb; border-top-color:#168aca; border-radius:50%; animation:identityStatusSpin .8s linear infinite; }
        .id-scan-footer .id-scan-pill { display:none; }
        .identity-preview-detail-status { color:#58718c; font-size:12px; margin-top:10px; }
        .identity-preview-detail-status button { margin-left:8px; color:#087ab9; text-decoration:underline; }
        @keyframes identityThumbnailScan { from { top:0; } to { top:78%; } }
        @keyframes identityStatusSpin { to { transform:rotate(360deg); } }
        @media (prefers-reduced-motion: reduce) { .id-scan-activity::before,.identity-result-icon[data-state="scanning"] { animation:none; } .id-scan-activity::before { top:38%; } }
        .id-scan-footer.is-captionless {
            justify-content: center;
        }
        .id-scan-shell[data-state="idle"] .id-scan-footer {
            display: none;
        }
        .id-scan-shell[data-state="ok"] .id-scan-footer {
            justify-content: center;
        }
        .id-scan-shell[data-state="ok"] .id-scan-caption {
            flex: 0 1 auto;
            color: #d1fae5;
            font-weight: 800;
            text-align: center;
        }
        .id-scan-shell[data-state="ok"] .id-scan-pill {
            display: none;
        }
        .id-scan-caption {
            min-width: 0;
            width: 100%;
            flex: 1;
            text-align: center;
            color: rgba(203,213,225,0.84);
            font-size: .72rem;
            line-height: 1.35;
            overflow-wrap: anywhere;
        }
        .id-scan-pill {
            display: inline-flex;
            flex-shrink: 0;
            align-items: center;
            gap: .28rem;
            border-radius: 999px;
            border: 1px solid rgba(148, 163, 184, 0.25);
            padding: .28rem .62rem;
            color: #e2e8f0;
            background: rgba(15,23,42,0.88);
            font-size: .62rem;
            font-weight: 800;
            white-space: nowrap;
        }
        .id-scan-pill.info {
            color: #cffafe;
            border-color: rgba(34,211,238,0.36);
            background: rgba(8,47,73,0.88);
        }
        .id-scan-pill.warn {
            color: #fef3c7;
            border-color: rgba(245,158,11,0.35);
            background: rgba(69,26,3,0.82);
        }
        .id-scan-pill.ok {
            color: #d1fae5;
            border-color: rgba(16,185,129,0.38);
            background: rgba(6,78,59,0.86);
        }
        .id-scan-pill.error {
            color: #fee2e2;
            border-color: rgba(248,113,113,0.38);
            background: rgba(127,29,29,0.84);
        }
        @media (prefers-reduced-motion: reduce) {
            .id-scan-stage,
            .id-scan-stage::after,
            .id-scan-empty i,
            .id-scan-empty-title,
            .id-scan-empty-copy,
            .id-scan-empty::before,
            .id-scan-grid {
                transition-duration: .01ms !important;
                animation-duration: .01ms !important;
                animation-iteration-count: 1 !important;
            }
            .id-scan-stage.is-clickable:hover .id-scan-empty i,
            .id-scan-stage.is-clickable:focus-visible .id-scan-empty i,
            .id-scan-stage.is-clickable:active .id-scan-empty i,
            .id-scan-stage.is-clickable:hover::after,
            .id-scan-stage.is-clickable:focus-visible::after,
            .id-scan-stage.is-clickable:active::after {
                transform: none;
            }
        }

        .id-scan-stage {
            border-color: rgba(223, 31, 120, .34);
            background: linear-gradient(135deg, #f4f9ff, #fff7fb) !important;
            box-shadow: inset 0 0 0 1px rgba(8, 121, 219, .06), inset 0 0 28px rgba(8, 121, 219, .04);
        }
        .id-scan-stage::after {
            color: rgba(41, 75, 114, .62);
            filter: none;
        }
        .id-scan-empty {
            color: #294b72;
        }
        .id-scan-empty i {
            color: #0879db;
            filter: drop-shadow(0 0 8px rgba(8, 121, 219, .15));
        }
        .id-scan-empty-copy,
        .id-scan-caption {
            color: #647694;
        }
        .id-scan-grid {
            background-image:
                linear-gradient(rgba(8, 121, 219, .07) 1px, transparent 1px),
                linear-gradient(90deg, rgba(223, 31, 120, .055) 1px, transparent 1px);
            opacity: .5;
        }
        .id-scan-clear {
            border-color: rgba(255, 255, 255, .72);
            background: rgba(41, 59, 79, .9);
            color: #fff;
            box-shadow: 0 2px 8px rgba(15, 23, 42, .2);
        }
        .id-scan-clear:hover { border-color: #fff; background: #293b4f; color: #fff; }
        .id-scan-clear:focus-visible { outline: 3px solid rgba(41, 59, 79, .55); outline-offset: 2px; }
        .id-scan-pill {
            border-color: rgba(126, 157, 199, .28);
            background: #fff;
            color: #425a7d;
        }
        .id-scan-pill.info {
            border-color: rgba(8, 121, 219, .24);
            background: #eaf6ff;
            color: #0b67bc;
        }
        .id-scan-pill.warn {
            border-color: rgba(217, 119, 6, .22);
            background: #fff8e8;
            color: #9a5b06;
        }
        .id-scan-pill.ok {
            border-color: rgba(8, 127, 104, .22);
            background: #edfbf7;
            color: #087f68;
        }
        .id-scan-pill.error {
            border-color: rgba(190, 24, 93, .22);
            background: #fff0f4;
            color: #a51045;
        }

        .scan-preview-text {
            margin: 0;
            border-radius: .85rem;
            border: 1px solid rgba(36, 224, 233, 0.28);
            background:
                linear-gradient(rgba(36, 224, 233, 0.035) 1px, transparent 1px),
                linear-gradient(90deg, rgba(236, 72, 153, 0.03) 1px, transparent 1px),
                rgba(1, 5, 15, 0.97);
            background-size: 22px 22px, 22px 22px, auto;
            color: #dffcff;
            font-family: "Cascadia Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;
            font-size: .76rem;
            line-height: 1.52;
            padding: .82rem .9rem;
            white-space: pre-wrap;
            word-break: break-word;
            user-select: text;
            min-height: 3.1rem;
            max-height: 13rem;
            overflow: auto;
            box-shadow:
                0 0 24px rgba(36, 224, 233, 0.14),
                0 0 28px rgba(236, 72, 153, 0.1),
                inset 0 1px 0 rgba(255, 255, 255, 0.08);
            scrollbar-color: rgba(236, 72, 153, 0.62) rgba(2, 6, 23, 0.92);
        }
        .scan-terminal-line {
            display: block;
            min-height: 1.52em;
        }
        .scan-terminal-prompt,
        .scan-terminal-label {
            color: #22d3ee;
            text-shadow: 0 0 10px rgba(34, 211, 238, 0.68);
        }
        .scan-terminal-value,
        .scan-terminal-percent {
            color: #ff5dcb;
            text-shadow:
                0 0 10px rgba(255, 93, 203, 0.72),
                0 0 18px rgba(236, 72, 153, 0.36);
        }
        .scan-terminal-percent-success {
            color: #4ade80;
            text-shadow:
                0 0 10px rgba(74, 222, 128, 0.72),
                0 0 18px rgba(34, 197, 94, 0.36);
        }
        .scan-terminal-percent-error,
        .scan-terminal-message-error,
        .scan-terminal-status.scan-terminal-status-error {
            color: #fb7185;
            text-shadow:
                0 0 10px rgba(251, 113, 133, 0.72),
                0 0 18px rgba(225, 29, 72, 0.36);
        }
        .scan-terminal-status {
            color: #4ade80;
            text-shadow: 0 0 11px rgba(74, 222, 128, 0.66);
        }
        .scan-terminal-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: .95rem;
            height: .95rem;
            margin-left: .32rem;
            border-radius: 999px;
            font-size: .68rem;
            line-height: 1;
            vertical-align: .08em;
        }
        .scan-terminal-icon svg {
            width: .68rem;
            height: .68rem;
            stroke-width: 3;
        }
        .scan-terminal-check {
            background: rgba(34, 197, 94, 0.18);
            color: #86efac;
            box-shadow: 0 0 10px rgba(34, 197, 94, 0.35);
        }
        .scan-terminal-x {
            background: rgba(225, 29, 72, 0.18);
            color: #fda4af;
            box-shadow: 0 0 10px rgba(225, 29, 72, 0.35);
        }
        .scan-terminal-caret {
            display: inline-block;
            width: .55em;
            margin-left: .08rem;
            color: #dffcff;
            animation: terminalCaretBlink .78s steps(2, start) infinite;
        }
        @keyframes terminalCaretBlink {
            0%, 45% { opacity: 1; }
            46%, 100% { opacity: 0; }
        }

        .scan-preview-text {
            border-color: rgba(126, 157, 199, .28);
            background:
                linear-gradient(rgba(8, 121, 219, .035) 1px, transparent 1px),
                linear-gradient(90deg, rgba(223, 31, 120, .028) 1px, transparent 1px),
                #f7fbff;
            color: #294b72;
            box-shadow: inset 0 1px 0 #fff, 0 10px 24px rgba(70, 101, 157, .08);
            scrollbar-color: rgba(8, 121, 219, .3) rgba(232, 239, 249, .86);
        }
        .scan-terminal-prompt,
        .scan-terminal-label {
            color: #0879db;
            text-shadow: none;
        }
        .scan-terminal-value,
        .scan-terminal-percent {
            color: #b51b63;
            text-shadow: none;
        }
        .scan-terminal-percent-success,
        .scan-terminal-message-success,
        .scan-terminal-status {
            color: #087f68;
            text-shadow: none;
        }
        .scan-terminal-percent-error,
        .scan-terminal-message-error,
        .scan-terminal-status.scan-terminal-status-error {
            color: #b91c4b;
            text-shadow: none;
        }
        .scan-terminal-caret {
            color: #294b72;
        }

.id-scan-shell[data-state="ok"] .id-scan-caption{color:#087f68!important}
