.tokens-panel { background:#fff; border:1px solid #d9e2dc; border-radius:16px; padding:24px; }
.tokens-panel h2 { margin:0; }
.tokens-table-wrap { overflow-x:auto; }
.tokens-table { width:100%; border-collapse:collapse; margin-top:20px; font-size:.88rem; }
.tokens-table th { text-align:left; color:#63726b; font-size:.78rem; padding:12px; background:#f3f6f3; }
.tokens-table td { border-bottom:1px solid #e3e9e4; padding:16px 12px; vertical-align:top; }
.tokens-table td small { display:block; margin-top:4px; color:#63726b; }
.token-expired { color:#a23030; background:#fff0ef; }
.token-active { background:#e8f4eb; color:#226540; }
.pat-form { display:grid; gap:20px; }
.pat-form > label { display:grid; gap:7px; font-weight:650; }
.pat-permissions { border:0; padding:0; margin:0; }
.pat-permissions legend { margin-bottom:12px; font-weight:750; }
.pat-app { border:1px solid #d9e2dc; padding:14px; border-radius:12px; margin-bottom:12px; }
.pat-app > label { font-weight:700; }
.pat-app label { display:flex; align-items:center; gap:8px; }
.pat-app input[type=checkbox] { width:16px; height:16px; flex:none; }
.pat-case-permissions { display:flex; flex-wrap:wrap; gap:12px 20px; margin:14px 0 0 24px; font-size:.86rem; }
.pat-app .hint { margin:10px 0 0 24px; }
.pat-secret { display:block; overflow-wrap:anywhere; user-select:all; padding:16px; margin:16px 0; border:1px solid #c8dccd; border-radius:10px; background:#edf5ef; }
.developer-preference { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:20px 0 12px; cursor:pointer; }
.developer-preference small { display:block; color:var(--muted); margin-top:6px; font-size:.84rem; line-height:1.5; }
.developer-switch { position:relative; width:48px; height:28px; flex:none; }
.developer-switch input { position:absolute; inset:0; opacity:0; width:100%; height:100%; margin:0; cursor:pointer; }
.switch-track { display:block; width:48px; height:28px; background:#c6cec9; border-radius:20px; pointer-events:none; transition:background .18s; }
.switch-track::after { content:''; display:block; position:absolute; top:3px; left:3px; width:22px; height:22px; background:white; border-radius:50%; box-shadow:0 1px 4px #1e352e35; transition:transform .18s; }
.developer-switch input:checked + .switch-track { background:var(--green); }
.developer-switch input:checked + .switch-track::after { transform:translateX(20px); }
.developer-switch input:focus-visible + .switch-track { outline:3px solid #3d8867; outline-offset:3px; }
.developer-switch input:disabled + .switch-track { opacity:.65; }
.application-flag { padding:16px 0; margin:0; border-top:1px solid var(--line); }
#feature-flag-list { margin-top:18px; }
.credit-settings-form { display:grid; gap:18px; max-width:48rem; }
#system-credit-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr)); gap:18px; }
#system-credit-fields label { display:grid; gap:7px; color:var(--muted); font-size:.85rem; }
#system-credit-fields input,#credit-grant-amount { width:100%; min-height:42px; padding:10px 12px; border:1px solid #cfdad3; border-radius:8px; background:#fff; font:inherit; color:var(--ink); }
#credits-panel,#system-credit-settings { scroll-margin-top:90px; }
.credit-settings-form > button { justify-self:start; }
.credit-total { font-weight:650; margin:24px 0 16px; }
.credit-wallet { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:18px; padding:22px; margin:20px 0; border-radius:12px; background:#edf5ef; }
.credit-wallet span,.credit-wallet strong { display:block; }
.credit-wallet span { color:var(--muted); font-size:.85rem; margin-bottom:6px; }
.credit-wallet strong { font-size:1.65rem; }
.credit-wallet small { display:block; margin-top:8px; color:var(--muted); line-height:1.5; }
.credit-filters { margin-top:20px; }
.credit-filters { display:flex; flex-wrap:wrap; align-items:end; gap:14px; }
.credit-filters label { display:grid; gap:7px; font-size:.85rem; }
.credit-metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr)); gap:12px; margin:24px 0; }
.credit-metric { padding:18px; border:1px solid var(--line); border-radius:12px; }
.credit-metric span,.credit-metric strong,.credit-metric small { display:block; }
.credit-metric span,.credit-metric small { color:var(--muted); font-size:.78rem; }
.credit-metric strong { font-size:1.7rem; margin:8px 0 2px; }
#credits-panel > details { margin-top:20px; border-top:1px solid var(--line); padding-top:16px; }
#credits-panel > details > summary { cursor:pointer; font-weight:650; }
#system-credit-form { margin-top:20px; }
#credits-panel h3 { margin:26px 0 0; }
#credits-panel .tokens-table { margin-top:12px; }
