/* AE Key devices card (/account/#devices) + shared toggletip. No third-party assets. */
.aek{--g:#C9A24B;--g2:#D4AF6A;--ink:#F2EEE4;--dim:#b5aea0;--mute:#8f897c;--teal:#6FE3A8;--line:rgba(212,175,106,.22);
  border:1px solid var(--line);border-radius:14px;padding:18px 20px 20px;background:rgba(16,16,20,.75);margin-top:18px;scroll-margin-top:90px;min-width:0}
.aek *{box-sizing:border-box}
.aek h2{margin:0 0 6px}
.aek-lede{margin:0 0 12px;font-size:.9rem;color:var(--dim);max-width:70ch}
.aek-empty{margin:6px 0;font-size:.88rem;color:var(--mute)}
.aek-k{font:500 .66rem/1.2 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin:4px 0 10px}
.aek-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.aek-btn{background:none;border:1px solid rgba(212,175,106,.55);color:var(--g2);border-radius:8px;padding:8px 13px;font:700 .74rem/1 Georgia,serif;letter-spacing:.07em;cursor:pointer;min-height:36px}
.aek-btn:hover{background:rgba(201,162,75,.12)}
.aek-btn:focus-visible,.aek-i:focus-visible,.aek-tabs [role=tab]:focus-visible,.aek-pane:focus-visible,.aek-res h3:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.aek-btn[disabled]{opacity:.5;cursor:not-allowed}
.aek-btn.aek-main{background:linear-gradient(135deg,#C9A24B,#D4AF6A);color:#0A0A0C;border:0;box-shadow:0 6px 18px rgba(201,162,75,.25)}
.aek-btn.aek-main:hover{background:linear-gradient(135deg,#d4ae58,#e0bd7c)}
.aek-btn.aek-main[disabled]{background:#2a2a30;color:#8f897c;box-shadow:none}
.aek-btn.aek-danger{border-color:rgba(227,111,111,.6);color:#E36F6F}
.aek-btn.aek-danger:hover{background:rgba(227,111,111,.12)}
.aek-msg{margin:6px 0 0;font-size:.82rem;color:var(--dim);min-height:0}
.aek-msg:empty{display:none}
.aek-msg.err,.aek-note.err{color:#E36F6F}
.aek-note{margin:6px 0 0;font-size:.82rem;line-height:1.5;color:var(--dim)}
.aek-note.ok{color:var(--teal)}
.aek-warn{border-left:3px solid var(--g);padding:6px 10px;background:rgba(201,162,75,.08);border-radius:0 8px 8px 0}
/* list */
.aek-list{list-style:none;margin:0;padding:0}
.aek-dev{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:4px 12px;align-items:center;border-top:1px solid rgba(242,238,228,.08);padding:12px 0}
.aek-dev .aek-msg{grid-column:2 / -1}
.aek-dm{min-width:0}
.aek-dn{color:var(--ink);font-size:.95rem;overflow-wrap:anywhere}
.aek-tag{font:500 .6rem/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--g2);border:1px solid rgba(212,175,106,.45);border-radius:999px;padding:3px 7px;margin-left:8px;white-space:nowrap;vertical-align:2px}
.aek-meta{margin:3px 0 0;font:400 .7rem/1.4 'IBM Plex Mono',ui-monospace,monospace;color:var(--mute);overflow-wrap:anywhere}
.aek-dev.is-active .aek-meta{color:#9fcfb6}
.aek-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.aek-acts .aek-note{margin:0;flex-basis:100%;text-align:right}
.aek-g{display:inline-flex;width:28px;height:28px;color:var(--g2)}
.aek-g svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.aek-gl{width:44px;height:44px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#0d0d10}
/* add form */
.aek-add{border:1px solid rgba(212,175,106,.35);border-radius:12px;padding:14px 14px 16px;margin-top:14px;background:rgba(10,10,12,.6)}
.aek-carriers{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.aek-carrier{position:relative;min-width:0}
.aek-radio{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.aek-carrier label{margin:0;font:400 .8rem/1.2 Georgia,serif;letter-spacing:0;text-transform:none;display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 4px 10px;border:1px solid rgba(242,238,228,.14);border-radius:10px;cursor:pointer;text-align:center;background:#0d0d10;color:var(--dim);min-height:96px;transition:border-color .15s,background .15s}
.aek-carrier label:hover{border-color:rgba(212,175,106,.55)}
.aek-carrier .aek-g{width:30px;height:30px}
.aek-ct{font-size:.84rem;color:var(--ink);line-height:1.15;overflow-wrap:anywhere}
.aek-carrier small{font:500 .56rem/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.aek-radio:checked + label{border-color:var(--g);background:rgba(201,162,75,.12);box-shadow:inset 0 0 0 1px var(--g)}
.aek-radio:checked + label small{color:var(--g2)}
.aek-radio:focus-visible + label{outline:2px solid var(--teal);outline-offset:2px}
.aek-carrier > .aek-tipw{position:absolute;top:3px;right:3px}
.aek-lbl{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:14px 0 5px}
.aek-in{display:block;width:100%;max-width:420px;background:#141419;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink);font:inherit}
.aek-in:focus{outline:2px solid var(--g);outline-offset:1px}
/* toggletip */
.aek-tipw{position:relative;display:inline-flex;vertical-align:middle}
.aek-i{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;color:#8f897c;cursor:pointer}
.aek-i svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.aek-i:hover,.aek-i[aria-expanded="true"]{color:var(--teal,#6FE3A8)}
.aek-tip{position:fixed;z-index:2147483000;width:max-content;max-width:min(270px,calc(100vw - 32px));background:#141419;border:1px solid rgba(111,227,168,.45);border-radius:10px;padding:9px 11px;font:400 .78rem/1.5 Georgia,serif;color:#e7e2d6;box-shadow:0 10px 28px rgba(0,0,0,.55);text-align:left;white-space:normal;letter-spacing:0;text-transform:none}
.aek-tip[hidden]{display:none}
/* result */
.aek-res{border:1px solid var(--g);border-radius:12px;padding:14px 16px 16px;margin:4px 0 14px;background:linear-gradient(180deg,rgba(201,162,75,.08),rgba(10,10,12,.4))}
.aek-res-top{display:flex;gap:12px;align-items:center}
.aek-res h3{margin:0;font-size:1.02rem;color:var(--ink);overflow-wrap:anywhere}
.aek-tabs{display:flex;gap:4px;margin-top:14px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.aek-tabw{display:inline-flex;align-items:center}
.aek-tabs [role=tab]{all:unset;cursor:pointer;padding:9px 12px 8px;font:500 .74rem/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.14em;color:var(--dim);border-bottom:2px solid transparent;margin-bottom:-1px}
.aek-tabs [role=tab][aria-selected="true"]{color:var(--g2);border-bottom-color:var(--g)}
.aek-tabs [role=tab]:hover{color:var(--ink)}
.aek-tabw .aek-i{width:22px;height:22px;margin-left:-4px}
.aek-pane{padding:14px 0 2px}
.aek-pane[hidden]{display:none}
.aek-qr{display:inline-block;background:#F2EEE4;padding:12px;border-radius:10px}
.aek-qr img{display:block;width:232px;height:232px;max-width:calc(100vw - 110px);max-height:calc(100vw - 110px);image-rendering:pixelated}
.aek-cap{margin:8px 0 0;font-size:.84rem;color:var(--dim)}
@media (max-width:820px){
  .aek{padding:16px 14px 18px}
  .aek-carriers{grid-template-columns:repeat(4,minmax(0,1fr))}
  .aek-dev{grid-template-columns:44px minmax(0,1fr)}
  .aek-acts{grid-column:1 / -1;justify-content:flex-start}
  .aek-acts .aek-note{text-align:left}
  .aek-in{font-size:16px}
  .aek-btn{min-height:42px}
}
@media (max-width:360px){.aek-carriers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.aek *{transition:none!important;animation:none!important}}
