/* ==========================================================================
   LCByte 授权中心 · 前台样式
   ──────────────────────────────────────────────────────────────────────────
   目录
     01 设计令牌与基础
     02 按钮 / 标签 / 提示条
     03 表单
     04 商店（列表 + 详情 + 下单）
     05 会员中心（外壳 / 侧栏 / 概览 / 授权 / 订单 / 下载 / 资料）
     06 登录注册
     07 表格与状态
     08 响应式
   ──────────────────────────────────────────────────────────────────────────
   颜色一律走 CSS 变量，但**只认 --lcbyte-* 前缀的外部变量**。
   通用名（--text / --line / --bg / --radius / --theme-color …）一个都不吃 ——
   否则换个恰好也定义了这些名字的主题，这里的配色就被无声带跑了，
   而插件本该能装进任何一台 WordPress。
   LCByte 主题会在 html:root 里把这组 --lcbyte-* 指向自己的令牌，于是自动跟色；
   没有主题时用下面的兜底值（微信绿 #07c160），单独用也不至于难看。
   改配色请改主题自定义器，不要改这里 —— 这里只定义「结构色」。
   ========================================================================== */

/* =========================================================================
   01 设计令牌与基础
   ====================================================================== */

.lcbyte-lic {
	/* 品牌色：主题在就跟着主题，不在就用插件自带的一套 */
	--lic-main: var(--lcbyte-brand, #07c160);
	--lic-deep: var(--lcbyte-brand-deep, #017539);
	--lic-light: var(--lcbyte-brand-light, #8ee7b9);
	--lic-pale: var(--lcbyte-brand-pale, #daf1e5);

	/* 结构色：同样只认 lcbyte 前缀，绝不吃 --text / --line 这类通用名 */
	--lic-line: var(--lcbyte-line, #e8e8e8);
	--lic-text: var(--lcbyte-text, #232323);
	--lic-text2: var(--lcbyte-text-2, #666);
	--lic-text3: var(--lcbyte-text-3, #999);
	--lic-bg: var(--lcbyte-bg, #fff);
	--lic-bg2: var(--lcbyte-bg-alt, #f7fbf9);
	--lic-radius: var(--lcbyte-radius, 12px);

	/* 语义色：状态、金额、警示。这些不跟主色走 —— 语义不该随品牌色漂移 */
	--lic-ok: #0f9d58;
	--lic-ok-bg: #e9f8ef;
	--lic-warn: #b45309;
	--lic-warn-bg: #fff7e6;
	--lic-bad: #c0392b;
	--lic-bad-bg: #fdeceb;
	--lic-info-bg: #eef4fd;

	--lic-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 8px 24px -12px rgba(16, 24, 40, .12);
	--lic-shadow-lg: 0 2px 4px rgba(16, 24, 40, .05), 0 18px 40px -16px rgba(16, 24, 40, .18);
	--lic-ease: cubic-bezier(.22, .61, .36, 1);

	font-size: 15px;
	line-height: 1.75;
	color: var(--lic-text);
	-webkit-font-smoothing: antialiased;
}

.lcbyte-lic *,
.lcbyte-lic *::before,
.lcbyte-lic *::after { box-sizing: border-box; }

.lcbyte-lic h2,
.lcbyte-lic h3,
.lcbyte-lic h4 { margin: 0; font-weight: 600; line-height: 1.35; color: var(--lic-text); }
.lcbyte-lic p { margin: 0 0 12px; }
.lcbyte-lic p:last-child { margin-bottom: 0; }
.lcbyte-lic ul,
.lcbyte-lic ol { padding-left: 1.25em; }
.lcbyte-lic a { transition: color .16s var(--lic-ease), border-color .16s var(--lic-ease), background-color .16s var(--lic-ease); }

.lcbyte-lic code {
	padding: 2px 7px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: .9em;
	color: var(--lic-deep);
	background: var(--lic-bg2);
	border: 1px solid var(--lic-line);
	border-radius: 5px;
	word-break: break-all;
}

.lcbyte-muted { color: var(--lic-text3); font-size: .9em; }
.lcbyte-link { color: var(--lic-deep); text-decoration: underline; text-underline-offset: 3px; }
.lcbyte-link:hover { color: var(--lic-main); }
.lcbyte-entry { font-size: 15px; line-height: 1.9; color: var(--lic-text2); }

/* 键盘可达性：所有可聚焦元素给一个统一的环 */
.lcbyte-lic a:focus-visible,
.lcbyte-lic button:focus-visible,
.lcbyte-lic input:focus-visible,
.lcbyte-lic summary:focus-visible {
	outline: 2px solid var(--lic-main);
	outline-offset: 2px;
}

/* =========================================================================
   02 按钮 / 标签 / 提示条
   ====================================================================== */

.lcbyte-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 11px 22px;
	border: 1px solid transparent;
	border-radius: calc(var(--lic-radius) * .7);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .18s var(--lic-ease), color .18s var(--lic-ease),
		border-color .18s var(--lic-ease), opacity .18s var(--lic-ease), transform .18s var(--lic-ease);
	-webkit-appearance: none;
	appearance: none;
}
.lcbyte-btn:active { transform: translateY(1px); }
.lcbyte-btn--primary { background: var(--lic-main); color: #fff; box-shadow: 0 1px 2px rgba(16, 24, 40, .12); }
.lcbyte-btn--primary:hover { background: var(--lic-deep); color: #fff; }
.lcbyte-btn--primary[disabled],
.lcbyte-btn--primary:disabled { opacity: .45; cursor: not-allowed; box-shadow: none; }
.lcbyte-btn--ghost {
	background: var(--lic-bg);
	color: var(--lic-text);
	border-color: var(--lic-line);
}
.lcbyte-btn--ghost:hover { border-color: var(--lic-main); color: var(--lic-deep); background: var(--lic-pale); }
.lcbyte-btn--sm { padding: 7px 15px; font-size: 13px; }
.lcbyte-btn--block { display: flex; width: 100%; }

/* 小标签 / 小药丸 */
.lcbyte-tag {
	display: inline-block;
	padding: 3px 10px;
	font-size: 12px;
	border-radius: 999px;
	background: var(--lic-pale);
	color: var(--lic-deep);
}
.lcbyte-tag--plain { background: var(--lic-bg2); color: var(--lic-text2); }

.lcbyte-chip {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 9px;
	font-size: 12px;
	line-height: 1.7;
	border-radius: 999px;
	background: var(--lic-bg2);
	color: var(--lic-text2);
	white-space: nowrap;
}
.lcbyte-chip--plain { background: var(--lic-bg2); color: var(--lic-text3); }
.lcbyte-chip--warn { background: var(--lic-warn-bg); color: var(--lic-warn); }
.lcbyte-chip--bad { background: var(--lic-bad-bg); color: var(--lic-bad); }

/* 提示条 */
.lcbyte-note {
	margin: 0 0 18px;
	padding: 12px 16px;
	border-left: 3px solid var(--lic-main);
	border-radius: 0 calc(var(--lic-radius) * .6) calc(var(--lic-radius) * .6) 0;
	background: var(--lic-info-bg);
	font-size: 14px;
}
.lcbyte-note--success { border-left-color: var(--lic-ok); background: var(--lic-ok-bg); color: #14532d; }
.lcbyte-note--warn    { border-left-color: #f59e0b; background: var(--lic-warn-bg); color: #78350f; }
.lcbyte-note--error   { border-left-color: #dc2626; background: var(--lic-bad-bg); color: #7f1d1d; }

/* =========================================================================
   03 表单
   ====================================================================== */

.lcbyte-form { margin: 0; }
.lcbyte-form--narrow { max-width: 560px; }
.lcbyte-form__row { display: block; margin: 0 0 16px; }
.lcbyte-form__label {
	display: block;
	margin-bottom: 7px;
	font-size: 14px;
	font-weight: 500;
}
.lcbyte-form__hint {
	display: block;
	margin-top: 6px;
	font-size: 12.5px;
	line-height: 1.7;
	color: var(--lic-text3);
}
.lcbyte-form__foot { margin: 12px 0 0; font-size: 13px; text-align: center; }

.lcbyte-input {
	display: block;
	width: 100%;
	min-height: 44px;
	padding: 10px 14px;
	border: 1px solid var(--lic-line);
	border-radius: calc(var(--lic-radius) * .7);
	background: var(--lic-bg);
	font-family: inherit;
	/* 16px：iOS Safari 聚焦时不会把整页放大，改小会踩坑 */
	font-size: 16px;
	line-height: 1.4;
	color: var(--lic-text);
	transition: border-color .16s var(--lic-ease), box-shadow .16s var(--lic-ease);
	-webkit-appearance: none;
	appearance: none;
}
.lcbyte-input::placeholder { color: #b9b9b9; }
.lcbyte-input:focus {
	outline: none;
	border-color: var(--lic-main);
	/* 兜底用固定浅绿；支持 color-mix 的浏览器会跟当前主色算 */
	box-shadow: 0 0 0 3px rgba(7, 193, 96, .16);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--lic-main) 16%, transparent);
}
.lcbyte-input--sm { min-height: 38px; padding: 7px 12px; font-size: 14px; width: auto; min-width: 200px; }

.lcbyte-check { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 14px; cursor: pointer; }
.lcbyte-check input { width: 17px; height: 17px; margin: 0; accent-color: var(--lic-main); }
.lcbyte-fieldset {
	margin: 0 0 18px;
	padding: 18px;
	border: 1px solid var(--lic-line);
	border-radius: calc(var(--lic-radius) * .7);
}
.lcbyte-fieldset legend { padding: 0 8px; font-size: 14px; font-weight: 600; }

/* =========================================================================
   04 商店
   ====================================================================== */

.lcbyte-shop-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
	margin: 0 0 26px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--lic-line);
}
.lcbyte-shop-head__title { font-size: 24px; }
.lcbyte-shop-head__sub { margin: 6px 0 0; font-size: 13.5px; color: var(--lic-text2); }
.lcbyte-shop-head__side { margin: 0; }

.lcbyte-shop {
	display: grid;
	gap: 28px 24px;
	grid-template-columns: repeat(var(--lic-cols, 3), minmax(0, 1fr));
}

.lcbyte-shop-card {
	position: relative;
	display: flex;
	flex-direction: column;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
	transition: border-color .2s var(--lic-ease), box-shadow .2s var(--lic-ease), transform .2s var(--lic-ease);
	overflow: hidden;
}
.lcbyte-shop-card:hover {
	border-color: var(--lic-main);
	box-shadow: var(--lic-shadow-lg);
	transform: translateY(-3px);
}
.lcbyte-shop-card__link { display: block; color: inherit; text-decoration: none; }

.lcbyte-shop-card__media {
	position: relative;
	display: block;
	aspect-ratio: 16 / 10;
	background: var(--lic-bg2);
	overflow: hidden;
}
.lcbyte-shop-card__img,
.lcbyte-shop-card__thumb {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s var(--lic-ease);
}
.lcbyte-shop-card:hover .lcbyte-shop-card__img { transform: scale(1.04); }
/* 没封面时的占位：按商品名散列出色相，避免一排卡片全一个颜色 */
.lcbyte-shop-card__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, hsl(var(--lic-hue, 20) 72% 52%) 0%, hsl(var(--lic-hue, 20) 78% 34%) 100%);
}
.lcbyte-shop-card__thumb-text {
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 2px;
	color: rgba(255, 255, 255, .94);
}

.lcbyte-shop-card__type,
.lcbyte-shop-card__owned {
	position: absolute;
	top: 10px;
	padding: 3px 10px;
	font-size: 12px;
	line-height: 1.7;
	border-radius: 999px;
	backdrop-filter: blur(4px);
}
.lcbyte-shop-card__type { left: 10px; background: rgba(17, 24, 39, .58); color: #fff; }
.lcbyte-shop-card__owned { right: 10px; background: var(--lic-ok); color: #fff; }

.lcbyte-shop-card__body { display: block; padding: 16px 18px 8px; }
.lcbyte-shop-card__name { display: block; font-size: 16px; font-weight: 600; line-height: 1.45; }
.lcbyte-shop-card__ver {
	display: inline-block;
	margin-top: 5px;
	padding: 1px 8px;
	font-size: 12px;
	border-radius: 999px;
	background: var(--lic-bg2);
	color: var(--lic-text3);
}
.lcbyte-shop-card__sum {
	display: block;
	margin-top: 9px;
	font-size: 13px;
	line-height: 1.7;
	color: var(--lic-text2);
}

.lcbyte-shop-card__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: auto;
	padding: 12px 18px 18px;
}
.lcbyte-shop-card__price em { font-style: normal; font-size: 21px; font-weight: 600; color: var(--lic-deep); }
.lcbyte-shop-card__price s { margin-left: 8px; font-size: 13px; color: var(--lic-text3); }
.lcbyte-shop-card__free { font-size: 18px !important; color: var(--lic-ok) !important; }

/* 免费 / 收费 分类徽章：紧贴价格，收费用主色描边，免费用绿 */
.lcbyte-shop-card__kind {
	display: inline-block;
	margin-left: 10px;
	padding: 2px 9px;
	font-size: 12px;
	line-height: 1.7;
	border-radius: 999px;
	vertical-align: middle;
	white-space: nowrap;
}
.lcbyte-shop-card__kind--free { background: rgba(22, 160, 62, .12); color: var(--lic-ok); }
.lcbyte-shop-card__kind--paid { background: var(--lic-bg2); color: var(--lic-text2); }

/* ── 商品详情 ─────────────────────────────────────────── */
.lcbyte-back {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0 0 18px;
	font-size: 14px;
	color: var(--lic-text2);
	text-decoration: none;
}
.lcbyte-back:hover { color: var(--lic-main); }

/* ── 商品详情：头区 / 版本信息条 / 内容区块 ─────────────
   结构对标成熟产品页：头区（图 + 名称 + 价格 + 行动 + 权益）→
   版本信息条 → 分章节介绍 → 其他商品。配色沿用主题令牌，不引入新色。 */
.lcbyte-prod { display: block; }

.lcbyte-prod__hero {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 26px 44px;
	align-items: start;
}
.lcbyte-prod__media {
	aspect-ratio: 16 / 10;
	background: var(--lic-bg2);
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	overflow: hidden;
}
.lcbyte-prod__media img,
.lcbyte-prod__media .lcbyte-shop-card__thumb { width: 100%; height: 100%; object-fit: cover; }

.lcbyte-prod__info { min-width: 0; }

.lcbyte-prod__heads { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.lcbyte-prod__name { margin: 0 0 10px; font-size: 30px; line-height: 1.25; letter-spacing: -.5px; }
.lcbyte-prod__sum { margin: 0; font-size: 15px; line-height: 1.75; color: var(--lic-text2); }
.lcbyte-prod__price { display: flex; align-items: baseline; gap: 2px; margin: 16px 0 4px; }
.lcbyte-prod__price em { font-style: normal; font-size: 34px; font-weight: 600; color: var(--lic-deep); letter-spacing: -1px; }
.lcbyte-prod__price s { margin-left: 10px; color: var(--lic-text3); }
.lcbyte-prod__demo { margin: 12px 0 0; font-size: 14px; }

/* 权益清单：两列勾选，浅底整块。
   （.lcbyte-lic 前缀压过主题 .lc-post__content ul 的 disc 圆点与缩进） */
.lcbyte-lic .lcbyte-prod__perks {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 11px 20px;
	margin: 20px 0 0;
	padding: 18px 20px;
	list-style: none;
	border-radius: calc(var(--lic-radius) * .8);
	background: var(--lic-bg2);
	font-size: 13.5px;
	line-height: 1.6;
	color: var(--lic-text2);
}
.lcbyte-prod__perks li { display: flex; align-items: flex-start; gap: 9px; }
.lcbyte-prod__perk-ico {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 19px;
	height: 19px;
	margin-top: 1px;
	border-radius: 50%;
	background: var(--lic-pale);
	color: var(--lic-deep);
}

/* 版本信息条：四格一行，格间细线 */
.lcbyte-lic .lcbyte-prod__meta {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 32px 0 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	overflow: hidden;
}
.lcbyte-lic .lcbyte-prod__meta li { padding: 15px 20px; list-style: none; }
.lcbyte-prod__meta li + li { border-left: 1px solid var(--lic-line); }
.lcbyte-prod__meta-k { display: block; font-size: 12.5px; color: var(--lic-text3); }
.lcbyte-prod__meta-v { display: block; margin-top: 4px; font-size: 15px; font-weight: 600; color: var(--lic-text); }

/* 内容区块 + 中英章节标题 */
.lcbyte-prod__section { margin-top: 36px; }

.lcbyte-sec-head {
	display: flex;
	align-items: baseline;
	gap: 10px;
	margin: 0 0 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--lic-line);
}
.lcbyte-sec-head__title { margin: 0; font-size: 20px; letter-spacing: -.2px; }
.lcbyte-sec-head__title::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 15px;
	margin-right: 10px;
	border-radius: 2px;
	background: var(--lic-main);
	vertical-align: -1px;
}
.lcbyte-sec-head__en {
	font-size: 12px;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: var(--lic-text3);
}
.lcbyte-sec-head__more { margin-left: auto; font-size: 13.5px; color: var(--lic-deep); text-decoration: none; }
.lcbyte-sec-head__more:hover { color: var(--lic-main); }

.lcbyte-prod__desc h2,
.lcbyte-prod__desc h3 { margin: 24px 0 10px; font-size: 18px; }
.lcbyte-prod__desc ul,
.lcbyte-prod__desc ol { margin: 0 0 14px; padding-left: 22px; }
.lcbyte-prod__desc > :first-child { margin-top: 0; }
.lcbyte-prod__desc > p:first-of-type { font-size: 15.5px; line-height: 1.85; color: var(--lic-text2); }

.lcbyte-shop--related { margin-top: 2px; }

/* ── 购买区 ───────────────────────────────────────────── */
.lcbyte-buy { margin-top: 18px; padding-top: 20px; border-top: 1px solid var(--lic-line); }
.lcbyte-buy__tip { margin: 0 0 14px; font-size: 13.5px; color: var(--lic-text2); }

.lcbyte-pays { display: flex; flex-wrap: wrap; gap: 10px; }
.lcbyte-pay { cursor: pointer; }
.lcbyte-pay input { position: absolute; opacity: 0; pointer-events: none; }
.lcbyte-pay__box {
	display: inline-block;
	padding: 9px 20px;
	border: 1px solid var(--lic-line);
	border-radius: calc(var(--lic-radius) * .7);
	font-size: 14px;
	transition: all .16s var(--lic-ease);
}
.lcbyte-pay input:checked + .lcbyte-pay__box {
	border-color: var(--lic-main);
	background: var(--lic-pale);
	color: var(--lic-deep);
	font-weight: 500;
}
.lcbyte-pay input:focus-visible + .lcbyte-pay__box {
	box-shadow: 0 0 0 3px rgba(7, 193, 96, .22);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--lic-main) 22%, transparent);
}

/* ── 已购买面板 ───────────────────────────────────────── */
.lcbyte-owned {
	margin-top: 18px;
	padding: 20px;
	border: 1px solid var(--lic-line);
	border-left: 3px solid var(--lic-ok);
	border-radius: calc(var(--lic-radius) * .7);
	background: var(--lic-bg2);
}
.lcbyte-owned__head { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.lcbyte-owned__badge {
	padding: 3px 11px;
	font-size: 12px;
	border-radius: 999px;
	background: var(--lic-ok);
	color: #fff;
}
.lcbyte-owned__actions { margin-top: 16px; }

.lcbyte-field { display: flex; gap: 12px; margin-bottom: 10px; font-size: 14px; align-items: baseline; }
.lcbyte-field__label { flex: 0 0 76px; color: var(--lic-text3); }
.lcbyte-field__value { word-break: break-all; }
.lcbyte-key { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; }

/* =========================================================================
   05 会员中心
   ====================================================================== */

.lcbyte-mem {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: 32px;
	align-items: start;
}
.lcbyte-mem__main { min-width: 0; }

/* ── 侧栏 ─────────────────────────────────────────────── */
.lcbyte-mem__side {
	position: sticky;
	top: 24px;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
	overflow: hidden;
}

.lcbyte-mem__id {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 20px 18px;
	background: linear-gradient(140deg, var(--lic-pale) 0%, var(--lic-bg) 100%);
	border-bottom: 1px solid var(--lic-line);
}
.lcbyte-mem__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--lic-main);
	color: #fff;
	font-size: 19px;
	font-weight: 600;
	line-height: 1;
}
.lcbyte-mem__idtext { min-width: 0; }
.lcbyte-mem__idtext strong { display: block; font-size: 15px; line-height: 1.5; }
.lcbyte-mem__idtext em {
	display: block;
	font-style: normal;
	font-size: 12.5px;
	color: var(--lic-text3);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.lcbyte-mem__nav { display: flex; flex-direction: column; padding: 10px; gap: 2px; }
.lcbyte-mem__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 10px 14px;
	border-radius: calc(var(--lic-radius) * .6);
	font-size: 14px;
	color: var(--lic-text);
	text-decoration: none;
}
.lcbyte-mem__link:hover { background: var(--lic-bg2); color: var(--lic-deep); }
.lcbyte-mem__link.is-active {
	background: var(--lic-pale);
	color: var(--lic-deep);
	font-weight: 600;
}
.lcbyte-mem__link--out { margin-top: 6px; border-top: 1px solid var(--lic-line); border-radius: 0 0 calc(var(--lic-radius) * .6) calc(var(--lic-radius) * .6); color: var(--lic-text2); }
.lcbyte-mem__n {
	min-width: 22px;
	padding: 0 6px;
	border-radius: 999px;
	background: var(--lic-bg2);
	color: var(--lic-text3);
	font-size: 12px;
	font-weight: 500;
	text-align: center;
}
.lcbyte-mem__link.is-active .lcbyte-mem__n { background: var(--lic-main); color: #fff; }

.lcbyte-mem__side-foot { padding: 12px 18px 16px; border-top: 1px solid var(--lic-line); }
.lcbyte-mem__mini { font-size: 13px; color: var(--lic-text3); text-decoration: none; }
.lcbyte-mem__mini:hover { color: var(--lic-main); }

/* ── 概览：统计卡 ─────────────────────────────────────── */
.lcbyte-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
	gap: 14px;
	margin: 0 0 26px;
}
.lcbyte-stat {
	position: relative;
	display: block;
	padding: 16px 18px 15px;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
	text-decoration: none;
	color: inherit;
	overflow: hidden;
	transition: border-color .18s var(--lic-ease), box-shadow .18s var(--lic-ease), transform .18s var(--lic-ease);
}
.lcbyte-stat::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 3px;
	height: 100%;
	background: var(--lic-main);
	opacity: 0;
	transition: opacity .18s var(--lic-ease);
}
.lcbyte-stat:hover { border-color: var(--lic-main); box-shadow: var(--lic-shadow); transform: translateY(-2px); }
.lcbyte-stat:hover::after { opacity: 1; }
.lcbyte-stat--warn::after { background: #f59e0b; opacity: 1; }
.lcbyte-stat__label { display: block; font-size: 12.5px; color: var(--lic-text3); }
.lcbyte-stat__value {
	display: block;
	margin: 6px 0 4px;
	font-size: 27px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--lic-deep);
	letter-spacing: -.5px;
}
.lcbyte-stat__value small { margin-left: 4px; font-size: 13px; font-weight: 400; color: var(--lic-text3); letter-spacing: 0; }
.lcbyte-stat__hint { display: block; font-size: 12px; line-height: 1.6; color: var(--lic-text3); }

/* ── 板块 ─────────────────────────────────────────────── */
.lcbyte-block {
	margin: 0 0 26px;
	padding: 22px;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
}
.lcbyte-block:last-child { margin-bottom: 0; }
.lcbyte-block__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}
.lcbyte-block__title { font-size: 16px; }
.lcbyte-block__more { font-size: 13px; color: var(--lic-text2); text-decoration: none; }
.lcbyte-block__more:hover { color: var(--lic-main); }
.lcbyte-block__lead { margin: -6px 0 18px; font-size: 13px; line-height: 1.8; color: var(--lic-text3); }

/* ── 空状态 ───────────────────────────────────────────── */
.lcbyte-void {
	padding: 34px 20px;
	border: 1px dashed var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg2);
	text-align: center;
}
.lcbyte-void__art { display: block; width: 104px; height: auto; margin: 0 auto 12px; color: var(--lic-light); }
.lcbyte-void__title { margin: 0 0 6px; font-size: 15px; font-weight: 600; }
.lcbyte-void__text { margin: 0; font-size: 13.5px; color: var(--lic-text2); }
.lcbyte-void__go { margin: 16px 0 0; }

/* ── 概览：最近授权 ───────────────────────────────────── */
.lcbyte-mini-list { margin: 0; padding: 0; list-style: none; }
.lcbyte-mini {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	padding: 13px 0;
	border-bottom: 1px solid var(--lic-line);
}
.lcbyte-mini:first-child { padding-top: 0; }
.lcbyte-mini:last-child { padding-bottom: 0; border-bottom: 0; }
.lcbyte-mini__main { flex: 1; min-width: 200px; }
.lcbyte-mini__main strong { display: block; font-size: 14.5px; }
.lcbyte-mini__key { display: inline-block; margin-top: 6px; font-size: 12px; }
.lcbyte-mini__meta { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

/* ── 概览：订单时间线 ─────────────────────────────────── */
.lcbyte-timeline { margin: 0; padding: 0; list-style: none; }
.lcbyte-timeline__item { position: relative; display: flex; gap: 12px; padding: 0 0 16px; }
.lcbyte-timeline__item:last-child { padding-bottom: 0; }
.lcbyte-timeline__item::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 16px;
	bottom: 0;
	width: 1px;
	background: var(--lic-line);
}
.lcbyte-timeline__item:last-child::before { display: none; }
.lcbyte-timeline__dot {
	flex: 0 0 9px;
	width: 9px;
	height: 9px;
	margin-top: 7px;
	border-radius: 50%;
	background: var(--lic-text3);
	z-index: 1;
}
.lcbyte-timeline__dot--paid { background: var(--lic-ok); }
.lcbyte-timeline__dot--pending { background: #f59e0b; }
.lcbyte-timeline__dot--closed,
.lcbyte-timeline__dot--refunded { background: #d1d5db; }
.lcbyte-timeline__body { flex: 1; min-width: 0; }
.lcbyte-timeline__top { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.lcbyte-timeline__top strong { font-size: 14px; font-weight: 500; }
.lcbyte-timeline__top em { font-style: normal; font-weight: 600; color: var(--lic-deep); }
.lcbyte-timeline__sub { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 5px; }
.lcbyte-timeline__sub code { font-size: 11.5px; padding: 1px 6px; }

/* ── 概览：推荐商品 ───────────────────────────────────── */
.lcbyte-reco { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.lcbyte-reco__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	border: 1px solid var(--lic-line);
	border-radius: calc(var(--lic-radius) * .7);
	background: var(--lic-bg);
	text-decoration: none;
	color: inherit;
	transition: border-color .18s var(--lic-ease), background-color .18s var(--lic-ease);
}
.lcbyte-reco__item:hover { border-color: var(--lic-main); background: var(--lic-bg2); }
.lcbyte-reco__name { font-size: 14px; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lcbyte-reco__price { flex: 0 0 auto; font-size: 15px; font-weight: 600; color: var(--lic-deep); }
.lcbyte-reco__free { font-style: normal; font-size: 14px; color: var(--lic-ok); }

/* ── 授权卡 ───────────────────────────────────────────── */
.lcbyte-lics { display: grid; gap: 18px; }
.lcbyte-lic-card {
	padding: 22px;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
	transition: border-color .18s var(--lic-ease), box-shadow .18s var(--lic-ease);
}
.lcbyte-lic-card:hover { box-shadow: var(--lic-shadow); }
.lcbyte-lic-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 16px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--lic-line);
}
.lcbyte-lic-card__title { min-width: 0; }
.lcbyte-lic-card__name { font-size: 17px; }
.lcbyte-lic-card__name small { margin-left: 8px; font-size: 12px; font-weight: 400; color: var(--lic-text3); }
.lcbyte-lic-card__type { display: inline-block; margin-top: 6px; font-size: 12px; color: var(--lic-text3); }

/* 授权码那一行：单独强调 */
.lcbyte-keyline {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 18px;
	padding: 12px 14px;
	border: 1px dashed var(--lic-line);
	border-radius: calc(var(--lic-radius) * .7);
	background: var(--lic-bg2);
}
.lcbyte-keyline__label { font-size: 12.5px; color: var(--lic-text3); }
/* 校验码那一行是认证码的附属信息，视觉上退一档 */
.lcbyte-keyline--sub { margin-top: -8px; padding: 9px 14px; background: transparent; }
.lcbyte-key-code {
	flex: 1;
	min-width: 0;
	padding: 4px 10px;
	font-size: 14.5px;
	letter-spacing: .6px;
	background: var(--lic-bg);
	border-color: var(--lic-main);
	color: var(--lic-deep);
}

.lcbyte-lic-card__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 16px 24px;
	margin: 0;
}
.lcbyte-lic-card__grid > div { min-width: 0; }
.lcbyte-lic-card__grid dt { margin-bottom: 6px; font-size: 12.5px; color: var(--lic-text3); }
.lcbyte-lic-card__grid dd { margin: 0; font-size: 14px; overflow-wrap: anywhere; }

.lcbyte-copy {
	padding: 3px 11px;
	border: 1px solid var(--lic-line);
	border-radius: 999px;
	background: var(--lic-bg);
	font-family: inherit;
	font-size: 12px;
	color: var(--lic-text2);
	cursor: pointer;
	transition: all .16s var(--lic-ease);
}
.lcbyte-copy:hover { border-color: var(--lic-main); color: var(--lic-deep); background: var(--lic-pale); }
.lcbyte-copy.is-done { border-color: var(--lic-ok); color: var(--lic-ok); background: var(--lic-ok-bg); }

/* 换绑额度进度条 */
.lcbyte-quota__text { display: block; margin-bottom: 7px; }
.lcbyte-quota__bar {
	display: block;
	height: 5px;
	border-radius: 999px;
	background: var(--lic-line);
	overflow: hidden;
}
.lcbyte-quota__bar > i {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--lic-main), var(--lic-deep));
	transition: width .3s var(--lic-ease);
}

.lcbyte-lic-card__foot {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	flex-wrap: wrap;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px dashed var(--lic-line);
}
.lcbyte-lic-card__actions { margin-left: auto; }

.lcbyte-inline-form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.lcbyte-rebind summary { font-size: 14px; color: var(--lic-deep); cursor: pointer; }
.lcbyte-rebind[open] summary { margin-bottom: 12px; }
.lcbyte-rebind__tip { margin: 8px 0 0; font-size: 12.5px; }

/* ── 下载中心 ─────────────────────────────────────────── */
.lcbyte-dls { display: grid; gap: 12px; }
.lcbyte-dl {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 18px;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
	transition: border-color .18s var(--lic-ease), box-shadow .18s var(--lic-ease);
}
.lcbyte-dl:hover { border-color: var(--lic-main); box-shadow: var(--lic-shadow); }
.lcbyte-dl__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	border-radius: calc(var(--lic-radius) * .7);
	background: var(--lic-pale);
	color: var(--lic-deep);
}
.lcbyte-dl__body { flex: 1; min-width: 0; }
.lcbyte-dl__name { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 15px; }
.lcbyte-dl__meta { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-top: 6px; font-size: 12.5px; color: var(--lic-text3); }
.lcbyte-dl__meta em { font-style: normal; }
.lcbyte-dl__go { flex: 0 0 auto; }
.lcbyte-dls__foot { margin: 14px 0 0; font-size: 12.5px; line-height: 1.8; }

/* =========================================================================
   06 登录注册
   ====================================================================== */

.lcbyte-authwrap {
	display: grid;
	grid-template-columns: minmax(0, .85fr) minmax(0, 1fr);
	gap: 0;
	max-width: 880px;
	margin: 0 auto;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	overflow: hidden;
	box-shadow: var(--lic-shadow);
}
.lcbyte-authwrap__aside {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 44px 36px;
	background:
		radial-gradient(460px 280px at -12% -14%, rgba(255, 255, 255, .18), transparent 62%),
		radial-gradient(560px 380px at 120% 114%, rgba(255, 255, 255, .13), transparent 64%),
		linear-gradient(158deg, var(--lic-deep) 0%, var(--lic-main) 100%);
	color: #fff;
}

/* 细网格纹理：只照亮左上角，避免整面花 */
.lcbyte-authwrap__aside::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
	background-size: 34px 34px;
	-webkit-mask-image: radial-gradient(430px 330px at 14% 6%, #000, transparent 76%);
	mask-image: radial-gradient(430px 330px at 14% 6%, #000, transparent 76%);
}

/* 右下角大圆环水印，压住渐变的空 */
.lcbyte-authwrap__aside::after {
	content: "";
	position: absolute;
	right: -74px;
	bottom: -86px;
	width: 250px;
	height: 250px;
	border-radius: 50%;
	border: 32px solid rgba(255, 255, 255, .08);
	pointer-events: none;
}

.lcbyte-authwrap__aside > * { position: relative; z-index: 1; }

.lcbyte-authwrap__mark {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 6px 15px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .13);
	border: 1px solid rgba(255, 255, 255, .26);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 1.8px;
}

/* .lcbyte-lic h2 的深色标题规则是 (0,1,1)，这里用 (0,2,0) 压回来 */
.lcbyte-lic .lcbyte-authwrap__title {
	margin: 22px 0 6px;
	font-size: 30px;
	line-height: 1.25;
	font-weight: 800;
	letter-spacing: -.4px;
	color: #fff;
}

/* 标题下的强调短线 */
.lcbyte-authwrap__title::after {
	content: "";
	display: block;
	width: 44px;
	height: 3px;
	margin-top: 14px;
	border-radius: 2px;
	background: linear-gradient(90deg, rgba(255, 255, 255, .95), rgba(255, 255, 255, .35));
}

.lcbyte-authwrap__list {
	margin: 30px 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 20px;
}

.lcbyte-authwrap__list li {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	padding: 0;
}

.lcbyte-authwrap__ico {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	margin-top: 1px;
	border-radius: 10px;
	color: #fff;
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .24);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18);
}

