
























.os-wrap { max-width:1120px; margin:0 auto; padding:22px 20px 64px;
           color:#16231d; font:var(--fs-body,13.5px)/1.45 Inter,-apple-system,Segoe UI,Roboto,Arial,sans-serif; }












#brain-modal [data-os-mount] { flex:1; min-width:0; overflow:auto; background:#faf7f2; }
#brain-modal .os-wrap { max-width:none; padding:16px 24px 30px; }

.os-hdr { display:flex; align-items:baseline; gap:14px; flex-wrap:wrap;
          border-bottom:1px solid var(--canopy-line,#2c4f3e); padding-bottom:12px; margin-bottom:18px; }
.os-hdr h1 { font-size:20px; margin:0; color:var(--canopy,#1e3b2f); font-weight:700; letter-spacing:-.01em; }
.os-sub { font-size:var(--fs-micro,10px); text-transform:uppercase; letter-spacing:.08em;
          color:var(--motm-grey-500,#6b7c74); font-weight:600; }





.os-fresh { margin-left:auto; font-size:var(--fs-micro,10px); font-weight:600; letter-spacing:.06em;
            text-transform:uppercase; color:var(--motm-grey-500,#6b7c74); white-space:nowrap; }
.os-fresh.stale { color:#8a5a00; }

.os-tiles { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:20px; }
.os-tile { background:#fff; border:1px solid #dde5e1; border-radius:10px; padding:11px 15px; min-width:104px; }
.os-tile b { display:block; font-size:var(--fs-num,24px); font-weight:700; line-height:1;
             color:var(--canopy,#1e3b2f); font-variant-numeric:tabular-nums; }
.os-tile span { display:block; margin-top:5px; font-size:var(--fs-label,11px); font-weight:600;
                text-transform:uppercase; letter-spacing:.08em; color:var(--motm-grey-500,#6b7c74); }

.os-tabs { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:16px; }
.os-tab { border:1px solid #dde5e1; background:#fff; border-radius:999px; padding:5px 13px; cursor:pointer;
          font-size:var(--fs-label,11px); font-weight:600; letter-spacing:.05em; text-transform:uppercase;
          color:var(--motm-grey-500,#6b7c74); }
.os-tab[aria-selected="true"] { background:var(--canopy,#1e3b2f); border-color:var(--canopy,#1e3b2f); color:#fff; }
.os-tab:focus-visible { outline:2px solid var(--signal,#3e7d5c); outline-offset:2px; }

.os-group { margin-bottom:22px; }
.os-group > h2 { font-size:var(--fs-label,11px); font-weight:700; text-transform:uppercase;
                 letter-spacing:.08em; color:var(--signal,#3e7d5c); margin:0 0 8px; }
.os-group > h2 em { font-style:normal; color:var(--motm-grey-500,#6b7c74); font-weight:600; }

.os-row { background:#fff; border:1px solid #e3eae6; border-radius:9px; padding:10px 13px; margin-bottom:6px;
          cursor:pointer; display:flex; gap:11px; align-items:baseline; }
.os-row:hover { border-color:var(--signal,#3e7d5c); }
.os-row:focus-visible { outline:2px solid var(--signal,#3e7d5c); outline-offset:1px; }
.os-row .ttl { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.os-row .age { font-size:var(--fs-micro,10px); color:var(--motm-grey-500,#6b7c74);
               font-variant-numeric:tabular-nums; white-space:nowrap; }


.os-row.shut { background:#f7f9f8; border-style:dashed; }
.os-row.shut .ttl { color:var(--motm-grey-500,#6b7c74); }

.os-chip { font-size:var(--fs-micro,10px); font-weight:700; letter-spacing:.05em; text-transform:uppercase;
           border-radius:999px; padding:2px 7px; white-space:nowrap; }
.os-chip.kind    { background:var(--signal-tint,#eaf3ec); color:var(--canopy,#1e3b2f); }



.os-chip.craig   { background:var(--action-tint,#e4f9e8); color:var(--action-deep,#0c7a38);
                   border:1px solid var(--action-line,#8fdba8); }
.os-chip.hq      { background:#eef1f0; color:var(--motm-grey-500,#6b7c74); }
.os-chip.nagged  { background:#fdf3e0; color:#8a5a00; }
.os-chip.shut    { background:#eef1f0; color:#8a938d; }



.os-chip.ok      { background:var(--signal-tint,#eaf3ec); color:var(--canopy,#1e3b2f);
                   border:1px solid #b9d8c6; }
.os-chip.bad     { background:#fdf3e0; color:#8a5a00; border:1px solid #f0d9a8; }


.os-chip.ev      { background:#eef1f0; color:var(--motm-grey-500,#6b7c74); font-weight:600; }
.os-chip.ev.live { background:var(--signal-tint,#eaf3ec); color:var(--canopy,#1e3b2f); }
.os-chip.ev.self { background:#fdf3e0; color:#8a5a00; border:1px solid #f0d9a8; }

.os-note { font-size:var(--fs-micro,10px); color:var(--motm-grey-500,#6b7c74);
           margin:-6px 0 14px; line-height:1.55; }
.os-note code { background:#eef1f0; border-radius:3px; padding:0 3px; }

.os-detail { background:#fbfdfc; border:1px solid #e3eae6; border-top:none;
             border-radius:0 0 9px 9px; padding:11px 14px; margin:-7px 0 8px; }
.os-detail dl { display:grid; grid-template-columns:max-content 1fr; gap:4px 14px; margin:0 0 9px; }
.os-detail dt { font-size:var(--fs-micro,10px); font-weight:700; text-transform:uppercase;
                letter-spacing:.06em; color:var(--motm-grey-500,#6b7c74); }
.os-detail dd { margin:0; font-size:var(--fs-body,13.5px); word-break:break-word; }
.os-detail .evt { font-size:var(--fs-micro,10px); color:var(--motm-grey-500,#6b7c74);
                  font-variant-numeric:tabular-nums; }
.os-detail .evt b { color:var(--canopy,#1e3b2f); }

.os-empty { padding:28px; text-align:center; color:var(--motm-grey-500,#6b7c74);
            background:#fff; border:1px dashed #dde5e1; border-radius:10px; }
.os-err { background:#fdf3e0; border:1px solid #f0d9a8; color:#7a4f00; border-radius:9px;
          padding:12px 15px; margin-bottom:16px; }




.os-block { margin:0 0 14px; }







.os-block-hd { display:flex; align-items:baseline; gap:8px; margin:0 0 7px; flex-wrap:wrap; }
.os-block-hd .os-t { font:700 13px Inter; color:#1f4a2d; white-space:nowrap; }
.os-block-hd .os-n { font:400 12px Inter; color:#9aa39b; white-space:nowrap; }
.os-block .os-row { padding:8px 11px; }
.os-block .os-row .ttl { font-size:12.5px; }
.os-block .os-detail { font-size:12px; }


.os-none { font:400 12px Inter; color:#9aa39b; background:#faf9f4; border:1px solid #eee9db;
           border-radius:8px; padding:8px 11px; }
.os-door { font:600 11px Inter; color:#2456a6; background:none; border:0; padding:0; cursor:pointer;
           margin-left:auto; white-space:nowrap; }
.os-door:hover { text-decoration:underline; }



.os-login { max-width:340px; margin:70px auto; background:#fff; border:1px solid #dde5e1;
            border-radius:12px; padding:22px; text-align:center; }
.os-login input { width:100%; box-sizing:border-box; padding:9px 11px; margin:12px 0 10px;
                  border:1px solid #cfdad5; border-radius:7px; font-size:var(--fs-body,13.5px); }
.os-login button { width:100%; padding:9px; border:0; border-radius:7px; cursor:pointer;
                   background:var(--action,#15a850); color:#fff; font-weight:700;
                   font-size:var(--fs-body,13.5px); }
