/* Course workspace and teacher list. Stage geometry lives in stage.css. */
.tc-home,
.tc-list-console,
.tc-phone-console {
  --tc-line: oklch(.89 .008 145);
  --tc-muted: oklch(.47 .014 145);
  --tc-ink: oklch(.25 .018 145);
  --tc-wash: oklch(.975 .005 145);
  color: var(--tc-ink);
  font-size: 14px;
}
.tc-home button,
.tc-list-console button,
.tc-phone-console button { min-height: 40px; font-size: 13px; }
.tc-home button:focus-visible,
.tc-list-console button:focus-visible,
.tc-phone-console button:focus-visible { outline: 3px solid oklch(.65 .1 140 / .45); outline-offset: 3px; }
.tc-home-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:2px 0 24px; }
.tc-home-heading > div { min-width:0; }
.tc-home-heading p { margin:0 0 7px; color:var(--tc-muted); font-size:13px; }
.tc-home-heading h1 { margin:0 0 6px; font-size:28px; font-weight:700; letter-spacing:-.025em; line-height:1.3; }
.tc-home-heading > div > span { color:var(--tc-muted); font-size:14px; }
.tc-home-heading > button { flex-shrink:0; padding:9px 17px; }
.tc-home-layout { display:grid; grid-template-columns:minmax(0,1fr) 292px; align-items:start; gap:22px; }
.tc-home-main,.tc-home-aside { min-width:0; display:grid; gap:22px; }
.tc-home-focus,.tc-home-schedule,.tc-home-prepare,.tc-home-empty { background:oklch(1 0 0); border:1px solid var(--tc-line); border-radius:14px; overflow:hidden; }
.tc-home-focus { box-shadow:0 4px 18px oklch(.24 .02 145 / .035); }
.tc-home-focus-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px 0; }
.tc-home-focus-head > span:first-child { font-size:13px; font-weight:600; color:var(--primary); }
.tc-home .tc-pill { display:inline-flex; align-items:center; min-height:26px; border-radius:6px; padding:3px 9px; font-size:12px; font-weight:500; white-space:nowrap; }
.tc-home-focus-content { display:flex; align-items:center; gap:20px; padding:23px 24px 22px; }
.tc-home-focus-date { display:grid; align-content:center; justify-items:center; gap:1px; width:78px; min-height:80px; flex-shrink:0; border:1px solid var(--tc-line); border-radius:11px; background:var(--tc-wash); }
.tc-home-focus-date strong { font-size:28px; line-height:1.3; letter-spacing:-.03em; font-variant-numeric:tabular-nums; }
.tc-home-focus-date span { font-size:11px; color:var(--tc-muted); }
.tc-home-focus-identity { min-width:0; }
.tc-home-focus-identity h2 { margin:0; font-size:23px; font-weight:650; line-height:1.45; overflow-wrap:anywhere; text-wrap:balance; }
.tc-home-focus-identity p { margin:5px 0 0; color:var(--tc-muted); font-size:14px; line-height:1.55; overflow-wrap:anywhere; }
.tc-home-focus-schedule { display:flex; flex-wrap:wrap; gap:22px 42px; padding:0 24px 24px; }
.tc-home-focus-schedule > div { display:grid; gap:6px; align-content:start; }
.tc-home-focus-schedule span { color:var(--tc-muted); font-size:12px; }
.tc-home-focus-schedule b { display:flex; gap:12px; align-items:center; font-size:21px; font-weight:600; line-height:1.35; font-variant-numeric:tabular-nums; }
.tc-home-focus-schedule i { font-style:normal; color:var(--tc-muted); font-size:16px; font-weight:400; }
.tc-home-focus-schedule strong { font-size:15px; font-weight:550; line-height:1.8; font-variant-numeric:tabular-nums; }
.tc-home-focus-foot { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 24px; border-top:1px solid var(--tc-line); background:var(--tc-wash); }
.tc-home-focus-foot > span { display:flex; align-items:center; gap:7px; color:var(--tc-muted); font-size:12px; line-height:1.6; }
.tc-home-focus-foot .icon { width:16px; height:16px; flex-shrink:0; }
.tc-home-focus-foot button { flex-shrink:0; min-width:122px; padding:9px 15px; }
.tc-home-section-head { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:17px 20px; border-bottom:1px solid var(--tc-line); }
.tc-home-section-head h2,.tc-home-prepare h2 { display:flex; align-items:center; gap:8px; margin:0; font-size:15px; font-weight:650; }
.tc-home-section-head h2 span { display:grid; place-items:center; min-width:22px; height:22px; padding:0 6px; border-radius:5px; background:var(--tc-wash); color:var(--tc-muted); font-size:12px; font-weight:500; }
.tc-home-filters { display:flex; gap:3px; padding:3px; background:var(--tc-wash); border:1px solid var(--tc-line); border-radius:8px; }
.tc-home-filters button { min-height:29px; padding:3px 10px; border:1px solid transparent; background:transparent; color:var(--tc-muted); border-radius:5px; font-size:12px; box-shadow:none; }
.tc-home-filters button.active { background:oklch(1 0 0); color:var(--tc-ink); border-color:var(--tc-line); box-shadow:0 1px 2px oklch(.2 0 0 / .04); }
.tc-home-course-row { display:grid; grid-template-columns:56px minmax(0,1fr) minmax(135px,auto) auto auto; align-items:center; gap:18px; padding:19px 20px; border-bottom:1px solid var(--tc-line); }
.tc-home-course-row:last-child { border-bottom:0; }
.tc-home-date { display:grid; gap:2px; align-content:center; }
.tc-home-date strong { font-size:21px; font-weight:600; line-height:1.3; font-variant-numeric:tabular-nums; }
.tc-home-date span { color:var(--tc-muted); font-size:11px; line-height:1.4; }
.tc-home-course-name { min-width:0; }
.tc-home-course-name h3 { margin:0; font-size:14px; font-weight:600; line-height:1.5; overflow-wrap:anywhere; }
.tc-home-course-name p { margin:3px 0 0; color:var(--tc-muted); font-size:12px; line-height:1.45; overflow-wrap:anywhere; }
.tc-home-course-time { display:grid; gap:4px; align-content:center; white-space:nowrap; }
.tc-home-course-time b { font-size:13px; font-weight:550; font-variant-numeric:tabular-nums; }
.tc-home-course-time span { font-size:11px; color:var(--tc-muted); }
.tc-home-enter { gap:4px; padding:6px 10px; white-space:nowrap; font-size:12px!important; }
.tc-home-enter .icon { width:14px; height:14px; }
.tc-home-list-empty { padding:30px 20px; text-align:center; color:var(--tc-muted); font-size:13px; }
.tc-home-prepare { padding:21px 20px 5px; }
.tc-home-prepare > p { margin:8px 0 16px; color:var(--tc-muted); font-size:12px; line-height:1.7; }
.tc-home-prep-link { display:flex; align-items:center; gap:12px; width:100%; min-height:78px!important; padding:15px 0; border:0; border-top:1px solid var(--tc-line); border-radius:0; box-shadow:none; background:transparent; text-align:left; }
.tc-home-prep-link:hover:not(:disabled) { background:var(--tc-wash); }
.tc-home-link-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:9px; background:var(--tc-wash); color:var(--primary); flex-shrink:0; }
.tc-home-link-icon .icon { width:19px; height:19px; }
.tc-home-prep-link > span:nth-child(2) { display:grid; gap:3px; min-width:0; flex:1; }
.tc-home-prep-link b { color:var(--tc-ink); font-size:13px; font-weight:600; }
.tc-home-prep-link small { color:var(--tc-muted); font-size:11px; line-height:1.6; }
.tc-home-prep-link > .icon { color:var(--tc-muted); width:15px; height:15px; flex-shrink:0; }
.tc-home-guide { padding:21px 20px 17px; border:1px solid oklch(.88 .025 140); border-radius:14px; background:oklch(.953 .018 140); }
.tc-home-guide > span { display:grid; place-items:center; width:31px; height:31px; border:1px solid oklch(.85 .035 140); border-radius:8px; color:var(--primary); margin-bottom:13px; }
.tc-home-guide h2 { margin:0 0 8px; font-size:14px; font-weight:600; }
.tc-home-guide p { margin:0 0 10px; font-size:12px; color:oklch(.42 .035 140); line-height:1.8; text-wrap:pretty; }
.tc-home-guide button.quiet { min-height:32px; padding:3px 0; color:var(--primary); font-size:12px; }
.tc-home-guide button .icon { width:14px; height:14px; }
.tc-home-empty { display:grid; justify-items:center; align-content:center; min-height:346px; padding:38px 24px; text-align:center; }
.tc-home-empty-icon { display:grid; place-items:center; width:58px; height:58px; margin-bottom:20px; border:1px solid var(--tc-line); border-radius:15px; background:var(--tc-wash); color:var(--primary); }
.tc-home-empty-icon .icon { width:28px; height:28px; stroke-width:1.5; }
.tc-home-empty h2 { margin:0 0 10px; font-size:20px; font-weight:650; }
.tc-home-empty p { margin:0 0 22px; max-width:44ch; font-size:13px; line-height:1.8; color:var(--tc-muted); }