.lcbyte-authwrap__ico svg { display: block; }

.lcbyte-authwrap__txt { min-width: 0; }

.lcbyte-authwrap__txt strong {
	display: block;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: .2px;
	line-height: 1.5;
}

.lcbyte-authwrap__txt span {
	display: block;
	margin-top: 3px;
	font-size: 12.5px;
	line-height: 1.7;
	color: rgba(255, 255, 255, .74);
}

.lcbyte-auth { padding: 36px 32px; background: var(--lic-bg); }
.lcbyte-auth__tabs {
	display: flex;
	gap: 4px;
	margin-bottom: 24px;
	padding: 4px;
	border-radius: calc(var(--lic-radius) * .7);
	background: var(--lic-bg2);
}
.lcbyte-auth__tab {
	flex: 1;
	padding: 10px;
	border: none;
	border-radius: calc(var(--lic-radius) * .55);
	background: none;
	font-family: inherit;
	font-size: 14.5px;
	color: var(--lic-text2);
	cursor: pointer;
	transition: all .18s var(--lic-ease);
}
.lcbyte-auth__tab.is-active { background: var(--lic-bg); color: var(--lic-deep); font-weight: 600; box-shadow: var(--lic-shadow); }
/* 默认只显示第一个面板；JS 未加载时也能用（不会两个表单叠在一起） */
.lcbyte-auth__pane { display: none; }
.lcbyte-auth__pane.is-active { display: block; }

