/* Teacher workspace reconstructed from the supplied 1600 × 764 reference. */
.teacher-workspace { --teacher-ink:#0b193b; --teacher-blue:#0052c8; grid-template-columns:240px minmax(0,1fr); background:#f5f7fd; font-size:14px; line-height:1.4; }
.teacher-workspace .portal-sidebar { width:240px; height:100vh; min-height:740px; padding:14px 14px 22px; background:linear-gradient(155deg,#142435 0%,#182c52 47%,#244993 78%,#d9e3f6 93%,#f2f5fa 100%); border-right:1px solid #d5deed; overflow:hidden; }
.teacher-workspace .portal-logo { padding:0 4px 13px; gap:10px; font-size:23px; line-height:1.1; color:#fff; letter-spacing:-.7px; border-bottom:1px solid #ffffff29; }
.teacher-workspace .portal-logo small { font-size:7px; letter-spacing:2px; margin-top:5px; color:#afc0d7; }
.teacher-brand-mark { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border-radius:50%; background:#ffdc59; color:#18325c; }
.teacher-brand-mark svg { width:24px; height:26px; }
.teacher-workspace .side-section { color:#a7b8cf; font-size:10px; font-weight:750; letter-spacing:.8px; margin:19px 9px 12px; }
.teacher-workspace .side-nav { gap:3px; }
.teacher-workspace .side-nav button { color:#eff4fc; min-height:38px; height:38px; padding:8px 14px; border-radius:11px; font-size:14px; line-height:1.3; font-weight:600; gap:12px; }
.teacher-workspace .side-nav .nav-symbol { width:19px; height:19px; flex-shrink:0; }
.teacher-workspace .nav-symbol svg { width:18px; height:18px; }
.teacher-workspace .side-nav button.active { background:linear-gradient(105deg,#fff 0%,#e0f1ff 55%,#9fd1ff 100%); color:#073f9a; box-shadow:0 3px 12px #00184020,inset 0 0 0 1px #e2f0ff; font-weight:750; }
.teacher-workspace .side-nav button.active:before { display:none; }
.teacher-workspace .nav-count { margin-left:auto; background:#ffffff38; color:#fff; padding:3px 7px; font-size:12px; line-height:1.3; }
.teacher-nav-arrow { margin-left:auto; width:15px; height:15px; }
.teacher-nav-arrow svg { width:15px; height:15px; }
.teacher-workspace .sidebar-note { position:relative; margin-top:24px; padding:16px 19px 20px; min-height:245px; border-radius:13px; background:radial-gradient(ellipse at 100% 0%,#4034e5b0,transparent 60%),linear-gradient(145deg,#07143f,#164bb8 85%); border:1px solid #ffffff25; box-shadow:0 0 0 1px #7fa5fe15,inset 0 0 24px #6780ff18; font-size:14px; line-height:1.35; z-index:1; }
.teacher-note-star { display:block; height:18px; line-height:18px; font-size:18px; color:white; }
.teacher-workspace .sidebar-note strong { color:#ffdb45; font-size:15px; line-height:1.4; margin:8px 0; }
.teacher-workspace .sidebar-note p { color:#d2dff5; line-height:1.35; margin:0; }
.teacher-workspace .sidebar-note button { width:151px; height:38px; margin-top:17px; border:0; border-radius:24px; color:#fff; background:linear-gradient(90deg,#3f91ff,#379bff); font-size:14px; font-weight:700; box-shadow:0 4px 14px #2e80ff55; }
.teacher-sidebar-books { position:absolute; bottom:57px; left:0; width:239px; height:120px; background:url('/teacher-art.jpg') 0 -587px/1600px 764px no-repeat; mask-image:linear-gradient(transparent,#000 25%); }
.teacher-workspace .sidebar-foot { position:absolute; left:23px; bottom:22px; border:0; padding:0; margin:0; color:#65758e; font-size:12px; line-height:1.3; }
.teacher-workspace .portal-main { position:relative; max-width:none; padding:0 54px 6px 36px; min-height:100vh; display:flex; flex-direction:column; isolation:isolate; }
.teacher-workspace .teacher-header-art { display:none; }
.teacher-subject-page .teacher-header-art { display:block; position:absolute; z-index:-1; right:0; top:54px; width:690px; height:153px; pointer-events:none; background:url('/teacher-art.jpg') -910px -54px/1600px 764px no-repeat; mask-image:linear-gradient(90deg,transparent,#000 12%); }
.teacher-workspace .portal-topbar { min-height:54px; height:54px; padding:0 22px 0 36px; margin:0 -54px 0 -36px; border-bottom:1px solid #dce5f1bb; background:#eaf2ffb8; gap:12px; flex-shrink:0; }
.teacher-workspace .portal-breadcrumb { font-size:12px; gap:12px; color:#71839a; }
.teacher-workspace .portal-breadcrumb b { color:#52647f; font-size:12px; }
.teacher-workspace .portal-user { gap:11px; }
.teacher-workspace .portal-avatar { width:32px; height:32px; border:2px solid #fff; background:#ffdf58; font-size:12px; color:#123268; }
.teacher-workspace .portal-user strong { font-size:13px; line-height:1.25; color:#0d1a36; }
.teacher-workspace .portal-user small { display:block; font-size:10px; color:#7c899e; line-height:1.4; }
.teacher-user-name { min-width:126px; }
.teacher-icon-button { position:relative; display:grid; place-items:center; width:39px; height:34px; border:0; border-radius:8px; background:transparent; color:#1a3355; }
.teacher-icon-button:hover { background:#dce9fc; }
.teacher-icon-button svg { width:19px; height:19px; }
.teacher-notification-dot { position:absolute; top:5px; right:10px; width:6px; height:6px; border-radius:50%; background:#fb6469; border:1px solid #fff; }
.teacher-workspace .logout-btn { min-height:32px; height:32px; padding:6px 17px; margin:0 0 0 6px; border:0; border-radius:22px; font-size:12px; font-weight:400; background:#ffffffa8; color:#78849a; }
.teacher-subject-heading { padding:16px 0 0; position:relative; background:none; box-shadow:none; }
.teacher-subject-heading h1 { margin:0 0 4px; font-size:32px; line-height:1.35; letter-spacing:-.8px; font-weight:850; color:#0a193c; }
.teacher-subject-heading h1 span { color:#0050d0; }
.teacher-subject-heading p { margin:0; font-size:15px; line-height:1.5; color:#71809c; }
.teacher-subject-filters { display:flex; align-items:center; gap:12px; margin:13px 0 16px; position:relative; max-width:616px; }
.teacher-subject-filters select { width:142px; height:40px; min-height:40px; border:1px solid #d9e1ee; border-radius:9px; padding:0 14px; font-size:12px; color:#26374e; background:#ffffffed; box-shadow:0 2px 4px #34548704; }
.teacher-subject-filters select:nth-child(2) { width:176px; }
.teacher-subject-search { display:flex; align-items:center; gap:10px; height:40px; width:276px; padding:0 13px; border:1px solid #d9e1ee; border-radius:9px; background:#ffffffed; flex-shrink:0; }
.teacher-subject-search svg { width:17px; height:17px; flex-shrink:0; color:#657892; }
.teacher-workspace .teacher-subject-search input { min-height:0; height:100%; border:0; padding:0; outline:none; background:transparent; font-size:12px; box-shadow:none; }
.teacher-subject-search input::placeholder { color:#8996a9; }
.teacher-subject-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 15px; margin-left:3px; }
.teacher-subject-card { position:relative; min-width:0; min-height:162px; padding:14px 20px 5px; border:2px solid #fff; border-radius:15px; background:linear-gradient(120deg,#fff5ed,#ffedd8); overflow:hidden; box-shadow:0 3px 16px #536c8b04; }
.teacher-subject-card:nth-child(-n+3) { min-height:170px; }
.teacher-card-top { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:5px; }
.teacher-card-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:11px; background:#ffd1c5; color:#b93d24; font-size:25px; font-weight:700; }
.teacher-card-icon svg { width:22px; height:22px; }
.teacher-card-grade { padding:4px 8px; color:#677b98; background:#f1f5fded; border-radius:5px; font-size:12px; font-weight:650; line-height:1.2; }
.teacher-subject-card h2 { position:relative; z-index:1; max-width:76%; margin:0; font-size:17px; line-height:1.25; font-weight:800; color:#071538; letter-spacing:-.4px; }
.teacher-subject-card p { position:relative; z-index:1; max-width:72%; margin:6px 0 0; font-size:13px; color:#7a889d; line-height:1.3; }
.teacher-manage { position:relative; z-index:1; padding:0; margin:8px 0 0; border:0; border-radius:2px; color:#0751b9; font-size:14px; line-height:1.3; font-weight:750; background:transparent; text-align:left; }
.teacher-manage:hover { text-decoration:underline; }
.teacher-manage:focus-visible,.teacher-icon-button:focus-visible { outline:3px solid #286cdf; outline-offset:4px; }
.teacher-subject-art { position:absolute; right:0; bottom:0; width:200px; height:125px; background-image:url('/teacher-art.jpg'); background-size:1600px 764px; background-position:-491px -251px; mask-image:linear-gradient(90deg,transparent,#000 20%); pointer-events:none; }
.tone-values { background:linear-gradient(115deg,#fffaf1,#fff0d8); }
.tone-values .teacher-card-icon { color:#c45315; background:#ffe19b; }
.tone-values .teacher-subject-art { width:169px; height:125px; background-position:-949px -251px; }
.tone-english { background:linear-gradient(120deg,#e9f9fc,#dcf3f5); }
.tone-english .teacher-card-icon { background:#b9eedc; color:#08617b; }
.tone-english .teacher-subject-art { width:195px; height:125px; background-position:-1348px -251px; }
.tone-filipino { background:linear-gradient(120deg,#fff0f5,#f8deed); }
.tone-filipino .teacher-card-icon { background:#e8cef9; color:#47216d; }
.tone-filipino .teacher-subject-art { width:197px; height:120px; background-position:-493px -432px; }
.tone-mapeh { background:linear-gradient(120deg,#fff1e9,#ffdbce); }
.tone-mapeh .teacher-card-icon { background:#ffceb0; color:#b84924; }
.tone-mapeh .teacher-subject-art { width:169px; height:117px; background-position:-949px -435px; }
.tone-math { background:linear-gradient(120deg,#edf8f3,#e0efe9); }
.tone-math .teacher-card-icon { background:#c1e9dd; color:#12576a; }
.tone-math .teacher-subject-art { width:200px; height:119px; background-position:-1343px -433px; }
.tone-science { background:linear-gradient(120deg,#f2efff,#e4e4ff); }
.tone-science .teacher-card-icon { background:#d6d1ff; color:#233997; }
.tone-science .teacher-subject-art { width:193px; height:112px; background-position:-498px -612px; }
.tone-tle { background:linear-gradient(120deg,#e4f6fc,#cde9f1); }
.tone-tle .teacher-card-icon { background:#99dce9; color:#064967; }
.tone-tle .teacher-subject-art { width:169px; height:112px; background-position:-949px -612px; }
.teacher-subject-empty { text-align:center; font-size:16px; color:#6b7c98; padding:30px; }
.teacher-workspace .portal-footer { display:flex; align-items:center; gap:10px; min-height:26px; margin-top:auto; padding:9px 0 0; border-top:0; color:#8391a7; font-size:10px; }
.teacher-workspace .portal-topbar { box-shadow:none; }
.teacher-footer-brand { display:flex; align-items:center; gap:6px; font-weight:800; color:#617693; font-size:12px; }
.teacher-footer-brand svg { width:19px; height:19px; }
.teacher-footer-caption { border-left:1px solid #d7e0ee; padding-left:10px; }
.teacher-footer-motto { margin-left:auto; }
.teacher-workspace:not(.teacher-subject-page) .portal-topbar { margin-bottom:22px; }
.teacher-large-text .teacher-subject-card { min-height:200px; }
.teacher-large-text .teacher-subject-card h2 { font-size:21px; }
.teacher-large-text .teacher-subject-card p,.teacher-large-text .teacher-manage,.teacher-large-text .side-nav button { font-size:17px; }
.teacher-large-text .teacher-subject-filters select,.teacher-large-text .teacher-subject-search input { font-size:16px; }
@media(min-width:1400px) { .teacher-subject-card:nth-child(n+7) { min-height:160px; } }
@media(max-width:1270px) {
  .teacher-workspace { grid-template-columns:220px minmax(0,1fr); }
  .teacher-workspace .portal-sidebar { width:220px; }
  .teacher-workspace .portal-main { padding-left:25px; padding-right:25px; }
  .teacher-workspace .portal-topbar { margin-left:-25px; margin-right:-25px; padding-left:25px; padding-right:20px; }
  .teacher-workspace .teacher-header-art { opacity:.6; }
  .teacher-subject-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .teacher-subject-card,.teacher-subject-card:nth-child(-n+3) { min-height:170px; }
  .teacher-workspace .sidebar-note { padding:15px; }
  .teacher-workspace .portal-user { gap:5px; }
  .teacher-footer-motto { display:none; }
}
@media(max-width:800px) {
  .teacher-workspace { grid-template-columns:minmax(0,1fr); }
  .teacher-workspace .portal-sidebar { position:relative; width:100%; min-height:0; height:auto; padding:14px 16px 10px; background:linear-gradient(110deg,#15243b,#203b70); }
  .teacher-workspace .portal-logo { border:0; padding:0; font-size:23px; }
  .teacher-workspace .side-section,.teacher-workspace .sidebar-note,.teacher-workspace .sidebar-foot,.teacher-sidebar-books { display:none; }
  .teacher-workspace .side-nav { margin-top:14px; display:flex; flex-direction:row; overflow-x:auto; gap:7px; padding-bottom:5px; }
  .teacher-workspace .side-nav button { flex-shrink:0; font-size:14px; }
  .teacher-workspace .portal-topbar { min-height:66px; height:auto; padding-top:9px; padding-bottom:9px; flex-wrap:wrap; }
  .teacher-workspace .portal-main { min-height:calc(100vh - 120px); }
  .teacher-workspace .teacher-header-art { top:65px; opacity:.35; }
  .teacher-subject-heading h1 { font-size:29px; }
  .teacher-subject-filters { flex-wrap:wrap; max-width:none; }
  .teacher-subject-search { width:100%; }
  .teacher-subject-filters select,.teacher-subject-filters select:nth-child(2) { flex:1; width:auto; min-width:0; }
  .teacher-workspace .portal-breadcrumb { width:100%; }
}
@media(max-width:540px) {
  .teacher-workspace .portal-main { padding-left:16px; padding-right:16px; }
  .teacher-workspace .portal-topbar { margin-left:-16px; margin-right:-16px; padding-left:16px; padding-right:16px; }
  .teacher-subject-grid { grid-template-columns:minmax(0,1fr); }
  .teacher-subject-card { padding-left:20px; }
  .teacher-workspace .portal-user { width:100%; gap:7px; }
  .teacher-workspace .teacher-user-name { min-width:0; margin-right:auto; }
  .teacher-workspace .portal-user strong { font-size:12px; }
  .teacher-icon-button { width:28px; }
  .teacher-workspace .logout-btn { padding:6px 12px; margin:0; }
  .teacher-subject-heading h1 { font-size:27px; }
  .teacher-subject-heading p { font-size:14px; }
  .teacher-footer-caption { font-size:9px; }
}
/* Catalogue controls share the teacher cards' warm paper palette. */
.subject-catalogue-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;flex-wrap:wrap}
.subject-catalogue-toolbar .inline-actions{flex-wrap:wrap}
.subject-catalogue-actions{position:relative;z-index:1;display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid #18355b15;margin-top:13px;padding:11px 0 8px}
.subject-catalogue-actions .portal-btn{min-height:34px;padding:7px 11px;font-size:12px}
.subject-archived-label{position:relative;z-index:1;display:block;color:#657084;font-size:12px;margin-top:7px}
@media(max-width:600px){.subject-catalogue-toolbar{align-items:stretch}.subject-catalogue-toolbar>.portal-btn{width:100%}}
