@keyframes blink{50%{opacity:0}}.bryo{--paper:color-mix(in oklch, var(--color-panel) 55%, var(--color-field));--card:var(--color-panel);--ink:var(--color-bright);--muted:var(--color-dim);--line:var(--color-rule);--teal:var(--color-signal);--teal-deep:var(--color-bright);--clay:var(--color-link);--on-teal:var(--color-field);--shadow:none;--serif:var(--font-display);--sans:var(--font-sans);color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.45}.bryo *{box-sizing:border-box}.bryo button,.bryo input,.bryo textarea,.bryo select{font:inherit;color:inherit}.bryo button{cursor:pointer}.bryo button:focus-visible,.bryo input:focus-visible,.bryo textarea:focus-visible,.bryo select:focus-visible{outline:2px solid var(--clay);outline-offset:2px}.bryo .sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bryo .app{font-family:var(--sans);flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.bryo .top{flex-shrink:0;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px 4px;display:grid}.bryo .brand{align-items:center;gap:12px;min-width:0;display:flex}.bryo .mark{background:var(--teal);border-radius:0;flex:none;place-items:center;width:38px;height:34px;display:grid}.bryo .mark svg{width:26px;height:26px}.bryo .word{font-family:var(--serif);letter-spacing:0;margin:0;font-size:28px;font-weight:560;line-height:1}.bryo .tag{color:var(--muted);margin:3px 0 0;font-size:13px}.bryo .top-actions{align-items:center;gap:10px;display:flex}.bryo .model-button,.bryo .view-switch button,.bryo .dialog button,.bryo .composer button,.bryo .actions button,.bryo .command button,.bryo .prompts button{border:1px solid var(--line);background:var(--card);border-radius:0}.bryo .model-button{min-width:180px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start;padding:8px 14px;display:flex}.bryo .model-button strong{font-size:14px;font-weight:600}.bryo .model-button span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:12px;overflow:hidden}.bryo .view-switch{gap:2px;display:flex}.bryo .view-switch button{padding:8px 12px}.bryo .view-switch button.on{background:var(--color-field);color:var(--ink);border-color:var(--line);box-shadow:inset 0 -2px var(--teal)}.bryo .workspace{flex:1;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:14px;min-height:0;padding:12px 16px 6px;display:grid;overflow:hidden}.bryo .card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:0;min-height:0}.bryo .chat{flex-direction:column;min-width:0;padding:22px 22px 16px;display:flex;overflow:hidden}.bryo .thread{overscroll-behavior:contain;overflow-wrap:anywhere;flex:1;min-height:0;padding-right:6px;overflow:auto}.bryo .kicker{color:var(--clay);letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:600}.bryo .kicker.answer{color:var(--teal);margin-top:22px}.bryo .question{max-width:22em;font-family:var(--serif);letter-spacing:0;margin:0;font-size:30px;font-weight:520;line-height:1.2}.bryo .lede{color:var(--muted);max-width:38em;margin:10px 0 0}.bryo .prompts{flex-direction:column;align-items:flex-start;gap:8px;margin-top:22px;display:flex}.bryo .prompts button{text-align:left;border-radius:0;max-width:40em;padding:10px 12px}.bryo .prompts button:hover{border-color:var(--teal)}.bryo .turn{padding-bottom:8px}.bryo .turn+.turn{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.bryo .turn:not(.latest) .question{font-size:22px}.bryo .turn:not(.latest) .answer-text{color:var(--color-bright);font-size:18px}.bryo .answer-text{max-width:38em;font-family:var(--serif);white-space:pre-wrap;margin:0;font-size:22px;font-weight:500;line-height:1.35}.bryo .caret{vertical-align:text-bottom;background:var(--teal);width:8px;height:1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}.bryo .answer-error{max-width:38em;color:var(--clay);margin:0}.bryo .answer-error button{margin-top:8px;display:inline-block}.bryo .answer-error button,.bryo .entry-line button,.bryo .actions button,.bryo .command button,.bryo .dialog-actions button,.bryo .icon-button{border:1px solid var(--line);background:var(--color-field);border-radius:0;padding:7px 10px}.bryo .composer{border-top:1px solid var(--line);flex-shrink:0;margin-top:auto;padding-top:12px}.bryo .entry-line{color:var(--muted);grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:13px;display:grid}.bryo .entry-line button{background:0 0;padding:4px 8px}.bryo .block-note{color:var(--clay);margin:0 0 8px;font-size:13px}.bryo .composer-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.bryo textarea,.bryo input[type=text],.bryo input[type=password],.bryo input:not([type]),.bryo select{border:1px solid var(--line);background:var(--color-field);border-radius:0;width:100%;padding:10px 12px}.bryo textarea{resize:none}.bryo .composer textarea{min-width:0;max-height:120px;font-size:22px;line-height:1.35}.bryo .composer .send,.bryo .actions .primary,.bryo .dialog-actions .primary{background:var(--teal);color:var(--on-teal);border-color:var(--teal)}.bryo .composer .send:disabled,.bryo .actions .primary:disabled{opacity:1;background:var(--color-rule);color:var(--color-dim);border-color:var(--color-rule)}.bryo .send{padding:0 18px;font-weight:600}.bryo .send:disabled,.bryo button:disabled{cursor:default;opacity:.55}.bryo .network{overscroll-behavior:contain;padding:16px 16px 20px;overflow:auto}.bryo .network-head h2{font-family:var(--serif);letter-spacing:0;margin:0;font-size:22px;font-weight:520;line-height:1.25}.bryo .fine{color:var(--muted);margin:8px 0 0;font-size:12.5px}.bryo .fine code{font-size:12px}.bryo .map{background:radial-gradient(circle at 20% 20%, color-mix(in oklch, var(--color-signal) 6%, transparent), transparent 40%), var(--color-panel);border:1px solid var(--line);border-radius:0;height:220px;margin:14px 0 12px;position:relative}.bryo .map>svg{width:100%;height:100%;position:absolute;inset:0}.bryo .map-node{background:0 0;border:0;width:34px;height:34px;padding:0;position:absolute;transform:translate(-50%,-50%)}.bryo .map-node svg{width:34px;height:34px;filter:drop-shadow(0 1px 0 color-mix(in oklch, var(--color-bright) 15%, transparent));display:block}.bryo .map-node.dim{opacity:.45}.bryo .stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.bryo .stat{background:var(--paper);border-radius:0;margin:0;padding:8px 10px}.bryo .stat b{font-family:var(--serif);font-size:20px;font-weight:520;display:block}.bryo .stat span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:600}.bryo .resilience{color:var(--muted);margin:10px 0 0;font-size:13px}.bryo .select-hint{color:var(--muted);margin:14px 0}.bryo .detail{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.bryo .detail-title h3{font-family:var(--serif);margin:0;font-size:22px;font-weight:520}.bryo .detail-title p,.bryo .radio,.bryo .logic{color:var(--muted);margin:4px 0;font-size:13px}.bryo .logic{color:var(--ink)}.bryo .readings,.bryo .events,.bryo .commands,.bryo .global ul{margin:8px 0;padding:0;list-style:none}.bryo .readings.stale{opacity:.55}.bryo .readings li,.bryo .events li,.bryo .commands li,.bryo .global li{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:4px 0;font-size:13px;display:flex}.bryo .events li,.bryo .commands li,.bryo .global li{color:var(--muted);display:block}.bryo .actions,.bryo .dialog-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.bryo .actions .quiet{background:0 0}.bryo .command{margin-top:12px}.bryo .command label,.bryo .plugin-form label,.bryo .actuators label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.bryo .actuators{gap:8px;margin-top:12px;display:grid}.bryo .global{margin-top:8px;font-size:13px}.bryo .node-list{margin:14px 0 0;padding:0;list-style:none}.bryo .node-list button{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;align-items:center;gap:10px;width:100%;padding:8px 4px;display:flex}.bryo .node-list button.on{background:color-mix(in oklch, var(--color-signal) 8%, var(--color-field))}.bryo .node-list strong{font-weight:600;display:block}.bryo .node-list em{color:var(--muted);font-size:12px;font-style:normal;display:block}.bryo .node-list small{color:var(--clay);margin-left:auto;font-size:11px}.bryo .dot{background:var(--color-rule);border-radius:0;flex:none;width:8px;height:8px}.bryo .dot.live{background:var(--teal)}.bryo .sitebar-wrap{flex-shrink:0;max-height:28dvh;padding:8px 16px 14px;overflow:auto}.bryo .sitebar{background:var(--card);border:1px solid var(--line);border-radius:0;flex-wrap:wrap;display:flex;overflow:hidden}.bryo .site-tab{border-right:1px solid var(--line);flex:180px;align-items:center;min-width:0;display:flex}.bryo .site-tab:last-child{border-right:0}.bryo .site-tab.active{background:color-mix(in oklch, var(--color-signal) 10%, var(--card))}.bryo .site-select,.bryo .site-remove,.bryo .site-add,.bryo .site-add-form button{color:var(--ink);background:0 0;border:0;border-radius:0}.bryo .site-select{text-align:left;flex:1;min-width:0;padding:12px 4px 14px 14px}.bryo .site-select .site-gloss{color:var(--muted)}.bryo .site-remove{width:32px;height:32px;color:var(--muted);border-radius:0;margin-right:6px;font-size:20px;line-height:1}.bryo .site-remove:hover{background:color-mix(in oklch, var(--color-signal) 12%, transparent);color:var(--ink)}.bryo .site-add{border-left:1px solid var(--line);color:var(--teal-deep);background:0 0;flex:160px;padding:12px 16px;font-weight:600}.bryo .site-add.robot,.bryo .site-add.mesh{background:color-mix(in oklch, var(--color-signal) 8%, var(--card))}.bryo .site-add:disabled{cursor:wait;opacity:.72}.bryo .site-add-form.alvik-form,.bryo .site-add-form.mesh-form{flex-wrap:wrap;flex:100%;min-width:0}.bryo .alvik-hint{color:var(--muted);flex:1 0 100%;margin:0;padding:4px 6px 0;font-size:13px;line-height:1.35}.bryo .site-add-form{background:color-mix(in oklch, var(--color-signal) 6%, var(--card));flex:260px;align-items:center;gap:8px;padding:8px;display:flex}.bryo .site-add-form input{background:var(--color-field);min-width:0;color:var(--ink);border:0;border-radius:0;flex:1;padding:8px 10px}.bryo .site-add-form.alvik-form input,.bryo .site-add-form.mesh-form input{flex:1 0 100%}.bryo .site-add-form button{background:var(--color-field);color:var(--teal-deep);border-radius:0;padding:8px 10px;font-weight:600}.bryo .site-add-form button:disabled{cursor:wait;opacity:.72}.bryo .site-name{font-weight:600;display:block}.bryo .site-gloss{opacity:.78;margin-top:2px;font-size:12px;line-height:1.3;display:block}.bryo .banner{color:var(--clay);flex-shrink:0;margin:0 16px;font-size:13px}.bryo .loading{color:var(--muted);place-items:center;padding:24px;display:grid}.bryo .scrim{background:color-mix(in oklch, var(--color-bright) 38%, transparent);z-index:5;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.bryo .dialog{background:var(--card);width:min(560px,100%);max-height:min(760px,100dvh - 40px);box-shadow:0 24px 60px color-mix(in oklch, var(--color-bright) 18%, transparent);border-radius:0;padding:20px;overflow:auto}.bryo .dialog-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.bryo .dialog h2{font-family:var(--serif);letter-spacing:0;margin:0;font-size:30px;font-weight:520}.bryo .plugin-list{gap:8px;margin:14px 0;display:grid}.bryo .plugin-list button{text-align:left;border:1px solid var(--line);background:var(--color-field);border-radius:0;padding:10px 12px}.bryo .plugin-list button.on{border-color:var(--teal);background:color-mix(in oklch, var(--color-signal) 8%, var(--color-field))}.bryo .plugin-list strong{display:block}.bryo .plugin-list span{color:var(--muted);font-size:13px}.bryo .plugin-form{gap:10px;display:grid}.bryo .plugin-form label.check{text-transform:none;letter-spacing:0;color:var(--ink);flex-direction:row;align-items:flex-start;font-size:14px;font-weight:400}.bryo .notice{color:var(--teal-deep);margin:0}@media (width<=1100px){.bryo .workspace{grid-template-columns:1fr;padding:10px 12px}.bryo .network{display:none}.bryo .workspace.show-network .network{min-height:0;display:block}.bryo .workspace.show-network .chat{display:none}.bryo .view-switch{display:flex}.bryo .question{font-size:26px}.bryo .top{padding:12px 12px 0}.bryo .model-button{min-width:0}}@media (width<=520px){.bryo .top{grid-template-columns:minmax(0,1fr);row-gap:8px}.bryo .top-actions{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.bryo .model-button{padding:6px 8px}.bryo .chat{padding:16px 14px 12px}.bryo .composer textarea{font-size:16px}.bryo .site-gloss{display:none}.bryo .site-select{padding-top:9px;padding-bottom:9px}.bryo .site-add{padding:9px 10px}.bryo .model-button strong,.bryo .model-button span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.bryo .site-tab,.bryo .site-add{flex:50%;max-width:50%}.bryo .site-add-form,.bryo .site-add-form.alvik-form,.bryo .site-add-form.mesh-form{flex:100%;min-width:0;max-width:100%}}@media (prefers-reduced-motion:reduce){.bryo .caret{animation:none}}.bryo .top{border-bottom:1px solid var(--line);padding-bottom:10px}.bryo .top-actions{flex-wrap:wrap}.bryo .top .model-button{background:0 0;border:0;min-width:0;padding:6px 8px}.bryo .top .model-button span{display:none}.bryo .view-switch button{box-shadow:none;background:0 0;border:0}.bryo .view-switch button.on{box-shadow:inset 0 -2px var(--teal);background:0 0;border:0}.bryo .console-context{flex-shrink:0;padding:10px 20px 0}.bryo .place-control{align-items:center;max-width:360px;display:flex;position:relative}.bryo .place-trigger{background:var(--color-field);border-radius:4px;min-width:0}.bryo .place-error{color:var(--clay);background:var(--paper);z-index:3;position:absolute;top:100%}.bryo .workspace{gap:0;padding:10px 20px 16px}.bryo .chat-slot{min-width:0;min-height:0;display:flex}.bryo .chat{background:0 0;border:0;width:100%;padding:20px 32px 0 8px}.bryo .thread{padding:0}.bryo .conversation-content{gap:24px;padding:8px 0 24px}.bryo .empty{margin-top:min(20dvh,160px)}.bryo .empty .question{max-width:22em;font-size:32px}.bryo .chat.is-empty .composer-shell{margin-top:28px}.bryo .chat-question{background:var(--color-bright);color:var(--color-field);border-radius:4px}.bryo .turn{gap:16px;display:grid}.bryo .turn+.turn{border:0;margin-top:0;padding-top:8px}.bryo .composer-shell{flex-shrink:0;margin-top:auto;padding-bottom:8px}.bryo .composer{border:0;margin:0;padding:0}.bryo .composer>[data-slot=input-group]{background:var(--color-field);border:1px solid var(--line);box-shadow:none;border-radius:6px}.bryo .composer textarea{background:0 0;border:0;min-height:88px;padding:16px;font-size:18px}.bryo .composer-footer{gap:8px;padding:4px 12px 12px}.bryo .composer-options{flex-wrap:wrap;gap:0;min-width:0;display:flex}.bryo .composer-options button{height:30px;color:var(--muted);background:0 0;border:0;padding:4px 8px;font-size:12px}.bryo .composer-options button[aria-pressed=true]{color:var(--ink);background:var(--paper)}.bryo .composer-footer>button{border-radius:4px;flex:none;width:36px;height:36px;padding:0}.bryo .prompts{max-height:180px;margin:0 0 12px;overflow:auto}.bryo .prompts button{white-space:normal;height:auto}.bryo .network{border:0;border-left:1px solid var(--line);background:0 0;padding:12px 0 20px 24px}.bryo .network-head h2{font-size:20px}.bryo .feed-status{color:var(--muted);font:11px var(--font-mono);margin:6px 0 0}.bryo .sensor-glyph{flex:none;width:32px;height:32px}.bryo .node-list button{white-space:normal;justify-content:flex-start;height:auto}.bryo .node-list button>.sensor-glyph{width:24px;height:24px}.bryo .rule-confirmation{border-left:2px solid var(--teal);padding:12px 16px}.bryo .rule-confirmation p{margin:8px 0 14px}.bryo .rule-confirmation label{margin-bottom:6px;font-size:13px;display:block}.bryo .rule-confirmation input[type=email]{border:1px solid var(--line);background:var(--color-field);width:100%;margin-bottom:8px;padding:10px}.bryo .rule-confirm-title{justify-content:space-between;align-items:center;display:flex}.bryo .rule-confirm-title h3{font-weight:600}.bryo .rules-pane{grid-column:1/-1;width:100%;max-width:850px;min-height:0;margin:0 auto;padding:16px 0;overflow:auto}.bryo .show-rules .chat-slot,.bryo .show-rules .network{display:none}.bryo .rules-heading{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.bryo .rules-heading h2{font:600 28px var(--font-display)}.bryo .rule-list,.bryo .warning-list{margin:12px 0;padding:0;list-style:none}.bryo .rule-item{border-bottom:1px solid var(--line);padding:16px 90px 16px 0;position:relative}.bryo .rule-item p{margin:6px 0;font-size:14px}.bryo .rule-item strong{font-weight:600}.bryo .rule-status{color:var(--muted);margin-left:12px;font-size:11px}.bryo .rule-actions{display:flex;position:absolute;top:14px;right:0}.bryo .warnings-heading{margin-top:36px;font-size:20px}.bryo .warning-list li{border-bottom:1px solid var(--line);gap:12px;padding:14px 0;display:flex}.bryo .warning-list svg{width:18px;color:var(--clay);flex:none}.bryo .warning-list p{margin-top:6px;font-size:13px}.bryo .bridge-key{margin-top:20px;font-size:12px;display:block}.bryo .bridge-key input{font-family:var(--font-mono);margin-top:8px}.bryo .connection-dialog p{margin:16px 0}.bryo .connection-steps{padding-left:20px;list-style:decimal}.bryo .connection-steps li{margin:8px 0}.bryo .connection-dialog code{font-family:var(--font-mono)}@media (width<=1100px){.bryo .workspace{grid-template-columns:1fr;padding:10px 16px 16px}.bryo .chat{padding:12px 0 0}.bryo .network{border:0;padding:12px 0}.bryo .workspace.show-network .chat-slot,.bryo .workspace.show-rules .network{display:none}.bryo .console-context{padding:8px 16px 0}}@media (width<=520px){.bryo .top{flex-wrap:wrap;gap:8px;padding:10px 16px 8px;display:flex}.bryo .brand{flex:1}.bryo .brand>span{max-width:145px}.bryo .top-actions{justify-content:flex-end}.bryo .top .model-button{display:none}.bryo .view-switch button{padding:5px 8px;font-size:12px}.bryo .empty{margin-top:14dvh}.bryo .empty .question{font-size:26px}.bryo .composer textarea{font-size:16px}.bryo .place-control{max-width:100%}.bryo .rule-item{padding-right:74px}.bryo .rule-actions button{width:32px}.bryo .composer-options button{padding:4px 6px;font-size:11px}}.bryo .chat{padding:20px 24px 0}.bryo .conversation-content,.bryo .composer-shell{width:100%;max-width:768px;margin-left:auto;margin-right:auto}.bryo .chat.is-empty{justify-content:center}.bryo .chat.is-empty .thread{flex:none;min-height:0}.bryo .chat.is-empty .empty{text-align:center;margin:0}.bryo .chat.is-empty .empty .question{margin:0 auto}.bryo .chat.is-empty .composer-shell{margin-top:20px;margin-bottom:12dvh}.bryo .chat.is-empty .conversation-content{padding-bottom:0}@media (width<=520px){.bryo .chat{padding:12px 0 0}.bryo .chat.is-empty .composer-shell{margin-bottom:8dvh}}