/* Teacher list: compact rows, always-discoverable selection and real status totals. */
.tc-list-console .page-heading { margin-bottom:16px; }
.tc-list-console .page-heading h1 { font-size:25px; }
.tc-list-console .page-heading p { color:var(--tc-muted); font-size:13px; }
.tc-workflow { border:1px solid var(--tc-line); border-radius:10px; margin-bottom:13px; background:oklch(1 0 0); overflow:hidden; }
.tc-workflow summary { display:flex; align-items:center; gap:8px; min-height:42px; padding:8px 14px; cursor:pointer; font-size:12px; font-weight:550; list-style:none; }
.tc-workflow summary::-webkit-details-marker { display:none; }
.tc-workflow summary > span { margin-left:auto; color:var(--tc-muted); font-weight:400; font-variant-numeric:tabular-nums; }
.tc-workflow summary > .icon { width:15px; height:15px; color:var(--tc-muted); }
.tc-workflow summary > .icon:last-child { transition:transform .18s ease-out; }
.tc-workflow[open] summary { border-bottom:1px solid var(--tc-line); }
.tc-workflow[open] summary > .icon:last-child { transform:rotate(90deg); }
.tc-workflow .tc-steps { margin:0; border:0; border-radius:0; background:transparent; }
.tc-workflow .tc-step { min-height:64px; padding:12px 14px; }
.tc-workflow .tc-step b { font-size:12px; }
.tc-workflow .tc-step small { font-size:11px; }
.tc-workflow .tc-phase { margin:0; padding:10px 14px; border-top:1px solid var(--tc-line); }
.tc-list-console .tc-overview { display:flex; flex-wrap:wrap; gap:0; margin-bottom:16px; border:1px solid var(--tc-line); border-radius:10px; background:oklch(1 0 0); overflow:hidden; }
.tc-list-console .tc-signal { display:flex; flex:1 1 125px; align-items:center; justify-content:space-between; gap:14px; min-height:54px; padding:12px 15px; border:0; border-right:1px solid var(--tc-line); border-radius:0; background:transparent; box-shadow:none; text-align:left; }
.tc-list-console .tc-signal:last-child { border-right:0; }
.tc-signal > span { font-size:12px; color:var(--tc-muted); }
.tc-signal > b { font-size:18px; font-weight:650; color:var(--tc-ink); font-variant-numeric:tabular-nums; }
.tc-signal > b small { font-size:12px; color:var(--tc-muted); font-weight:400; }
.tc-list-console .tc-signal:hover { background:var(--tc-wash); }
.tc-signal.amber > b { color:var(--amber); }
.tc-list-console .tc-console { grid-template-columns:minmax(0,1fr) 320px; gap:16px; }
.tc-list-console .tc-board-panel { border-radius:12px; }
.tc-list-console .tc-board-head { padding:15px 16px; gap:12px; border-bottom:1px solid var(--tc-line); }
.tc-list-console .tc-pane-switch { border-radius:8px; padding:3px; gap:2px; background:var(--tc-wash); border:1px solid var(--tc-line); }
.tc-list-console .tc-pane-switch button { min-height:33px; font-size:12px; border-radius:5px; padding:5px 11px; }
.tc-list-console .tc-pane-switch button.active { background:oklch(1 0 0); color:var(--primary); box-shadow:0 1px 3px oklch(.2 0 0 / .06); }
.tc-list-console .tc-board-tools { flex-wrap:wrap; gap:7px; }
.tc-list-console .tc-board-tools > button { min-height:36px; font-size:12px; }
.tc-list-console .tc-search { max-width:280px; min-width:190px; min-height:38px; }
.tc-list-console .tc-search input { height:36px; font-size:13px; }
.tc-list-console .tc-filterbar { padding:13px 16px; gap:6px; border-bottom:1px solid var(--tc-line); background:var(--tc-wash); }
.tc-list-console .tc-filter { min-height:33px; padding:5px 10px; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--tc-muted); font-size:12px; gap:7px; }
.tc-list-console .tc-filter b { font-size:11px; font-weight:550; background:oklch(.925 .008 145); color:var(--tc-muted); }
.tc-list-console .tc-filter.active { color:var(--primary); background:oklch(1 0 0); border-color:oklch(.82 .045 140); }
.tc-list-console .tc-filter.active b { background:var(--primary-soft); color:var(--primary); }
.tc-list-console .tc-board-rows { display:grid; grid-template-columns:minmax(0,1fr); gap:0; padding:0; }
.tc-board-rows .tc-card { display:grid; grid-template-columns:18px 32px minmax(0,1fr); align-items:center; gap:11px; min-height:72px; margin:0; padding:12px 16px; border:0; border-bottom:1px solid var(--tc-line); border-radius:0; box-shadow:none; background:oklch(1 0 0); }
.tc-board-rows .tc-card:last-child { border-bottom:0; }
.tc-board-rows .tc-card:hover { transform:none; background:var(--tc-wash); }
.tc-board-rows .tc-card.selected { background:oklch(.958 .025 140); box-shadow:inset 0 0 0 1px oklch(.76 .055 140); }
.tc-board-rows .tc-card .tc-pick { position:static; inset:auto; margin:0; width:16px; height:16px; min-height:16px; opacity:1; accent-color:var(--primary); }
.tc-board-rows .tc-avatar { width:32px; height:32px; border-radius:8px; font-size:11px; }
.tc-board-rows .tc-card-main { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 12px; padding:0; min-width:0; }
.tc-board-rows .tc-card-title { grid-column:1; grid-row:1; gap:12px; align-items:center; min-width:0; }
.tc-card-identity { display:grid; gap:3px; min-width:0; }
.tc-card-identity b { font-size:14px; font-weight:600; line-height:1.3; }
.tc-card-identity small { color:var(--tc-muted); font-size:11px; font-variant-numeric:tabular-nums; }
.tc-board-rows .tc-card-seat { color:var(--tc-muted); font-size:12px; white-space:nowrap; }
.tc-board-rows .tc-card-pills { grid-column:2; grid-row:1; align-items:center; justify-content:flex-end; gap:5px; }
.tc-board-rows .tc-card-flags { grid-column:1/-1; gap:5px; }
.tc-list-console .tc-pill,.tc-phone-console .tc-pill { min-height:24px; padding:3px 7px; font-size:11px; border-radius:5px; }
.tc-list-console .tc-flag { padding:1px 5px; font-size:10px; border-radius:4px; }
.tc-list-console .tc-side { border-radius:12px; }
.tc-list-console .tc-detail-head { padding:16px; }
.tc-list-console .tc-detail-id h2 { font-size:16px; }
.tc-list-console .tc-detail-id p { font-size:12px; }
.tc-list-console .tc-quick { padding:12px 16px; gap:6px; }
.tc-list-console .tc-act { min-height:36px; font-size:12px; padding:5px 10px; }
.tc-list-console .tc-quick-label { flex-basis:100%; font-size:11px; padding-bottom:3px; color:var(--tc-muted); }
.tc-list-console .help-text,.tc-list-console .small-text,.tc-list-console .tc-batch-hint { font-size:12px; line-height:1.7; }
.tc-list-console .tc-todo { padding:16px; }
.tc-list-console .tc-todo-head { align-items:start; flex-direction:column; gap:4px; }
.tc-list-console .tc-todo-grid { gap:0; }
.tc-list-console .tc-todo-item { display:grid; grid-template-columns:28px minmax(0,1fr); column-gap:10px; row-gap:3px; padding:13px 0; border:0; border-bottom:1px solid var(--tc-line); border-radius:0; background:transparent; }
.tc-list-console .tc-todo-item:last-child { border-bottom:0; }
.tc-list-console .tc-todo-item b { grid-row:1/3; align-self:center; font-size:18px; text-align:center; }
.tc-list-console .tc-todo-item span { font-size:13px; font-weight:550; }
.tc-list-console .tc-todo-item small { grid-column:2; font-size:11px; line-height:1.6; }
.tc-list-console .tc-todo-item.zero { opacity:1; }
.tc-list-console .tc-todo-item.zero b { font-size:16px; color:var(--tc-muted); }
.tc-list-console .tc-batch { border-radius:10px; box-shadow:0 2px 9px oklch(.2 .02 140 / .05); padding:12px 15px; }
.tc-list-console .tc-batch-info strong { font-size:13px; }
.tc-list-console .tc-batch-info span { font-size:12px; }
.tc-list-console .tc-batch-actions { gap:6px; }
.tc-list-console .tc-batch-actions button { min-height:36px; }

