*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a1a;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}a{color:#06c;text-decoration:none}a:hover{text-decoration:underline}nav{background:#1a1a1a;align-items:center;gap:1.5rem;padding:.75rem 1.5rem;display:flex}nav a{color:#fff;font-size:.9rem;font-weight:500}nav a:hover{color:#ccc;text-decoration:none}nav .brand{margin-right:auto;font-size:1rem;font-weight:700}.container{max-width:1200px;margin:0 auto;padding:1.5rem}h1{margin-bottom:1rem;font-size:1.5rem}h2{margin-bottom:.75rem;font-size:1.25rem}.stats{gap:1rem;margin-bottom:1.5rem;display:flex}.stat-card{background:#fff;border-radius:8px;flex:1;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0000001a}.stat-card .label{text-transform:uppercase;color:#666;letter-spacing:.05em;font-size:.8rem}.stat-card .value{font-size:2rem;font-weight:700}table{border-collapse:collapse;background:#fff;border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #0000001a}th,td{text-align:left;border-bottom:1px solid #eee;padding:.6rem .75rem;font-size:.875rem}th{text-transform:uppercase;color:#666;letter-spacing:.03em;background:#fafafa;font-size:.8rem;font-weight:600}tr:last-child td{border-bottom:none}tr:hover td{background:#f9f9ff}td.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.detail-grid{background:#fff;border-radius:8px;grid-template-columns:160px 1fr;gap:.5rem 1rem;margin-bottom:1.5rem;padding:1.25rem;display:grid;box-shadow:0 1px 3px #0000001a}.detail-grid dt{text-transform:uppercase;color:#666;font-size:.8rem;font-weight:600}.detail-grid dd{word-break:break-word;font-size:.9rem}.content-box{background:#fff;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.content-box pre{white-space:pre-wrap;word-break:break-word;max-height:500px;font-size:.85rem;line-height:1.5;overflow-y:auto}details{margin-bottom:1.5rem}details summary{cursor:pointer;background:#fff;border-radius:8px;padding:.75rem 1rem;font-weight:600;box-shadow:0 1px 3px #0000001a}.badge{border-radius:4px;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-green{color:#1a7a1a;background:#e6f9e6}.badge-gray{color:#666;background:#eee}.side-by-side{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:768px){.side-by-side{grid-template-columns:1fr}}.empty{text-align:center;color:#999;padding:3rem;font-style:italic}.nav-signout{color:#fff;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:.9rem;font-weight:500}.nav-signout:hover{color:#ccc}.sign-in-card{background:#fff;border-radius:8px;max-width:400px;margin:2rem auto;padding:2rem;box-shadow:0 1px 3px #0000001a}.sign-in-card label{text-transform:uppercase;color:#666;margin-bottom:.25rem;font-size:.8rem;font-weight:600;display:block}.sign-in-card input{border:1px solid #ddd;border-radius:6px;width:100%;margin-bottom:1rem;padding:.6rem .75rem;font-size:1rem;display:block}.sign-in-card input:focus{border-color:#06c;outline:none;box-shadow:0 0 0 2px #06c3}.sign-in-card button[type=submit]{color:#fff;cursor:pointer;background:#06c;border:none;border-radius:6px;width:100%;padding:.6rem;font-size:1rem;font-weight:600;display:block}.sign-in-card button[type=submit]:hover{background:#05a}.sign-in-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.sign-in-card .btn-link{color:#06c;cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:.75rem;font-size:.875rem;display:block}.sign-in-card .btn-link:hover{text-decoration:underline}.form-error{color:#c00;margin-bottom:.75rem;font-size:.875rem}.form-hint{color:#666;margin-bottom:1rem;font-size:.9rem}.card{background:#fff;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.btn{cursor:pointer;color:#1a1a1a;background:#fff;border:1px solid #ddd;border-radius:6px;align-items:center;gap:.35rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn:hover{background:#f5f5f5}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:#06c;border-color:#06c}.btn-primary:hover{background:#05a}.btn-danger{color:#fff;background:#c00;border-color:#c00}.btn-danger:hover{background:#a00}.btn-sm{padding:.3rem .6rem;font-size:.8rem}.key-reveal{word-break:break-all;background:#fffbe6;border:1px solid #f0d000;border-radius:6px;margin-bottom:1rem;padding:1rem;font-family:monospace;font-size:.9rem}.tabs{border-bottom:2px solid #eee;gap:0;margin-bottom:1.5rem;display:flex}.tab{color:#666;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:500}.tab:hover{color:#1a1a1a}.tab.active{color:#06c;border-bottom-color:#06c}.inline-form{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.inline-form input{border:1px solid #ddd;border-radius:6px;flex:1;max-width:300px;padding:.5rem .75rem;font-size:.875rem}.inline-form input:focus{border-color:#06c;outline:none;box-shadow:0 0 0 2px #06c3}.badge-blue{color:#04a;background:#e6f0ff}.badge-red{color:#c00;background:#ffe6e6}