/* 已登录 */
.lcbyte-signed {
	max-width: 460px;
	margin: 0 auto;
	padding: 36px 28px;
	border: 1px solid var(--lic-line);
	border-radius: var(--lic-radius);
	background: var(--lic-bg);
	box-shadow: var(--lic-shadow);
	text-align: center;
}
.lcbyte-signed__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	margin: 0 auto 14px;
	border-radius: 50%;
	background: var(--lic-pale);
	color: var(--lic-deep);
	font-size: 24px;
	font-weight: 600;
}
.lcbyte-signed__title { margin-bottom: 8px; font-size: 20px; }
.lcbyte-signed__sub { font-size: 14px; color: var(--lic-text2); }
.lcbyte-signed__go { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin: 22px 0 0; }

/* =========================================================================
   07 表格与状态
   ====================================================================== */

.lcbyte-tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.lcbyte-table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	font-size: 14px;
}
.lcbyte-table th,
.lcbyte-table td {
	padding: 12px 14px;
	border-bottom: 1px solid var(--lic-line);
	text-align: left;
	vertical-align: middle;
}
.lcbyte-table th { background: var(--lic-bg2); font-weight: 500; white-space: nowrap; }
.lcbyte-table tbody tr:hover td { background: var(--lic-bg2); }
.lcbyte-table tr.is-focus td { background: var(--lic-warn-bg); }
.lcbyte-table__ops { white-space: nowrap; }
.lcbyte-op-form { display: inline; }

