:root{--bg:#050807;--panel:#07110c;--panel-border:#174d2f;--green:#39ff88;--green-dim:#6ea982;--amber:#fc6;--red:#ff5c7a;--text:#d7ffe4;--text-subtle:#82a892;--mono:"JetBrains Mono", "Fira Code", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);max-width:100vw;color:var(--text);font-family:var(--mono);height:100%;overflow-x:hidden}body{flex-direction:column;min-height:100vh;display:flex}::selection{color:var(--text);background:#39ff8847}a{color:var(--green)}button,input,textarea{font-family:inherit;font-size:inherit;color:inherit}button:focus-visible,input:focus-visible,.peer:focus-visible{outline:2px solid var(--green);outline-offset:2px}button{border:1px solid var(--panel-border);color:var(--text);cursor:pointer;background:0 0;border-radius:3px;padding:.35rem .7rem}button:hover{background:#39ff880f}button.primary{color:var(--green);border-color:#39ff8880}button.danger{color:var(--red);border-color:#ff5c7a80}.topbar{border-bottom:1px solid var(--panel-border);background:linear-gradient(to bottom, #081209, var(--bg));flex-wrap:wrap;align-items:baseline;gap:.9rem;padding:.85rem 1.25rem;display:flex}.wordmark{letter-spacing:.14em;color:var(--green);font-size:1.05rem;font-weight:700}.tagline{color:var(--text-subtle);letter-spacing:.02em;font-size:.78rem}.spacer{flex:1}.chip{border:1px solid var(--panel-border);color:var(--text-subtle);white-space:nowrap;background:#174d2f2e;border-radius:3px;align-items:center;gap:.4rem;padding:.22rem .6rem;font-size:.74rem;display:inline-flex}.chip.good{color:var(--green);border-color:#39ff8859}.chip.warn{color:var(--amber);border-color:#ffcc6659}.chip.bad{color:var(--red);border-color:#ff5c7a59}.chip .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.layout{background:var(--panel-border);flex:1;grid-template-columns:260px minmax(0,1fr) 280px;gap:1px;min-height:0;display:grid}@media (max-width:860px){.layout{grid-template-columns:1fr}.panel.peers,.panel.security{max-height:40vh}}.panel{background:var(--panel);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.panel-head{letter-spacing:.14em;text-transform:uppercase;color:var(--text-subtle);border-bottom:1px solid var(--panel-border);background:var(--panel);z-index:1;padding:.65rem .9rem;font-size:.7rem;position:sticky;top:0}.identity-card{border:1px solid var(--panel-border);background:#39ff8808;border-radius:4px;margin:.75rem;padding:.75rem}.identity-card .name{color:var(--text);font-size:.86rem;font-weight:700}.identity-card .fp{color:var(--text-subtle);word-break:break-all;margin-top:.35rem;font-size:.66rem;line-height:1.5}.peer-list{margin:0;padding:0 .4rem .75rem;list-style:none}.peer{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.55rem;width:100%;padding:.5rem .55rem;display:flex}.peer:hover{background:#39ff880d}.peer-status{background:#35473f;border-radius:50%;flex-shrink:0;width:8px;height:8px}.peer-meta{min-width:0}.peer-name{color:var(--text);font-size:.8rem}.peer-addr{color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.connect-form{border-top:1px solid var(--panel-border);flex-direction:column;gap:.5rem;margin:.5rem .75rem 1rem;padding-top:.75rem;display:flex}.connect-form .tabs{gap:.3rem;display:flex}.connect-form .tabs button{flex:1;padding:.3rem;font-size:.72rem}.connect-form .tabs button[aria-pressed=true]{border-color:var(--green);color:var(--green)}.connect-form input{border:1px solid var(--panel-border);background:#061009;border-radius:3px;width:100%;padding:.4rem .55rem;font-size:.75rem}.connect-form label{color:var(--text-subtle);font-size:.68rem}.connect-form .row{flex-direction:column;gap:.25rem;display:flex}.connect-form .checkbox-row{color:var(--text-subtle);align-items:center;gap:.4rem;font-size:.72rem;display:flex}.console-log{flex-direction:column;flex:1;gap:.4rem;padding:.85rem 1rem;font-size:.82rem;line-height:1.55;display:flex;overflow-y:auto}.line-system{color:var(--text-subtle)}.line-system .marker{color:var(--green-dim)}.line-chat .who{margin-right:.4rem;font-weight:700}.line-chat.you .who{color:var(--green-dim)}.line-chat.peer .who{color:var(--green)}.line-event{color:var(--amber);font-size:.78rem}.file-progress-track{background:var(--panel-border);border-radius:2px;height:4px;margin-top:.3rem;overflow:hidden}.file-progress-fill{background:var(--amber);height:100%;transition:width .15s linear}.line-error{color:var(--red);font-size:.8rem}.console-input-row{border-top:1px solid var(--panel-border);background:#061009;align-items:center;gap:.55rem;padding:.7rem 1rem;display:flex}.prompt-glyph{color:var(--green)}.console-input{caret-color:var(--green);background:0 0;border:none;flex:1}.console-input::placeholder{color:#3d5a4c}.file-label{color:var(--text-subtle);cursor:pointer;border:1px solid var(--panel-border);border-radius:3px;padding:.3rem .55rem;font-size:.68rem}.file-label:hover{color:var(--green);border-color:var(--green)}.trust-modal-backdrop{z-index:20;background:#020503b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.trust-modal{border:1px solid var(--panel-border);background:var(--panel);border-radius:6px;width:min(420px,92vw);padding:1.1rem 1.2rem;box-shadow:0 0 40px #39ff8814}.trust-modal h2{color:var(--amber);margin:0 0 .6rem;font-size:.95rem}.trust-modal .fp{word-break:break-all;color:var(--text);margin:.3rem 0;font-size:.72rem}.trust-modal .actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.sec-section{border-bottom:1px solid var(--panel-border);padding:.85rem .9rem}.sec-section:last-child{border-bottom:none}.sec-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:.4rem;font-size:.66rem}.sec-fp{word-break:break-all;color:var(--text);font-size:.7rem;line-height:1.5}.kv-row{color:var(--text);justify-content:space-between;gap:.5rem;padding:.2rem 0;font-size:.75rem;display:flex}.kv-row .k{color:var(--text-subtle)}.storage-note{color:var(--amber);margin-top:.55rem;font-size:.68rem;line-height:1.5}.empty-hint{color:var(--text-subtle);padding:.85rem .9rem;font-size:.74rem;line-height:1.6}.statusbar{border-top:1px solid var(--panel-border);color:var(--text-subtle);background:#040705;flex-wrap:wrap;align-items:center;gap:1.1rem;padding:.5rem 1.1rem;font-size:.72rem;display:flex}.statusbar .route{color:var(--green)}.statusbar .sep{color:#24382e}.activity-dot{background:var(--green);border-radius:50%;width:6px;height:6px}
