/* CHIKARA sim v2 additions — login, console, layers, insights */
#login-screen{position:fixed;inset:0;z-index:9999;background:var(--obsidian);color:var(--ivory);display:flex;align-items:center;justify-content:center;padding:1rem}
#login-screen[hidden]{display:none}
.login-card{max-width:420px;width:100%;background:rgba(11,61,102,0.45);border:1px solid rgba(255,255,255,0.14);border-radius:12px;padding:2rem;box-shadow:0 20px 60px rgba(0,0,0,0.35)}
.login-card::before{content:"";display:block;height:4px;margin:-2rem -2rem 1.25rem;border-radius:12px 12px 0 0;background:var(--flag-stripe)}
.login-card h1{color:var(--bw-white);font-size:1.6rem;margin:0.5rem 0 0.25rem}
.login-card .brand-mark{width:44px;height:44px;font-size:1.3rem;margin-bottom:0.5rem}
.login-card label{display:block;font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.55);margin:0.9rem 0 0.3rem}
.login-card select,.login-card input{width:100%;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.2);color:var(--bw-white);border-radius:6px;padding:0.6rem 0.7rem;font:inherit}
.login-card .btn{width:100%;margin-top:1.1rem}
.login-err{color:#f0a8ae;font-size:0.8rem;margin-top:0.6rem;min-height:1em}
.demo-accounts{margin-top:1rem;font-size:0.72rem;color:rgba(255,255,255,0.5);border-top:1px solid rgba(255,255,255,0.1);padding-top:0.8rem;line-height:1.7}
.demo-accounts code{color:var(--bw-blue)}
#toast-box{position:fixed;bottom:1rem;right:1rem;z-index:9998;display:flex;flex-direction:column;gap:0.5rem;max-width:360px}
.toast{background:var(--charcoal);color:var(--bw-white);border-left:3px solid var(--bw-blue);border-radius:6px;padding:0.7rem 0.9rem;font-size:0.8rem;opacity:0;transform:translateX(20px);transition:all 0.3s var(--ease);box-shadow:var(--shadow)}
.toast.show{opacity:1;transform:none}
.toast.ok{border-left-color:var(--ok)}
.toast.warn{border-left-color:var(--warn)}
.toast.err{border-left-color:var(--danger)}
.layer-row{display:flex;align-items:center;gap:0.8rem;background:#fff;border:1px solid rgba(11,61,102,0.12);border-radius:8px;padding:0.7rem 0.9rem;margin-bottom:0.5rem}
.layer-id{font-family:var(--font-mono);font-size:0.7rem;font-weight:700;color:var(--bw-blue-ink);background:rgba(117,170,219,0.18);padding:0.25rem 0.45rem;border-radius:4px}
.console-row{display:grid;grid-template-columns:88px 1fr 44px 52px 34px auto;gap:0.6rem;align-items:center;font-size:0.72rem;padding:0.32rem 0;border-bottom:1px dashed rgba(13,59,42,0.12)}
.console-row.ok span:nth-child(3){color:var(--ok)}
.console-row.err span:nth-child(3){color:var(--danger)}
.console-row.wait{opacity:0.55}
#db-view{background:var(--obsidian);color:#9fe8d8;font-size:0.68rem;padding:0.8rem;border-radius:8px;overflow:auto;max-height:260px;white-space:pre-wrap}
select#db-table{background:#fff;border:1px solid rgba(13,59,42,0.2);border-radius:6px;padding:0.4rem;font:inherit;margin-bottom:0.5rem;width:100%}
.chip-row{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.8rem}
.chip{font-size:0.68rem;font-weight:700;letter-spacing:0.04em;background:rgba(42,155,138,0.12);color:var(--aqua-deep);padding:0.28rem 0.6rem;border-radius:999px}
.insight-card{background:#fff;border:1px solid rgba(11,61,102,0.12);border-left:3px solid var(--bw-blue);border-radius:8px;padding:0.8rem 0.95rem;margin-bottom:0.6rem}
.insight-head{display:flex;align-items:center;gap:0.55rem;margin-bottom:0.3rem}
.insight-icon{color:var(--bw-blue-ink)}
.conf{margin-left:auto;width:70px;height:5px;background:rgba(11,61,102,0.1);border-radius:99px;overflow:hidden}
.conf i{display:block;height:100%;background:linear-gradient(90deg,var(--bw-blue),var(--bw-blue-deep))}
.timeline-item{display:flex;gap:0.9rem;padding:0.5rem 0;border-bottom:1px dashed rgba(11,61,102,0.12)}
.timeline-item .mono{color:var(--bw-blue-ink);font-weight:700}
#copilot-conv{max-height:220px;overflow:auto;margin:0.5rem 0}
#copilot-conv .bubble{margin-bottom:0.4rem}
#probe-out{background:var(--ivory-light);border-radius:6px;padding:0.6rem;margin-top:0.6rem;min-height:2.2em;font-size:0.75rem}
.acl-table td,.acl-table th{text-align:center}
.acl-table td:first-child,.acl-table th:first-child{text-align:left}
#appt-slot{color:var(--charcoal);background:#fff;border:1px solid rgba(13,59,42,0.25);border-radius:6px;padding:0.55rem;font:inherit}
@media (prefers-reduced-motion: reduce){.btn-mesh{animation:none}}
