a{color: inherit}.content{max-width: 1120px}.side .nav a{display: flex;align-items: center;gap: 10px;width: 100%;color: var(--ink-2);font: 500 14px system-ui,sans-serif;padding: 9px 10px;border-radius: 9px;text-decoration: none}.side .nav a:hover{background: var(--soft);color: var(--ink)}.side .nav a[aria-current="page"]{background: var(--soft);color: var(--ink);font-weight: 600}.side .nav svg{width: 18px;height: 18px;fill: none;stroke: currentColor;stroke-width: 1.8;stroke-linecap: round;stroke-linejoin: round;flex: none}.brand small{display: block;font: 500 11.5px system-ui,sans-serif;color: var(--muted);margin-top: 3px;letter-spacing: 0}.who{margin-top: auto;display: grid;gap: 8px;padding: 12px;border-radius: 12px;background: var(--soft);font-size: 12.5px;color: var(--ink-2)}.who b{color: var(--ink);font-weight: 600;word-break: break-all}.who .btn{justify-self: start;padding: 6px 10px;background: var(--surface)}h1{font-size: 24px;margin: 0 0 4px}h2{font-size: 15px;margin: 0 0 12px}.page-head{display: flex;align-items: flex-end;justify-content: space-between;gap: 16px;flex-wrap: wrap;margin-bottom: 18px}input,select,textarea{background: var(--surface);border: 1px solid var(--line)}textarea{font: 13.5px/1.5 system-ui,sans-serif;color: var(--ink);border-radius: 10px;padding: 9px 12px;width: 100%;resize: vertical}dialog:has(textarea){width: min(640px,calc(100vw - 32px))}select{width: auto}.field{display: grid;gap: 6px;font-size: 12.5px;color: var(--ink-2)}.btn.accent{background: var(--accent);color: #111317}.btn.small{padding: 6px 10px;font-size: 12.5px}.btn.danger{color: var(--bad)}.btn.big{padding: 12px 18px;font-size: 15px;width: 100%}.chip{display: inline-flex;align-items: center;gap: 6px;font: 600 11.5px/1 system-ui,sans-serif;padding: 5px 8px;border-radius: 999px;background: var(--soft);color: var(--ink-2);white-space: nowrap}.chip.ok{background: #dcfce7;color: #166534}.chip.warn{background: #fef3c7;color: #92400e}.chip.bad{background: #fde2e2;color: #991b1b}@media (prefers-color-scheme: dark){.chip.ok{background: #12351f;color: #86efac}.chip.warn{background: #3a2c09;color: #fcd34d}.chip.bad{background: #3b1414;color: #fca5a5}}.login{min-height: calc(100vh - 5px);display: grid;place-items: center;padding: 24px 16px}.login .card{width: 100%;max-width: 420px;padding: 28px}.login.wide .card{max-width: 560px}.login .brand{padding: 0;margin-bottom: 18px}.login form{display: grid;gap: 12px;margin-top: 16px}.or{display: flex;align-items: center;gap: 10px;color: var(--muted);font-size: 12px;margin: 16px 0 12px}.or::before,.or::after{content: "";flex: 1;height: 1px;background: var(--line)}.code-input{font: 600 22px ui-monospace,"SF Mono",Menlo,monospace !important;letter-spacing: 0.3em;text-align: center}.factor{margin-top: 18px;padding-top: 16px;border-top: 1px solid var(--line)}.factor > div{display: grid;gap: 10px;justify-items: start}.factor > div > .between{justify-self: stretch}.factor h2{margin: 0}.qr{display: grid;grid-template-columns: 168px 1fr;gap: 16px;align-items: center}.qr .img{background: #fff;border-radius: 10px;padding: 6px;line-height: 0}.qr .img svg{width: 100%;height: auto}.secret{font: 500 13px ui-monospace,"SF Mono",Menlo,monospace;word-break: break-all;background: var(--soft);padding: 6px 8px;border-radius: 8px;user-select: all}.done{color: var(--ok);font-weight: 600;font-size: 13px}.stats{display: grid;grid-template-columns: repeat(auto-fill,minmax(150px,1fr));gap: 10px}.stat{padding: 12px 14px;border-radius: 12px;background: var(--soft)}.stat b{display: block;font: 700 22px/1.2 system-ui,sans-serif;font-variant-numeric: tabular-nums}.stat span{font-size: 12px;color: var(--ink-2)}.regions{display: grid;gap: 14px}.regions > .card + .card,.stack > .card + .card,.grid2 > .card + .card{margin-top: 0}.nodes{display: flex;flex-wrap: wrap;gap: 8px}.node{display: inline-flex;align-items: center;gap: 7px;font-size: 12.5px;color: var(--ink-2);padding: 5px 9px;border-radius: 8px;background: var(--soft)}.filters{display: flex;flex-wrap: wrap;gap: 8px;align-items: center}.filters input[type="search"]{width: 280px}.table-wrap{overflow-x: auto}table{font-size: 13px}td{vertical-align: top}td.num,th.num{text-align: right;font-variant-numeric: tabular-nums;white-space: nowrap}td.nowrap{white-space: nowrap}td .sub{display: block;color: var(--ink-2);font-size: 12px}tr.link{cursor: pointer}tr.link:hover td{background: var(--soft)}.mono{font-family: ui-monospace,"SF Mono",Menlo,monospace;font-size: 12px}.kv{display: grid;grid-template-columns: 170px 1fr;gap: 8px 16px;font-size: 13.5px;margin: 0}.kv dt{color: var(--ink-2)}.kv dd{margin: 0}.cell-actions{display: flex;flex-direction: column;align-items: flex-start;gap: 6px}.cell-actions .btn{white-space: nowrap}.actions{display: flex;flex-wrap: wrap;gap: 8px;align-items: center}.actions input[type="number"]{width: 80px}.empty{color: var(--ink-2);font-size: 13px;padding: 18px 0 6px;text-align: center}.crumbs{font-size: 13px;color: var(--ink-2);margin-bottom: 6px}.crumbs a{text-decoration: none}.crumbs a:hover{text-decoration: underline}.link-box{display: flex;gap: 8px;margin-top: 10px}.link-box input{font: 12px ui-monospace,"SF Mono",Menlo,monospace}.ok-text{color: var(--ok);font-size: 13px}.err{color: var(--bad);font-size: 13px;margin: 8px 0 0}dialog{border: 0;border-radius: 16px;padding: 0;background: var(--surface);color: var(--ink);width: min(440px,calc(100vw - 32px));box-shadow: 0 24px 60px -20px rgba(0,0,0,0.45)}dialog::backdrop{background: rgba(17,19,23,0.4)}dialog form{display: grid;gap: 12px;padding: 22px}dialog h2{margin: 0}dialog .row{justify-content: flex-end;margin-top: 6px}@media (max-width: 860px){.app{grid-template-columns: 1fr}.side{position: static;height: auto;border-right: 0;border-bottom: 1px solid var(--line)}.nav{grid-template-columns: repeat(auto-fill,minmax(150px,1fr))}.content{padding: 24px 16px 48px}.qr{grid-template-columns: 1fr}.qr .img{max-width: 200px}.kv{grid-template-columns: 1fr;gap: 2px}.kv dd{margin-bottom: 8px}.filters input[type="search"]{width: 100%}}
