/* GoldClan Aplid Bridge: блок аккаунта. Токены темы с запасными значениями. Mobile-first. */
.gcab {
	--gcab-ink: var(--gc-ink, #201b3d);
	--gcab-muted: var(--gc-muted, #6e6987);
	--gcab-line: var(--gc-line, #e6e3ef);
	--gcab-wash: var(--gc-wash, #f5f3fa);
	--gcab-gold: var(--gc-gold, #f7b500);
	--gcab-gold-wash: var(--gc-gold-wash, #fff5d6);
	--gcab-good: #1a7f4b;
	--gcab-mid: #a86a00;
	--gcab-bad: #b3261e;
	box-sizing: border-box;
	display: grid;
	gap: var(--gc-s4, 16px);
	margin: var(--gc-s6, 24px) 0;
	padding: var(--gc-s4, 16px);
	border: 1px solid var(--gcab-line);
	border-radius: var(--gc-r-m, 10px);
	background: var(--gc-paper, #fff);
	color: var(--gcab-ink);
	font-family: var(--gc-font-text, system-ui, sans-serif);
	font-size: var(--gc-fs-m, 1rem);
	line-height: 1.45;
}
.gcab *, .gcab *::before, .gcab *::after { box-sizing: border-box; }
.gcab p { margin: 0; }
.gcab__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--gc-s2, 8px); }
.gcab__head > * { margin: 0; }
.gcab .gcab__title { margin: 0; padding: 0; font-size: var(--gc-fs-h3, 1.1875rem); line-height: 1.2; transform: none; position: static; }
.gcab__status { display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 4px 12px; border-radius: 999px; background: var(--gcab-wash); font-size: var(--gc-fs-s, .875rem); font-weight: 600; line-height: 1.2; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gcab__status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--gcab-muted); }
.gcab[data-state="available"] .gcab__status::before { background: var(--gcab-good); }
.gcab[data-state="busy"] .gcab__status::before { background: var(--gcab-mid); }
.gcab[data-state="unavailable"] .gcab__status::before { background: var(--gcab-bad); }
.gcab__body, .gcab__fail { display: grid; gap: var(--gc-s4, 16px); }
.gcab__metric { display: grid; gap: 4px; padding-bottom: var(--gc-s3, 12px); border-bottom: 1px solid var(--gcab-line); }
.gcab__k { color: var(--gcab-muted); font-size: var(--gc-fs-s, .875rem); }
.gcab__line { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.gcab__hint { color: var(--gcab-muted); font-size: var(--gc-fs-xs, .8125rem); line-height: 1.45; }
.gcab__dot { width: 10px; height: 10px; border-radius: 50%; background: var(--gcab-muted); flex: none; }
.gcab__dot[data-level="good"], .gcab__dot[data-level="low"] { background: var(--gcab-good); }
.gcab__dot[data-level="medium"] { background: var(--gcab-mid); }
.gcab__dot[data-level="bad"], .gcab__dot[data-level="high"] { background: var(--gcab-bad); }
.gcab__field { display: grid; gap: 6px; }
.gcab__copyrow { display: grid; gap: var(--gc-s2, 8px); }
.gcab__value { display: block; padding: 10px 12px; border-radius: var(--gc-r-s, 6px); background: var(--gcab-wash); font: inherit; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: var(--gc-fs-s, .875rem); overflow-wrap: anywhere; user-select: all; }
.gcab__value--secret { background: var(--gcab-gold-wash); font-size: var(--gc-fs-m, 1rem); }
.gcab__notice { padding: 10px 12px; border-left: 3px solid var(--gcab-gold); border-radius: 0 var(--gc-r-s, 6px) var(--gc-r-s, 6px) 0; background: var(--gcab-gold-wash); font-size: var(--gc-fs-s, .875rem); }
.gcab__actions { display: grid; gap: var(--gc-s2, 8px); }
.gcab__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 18px; border: 0; border-radius: var(--gc-r-s, 6px); font: inherit; font-weight: 600; color: var(--gcab-ink); cursor: pointer; transition: background .15s; }
.gcab__btn--primary { background: var(--gcab-gold); }
.gcab__btn--primary:hover:not(:disabled) { background: #ffc626; }
.gcab__btn--quiet { background: var(--gcab-wash); }
.gcab__btn--quiet:hover:not(:disabled) { background: var(--gcab-line); }
.gcab__btn:active:not(:disabled) { transform: translateY(1px); }
.gcab__btn:disabled { opacity: .5; cursor: not-allowed; }
.gcab__btn:focus-visible, .gcab__link:focus-visible, .gcab select:focus-visible, .gcab textarea:focus-visible { outline: 2px solid var(--gcab-ink); outline-offset: 2px; }
.gcab__link { justify-self: start; text-align: left; padding: 8px 0; border: 0; background: none; font: inherit; color: var(--gc-gold-deep, #8f6600); text-decoration: underline; cursor: pointer; }
.gcab__report { display: grid; gap: var(--gc-s2, 8px); }
.gcab__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--gc-s2, 8px) var(--gc-s3, 12px); }
.gcab__foot .gcab__link { padding: 4px 0; }
.gcab__foot .gcab__status { margin-left: auto; }
.gcab__status:empty { display: none; }
.gcab__reportform { display: grid; gap: var(--gc-s2, 8px); }
.gcab__reportform[hidden], .gcab [hidden] { display: none !important; }
.gcab select, .gcab textarea { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--gcab-line); border-radius: var(--gc-r-s, 6px); background: #fff; font: inherit; color: inherit; }
.gcab__msg { min-height: 1.45em; font-size: var(--gc-fs-s, .875rem); color: var(--gcab-muted); }
.gcab__msg[data-kind="error"] { color: var(--gcab-bad); }
.gcab__msg[data-kind="ok"] { color: var(--gcab-good); }
@media (min-width: 600px) {
	.gcab { padding: var(--gc-s6, 24px); }
	.gcab__copyrow { grid-template-columns: 1fr auto; align-items: center; }
	.gcab__actions { grid-template-columns: repeat(2, max-content); }
}
@media (prefers-reduced-motion: reduce) { .gcab__btn { transition: none; } }

/* style="sign": компактный вид на странице /sign (та же разметка и тот же JS) */
.gcab--sign { gap: var(--gc-s3, 12px); margin: 0; padding: var(--gc-s3, 12px) var(--gc-s4, 16px); border-radius: 14px; box-shadow: 0 1px 2px rgb(32 27 61 / .06); }
.gcab--sign .gcab__title { font-size: var(--gc-fs-m, 1rem); font-weight: 700; }
.gcab--sign .gcab__body { gap: var(--gc-s3, 12px); }
.gcab--sign .gcab__metric { grid-auto-flow: column; justify-content: start; align-items: center; gap: var(--gc-s3, 12px); padding-bottom: 0; border-bottom: 0; }
.gcab--sign .gcab__hint { display: none; }
.gcab--sign .gcab__metric + .gcab__metric { margin-top: -4px; }
.gcab--sign .gcab__value { padding: 8px 10px; }
.gcab--sign .gcab__notice { padding: 8px 10px; font-size: var(--gc-fs-xs, .8125rem); line-height: 1.4; }
.gcab--sign .gcab__actions { grid-template-columns: 1fr 1fr; }
.gcab--sign .gcab__btn { min-height: 46px; padding: 8px 12px; border-radius: 12px; }
.gcab--sign .gcab__copyrow { grid-template-columns: 1fr; }
.gcab--sign .gcab__value { font-size: var(--gc-fs-s, .875rem); }
@media (min-width: 600px) { .gcab--sign .gcab__copyrow { grid-template-columns: 1fr auto; } }
@media (max-width: 340px) { .gcab--sign .gcab__actions { grid-template-columns: 1fr; } }
