.koos-passkey-dialog { box-sizing:border-box; width:min(460px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 40px); margin:auto; padding:24px; overflow:auto; overscroll-behavior:contain; border:1px solid #d8edff52; border-radius:28px; color:#edf5ff; background:linear-gradient(145deg,#b5e9ff20,transparent 38%,#6572d416),#0b1c30d9; backdrop-filter:blur(26px) saturate(155%); -webkit-backdrop-filter:blur(26px) saturate(155%); box-shadow:inset 0 1px 0 #ffffff52,inset 0 -1px 0 #8fdcff24,0 28px 90px #0007; font:16px/1.5 var(--koos-ui-font,system-ui,sans-serif); }
.koos-passkey-dialog::backdrop { background:#020b1a70; backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); }
.koos-passkey-dialog.light { color:#132d48; border-color:#ffffffe6; background:linear-gradient(140deg,#ffffffa6,transparent 65%),#edf6ffd6; box-shadow:inset 0 1px 0 white,0 25px 80px #112d4933; }
.koos-passkey-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.koos-passkey-brand { font-size:22px; font-weight:750; letter-spacing:-.04em; }
.koos-passkey-dialog .koos-passkey-close { display:grid;place-items:center;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;flex:none;font:24px/1 system-ui!important;border-radius:50%; }
.koos-passkey-icon { display:grid;place-items:center;width:72px;height:72px;margin:8px auto 20px;border:1px solid #62d5f36b;border-radius:22px;background:linear-gradient(145deg,#1dc9ef25,#5264ef30);box-shadow:inset 0 1px 0 #ffffff30; }
.koos-passkey-icon svg {width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.koos-passkey-dialog h2 {font:700 24px/1.25 var(--koos-ui-font,system-ui,sans-serif)!important;letter-spacing:-.015em!important;text-transform:none!important;text-align:center;margin:0 0 12px;}
.koos-passkey-dialog p {font:400 16px/1.5 var(--koos-ui-font,system-ui,sans-serif)!important;letter-spacing:normal;text-transform:none;overflow-wrap:anywhere;}
.koos-passkey-dialog #koos-passkey-lead {text-align:center;margin:0 0 22px;opacity:.86;}
.koos-passkey-content {display:grid;gap:12px;}
.koos-passkey-content form {display:grid;gap:12px;}
.koos-passkey-content form p {margin:0;}
.koos-passkey-content label {display:grid;gap:6px;font-size:14px;}
.koos-passkey-content input {box-sizing:border-box;width:100%;min-width:0;min-height:48px;font-size:16px!important;line-height:1.4;padding:12px;border:1px solid #829bb580;border-radius:14px;background:#06152655;color:inherit;}
.koos-passkey-dialog.light input {background:#ffffff8c;}
.koos-passkey-content>button,.koos-passkey-content form>button {box-sizing:border-box;width:100%;min-height:48px;white-space:normal;font-size:14px!important;line-height:1.35!important;margin:0;padding:12px 18px;}
.koos-passkey-content button:disabled {opacity:.55;cursor:default;}
.koos-passkey-notice {margin:14px 0 0;min-height:0;font-size:14px!important;}
.koos-passkey-notice:empty {display:none;}
.koos-passkey-notice.is-error {color:#ffb5b5;}
.koos-passkey-dialog.light .is-error {color:#a52636;}
.koos-passkey-list {list-style:none;padding:0;margin:0;display:grid;gap:10px;}
.koos-passkey-list li {display:flex;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid #829bb54d;border-radius:14px;}
.koos-passkey-list span {overflow-wrap:anywhere;min-width:0;}
.koos-passkey-list button {min-height:44px;font-size:14px;flex-shrink:0;}
.koos-passkey-entry,[data-passkey-manage] {max-width:100%;white-space:normal;}
.koos-passkey-dialog :focus-visible {outline:3px solid #5fd8ee;outline-offset:3px;}
@media(max-width:480px){.koos-passkey-dialog{padding:20px;border-radius:24px;max-height:calc(100dvh - 24px);width:calc(100vw - 24px);}.koos-passkey-list li{flex-wrap:wrap;}}
@media(prefers-reduced-transparency:reduce){.koos-passkey-dialog{background:#102438;backdrop-filter:none}.koos-passkey-dialog.light{background:#f0f6fd;}}
