:root{--color-ink: #111111;--color-on-ink: #ffffff;--color-canvas: #ffffff;--color-soft-cloud: #f5f5f5;--color-charcoal: #39393b;--color-mute: #707072;--color-hairline: #cacacb;--color-hairline-soft: #e5e5e5;--color-sale: #d30005;--color-success: #007d48;--radius-md: 24px;--radius-lg: 30px;--radius-full: 9999px;--space-xxs: 2px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 18px;--space-xl: 24px;--space-xxl: 30px;--space-section: 48px;--font: Helvetica Neue, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--color-canvas);color:var(--color-ink);font-family:var(--font);font-size:16px;line-height:1.5}#root{min-height:100vh;display:flex;justify-content:center}.page{width:100%;max-width:640px;padding:var(--space-section) var(--space-xl)}.center-block{text-align:center;padding:var(--space-section) 0}.brand{font-family:var(--font);font-size:32px;font-weight:500;line-height:1.2;letter-spacing:0;margin:0 0 var(--space-xs);color:var(--color-ink)}.tagline{margin:0;color:var(--color-mute);font-size:16px}.header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding-bottom:var(--space-xl);border-bottom:1px solid var(--color-hairline);margin-bottom:var(--space-xl)}.user-info{display:flex;align-items:center;gap:var(--space-md);font-size:14px;color:var(--color-mute)}.user-info strong{color:var(--color-ink);font-weight:500}h2{font-family:var(--font);font-size:16px;font-weight:500;line-height:1.75;margin:0 0 var(--space-xl)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:var(--radius-lg);font-family:var(--font);font-size:16px;font-weight:500;line-height:1.5;cursor:pointer;padding:var(--space-md) var(--space-xl);height:48px}.btn-primary{background:var(--color-ink);color:var(--color-on-ink);text-decoration:none;display:inline-flex;align-items:center}.btn-primary:active{transform:scale(.98);opacity:.8}.btn-outline{background:transparent;color:var(--color-sale);border:1px solid var(--color-hairline);font-size:14px;height:36px;padding:0 var(--space-md)}.btn-outline:hover{border-color:var(--color-sale)}.link{color:var(--color-ink);font-size:14px;font-weight:500;line-height:1.75;text-decoration:underline}.form-row{display:flex;gap:var(--space-sm);margin-bottom:var(--space-xl)}input[type=text]{flex:1;background:var(--color-soft-cloud);border:1px solid transparent;border-radius:var(--radius-md);height:40px;padding:var(--space-sm) var(--space-md);font-family:var(--font);font-size:16px;color:var(--color-ink)}input[type=text]:focus{outline:none;background:var(--color-canvas);border-color:var(--color-ink);box-shadow:0 0 0 8px var(--color-soft-cloud)}input[type=text]::placeholder{color:var(--color-mute)}.callout{border:1px solid var(--color-hairline);border-radius:0;padding:var(--space-lg);margin-bottom:var(--space-xl)}.callout-title{color:var(--color-success);font-size:14px;font-weight:500;margin:0 0 var(--space-md)}.callout p{margin:0 0 var(--space-sm);font-size:14px;color:var(--color-charcoal)}.callout p:last-child{margin-bottom:0}.callout code{display:block;background:var(--color-soft-cloud);border-radius:var(--space-xs);padding:var(--space-sm) var(--space-md);margin-top:var(--space-xs);font-size:13px;word-break:break-all;color:var(--color-ink)}.error-banner{color:var(--color-sale);font-size:14px;font-weight:500;margin-bottom:var(--space-lg)}.key-list{list-style:none;margin:0;padding:0}.key-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-xl) 0;border-bottom:1px solid var(--color-hairline)}.key-row-info{display:flex;flex-direction:column;gap:var(--space-xxs);min-width:0}.key-row-label{font-weight:500;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.key-row-date{font-size:14px;color:var(--color-mute)}.badge{font-size:12px;font-weight:500;color:var(--color-ink);background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-full);padding:var(--space-xs) var(--space-md);white-space:nowrap}.empty-state{color:var(--color-mute);font-size:14px;text-align:center;padding:var(--space-xl) 0}
