*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;display:flex;justify-content:center;align-items:center;min-height:100vh}.container{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;width:100%;max-width:400px}h1{margin-bottom:1.5rem;text-align:center}label{display:block;margin-bottom:.25rem;font-weight:600;font-size:.9rem}input{width:100%;padding:.6rem;margin-bottom:1rem;border:1px solid #ccc;border-radius:4px;font-size:1rem}button{width:100%;padding:.7rem;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer}button:hover{background:#0056b3}button:disabled{cursor:not-allowed;opacity:.65}button.logout{background:#dc3545}button.logout:hover{background:#a71d2a}.error{background:#ffe0e0;color:#c00;padding:.5rem;border-radius:4px;margin-bottom:1rem;text-align:center}.success{background:#e0ffe0;color:#28a745;padding:.5rem;border-radius:4px;margin-bottom:1rem;text-align:center}.link{text-align:center;margin-top:1rem;font-size:.9rem}.meta{color:#666;font-size:.85rem;margin-bottom:1.5rem}.divider{text-align:center;margin:1.2rem 0;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;border-top:1px solid #ccc}.divider span{background:#fff;padding:0 .75rem;position:relative;color:#999;font-size:.85rem}.passkey-btn{background:#28a745;margin-bottom:.5rem}.passkey-btn:hover{background:#1e7e34}hr{border:none;border-top:1px solid #eee;margin:1.5rem 0}h2{font-size:1.1rem;margin-bottom:.75rem}.cred-table{width:100%;border-collapse:collapse;margin-bottom:1rem;font-size:.85rem}.cred-table th{text-align:left;padding:.4rem .5rem;border-bottom:2px solid #eee;color:#333;font-weight:600}.cred-table td{padding:.4rem .5rem;border-bottom:1px solid #f0f0f0;color:#666}.revoke-btn{width:auto;min-width:5rem;padding:.35rem .5rem;background:#dc3545;font-size:.8rem;white-space:nowrap}.revoke-btn:hover{background:#a71d2a}.this-device{display:inline-block;margin-left:.4rem;padding:.1rem .4rem;font-size:.75rem;color:#28a745;background:#e0ffe0;border-radius:3px;font-weight:600}
