/* ============================================================
 * Studio · 教师账号体系
 *   1) 教师注册页 /studio/register/（复用 studio-login.css 舞台）
 *   2) 学员管理工作区的「教师管理」视图（仅站长可见）
 * ============================================================ */

/* ---------- 1. 注册页 ---------- */
.studio-teacher-reg .slu-col{ left: 946px; top: 92px; width: 512px; }
.studio-teacher-reg .slu-title{ width: 400px; height: auto; }
.studio-teacher-reg .slu-tag{ margin-top: 12px; }

.tr-form{
	width: 100%;
	margin-top: 18px;
	padding: 22px 22px 18px;
	box-sizing: border-box;
	background: rgba(255,255,255,.38);
	border: 1px solid rgba(255,255,255,.62);
	border-radius: 22px;
	box-shadow: 0 18px 44px rgba(60,80,140,.16);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	text-align: left;
}
.tr-form .slu-h{ margin-bottom: 8px; text-align: center; }
.tr-lead{ margin: 0 0 16px; font-size: 13px; line-height: 1.65; color: #47578a; }
.tr-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
.tr-grid-1{ grid-template-columns: 1fr; }
.tr-span2{ grid-column: 1 / -1; }
.tr-form .slu-field{ margin-bottom: 14px; }
.tr-form .slu-field input{ height: 44px; padding: 0 14px; border-radius: 12px; }
.tr-label{ display: block; margin: 0 0 6px; font-size: 13px; font-weight: 700; color: #3d4d7a; }
.tr-label em{ color: #c05353; font-style: normal; }
.tr-tip{ margin: 2px 0 16px; font-size: 12.5px; line-height: 1.65; color: #6b7a9e; }
.tr-back{ display: block; margin-top: 12px; text-align: center; }
.slu-reglink{ margin: 14px 0 0; font-size: 13px; color: #5b6b93; }
.slu-reglink .slu-link{ margin-left: 4px; }

.tr-closed{ width: 100%; box-sizing: border-box; padding: 24px 20px; text-align: center; background: rgba(255,255,255,.55); border-radius: 18px; }
.tr-closed p{ margin: 0 0 14px; font-size: 14px; line-height: 1.7; color: #47578a; }

/* 中小屏：注册卡放宽，字段单列 */
.studio-teacher-reg .slu-mcard{ max-width: 430px; }
.studio-teacher-reg .slu-mcard .tr-form{ padding: 18px 16px 14px; }
.studio-teacher-reg .tr-grid-1 .slu-field input{ padding: 0 12px; }

/* ---------- 2. 教师管理视图（工作区内） ---------- */
.st-wrap{ display: flex; flex-direction: column; gap: 16px; }

.st-card{
	background: var(--sf-panel, #fff);
	border: 1px solid var(--sf-line, #e3e9f2);
	border-radius: 16px;
	padding: 18px 20px;
}
.st-card-h{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.st-card-h h3{ margin: 0; font-size: 17px; font-weight: 750; color: var(--sm-ink, #2b3a55); }
.st-card-sub{ margin: 0 0 14px; font-size: 13px; line-height: 1.6; color: var(--sm-dim, #7c8aa5); }

/* 注册码条 */
.st-codebar{ display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.st-code{
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 20px; font-weight: 700; letter-spacing: 2px;
	padding: 10px 16px; border-radius: 12px;
	color: var(--sm-ink, #2b3a55);
	background: var(--sf-soft, #eef4fb);
	border: 1px dashed var(--sm-blue, #4e86b4);
}
.st-code.off{ opacity: .5; text-decoration: line-through; }
.st-state{ font-size: 12.5px; font-weight: 700; padding: 4px 10px; border-radius: 999px; }
.st-state.on{ color: #1c6b45; background: rgba(76,169,120,.16); }
.st-state.off{ color: #9a4a2c; background: rgba(214,124,84,.16); }
.st-url{
	flex: 1 1 260px; min-width: 200px; font-size: 12.5px;
	padding: 9px 12px; border-radius: 10px;
	color: var(--sm-dim, #7c8aa5);
	background: var(--sf-soft2, #f6f8fc);
	border: 1px solid var(--sf-line, #e3e9f2);
	overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

/* 教师表 */
.st-tablewrap{ overflow-x: auto; }
.st-table{ width: 100%; border-collapse: collapse; font-size: 13.5px; }
.st-table th{
	text-align: left; font-size: 12.5px; font-weight: 700;
	color: var(--sm-dim, #7c8aa5); padding: 8px 10px;
	border-bottom: 1px solid var(--sf-line, #e3e9f2); white-space: nowrap;
}
.st-table td{ padding: 12px 10px; border-bottom: 1px solid var(--sf-soft3, #eef1f6); vertical-align: middle; }
.st-table tr:last-child td{ border-bottom: 0; }
.st-name{ font-weight: 700; color: var(--sm-ink, #2b3a55); }
.st-login{ font-family: ui-monospace, Menlo, monospace; font-size: 12.5px; color: var(--sm-dim, #7c8aa5); }
.st-when{ font-size: 12.5px; color: var(--sm-dim, #7c8aa5); white-space: nowrap; }

/* 模块勾选（行内 chips，点一下即保存） */
.st-mods{ display: flex; flex-wrap: wrap; gap: 6px; max-width: 460px; }
.st-mod{
	border: 1px solid var(--sf-line, #dbe3ee);
	background: var(--sf-soft2, #f7f9fc);
	color: var(--sm-dim, #7c8aa5);
	border-radius: 999px; padding: 5px 11px;
	font-size: 12.5px; font-weight: 650; cursor: pointer;
	transition: all .15s ease;
}
.st-mod:hover{ border-color: var(--sm-blue, #4e86b4); color: var(--sm-blue, #4e86b4); }
.st-mod.on{
	background: var(--sm-blue, #4e86b4); border-color: var(--sm-blue, #4e86b4);
	color: var(--sf-on-accent, #fff);
}
.st-mod:disabled{ opacity: .55; cursor: progress; }

/* 行操作 */
.st-acts{ display: flex; gap: 6px; flex-wrap: wrap; }
.st-act{
	border: 1px solid var(--sf-line, #dbe3ee); background: transparent;
	color: var(--sm-ink, #2b3a55); border-radius: 9px;
	padding: 6px 10px; font-size: 12.5px; cursor: pointer; font-family: inherit;
}
.st-act:hover{ border-color: var(--sm-blue, #4e86b4); color: var(--sm-blue, #4e86b4); }
.st-act.danger{ color: #b4472f; border-color: rgba(180,71,47,.35); }
.st-act.danger:hover{ background: rgba(180,71,47,.08); border-color: #b4472f; color: #b4472f; }
.st-act:disabled{ opacity: .5; cursor: not-allowed; }

.st-empty{ padding: 26px 10px; text-align: center; color: var(--sm-dim, #7c8aa5); font-size: 13.5px; }
.st-self{ font-size: 11.5px; color: var(--sm-dim, #7c8aa5); }

/* 深浅主题在 studio-themes.css 里补变量；行内 chips 已全部走变量 */

@media (max-width: 720px){
	.st-table th:nth-child(4), .st-table td:nth-child(4),
	.st-table th:nth-child(5), .st-table td:nth-child(5){ display: none; }
	.st-mods{ max-width: none; }
}
