:root{--bg: #000000;--fill: #1c1c1e;--fill-active: #2c2c2e;--txt: #f5f5f7;--txt-2: #86868b;--txt-3: #48484a;--hairline: rgba(255, 255, 255, .12);--separator: rgba(255, 255, 255, .07);--accent: #0a84ff;--accent-hover: #3395ff;--red: #ff453a;--green: #30d158;--yellow: #ffd60a;--radius: 12px;--surface-radius: 16px;--ease: cubic-bezier(.32, .72, .36, 1);--font-ui: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", "Segoe UI", Arial, sans-serif;--font-mono: "SF Mono", ui-monospace, Menlo, Monaco, monospace}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{font-family:var(--font-ui);background:var(--bg);color:var(--txt);min-height:100vh;font-size:15px;line-height:1.47;letter-spacing:-.012em;-webkit-font-smoothing:antialiased}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.auth-viewport{min-height:100vh;display:flex;align-items:flex-start;justify-content:center}.auth-column{width:100%;max-width:340px;padding:12vh 20px 48px}.wordmark{display:block;text-align:center;font-size:15px;font-weight:600;letter-spacing:.02em;color:var(--txt-2);margin-bottom:20px;-webkit-user-select:none;user-select:none}.wordmark .mark{display:block;width:fit-content;margin:0 auto 10px;font-size:40px;will-change:transform}.steps-row{position:relative;display:flex;align-items:center;justify-content:center;min-height:28px;margin-bottom:16px}.back-link{position:absolute;left:0;background:none;border:none;color:var(--txt-2);font-family:var(--font-ui);font-size:14px;letter-spacing:-.012em;cursor:pointer;padding:4px 8px;border-radius:8px;transition:color .2s var(--ease)}.back-link:hover{color:var(--accent)}.back-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.step-dots{display:flex;align-items:center;gap:7px}.step-dots .dot{display:inline-block;height:6px;width:6px;border-radius:999px;background:var(--txt-3)}h1{font-size:26px;font-weight:600;letter-spacing:-.022em;text-align:center;margin-bottom:8px}.sub{font-size:15px;color:var(--txt-2);text-align:center;margin-bottom:28px}.group{background:var(--fill);border-radius:var(--radius);overflow:hidden;margin-bottom:20px}.group>*+*{border-top:1px solid var(--separator)}.group input{display:block;width:100%;background:transparent;border:none;padding:13px 16px;font-size:17px;font-family:var(--font-ui);color:var(--txt);outline:none;transition:background .2s var(--ease)}.group input:first-child{border-radius:12px 12px 0 0}.group input:last-child{border-radius:0 0 12px 12px}.group input:only-child{border-radius:12px}.group input::placeholder{color:var(--txt-3)}.group input:focus{background:var(--fill-active)}.group input:focus-visible{box-shadow:inset 0 0 0 1.5px var(--accent)}input.otp{font-family:var(--font-mono);font-size:22px;letter-spacing:.4em;text-align:center}input.otp::placeholder{letter-spacing:.4em}.btn{display:block;width:100%;height:44px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:16px;font-family:var(--font-ui);font-weight:500;letter-spacing:-.012em;cursor:pointer;transition:background .2s var(--ease),transform .12s var(--ease),opacity .2s var(--ease)}.btn:hover{background:var(--accent-hover)}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn:focus-visible,.btn-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}.btn-link{display:block;width:100%;margin-top:18px;background:none;border:none;color:var(--accent);font-family:var(--font-ui);font-size:14px;font-weight:400;cursor:pointer;text-align:center;transition:opacity .2s var(--ease)}.btn-link:hover{text-decoration:underline}.btn-danger{color:var(--red)}.err{color:var(--red);font-size:13px;text-align:center;margin-bottom:14px}.note{font-size:12px;color:var(--txt-3);text-align:center;margin-top:40px}.qr-tile{background:#fff;border-radius:14px;padding:14px;width:fit-content;margin:0 auto 14px}.qr-tile img{display:block}.secret-line{font-size:12px;color:var(--txt-2);text-align:center;margin-bottom:24px;word-break:break-all}.secret-line code{font-family:var(--font-mono);font-size:12px;color:var(--txt)}.codes{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;background:var(--fill);border-radius:var(--radius);padding:18px 24px;font-family:var(--font-mono);font-size:15px;text-align:center;margin-bottom:20px;-webkit-user-select:all;user-select:all}.shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;padding:36px 16px 24px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.sidebar .brand{font-size:15px;font-weight:600;color:var(--txt-2);padding:0 14px 32px;-webkit-user-select:none;user-select:none}.sidebar .brand .mark{margin-right:9px}.nav-item{position:relative;display:block;width:100%;text-align:left;background:none;border:none;color:var(--txt-2);font-family:var(--font-ui);font-size:14px;letter-spacing:-.012em;padding:10px 14px;border-radius:10px;cursor:pointer;margin-bottom:2px;transition:color .25s var(--ease)}.nav-item:hover{color:var(--txt)}.nav-item.active{color:var(--txt);font-weight:500}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-pill{position:absolute;inset:0;background:var(--fill);border-radius:10px;z-index:-1}.sidebar .foot{margin-top:auto;padding:14px;font-size:12px;color:var(--txt-3);line-height:1.8}.sidebar .foot button{background:none;border:none;padding:0;color:var(--red);font-size:13px;cursor:pointer;font-family:var(--font-ui);opacity:.85;transition:opacity .2s var(--ease)}.sidebar .foot button:hover{opacity:1}.content{flex:1;min-width:0;padding:52px 56px 96px;max-width:1000px}@keyframes settle{0%{opacity:0;transform:translateY(8px)}}.content-inner{animation:settle .4s var(--ease)}.content h1{text-align:left;font-size:24px;margin-bottom:6px}.content .crumb{color:var(--txt-2);font-size:13.5px;margin-bottom:32px;max-width:60ch}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px}.toolbar input[type=search]{background:var(--fill);border:none;border-radius:10px;padding:10px 15px;font-size:14px;color:var(--txt);font-family:var(--font-ui);outline:none;width:300px;transition:background .2s var(--ease),box-shadow .2s var(--ease)}.toolbar input[type=search]::placeholder{color:var(--txt-3)}.toolbar input[type=search]:focus{background:var(--fill-active)}.toolbar input[type=search]:focus-visible{box-shadow:0 0 0 2px var(--accent)}.toolbar .spacer{flex:1}.btn-sm{height:36px;padding:0 18px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:13.5px;font-weight:500;letter-spacing:-.012em;font-family:var(--font-ui);cursor:pointer;transition:background .2s var(--ease),transform .12s var(--ease),opacity .2s var(--ease)}.btn-sm:hover{background:var(--accent-hover)}.btn-sm:active{transform:scale(.97)}.btn-sm:disabled{opacity:.4;cursor:default;transform:none}.btn-sm.ghost{background:var(--fill);color:var(--txt-2)}.btn-sm.ghost:hover{background:var(--fill-active);color:var(--txt)}.btn-sm:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.table-wrap{border-radius:var(--surface-radius);overflow-x:auto;background:var(--fill);animation:settle .4s var(--ease)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:12px;font-weight:500;color:var(--txt-3);padding:14px 18px 10px}.table td{padding:13px 18px;border-top:1px solid var(--separator);vertical-align:baseline;transition:background .18s var(--ease)}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:var(--fill-active)}.table .mono{font-family:var(--font-mono);font-size:12.5px}.table .dim{color:var(--txt-2)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;vertical-align:1px;background:var(--txt-3)}.status-dot.ok{background:var(--green)}.status-dot.warn{background:var(--yellow)}.status-dot.bad{background:var(--red)}.panel{background:var(--fill);border-radius:var(--surface-radius);padding:24px;margin-bottom:22px;animation:settle .32s var(--ease)}.panel h3{font-size:15px;font-weight:600;letter-spacing:-.015em;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px 16px;margin-bottom:16px}.form-grid label{display:block;font-size:12.5px;color:var(--txt-2);margin-bottom:6px}.form-grid input,.form-grid select{width:100%;background:var(--bg);border:none;border-radius:10px;padding:10px 13px;font-size:14px;color:var(--txt);font-family:var(--font-ui);outline:none;transition:box-shadow .2s var(--ease)}.form-grid input::placeholder{color:var(--txt-3)}.form-grid input:focus-visible,.form-grid select:focus-visible{box-shadow:0 0 0 2px var(--accent)}.row-actions{display:flex;gap:14px;flex-wrap:wrap}.link-action{background:none;border:none;padding:0;color:var(--accent);font-size:13px;cursor:pointer;font-family:var(--font-ui);letter-spacing:-.012em;opacity:.9;transition:opacity .2s var(--ease)}.link-action:hover{opacity:1}.link-action.danger{color:var(--red)}.list{background:var(--fill);border-radius:var(--surface-radius);overflow:hidden;margin-bottom:20px}.row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 18px}.row+.row,.list details{border-top:1px solid var(--separator)}.row .k{color:var(--txt-2);font-size:15px;flex-shrink:0}.row .v{font-size:15px;text-align:right;overflow-wrap:anywhere}.list details summary{padding:13px 18px;color:var(--txt-2);font-size:15px;cursor:pointer;list-style:none;transition:color .2s var(--ease)}.list details summary:hover{color:var(--txt)}.list details summary:after{content:"›";float:right;color:var(--txt-3);transition:transform .25s var(--ease)}.list details[open] summary:after{transform:rotate(90deg)}.perm-list{columns:2;list-style:none;padding:0 18px 16px;font-family:var(--font-mono);font-size:12px;color:var(--txt-2)}.perm-list li{padding:2px 0}.tree{list-style:none}.tree li{padding:1px 0}.tree .node{display:flex;align-items:baseline;gap:10px;padding:8px 14px;border-radius:10px;transition:background .18s var(--ease)}.tree .node:hover{background:var(--fill)}.tree .node .code{font-family:var(--font-mono);font-size:12px;color:var(--txt-3)}.tree .node .archived{color:var(--txt-3);text-decoration:line-through}.tree ul{margin-left:24px;border-left:1px solid var(--separator);padding-left:12px;list-style:none}.tree .row-actions{opacity:0;transition:opacity .2s var(--ease)}.tree .node:hover .row-actions,.tree .node:focus-within .row-actions{opacity:1}.flash-ok{color:var(--green);font-size:13.5px;margin-bottom:14px}.empty{color:var(--txt-3);padding:44px;text-align:center;font-size:14px}@media(max-width:480px){.perm-list,.codes{columns:1;grid-template-columns:1fr}.content{padding:32px 20px 64px}.sidebar{display:none}}
