/* Brix · Ops (on top of /inbox/inbox.css) */
.app.ops{height:auto;min-height:100%}
.page{max-width:1120px;margin:0 auto;padding:28px 24px 64px}
.page h1{font-weight:500;font-size:clamp(26px,3vw,40px);letter-spacing:-.04em;line-height:1.05;margin:0 0 6px}
.page .lede{color:var(--stone);margin:0 0 28px;max-width:70ch}
.bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 20px}
.bar input[type=search]{flex:1;min-width:200px;height:38px;border:1px solid var(--mortar);background:#fff;padding:0 12px}
.chip{height:30px;padding:0 12px;border:1px solid var(--mortar);background:var(--card);font:500 11px 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--stone)}
.chip[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}

/* inventory */
.cat{margin:0 0 30px}
.cat>h2{color:var(--stone);margin:0 0 10px}
.items{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:12px}
.item{background:var(--card);border:1px solid var(--mortar);padding:16px 18px;display:grid;gap:8px;align-content:start}
.item header{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.item h3{font-weight:600;font-size:17px;letter-spacing:-.02em;margin:0}
.item .prov{color:var(--clay)}
.item dl{display:grid;grid-template-columns:92px 1fr;gap:4px 10px;margin:0;font-size:14px}
.item dt{color:var(--stone);font:500 10px/1.9 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.item dd{margin:0;overflow-wrap:anywhere}
.item .edit{justify-self:start;color:var(--stone);font:500 11px 'Geist Mono',monospace;text-transform:uppercase;letter-spacing:.06em}
.item .edit:hover{color:var(--ink)}
.status{font:500 10px 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border:1px solid currentColor}
.status.active{color:var(--moss)}.status.planned{color:var(--clay)}.status.unused,.status.retired{color:var(--stone)}

/* ledger */
.day{margin:0 0 6px;padding:18px 0 8px;border-bottom:1px solid var(--ink);color:var(--stone)}
.entry{display:grid;grid-template-columns:72px 1fr;gap:4px 16px;padding:14px 0;border-bottom:1px solid var(--linen)}
.entry .t{font:500 12px/1.6 'Geist Mono',monospace;color:var(--stone)}
.entry .t i{font-style:normal;color:var(--clay)}
.entry .head{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline}
.entry .svc{font:500 11px 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--stone)}
.entry .act{font:500 10px 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border:1px solid currentColor}
.act.added,.act.created,.act.connected{color:var(--moss)}
.act.changed,.act.deployed,.act.verified{color:var(--ink)}
.act.removed,.act.deleted{color:var(--clay)}
.act.note{color:var(--stone)}
.entry .subj{font-weight:600;overflow-wrap:anywhere}
.diff{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin-top:6px;font:13px/1.55 'Geist Mono',monospace;overflow-wrap:anywhere;white-space:pre-wrap}
.diff b{font-weight:500;color:var(--stone)}
.diff .was{color:var(--stone);text-decoration:line-through;text-decoration-color:rgba(142,58,36,.5)}
.meta{margin-top:6px;color:var(--stone);font-size:13px}
.meta .why{color:var(--ink)}
.meta a{color:var(--stone)}
.addwhy{color:var(--clay);font:500 11px 'Geist Mono',monospace;text-transform:uppercase;letter-spacing:.06em;margin-left:6px}
.src{font:500 10px 'Geist Mono',monospace;color:var(--stone);letter-spacing:.06em;text-transform:uppercase}

/* dns */
table.dns{width:100%;border-collapse:collapse;font-size:14px}
table.dns th{text-align:left;font:500 11px 'Geist Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);padding:10px 12px;border-bottom:1px solid var(--ink)}
table.dns td{padding:12px;border-bottom:1px solid var(--linen);vertical-align:top;overflow-wrap:anywhere;font-family:'Geist Mono',monospace;font-size:12.5px}
table.dns td:first-child{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:14px;white-space:nowrap}
.ok{color:var(--moss)}.bad{color:var(--clay)}

/* log form */
.logform{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;max-width:860px}
.logform .full{grid-column:1/-1}
.logform .field input,.logform .field select,.logform .field textarea{font-size:15px}
.logform .field textarea{min-height:70px}
.check{display:flex;gap:8px;align-items:center;font-size:14px}

@media (max-width:820px){
  .page{padding:20px 16px 48px}
  .tabs{overflow-x:auto;max-width:100%}
  .tabs button{white-space:nowrap}
  .entry{grid-template-columns:1fr}
  .logform{grid-template-columns:1fr}
  table.dns,table.dns tbody,table.dns tr,table.dns td{display:block}
  table.dns thead{display:none}
  table.dns tr{border-bottom:1px solid var(--ink);padding:8px 0}
  table.dns td{border:0;padding:4px 0}
}
@media print{
  .top,.bar,.addwhy,.item .edit{display:none!important}
  body{background:#fff}
}