/* 状态药丸 */
.lcbyte-state {
	display: inline-block;
	padding: 3px 11px;
	border-radius: 999px;
	font-size: 12.5px;
	line-height: 1.7;
	white-space: nowrap;
	background: var(--lic-bg2);
	color: var(--lic-text2);
}
.lcbyte-state--active,
.lcbyte-state--paid { background: var(--lic-ok-bg); color: #0b7a42; }
.lcbyte-state--disabled,
.lcbyte-state--closed,
.lcbyte-state--expired,
.lcbyte-state--refunded { background: var(--lic-bad-bg); color: var(--lic-bad); }
.lcbyte-state--pending { background: var(--lic-warn-bg); color: var(--lic-warn); }

/* =========================================================================
   08 响应式
   ====================================================================== */

@media (max-width: 991px) {
	.lcbyte-shop { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lcbyte-prod__hero { grid-template-columns: 1fr; gap: 22px; }
	.lcbyte-prod__name { font-size: 26px; }
	.lcbyte-authwrap { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
	/* 侧栏改成横向滚动的标签条：竖排侧栏在小屏上会把内容挤没 */
	.lcbyte-mem { grid-template-columns: 1fr; gap: 22px; }
	.lcbyte-mem__side { position: static; }
	.lcbyte-mem__id { padding: 16px; }
	.lcbyte-mem__nav {
		flex-direction: row;
		overflow-x: auto;
		padding: 8px;
		gap: 4px;
		scrollbar-width: thin;
	}
	.lcbyte-mem__link {
		flex: 0 0 auto;
		padding: 8px 14px;
		border-radius: 999px;
		white-space: nowrap;
	}
	.lcbyte-mem__link--out { margin-top: 0; border-top: 0; }
	.lcbyte-mem__side-foot { display: none; }
	.lcbyte-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
	.lcbyte-shop { grid-template-columns: 1fr; }
	.lcbyte-stats { grid-template-columns: 1fr; }
	.lcbyte-block,
	.lcbyte-lic-card { padding: 18px; }
	.lcbyte-authwrap__aside,
	.lcbyte-auth { padding: 28px 22px; }
	.lcbyte-lic .lcbyte-authwrap__title { font-size: 24px; }
	.lcbyte-authwrap__title::after { margin-top: 10px; }
	.lcbyte-authwrap__list { gap: 16px; margin-top: 24px; }
	.lcbyte-dl { align-items: flex-start; flex-wrap: wrap; }
	.lcbyte-dl__go { width: 100%; }
	.lcbyte-dl__go .lcbyte-btn { width: 100%; }
	.lcbyte-lic-card__actions { margin-left: 0; width: 100%; }
	.lcbyte-lic-card__actions .lcbyte-btn { width: 100%; }
	.lcbyte-input--sm { min-width: 0; width: 100%; }
	.lcbyte-inline-form { width: 100%; }
	/* 商品详情：信息条转两列、权益转单列 */
	.lcbyte-prod__meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lcbyte-prod__meta li { padding: 13px 16px; }
	.lcbyte-prod__meta li:nth-child(3) { border-left: 0; }
	.lcbyte-prod__meta li:nth-child(n + 3) { border-top: 1px solid var(--lic-line); }
	.lcbyte-prod__perks { grid-template-columns: 1fr; gap: 10px; padding: 16px; }
	.lcbyte-prod__price em { font-size: 30px; }
	.lcbyte-sec-head__en { display: none; }
}

/* 尊重系统的「减少动效」偏好 */
@media (prefers-reduced-motion: reduce) {
	.lcbyte-lic *,
	.lcbyte-lic *::before,
	.lcbyte-lic *::after {
		transition: none !important;
		animation: none !important;
	}
	.lcbyte-btn:active,
	.lcbyte-shop-card:hover,
	.lcbyte-stat:hover { transform: none !important; }
}

/* 小屏打印：把可交互元素压扁，至少别印出一堆按钮 */
@media print {
	.lcbyte-btn,
	.lcbyte-copy,
	.lcbyte-mem__side,
	.lcbyte-shop-head__side { display: none !important; }
	.lcbyte-mem { grid-template-columns: 1fr; }
}

/* ── 优惠码 ────────────────────────────────────────────── */
.lcbyte-coupon {
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 1px dashed var(--lic-line2, #d9dde3);
	border-radius: 10px;
	background: var(--lic-bg2, #f6f8fa);
}
.lcbyte-coupon__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
}
.lcbyte-coupon__title { font-size: 13.5px; font-weight: 600; color: var(--lic-text2); }
.lcbyte-coupon__price { font-size: 19px; font-weight: 700; color: var(--lic-deep); transition: color .2s ease; }
.lcbyte-coupon__row { display: flex; gap: 8px; align-items: stretch; }
.lcbyte-coupon__input { flex: 1 1 auto; min-width: 0; }
.lcbyte-coupon__btn { flex: 0 0 auto; white-space: nowrap; }
.lcbyte-coupon__msg { margin: 8px 0 0; font-size: 12.5px; line-height: 1.6; color: var(--lic-text3); }
.lcbyte-coupon__msg.is-ok { color: var(--lic-ok, #16a03e); }
.lcbyte-coupon__msg.is-bad { color: var(--lic-bad, #c0392b); }
