/* ============================================================
   DACHOST panel — pages: API tokens (/tokens) and Firewall (/firewall)
   Page-specific tweaks only; tables, chips, drawers, cred sheets and
   notices come from app.css. Drawer content is cloned to <body> by JS,
   so the drawer rules are scoped by their own classes (.tok-*, .fw-*).
   ============================================================ */

/* ---- tokens: table ---- */
.p-tokens .tbl td.mono{color:var(--text-2)}
.p-tokens .ph-sub .link{margin-left:4px}
.p-tokens .ph-sub .link svg{vertical-align:-1px;margin-left:2px}

/* no-JS fallback for the one-time token: a plain panel above the table */
.p-tokens .tok-new-panel{margin-bottom:20px}
.p-tokens .tok-new-panel .notice{margin-bottom:12px}

/* ---- tokens: create drawer ---- */
.tok-form .f > span:first-child{font-size:var(--fs-13);font-weight:600;color:var(--text-2)}
.tok-form .f[role="group"]{display:grid;gap:6px}
.tok-form .seg{justify-self:start}
.tok-form .seg > label{padding:0 14px}
.tok-form .tok-expiry .in{width:200px;max-width:100%}

/* ---- tokens: "your new token" drawer ---- */
.tok-new{display:grid;gap:16px;align-content:start}
.tok-new .notice{margin:0}
.tok-cred code{overflow-wrap:anywhere;word-break:break-all;line-height:1.5}
.tok-cred .val{display:flex;align-items:center;min-height:22px;font-size:var(--fs-13)}
.tok-new .copyrow .in{font-size:var(--fs-12)}

/* ---- firewall: table ---- */
.p-firewall .tbl td.fw-desc{white-space:normal;max-width:360px}
.p-firewall .tbl .c-actions{white-space:nowrap}
.p-firewall .fw-rules-btn{margin-right:2px}
.p-firewall .tbl .c-name .c-sub.mono{font-size:var(--fs-11)}
.p-firewall .btn-primary .tag{margin-left:2px}
.p-firewall .tbl-foot{justify-content:flex-start}
.p-firewall .fw-soon{margin-top:12px}

/* ---- firewall: rules drawer ---- */
.fw-drawer{display:grid;gap:12px;align-content:start}
.fw-drawer > .meta{margin:0}
.fw-drawer .tblwrap{box-shadow:none}
.fw-drawer .tbl td{white-space:nowrap}
.fw-drawer .tbl td.c-meta{white-space:normal;min-width:160px}

/* ---- mobile ---- */
@media (max-width:640px){
  .p-firewall .tbl td.fw-desc{max-width:none}
  .p-firewall .tbl[data-mobile="cards"] tr .fw-rules-btn{position:absolute;right:44px;top:8px}
  .tok-form .tok-expiry .in{width:100%}
}