/* Phone registration highlights only missing declarations and reported issues. */
.tc-phone-console .page-heading { margin-bottom:20px; }
.tc-phone-console .tc-phone-panel { border-radius:12px; margin-bottom:20px; }
.tc-phone-console .tc-phone-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
.tc-phone-console .tc-phone-col { padding:18px 20px; border-bottom:1px solid var(--tc-line); }
.tc-phone-console .tc-phone-col:nth-child(2n) { border-right:0; }
.tc-phone-console .tc-phone-col:nth-last-child(-n+2) { border-bottom:0; }
.tc-phone-console .tc-phone-col h3 { font-size:14px; gap:8px; }
.tc-phone-console .tc-col-hint { font-size:12px; line-height:1.65; margin:7px 0 12px; color:var(--tc-muted); }
.tc-phone-console .tc-phone-row { display:grid; grid-template-columns:31px minmax(0,1fr) auto; align-items:center; min-height:70px; gap:8px 11px; padding:12px 0; }
.tc-phone-console .tc-avatar.small { width:31px; height:31px; border-radius:8px; font-size:11px; }
.tc-phone-console .tc-phone-who { gap:4px; }
.tc-phone-console .tc-phone-who b { font-size:14px; }
.tc-phone-console .tc-phone-who small { font-size:12px; color:var(--tc-muted); }
.tc-phone-console .tc-phone-reason { font-size:12px; line-height:1.65; color:var(--red); overflow-wrap:anywhere; margin:3px 0 0; }
.tc-phone-console .tc-phone-actions { grid-column:2/-1; gap:6px; flex-wrap:wrap; }
.tc-phone-console .tc-phone-actions button { min-height:36px; font-size:12px; padding:5px 10px; }
.tc-phone-console .tc-phone-empty { padding:16px 0 10px; font-size:13px; color:var(--tc-muted); }
.tc-phone-console .phone-layout { grid-template-columns:minmax(0,1fr) 300px; gap:18px; }
.tc-phone-console .bags-wrap { gap:24px; padding:24px; }
.tc-phone-console .bag-head h3 { font-size:14px; }
.tc-phone-console .bag-head p { font-size:12px; color:var(--tc-muted); }
.tc-phone-console .bag { min-height:43px; font-size:14px; border-radius:7px; }
.tc-phone-console .room-help { font-size:12px; color:var(--tc-muted); }
.tc-phone-console .tc-phone-panel > .panel-head { flex-wrap:wrap; gap:6px 16px; }
.tc-phone-console .tc-phone-completed { border-top:1px solid var(--tc-line); }
.tc-phone-console .tc-phone-completed summary { display:flex; align-items:center; gap:12px; min-height:56px; padding:14px 20px; cursor:pointer; list-style:none; }
.tc-phone-console .tc-phone-completed summary::-webkit-details-marker { display:none; }
.tc-phone-console .tc-phone-completed summary > span { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:550; }
.tc-phone-console .tc-phone-completed summary b { color:var(--primary); font-variant-numeric:tabular-nums; }
.tc-phone-console .tc-phone-completed summary small { color:var(--tc-muted); font-size:12px; }
.tc-phone-console .tc-phone-completed summary > .icon { width:15px; height:15px; margin-left:auto; color:var(--tc-muted); transition:transform .18s ease-out; }
.tc-phone-console .tc-phone-completed[open] summary { border-bottom:1px solid var(--tc-line); }
.tc-phone-console .tc-phone-completed[open] summary > .icon { transform:rotate(90deg); }
.tc-phone-console .tc-phone-completed-body { padding:0 20px; }
.tc-phone-console .tc-phone-completed-body .tc-phone-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:28px; }
.tc-phone-console .tc-phone-completed-body .tc-phone-row { border-bottom:1px solid var(--tc-line); }
.tc-phone-console .tc-phone-completed-body .tc-phone-row:nth-last-child(-n+2) { border-bottom:0; }

