.ca-passkey-entry{border-top:1px solid #dbe5dd;margin-top:20px;padding-top:18px}
.ca-passkey-entry .ca-auth-secondary{width:100%;min-height:48px;display:flex;justify-content:center;align-items:center;gap:9px;border:1px solid #a8c0ae;border-radius:14px;background:#f2f8ed;color:#234b3c;font:inherit;font-weight:700;cursor:pointer}
.ca-passkey-entry svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}
.ca-passkey-entry p{font-size:12px;line-height:1.9;color:#5d7368;margin:10px 0}
.ca-passkey-status{color:#375e4b;font-size:13px;line-height:1.9;overflow-wrap:anywhere}
.ca-passkey-list{display:grid;gap:10px;margin:20px 0}
.ca-passkey-list article{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px;border:1px solid #dbe5dd;border-radius:15px;background:#f7faf5}
.ca-passkey-list b,.ca-passkey-list small{display:block;overflow-wrap:anywhere}
.ca-passkey-list small{font-size:11px;color:#5d7368;margin-top:5px}
.ca-passkey-list button{min-height:44px;cursor:pointer}
.ca-passkey-label{display:block;font-size:13px;margin:18px 0 8px}
.ca-passkey-name{box-sizing:border-box;width:100%;font:inherit;border:1px solid #b8cbbd;border-radius:12px;min-height:48px;padding:10px 12px;margin-bottom:12px;background:white;color:#213d30}
[data-passkey-root] button:disabled{opacity:.55;cursor:wait}
[data-passkey-root] :is(button,a,input):focus-visible{outline:3px solid #91b951;outline-offset:3px}

/* Management page v2: explain the feature first, then present one clear action. */
.ca-passkey-manage{display:grid;gap:17px;color:#243d32}
.ca-passkey-intro{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:17px;border:1px solid #d9e7c6;border-radius:17px;background:linear-gradient(145deg,#fbfff6,#f2f8e9)}
.ca-passkey-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#dff2ad;color:#294b38}
.ca-passkey-mark svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ca-passkey-intro h2,.ca-passkey-devices h2{margin:5px 0 4px;font-size:16px;color:#233c31}
.ca-passkey-intro p,.ca-passkey-setup p,.ca-passkey-reauth p,.ca-passkey-empty p{margin:0;color:#62746a;font-size:11.5px;line-height:1.9}
.ca-passkey-support{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f1f3ef;color:#68766e;font-size:9.5px;font-weight:750}
.ca-passkey-support.is-ready{background:#e1f2bd;color:#365530}
.ca-passkey-support.is-unavailable{background:#fff0ef;color:#99474c}
.ca-passkey-setup,.ca-passkey-reauth{padding:17px;border:1px solid #dfe7e1;border-radius:16px;background:#fff}
.ca-passkey-setup{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.9fr);gap:11px;align-items:end}
.ca-passkey-setup>div:first-child{grid-column:1/-1}
.ca-passkey-label{margin:0 0 3px;font-size:13px;font-weight:800;color:#304a3c}
.ca-passkey-name{min-height:48px;margin:0;border-color:#cbd8ce;border-radius:11px;font-size:14px}
.ca-passkey-manage .ca-auth-submit{min-height:48px;margin:0;border-radius:11px;background:#284f3e;color:#fff;box-shadow:none;font-size:12px}
.ca-passkey-manage .ca-auth-submit:hover{background:#1f4334;transform:none}
.ca-passkey-reauth{display:grid;gap:8px}.ca-passkey-reauth b{font-size:14px}.ca-passkey-reauth .ca-auth-submit{margin-top:5px}
.ca-passkey-status:empty{display:none}.ca-passkey-status:not(:empty){margin:0;padding:11px 13px;border-radius:11px;background:#eef5ea;border:1px solid #dce8d7}
.ca-passkey-devices{border-top:1px solid #e2e9e4;padding-top:16px}
.ca-passkey-devices>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:10px}
.ca-passkey-devices>header span{color:#738078;font-size:10px}.ca-passkey-devices h2{margin-top:1px;font-size:14px}
.ca-passkey-list{gap:8px;margin:0}
.ca-passkey-list article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;padding:12px;border-color:#e0e8e2;border-radius:13px;background:#f8faf7}
.ca-passkey-device-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e3f3bd;color:#38582e;font-size:14px;font-weight:900}
.ca-passkey-list article>div{min-width:0}.ca-passkey-list b{color:#2d4438;font-size:12px}.ca-passkey-list small{margin-top:3px;font-size:9.5px}
.ca-passkey-list .ca-auth-secondary{min-height:38px;padding:7px 10px;border-color:#edd8d9;background:#fff7f7;color:#9a454a;border-radius:9px;font-size:10px}
.ca-passkey-empty{padding:17px;text-align:center;border:1px dashed #ccd8cf;border-radius:13px;background:#fafcf9}.ca-passkey-empty b{font-size:12.5px}.ca-passkey-empty p{margin-top:4px}
.ca-passkey-note{margin:0;padding:11px 13px;border-radius:11px;background:#f5f7f4;color:#66756c;font-size:10.5px;line-height:1.9}
.ca-passkey-back{display:inline-flex;width:max-content;margin:0!important;font-size:11.5px!important;font-weight:750}
.ca-passkey-manage[aria-busy=true]{cursor:progress}.ca-passkey-manage[aria-busy=true] .ca-passkey-setup{opacity:.72}
@media(max-width:560px){.ca-passkey-intro{grid-template-columns:42px minmax(0,1fr);padding:14px}.ca-passkey-mark{width:42px;height:42px}.ca-passkey-setup{grid-template-columns:1fr;padding:14px}.ca-passkey-list article{grid-template-columns:32px minmax(0,1fr)}.ca-passkey-list article>.ca-auth-secondary{grid-column:1/-1;width:100%}.ca-passkey-note{font-size:10px}}
