:root{--ink:#14161a;--paper:#f4f2ee;--signal:#e07a24;--bg:#0f1114;--bg-2:#14161a;--panel:#15181c;--text:#ece9e2;--muted:#9a9ea8;--line:#23262b;--line-2:#2f333a;--rail:#0b0d10;--rail-text:#9a9ea8;--rail-active:#f4f2ee;--rail-hover:#15181c;--chip:#23262b;--good:#4fb27a;--warn:#d6a23a;--bad:#e2634f;--info:#6c9bd2;--focus:#e07a24;--field:#0e1013;--field-line:#5f656f;--field-line-hover:#7f8692;--field-text:#f4f2ee;--field-placeholder:#8a8f99;--s1:4px;--s2:8px;--s3:16px;--s4:24px;--font-display:"Archivo", "Arial", sans-serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:dark}:root[data-theme=light]{--bg:#f4f2ee;--bg-2:#ece9e2;--panel:#fbfaf7;--text:#14161a;--muted:#5f6370;--line:#d9d5cc;--line-2:#c9c4b9;--rail:#14161a;--rail-text:#c9c6bf;--rail-active:#f4f2ee;--rail-hover:#1e2126;--good:#2f8f5b;--warn:#b98418;--bad:#c2412d;--info:#3a6ea5;--chip:#e8e4db;--focus:#e07a24;--field:#ffffff;--field-line:#8b8779;--field-line-hover:#6a665b;--field-text:#14161a;--field-placeholder:#7a7f8a;color-scheme:light}*{box-sizing:border-box}html{height:100%;background:var(--bg);overscroll-behavior-y:none;overflow-x:hidden;-webkit-text-size-adjust:100%}body{position:fixed;inset:0;width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.45;-webkit-tap-highlight-color:transparent}#root{position:fixed;top:0;left:0;width:100%;height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}@media(max-width:600px){#root{transform:translateZ(0)}}html{touch-action:pan-x pan-y}button,a,[role=button],.tile,.chip{touch-action:manipulation}.topbar,.rail,.nav,.tiles,.tile{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}img{-webkit-user-drag:none}@media(max-width:600px){*{scrollbar-width:none}::-webkit-scrollbar{display:none}}@media(max-width:600px){input,textarea,select,.input{font-size:16px}}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}button:disabled{cursor:default;opacity:.6}a{color:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;height:100%;min-height:0;overflow:hidden}.rail{background:var(--rail);color:var(--rail-text);padding:20px 14px;display:flex;flex-direction:column;gap:18px;height:100%;min-height:0;overflow:auto;overscroll-behavior-y:contain}.wordmark{font-family:var(--font-display);font-stretch:125%;font-weight:600;letter-spacing:.16em;color:var(--paper);font-size:15px;display:flex;align-items:center;gap:10px;padding:2px 8px;text-decoration:none}.wordmark svg{width:19px;height:22px;flex:none}.tenant{font-size:12px;color:var(--rail-text);padding:0 8px;margin-top:-10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav{display:flex;flex-direction:column;gap:2px}.nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:6px;text-align:left;color:var(--rail-text);width:100%;text-decoration:none}.nav a:hover{background:var(--rail-hover)}.nav a[aria-current=page]{color:var(--rail-active);background:var(--rail-hover);box-shadow:inset 3px 0 0 var(--signal)}.nav svg{width:16px;height:16px;flex:none;opacity:.8}.rail .spacer{flex:1}.live{display:flex;align-items:center;gap:7px;font-size:12px;padding:0 10px;font-variant-numeric:tabular-nums}.live i{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 25%,transparent);flex:none}.live[data-state=connecting] i,.live[data-state=reconnecting] i{background:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 25%,transparent)}.live[data-state=off] i{background:var(--muted);box-shadow:none}.me{display:flex;align-items:center;gap:10px;padding:8px 10px;border-top:1px solid #23262b;font-size:12px}.me .who{flex:1;min-width:0}.me .who>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:26px;height:26px;border-radius:50%;background:var(--signal);color:var(--ink);display:grid;place-items:center;font-weight:600;font-size:12px;flex:none;text-transform:uppercase}.me .btn.quiet{padding:4px 6px;font-size:12px;color:var(--rail-text)}.app.member{grid-template-columns:1fr;grid-template-rows:auto 1fr}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:8px 16px;background:var(--rail);color:var(--rail-text);border-bottom:1px solid var(--line)}.topbar-left{grid-column:1;justify-self:start;display:flex;align-items:center;gap:6px;min-width:0}.topbar .wordmark{padding:0;display:inline-flex;align-items:center;gap:8px}.topbar .btn.layout{padding:6px;margin-left:6px;color:var(--rail-text);display:inline-flex}.topbar .btn.layout svg{width:16px;height:16px}.topbar .btn.layout:hover{color:var(--rail-active)}.screen-title{grid-column:2;min-width:0;text-align:center;display:flex;flex-direction:column;align-items:center;line-height:1.2}.screen-title h1{font-size:17px;margin:0;color:var(--rail-active);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw}.screen-title .muted{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw}.topbar-right{grid-column:3;justify-self:end;display:flex;align-items:center;gap:10px}.bar-status{display:flex;align-items:center;gap:12px;font-size:12px}.bar-status .who{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25;max-width:220px}.bar-status .who>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.btn.signal.small{color:var(--signal);padding:4px 10px;font-size:12px}.btn.signal.small:hover:not(:disabled){border-color:var(--signal)}details.menu.account .btn.signal.small{align-self:flex-start;margin:4px 10px 6px}@media(min-width:701px){.narrow-only{display:none!important}}@media(max-width:700px){.wide-only{display:none!important}}details.menu.account>summary{display:inline-flex;position:relative;border-radius:50%}details.menu.account>summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}details.menu.account .avatar{width:32px;height:32px;font-size:13px}details.menu.account .dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;border:2px solid var(--rail);background:var(--warn)}details.menu.account .dot[data-state=off]{background:var(--muted)}details.menu.account .menu-items{min-width:230px;padding:6px}.menu-head{display:flex;flex-direction:column;gap:2px;padding:8px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.menu-head span{font-size:12px}.menu-line{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px}.menu-line.live i{width:8px;height:8px;border-radius:50%;background:var(--good);flex:none}.menu-line.live[data-state=connecting] i,.menu-line.live[data-state=reconnecting] i{background:var(--warn)}.menu-line.live[data-state=off] i{background:var(--muted)}.edge .routes{margin:6px 0 0;padding:0;list-style:none;font-family:var(--font-mono);font-size:12px;line-height:1.6}.edge .routes li{overflow-wrap:anywhere}.edge details{margin-top:6px}.edge .kv .chip{font-family:var(--font-mono);font-size:11px}.edge .kv .networks{margin-top:8px}.edgeform .field{margin:12px 0 8px}.edgeform .field small{display:block}.edgeform .note{margin:8px 0}.edge summary{cursor:pointer;font-size:13px;list-style:none;display:flex;align-items:center;gap:8px}.edge .networks{font-family:var(--font-mono);font-size:12.5px;margin:6px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}.edge .networks li{padding:1px 8px;border-radius:4px;background:var(--chip)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px 24px;max-width:820px}.payments .panel{max-width:none}.identity{display:flex;align-items:center;gap:14px;margin-bottom:16px}.identity h2{font-family:var(--font-display);font-stretch:100%;font-weight:600;font-size:18px;margin:0}.avatar.big{width:44px;height:44px;font-size:17px}.subform{margin-top:12px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg-2);max-width:420px}.subform .field:first-child{margin-top:0}.subform .actions{margin-top:4px}.list>div.binding{display:block;padding:0}.binding .bindrow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px}.binding .who{display:flex;flex-direction:column;min-width:0}.binding .who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.binding .who .muted{font-size:12px}.binding .disclose{font-size:12px;padding:4px 8px}.binding .binddetails{padding:0 12px 12px 48px;display:flex;flex-direction:column;gap:8px}.binding .binddetails .kv{margin:0;font-size:13px}.binding .binddetails .actions{display:flex;flex-wrap:wrap;gap:6px}.binding .pinform{padding:0}details.binding.revoked summary{cursor:pointer;padding:10px 12px;font-size:13px;color:var(--muted);list-style:none;display:flex;align-items:center;gap:8px}details.binding.revoked .bindrow{border-top:1px solid var(--line);opacity:.75}.binding .pinform .input{max-width:150px;flex:0 1 150px}.binding .pinform small{flex-basis:100%}main{padding:24px 28px 40px;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain}.head{display:grid;grid-template-columns:1fr auto auto;grid-template-areas:"sub actions gear";column-gap:16px;row-gap:var(--s2);align-items:center;margin-bottom:16px}.head>:first-child{grid-area:sub;min-width:0}.head>.actions{grid-area:actions;justify-content:flex-end}.head>.gear{grid-area:gear;display:flex;align-items:center;gap:var(--s1)}.head>.gear button.info{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent}.head>.gear button.info .info-glyph{font-size:22px}.head>.gear button.info:hover{border-color:var(--line-2)}.head>.gear .btn.icon{border-color:transparent;background:none;color:var(--muted)}.head>.gear .btn.icon svg{width:22px;height:22px}.head>.gear .btn.icon:hover{color:var(--text);border-color:var(--line-2)}h1{font-family:var(--font-display);font-stretch:100%;font-weight:600;font-size:20px;letter-spacing:.02em;margin:0;text-wrap:balance}.sub{color:var(--muted);margin-top:4px}.actions{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center}.btn{padding:8px 14px;border-radius:6px;border:1px solid var(--field-line);background:var(--panel);color:var(--text);font-weight:500;transition:border-color .12s,background-color .12s}.btn:hover:not(:disabled){border-color:var(--field-line-hover);background:var(--bg-2)}.btn.primary{background:var(--signal);border-color:var(--signal);color:var(--ink)}.btn.primary:hover:not(:disabled){background:color-mix(in srgb,var(--signal) 88%,white);border-color:color-mix(in srgb,var(--signal) 88%,white)}.btn.quiet{border-color:transparent;color:var(--muted);background:transparent}.btn svg{width:15px;height:15px;flex:none;vertical-align:-3px;margin-right:6px}.btn.icon{padding:7px;line-height:0}.btn.icon svg{margin:0}.btn.quiet:hover:not(:disabled){border-color:transparent;background:var(--chip);color:var(--text)}.btn.danger{color:var(--bad)}.btn:disabled{opacity:.55;cursor:default}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px}.stat b{display:block;font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.stat span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.search{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.search input,.input{flex:1;max-width:360px;padding:8px 10px;border-radius:6px;border:1px solid var(--field-line);background:var(--field);color:var(--field-text);font:inherit;min-width:0;transition:border-color .12s}.search input:hover,.input:hover{border-color:var(--field-line-hover)}.search input:focus,.input:focus{outline:2px solid var(--focus);outline-offset:1px;border-color:var(--focus)}.input::placeholder,.search input::placeholder{color:var(--field-placeholder)}.input:disabled{opacity:.6;background:var(--panel)}.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:640px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--bg-2)}td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}tr.row{cursor:pointer}tr.row:hover td,tr.row:focus-within td{background:color-mix(in srgb,var(--signal) 7%,transparent)}tr.row td .rowlink{all:unset;cursor:pointer;font-weight:600}.empty{padding:28px 12px;text-align:center;color:var(--muted)}.mono{font-family:var(--font-mono);font-size:12.5px}.num{font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:500;background:var(--chip);white-space:nowrap}.pill i{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}.pill.good i{background:var(--good)}.pill.bad i{background:var(--bad)}.pill.warn i{background:var(--warn)}.pill.info i{background:var(--info)}.chips{display:flex;gap:6px;flex-wrap:wrap}.stat-button{text-align:left;cursor:pointer;color:inherit;font:inherit}.stat-button:hover,.stat-button.on{border-color:var(--signal)}.kind-filter{margin:10px 0 4px}.kind-filter .chip{cursor:pointer;border:1px solid transparent;font-size:13px;padding:3px 10px;border-radius:999px}.kind-filter .chip.on{border-color:var(--signal);background:color-mix(in srgb,var(--signal) 14%,var(--chip))}.add-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 14px;border-bottom:1px solid var(--line);padding-bottom:10px}.add-tab{padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-size:14px}.add-tab.on{border-color:var(--signal);background:color-mix(in srgb,var(--signal) 14%,transparent)}.add-section h3{margin-top:16px}.btn.small{padding:2px 10px;font-size:12px}.chip{padding:1px 8px;border-radius:4px;background:var(--chip);font-size:12px}.chip.warn{background:transparent;box-shadow:inset 0 0 0 1px var(--warn);color:var(--text)}.chip.via{background:transparent;border:1px dashed var(--line-2);color:var(--muted)}.chip.via small{margin-left:6px;font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;opacity:.85}.muted{color:var(--muted)}.mt-0{margin-top:0}.mt-1{margin-top:var(--s1)}.mt-2{margin-top:var(--s2)}.mt-3{margin-top:var(--s3)}.mt-4{margin-top:var(--s4)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--s1)}.mb-2{margin-bottom:var(--s2)}.mb-3{margin-bottom:var(--s3)}.mb-4{margin-bottom:var(--s4)}.my-1{margin-top:var(--s1);margin-bottom:var(--s1)}.my-2{margin-top:var(--s2);margin-bottom:var(--s2)}.my-3{margin-top:var(--s3);margin-bottom:var(--s3)}.ml-1{margin-left:var(--s1)}.ml-2{margin-left:var(--s2)}.ml-3{margin-left:var(--s3)}.ml-4{margin-left:var(--s4)}.m-0{margin:0}.block{display:block}.sm{font-size:12px}.sm13{font-size:13px}.under-check{display:block;margin:var(--s1) 0 0 24px}.ul-in{padding-left:18px}.al{font-family:var(--font-mono);font-size:11.5px;padding:1px 6px;border:1px solid var(--line-2);border-radius:4px;white-space:nowrap}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);background:var(--panel);border-left:1px solid var(--line);box-shadow:-12px 0 40px #0000002e;transform:translate(102%);transition:transform .22s ease,visibility 0s linear .22s;padding:22px 24px calc(24px + env(safe-area-inset-bottom,0px));overflow:auto;z-index:20;visibility:hidden}.drawer.open{transform:none;visibility:visible;transition:transform .22s ease,visibility 0s}@media(prefers-reduced-motion:reduce){.drawer{transition:none}}.drawer h2{font-family:var(--font-display);font-stretch:100%;font-weight:600;font-size:17px;margin:0}.drawer:focus{outline:none}.dhead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.kv{display:grid;grid-template-columns:130px 1fr;gap:8px 14px;font-size:13.5px;margin:12px 0}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.section{margin-top:var(--s4)}.section h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-weight:600}.list{border:1px solid var(--line);border-radius:8px;overflow:hidden;list-style:none;margin:0;padding:0}.list li{padding:8px 12px;border-top:1px solid var(--line);justify-content:space-between}.list li:first-child{border-top:0}.row-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.row-head h3{margin:0}.list>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.list>div:last-child{border-bottom:0}.list .method{display:flex;align-items:center;gap:10px;min-width:0}.glyph{width:26px;height:26px;border-radius:6px;background:var(--chip);display:grid;place-items:center;flex:none;color:var(--muted)}.glyph svg{width:15px;height:15px}.why{border:1px solid var(--line);border-radius:8px;background:var(--bg-2);padding:12px 14px}.why .verdict{display:flex;align-items:center;gap:10px;font-weight:600;margin-bottom:10px;flex-wrap:wrap}.why .verdict .pill{font-size:12px}.chain{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.chain li{display:grid;grid-template-columns:22px 1fr;gap:10px;padding:6px 0;position:relative}.chain li:before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;background:var(--line-2)}.chain li i{width:22px;height:22px;border-radius:50%;background:var(--panel);border:2px solid var(--line-2);display:grid;place-items:center;font-size:11px;position:relative;z-index:1;font-style:normal}.chain li.ok i{border-color:var(--good);color:var(--good)}.chain li.first i{border-color:var(--bad);color:var(--bad)}.chain small{display:block;color:var(--muted)}.asof{color:var(--muted);font-size:12px;margin-top:8px}.audit{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);overflow:hidden}.ev{display:grid;grid-template-columns:76px 1fr auto auto;gap:12px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);cursor:pointer}.ev .say{font-weight:500}.ev .what .action{display:block;font-size:11.5px;margin-top:1px}.chip.run{margin-left:6px;font-family:var(--font-mono);font-size:11px}.audit-day{padding:7px 12px 5px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--bg-2);border-bottom:1px solid var(--line)}.audit-bar{display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;margin:4px 0 2px}.audit-cats{margin:0 0 10px;flex-wrap:wrap}.run-rows{margin:0 0 8px}details.menu{position:relative;display:inline-block}details.menu>summary{list-style:none;cursor:pointer}details.menu>summary::-webkit-details-marker{display:none}details.menu .menu-items{position:absolute;right:0;top:calc(100% + 4px);z-index:20;display:flex;flex-direction:column;align-items:stretch;min-width:170px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 8px 24px #00000040}details.menu .menu-items .btn{justify-content:flex-start;text-align:left}.ev .zone{min-width:0}.ev .zone .chip,.chip.public,.chip.zone-public,.chip.zone-trusted,.chip.readonly{font-family:var(--font-mono);font-size:11px}.chip.public,.chip.zone-public{background:color-mix(in srgb,var(--signal) 22%,var(--chip))}.ev .what .client{display:block;font-size:11.5px}.ev:last-child{border-bottom:0}.ev:hover,.ev.open{background:color-mix(in srgb,var(--signal) 6%,transparent)}.ev .action{overflow-wrap:anywhere;min-width:0}.ev .target .muted{font-size:12px}.evdetail{padding:8px 12px 12px 94px;border-bottom:1px solid var(--line);background:var(--bg-2);font-size:12px}.evdetail dl{display:grid;grid-template-columns:max-content 1fr;gap:3px 12px;margin:0}.evdetail dt{color:var(--muted)}.evdetail dd{margin:0;overflow-wrap:anywhere}.evdetail pre{margin:8px 0 0;font-family:var(--font-mono);font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.ev.new{animation:flash 1.6s ease-out}@keyframes flash{0%{background:color-mix(in srgb,var(--signal) 22%,transparent)}to{background:transparent}}@media(prefers-reduced-motion:reduce){.ev.new{animation:none}}.ev .t{font-family:var(--font-mono);font-size:12px;color:var(--muted)}.ev .what{min-width:0;overflow-wrap:anywhere}.ev .outcome{font-size:12px}.banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding:10px 14px;border:1px solid var(--signal);border-radius:8px;background:color-mix(in srgb,var(--signal) 10%,transparent)}.expiring{color:var(--bad);font-weight:600}.nowrap{white-space:nowrap}td small{display:block;font-size:12px}.calist>div{align-items:flex-start;flex-wrap:wrap}.calist .ca{min-width:0;flex:1}.calist .ca b{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.calist .meta{display:flex;gap:6px 10px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:3px;align-items:center}.calist .retirewarn{flex-basis:100%;margin-top:6px}.settings-section .list{margin:10px 0 4px}.steps{margin:8px 0 0;padding-left:20px;color:var(--muted)}.steps li{margin:4px 0}.drawer h3{font-size:13px;margin:18px 0 6px}.drawer h3:first-of-type{margin-top:4px}textarea.input.cmd{width:100%;max-width:none;font-family:var(--font-mono);font-size:12.5px;resize:none;overflow-wrap:anywhere}.code{margin:6px 0 0;padding:8px 10px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;font-family:var(--font-mono);font-size:12px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow:auto}.output summary{cursor:pointer;font-size:12px;color:var(--muted);margin-top:4px;list-style:none;display:flex;align-items:center;gap:8px}.movers .btn{padding:4px 8px;font-size:12px}.settings-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;grid-auto-rows:1fr;align-items:stretch}.settings-sections>.settings-section{display:flex;flex-direction:column}.settings-sections>.settings-section>.actions:last-child,.settings-sections>.settings-section>.actions.bottom{margin-top:auto;padding-top:8px}.drawer .settings-sections{grid-template-columns:1fr;grid-auto-rows:auto}td.chev{width:22px;color:var(--muted);padding-right:0}.caret{display:inline-block;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid currentColor;opacity:.8;transition:transform .15s;vertical-align:middle}.caret.open{transform:rotate(90deg)}@media(prefers-reduced-motion:reduce){.caret{transition:none}}tr.detail td{padding:0;border-bottom:1px solid var(--line);background:var(--bg-2)}.device-detail{padding:12px 16px 14px 34px;font-size:12.5px;cursor:default}.device-detail .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 24px}.device-detail h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.device-detail .kv.small{margin:0;grid-template-columns:max-content 1fr;gap:3px 10px;font-size:12px}.device-detail .kv.small dd{margin:0;overflow-wrap:anywhere}.tile-category{margin:0 0 22px}.tile-category h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:18px 14px}.tile{display:flex;gap:12px;align-items:center;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;text-decoration:none;color:inherit;min-height:72px}@media(hover:hover){.tile:hover{border-color:var(--signal)}}.tile:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.tile-icon{width:40px;height:40px;border-radius:10px;background:var(--bg-2);display:grid;place-items:center;flex:none;font-weight:600;color:var(--muted);font-size:15px}.tile-icon svg{width:20px;height:20px}.tile-text{display:flex;flex-direction:column;gap:2px;min-width:0}.tile-text .muted{font-size:12px}.tile.sq{display:block;position:relative;padding:0;background:none;border:0;border-radius:0;min-height:0}.tile-link{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:inherit;text-align:center;border-radius:12px}.tile-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.tile.sq .tile-icon{width:100%;height:auto;aspect-ratio:1;border-radius:22%;background:var(--panel);border:1px solid var(--line);font-size:34px;transition:border-color .12s}.tile.sq .tile-icon svg{width:44%;height:44%}@media(hover:hover){.tile.sq .tile-link:hover .tile-icon{border-color:var(--signal);color:var(--signal)}}.tile.sq .tile-icon.image{border:0}.tile.sq .tile-text{align-items:center;font-size:14px;padding:0 4px}.tile.sq .tile-text b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}button.info.tile-info{position:absolute;top:4%;right:4%;z-index:1;font-size:15px;line-height:1;width:26px;height:26px;padding:0;border-radius:50%;background:color-mix(in srgb,var(--bg) 70%,transparent);color:var(--text);transition:opacity .12s}button.info.tile-info:hover{background:var(--bg)}@media(hover:hover){.tile.sq .tile-info{opacity:0}.tile.sq:hover .tile-info,.tile.sq:focus-within .tile-info,.tile.sq .tile-info:focus-visible{opacity:1}}@media(hover:none){button.info.tile-info{background:none;color:var(--muted);opacity:.55;font-size:14px}}.public{min-height:100%;display:grid;grid-template-rows:auto 1fr}.public main{padding:24px 28px 40px}.topnav{display:flex;gap:4px}.topnav a{color:var(--rail-text);text-decoration:none;padding:6px 10px;border-radius:6px;font-size:13px}.topnav a[aria-current=page]{background:#ffffff14}.settings-section{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px}.settings-section h3{margin:0 0 6px;font-size:15px}.settings-section p{margin:0;color:var(--muted)}.settings-section .row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.settings-section tr.row{display:table-row;margin-top:0}.ver{font-family:var(--font-mono);font-size:22px;font-weight:500}.progress{height:6px;background:var(--chip);border-radius:3px;overflow:hidden;margin-top:12px}.progress i{display:block;height:100%;width:0;background:var(--signal);transition:width .6s}.progress.busy i{width:40%;animation:slide 1.2s ease-in-out infinite alternate}@keyframes slide{0%{margin-left:0}to{margin-left:60%}}@media(prefers-reduced-motion:reduce){.progress.busy i{animation:none;width:100%;opacity:.5}}.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:8px;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:30;max-width:min(560px,calc(100% - 32px))}.toast.show{opacity:1}.error{color:var(--bad);font-size:13px}.form-error{border-left:3px solid var(--bad);padding:6px 10px;background:var(--bg-2);border-radius:0 6px 6px 0;font-size:13px;margin-top:12px}.login .setup-offer{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px;align-items:stretch}.login .setup-offer .note{margin:0}.login form.setup .field label{margin:0 0 5px}.login form.setup .field{margin:14px 0}.login form.setup .actions{justify-content:space-between}.login{min-height:100%;display:grid;place-items:center;padding:24px;position:relative}.login .dismiss{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:16px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--muted);font-size:22px;line-height:1;text-decoration:none;border:1px solid var(--line);background:var(--panel)}.login .dismiss:hover{color:var(--text);border-color:var(--signal)}.login>form,.login .denied,.login .setup-first,.login .login-wait,.login .stepup-panel{width:min(380px,100%);background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:26px 26px 22px}.login .denied .actions{margin-top:18px}.login .denied .btn.primary{text-decoration:none}.login .wordmark{padding:0;margin-bottom:18px;font-size:16px}.login h1{font-size:18px;margin-bottom:4px}.login label{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:16px 0 6px}.login .input{width:100%;max-width:none;font-size:15px;padding:10px 12px}.login .who{font-family:var(--font-mono);font-size:13px;margin-top:14px;display:flex;justify-content:space-between;align-items:center;gap:8px}.login .actions{margin-top:18px;justify-content:flex-end}.login .alt{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:14px}.login .alt .btn.quiet{font-size:13px;padding:6px 10px}.login .alt .btn{flex:1 1 0;justify-content:center;font-size:13px;padding:8px 10px}.login .or{display:flex;align-items:center;gap:10px;margin-top:18px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.login .or:before,.login .or:after{content:"";flex:1;border-top:1px solid var(--line)}.login form.card-mode h1{text-align:center;margin-bottom:0}.login .tap{padding:22px 12px 4px;gap:10px}.login .type-instead{background:none;border:0;padding:2px 4px;font:inherit;font-size:11.5px;color:var(--muted);opacity:.75;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--muted) 45%,transparent)}.login .type-instead:hover,.login .type-instead:focus-visible{opacity:1;color:var(--text)}.login .forgot{margin-top:8px;font-size:12px;text-align:right}.login .forgot a{color:var(--muted)}.login .forgot a:hover{color:var(--text)}.login .input.mono{font-family:var(--font-mono);letter-spacing:.06em}.boot{min-height:100%;display:grid;place-items:center;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.app{grid-template-columns:1fr}.head{grid-template-columns:1fr auto;grid-template-areas:"sub gear" "actions actions";align-items:start}.head>.sub{align-self:center}.rail{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px}.nav{flex-direction:row;flex-wrap:wrap;width:100%}.nav a{width:auto;padding:7px 10px}.nav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--signal)}.rail .spacer,.rail .live,.rail .me,.rail .tenant{display:none}.topbar{padding:10px 16px;gap:10px}.tiles{grid-template-columns:1fr 1fr 1fr;gap:16px 12px}.public main{padding:16px}.topbar .wordmark .word{display:none}.panel{padding:16px}.evdetail{padding-left:12px}main{padding:16px 16px 32px}.kv{grid-template-columns:1fr}.ev{grid-template-columns:92px 1fr auto;grid-template-rows:auto auto}.ev .t{min-width:0}.ev .t .day{white-space:normal;overflow-wrap:anywhere}.ev .t .day.long{display:none}.ev .t .day.short{display:inline}.ev .what{grid-column:1/-1}.ev .zone{grid-column:3;grid-row:1;justify-self:end}.ev .outcome{grid-column:2;justify-self:start}}.field{margin:var(--s3) 0}.field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:var(--s2);font-weight:600}.field .input{width:100%;max-width:none}.field small{display:block;margin-top:var(--s1);font-size:12px;line-height:1.4}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 12px;margin:4px 0 8px}.field .checks label{display:flex;gap:7px;align-items:center;font-size:13px;text-transform:none;letter-spacing:0;color:var(--text);font-weight:400;margin:0;cursor:pointer}.checks input{accent-color:var(--signal)}.check{display:inline-flex;gap:7px;align-items:flex-start;font-size:13px;color:var(--text);cursor:pointer;white-space:normal;max-width:100%}.check input{flex:none;margin-top:2px;accent-color:var(--signal)}} select.input{appearance:auto}textarea.input{resize:vertical;font-family:inherit}textarea.input.mono{font-family:var(--font-mono)}.masked{-webkit-text-security:disc}.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline:has(>.field){align-items:flex-start}.inline .input{flex:1;min-width:120px}.stack{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.chip button{all:unset;cursor:pointer;margin-left:6px;color:var(--muted);font-size:12px;line-height:1}.chip button:hover{color:var(--bad)}.chip button:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:2px}.token{font-family:var(--font-mono);font-size:13px;width:100%;max-width:none}.note{font-size:12px;color:var(--muted);border-left:3px solid var(--signal);padding:6px 10px;margin:0 0 12px;background:var(--bg-2);border-radius:0 6px 6px 0}.note.warn{border-left-color:var(--warn)}.chip.recovery{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb,var(--warn) 22%,var(--chip))}.tap{display:flex;flex-direction:column;align-items:center;gap:14px;padding:26px 12px 8px;text-align:center;cursor:default}.tap-mark{width:56px;height:66px;opacity:.9}.tap-mark svg{width:100%;height:100%}.tap-text{font-family:var(--font-display);font-weight:600;font-size:20px;letter-spacing:.02em}.tap:focus,.tap:focus-visible{outline:none}fieldset.plain{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.identity .full-name{font-size:13px;margin:-2px 0 2px}.dir-full-name{display:block;margin-top:-2px}.tap-prompt{display:flex;flex-direction:column;align-items:center;gap:10px}@media(prefers-reduced-motion:no-preference){.tap-prompt{animation:tap-pulse 2.4s ease-in-out infinite}}@keyframes tap-pulse{0%,to{opacity:.9}50%{opacity:.45}}.tabs{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--bg-2);margin-bottom:14px}.tabs button{all:unset;cursor:pointer;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;color:var(--muted)}.tabs button[aria-selected=true]{background:var(--panel);color:var(--text);box-shadow:0 1px 2px #00000014}.tabs button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.reqs{background:var(--panel)}.reqs li{display:block;padding:12px 14px}.req-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.req-head b{font-size:14.5px}.req-head .state{margin-left:auto}.req-meta{display:flex;gap:4px 14px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--muted);margin-top:4px}.req-meta .told{display:inline-flex;align-items:center;gap:8px}.req-detail{margin:8px 0 0;font-size:13.5px;white-space:pre-wrap;overflow-wrap:anywhere}.req-answer{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.req-answer .input{flex:1;min-width:160px;max-width:360px}.req-answers{list-style:none;margin:8px 0 0;padding:0;font-size:12.5px;display:flex;flex-direction:column;gap:4px}.req-answers li{padding:0;border:0}.req-answers .muted{margin-left:6px}.rtype small{display:block;margin-top:3px}.copyrows{display:grid;grid-template-columns:max-content minmax(0,1fr) auto;gap:6px 12px;align-items:center;font-size:13px;margin:10px 0 0}.copyrows .k{color:var(--muted)}.copyrows code{font-family:var(--font-mono);font-size:12.5px;overflow-wrap:anywhere;min-width:0}.copyrows .btn.quiet{padding:4px 8px;font-size:12px}.secret{margin:12px 0;padding:12px 14px;border:1px solid var(--signal);border-radius:8px;background:color-mix(in srgb,var(--signal) 10%,transparent)}.secret .note{margin:0 0 8px;border:0;padding:0;background:transparent;color:var(--text);font-size:13px}.secret .inline{margin-top:0}.secret .token{background:var(--panel)}details.setup summary{cursor:pointer;font-weight:600;font-size:15px;list-style:none;display:flex;align-items:center;gap:8px}.settings-section.setup{margin-bottom:16px;max-width:900px}.uris{margin:0;padding:0;list-style:none}.uris li{font-family:var(--font-mono);font-size:12.5px;overflow-wrap:anywhere}.al2{font-size:11.5px;padding:1px 6px;border:1px solid var(--warn);color:var(--warn);border-radius:4px;white-space:nowrap}.emails>div{flex-wrap:wrap}.emails .addr{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 240px}.emails .addr b{overflow-wrap:anywhere}.emails>div>.actions{margin-left:auto}.emails .meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center;font-size:12px}.emails .actions .btn.quiet{padding:4px 8px;font-size:12px}.emails .relabel{flex-basis:100%;padding:0 0 4px}.emails .relabel .input{max-width:200px;flex:0 1 200px}.held{display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 12px;border:1px solid var(--signal);border-radius:8px;background:color-mix(in srgb,var(--signal) 14%,transparent);font-size:13px}.held a{color:var(--signal);font-weight:500}.mail-layout{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:16px;align-items:start}.kinds{background:var(--panel)}.kinds .kind{all:unset;display:block;box-sizing:border-box;width:100%;padding:10px 12px;border-bottom:1px solid var(--line);cursor:pointer}.kinds .kind:last-child{border-bottom:0}.kinds .kind:hover{background:color-mix(in srgb,var(--signal) 6%,transparent)}.kinds .kind[aria-selected=true]{background:color-mix(in srgb,var(--signal) 10%,transparent);box-shadow:inset 3px 0 0 var(--signal)}.kinds .kind:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.kinds .kind b{display:block}.kinds .kind .chips{margin-top:5px}.mail-kind .row-head{align-items:flex-start;flex-wrap:wrap}.mail-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start;margin-top:14px}.mail-editor .field:first-of-type{margin-top:0}textarea.input.mailbody{width:100%;max-width:none;font-family:var(--font-mono);font-size:12.5px;min-height:260px;resize:vertical;overflow-wrap:anywhere}.chips.clickable .chip{cursor:pointer;font-family:var(--font-mono)}.chips.clickable .chip:hover{background:color-mix(in srgb,var(--signal) 30%,var(--chip))}.chips.filters .chip{cursor:pointer;padding:4px 10px}.chips.filters .chip[aria-pressed=true],.range .chip[aria-pressed=true]{border-color:var(--signal);background:color-mix(in srgb,var(--signal) 14%,var(--chip))}.range{display:flex;gap:6px;flex-wrap:wrap}.range .chip{cursor:pointer}.table td.cond{max-width:200px;overflow-wrap:anywhere;font-size:12px}.mail-preview{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:12px 14px;position:sticky;top:12px}.mail-preview h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-weight:600}.mail-preview .subject{margin:0 0 10px;font-size:14px;overflow-wrap:anywhere}.mail-frame{width:100%;height:420px;border:1px solid var(--line);border-radius:6px;background:#f4f2ee}.mail-text{margin:10px 0 0;padding:10px 12px;background:var(--bg-2);border-radius:6px;font-family:var(--font-mono);font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow:auto}td .error{display:block;font-size:12px;margin-top:2px;overflow-wrap:anywhere}@media(max-width:1100px){.mail-editor{grid-template-columns:1fr}.mail-preview{position:static}}@media(max-width:760px){.mail-layout{grid-template-columns:1fr}}.stepup{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--rail-text);padding:6px 10px;flex-wrap:wrap}.stepup .btn.quiet{padding:2px 6px;font-size:12px;color:var(--signal)}.stepup-method{margin:0 0 6px;padding:0 0 14px;border-bottom:1px solid var(--line)}.stepup-method:last-child{border-bottom:0;padding-bottom:0}.stepup-method h3{font-size:13px;margin:14px 0 6px}.stepup-method .actions{margin-top:8px}.login .stepup-panel .stepup-method .field label{margin:12px 0 6px}.login .stepup-panel .alt{justify-content:space-between}.login .stepup-panel .alt .btn{text-decoration:none}.checks.one{grid-template-columns:1fr}.plugin-items{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:4px}.plugin-item .row-head{align-items:flex-start}.plugin-item h3{font-size:15px}.plugin-item h3 .rowlink{all:unset;cursor:pointer;font-weight:600}.plugin-item h3 .rowlink:hover{text-decoration:underline}.plugin-item .meta{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:12px;margin-top:8px}.plugin-item .kv.small{margin:10px 0 0;grid-template-columns:max-content 1fr;gap:5px 10px;font-size:12.5px}.plugin-item .kv.small dd{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.plugin-item .kv.small .btn.quiet{padding:2px 6px;font-size:12px}.plugin-item .actions{margin-top:12px}.chip.tier.rostor{background:color-mix(in srgb,var(--signal) 26%,var(--chip))}.chip.tier.verified{background:color-mix(in srgb,var(--good) 22%,var(--chip))}.chip.cert{background:color-mix(in srgb,var(--info) 24%,var(--chip));font-variant-numeric:tabular-nums}.chip.tier.unreviewed{background:color-mix(in srgb,var(--warn) 22%,var(--chip))}.chip.installed{background:color-mix(in srgb,var(--good) 22%,var(--chip))}.chip.update,.chip.new{background:var(--signal);color:var(--ink);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.note.warn b{display:block;color:var(--text);margin-bottom:4px}.problems{margin:0;padding-left:18px;font-family:var(--font-mono);font-size:12px}.problems li,.problems code{overflow-wrap:anywhere;white-space:normal}.repoform{max-width:560px;margin-bottom:16px}.health{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.scopes{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.scopes li{display:grid;grid-template-columns:64px 1fr;gap:12px;padding:9px 12px;border-top:1px solid var(--line);align-items:center}.scopes li:first-child{border-top:0}.scopes .mark{font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.08em;padding:4px 0;text-align:center;border-radius:6px;border:1px solid var(--line-2);color:var(--muted)}.scopes li.write{background:color-mix(in srgb,var(--signal) 9%,transparent)}.scopes li.write .mark{background:var(--signal);border-color:var(--signal);color:var(--ink)}.scopes li.gone{opacity:.6}.scopes .what{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:13px}.scopes .what .muted{font-size:12px}.scopes .actions-line{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.scopes code{font-family:var(--font-mono);font-size:12.5px;padding:1px 6px;border-radius:4px;background:var(--chip)}.scopes s code{text-decoration:line-through}.hashes{font-size:12.5px}.hashes .k{display:flex;flex-direction:column;gap:2px;align-self:start;padding-top:2px}.hashes .k .chip{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em}.hashes .k small{font-size:11px}.hashes code small{display:block;font-size:11px;margin-top:2px;font-family:var(--font-mono)}.hashes .btn.quiet{align-self:start}.configform .field:first-child{margin-top:4px}.configform .req{color:var(--signal)}label.check.sub{margin-left:24px}.configform textarea.input.mono{font-family:var(--font-mono);font-size:12.5px;width:100%;max-width:560px}.configrows{border:0;padding:0;margin:0;min-width:0}.configrows legend{padding:0;margin-bottom:6px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.configrow{border:1px solid var(--line);border-radius:8px;padding:4px 12px 10px;margin:8px 0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.configrow .configform{align-self:stretch}.configgroup{border-top:1px solid var(--line);padding:2px 0}.configgroup:last-child{border-bottom:1px solid var(--line)}.configgroup>summary{cursor:pointer;padding:10px 0;font-weight:600;list-style:none;display:flex;gap:8px;align-items:center}.configgroup>summary small{font-weight:400;font-size:12px}.configgroup[open]>summary{padding-bottom:0}.configform label.check,.field label.check{display:inline-flex;text-transform:none;letter-spacing:0;font-size:13px;color:var(--text);font-weight:500}.attempted .section{margin-top:8px}.attempted h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.attempted .chip b{font-weight:600;margin-left:2px}.list.denied li{display:flex;gap:10px;justify-content:flex-start;color:var(--bad)}.list.denied li .muted{margin-left:auto}.logtail{max-height:320px;font-size:11.5px}.agentctx a{overflow-wrap:anywhere;font-size:12.5px}.drawer .kv dd.inline{gap:6px}.drawer .kv dd.inline .btn.quiet{padding:2px 6px;font-size:12px}.scopes li.hook{background:color-mix(in srgb,var(--signal) 5%,transparent)}.scopes li.hook .mark{border-style:dashed;color:var(--text)}.scopes li.master .mark{background:transparent;color:var(--signal);border-color:var(--signal)}.scopes .what .muted.mono{font-size:11.5px}.copyrows.hooks .k{display:flex;flex-direction:column;gap:3px;align-self:start;padding-top:2px}.copyrows.hooks .k .chip{align-self:flex-start}.chip.dynamic{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb,var(--good) 22%,var(--chip))}.chip.managed{font-family:var(--font-mono);font-size:11px}.attributes .attr .what,.profile .attr .what{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-width:0}.attributes .attr .provenance,.profile .attr .provenance{flex-basis:100%}.attributes .attr .key,.profile .attr .label{font-weight:600}.attributes .attr .value,.profile .attr .value{font-size:13.5px;overflow-wrap:anywhere}.attributes .attr .provenance,.profile .attr .provenance{font-size:12px}.attributes .attr .inline,.profile .attr .inline{margin-top:4px}.attributes .inline small{flex-basis:100%}.rule{margin:0}textarea.input.rule{width:100%;max-width:none;font-family:var(--font-mono);font-size:12.5px;min-height:72px;resize:vertical;overflow-wrap:anywhere}.rule-example{font-size:12px;color:var(--muted);margin:8px 0 0}.rule-example code{font-family:var(--font-mono);font-size:11.5px;overflow-wrap:anywhere}.ev .chip.plugin,.chip.plugin{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;margin-left:6px;padding:0 6px;vertical-align:1px}button.chip.plugin{cursor:pointer;border:1px solid var(--line-2);color:var(--muted);font:inherit;font-family:var(--font-mono);font-size:10.5px;background:var(--chip)}button.chip.plugin:hover{background:color-mix(in srgb,var(--signal) 30%,var(--chip));color:var(--text)}.search .actor-filter .input{flex:0 1 auto;max-width:220px;padding:5px 8px}.nameform{margin:4px 0 8px}.nameform .actions{margin-top:8px}.search input[type=search]{min-width:200px}button.info{background:none;border:0;padding:0 2px;cursor:pointer;color:var(--muted);font:inherit;font-size:13px;line-height:1;vertical-align:-1px;letter-spacing:0;text-transform:none;display:inline-flex;align-items:center}.info-glyph{width:1em;height:1em;font-size:14px;display:block}button.info.tile-info .info-glyph{font-size:15px}button.info:hover{color:var(--text)}.cert-caution{display:inline-flex;align-items:center;gap:5px;flex:none;color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent);border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);border-radius:999px;padding:2px 9px;font-size:12px;line-height:1.5;cursor:pointer}.cert-caution:hover{background:color-mix(in srgb,var(--warn) 18%,transparent)}.login-caution{display:flex;justify-content:center;margin-top:14px}.login-caution:empty{display:none}@media(max-width:700px){.cert-caution-text{display:none}.cert-caution{padding:2px 7px}}.about-scrim{position:fixed;inset:0;z-index:50;background:#0009;display:flex;align-items:center;justify-content:center;padding:24px}.about-dialog{--about-size:20px;display:flex;flex-direction:column;width:min(680px,100%);max-height:min(82vh,760px);overflow:hidden;background:var(--panel);border:1px solid var(--line-2);border-radius:14px;box-shadow:0 30px 80px #00000073;padding:28px 32px 22px}.about-dialog.chatting{width:min(760px,100%);height:min(88vh,900px);max-height:none}.about-head{flex:none}.about-text{flex:0 1 auto;min-height:0;overflow:auto}.about-dialog.chatting .about-text{flex:none;max-height:7.5em}.about-kicker{color:var(--muted);font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}.about-dialog h2{font-family:var(--font-display);font-stretch:100%;font-weight:600;font-size:calc(var(--about-size) * 1.4);line-height:1.2;margin:0 0 16px}.about-text p{font-size:var(--about-size);line-height:1.6;margin:0 0 .9em;max-width:60ch}.about-dialog.chatting .about-text p{font-size:calc(var(--about-size) * .85);color:var(--muted)}.about-chat{flex:1;min-height:0;border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:10px}.about-msgs{flex:1;min-height:0;overflow:auto;padding-right:4px}.bubbles .turn{display:flex;flex-direction:column;gap:12px}.bubbles{--chat-size:18px;display:flex;flex-direction:column;gap:12px}.bubbles .msg{margin:0;font-size:var(--chat-size);line-height:1.55;max-width:min(88%,62ch);padding:10px 14px;border-radius:12px;overflow-wrap:anywhere}.bubbles .msg.me{align-self:flex-end;background:color-mix(in srgb,var(--signal) 18%,var(--panel));border:1px solid color-mix(in srgb,var(--signal) 40%,transparent);white-space:pre-wrap}.bubbles .msg.ai{align-self:flex-start;background:var(--bg);border:1px solid var(--line-2)}.bubbles .msg.ai.with-avatar{position:relative;padding-left:52px}.bubbles .msg.ai .assistant-avatar{position:absolute;left:12px;top:12px;width:30px;height:30px;border-radius:50%;object-fit:cover;background:var(--bg-2)}.bubbles .who{display:block;font-size:12px;color:var(--muted);margin-bottom:4px;letter-spacing:.04em;text-transform:uppercase}.bubbles .src{display:block;font-size:12px;color:var(--muted)}.bubbles .msg .draft-item,.bubbles .msg .form-error{font-size:14px}.bubbles .msg .md{font-size:inherit;line-height:inherit}.bubbles .msg .md>:last-child{margin-bottom:0}.msg-foot{display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:space-between;align-items:flex-start;margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}.msg-foot .src{flex:1 1 220px;min-width:0}.report-link{flex:none;margin-left:auto;font-size:12px;color:var(--muted);padding:0;display:inline-flex;gap:5px;align-items:center;opacity:.8}.report-link:hover,.report-link:focus-visible{color:var(--warn);opacity:1}.report-done{flex:1 1 100%;margin:0;font-size:12px;color:var(--good)}.report-form{flex:1 1 100%;display:flex;flex-direction:column;gap:6px}.report-form .input{width:100%;max-width:none;font-size:14px}.report-actions{display:flex;gap:8px;justify-content:flex-end}.report-actions .btn{font-size:13px;padding:5px 12px}.about-ask{display:flex;gap:8px;flex:none}.about-chat>small{flex:none}.about-ask .input{flex:1;min-width:0;max-width:none;font-size:calc(var(--about-size) * .85);padding:10px 12px}.about-actions{flex:none;display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.about-actions .btn{font-size:15px;padding:9px 16px}.about-talk{display:inline-flex;gap:8px;align-items:center}.about-talk .dot{width:8px;height:8px;border-radius:50%;background:var(--signal)}@media(max-width:600px){.about-scrim{align-items:flex-end;padding:0}.about-dialog,.about-dialog.chatting{border-radius:14px 14px 0 0;max-height:88vh;padding:22px 20px calc(20px + env(safe-area-inset-bottom,0px))}}.section>.actions{margin-bottom:10px}details.more.section summary{margin-bottom:8px}details.more{margin:var(--s2) 0}details.more>summary+*{margin-top:var(--s2)}.section>details.more:only-child{margin:0}details.more summary{cursor:pointer;font-size:12px;color:var(--muted);list-style:none;display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.chip.add{cursor:pointer;background:transparent;border:1px dashed var(--line);color:var(--muted);font:inherit;font-size:12px}.chip.add:hover{color:var(--text);border-color:var(--muted)}.identity h2 .pill,.drawer h2 .pill{vertical-align:middle;margin-left:4px}details.more summary:before,details.setup summary:before,.configgroup>summary:before,details.binding.revoked summary:before,.edge summary:before,.output summary:before{content:"";flex:none;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid currentColor;opacity:.8;transition:transform .15s}details[open]>summary:before{transform:rotate(90deg)}details.more summary::-webkit-details-marker,details.setup summary::-webkit-details-marker,.configgroup>summary::-webkit-details-marker,details.binding.revoked summary::-webkit-details-marker,.edge summary::-webkit-details-marker,.output summary::-webkit-details-marker{display:none}@media(prefers-reduced-motion:reduce){details[open]>summary:before{transition:none}}.tokens .what{display:flex;flex-direction:column;min-width:0}.tokens .what .muted{font-size:12px}.tokens .input.token{font-family:var(--font-mono);flex:1 1 320px}.fold{padding:2px 0 6px}details.more>.list,details.more>.kv{margin-top:4px}details.more>summary+.list{margin-top:0}.topbar{z-index:15;padding-top:calc(10px + env(safe-area-inset-top,0px))}.topbar .back{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);color:var(--rail-active);margin-left:-6px;flex:none}.topbar .back svg{width:18px;height:18px;margin-left:-1px}.topbar .back:hover{background:var(--rail-hover);color:var(--rail-active)}.topbar .back:active{opacity:.6}.topbar .brand-logo{height:24px;width:auto;display:block}.tiles.compact{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.tiles.compact .tile{min-height:0;padding:9px 12px;gap:10px}.tiles.compact .tile-icon{width:30px;height:30px;font-size:12px;border-radius:8px}.tiles.compact .tile-icon svg{width:14px;height:14px}@media(max-width:700px){.screen-title h1{font-size:16px}}.scrim{position:fixed;inset:0;background:#00000073;z-index:19;opacity:0;transition:opacity .22s ease}.scrim.open{opacity:1}@media(prefers-reduced-motion:reduce){.scrim{transition:none}}.drawer.sheet{inset:auto 0 0;height:calc(100% - 52px);width:100%;border-left:0;border-top:1px solid var(--line-2);border-radius:16px 16px 0 0;box-shadow:0 -20px 60px #00000059;transform:translateY(102%);padding-top:6px}.drawer.sheet.open{transform:none}.drawer .handle{display:none}.drawer.sheet .handle{display:block;width:44px;height:5px;border-radius:3px;background:var(--line-2);margin:4px auto 12px}.drawer.sheet .dbody{max-width:760px;margin:0 auto}.settings-section .kv{margin:8px 0 12px}.settings-section>.actions{margin-top:4px}@media(max-width:700px){.drawer{inset:auto 0 0;height:calc(100% - 40px);width:100%;border-left:0;border-top:1px solid var(--line-2);border-radius:16px 16px 0 0;transform:translateY(102%);padding-top:6px}.drawer.open{transform:none}.drawer .handle{display:block;width:44px;height:5px;border-radius:3px;background:var(--line-2);margin:4px auto 12px}}.app.with-rail{grid-template-columns:224px 1fr;grid-template-rows:auto 1fr}.app.with-rail .topbar{grid-column:1/-1}.app.with-rail .rail{height:100%;padding:14px 12px;gap:0;overflow:auto}.rail .railgroup{margin-top:14px}.rail .railgroup:first-child{margin-top:4px}.rail .railgroup h4{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 4px 10px;font-weight:600}.rail .nav a .glyph-text{width:16px;text-align:center;font-size:11px;font-weight:700;color:var(--muted)}@media(max-width:700px){.app.with-rail{grid-template-columns:1fr}.app.with-rail .rail{display:none}}.login form.setup.apply{max-width:560px}.field.consent .check{align-items:flex-start;gap:10px}.field.consent .check input{margin-top:3px}.req{color:var(--signal)}fieldset.question{border:1px solid var(--line);border-radius:8px;padding:8px 12px 10px;margin:10px 0}fieldset.question .inline{align-items:flex-start;flex-wrap:wrap}fieldset.question .field{margin:6px 0}fieldset.question.invalid{border-color:var(--signal)}.list.wording .row{cursor:pointer}.list.wording .row:hover{background:var(--bg-2)}.list.wording .what{display:flex;flex-direction:column;min-width:0;gap:2px}.lsteps{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.lsteps .step{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.lsteps .step>i{width:24px;height:24px;border-radius:50%;background:var(--chip);color:var(--muted);display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:700;flex:none}.lsteps .step.done>i{background:var(--good);color:var(--ink)}.lsteps .step.current{border-color:var(--signal)}.lsteps .step.current>i{background:var(--signal);color:var(--ink)}.lsteps .step.pending{opacity:.7}.lsteps .body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.lsteps .body .row-head{margin:0}.lsteps .body .meta{display:flex;gap:8px;align-items:center;font-size:12px}.lsteps .body .actions{margin-top:6px}.track{margin:10px 0 16px}.track>.row-head{margin-bottom:6px}.settings-section .list .what{display:flex;flex-direction:column;min-width:0;gap:2px}.settings-section .list .what small{font-size:12px}.drawer form>h3{margin-top:18px}.drawer form>h3+p.muted{margin-top:-4px}.report-value{font-family:var(--font-mono);font-size:34px;font-weight:500;line-height:1.1;margin:8px 0 2px}.chart{margin-top:10px}.chart svg{width:100%;height:120px;display:block}.chart .line{fill:none;stroke:var(--signal);stroke-width:1.6}.chart .area{fill:color-mix(in srgb,var(--signal) 14%,transparent)}.chart .grid{stroke:var(--line);stroke-width:1}.chart .lbl{fill:var(--muted);font-size:10px;font-family:var(--font-mono)}.range{display:flex;gap:6px;margin-top:8px}.range button{font-size:12px}.range button[aria-pressed=true]{border-color:var(--signal);color:var(--signal)}.assistant{display:flex;flex-direction:column;min-height:0}.assistant>.head{flex:none}.assistant-title{display:flex;align-items:center;gap:14px;min-width:0}.assistant-avatar.big{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}.assistant-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.assistant.wide .assistant-body.with-panel{grid-template-columns:minmax(0,1fr) minmax(340px,38%)}.suggestions{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}.suggestion{font-size:16px;line-height:1.4;padding:10px 14px;border:1px solid var(--line-2);border-radius:12px;background:var(--panel);color:var(--text);text-align:left;max-width:100%}.suggestion:hover:not(:disabled){border-color:var(--signal)}.assistant-chat{display:flex;flex-direction:column;min-height:0}.assistant .thread{flex:1;min-height:0;overflow:auto;margin:4px 0 0;padding:4px 6px 12px 0}.assistant .askbar{flex:none;display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.assistant .askbar .input{flex:1;max-width:none;font-size:17px;padding:11px 13px}.assistant .askbar .btn{font-size:15px;padding:9px 16px}.assistant-fine{flex:none;font-size:12px;margin:8px 0 0}.assistant-preview{min-height:0;overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:18px 20px}.source-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.source-actions{display:flex;gap:4px}.source-kind{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.source-title{font-family:var(--font-display);font-stretch:100%;font-weight:600;font-size:20px;line-height:1.25;margin:0 0 12px}.source-preview .settings-section{border:0;padding:0;background:none}.source-preview .settings-section>h3:first-child{display:none}.source-empty h2{font-family:var(--font-display);font-stretch:100%;font-weight:600;font-size:18px;margin:0 0 6px}.source-empty h3{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:18px 0 8px}.source-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.source-card{width:100%;text-align:left;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg)}.source-card:hover{border-color:var(--signal)}.bubbles .src a.on{color:var(--signal);font-weight:600}.assistant.wide .bubbles .msg.ai{cursor:pointer}.assistant.wide .bubbles .msg.ai.picked{border-color:color-mix(in srgb,var(--signal) 60%,var(--line-2))}.assistant-chat>.askbar,.assistant-chat>.assistant-fine{flex:none}.request-edit{display:flex;flex-direction:column;gap:6px;margin-top:12px}.request-edit .input{width:100%;max-width:none}.md{font-size:15px;line-height:1.6}.md p{margin:0 0 .8em}.md h3,.md h4,.md h5,.md h6{margin:1.1em 0 .4em;font-size:15px}.md ul,.md ol{margin:0 0 .8em;padding-left:1.4em}.md li{margin:.2em 0}.md code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-2);padding:1px 4px;border-radius:4px}.pagelist{display:flex;flex-direction:column;gap:6px;margin-top:12px}.pagelist details{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:8px 12px}.pagelist summary{cursor:pointer}.pagetext{white-space:pre-wrap;font-size:13.5px;margin-top:8px;line-height:1.5}.route-error{max-width:640px;margin:15vh auto;padding:0 16px}.route-error h1{font-size:22px;margin:0 0 8px}.combo{position:relative}.combo-list{position:absolute;left:0;right:0;top:100%;z-index:30;margin:2px 0 0;padding:4px;list-style:none;background:var(--panel);border:1px solid var(--line);border-radius:8px;max-height:260px;overflow:auto;box-shadow:0 8px 24px #00000040}.combo-list li{padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13.5px}.combo-list li[aria-selected=true]{background:color-mix(in srgb,var(--signal) 14%,transparent)}.draft-item{border:1px solid color-mix(in srgb,var(--signal) 45%,var(--line));border-radius:8px;padding:10px 12px;margin:10px 0;background:color-mix(in srgb,var(--signal) 6%,transparent)}.draft-item{display:flex;flex-direction:column;gap:6px}.draft-item .input{width:100%;max-width:none;display:block}.draft-item p{margin:0}.page-note{display:block;margin:-4px 0 8px}.version-text{border-left:3px solid var(--line);padding-left:10px;max-height:320px;overflow:auto}.list>.version-open{flex-wrap:wrap}.list>.version-open>div:last-child{flex-basis:100%;min-width:0}.brand-logo{height:24px;width:auto;max-width:200px;object-fit:contain;display:block}.brand-logo.large{height:auto;max-height:56px;max-width:240px;margin-bottom:18px}.image-slot{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line)}.image-slot:first-of-type{border-top:0}.image-slot .preview{flex:none;display:grid;place-items:center;background:var(--bg-2);border:1px solid var(--line);overflow:hidden}.image-slot .preview.wide{width:160px;height:64px;border-radius:8px}.image-slot .preview.square{width:72px;height:72px;border-radius:10px}.image-slot .preview.tiny{width:40px;height:40px;border-radius:6px}.image-slot .preview.tiny img{width:24px;height:24px;object-fit:contain}.icon-preview{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.icon-preview-row{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-end}.icon-preview figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:8px}.icon-preview figcaption{font-size:12px;color:var(--muted)}.icon-preview .tab{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px 8px 0 0;background:var(--panel);border:1px solid var(--line);border-bottom:0;font-size:12px;max-width:180px}.icon-preview .tab span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-preview .ios{width:90px;height:90px;border-radius:22%;overflow:hidden;box-shadow:0 2px 10px #0000004d}.icon-preview .ios img{width:100%;height:100%;display:block}.icon-preview .android{position:relative;width:90px;height:90px;border-radius:50%;overflow:hidden;box-shadow:0 2px 10px #0000004d}.icon-preview .android img{width:100%;height:100%;display:block}.icon-preview .android .safe{position:absolute;inset:10%;border-radius:50%;border:1px dashed rgba(255,255,255,.7);box-shadow:0 0 0 1px #0006;pointer-events:none}.image-slot .preview.round{width:64px;height:64px;border-radius:50%}.image-slot .preview img{max-width:100%;max-height:100%;object-fit:contain}.image-slot .preview.round img,.image-slot .preview.square img{width:100%;height:100%;object-fit:cover}.image-slot .preview .muted{font-size:11px;text-align:center;padding:4px;line-height:1.25}.image-slot .about{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.image-slot .about .actions{margin-top:6px}.tile-icon.image{overflow:hidden;background:none}.tile-icon.image img{width:100%;height:100%;object-fit:cover}.rail .nav a .glyph-img{width:16px;height:16px;border-radius:4px;object-fit:cover;flex:none}@media(max-width:520px){.image-slot{flex-direction:column}}.storage-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--bg-2);border:1px solid var(--line);margin:4px 0 8px}.storage-bar .seg{display:block;height:100%}.storage-bar .seg+.seg{border-left:1px solid var(--panel)}.seg.database,.dot.database{background:var(--signal)}.seg.files,.dot.files{background:var(--info)}.seg.backups,.dot.backups{background:var(--good)}.seg.other,.dot.other{background:var(--muted)}.dot.free{background:var(--bg-2);border:1px solid var(--line-2)}.storage-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px}.storage-legend li{display:flex;align-items:center;gap:6px}.storage-legend .dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.list>div.via{opacity:.75}.badges{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}.badge{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 6px;border-radius:999px;background:var(--chip);font-size:13px}.badge b{font-weight:600}.badges .badge span{display:flex;flex-direction:column;line-height:1.2}.badges .badge small{font-size:11px}.badge-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;color:#fff;font-size:10px;font-weight:700;flex:none}.badge-icon.role{background:var(--signal)}.badge-icon.certification{background:var(--good)}.badge-icon svg{width:13px;height:13px}.badge.small{padding:1px 8px 1px 2px;gap:5px;font-size:12px}.badge.small .badge-icon{width:17px;height:17px}.badge.small .badge-icon svg{width:10px;height:10px}.slide{container-type:inline-size;position:relative;aspect-ratio:16/9;width:100%;background:var(--paper);color:var(--ink);border-radius:6px;overflow:hidden;font-family:var(--font-body);background-size:cover;background-position:center;display:flex;flex-direction:column;box-shadow:inset 0 0 0 1px #0000000f}.slide.has-bg:before{content:"";position:absolute;inset:0;background:#f4f2eed1}.slide>*{position:relative}.slide-body{flex:1;display:flex;flex-direction:column;padding:5cqw 6cqw 2cqw;min-height:0;overflow:hidden}.slide h1{font-family:var(--font-display);font-size:6.2cqw;line-height:1.05;margin:0 0 2cqw;letter-spacing:.01em}.slide h2{font-family:var(--font-display);font-size:3.6cqw;margin:0 0 2.2cqw;border-left:.5cqw solid var(--signal);padding-left:1.4cqw}.slide h3{font-size:2.2cqw;margin:0 0 1cqw;display:flex;align-items:center;gap:.8cqw}.slide p{font-size:2.3cqw;line-height:1.4;margin:0 0 1.2cqw}.slide.t-title .slide-body{justify-content:center}.slide.t-title .slide-title-block{border-left:.8cqw solid var(--signal);padding-left:3cqw}.slide.t-title .slide-sub{font-size:2.8cqw;opacity:.75}.slide .big-number{display:flex;align-items:baseline;gap:3cqw;margin:1cqw 0 2cqw}.slide .big-number .value{font-family:var(--font-display);font-size:16cqw;line-height:1;font-weight:700;color:var(--signal)}.slide .big-number .change{font-size:3cqw;opacity:.85}.slide .big-number .change.up{color:var(--good)}.slide .big-number .change.down{color:var(--bad)}.slide .unavailable{opacity:.6;font-style:italic}.slide .slide-words p{font-size:2.6cqw}.slide.t-words .slide-words p{font-size:3cqw}.slide .slide-chart{width:100%;height:auto;max-height:62%;flex:none;margin-bottom:1cqw}.slide .slide-chart .grid{stroke:#0000001f;stroke-width:1}.slide .slide-chart .lbl{font-size:16px;fill:currentColor;opacity:.7}.slide .slide-chart .area{fill:var(--signal);opacity:.14}.slide .slide-chart .line{fill:none;stroke:var(--signal);stroke-width:4;stroke-linejoin:round}.slide .slide-table{border-collapse:collapse;font-size:2.1cqw;width:100%;min-width:0;margin-bottom:1cqw;color:inherit;background:transparent}.slide .slide-table th{background:transparent;color:inherit;position:static;text-align:left;font-size:1.6cqw;text-transform:uppercase;letter-spacing:.06em;opacity:.65;padding:.6cqw 1cqw;border-bottom:2px solid rgba(0,0,0,.15)}.slide .slide-table td{background:transparent;color:inherit;padding:.8cqw 1cqw;border-bottom:1px solid rgba(0,0,0,.08)}.slide .more{font-size:1.8cqw;opacity:.7}.slide .slide-badges{display:flex;flex-wrap:wrap;gap:3cqw}.slide .slide-badge-group{min-width:28cqw}.slide .slide-badge-group ul{list-style:none;margin:0;padding:0;font-size:2.4cqw;line-height:1.5}.slide .slide-badge-group small{font-size:1.6cqw;opacity:.7}.slide .slide-badge-group .badge-icon{width:3cqw;height:3cqw}.slide .slide-badge-group .badge-icon svg{width:1.8cqw;height:1.8cqw}.slide-foot{display:flex;justify-content:space-between;align-items:center;padding:0 6cqw 2.4cqw;font-size:1.6cqw;opacity:.7}.slide-foot img{height:3cqw;width:auto}.slide.t-picture{background:#000}.slide.t-picture img{width:100%;height:100%;object-fit:contain}.slide.t-picture .caption{position:absolute;left:0;right:0;bottom:0;padding:2cqw 4cqw;font-size:2.6cqw;color:#fff;background:linear-gradient(transparent,#000000b3)}.presenter{position:fixed;inset:0;z-index:1000;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center}.presenter-stage{width:min(100vw,calc(100vh*16/9 - 6vh));cursor:pointer}.presenter-stage .slide{border-radius:0;box-shadow:none}.presenter-bar{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;color:#ccc;font-size:13px;opacity:.35;transition:opacity .2s}.presenter-bar:hover{opacity:1}.presenter-bar .btn{color:#ddd}.slide-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:10px}.slide-outline{margin:0;padding-left:22px;line-height:1.9;font-size:14px}.slide-outline .chip{font-size:11px;margin-right:6px}.field .label-text{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:5px;font-weight:600}.period-picker .field{flex:0 0 auto;min-width:170px}.print-deck{display:none}@media print{@page{size:landscape;margin:0}body.printing-deck>*:not(.print-deck){display:none!important}body.printing-deck{background:#fff}body.printing-deck .print-deck{display:block}.print-page{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;break-after:page;page-break-after:always}.print-page:last-child{break-after:auto;page-break-after:auto}.print-page .slide{width:100vw;max-height:100vh;border-radius:0;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.dir-section{margin:18px 0 26px}.dir-section>h3{font-family:var(--font-display);font-size:15px;margin:0 0 10px;letter-spacing:.02em}.dir-area{margin:0 0 12px}.dir-area-name{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 6px}.dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.dir-grid.compact{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.dir-person{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.dir-person.compact{padding:8px;align-items:center}.dir-photo{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none}.dir-photo.initials{display:grid;place-items:center;background:var(--chip);color:var(--muted);font-weight:700;font-size:15px}.dir-person.compact .dir-photo{width:34px;height:34px;font-size:12px}.dir-body{min-width:0;display:flex;flex-direction:column;gap:3px}.dir-body h4{margin:0;font-size:14px}.dir-title{color:var(--signal);font-size:12px;font-weight:600}.dir-line{font-size:12px;overflow-wrap:anywhere}.dir-bio{font-size:12px;margin:2px 0 0;color:var(--muted)}.dir-badges{margin-top:2px}.dir-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}.dir-me{display:flex;flex-direction:column;gap:10px;margin-top:10px}.dir-me-row{display:grid;grid-template-columns:1fr 160px;gap:10px;align-items:start}.dir-me-row>.dir-me-label{grid-column:1/-1;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;margin-bottom:-6px}.dir-me-row>.inline,.dir-me-row>span:not(.dir-me-label){align-self:center}@media(max-width:560px){.dir-me-row{grid-template-columns:1fr}}.public-directory{max-width:1000px;margin:0 auto;padding:24px 16px;background:var(--bg);min-height:100%;color:var(--text)}.public-head{display:flex;align-items:center;gap:14px;margin-bottom:10px}.public-head h1{font-family:var(--font-display);font-size:20px;margin:0}.slide .slide-people{flex:1;min-height:0;overflow:hidden}.slide .slide-people .dir-section{margin:0}.slide .slide-people .dir-section>h3:empty{display:none}.slide .slide-people .dir-grid.compact{grid-template-columns:repeat(3,1fr);gap:1.4cqw}.slide .slide-people .dir-person{background:#fff9;border-color:#00000014;padding:1.2cqw;gap:1.2cqw}.slide .slide-people .dir-photo{width:5cqw;height:5cqw;font-size:1.8cqw}.slide .slide-people .dir-body h4{font-size:2cqw;color:var(--ink)}.slide .slide-people .dir-title{font-size:1.6cqw}.sign-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.sign-card{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);text-align:left;cursor:pointer;font:inherit}.sign-card:hover{border-color:var(--line-2)}.sign-card .slide-thumb.empty{aspect-ratio:16/9;background:var(--chip);border-radius:6px}.sign-card-name{display:flex;flex-direction:column;gap:2px;font-size:13px}.sign-overlay{position:fixed;inset:0;z-index:1000;background:#000;display:flex;align-items:center;justify-content:center}.sign-player{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.sign-player.empty{color:#ccc;gap:12px}.sign-stage{width:min(100vw,calc((100vh - 56px)*16/9))}.sign-player.mode-none .sign-stage,.sign-player.mode-local .sign-stage{width:min(100vw,calc(100vh*16/9))}.sign-stage .slide{border-radius:0;box-shadow:none}.sign-bar{display:flex;align-items:center;gap:8px;color:#ccc;font-size:13px;padding:8px 12px;flex-wrap:wrap;justify-content:center}.sign-bar .btn{color:#ddd}.sign-bar .sign-name{font-weight:600;margin-right:6px}.sign-list{position:absolute;right:12px;bottom:56px;max-height:60vh;overflow:auto;background:var(--panel);border:1px solid var(--line-2);border-radius:8px;padding:8px 8px 8px 28px;margin:0;font-size:13px}.sign-list .rowlink.on{font-weight:700;color:var(--signal)}.signage-screen{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center;cursor:none}.signage-screen.pairing{flex-direction:column;gap:18px;color:#ddd;cursor:default;text-align:center;padding:24px}.signage-screen .pair-code{font-family:var(--font-mono);font-size:min(14vw,120px);letter-spacing:.18em;color:#fff}.signage-screen.blank{background:#000}.req-suggestion{display:flex;gap:12px;align-items:flex-start;margin:8px 0}.req-suggestion img{width:180px;max-width:40%;border-radius:6px;border:1px solid var(--line)}.subform .label-text{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:5px;font-weight:600}.cal-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0}.cal-label{font-family:var(--font-display);font-size:15px;margin-left:6px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg .btn{border-radius:0;padding:4px 10px}.seg .btn.on{background:var(--chip);color:var(--text)}.cal-sources{margin:4px 0 12px;align-items:center}.cal-sources .chip{cursor:pointer;border:1px solid transparent;padding:3px 10px;border-radius:999px}.cal-sources .chip.off{opacity:.45;text-decoration:line-through}.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.cal-head{background:var(--panel);padding:6px 8px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.cal-day{background:var(--panel);min-height:92px;padding:4px 6px;display:flex;flex-direction:column;gap:2px}.cal-day.other{opacity:.5}.cal-day.today .cal-date{background:var(--signal);color:#fff;border-radius:999px}.cal-date{font-size:12px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:2px}.cal-item{display:flex;gap:4px;align-items:baseline;width:100%;text-align:left;border:0;background:var(--chip);color:var(--text);border-left:3px solid var(--muted);border-radius:4px;padding:1px 6px;font:inherit;font-size:12px;cursor:pointer;overflow:hidden}.cal-item .cal-time{color:var(--muted);flex:none;font-family:var(--font-mono);font-size:11px}.cal-item .cal-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-item.events,.cal-row.events{border-left-color:var(--signal)}.cal-item.terms,.cal-row.terms{border-left-color:#8e6cc8}.cal-item.dues,.cal-row.dues{border-left-color:#1b7f3b}.cal-item.requests,.cal-row.requests{border-left-color:#2d7dd2}.cal-item.devices,.cal-row.devices{border-left-color:#b3261e}.cal-item.signs,.cal-row.signs{border-left-color:#c9a227}.cal-item.inventory,.cal-row.inventory{border-left-color:#5c8d6c}.cal-item.schedules,.cal-row.schedules{border-left-color:#0f8b8d}.cal-item.mine,.cal-row.mine{font-weight:600}.cal-more{border:0;background:none;color:var(--muted);font:inherit;font-size:11px;cursor:pointer;text-align:left;padding:0 6px}.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.cal-col{background:var(--panel);min-height:200px;padding:0 0 8px;display:flex;flex-direction:column;gap:3px}.cal-col .cal-item{margin:0 4px}.cal-col.today .cal-head{color:var(--signal)}.cal-list-day{margin:14px 0}.cal-list-day h3{font-family:var(--font-display);font-size:14px;margin:0 0 6px}.cal-row{display:grid;grid-template-columns:120px 1fr auto;gap:10px;align-items:center;width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--muted);border-radius:6px;padding:8px 10px;margin-bottom:6px;font:inherit;color:var(--text);cursor:pointer}.cal-row .cal-time{font-family:var(--font-mono);font-size:12px;color:var(--muted)}.calendar .chips .chip.on{border-color:var(--signal);background:color-mix(in srgb,var(--signal) 14%,var(--chip))}.calendar .chips .chip{cursor:pointer;border:1px solid transparent}@media(max-width:700px){.cal-month{grid-template-columns:repeat(7,minmax(0,1fr))}.cal-day{min-height:56px;padding:2px 3px}.cal-item .cal-time,.cal-item .cal-title{display:none}.cal-item{height:6px;padding:0;border-radius:3px}.cal-week{grid-template-columns:1fr}.cal-row{grid-template-columns:1fr;gap:2px}}.slide .slide-events{list-style:none;margin:0;padding:0;font-size:2.4cqw}.slide .slide-events li{display:grid;grid-template-columns:30% 1fr;gap:1.5cqw;padding:.9cqw 0;border-bottom:1px solid rgba(0,0,0,.08)}.slide .slide-event-when{font-family:var(--font-mono);opacity:.75;font-size:2cqw}.slide .slide-event-when small,.slide .slide-event-title small{font-size:1.7cqw;opacity:.7}.cal-picture{display:block;max-width:100%;max-height:260px;border-radius:8px;margin:0 0 10px}.cal-picture.small{max-height:120px;margin:0 0 6px}.cal-sources .chip.cal{border-color:var(--line)}.table-title{font-family:var(--font-display);font-size:14px;margin:0 0 8px}.table-title small{font-family:var(--font-body,inherit);font-weight:400;font-size:12px}.dhead-actions{display:inline-flex;gap:4px;align-items:center}.dhead .btn.place{padding:4px 6px;display:inline-flex;color:var(--muted)}.dhead .btn.place svg{width:16px;height:16px}.dhead .btn.place:hover{color:var(--text)}@media(max-width:700px){.dhead .btn.place{display:none}}.chips a.chip{text-decoration:none;color:inherit}.chips a.chip:hover{border-color:var(--signal)}.inventory .inv-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inventory .inv-filters input[type=search]{flex:1 1 220px}.inventory .inv-filters select{flex:0 1 200px}.inventory .chips .chip.on,.item-page .chips .chip.on,.req-answer~.subform .chip.on,.subform .chips .chip.on{border-color:var(--signal);background:color-mix(in srgb,var(--signal) 14%,var(--chip))}.chip.warn{background:color-mix(in srgb,var(--warn) 22%,var(--chip))}.chip.code{display:inline-flex;align-items:center;gap:4px}.chip.code.product{border-style:dashed}.chip-x{all:unset;cursor:pointer;color:var(--muted);padding:0 2px;font-size:12px}.chip-x:hover{color:var(--text)}.inv-area{margin:0 0 18px}.inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.inv-card{all:unset;cursor:pointer;display:flex;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);align-items:flex-start;text-align:left}.inv-card:hover,.inv-card:focus-visible{border-color:var(--signal)}.inv-card.attention{border-color:color-mix(in srgb,var(--warn) 60%,var(--line))}.inv-card.retired{opacity:.6}.inv-photo{width:56px;height:56px;border-radius:6px;overflow:hidden;flex:none;background:var(--bg-2);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:22px}.inv-photo img{width:100%;height:100%;object-fit:cover}.inv-body{display:flex;flex-direction:column;gap:4px;min-width:0}.inv-body b{overflow-wrap:anywhere}.inv-meta{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;font-size:12px}.inv-photo-field{display:flex;gap:10px;align-items:center}.inv-photo-field img{width:96px;height:96px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.item-page .item-head{display:flex;gap:14px;align-items:flex-start}.item-page h2{margin:0 0 4px;font-size:18px}.item-photo{width:120px;height:120px;border-radius:8px;object-fit:cover;border:1px solid var(--line);flex:none}.item-photo.none{display:flex;align-items:center;justify-content:center;background:var(--bg-2);color:var(--muted);font-size:34px}.item-page .kv{display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;margin:0;font-size:13px}.item-page .kv dt{color:var(--muted)}.item-page .kv dd{margin:0}.scanner{display:flex;flex-direction:column;gap:10px}.scanner-view{position:relative;aspect-ratio:4/3;max-height:52vh;background:#000;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center}.scanner-view video{width:100%;height:100%;object-fit:cover}.scanner-view.off video,.scanner-view.none video,.scanner-view.denied video,.scanner-view.starting video{display:none}.scanner-view>span{position:absolute;padding:0 16px;text-align:center}.scanner-view.photo{aspect-ratio:4/3}.photo-crop{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.photo-crop .frame{position:relative;overflow:hidden;border-radius:8px;background:#000;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;max-width:100%}.photo-crop .frame img{position:absolute;max-width:none;pointer-events:none;touch-action:none}.photo-crop .frame .safe{position:absolute;inset:0;border:1px dashed rgba(255,255,255,.75);box-shadow:0 0 0 400px #00000073;pointer-events:none}.photo-crop .frame .safe.circle{border-radius:50%}.photo-crop .frame .safe.rounded{border-radius:22%}.photo-crop .zoom{display:flex;align-items:center;gap:8px;width:300px;max-width:100%}.photo-crop .zoom input{flex:1}.scanner-view.photo.mirror video{transform:scaleX(-1)}.scanner-view.on:after{content:"";position:absolute;inset:18% 12%;border:2px solid color-mix(in srgb,var(--signal) 80%,transparent);border-radius:10px;pointer-events:none}.item-public .item-page{max-width:720px}.qr{display:inline-block}.qr svg{width:100%;height:100%}.sign-page{max-width:900px;margin:0 auto;padding:16px}.sign-tools{display:flex;gap:8px;align-items:center;margin-bottom:14px}.sign-tools select{max-width:220px}.sign{background:#fff;color:#14161a;border:1px solid #ddd;border-radius:6px;padding:28px 32px;display:flex;flex-direction:column;gap:16px;min-height:60vh}.sign header{border-bottom:3px solid #e07a24;padding-bottom:10px}.sign .sign-org{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#5f6370}.sign h1{margin:4px 0 0;font-family:var(--font-display);font-size:34px;line-height:1.1}.sign-photo{max-height:34vh;object-fit:contain;align-self:flex-start;border-radius:6px}.sign-howto h2{font-size:16px;margin:0 0 4px}.sign-howto p{margin:0;white-space:pre-wrap;font-size:15px;line-height:1.4}.sign-cert{font-weight:600;margin:0}.sign footer{margin-top:auto;display:flex;gap:20px;align-items:flex-end;justify-content:space-between;border-top:1px solid #ddd;padding-top:12px}.sign-qr{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px}.sign-ask p{margin:0 0 4px;font-size:14px}.sign-page.poster .sign{padding:40px 48px;gap:24px}.sign-page.poster .sign h1{font-size:54px}.sign-page.poster .sign-howto p{font-size:20px}.sign-page.poster .sign-ask p{font-size:18px}@media print{body.printing-sign{background:#fff}body.printing-sign *{visibility:hidden}body.printing-sign .sign-page,body.printing-sign .sign-page *{visibility:visible}body.printing-sign .sign-page{position:absolute;left:0;top:0;width:100%;max-width:none;padding:0;margin:0}body.printing-sign .sign-page .no-print{display:none}body.printing-sign .sign{border:0;border-radius:0;min-height:100vh;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.tag-sheets{padding:16px}.tag-options{max-width:560px;margin-bottom:16px}.tag-page{position:relative;background:#fff;color:#000;margin:0 auto 16px;box-shadow:0 0 0 1px var(--line)}.tag-label{position:absolute;box-sizing:border-box;display:flex;align-items:center;gap:3mm;padding:2.5mm 3.5mm;outline:1px dashed #ccc;overflow:hidden;container-type:size}.tag-label.tall{flex-direction:column;justify-content:center;gap:1.5mm;text-align:center}.tag-qr{flex:0 0 auto;display:block}.tag-qr .qr{width:100%!important;height:100%!important;display:block}.tag-qr .qr svg{width:100%;height:100%}.tag-text{display:flex;flex-direction:column;gap:1mm;min-width:0}.tag-org{font-size:clamp(5pt,9cqh,10pt);font-weight:600}.tag-code{font-size:clamp(8pt,22cqh,22pt);font-weight:700;letter-spacing:.02em;line-height:1.05}.tag-url{font-size:clamp(4pt,6cqh,7pt);color:#444;word-break:break-all}.tag-label.tall .tag-url{display:none}@media print{body.printing-tags{background:#fff}body.printing-tags *{visibility:hidden}body.printing-tags .tag-sheets,body.printing-tags .tag-sheets *{visibility:visible}body.printing-tags .tag-sheets{position:absolute;left:0;top:0;padding:0}body.printing-tags .no-print{display:none}body.printing-tags .tag-page{margin:0;box-shadow:none;break-after:page;page-break-after:always}body.printing-tags .tag-page:last-child{break-after:auto;page-break-after:auto}body.printing-tags .tag-label{outline:0}}.totp-qr{display:flex;justify-content:center;margin:12px 0}.totp-qr .qr{background:#fff;padding:8px;border-radius:8px;display:block}.totp-qr .qr svg{display:block;width:100%;height:100%}.recovery-codes{list-style:none;margin:10px 0;padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.secure-options{display:grid;gap:10px;margin-top:12px}.secure-option{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;padding:12px;border:1px solid var(--line);border-radius:8px}.secure-option .btn{flex:none}.quick-add{display:flex;flex-wrap:wrap;gap:6px}.quick-add .btn[aria-pressed=true]{border-color:var(--signal);color:var(--signal)}.setup-link .inline{display:flex;gap:8px;align-items:center}.setup-link .inline .input{flex:1;min-width:0}.login .setup-first .actions{margin-top:16px}.arrival-methods{border:0;margin:14px 0 4px;padding:0;display:grid;gap:8px}.arrival-methods legend{font-size:12px;color:var(--muted);margin-bottom:6px;padding:0}.login .arrival-methods label.check{text-transform:none;letter-spacing:0;font-size:13px;font-weight:400;color:var(--text);margin:0;display:flex;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.login .arrival-methods label.check:has(input:checked){border-color:var(--signal)}.login .arrival-methods label.check .muted{font-size:12px}.login .arrival-methods input{margin-top:3px}.pw-strength{margin-top:6px}.pw-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:4px}.pw-bar i{height:4px;border-radius:2px;background:var(--chip)}.pw-strength[data-score="1"] .pw-bar i.on,.pw-strength[data-score="2"] .pw-bar i.on{background:var(--bad)}.pw-strength[data-score="3"] .pw-bar i.on,.pw-strength[data-score="4"] .pw-bar i.on{background:var(--good)}.tile-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--signal);margin-left:7px;vertical-align:middle;flex:none}.rail .tile-dot{margin-left:auto}@media(min-width:701px){.drawer{top:52px;scrollbar-gutter:stable}.drawer .dhead{padding-right:120px}.drawer .dhead-actions{position:absolute;top:20px;right:22px}.drawer.sheet .dhead-actions{top:19px}}.agent-talk{display:flex;flex-direction:column;min-height:calc(100dvh - 190px)}.agent-talk-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;font-size:12px}.agent-talk .thread.log{flex:1;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.45;padding:6px 0 12px}.log-msg{max-width:92%;padding:6px 10px;border-radius:8px;overflow-wrap:anywhere}.log-msg p{margin:0;white-space:pre-wrap}.log-msg small{display:block;font-size:11px}.log-msg.me{align-self:flex-end;background:color-mix(in srgb,var(--signal) 14%,var(--panel));border:1px solid color-mix(in srgb,var(--signal) 35%,transparent)}.log-msg.agent{align-self:flex-start;background:var(--bg);border:1px solid var(--line-2)}.log-msg.agent.progress{border-style:dashed;opacity:.8}.log-msg .md{font-size:inherit;line-height:inherit}.log-msg .md>:last-child{margin-bottom:0}.log-msg .btn.quiet{padding:2px 6px;font-size:11px;margin-top:2px}.log-action{font-size:11.5px;padding:1px 2px 1px 10px;border-left:2px solid var(--line-2)}.log-action.denied{border-left-color:var(--bad)}.agent-talk .askbar{flex:none;display:flex;gap:8px;padding-top:10px;border-top:1px solid var(--line);position:sticky;bottom:0;background:var(--panel)}.agent-talk .askbar .input{flex:1;max-width:none;font-size:15px;padding:9px 12px}td .tile-dot{margin-left:6px}@media(pointer:coarse){input,select,textarea,.input{font-size:16px}}img.avatar.photo{object-fit:cover;background:var(--chip)}.photo-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.dir-grid:not(.compact){grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.dir-person:not(.compact){flex-direction:column;gap:0;padding:0;overflow:hidden;align-items:stretch}.dir-person:not(.compact) .dir-photo{width:100%;height:auto;aspect-ratio:1/1;border-radius:0;display:block}.dir-person:not(.compact) .dir-photo.initials{display:grid;font-size:44px;font-weight:600}.dir-person:not(.compact) .dir-body{padding:10px 12px 12px}.privacy-records{list-style:none;margin:6px 0 10px;padding:0;display:grid;gap:6px}.privacy-records li{font-size:13px}.privacy-records .check{display:inline-flex;margin-left:8px}.privacy-notice{border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin:8px 0}.privacy-notice summary{cursor:pointer}.privacy-note{border-left:3px solid var(--signal);padding:4px 10px;margin:8px 0}.governing{margin-top:4px}.doc-check{margin:10px 0}.doc-check .actions{align-items:center}.doc-finding{border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:6px;padding:8px 12px;margin:8px 0;font-size:13px}.doc-finding.outdated{border-left-color:var(--signal)}.doc-finding blockquote{margin:6px 0;padding:4px 10px;border-left:2px solid var(--line-2);color:var(--muted);font-style:italic}.doc-finding p{margin:4px 0}.doc-suggestion{background:var(--bg);border-radius:6px;padding:6px 10px;margin-top:6px}.field label.linklike,.linklike{text-transform:none;letter-spacing:0;font-size:inherit;font-weight:inherit;background:none;border:0;padding:0;font:inherit;color:var(--signal);cursor:pointer;text-decoration:underline;text-underline-offset:2px}th.pick,td.pick{width:34px;padding-right:0}td.pick input,th.pick input,.kv-table input[type=checkbox]{accent-color:var(--signal);cursor:pointer}tr.picked td{background:var(--chip)}.bulk-bar{position:sticky;bottom:12px;z-index:3;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 12px;margin:10px 0 0;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 -2px 12px #00000014}.bulk-bar b{margin-right:6px}ul.counts{list-style:none;padding:0;margin:8px 0;display:grid;gap:4px;max-width:28em}ul.counts li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dotted var(--line);padding:2px 0}.batch-row,.dup-pair{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.batch-row.undone b{text-decoration:line-through;color:var(--muted)}.dup-pair .actions{margin:0;flex-wrap:nowrap}.merge-sides{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-bottom:12px}.merge-side{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:8px}.merge-side.keep{border-color:var(--signal)}.merge-fields{border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin:0 0 12px}.merge-fields legend{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:0 4px}.merge-field{display:grid;grid-template-columns:9em 1fr 1fr;gap:8px;align-items:center;padding:4px 0}.merge-field .check{white-space:normal;overflow-wrap:anywhere}.merge-field-name{color:var(--muted);font-size:13px}.board-cards-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0 4px}.board-cards-head .input{flex:1;min-width:10em}table.board-cards{min-width:560px}@media(max-width:640px){.merge-sides,.merge-field{grid-template-columns:1fr}}.device-detail .kv .pill{white-space:normal;align-items:flex-start;border-radius:10px}.device-detail .kv .pill i{margin-top:5px}td .who{display:inline-flex;align-items:center;gap:8px}td .who .avatar{width:24px;height:24px;font-size:11px}td .who .names{display:flex;flex-direction:column;line-height:1.25;min-width:0}td .who .names small{font-size:12px;white-space:nowrap}ol.sortable{list-style:none;margin:10px 0;padding:0;display:flex;flex-direction:column;gap:8px}.sortable-item{border:1px solid var(--line-2);border-radius:8px;background:var(--panel);position:relative}.sortable-item.invalid{border-color:var(--signal)}.sortable-item[data-dragging]{opacity:.45}.sortable-item[data-over=before]:before,.sortable-item[data-over=after]:after{content:"";position:absolute;left:8px;right:8px;height:3px;border-radius:2px;background:var(--signal)}.sortable-item[data-over=before]:before{top:-6px}.sortable-item[data-over=after]:after{bottom:-6px}.sortable-head{display:flex;gap:10px;align-items:flex-start;padding:10px 12px}.sortable-head .grip{cursor:grab;color:var(--muted);letter-spacing:-3px;font-size:16px;line-height:1;padding:9px 2px 0 0;-webkit-user-select:none;user-select:none;flex:none}.sortable-head .grip:active{cursor:grabbing}.sortable-n{color:var(--muted);font-size:13px;padding-top:9px;min-width:1.4em;flex:none}.sortable-fields{flex:1;display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start;min-width:0}.sortable-fields .field{margin:0;flex:1;min-width:140px}.sortable-fields .field.narrow{flex:0 0 170px}.sortable-head .movers{flex:none;padding-top:22px}.sortable-head .movers .btn{padding:4px 8px}.sortable-more{margin:0;padding:0 12px 10px 42px}.sortable-more>summary{margin:0}.sortable-item>.fold{padding:0 12px 10px 42px}.sortable-item .inline{flex-wrap:wrap;align-items:flex-start}.form-foot{position:sticky;bottom:calc(-24px - env(safe-area-inset-bottom,0px));margin:var(--s4) -24px -24px;padding:12px 24px calc(12px + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--line);display:flex;gap:8px;align-items:center;flex-wrap:wrap;z-index:2}.form-foot .muted{margin-left:auto;font-size:12px}@media(max-width:640px){.sortable-more,.sortable-item>.fold{padding-left:12px}}.ev .t{display:flex;flex-direction:column;line-height:1.25}.ev .t .day{font-family:var(--font-body);font-size:11px;color:var(--muted)}@media(min-width:761px){.ev .t .day.short{display:none}}.connects{font-size:12.5px;margin-top:4px}.icon-picker{display:flex;flex-direction:column;gap:8px;margin:4px 0}.icon-grid{display:grid;grid-template-columns:repeat(8,36px);gap:6px}.icon-grid button{width:36px;height:36px;border-radius:8px;border:1px solid var(--line);background:var(--bg-2);color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0}.icon-grid button svg{width:18px;height:18px}.icon-grid button:hover{border-color:var(--field-line-hover);color:var(--text)}.icon-grid button.on{border-color:var(--signal);color:var(--signal);background:var(--panel)}.icon-grid button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.icon-letters{display:flex;align-items:center;gap:8px;font-size:12px}.icon-letters .input{width:64px;text-align:center}@media(max-width:700px){.icon-grid{grid-template-columns:repeat(6,36px)}}.doc-check{margin-bottom:16px}.doc-check .actions{margin-bottom:6px}.picture-btn{position:relative;padding:0;border:0;background:none;cursor:pointer;border-radius:50%;flex:none;display:inline-grid;color:inherit;font:inherit}.picture-btn:disabled{cursor:default;opacity:.7}.picture-btn .avatar-badge{position:absolute;right:-3px;bottom:-3px;width:18px;height:18px;border-radius:50%;background:var(--surface);border:1px solid var(--hairline);color:var(--muted);display:grid;place-items:center}.picture-btn .avatar-badge svg{width:11px;height:11px}.picture-btn:hover .avatar-badge{color:var(--text)}.icon-btn{border:0;background:none;color:var(--muted);padding:4px;border-radius:6px;cursor:pointer;display:inline-grid;place-items:center;vertical-align:middle;margin-left:2px}.icon-btn:hover{color:var(--text);background:var(--chip)}.icon-btn svg{width:16px;height:16px}.identity .name-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tap-mark img{width:100%;height:100%;object-fit:contain;border-radius:12px}.phone-wait{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:8px 0}.phone-wait .qr{background:#fff;padding:12px;border-radius:12px;display:inline-block;box-sizing:content-box}.phone-wait .qr svg{width:180px;height:180px;display:block}.phone-code{font-family:var(--font-mono);font-size:30px;letter-spacing:.14em;font-weight:500}.phone-request{margin:12px 0}.phone-request dl{grid-template-columns:auto 1fr}.doors .door.focus{border-color:var(--signal)}.doors .door .row-head h3{margin:0}.slide-entry-code{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.slide-entry-code .qr{background:#fff;padding:12px;border-radius:14px}.slide-entry-code .qr svg{width:220px;height:220px;display:block}.slide-entry-code .code{font-family:var(--font-mono);font-size:44px;letter-spacing:.14em;font-weight:500}.slide-entry-code .hint{margin:0;opacity:.8}.slide-entry-code .ttl{margin:0;opacity:.6;font-size:14px}.builtin-rows .row{display:flex;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.builtin-rows .row .what{display:flex;flex-direction:column;gap:2px}.apply .tap{margin:0 0 6px}.purposes .row-head{margin-bottom:4px}.purposes.compact{display:inline-flex}.chip .chip-x{border:0;background:transparent;color:inherit;cursor:pointer;padding:0 0 0 6px;font-size:13px;line-height:1}.chip .chip-x:hover{color:var(--signal)}.areas .cols{display:grid;grid-template-columns:minmax(200px,260px) 1fr;gap:16px 24px;align-items:start}@media(max-width:720px){.areas .cols{grid-template-columns:1fr}}.areas .area-empty{min-height:120px;display:grid;place-items:center}.area-tree{padding:10px 12px}.area-tree a.on{color:var(--signal)}.list.plain{border:0;border-radius:0}.list.plain li{border:0;padding:4px 0;display:block}.area-page .section{margin-top:18px}.area-page .thing{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.area-page .thing .purposes-cell{display:flex;flex-direction:column;gap:4px;margin-left:auto}.install-card{margin-bottom:16px;padding:14px 16px}.install-app .install-head{display:flex;gap:14px;align-items:center}.install-app .install-head p{margin:2px 0 0}.install-icon{width:56px;height:56px;border-radius:14px;flex:none}.install-steps{margin:12px 0 0;padding-left:0;list-style:none;counter-reset:step}.install-steps li{display:flex;gap:10px;align-items:flex-start;padding:6px 0;counter-increment:step}.install-steps .step-text{flex:1;min-width:0}.install-steps li:before{content:counter(step);width:22px;height:22px;border-radius:50%;background:var(--chip);display:inline-flex;align-items:center;justify-content:center;font-size:12px;flex:none}.install-steps svg{flex:none;color:var(--signal)}.install-card .actions{margin-top:10px;align-items:center;gap:10px}.ways-in .way{padding:8px 0;border-top:1px solid var(--line)}.ways-in .way:first-of-type{border-top:0}.ways-in .way-head{display:flex;gap:10px;align-items:center}.ways-in .way small{display:block;margin-top:2px}.ways-in .way-sub{margin:-2px 0 6px 34px}.notices{background:var(--panel)}.notices li{display:block;padding:12px 14px}.notices li.fresh{box-shadow:inset 3px 0 0 var(--signal)}.notices li{position:relative}.notices .notice-remove{position:absolute;top:6px;right:8px;padding:2px 8px;line-height:1}.notices li .fold{margin-right:28px}.kv-table{border-collapse:collapse;width:100%;min-width:0;margin-top:8px}.kv-table th{font-weight:500;color:var(--muted);text-align:center;padding:4px 6px;font-size:.8em;text-transform:none;letter-spacing:0;background:none;white-space:normal}.kv-table th:not(:first-child),.kv-table td:not(:first-child){width:64px}.kv-table th:first-child,.kv-table td:first-child{text-align:left;padding-left:0}.kv-table td{padding:6px 8px;text-align:center;border-top:1px solid var(--line)}details.fold summary .fold-sum{margin-left:auto;text-transform:none;letter-spacing:0;font-weight:400;color:var(--muted);font-size:12px;text-align:right;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}details.fold>.section>h3,details.fold>.panel>.section>h3,details.fold>.section>.row-head>h3,details.fold>.panel>.section>.row-head>h3{display:none}details.fold>.section,details.fold>.panel{margin-top:4px}details.fold>.panel{padding-top:0}.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}table.grants tr.row td.inline .btn.danger{opacity:0;transition:opacity .12s}table.grants tr.row:hover td.inline .btn.danger,table.grants tr.row:focus-within td.inline .btn.danger{opacity:1}.quickadd-row{padding:10px 0;border-top:1px solid var(--line)}.quickadd-row:first-of-type{border-top:0}.quickadd-row .field{margin:0 0 8px}.quickadd-row .chips{margin:-4px 0 8px}td.movers .switch{accent-color:var(--signal);width:16px;height:16px;margin:0 8px 0 0;vertical-align:middle;cursor:pointer}@media(pointer:coarse){.check,.field label.check,.configform label.check{display:flex;min-height:44px;align-items:center;gap:12px;font-size:14px}.check input,.checks input,td.pick input,th.pick input,.kv-table input[type=checkbox],td.movers .switch{width:22px;height:22px;margin:0}.checks{gap:0 12px}.kv-table td{padding:10px 8px}.privacy-records .check{display:flex;min-height:36px;margin:2px 0 0}.kv-table th:not(:first-child),.kv-table td:not(:first-child){width:56px}.btn{min-height:40px}.seg .btn{min-height:36px}.tabs button{padding:9px 14px;min-height:36px}button.chip,.chip button{min-height:30px;padding:3px 10px;font-size:13px}.chip-x{padding:0 6px 0 10px;font-size:18px;line-height:1}.icon-btn{padding:10px}button.info{padding:10px;margin:-10px}}