@media (max-width:1400px) {
  .tc-home-course-row { grid-template-columns:48px minmax(0,1fr) auto; gap:10px 16px; }
  .tc-home-date { grid-row:1/3; }
  .tc-home-course-name { grid-column:2; grid-row:1; }
  .tc-home-course-time { grid-column:2; grid-row:2; display:flex; flex-wrap:wrap; gap:4px 12px; }
  .tc-home-course-row > .tc-pill { grid-column:3; grid-row:1; justify-self:end; }
  .tc-home-course-row > button { grid-column:3; grid-row:2; }
}
@media (max-width:1250px) {
  .tc-home-layout { grid-template-columns:minmax(0,1fr); }
  .tc-home-aside { grid-template-columns:1fr 1fr; align-items:start; }
  .tc-list-console .tc-console { grid-template-columns:minmax(0,1fr); }
  .tc-list-console .tc-side { max-height:none; }
  .tc-phone-console .phone-layout { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:900px) {
  .tc-phone-console .tc-phone-columns { grid-template-columns:minmax(0,1fr); }
  .tc-phone-console .tc-phone-col { border-right:0; border-bottom:1px solid var(--tc-line)!important; }
  .tc-phone-console .tc-phone-col:last-child { border-bottom:0!important; }
  .tc-phone-console .tc-phone-completed-body .tc-phone-list { grid-template-columns:minmax(0,1fr); }
  .tc-phone-console .tc-phone-completed-body .tc-phone-row:nth-last-child(2) { border-bottom:1px solid var(--tc-line); }
  .tc-list-console .tc-board-tools { flex-basis:100%; justify-content:flex-start; }
  .tc-list-console .tc-search { max-width:none; flex:1; }
}
@media (max-width:650px) {
  .tc-home-heading { align-items:start; gap:12px; margin-bottom:18px; }
  .tc-home-heading p { font-size:11px; margin-bottom:8px; }
  .tc-home-heading h1 { font-size:25px; }
  .tc-home-heading > div > span { font-size:12px; line-height:1.6; }
  .tc-home-heading > button { padding:8px 12px; font-size:12px; margin-top:20px; }
  .tc-home-layout,.tc-home-main,.tc-home-aside { gap:16px; }
  .tc-home-aside { grid-template-columns:minmax(0,1fr); }
  .tc-home-focus-head { padding:17px 18px 0; }
  .tc-home-focus-content { padding:19px 18px; gap:15px; }
  .tc-home-focus-date { width:65px; min-height:73px; }
  .tc-home-focus-date strong { font-size:25px; }
  .tc-home-focus-date span { font-size:10px; }
  .tc-home-focus-identity h2 { font-size:19px; }
  .tc-home-focus-identity p { font-size:12px; }
  .tc-home-focus-schedule { padding:0 18px 19px; gap:18px 30px; }
  .tc-home-focus-schedule b { font-size:19px; }
  .tc-home-focus-schedule strong { font-size:14px; }
  .tc-home-focus-foot { padding:15px 18px; flex-wrap:wrap; gap:12px; }
  .tc-home-focus-foot > span { font-size:11px; }
  .tc-home-focus-foot button { margin-left:auto; min-width:120px; }
  .tc-home-section-head { padding:15px 16px; flex-wrap:wrap; gap:12px; }
  .tc-home-course-row { padding:17px 16px; gap:10px 12px; }
  .tc-home-course-time { display:grid; gap:3px; }
  .tc-home-course-time b { font-size:12px; }
  .tc-home-course-time span { font-size:10px; }
  .tc-home-course-name h3 { font-size:13px; }
  .tc-home .tc-pill { font-size:11px; min-height:24px; }
  .tc-home-enter { font-size:11px!important; min-height:36px!important; padding:5px 8px; }
  .tc-home-prepare { padding:19px 18px 3px; }
  .tc-home-guide { padding:19px 18px 15px; }
  .tc-list-console .tc-overview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tc-list-console .tc-signal { min-height:48px; padding:10px 13px; border-right:1px solid var(--tc-line); border-bottom:1px solid var(--tc-line); }
  .tc-list-console .tc-signal:nth-child(2n) { border-right:0; }
  .tc-list-console .tc-signal:last-child { grid-column:1/-1; border-bottom:0; }
  .tc-list-console .tc-board-head { padding:13px 12px; }
  .tc-list-console .tc-filterbar { padding:11px 12px; gap:5px; }
  .tc-list-console .tc-filter { font-size:11px; padding:5px 8px; }
  .tc-board-rows .tc-card { grid-template-columns:17px 30px minmax(0,1fr); padding:12px; gap:9px; }
  .tc-board-rows .tc-card-main { grid-template-columns:minmax(0,1fr); gap:7px; }
  .tc-board-rows .tc-card-pills { grid-column:1; grid-row:2; justify-content:flex-start; }
  .tc-board-rows .tc-card-flags { grid-row:3; }
  .tc-card-identity { display:flex; gap:9px; align-items:baseline; }
  .tc-card-identity b { font-size:13px; }
  .tc-card-identity small { font-size:10px; }
  .tc-board-rows .tc-card-seat { font-size:11px; }
  .tc-list-console .tc-batch { position:static; border:1px solid oklch(.86 .05 140); border-radius:10px; margin-bottom:16px; }
  .tc-list-console .tc-batch-info { width:100%; display:flex; align-items:center; gap:10px; }
  .tc-list-console .tc-batch-info span { max-width:220px; }
  .tc-list-console .tc-batch-actions button { min-height:37px; }
  .tc-phone-console .tc-phone-col { padding:17px 16px; }
  .tc-phone-console .tc-phone-row { gap:8px 9px; }
  .tc-phone-console .tc-phone-who { min-width:0; }
  .tc-phone-console .tc-phone-who b { font-size:13px; }
  .tc-phone-console .tc-phone-who small { font-size:11px; }
  .tc-phone-console .tc-phone-actions button { min-height:44px; }
  .tc-phone-console .tc-phone-completed summary { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 12px; padding:14px 16px; }
  .tc-phone-console .tc-phone-completed summary small { grid-column:1; grid-row:2; line-height:1.6; }
  .tc-phone-console .tc-phone-completed summary > .icon { grid-column:2; grid-row:1/3; }
  .tc-phone-console .tc-phone-completed-body { padding:0 16px; }
  .tc-phone-console .bags-wrap { padding:18px; gap:20px; }
}
@media (max-width:390px) {
  .tc-home-course-row { grid-template-columns:43px minmax(0,1fr); }
  .tc-home-course-row > .tc-pill { grid-column:2; grid-row:2; justify-self:start; }
  .tc-home-course-time { grid-column:2; grid-row:3; }
  .tc-home-course-row > button { grid-column:1/-1; grid-row:4; min-height:40px!important; margin-top:3px; }
  .tc-home-date { grid-row:1/4; align-self:start; }
  .tc-home-focus-foot button { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .tc-home *, .tc-list-console *, .tc-phone-console * { transition:none!important; scroll-behavior:auto!important; }
}
