.design-saas{
  --saas-bg:#f7fbfb;
  --saas-surface:#ffffff;
  --saas-surface-2:#f2faf9;
  --saas-purple:#7b5df1;
  --saas-purple-2:#8b72ff;
  --saas-purple-lt:#f1edff;
  --saas-cyan:#0f9f96;
  --saas-cyan-2:#22c7bd;
  --saas-cyan-lt:#e5f8f6;
  --saas-teal:#0f9f96;
  --saas-teal-lt:#e5f8f6;
  --saas-orange:#f29a2e;
  --saas-orange-lt:#fff5e8;
  --saas-rose:#ff5e7d;
  --saas-rose-lt:#ffe8ed;
  --saas-ink:#17251f;
  --saas-ink-2:#5d6f67;
  --saas-ink-3:#87958f;
  --saas-line:#e4efef;
  --saas-shadow-sm:0 8px 20px rgba(31,75,58,.06);
  --saas-shadow:0 16px 36px rgba(31,75,58,.08);
  --saas-shadow-lg:0 22px 48px rgba(31,75,58,.10);
}

/* 069A / v1.4.5 design shell bridge for SaaS-style legacy pages. */
.design-saas{
  --paper-warm:#faf7f0;
  --paper-mid:#f2ede3;
  --paper-dark:#e8e0d0;
  --paper-soft:#fffdf8;
  --ink-deep:#2c2416;
  --ink-mid:#5c5040;
  --ink-light:#8a7d6a;
  --ochre:#b87333;
  --ochre-light:#f5e6d0;
  --moss:#5a7055;
  --moss-light:#e8f0e5;
  --moss-dim:#7a9a75;
  --charcoal:#3d3830;
  --divider:rgba(44,36,22,.10);
  --saas-bg:var(--paper-warm);
  --saas-surface:#fffdf8;
  --saas-surface-2:var(--paper-mid);
  --saas-purple:var(--ochre);
  --saas-purple-2:var(--ochre);
  --saas-purple-lt:var(--ochre-light);
  --saas-cyan:var(--moss);
  --saas-cyan-2:var(--moss-dim);
  --saas-cyan-lt:var(--moss-light);
  --saas-teal:var(--moss);
  --saas-teal-lt:var(--moss-light);
  --saas-orange:var(--ochre);
  --saas-orange-lt:var(--ochre-light);
  --saas-ink:var(--ink-deep);
  --saas-ink-2:var(--ink-mid);
  --saas-ink-3:var(--ink-light);
  --saas-line:var(--divider);
  --saas-shadow-sm:0 2px 12px rgba(44,36,22,.07);
  --saas-shadow:0 8px 32px rgba(44,36,22,.10);
  --saas-shadow-lg:0 16px 48px rgba(44,36,22,.14);
}

.design-saas .page-head{
  margin-bottom:26px;
  width:100%;
  max-width:1292px;
  margin-left:auto;
  margin-right:auto;
}
.design-saas .saas-title-line{
  display:flex;
  align-items:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.design-saas .saas-title-line h1{
  margin:0;
  color:var(--forest);
}
.design-saas .saas-title-meta{
  font-size:13px;
  color:var(--saas-ink-3);
  line-height:1.4;
  padding-bottom:4px;
}
.design-saas .saas-panel-title-row{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.design-saas .saas-grade-filter{
  min-width:104px;
  height:34px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid #d7e8e4;
  background:#ffffff;
  color:var(--forest);
  font-size:13px;
  font-weight:700;
  box-shadow:0 4px 14px rgba(15,108,107,.08);
}
.design-saas .saas-grade-filter:focus{
  outline:none;
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}
.design-saas .page-head p{
  margin:4px 0 0;
  color:var(--saas-ink-3);
  font-size:13px;
}
.design-saas .hero,
.design-saas .actions-grid,
.design-saas .grid-2,
.design-saas .grid-3,
.design-saas .split,
.design-saas .saas-stat-row,
.design-saas .saas-content-row,
.design-saas .saas-recent-panel{
  width:100%;
  max-width:1292px;
  margin-left:auto;
  margin-right:auto;
}
.design-saas .head-actions{
  gap:10px;
}
.design-saas .btn{
  border-color:var(--saas-line);
  color:var(--saas-ink-2);
  box-shadow:var(--saas-shadow-sm);
}
.design-saas .btn:hover{
  border-color:#cfe9db;
  color:var(--saas-teal);
  background:var(--saas-cyan-lt);
  box-shadow:var(--saas-shadow-sm);
}
.design-saas .btn.primary{
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  color:#fff;
  border-color:transparent;
  box-shadow:0 10px 22px rgba(15,159,150,.24);
}
.design-saas .btn.primary:hover{
  box-shadow:0 14px 28px rgba(15,159,150,.28);
}

.design-saas .card h2,
.design-saas .card h3{
  color:var(--forest);
}
.design-saas .card{
  box-shadow:var(--saas-shadow);
  border:1px solid var(--saas-line);
}
.design-saas .panel-card{
  background:#ffffff;
  border-color:var(--saas-line);
}
.design-saas .status-card{
  background:#ffffff;
  border-color:var(--saas-line);
}
.design-saas .editor-card{
  background:#ffffff;
  border-color:var(--saas-line);
  box-shadow:var(--saas-shadow);
}
.design-saas .identity-strip{
  width:100%;
  max-width:1292px;
  margin-left:auto;
  margin-right:auto;
}
.design-saas .identity-item{
  background:#ffffff;
  border:1px solid var(--saas-line);
  box-shadow:none;
}
.design-saas .field input,
.design-saas .field select,
.design-saas .field textarea{
  background:#ffffff;
  border:1px solid #d6e1ee;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 2px 8px rgba(144,163,196,.06);
}
.design-saas .field input:focus,
.design-saas .field select:focus,
.design-saas .field textarea:focus{
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}
.design-saas .list-item{
  border-color:#dcece6;
  box-shadow:none;
}
.design-saas .guide-text,
.design-saas .muted.tiny{
  color:#92a29d;
}

.design-saas .execution-flow{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.design-saas .execution-step-card{
  min-height:112px;
  display:grid;
  align-content:start;
  gap:8px;
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.88);
  border:1px solid #dcece6;
  box-shadow:0 10px 22px rgba(15,108,107,.08);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.design-saas .execution-step-card:hover{
  transform:translateY(-2px);
  border-color:var(--saas-cyan-2);
  box-shadow:0 16px 30px rgba(35,198,197,.14);
}

.design-saas .execution-step-card span{
  width:34px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--saas-cyan-lt);
  color:var(--forest);
  font-size:12px;
  font-weight:900;
}

.design-saas .execution-step-card strong{
  color:var(--forest);
  font-size:17px;
}

.design-saas .execution-step-card em{
  color:#7f918b;
  font-style:normal;
  font-size:12px;
  line-height:1.6;
}

.design-saas .execution-step-card.is-current{
  background:linear-gradient(180deg,#e7fbf8,#ffffff);
  border-color:#9ee5da;
}

.design-saas .execution-step-card.is-done span{
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  color:#fff;
}

.profile-page .profile-workbench{
  max-width:1292px;
  margin:0 auto;
  padding:0;
  display:grid;
  grid-template-columns:216px minmax(0,1fr);
  overflow:hidden;
  background:rgba(255,255,255,.94);
}

.profile-page .profile-bookmarks{
  display:grid;
  align-content:start;
  gap:9px;
  min-height:620px;
  padding:20px;
  border-right:1px solid #dcece6;
  background:
    radial-gradient(circle at 18% 8%, rgba(35,198,197,.18), transparent 28%),
    linear-gradient(180deg,#f0fbf8,#e8f5ef);
}

.profile-page .profile-bookmark{
  width:100%;
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  grid-template-areas:
    "num title"
    "num desc";
  gap:2px 10px;
  align-items:center;
  padding:12px;
  border:1px solid transparent;
  border-radius:16px;
  background:rgba(255,255,255,.68);
  color:#60756f;
  text-align:left;
  cursor:pointer;
  transition:all .18s ease;
}

.profile-page .profile-bookmark span{
  grid-area:num;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#e4fbf8;
  color:var(--forest);
  font-size:11px;
  font-weight:900;
}

.profile-page .profile-bookmark strong{
  grid-area:title;
  color:var(--forest);
  font-size:14px;
}

.profile-page .profile-bookmark small{
  grid-area:desc;
  color:#8a9a94;
  font-size:11px;
  font-weight:800;
}

.profile-page .profile-bookmark:hover{
  transform:translateX(2px);
  border-color:#bfebe5;
  box-shadow:0 12px 22px rgba(15,108,107,.08);
}

.profile-page .profile-bookmark.active{
  background:linear-gradient(135deg,#ffffff,#e7fbf8);
  border-color:#9ee5da;
  box-shadow:0 16px 30px rgba(35,198,197,.16);
}

.profile-page .profile-bookmark.active span{
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  color:#fff;
}

.profile-page .profile-pages{
  min-height:620px;
  padding:28px 30px;
}

.profile-page .profile-page-panel{
  display:none;
  animation:profilePageIn .2s ease both;
}

.profile-page .profile-page-panel.active{
  display:block;
}

@keyframes profilePageIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}

.profile-page .profile-panel-head{
  display:grid;
  gap:3px;
  margin-bottom:16px;
}

.profile-page .profile-panel-head.split-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.profile-page .profile-panel-head small{
  color:#0f8f86;
  font-weight:900;
  letter-spacing:.08em;
}

.profile-page .profile-panel-head h2{
  margin:0;
  color:var(--forest);
  font-size:24px;
  line-height:1.18;
}

.profile-page .profile-panel-head p{
  margin:0;
  color:#81908a;
  font-size:14px;
  line-height:1.55;
}

.profile-page .profile-panel-grid{
  display:grid;
  grid-template-columns:minmax(260px,.82fr) minmax(360px,1.18fr);
  gap:20px;
  align-items:start;
}

.profile-page .profile-form-card,
.profile-page .account-status-card{
  display:grid;
  gap:14px;
  align-content:start;
  padding:18px;
  border-radius:20px;
  border:1px solid #d8eae5;
  background:rgba(255,255,255,.82);
}

.profile-page .profile-form-card.narrow{
  max-width:720px;
}

.profile-page .profile-form-card h3{
  margin:0;
  color:var(--forest);
  font-size:16px;
  line-height:1.25;
}

.profile-page .account-status-card{
  background:linear-gradient(135deg,#e7fbf8,#ffffff);
}

.profile-page .account-status-head{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.profile-page .account-avatar{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:var(--avatar-bg,linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2)));
  color:var(--avatar-accent,#fff);
  font-size:20px;
  font-weight:900;
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 12px 24px var(--avatar-soft,rgba(35,198,197,.24));
  background-size:cover;
  background-position:center;
  overflow:hidden;
}

.profile-page .account-avatar[hidden],
.profile-page .avatar-preview-avatar[hidden]{
  display:none !important;
}

.profile-page .account-avatar.avatar-has-image{
  background-color:#fff;
  color:transparent;
}

.profile-page .account-avatar.avatar-frame-stamp{
  border-radius:50%;
  outline:2px dashed var(--avatar-accent,#0f8f86);
  outline-offset:4px;
}

.profile-page .account-avatar.avatar-frame-gallery{
  border-radius:16px;
  border:4px solid #fff;
  box-shadow:0 0 0 1px rgba(15,108,107,.16), 0 16px 28px var(--avatar-soft,rgba(35,198,197,.2));
}

.profile-page .account-status-head small{
  display:block;
  color:#69928a;
  font-weight:900;
  letter-spacing:.04em;
}

.profile-page .account-status-head h2{
  margin:2px 0;
  color:var(--forest);
  font-size:16px;
  line-height:1.2;
}

.profile-page .account-status-head p{
  margin:0;
  color:#81908a;
  font-size:13px;
  line-height:1.5;
}

.profile-page .account-meta-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.profile-page .account-meta-list div{
  display:grid;
  gap:4px;
  min-height:56px;
  padding:10px 11px;
  border-radius:14px;
  border:1px solid #d8eae5;
  background:rgba(255,255,255,.82);
}

.profile-page .account-meta-list strong{
  color:#6f817c;
  font-size:12px;
}

.profile-page .account-meta-list span{
  color:var(--forest);
  font-size:14px;
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.profile-page .account-actions{
  justify-content:flex-start;
}

.profile-page .avatar-studio{
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);
  gap:18px;
}

.profile-page .avatar-preview-card{
  min-height:420px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:18px;
  padding:28px 22px;
  border:1px solid #d8eae5;
  border-radius:26px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.42) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.42) 1px,transparent 1px),
    radial-gradient(circle at 18% 14%, var(--avatar-soft,rgba(35,198,197,.18)), transparent 36%),
    linear-gradient(135deg,#fffaf2,#f4fbf8 52%,#ffffff);
  background-size:24px 24px,24px 24px,auto,auto;
  box-shadow:0 18px 38px rgba(14,58,54,.07);
}

.profile-page .avatar-preview-frame{
  position:relative;
  width:172px;
  height:172px;
  display:grid;
  place-items:center;
  border-radius:42px;
  background:
    radial-gradient(circle at 28% 22%, var(--avatar-soft,rgba(35,198,197,.2)), transparent 48%),
    rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.8);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72), 0 18px 42px rgba(31,75,58,.12);
  overflow:visible;
}

.profile-page .avatar-preview-avatar{
  width:118px;
  height:118px;
  font-size:42px;
}

.profile-page .avatar-preview-image{
  width:132px;
  height:132px;
  object-fit:cover;
  border-radius:34px;
  border:4px solid #fff;
  box-shadow:0 18px 34px var(--avatar-soft,rgba(35,198,197,.2));
}

.profile-page .avatar-preview-image[hidden]{
  display:none;
}

.profile-page .avatar-preview-badge{
  position:absolute;
  right:24px;
  bottom:22px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:14px;
  border:2px solid #fff;
  background:var(--avatar-accent,#0f8f86);
  color:#fff;
  font-size:15px;
  font-weight:950;
  box-shadow:0 10px 22px rgba(14,58,54,.16);
}

.profile-page .avatar-preview-badge[hidden]{
  display:none;
}

.profile-page .avatar-preview-copy{
  display:grid;
  gap:6px;
  justify-items:center;
  text-align:center;
}

.profile-page .avatar-preview-copy small{
  color:#79938d;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.profile-page .avatar-preview-copy strong{
  color:var(--forest);
  font-size:24px;
}

.profile-page .avatar-preview-copy p{
  max-width:280px;
  margin:0;
  color:#6f817c;
  line-height:1.7;
}

.profile-page .avatar-control-card{
  gap:18px;
}

.profile-page .avatar-option-group{
  display:grid;
  gap:10px;
}

.profile-page .avatar-option-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
}

.profile-page .avatar-option-head strong{
  color:var(--forest);
  font-size:15px;
}

.profile-page .avatar-option-head small{
  color:#829590;
  font-size:12px;
  font-weight:800;
}

.profile-page .avatar-filter-panel{
  display:grid;
  gap:9px;
}

.profile-page .avatar-filter-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.profile-page .avatar-filter{
  min-height:32px;
  padding:0 11px;
  border-radius:999px;
  border:1px solid #d8eae5;
  background:#fff;
  color:#647a73;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}

.profile-page .avatar-filter:hover{
  border-color:#bfe8e0;
  background:#f6fffc;
}

.profile-page .avatar-filter.active{
  border-color:var(--saas-cyan);
  background:#effdfa;
  color:var(--forest);
  box-shadow:0 8px 18px rgba(35,198,197,.12);
}

.profile-page .avatar-swatch-row,
.profile-page .avatar-image-grid,
.profile-page .avatar-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.profile-page .avatar-image-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.profile-page .avatar-image-option{
  min-width:0;
  display:grid;
  justify-items:center;
  gap:7px;
  padding:12px 10px;
  border-radius:18px;
  border:1px solid #d8eae5;
  background:#fff;
  color:#526b64;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.profile-page .avatar-image-option img{
  width:70px;
  height:70px;
  object-fit:cover;
  border-radius:20px;
  box-shadow:0 10px 20px rgba(14,58,54,.08);
}

.profile-page .avatar-image-option strong{
  color:var(--forest);
  font-size:13px;
}

.profile-page .avatar-image-option small{
  color:#7e918c;
  font-size:11px;
  font-weight:800;
}

.profile-page .avatar-image-option:hover{
  transform:translateY(-1px);
  border-color:#bfe8e0;
  box-shadow:0 12px 24px rgba(15,108,107,.09);
}

.profile-page .avatar-image-option.active{
  border-color:var(--saas-cyan);
  background:#f3fffc;
  box-shadow:0 14px 28px rgba(35,198,197,.15);
}

.profile-page .avatar-swatch,
.profile-page .avatar-pill{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  border-radius:14px;
  border:1px solid #d8eae5;
  background:#fff;
  color:#526b64;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.profile-page .avatar-swatch:hover,
.profile-page .avatar-pill:hover{
  transform:translateY(-1px);
  border-color:#bfe8e0;
  box-shadow:0 10px 22px rgba(15,108,107,.08);
}

.profile-page .avatar-swatch.active,
.profile-page .avatar-pill.active{
  border-color:var(--saas-cyan);
  background:#f3fffc;
  color:var(--forest);
  box-shadow:0 10px 22px rgba(35,198,197,.14);
}

.profile-page .avatar-swatch span{
  width:22px;
  height:22px;
  border-radius:8px;
  border:2px solid #fff;
  box-shadow:0 0 0 1px rgba(15,108,107,.14);
}

.profile-page .avatar-swatch[data-avatar-palette="lotus"] span{
  background:linear-gradient(135deg,#b7f1e8,#f8fbff);
}

.profile-page .avatar-swatch[data-avatar-palette="coral"] span{
  background:linear-gradient(135deg,#ffc9aa,#fffaf4);
}

.profile-page .avatar-swatch[data-avatar-palette="violet"] span{
  background:linear-gradient(135deg,#d8c8ff,#fff8fb);
}

.profile-page .avatar-swatch[data-avatar-palette="ink"] span{
  background:linear-gradient(135deg,#97b8a4,#ffffff);
}

.profile-page .avatar-upload-card{
  min-height:74px;
  display:grid;
  place-items:center;
  gap:4px;
  padding:14px;
  border:1px dashed #a9dcd4;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(243,255,252,.9),rgba(255,255,255,.82));
  color:var(--forest);
  text-align:center;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.profile-page .avatar-upload-card:hover{
  transform:translateY(-1px);
  border-color:var(--saas-cyan);
  box-shadow:0 12px 24px rgba(35,198,197,.12);
}

.profile-page .avatar-upload-card span{
  font-weight:950;
}

.profile-page .avatar-upload-card small{
  color:#7e918c;
  font-size:12px;
  font-weight:800;
}

.profile-page .avatar-upload-input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.profile-page .avatar-upload-message{
  min-height:18px;
  margin:0;
  color:#6f817c;
  font-size:12px;
  font-weight:800;
}

.profile-page .password-security-box{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:12px 14px;
  border:1px solid #d8eae5;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(235,255,251,.92),rgba(255,255,255,.86));
}

.profile-page .password-security-box small{
  display:block;
  color:#6f817c;
  font-weight:900;
}

.profile-page .password-security-box strong{
  display:block;
  margin:2px 0 4px;
  color:var(--forest);
  font-size:14px;
  line-height:1.25;
}

.profile-page .password-security-box p,
.profile-page .password-policy-note,
.profile-page .password-change-message{
  margin:0;
  color:#6f817c;
  line-height:1.55;
  font-size:12px;
}

.profile-page .password-security-box .btn{
  flex:0 0 auto;
  min-height:36px;
  min-width:76px;
  padding:0 12px;
  border-radius:12px;
  font-size:12px;
  white-space:nowrap;
}

body[data-clean-proto-page="profile"] .assistant-side-peek,
body[data-clean-proto-page="profile"] .assistant-side-panel{
  display:none !important;
}

.profile-page .password-change-panel{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px dashed #b7ded5;
  border-radius:18px;
  background:rgba(255,255,255,.76);
}

.profile-page .password-change-panel[hidden]{
  display:none;
}

.profile-page .password-change-message.success{
  color:#087b72;
  font-weight:800;
}

.profile-page .password-change-message.error{
  color:#a04418;
  font-weight:800;
}

.profile-page .profile-table-wrap{
  overflow:auto;
  border:1px solid #d8eae5;
  border-radius:20px;
  background:#fff;
}

.profile-page .profile-table-wrap table{
  margin:0;
}

.profile-page .schedule-dashboard{
  display:grid;
  gap:18px;
}

.profile-page .schedule-section-card{
  display:grid;
  gap:14px;
  padding:18px;
  border:1px solid #d8eae5;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  box-shadow:0 16px 32px rgba(14,58,54,.05);
}

.profile-page .schedule-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.profile-page .schedule-section-head small{
  display:block;
  color:#0f8f86;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.profile-page .schedule-section-head h3{
  margin:3px 0 0;
  color:var(--forest);
  font-size:20px;
  letter-spacing:0;
}

.profile-page .schedule-section-head span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:#e9f8f5;
  color:#08746f;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.profile-page .teacher-week-grid{
  display:grid;
  grid-template-columns:132px repeat(5,minmax(118px,1fr));
  border:1px solid #d8eae5;
  border-radius:20px;
  overflow:auto;
  background:#fff;
}

.profile-page .teacher-week-head,
.profile-page .teacher-week-period,
.profile-page .teacher-week-cell{
  min-height:64px;
  padding:11px;
  border-right:1px solid #edf4f2;
  border-bottom:1px solid #edf4f2;
}

.profile-page .teacher-week-head{
  min-height:42px;
  display:grid;
  place-items:center;
  background:#f1faf8;
  color:#08746f;
  font-weight:950;
}

.profile-page .teacher-week-period{
  display:grid;
  gap:3px;
  background:#fbfefe;
}

.profile-page .teacher-week-period strong{
  color:#1e3c38;
  font-size:14px;
}

.profile-page .teacher-week-period span,
.profile-page .teacher-week-period small{
  color:#738985;
  font-size:12px;
  font-weight:800;
}

.profile-page .teacher-week-cell{
  display:grid;
  gap:6px;
  align-content:start;
  background:#fff;
}

.profile-page .schedule-slot-chip{
  display:grid;
  gap:3px;
  padding:8px 9px;
  border-radius:14px;
  border:1px solid #bfe8e0;
  background:linear-gradient(135deg,#e7fbf8,#ffffff);
}

.profile-page .schedule-slot-chip strong{
  color:#08746f;
  font-size:13px;
  line-height:1.35;
}

.profile-page .schedule-slot-chip small{
  color:#7a8e89;
  font-size:12px;
}

.profile-page .empty-slot{
  color:#bcc9c5;
  font-weight:900;
}

.profile-page .schedule-detail-card summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  color:var(--forest);
  font-weight:950;
  list-style:none;
}

.profile-page .schedule-detail-card summary::-webkit-details-marker{
  display:none;
}

.profile-page .schedule-detail-card summary small{
  color:#7c908b;
  font-size:12px;
  font-weight:800;
}

.entry-page .entry-brand-hero,
.design-center-page .entry-brand-hero{
  max-width:1292px;
  margin:0 auto 24px;
  padding:20px 24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  border:1px solid #d8eee8;
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 12%, rgba(35,198,197,.18), transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,250,246,.9));
  box-shadow:0 22px 48px rgba(15,108,107,.11);
  overflow:hidden;
}

.entry-page .entry-brand-copy,
.design-center-page .entry-brand-copy{
  min-width:0;
}

.entry-page .entry-brand-copy small,
.design-center-page .entry-brand-copy small{
  display:block;
  margin-bottom:4px;
  color:#0f8f86;
  font-size:13px;
  font-weight:900;
  letter-spacing:.08em;
}

.entry-page .entry-brand-copy h1,
.design-center-page .entry-brand-copy h1{
  margin:0;
  color:var(--forest);
  font-size:34px;
  line-height:1.08;
  letter-spacing:-.04em;
}

.entry-page .entry-brand-copy p,
.design-center-page .entry-brand-copy p{
  margin:8px 0 0;
  max-width:620px;
  color:#738783;
  font-size:13px;
  line-height:1.6;
}

.entry-page .entry-brand-tags,
.design-center-page .entry-brand-tags{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.entry-page .entry-brand-tags span,
.design-center-page .entry-brand-tags span{
  padding:8px 12px;
  border-radius:999px;
  color:#0f7c75;
  background:#e8faf6;
  border:1px solid #c4ece4;
  font-size:12px;
  font-weight:900;
}

.entry-page .execution-command-card{
  padding:0;
  overflow:hidden;
}

.entry-page .command-board{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);
  gap:0;
  min-height:230px;
}

.entry-page .command-board-main{
  padding:30px;
  background:
    radial-gradient(circle at 12% 14%,rgba(45,200,195,.18),transparent 34%),
    linear-gradient(135deg,#f7fffb,#eefbf6);
}

.entry-page .command-board-main small{
  color:#2a918a;
  font-weight:800;
}

.entry-page .command-board-main h2{
  margin:8px 0 8px;
  color:#0f6c6b;
  font-size:30px;
  letter-spacing:-.04em;
}

.entry-page .command-board-main p{
  margin:0;
  color:#8a94ba;
}

.entry-page .command-stat-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  padding:24px;
  background:rgba(255,255,255,.74);
  border-left:1px solid #dcece6;
}

.entry-page .command-stat{
  border:1px solid #dcece6;
  border-radius:20px;
  padding:16px;
  background:#fff;
  box-shadow:0 14px 28px rgba(15,108,107,.08);
}

.entry-page .command-stat small{
  color:#0f8f86;
  font-weight:800;
}

.entry-page .command-stat strong{
  display:block;
  margin:8px 0 4px;
  color:#18203f;
  font-size:34px;
  line-height:1;
}

.entry-page .command-stat span{
  color:#8a94ba;
  font-size:12px;
}

.entry-page .supporting-tools summary{
  cursor:pointer;
  list-style:none;
}

.entry-page .supporting-tools summary::-webkit-details-marker{
  display:none;
}

.entry-page .supporting-tools summary span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.entry-page .supporting-tools summary strong{
  color:#0f6c6b;
  font-size:18px;
}

.entry-page .supporting-tools summary em{
  color:#8a94ba;
  font-size:13px;
  font-style:normal;
}

/* Teaching center calendar home, inspired by a light agenda dashboard. */
.teaching-home-page{
  --home-green:#0f9f96;
  --home-green-dark:#08746f;
  --home-mint:#e4f8f6;
  --home-blue:#357ff6;
  --home-blue-soft:#edf4ff;
  --home-purple:#7b5df1;
  --home-purple-soft:#f1edff;
  --home-orange:#f29a2e;
  --home-orange-soft:#fff5e8;
  --home-red:#ef5b5b;
  --home-card:#ffffff;
  --home-line:#e5eeee;
  --home-text:#182b27;
  --home-muted:#81918b;
  max-width:1292px;
  margin-left:auto;
  margin-right:auto;
}

.teaching-home-page .home-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin:0 auto 18px;
  padding:4px 0 6px;
}

.teaching-home-page .home-topbar small,
.teaching-home-page .home-card-head small{
  display:block;
  margin-bottom:5px;
  color:#087c76;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
}

.teaching-home-page .home-topbar h1{
  margin:0;
  color:#10251f;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.03em;
}

.teaching-home-page .home-topbar p{
  margin:6px 0 0;
  color:var(--home-muted);
  font-size:13px;
}

.teaching-home-page .home-top-actions{
  display:flex;
  align-items:center;
  gap:12px;
}

.teaching-home-page .home-search{
  width:260px;
  min-height:42px;
  display:flex;
  align-items:center;
  padding:0 16px;
  border:1px solid var(--home-line);
  border-radius:14px;
  color:#a2ada8;
  background:#fff;
  box-shadow:0 10px 24px rgba(22,77,66,.06);
  font-size:13px;
}

.teaching-home-page #semesterSelect{
  height:42px;
  min-width:160px;
  border:1px solid var(--home-line);
  border-radius:14px;
  background:#fff;
  color:#263d37;
  font-weight:800;
  box-shadow:0 10px 24px rgba(22,77,66,.06);
}

.teaching-home-page .home-metric-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:18px;
}

.teaching-home-page .home-metric-card,
.teaching-home-page .home-card,
.teaching-home-page .home-task-board{
  border:1px solid var(--home-line);
  border-radius:24px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 42px rgba(24,79,68,.09);
}

.teaching-home-page .home-metric-card{
  min-height:112px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 58px;
  gap:12px;
  align-items:center;
  padding:18px;
}

.teaching-home-page .metric-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:15px;
  font-size:21px;
  background:var(--home-mint);
}

.teaching-home-page .home-metric-card.blue .metric-icon{ background:var(--home-blue-soft); }
.teaching-home-page .home-metric-card.purple .metric-icon{ background:var(--home-purple-soft); }
.teaching-home-page .home-metric-card.orange .metric-icon{ background:var(--home-orange-soft); }

.teaching-home-page .metric-main strong{
  display:block;
  color:var(--home-text);
  font-size:14px;
  margin-bottom:7px;
}

.teaching-home-page .metric-main b{
  color:#111d1a;
  font-size:29px;
  line-height:1;
}

.teaching-home-page .metric-main span{
  margin-left:5px;
  color:#63746e;
  font-size:13px;
  font-weight:700;
}

.teaching-home-page .metric-main p{
  margin:8px 0 0;
  color:var(--home-muted);
  font-size:12px;
  line-height:1.45;
}

.teaching-home-page .metric-ring{
  --p:calc(var(--progress) * 1%);
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:conic-gradient(var(--home-green) var(--p), #edf2ef 0);
}

.teaching-home-page .home-metric-card.blue .metric-ring{ background:conic-gradient(var(--home-blue) var(--p), #edf2ef 0); }
.teaching-home-page .home-metric-card.purple .metric-ring{ background:conic-gradient(var(--home-purple) var(--p), #edf2ef 0); }
.teaching-home-page .home-metric-card.orange .metric-ring{ background:conic-gradient(var(--home-orange) var(--p), #edf2ef 0); }

.teaching-home-page .metric-ring span{
  width:41px;
  height:41px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#43544e;
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .home-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:18px;
  align-items:start;
}

.teaching-home-page .home-card,
.teaching-home-page .home-task-board{
  padding:18px;
}

.teaching-home-page .home-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:13px;
}

.teaching-home-page .home-card-head.compact{
  align-items:center;
}

.teaching-home-page .home-card-head h2{
  margin:0;
  color:var(--home-text);
  font-size:18px;
  letter-spacing:-.02em;
}

.teaching-home-page .home-card-head a,
.teaching-home-page .ghost-link{
  border:none;
  background:transparent;
  color:#6f7f79;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
}

.teaching-home-page .home-view-switch{
  display:grid;
  grid-template-columns:repeat(4,54px);
  padding:4px;
  border:1px solid var(--home-line);
  border-radius:16px;
  background:#fbfdfb;
}

.teaching-home-page .home-view-switch button{
  border:none;
  border-radius:12px;
  background:transparent;
  color:#445850;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}

.teaching-home-page .home-view-switch .is-active{
  color:#fff;
  background:linear-gradient(135deg,#0f9f96,#22c7bd);
  box-shadow:0 8px 18px rgba(15,159,150,.2);
}

.teaching-home-page .semester-overview-panel{
  display:grid;
  gap:12px;
}

.teaching-home-page .semester-strip{
  display:grid;
  grid-template-columns:repeat(9,minmax(0,1fr));
  border:1px solid var(--home-line);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}

.teaching-home-page .semester-cell{
  min-height:80px;
  display:grid;
  gap:4px;
  place-items:center;
  padding:8px 5px;
  border:none;
  border-right:1px solid var(--home-line);
  border-bottom:1px solid var(--home-line);
  background:#fff;
  color:#3f504a;
  cursor:pointer;
}

.teaching-home-page .semester-cell:nth-child(9n){
  border-right:none;
}

.teaching-home-page .semester-cell span{
  color:#263b35;
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .semester-cell strong{
  color:#88958f;
  font-size:11px;
  font-weight:700;
}

.teaching-home-page .semester-cell em{
  color:#51635d;
  font-size:12px;
  font-style:normal;
}

.teaching-home-page .semester-cell i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d4ded9;
}

.teaching-home-page .semester-cell i.green{ background:var(--home-green); }
.teaching-home-page .semester-cell i.red{ background:var(--home-red); }

.teaching-home-page .semester-cell.is-active{
  position:relative;
  background:linear-gradient(180deg,#e8fbf8,#fff);
  box-shadow:inset 0 0 0 2px #22c7bd;
}

.teaching-home-page .semester-cell.is-active span{
  color:#08746f;
}

.teaching-home-page .semester-cell.is-holiday{
  background:#fffaf0;
}

.teaching-home-page .month-overview-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.teaching-home-page .month-overview-card{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid var(--home-line);
  border-radius:18px;
  background:#ffffff;
}

.teaching-home-page .month-overview-card.is-active{
  border-color:#bfeee7;
  background:linear-gradient(180deg,#f1fffd,#fff);
}

.teaching-home-page .month-overview-card header,
.teaching-home-page .month-overview-card footer,
.teaching-home-page .overview-focus-list header,
.teaching-home-page .week-day-column header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.teaching-home-page .month-overview-card header span{
  color:#08746f;
  font-size:17px;
  font-weight:950;
}

.teaching-home-page .month-overview-card header strong,
.teaching-home-page .month-overview-card footer{
  color:#71817b;
  font-size:12px;
  font-weight:800;
}

.teaching-home-page .month-week-stack{
  display:grid;
  gap:8px;
}

.teaching-home-page .month-week-stack button{
  min-height:42px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 42px;
  align-items:center;
  gap:8px;
  border:1px solid #e8f0ed;
  border-radius:13px;
  background:#fbfdfc;
  color:#43544e;
  cursor:pointer;
}

.teaching-home-page .month-week-stack button.is-active{
  border-color:#22c7bd;
  background:#eafdf9;
}

.teaching-home-page .month-week-stack span,
.teaching-home-page .month-week-stack b{
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .month-week-stack em{
  color:#81918b;
  font-size:12px;
  font-style:normal;
  text-align:left;
}

.teaching-home-page .month-week-stack b.risk{
  color:#c56a19;
}

.teaching-home-page .overview-focus-list{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid var(--home-line);
  border-radius:18px;
  background:#fbfdfc;
}

.teaching-home-page .overview-focus-list header strong{
  color:var(--home-text);
  font-size:14px;
}

.teaching-home-page .overview-focus-list header a{
  color:#08746f;
  font-size:12px;
  font-weight:900;
  text-decoration:none;
}

.teaching-home-page .overview-task-line{
  display:grid;
  grid-template-columns:10px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid #e8f0ed;
  border-radius:14px;
  background:#fff;
  color:inherit;
  text-decoration:none;
}

.teaching-home-page .overview-task-line strong{
  display:block;
  color:var(--home-text);
  font-size:13px;
}

.teaching-home-page .overview-task-line p{
  margin:3px 0 0;
  color:var(--home-muted);
  font-size:12px;
}

.teaching-home-page .overview-task-line em{
  color:#65756f;
  font-size:12px;
  font-style:normal;
  font-weight:800;
}

.teaching-home-page .overview-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#27b9ad;
}

.teaching-home-page .overview-dot.green{ background:var(--home-green); }
.teaching-home-page .overview-dot.orange{ background:var(--home-orange); }
.teaching-home-page .overview-dot.blue{ background:var(--home-blue); }

.teaching-home-page .week-overview-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.teaching-home-page .week-overview-summary article{
  min-height:92px;
  display:grid;
  gap:5px;
  padding:14px;
  border:1px solid var(--home-line);
  border-radius:18px;
  background:#fbfdfc;
}

.teaching-home-page .week-overview-summary small{
  color:#08746f;
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .week-overview-summary strong{
  color:#142b25;
  font-size:30px;
  line-height:1;
}

.teaching-home-page .week-overview-summary span{
  color:#71817b;
  font-size:12px;
  line-height:1.45;
}

.teaching-home-page .week-agenda-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.teaching-home-page .week-day-column{
  display:grid;
  gap:8px;
  padding:13px;
  border:1px solid var(--home-line);
  border-radius:18px;
  background:#fff;
}

.teaching-home-page .week-day-column.is-active{
  border-color:#bfeee7;
  background:#f4fffc;
}

.teaching-home-page .week-day-column header button{
  border:none;
  background:transparent;
  color:#08746f;
  font-size:14px;
  font-weight:950;
  cursor:pointer;
}

.teaching-home-page .week-day-column header span{
  color:#71817b;
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .week-lesson-chip{
  min-height:48px;
  display:grid;
  grid-template-columns:52px 58px minmax(0,1fr);
  align-items:center;
  gap:8px;
  padding:10px;
  border:1px solid #e8f0ed;
  border-radius:14px;
  background:#fbfdfc;
  color:inherit;
  text-decoration:none;
}

.teaching-home-page .week-lesson-chip strong,
.teaching-home-page .week-lesson-chip span{
  color:#43544e;
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .week-lesson-chip em{
  min-width:0;
  color:var(--home-text);
  font-size:13px;
  font-style:normal;
  font-weight:850;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.teaching-home-page .day-overview-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 210px;
  gap:14px;
  align-items:start;
}

.teaching-home-page .day-chip-row{
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.teaching-home-page .day-chip-row button{
  min-height:34px;
  padding:0 13px;
  border:1px solid var(--home-line);
  border-radius:999px;
  background:#fff;
  color:#52635d;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}

.teaching-home-page .day-chip-row button.is-active{
  color:#fff;
  border-color:#22c7bd;
  background:#0f9f96;
}

.teaching-home-page .day-timeline{
  display:grid;
  gap:10px;
}

.teaching-home-page .day-timeline-item{
  min-height:68px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid var(--home-line);
  border-radius:18px;
  background:#fff;
  color:inherit;
  text-decoration:none;
}

.teaching-home-page .day-timeline-item span{
  display:grid;
  place-items:center;
  min-height:38px;
  border-radius:13px;
  background:#edf8f6;
  color:#08746f;
  font-size:12px;
  font-weight:950;
}

.teaching-home-page .day-timeline-item strong{
  display:block;
  color:var(--home-text);
  font-size:14px;
}

.teaching-home-page .day-timeline-item p{
  margin:5px 0 0;
  color:var(--home-muted);
  font-size:12px;
  line-height:1.45;
}

.teaching-home-page .day-timeline-item em{
  padding:5px 8px;
  border-radius:999px;
  background:#e3fbf8;
  color:#08746f;
  font-size:12px;
  font-style:normal;
  font-weight:900;
}

.teaching-home-page .day-timeline-item em.green{ background:#e2f8f5; color:#08746f; }
.teaching-home-page .day-timeline-item em.orange{ background:#fff4e6; color:#bd6a18; }
.teaching-home-page .day-timeline-item em.blue{ background:#edf4ff; color:#286fd6; }

.teaching-home-page .day-side-note{
  display:grid;
  gap:9px;
  padding:14px;
  border:1px solid #d9eee8;
  border-radius:18px;
  background:#f5fffc;
}

.teaching-home-page .day-side-note strong{
  color:#08746f;
  font-size:14px;
}

.teaching-home-page .day-side-note p{
  margin:0;
  color:#64756f;
  font-size:12px;
  line-height:1.6;
}

.teaching-home-page .day-side-note a{
  color:#08746f;
  font-size:12px;
  font-weight:900;
  text-decoration:none;
}

.teaching-home-page .semester-legend{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
  margin-top:14px;
  color:#7e8d87;
  font-size:12px;
  font-weight:700;
}

.teaching-home-page .dot{
  width:9px;
  height:9px;
  display:inline-block;
  margin-right:6px;
  border-radius:50%;
  vertical-align:middle;
}

.teaching-home-page .dot.green{ background:var(--home-green); }
.teaching-home-page .dot.blue{ background:var(--home-blue); }
.teaching-home-page .dot.orange{ background:var(--home-orange); }
.teaching-home-page .dot.red{ background:var(--home-red); }

.teaching-home-page .home-side-stack{
  display:grid;
  gap:14px;
}

.teaching-home-page .today-list,
.teaching-home-page .advice-list{
  display:grid;
  gap:8px;
}

.teaching-home-page .today-item,
.teaching-home-page .advice-item,
.teaching-home-page .mini-task-card{
  display:grid;
  gap:8px;
  min-width:0;
  color:inherit;
  text-decoration:none;
  border:1px solid #edf2ef;
  background:#fff;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.teaching-home-page .today-item:hover,
.teaching-home-page .advice-item:hover,
.teaching-home-page .mini-task-card:hover{
  border-color:#cbe9dd;
  box-shadow:0 14px 26px rgba(21,101,76,.10);
  transform:translateY(-1px);
}

.teaching-home-page .today-item{
  grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;
  padding:10px;
  border-radius:15px;
}

.teaching-home-page .today-check{
  width:18px;
  height:18px;
  border-radius:50%;
  border:2px solid #d9e4df;
  background:#fff;
}

.teaching-home-page .today-check.green{ border-color:var(--home-green); background:#e2f8f5; }
.teaching-home-page .today-check.orange{ border-color:var(--home-orange); background:#fff4e6; }
.teaching-home-page .today-check.blue{ border-color:var(--home-blue); background:#edf4ff; }
.teaching-home-page .today-check.teal{ border-color:#27b9ad; background:#e3fbf8; }

.teaching-home-page .today-item strong,
.teaching-home-page .mini-task-card strong,
.teaching-home-page .advice-item strong{
  color:#213630;
  font-size:13px;
}

.teaching-home-page .today-item p,
.teaching-home-page .mini-task-card p,
.teaching-home-page .advice-item p{
  margin:3px 0 0;
  color:#87948e;
  font-size:11px;
  line-height:1.45;
}

.teaching-home-page .today-item em{
  padding:4px 7px;
  border-radius:999px;
  color:#0a9188;
  background:#e4f8f6;
  font-size:11px;
  font-style:normal;
  font-weight:900;
  white-space:nowrap;
}

.teaching-home-page .advice-item{
  grid-template-columns:34px minmax(0,1fr);
  align-items:start;
  padding:11px;
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#f7fcfc);
}

.teaching-home-page .advice-item span{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#e4f8f6;
  font-size:17px;
}

.teaching-home-page .home-task-board{
  margin-top:18px;
}

.teaching-home-page .task-column-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.teaching-home-page .task-column{
  min-height:280px;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:12px;
  border-radius:18px;
  border:1px solid #e4ece8;
  background:#f7fbfb;
}

.teaching-home-page .task-column.blue{ background:#f5f9ff; }
.teaching-home-page .task-column.orange{ background:#fff9f0; }
.teaching-home-page .task-column.purple{ background:#faf7ff; }

.teaching-home-page .task-column header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.teaching-home-page .task-column header strong{
  color:#0b827c;
  font-size:14px;
}

.teaching-home-page .task-column header span{
  min-width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#0b827c;
  background:#ddf6f3;
  font-size:12px;
  font-weight:900;
}

.teaching-home-page .task-column.blue header strong,
.teaching-home-page .task-column.blue header span{ color:#286fd6; }
.teaching-home-page .task-column.blue header span{ background:#e8f1ff; }
.teaching-home-page .task-column.orange header strong,
.teaching-home-page .task-column.orange header span{ color:#bd6a18; }
.teaching-home-page .task-column.orange header span{ background:#fff0d8; }
.teaching-home-page .task-column.purple header strong,
.teaching-home-page .task-column.purple header span{ color:#6d50c8; }
.teaching-home-page .task-column.purple header span{ background:#efeaff; }

.teaching-home-page .task-card-list{
  display:grid;
  gap:10px;
  flex:1;
}

.teaching-home-page .mini-task-card{
  padding:10px;
  border-radius:14px;
}

.teaching-home-page .mini-task-card span{
  width:max-content;
  padding:4px 8px;
  border-radius:999px;
  color:#0a9188;
  background:#e4f8f6;
  font-size:11px;
  font-weight:900;
}

.teaching-home-page .task-column-more{
  margin-top:auto;
  color:#0b827c;
  text-align:center;
  text-decoration:none;
  font-size:13px;
  font-weight:900;
}

.teaching-home-page .empty-mini{
  padding:18px 12px;
  border-radius:16px;
  color:#97a59f;
  background:#fff;
  text-align:center;
  font-size:13px;
}

.quick-archive-page .quick-archive-layout{
  align-items:start;
  grid-template-columns:minmax(0,960px) 300px;
  justify-content:center;
  gap:32px;
  max-width:1292px;
  margin:16px auto 0;
}

.quick-archive-page .page-head{
  margin-bottom:18px;
}

.quick-archive-page .page-title > small{
  display:block;
  margin-bottom:4px;
  color:#0f8f86;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.quick-archive-page .page-title h1{
  font-size:32px;
  line-height:1.12;
}

.quick-archive-page .quick-archive-main{
  display:grid;
  gap:16px;
}

.quick-archive-page .quick-card{
  display:grid;
  gap:14px;
  box-shadow:var(--saas-shadow);
}

.quick-archive-page .quick-advanced-only{
  display:grid;
}

body[data-quick-entry="minimal"] .quick-archive-page .quick-advanced-only{
  display:none;
}

.quick-archive-page .quick-essential-card{
  border-color:#cfe8e3;
}

.quick-archive-page .quick-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.quick-archive-page .quick-card-head small{
  display:block;
  margin-bottom:4px;
  color:#0f8f86;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.quick-archive-page .quick-card-head h2{
  margin:0;
  color:var(--forest);
  font-size:20px;
  line-height:1.25;
}

.quick-archive-page .quick-card-badge{
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  color:#0f6c6b;
  background:#e4fbf8;
  border:1px solid #bfece5;
  font-size:12px;
  font-weight:900;
}

.quick-archive-page .quick-card-badge.cyan{
  color:#0c8079;
  background:#dffaf7;
}

.quick-archive-page .quick-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.quick-archive-page .quick-compact-eval-card .quick-form-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.quick-archive-page .quick-identity-card .quick-form-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.quick-archive-page .quick-meta-strip{
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin-bottom:0;
}

.quick-archive-page .quick-meta-strip .identity-item{
  background:#ffffff;
  border:1px solid var(--saas-line);
  box-shadow:none;
}

.quick-archive-page .quick-form-grid.three{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.quick-archive-page .process-mini-list{
  display:grid;
  gap:12px;
}

.quick-archive-page .process-mini-card{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:12px;
  padding:12px;
  border-radius:18px;
  border:1px solid #d9ebe5;
  background:rgba(255,255,255,.86);
}

.quick-archive-page .process-mini-title{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.quick-archive-page .process-mini-title span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  font-size:12px;
  font-weight:900;
}

.quick-archive-page .process-mini-title strong{
  color:var(--forest);
  font-size:14px;
}

.quick-archive-page .process-mini-card textarea{
  min-height:86px;
}

.quick-archive-page .quick-dim-head{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid #d9ebe5;
}

.quick-archive-page .quick-dim-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}

.quick-archive-page .quick-dim-item{
  display:grid;
  gap:6px;
  padding:10px;
  border:1px solid #d9ebe5;
  border-radius:16px;
  background:rgba(255,255,255,.82);
}

.quick-archive-page .quick-dim-item label{
  color:#0f8f86;
  font-size:12px;
  font-weight:900;
}

.quick-archive-page .quick-dim-item input{
  min-height:38px;
  padding:8px 10px;
  border:1px solid #d6e1ee;
  border-radius:12px;
  background:#fff;
  color:#243356;
}

.quick-archive-page .quick-dim-item input:focus{
  outline:none;
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}

.quick-archive-page #fieldEvaluationJson{
  min-height:128px;
  font-family:"JetBrains Mono","Cascadia Code",Consolas,monospace;
  font-size:11px;
  line-height:1.55;
  color:#3d5361;
  background:#f8fffd;
}

.quick-archive-page .quick-archive-aside{
  position:sticky;
  top:88px;
  width:300px;
  display:grid;
  gap:16px;
}

.quick-archive-page .quick-action-bar{
  position:sticky;
  bottom:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  max-width:1292px;
  margin:24px auto 0;
  padding:14px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.96);
  border:1px solid #dcece6;
  box-shadow:0 20px 40px rgba(15,108,107,.12);
  backdrop-filter:blur(12px);
  z-index:16;
}

@media (max-width: 1280px){
  .quick-archive-page .quick-archive-layout{
    grid-template-columns:minmax(0,1fr) 280px;
    gap:22px;
  }

  .quick-archive-page .quick-archive-aside{
    width:280px;
  }
}

.design-center-page .design-center-hero{
  padding:20px 24px;
  grid-template-columns:minmax(0,1fr) minmax(300px,auto);
  margin-bottom:18px;
  border-color:rgba(154,224,213,.82);
  background:
    radial-gradient(circle at 8% 8%, rgba(35,198,197,.2), transparent 30%),
    radial-gradient(circle at 92% 18%, rgba(255,236,205,.52), transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(236,250,246,.92));
}

.design-center-page .design-hero-title-row{
  display:flex;
  align-items:flex-end;
  gap:12px;
  flex-wrap:wrap;
}

.design-center-page .design-hero-title-row h1{
  font-size:28px;
  line-height:1.12;
}

.design-center-page .design-hero-title-row .saas-title-meta{
  padding-bottom:5px;
  color:#91a7a2;
}

.design-center-page .design-hero-side{
  display:grid;
  justify-items:end;
  gap:18px;
}

.design-center-page .design-hero-actions{
  justify-content:flex-end;
}

.design-center-page .design-hero-actions .btn{
  min-height:36px;
  padding:0 14px;
  font-size:12px;
}

.knowledge-base-page .knowledge-layout{
  grid-template-columns:minmax(0,900px) 360px;
  align-items:start;
}

.knowledge-base-page .status-card{
  position:sticky;
  top:88px;
}

.knowledge-base-page .kb-upload-zone{
  min-height:132px;
  display:grid;
  place-items:center;
  gap:8px;
  padding:22px;
  border:1px dashed #9eddd2;
  border-radius:20px;
  background:linear-gradient(180deg,#f5fffc,#ffffff);
  color:var(--forest);
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.knowledge-base-page .kb-upload-zone:hover,
.knowledge-base-page .kb-upload-zone.drag-over{
  border-color:var(--saas-cyan);
  box-shadow:0 16px 30px rgba(35,198,197,.14);
  transform:translateY(-1px);
}

.knowledge-base-page .kb-upload-zone strong{
  font-size:18px;
}

.knowledge-base-page .kb-upload-zone span{
  max-width:560px;
  color:#7f918b;
  font-size:12px;
  line-height:1.7;
  text-align:center;
}

.knowledge-base-page .identity-strip.compact{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin:0;
}

.knowledge-base-page .kb-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.knowledge-base-page .kb-card-head.tight{
  align-items:center;
  margin-bottom:10px;
}

.knowledge-base-page .kb-card-head small{
  display:block;
  margin-bottom:4px;
  color:#0f8f86;
  font-weight:900;
}

.knowledge-base-page .kb-card-head h2{
  margin:0;
}

.knowledge-base-page .kb-form-grid{
  margin-top:14px;
}

.knowledge-base-page .kb-form-grid .field.wide{
  grid-column:span 2;
}

.knowledge-base-page .kb-form-grid select[multiple]{
  height:auto;
  min-height:108px;
  padding:8px 10px;
}

.knowledge-base-page .kb-file-editor{
  display:grid;
  gap:10px;
  margin-top:14px;
}

.knowledge-base-page .kb-file-editor-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid #deeee9;
  border-radius:12px;
  background:#f7fbf9;
}

.knowledge-base-page .kb-file-editor-head strong{
  color:var(--forest);
  font-size:13px;
  font-weight:900;
}

.knowledge-base-page .kb-file-editor-head span{
  color:#6d7f79;
  font-size:12px;
  line-height:1.45;
}

.knowledge-base-page .kb-file-table{
  display:grid;
  gap:8px;
}

.knowledge-base-page .kb-file-row{
  display:grid;
  grid-template-columns:minmax(130px,1.2fr) minmax(150px,1.4fr) minmax(100px,.8fr) minmax(92px,.7fr) minmax(76px,.6fr) minmax(130px,1fr) minmax(130px,1fr);
  gap:8px;
  align-items:center;
  padding:10px;
  border:1px solid #deeee9;
  border-radius:12px;
  background:#fff;
}

.knowledge-base-page .kb-file-row input,
.knowledge-base-page .kb-file-row select{
  width:100%;
  min-width:0;
  height:34px;
  padding:0 8px;
  border:1px solid #d5e5df;
  border-radius:8px;
  font-size:12px;
}

.knowledge-base-page .kb-file-name{
  color:#51645f;
  font-size:12px;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.knowledge-base-page .kb-result{
  display:grid;
  gap:8px;
  min-height:24px;
  margin-top:12px;
}

.knowledge-base-page .kb-success,
.knowledge-base-page .kb-loading,
.knowledge-base-page .kb-error,
.knowledge-base-page .kb-warning{
  padding:10px 12px;
  border-radius:12px;
  font-size:13px;
  font-weight:800;
}

.knowledge-base-page .kb-success{
  color:#167c6d;
  background:#e1f7f2;
}

.knowledge-base-page .kb-loading{
  color:#246391;
  background:#e8f3ff;
}

.knowledge-base-page .kb-error,
.knowledge-base-page .kb-warning{
  color:#a35c13;
  background:#fff4df;
}

.knowledge-base-page .kb-result-line{
  padding:8px 10px;
  border:1px solid #deeee9;
  border-radius:12px;
  background:#fff;
  color:#61726d;
  font-size:12px;
  overflow-wrap:anywhere;
}

.knowledge-base-page .kb-xiaozhi-output{
  display:grid;
  gap:10px;
  margin-top:12px;
}

.knowledge-base-page .kb-xiaozhi-text{
  padding:12px;
  border:1px solid #deeee9;
  border-radius:12px;
  background:#fff;
  color:#354a44;
  font-size:13px;
  line-height:1.75;
  overflow-wrap:anywhere;
}

.knowledge-base-page .kb-xiaozhi-sources{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid #deeee9;
  border-radius:12px;
  background:#f7fbf9;
}

.knowledge-base-page .kb-xiaozhi-sources > strong{
  color:var(--forest);
  font-size:13px;
  font-weight:900;
}

.knowledge-base-page .kb-xiaozhi-source{
  display:grid;
  gap:3px;
  padding:8px;
  border-radius:10px;
  background:#fff;
}

.knowledge-base-page .kb-xiaozhi-source span{
  color:#425852;
  font-size:12px;
  font-weight:900;
  line-height:1.4;
}

.knowledge-base-page .kb-xiaozhi-source small{
  color:#7d8e88;
  font-size:11px;
  line-height:1.4;
}

.knowledge-base-page .kb-list-card{
  min-height:460px;
}

.knowledge-base-page .kb-list-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.knowledge-base-page .kb-list-actions select{
  min-height:38px;
  padding:0 10px;
  border:1px solid #dbeae5;
  border-radius:12px;
  background:#fff;
  color:#40534e;
  font-weight:800;
}

.knowledge-base-page .kb-search-controls{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.knowledge-base-page .kb-search-group{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid #e0eee9;
  border-radius:14px;
  background:#fbfffd;
}

.knowledge-base-page .kb-search-group-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  color:#6c7d78;
  font-size:12px;
  font-weight:900;
}

.knowledge-base-page .kb-search-group-title strong{
  color:var(--forest);
  font-size:13px;
}

.knowledge-base-page .kb-item-list,
.knowledge-base-page .kb-mini-list,
.knowledge-base-page .kb-context-box{
  display:grid;
  gap:10px;
}

.knowledge-base-page .kb-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  padding:13px;
  border:1px solid #deeee9;
  border-radius:14px;
  background:#fff;
}

.knowledge-base-page .kb-item-title{
  color:var(--forest);
  font-size:15px;
  font-weight:900;
  line-height:1.35;
}

.knowledge-base-page .kb-item-meta{
  margin-top:4px;
  color:#6d7f79;
  font-size:12px;
  line-height:1.5;
}

.knowledge-base-page .kb-item-path{
  margin-top:5px;
  color:#98a7a2;
  font-size:12px;
  line-height:1.5;
  overflow-wrap:anywhere;
}

.knowledge-base-page .kb-item-tags{
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
  max-width:260px;
}

.knowledge-base-page .kb-item-side{
  display:grid;
  justify-items:end;
  align-content:start;
  gap:8px;
}

.knowledge-base-page .kb-item-verify{
  min-height:32px;
  padding:0 12px;
  font-size:12px;
}

.knowledge-base-page .kb-mini-item,
.knowledge-base-page .kb-context-section{
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fff;
}

.knowledge-base-page .kb-mini-item strong{
  display:block;
  color:var(--forest);
  font-size:13px;
}

.knowledge-base-page .kb-mini-item span,
.knowledge-base-page .kb-context-item small{
  display:block;
  margin-top:4px;
  color:#87958f;
  font-size:11px;
  line-height:1.5;
}

.knowledge-base-page .kb-mini-item p{
  margin:8px 0 0;
  color:#53645f;
  font-size:12px;
  line-height:1.6;
}

.knowledge-base-page .kb-context-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}

.knowledge-base-page .kb-context-title strong{
  color:var(--forest);
  font-size:13px;
}

.knowledge-base-page .kb-context-item{
  display:grid;
  gap:3px;
  padding:8px 0;
  border-top:1px solid #edf5f2;
}

.knowledge-base-page .kb-context-item span{
  color:#40534e;
  font-size:12px;
  font-weight:900;
}

.knowledge-base-page .kb-empty{
  padding:16px;
  border:1px dashed #dcece6;
  border-radius:14px;
  background:#fbfffd;
  color:#899a94;
  font-size:13px;
  text-align:center;
}

.knowledge-base-page .kb-empty.compact{
  padding:10px;
  font-size:12px;
}

.knowledge-base-page .full-width{
  width:100%;
}

.knowledge-assets-home-page .knowledge-home-stat-grid{
  max-width:1292px;
  margin:0 auto 18px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.knowledge-assets-home-page .knowledge-home-stat-card{
  display:grid;
  gap:6px;
  padding:18px;
  border:1px solid #dcece6;
  border-radius:16px;
  background:#fff;
  box-shadow:0 14px 30px rgba(15,108,107,.08);
}

.knowledge-assets-home-page .knowledge-home-stat-card span{
  color:#08746f;
  font-size:12px;
  font-weight:900;
}

.knowledge-assets-home-page .knowledge-home-stat-card strong{
  color:#17251f;
  font-size:30px;
  line-height:1;
}

.knowledge-assets-home-page .knowledge-home-stat-card small{
  color:#73827c;
  font-size:12px;
}

.knowledge-assets-home-page .knowledge-home-layout{
  max-width:1292px;
  margin:0 auto 18px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:18px;
  align-items:start;
}

.knowledge-assets-home-page .knowledge-asset-table{
  display:grid;
  gap:8px;
}

.knowledge-assets-home-page .knowledge-asset-table-head,
.knowledge-assets-home-page .knowledge-asset-table-row{
  display:grid;
  grid-template-columns:1.1fr .5fr .5fr .6fr 1fr 1.5fr;
  gap:10px;
  align-items:center;
}

.knowledge-assets-home-page .knowledge-asset-table-head{
  padding:0 12px 6px;
  color:#81918b;
  font-size:12px;
  font-weight:900;
}

.knowledge-assets-home-page .knowledge-asset-table-row{
  min-height:52px;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fff;
  color:#53645f;
  font-size:13px;
}

.knowledge-assets-home-page .knowledge-asset-table-row strong{
  color:#17251f;
  font-size:14px;
}

.knowledge-assets-home-page .knowledge-asset-table-row small{
  color:#73827c;
  font-size:12px;
  line-height:1.45;
}

.knowledge-assets-home-page .knowledge-health-list,
.knowledge-assets-home-page .knowledge-folder-list,
.knowledge-assets-home-page .knowledge-recent-list{
  display:grid;
  gap:10px;
}

.knowledge-assets-home-page .knowledge-health-list article{
  display:grid;
  gap:8px;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fbfffd;
}

.knowledge-assets-home-page .knowledge-health-list article div{
  display:flex;
  justify-content:space-between;
  gap:10px;
}

.knowledge-assets-home-page .knowledge-health-list strong,
.knowledge-assets-home-page .knowledge-folder-list strong,
.knowledge-assets-home-page .knowledge-recent-list strong{
  color:#17251f;
  font-size:13px;
  line-height:1.4;
}

.knowledge-assets-home-page .knowledge-health-list span,
.knowledge-assets-home-page .knowledge-folder-list span,
.knowledge-assets-home-page .knowledge-recent-list span{
  color:#73827c;
  font-size:12px;
  line-height:1.5;
}

.knowledge-assets-home-page .knowledge-health-list small{
  color:#81918b;
  font-size:11px;
}

.knowledge-assets-home-page .knowledge-health-list meter{
  width:100%;
  height:8px;
}

.knowledge-assets-home-page .knowledge-folder-list article,
.knowledge-assets-home-page .knowledge-recent-list article{
  display:grid;
  gap:4px;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fff;
}

.design-saas .btn.tiny{
  min-height:30px;
  padding:6px 10px;
  font-size:12px;
}

.course-knowledge-page .course-knowledge-layout{
  max-width:1292px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,420px);
  gap:18px;
  align-items:start;
}

.course-knowledge-page .lesson-work-card{
  min-height:520px;
}

.course-knowledge-page .lesson-work-card select{
  min-height:38px;
  padding:0 10px;
  border:1px solid #dbeae5;
  border-radius:12px;
  background:#fff;
  color:#40534e;
  font-weight:800;
}

.course-knowledge-page .course-knowledge-host-preview{
  display:grid;
  gap:12px;
  margin-top:18px;
}

.course-knowledge-page .course-knowledge-host-preview section{
  padding:16px;
  border:1px solid #d7e7e2;
  border-radius:14px;
  background:#fff;
}

.course-knowledge-page .course-knowledge-host-preview strong{
  color:var(--forest);
  font-size:14px;
}

.course-knowledge-page .course-knowledge-host-preview p{
  margin:8px 0 0;
  color:#53645f;
  font-size:13px;
  line-height:1.7;
}

.course-knowledge-page .current-knowledge-sidebar{
  position:sticky;
  top:18px;
  background:#f3fbf8;
  border-color:#cfe5dc;
}

.course-knowledge-page .knowledge-sidebar-list{
  display:grid;
  gap:10px;
}

.course-knowledge-page .knowledge-sidebar-section{
  display:grid;
  gap:8px;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fff;
}

.course-knowledge-page .knowledge-sidebar-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.course-knowledge-page .knowledge-sidebar-title strong{
  color:var(--forest);
  font-size:13px;
}

.course-knowledge-page .knowledge-sidebar-item{
  display:grid;
  gap:7px;
  padding-top:8px;
  border-top:1px solid #edf5f2;
}

.course-knowledge-page .knowledge-sidebar-item strong{
  display:block;
  color:#40534e;
  font-size:12px;
  line-height:1.45;
}

.course-knowledge-page .knowledge-sidebar-item span{
  display:block;
  margin-top:3px;
  color:#87958f;
  font-size:11px;
  line-height:1.45;
}

.course-knowledge-page .knowledge-sidebar-item p{
  margin:0;
  color:#53645f;
  font-size:12px;
  line-height:1.6;
  max-height:7.2em;
  overflow:hidden;
}

.lesson-assets-page .lesson-asset-flow{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:14px 0 18px;
}

.lesson-assets-page .lesson-asset-flow article{
  display:grid;
  gap:6px;
  padding:14px;
  border:1px solid #dcece6;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 30px rgba(15,108,107,.08);
}

.lesson-assets-page .lesson-asset-flow span{
  display:grid;
  width:28px;
  height:28px;
  place-items:center;
  border-radius:10px;
  background:#e5f8f6;
  color:var(--forest);
  font-weight:900;
}

.lesson-assets-page .lesson-asset-flow strong{
  color:var(--forest);
  font-size:14px;
}

.lesson-assets-page .lesson-asset-flow p{
  margin:0;
  color:#6f7f79;
  font-size:12px;
  line-height:1.5;
}

.lesson-assets-page .lesson-asset-layout,
.lesson-assets-page .lesson-library-layout{
  max-width:1292px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:18px;
  align-items:start;
}

.lesson-assets-page .lesson-upload-box{
  min-height:112px;
  display:grid;
  place-items:center;
  gap:6px;
  padding:18px;
  border:1.5px dashed #bfe6df;
  border-radius:18px;
  background:#f8fffd;
  cursor:pointer;
  text-align:center;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.lesson-assets-page .lesson-upload-box:hover,
.lesson-assets-page .lesson-upload-box.drag-over{
  border-color:var(--saas-cyan);
  background:#eafdf9;
  box-shadow:0 14px 28px rgba(35,198,197,.12);
}

.lesson-assets-page .lesson-upload-box strong{
  color:var(--forest);
  font-size:15px;
}

.lesson-assets-page .lesson-upload-box span{
  max-width:520px;
  color:#6f7f79;
  font-size:12px;
  line-height:1.6;
}

.lesson-assets-page .lesson-asset-side,
.lesson-assets-page .lesson-library-detail-card{
  position:sticky;
  top:18px;
}

.lesson-assets-page .lesson-asset-preview,
.lesson-assets-page .lesson-asset-card-list,
.lesson-assets-page .lesson-library-detail{
  display:grid;
  gap:10px;
}

.lesson-assets-page .lesson-asset-cardlet{
  display:grid;
  gap:6px;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fff;
}

.lesson-assets-page .lesson-asset-cardlet.compact{
  padding:10px;
  background:#fbfefd;
}

.lesson-assets-page .lesson-asset-cardlet span{
  color:var(--forest);
  font-size:12px;
  font-weight:900;
}

.lesson-assets-page .lesson-asset-cardlet strong{
  color:#17251f;
  font-size:13px;
}

.lesson-assets-page .lesson-asset-cardlet p{
  margin:0;
  color:#273b35;
  font-size:13px;
  line-height:1.55;
  white-space:pre-line;
}

.lesson-assets-page .lesson-asset-cardlet small{
  color:#73827c;
  font-size:12px;
  line-height:1.45;
}

.lesson-assets-page .lesson-asset-list-card{
  max-width:1292px;
  margin:18px auto 0;
}

.lesson-assets-page .lesson-transfer-list,
.lesson-assets-page .lesson-library-list{
  display:grid;
  gap:12px;
}

.lesson-assets-page .lesson-transfer-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  padding:14px;
  border:1px solid #dcece6;
  border-radius:18px;
  background:#fff;
}

.lesson-assets-page .lesson-transfer-title{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}

.lesson-assets-page .lesson-transfer-title strong{
  color:#17251f;
  font-size:15px;
}

.lesson-assets-page .lesson-transfer-item p{
  margin:6px 0 3px;
  color:#52625b;
  font-size:13px;
  line-height:1.55;
}

.lesson-assets-page .lesson-transfer-item small{
  color:#81918b;
  font-size:12px;
  line-height:1.45;
}

.lesson-assets-page .lesson-file-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}

.lesson-assets-page .lesson-file-tags span,
.lesson-assets-page .lesson-detail-meta span{
  padding:5px 8px;
  border-radius:999px;
  background:#eefaf9;
  color:var(--forest);
  font-size:12px;
  font-weight:800;
}

.lesson-assets-page .lesson-transfer-actions{
  display:flex;
  align-items:flex-start;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}

.lesson-assets-page .lesson-transfer-item .lesson-asset-card-list{
  grid-column:1 / -1;
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.lesson-assets-page .lesson-library-item{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  padding:14px;
  border:1px solid #dcece6;
  border-radius:16px;
  background:#fff;
  text-align:left;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.lesson-assets-page .lesson-library-item.active{
  border-color:var(--saas-cyan);
  background:#f2fffc;
  box-shadow:0 12px 24px rgba(15,159,150,.1);
}

.lesson-assets-page .lesson-library-item strong{
  color:#17251f;
  font-size:15px;
}

.lesson-assets-page .lesson-library-item p{
  margin:6px 0 4px;
  color:#52625b;
  font-size:13px;
  line-height:1.5;
}

.lesson-assets-page .lesson-library-item small{
  color:#81918b;
  font-size:12px;
}

.lesson-assets-page .lesson-library-item > span{
  align-self:start;
  padding:5px 8px;
  border-radius:999px;
  background:#e5f8f6;
  color:var(--forest);
  font-size:12px;
  font-weight:900;
}

.lesson-assets-page .lesson-detail-meta,
.lesson-assets-page .lesson-detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}

.lesson-assets-page .lesson-detail-section{
  display:grid;
  gap:8px;
  padding:12px 0;
  border-top:1px solid #e7f0ef;
}

.lesson-assets-page .lesson-detail-section strong{
  color:var(--forest);
  font-size:13px;
}

.lesson-assets-page .lesson-detail-section p{
  margin:0;
  color:#52625b;
  font-size:13px;
  line-height:1.6;
  white-space:pre-line;
}

.lesson-transfer-page .lesson-transfer-dropzone{
  min-height:104px;
  display:grid;
  place-items:center;
  gap:6px;
  margin:14px auto 16px;
  padding:18px;
  max-width:1292px;
  border:1.5px dashed #a9ddd5;
  border-radius:18px;
  background:#f7fffd;
  color:var(--forest);
  text-align:center;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.lesson-transfer-page .lesson-transfer-dropzone:hover,
.lesson-transfer-page .lesson-transfer-dropzone.drag-over{
  border-color:var(--saas-cyan);
  background:#eafffb;
  box-shadow:0 14px 28px rgba(35,198,197,.12);
}

.lesson-transfer-page .lesson-transfer-dropzone strong{
  font-size:18px;
}

.lesson-transfer-page .lesson-transfer-dropzone span{
  max-width:620px;
  color:#6f7f79;
  font-size:12px;
  line-height:1.6;
}

.lesson-transfer-page .lesson-transfer-counts{
  max-width:1292px;
  margin:0 auto 18px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.lesson-transfer-page .lesson-transfer-counts article{
  display:grid;
  gap:4px;
  padding:16px;
  border:1px solid #dcece6;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 24px rgba(15,108,107,.07);
}

.lesson-transfer-page .lesson-transfer-counts span{
  color:#08746f;
  font-size:12px;
  font-weight:900;
}

.lesson-transfer-page .lesson-transfer-counts strong{
  color:#17251f;
  font-size:28px;
  line-height:1;
}

.lesson-transfer-page .lesson-transfer-counts small{
  color:#73827c;
  font-size:12px;
}

.lesson-transfer-page .lesson-transfer-simple-layout{
  max-width:1292px;
  margin:0 auto;
  display:grid;
  grid-template-columns:360px minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.lesson-transfer-page .lesson-folder-tree{
  display:grid;
  gap:4px;
  color:#40534e;
  font-size:13px;
}

.lesson-transfer-page .lesson-tree-node{
  display:grid;
  gap:4px;
}

.lesson-transfer-page .lesson-tree-folder,
.lesson-transfer-page .lesson-tree-file{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:30px;
  padding-left:calc(var(--depth) * 14px);
}

.lesson-transfer-page .lesson-tree-folder span{
  width:16px;
  height:12px;
  border:1.5px solid #0f8f86;
  border-radius:4px 4px 3px 3px;
  background:#e8fbf8;
}

.lesson-transfer-page .lesson-tree-folder strong{
  color:#17251f;
  font-size:13px;
}

.lesson-transfer-page .lesson-tree-folder small{
  margin-left:auto;
  color:#81918b;
  font-size:11px;
}

.lesson-transfer-page .lesson-tree-file{
  color:#53645f;
  line-height:1.35;
}

.lesson-transfer-page .lesson-tree-file span,
.lesson-transfer-page .lesson-file-type{
  flex:0 0 auto;
  min-width:44px;
  padding:4px 7px;
  border-radius:999px;
  background:#eefaf9;
  color:#08746f;
  font-size:11px;
  font-weight:900;
  text-align:center;
}

.lesson-transfer-page .lesson-file-table{
  display:grid;
  gap:10px;
}

.lesson-transfer-page .lesson-file-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto auto;
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fff;
}

.lesson-transfer-page .lesson-file-row strong{
  display:block;
  color:#17251f;
  font-size:14px;
  line-height:1.35;
}

.lesson-transfer-page .lesson-file-row small{
  display:block;
  margin-top:3px;
  color:#81918b;
  font-size:12px;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.lesson-transfer-page .lesson-file-type.md{
  background:#eef4ff;
  color:#3464b7;
}

.lesson-transfer-page .lesson-file-type.ppt{
  background:#fff4e6;
  color:#b76716;
}

.lesson-transfer-page .lesson-file-type.image{
  background:#f1f7e8;
  color:#5f7f1e;
}

.lesson-transfer-page .lesson-file-type.other{
  background:#f2f4f3;
  color:#63706c;
}

.lesson-transfer-page .lesson-parse-card{
  max-width:1292px;
  margin:18px auto 0;
}

.lesson-transfer-page .lesson-parse-log{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.lesson-transfer-page .lesson-parse-log article{
  display:grid;
  gap:4px;
  padding:12px;
  border:1px solid #dcece6;
  border-radius:14px;
  background:#fbfffd;
}

.lesson-transfer-page .lesson-parse-log strong{
  color:#17251f;
  font-size:13px;
}

.lesson-transfer-page .lesson-parse-log span{
  color:#0f8f86;
  font-size:11px;
  font-weight:900;
}

.lesson-transfer-page .lesson-parse-log p{
  margin:0;
  color:#53645f;
  font-size:12px;
  line-height:1.6;
}

.design-saas .ai-workbench-card{
  background:linear-gradient(180deg,#eff9f5 0%, #f8fdfb 100%);
  border:1px solid #cfe5dc;
  box-shadow:0 18px 36px rgba(15,108,107,.12);
}

.design-saas .ai-workbench-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.design-saas .ai-workbench-head small{
  display:block;
  margin-bottom:6px;
  color:#0f8f86;
}

.design-saas .ai-workbench-head h2{
  margin:0;
}

.design-saas .ai-action-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.design-saas .ai-action-grid.compact{
  grid-template-columns:1fr;
}

.design-saas .ai-action-card{
  border:none;
  width:100%;
  text-align:left;
  padding:14px 14px 13px;
  border-radius:16px;
  background:rgba(255,255,255,.88);
  border:1px solid #dcece6;
  box-shadow:0 10px 24px rgba(15,108,107,.08);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.design-saas .ai-action-card strong{
  display:block;
  margin-bottom:6px;
  color:var(--forest);
  font-size:13px;
}

.design-saas .ai-action-card:hover{
  transform:translateY(-1px);
  border-color:#a8ddd0;
  box-shadow:0 14px 28px rgba(15,108,107,.12);
}

.design-saas .ai-action-card.active{
  background:#dff8f3;
  border-color:#95decb;
  box-shadow:0 16px 30px rgba(31,184,205,.16);
}

.design-saas .ai-result-card{
  padding:14px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.92);
  border:1px solid #dcece6;
  box-shadow:0 10px 24px rgba(15,108,107,.08);
}

.design-saas .ai-result-card strong{
  display:block;
  margin-bottom:8px;
  color:var(--forest);
  font-size:13px;
}

.unit-design-page .page-title h1,
.unit-design-page .card h2{
  color:var(--forest);
}

.unit-design-page .page-title p{
  margin-top:8px;
  color:var(--guide);
  font-size:13px;
}

.unit-design-page .unit-design-layout{
  align-items:start;
  grid-template-columns:minmax(520px,760px) minmax(420px,560px);
  justify-content:center;
  gap:16px;
  max-width:1360px;
  margin:12px auto 0;
}

body[data-clean-proto-page="unit_design"] .shell-main .unit-design-page .unit-design-layout{
  grid-template-columns:minmax(620px,980px);
  justify-content:center;
}

.unit-design-page .unit-edit-column{
  width:100%;
  max-width:none;
  display:grid;
  gap:12px;
}

.unit-design-page .unit-side-column{
  position:sticky;
  top:80px;
  align-self:start;
  width:100%;
  display:grid;
  gap:12px;
}

.unit-design-page .section-note{
  margin:0 0 12px;
  color:var(--guide);
  font-size:12px;
  line-height:1.6;
}

.unit-design-page .unit-identity-item{
  background:#ffffff;
  border:1px solid var(--saas-line);
  box-shadow:var(--saas-shadow);
}

.unit-design-page .unit-edit-card{
  box-shadow:var(--saas-shadow);
  padding:16px;
}

.unit-design-page .unit-meta-strip{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  margin-bottom:10px;
}

.unit-design-page .unit-meta-draft-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:8px;
  margin:-2px 0 12px;
}

.unit-design-page .unit-meta-draft-grid:empty{
  display:none;
}

.unit-design-page .unit-meta-strip .identity-item{
  position:relative;
  background:#ffffff;
  border:1px solid var(--saas-line);
  box-shadow:none;
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.unit-design-page .unit-meta-strip .identity-item[data-unit-required-key]{
  padding-top:14px;
  padding-right:58px;
}

.unit-design-page .unit-meta-strip .identity-item[data-unit-required-key]::after{
  content:"必填";
  position:absolute;
  top:14px;
  right:12px;
  display:inline-flex;
  align-items:center;
  min-height:18px;
  padding:0 7px;
  border-radius:999px;
  background:#fff1d6;
  color:#9b671c;
  font-size:10px;
  font-weight:900;
}

.unit-design-page .unit-meta-strip .identity-item:hover,
.unit-design-page .unit-meta-strip .identity-item:focus-within{
  background:#f7fcfa;
  border-color:#cfe9db;
  box-shadow:0 12px 24px rgba(31,75,58,.08);
  transform:translateY(-1px);
}

.unit-design-page .unit-meta-strip .identity-item.is-missing{
  background:#fff8ed;
  border-color:#efc98c;
  box-shadow:0 0 0 2px rgba(239,201,140,.24);
}

.unit-design-page .unit-meta-strip .identity-item.is-ready{
  background:#f6fffb;
  border-color:#bfe7d4;
}

.unit-design-page .unit-meta-strip .identity-item.is-ready::after{
  content:"已补";
  background:#ddf8ef;
  color:#08746b;
}

.unit-design-page .unit-required-panel{
  display:grid;
  gap:12px;
  margin:0 0 14px;
  padding:16px;
  border:1px solid #efd5a7;
  border-radius:18px;
  background:linear-gradient(135deg,#fffaf0,#fbfffb);
  box-shadow:0 12px 26px rgba(133,93,33,.06);
}

.unit-design-page .unit-required-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.unit-design-page .unit-required-title{
  display:flex;
  align-items:center;
  min-width:0;
}

.unit-design-page .unit-required-head strong{
  color:var(--forest);
  font-size:17px;
  line-height:1.25;
}

.unit-design-page .unit-required-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin-left:auto;
}

.unit-design-page .unit-required-actions span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  background:#fff1d6;
  color:#9b671c;
  font-size:12px;
  font-weight:900;
}

.unit-design-page .unit-required-actions span.is-ready{
  background:#dff8f3;
  color:#078173;
}

.unit-design-page .unit-required-generate-btn{
  min-height:32px;
  padding:0 13px;
  border-radius:999px;
  border:0;
  background:linear-gradient(135deg,#12b8a5,#9d7d37);
  color:#fff;
  font-size:14px;
  font-weight:900;
  line-height:1;
  box-shadow:0 10px 22px rgba(16,151,139,.16);
  cursor:pointer;
}

.unit-design-page .unit-required-generate-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(16,151,139,.22);
}

.unit-design-page .unit-required-checklist{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:10px;
  border-radius:14px;
  background:rgba(255,255,255,.56);
  border:1px solid rgba(240,189,110,.32);
}

.unit-design-page .unit-generation-status{
  margin:12px 0 2px;
}

.unit-design-page .unit-generation-status[hidden]{
  display:none;
}

.unit-design-page .unit-generation-thinking{
  border-color:rgba(19,169,155,.22);
  background:linear-gradient(135deg,rgba(249,255,252,.98),rgba(255,250,238,.95));
  box-shadow:0 14px 30px rgba(13,129,111,.11);
}

.unit-design-page .unit-generation-thinking .assistant-thinking-note{
  color:#58716b;
}

.unit-design-page .unit-required-chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:26px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid #e7eee9;
  background:#ffffff;
  color:#31564e;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.unit-design-page .unit-required-chip small{
  display:inline-flex;
  align-items:center;
  min-height:17px;
  padding:0 6px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
}

.unit-design-page .unit-required-chip.is-missing{
  border-color:#efc98c;
  background:#fff8ed;
}

.unit-design-page .unit-required-chip.is-missing small{
  background:#fff0d2;
  color:#9b671c;
}

.unit-design-page .unit-required-chip.is-ready{
  border-color:#bfe7d4;
  background:#f6fffb;
}

.unit-design-page .unit-required-chip.is-ready small{
  background:#ddf8ef;
  color:#08746b;
}

body .unit-design-page .unit-required-checklist{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin-top:4px;
}

body .unit-design-page .unit-required-chip{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid #e7eee9;
  background:#ffffff;
  box-shadow:0 5px 12px rgba(31,74,65,.04);
  color:#31564e;
  font-family:inherit;
  font-size:12px;
  line-height:1.1;
  font-weight:800;
  cursor:pointer;
}

body .unit-design-page .unit-required-chip span{
  white-space:nowrap;
}

body .unit-design-page .unit-required-chip small{
  display:inline-flex;
  align-items:center;
  min-height:17px;
  padding:0 6px;
  border-radius:999px;
  font-size:10px;
  line-height:1;
  font-weight:900;
}

body .unit-design-page .unit-required-chip.is-missing{
  border-color:#efc98c;
  background:#fff8ed;
}

body .unit-design-page .unit-required-chip.is-missing small{
  background:#fff0d2;
  color:#9b671c;
}

body .unit-design-page .unit-required-chip.is-ready{
  border-color:#bfe7d4;
  background:#f6fffb;
}

body .unit-design-page .unit-required-chip.is-ready small{
  background:#ddf8ef;
  color:#08746b;
}

body .unit-design-page .unit-required-chip:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(19,169,155,.18);
}

.unit-design-page .unit-required-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.unit-design-page .unit-required-field{
  position:relative;
  padding:10px;
  border:1px solid #e6eee9;
  border-radius:14px;
  background:#ffffff;
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.unit-design-page .unit-required-field::after{
  content:"必填";
  position:absolute;
  top:9px;
  right:10px;
  display:inline-flex;
  align-items:center;
  min-height:18px;
  padding:0 7px;
  border-radius:999px;
  background:#fff1d6;
  color:#9b671c;
  font-size:10px;
  font-weight:900;
}

.unit-design-page .unit-required-field.is-missing{
  background:#fff9ef;
  border-color:#efc98c;
  box-shadow:0 0 0 2px rgba(239,201,140,.22);
}

.unit-design-page .unit-required-field.is-ready{
  background:#f5fffb;
  border-color:#bfe7d4;
}

.unit-design-page .unit-required-field.is-ready::after{
  content:"已补";
  background:#ddf8ef;
  color:#08746b;
}

.unit-design-page .unit-required-field textarea{
  min-height:76px;
  font-size:13px;
  line-height:1.55;
}

.unit-design-page .unit-literacy-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.unit-design-page .unit-literacy-item{
  display:grid;
  gap:7px;
  padding:10px;
  border:1px solid #e0ece8;
  border-radius:10px;
  background:#fbfefd;
}
.unit-design-page .unit-literacy-item span{
  color:#31564e;
  font-size:12px;
  font-weight:900;
}
.unit-design-page .unit-literacy-item textarea{
  min-height:82px;
  border-radius:10px;
  font-size:13px;
  line-height:1.55;
}

.unit-design-page .unit-list-field-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.unit-design-page .unit-field-head{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  margin-bottom:6px;
}

.unit-design-page .unit-field-head h2,
.unit-design-page .unit-field-head label{
  margin:0;
  color:#31564e;
}

.unit-design-page .unit-field-actions{
  display:flex;
  align-items:center;
  gap:8px;
}

.unit-design-page .unit-field-title-inline{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-width:0;
}

.unit-design-page .unit-generate-field-btn{
  appearance:none;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(20,168,151,.34);
  background:linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,rgba(18,184,165,.8),rgba(157,125,55,.72)) border-box;
  color:#08746b;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
  line-height:1;
  box-shadow:none;
}

.unit-design-page .unit-generate-field-btn:hover{
  background:linear-gradient(#f8fffc,#f8fffc) padding-box,
    linear-gradient(135deg,#12b8a5,#9d7d37) border-box;
  transform:translateY(-1px);
  box-shadow:0 6px 14px rgba(16,151,139,.08);
}

.unit-design-page .unit-generate-field-btn:disabled{
  cursor:not-allowed;
  opacity:.55;
  transform:none;
}

.unit-design-page .unit-resource-list{
  display:grid;
  gap:8px;
}

.unit-design-page .unit-resource-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 36px;
  gap:8px;
  align-items:center;
}

.unit-design-page .unit-resource-row input{
  min-height:38px;
  border-radius:10px;
}

.unit-design-page .unit-icon-btn{
  width:36px;
  height:36px;
  display:inline-grid;
  place-items:center;
  flex:0 0 36px;
  border:1px solid #dcece6;
  border-radius:10px;
  background:#f8fcfb;
  color:var(--saas-teal);
  font-size:20px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(31,75,58,.04);
  transition:background .18s ease, border-color .18s ease, transform .18s ease;
}

.unit-design-page .unit-icon-btn:hover{
  background:var(--saas-cyan-lt);
  border-color:#c9ece2;
  transform:translateY(-1px);
}

.unit-design-page .unit-icon-btn.remove{
  color:#b65f4b;
  background:#fff8f3;
  border-color:#f0d5c8;
}

.unit-design-page .unit-icon-btn.remove:hover{
  background:#fff1e8;
  border-color:#e7c0af;
}

.unit-design-page .unit-edit-card .field input,
.unit-design-page .unit-edit-card .field select,
.unit-design-page .unit-edit-card .field textarea{
  background:#ffffff;
  border:1px solid #dfe9e4;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 2px 8px rgba(31,75,58,.04);
}

.unit-design-page .unit-edit-card .field input:focus,
.unit-design-page .unit-edit-card .field select:focus,
.unit-design-page .unit-edit-card .field textarea:focus{
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}

.unit-design-page .unit-edit-card textarea{
  min-height:96px;
  resize:vertical;
  overflow:hidden;
}

.unit-design-page .unit-ai-adopt-btn{
  border-color:#f0d7a5;
  background:linear-gradient(135deg,#fff9eb,#fff3d5);
  color:#8a5b14;
  box-shadow:0 10px 22px rgba(174,124,36,.12);
}

.unit-design-page .unit-ai-adopt-btn:hover{
  border-color:#dfbd72;
  transform:translateY(-1px);
}

.unit-design-page .unit-field-adopt-btn{
  border:1px solid rgba(18,184,165,.42);
  border-radius:999px;
  background:linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,#12b8a5,#9d7d37) border-box;
  color:#08766f;
  font-size:12px;
  font-weight:900;
  padding:5px 10px;
  cursor:pointer;
  box-shadow:0 8px 16px rgba(16,151,139,.1);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.unit-design-page .unit-field-adopt-btn:hover{
  transform:translateY(-1px);
  border-color:transparent;
  box-shadow:0 12px 20px rgba(16,151,139,.16);
}

.unit-design-page .unit-ai-draft-slot{
  margin-top:8px;
}

.unit-design-page .unit-ai-draft-slot:empty{
  display:none;
}

.unit-design-page .unit-ai-draft-card{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px dashed #e2bd68;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(255,250,235,.96),rgba(248,255,252,.94));
  box-shadow:0 10px 24px rgba(159,113,30,.08);
}

.unit-design-page .unit-ai-draft-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.unit-design-page .unit-ai-draft-head strong{
  display:block;
  color:#7d5517;
  font-size:13px;
  line-height:1.3;
}

.unit-design-page .unit-ai-draft-head span{
  display:inline-flex;
  margin-top:3px;
  padding:2px 7px;
  border-radius:999px;
  background:#fff2cf;
  color:#9a6510;
  font-size:11px;
  font-weight:800;
}

.unit-design-page .unit-ai-draft-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex-shrink:0;
}

.unit-design-page .unit-ai-draft-adopt{
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#12b8a5,#9d7d37);
  color:#fff;
  font-size:12px;
  font-weight:900;
  padding:5px 10px;
  cursor:pointer;
  box-shadow:0 8px 16px rgba(16,151,139,.14);
}

.unit-design-page .unit-ai-draft-adopt:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 20px rgba(16,151,139,.2);
}

.unit-design-page .unit-ai-draft-delete{
  border:0;
  border-radius:999px;
  background:#fff4ed;
  color:#a44732;
  font-size:12px;
  font-weight:900;
  padding:5px 9px;
  cursor:pointer;
}

.unit-design-page .unit-ai-draft-delete:hover{
  background:#ffe9df;
}

.unit-design-page .unit-ai-draft-card textarea{
  min-height:72px;
  border:1px solid rgba(219,184,105,.55);
  border-radius:10px;
  background:rgba(255,255,255,.9);
  color:#183b35;
  font-size:13px;
  line-height:1.65;
}

.unit-design-page .unit-info-card,
.unit-design-page .unit-next-card{
  box-shadow:0 18px 36px rgba(15,108,107,.12);
  padding:16px;
}

.unit-design-page .unit-info-card .list-item{
  background:rgba(255,255,255,.92);
  border:1px solid #dcece6;
  padding:10px 12px;
}

.unit-design-page .unit-ai-card{
  display:grid;
  gap:8px;
  margin-bottom:0;
  padding:14px;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(242,253,249,.94));
  border:1px solid #d8eee7;
  box-shadow:0 18px 36px rgba(15,108,107,.12);
}

.unit-design-page .unit-ai-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.unit-design-page .unit-ai-head small{
  display:block;
  color:var(--saas-teal);
  font-size:12px;
  font-weight:900;
  margin-bottom:4px;
}

.unit-design-page .unit-ai-head h2{
  margin:0;
}

.unit-design-page .unit-ai-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.unit-design-page .unit-session-manager{
  position:relative;
  display:flex;
  align-items:center;
  gap:6px;
}

.unit-design-page .unit-session-btn{
  height:30px;
  border:1px solid #d9ebe7;
  border-radius:999px;
  background:#fffefa;
  color:#0d6f68;
  font-size:12px;
  font-weight:800;
  line-height:1;
  padding:0 10px;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(19,75,70,.06);
}

.unit-design-page .unit-session-btn.current{
  max-width:180px;
  display:flex;
  align-items:center;
  gap:5px;
  background:#f5fffc;
}

.unit-design-page .unit-session-btn.current span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.unit-design-page .unit-session-btn.current i{
  font-style:normal;
  color:#809a96;
}

.unit-design-page .unit-session-menu{
  position:absolute;
  top:34px;
  left:0;
  z-index:40;
  width:270px;
  padding:8px;
  border:1px solid #dcece8;
  border-radius:16px;
  background:rgba(255,255,255,.97);
  box-shadow:0 18px 45px rgba(22,72,66,.16);
  backdrop-filter:blur(14px);
}

.unit-design-page .unit-session-menu header{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:10px;
  padding:1px 3px 6px;
}

.unit-design-page .unit-session-menu header strong{
  color:#113c39;
  font-size:13px;
}

.unit-design-page .unit-session-menu header small{
  color:#7b918d;
  font-size:11px;
}

.unit-design-page #unitSessionList{
  max-height:248px;
  overflow:auto;
  display:grid;
  gap:5px;
}

.unit-design-page .unit-session-row{
  position:relative;
  width:100%;
  border:1px solid #e3efec;
  border-radius:12px;
  background:#fbfefd;
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  align-items:center;
  overflow:visible;
}

.unit-design-page .unit-session-row.active{
  border-color:#21a99d;
  background:#edfffb;
}

.unit-design-page .unit-session-row.open{
  border-color:#9fdcd5;
}

.unit-design-page .unit-session-item{
  min-width:0;
  padding:6px 0 6px 8px;
  border:0;
  background:transparent;
  text-align:left;
  cursor:pointer;
  display:grid;
  gap:2px;
}

.unit-design-page .unit-session-item strong{
  color:#123d3a;
  font-size:12px;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.unit-design-page .unit-session-item span,
.unit-design-page .unit-session-item small{
  color:#6b817d;
  font-size:10.5px;
  line-height:1.22;
}

.unit-design-page .unit-session-more{
  width:23px;
  height:23px;
  margin-right:5px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#6c817d;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  letter-spacing:-2px;
  line-height:1;
}

.unit-design-page .unit-session-more:hover,
.unit-design-page .unit-session-row.open .unit-session-more{
  background:#dff7f2;
  color:#087b73;
}

.unit-design-page .unit-session-actions{
  position:absolute;
  top:28px;
  right:6px;
  z-index:50;
  width:104px;
  padding:5px;
  border:1px solid #dcece8;
  border-radius:12px;
  background:#ffffff;
  box-shadow:0 14px 34px rgba(17,63,58,.14);
  display:grid;
  gap:4px;
}

.unit-design-page .unit-session-actions button{
  border:0;
  border-radius:9px;
  background:transparent;
  padding:7px 8px;
  color:#163f3c;
  font-size:12px;
  font-weight:800;
  text-align:left;
  cursor:pointer;
}

.unit-design-page .unit-session-actions button:hover{
  background:#eefbf8;
  color:#087b73;
}

.unit-design-page .unit-session-actions button[data-unit-session-action="delete"]{
  color:#9c3c2e;
}

.unit-design-page .unit-session-actions button[data-unit-session-action="delete"]:hover{
  background:#fff1ee;
}

.unit-design-page .unit-ai-runtime{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 6px 5px 10px;
  border-radius:999px;
  background:#ecfffb;
  border:1px solid #bdeee4;
  color:#00786f;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.unit-design-page .unit-ai-runtime span{
  color:#00786f;
}

.unit-design-page .unit-ai-runtime select{
  border:0;
  outline:0;
  background:transparent;
  color:#006c63;
  font:inherit;
  cursor:pointer;
}

.unit-design-page .unit-ai-input{
  min-height:42px;
  max-height:132px;
  resize:none;
  overflow-y:hidden;
  border-radius:14px;
  background:#fff;
  border:1px solid #dcece6;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.unit-design-page .unit-ai-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.unit-design-page .unit-ai-result{
  display:grid;
  gap:8px;
  padding:10px;
  border-radius:16px;
  background:rgba(255,255,255,.8);
  border:1px dashed #cfe8df;
  color:var(--ink);
  font-size:13px;
  line-height:1.7;
  max-height:calc(100vh - 390px);
  min-height:260px;
  overflow-y:auto;
}

.unit-design-page .unit-ai-result p{
  margin:0;
}

.unit-design-page .unit-ai-thread{
  display:grid;
  gap:10px;
}

.unit-design-page .unit-ai-bubble{
  display:grid;
  gap:6px;
  padding:9px 11px;
  border-radius:14px;
  background:#fff;
  border:1px solid #dcece6;
  box-shadow:0 8px 20px rgba(15,108,107,.06);
}

.unit-design-page .unit-ai-bubble.teacher{
  justify-self:end;
  max-width:92%;
  background:#f4fffc;
  border-color:#bdeee4;
}

.unit-design-page .unit-ai-bubble.assistant{
  justify-self:start;
  width:100%;
}

.unit-design-page .unit-ai-bubble.pending{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(247,255,252,.94));
}

.unit-design-page .unit-ai-bubble small{
  color:var(--saas-teal);
  font-size:12px;
  font-weight:900;
}

.unit-design-page .unit-ai-message{
  display:grid;
  gap:8px;
}

.unit-design-page .unit-ai-message h4,
.unit-design-page .unit-ai-message h5{
  margin:4px 0 0;
  color:var(--forest);
}

.unit-design-page .unit-ai-message ul,
.unit-design-page .unit-ai-message ol{
  margin:0;
  padding-left:18px;
}

.unit-design-page .unit-ai-resource{
  padding:10px;
  border-radius:14px;
  background:#f7fcfb;
  border:1px solid #dcece6;
}

.unit-design-page .unit-ai-resource-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
}

.unit-design-page .unit-ai-resource-head strong{
  color:var(--forest);
}

.unit-design-page .unit-ai-resource-head span{
  padding:3px 8px;
  border-radius:999px;
  background:#e6fbf7;
  color:#00786f;
  font-size:11px;
  font-weight:900;
}

.unit-design-page .unit-ai-resource ul{
  margin:8px 0 0;
  padding-left:18px;
}

.unit-design-page .unit-ai-writeback{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:2px;
}

.unit-design-page .unit-ai-writeback span,
.unit-design-page .unit-ai-note{
  color:var(--guide);
  font-size:12px;
}

.unit-design-page .unit-ai-thinking{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

.unit-design-page .unit-ai-thinking > span{
  width:14px;
  height:14px;
  flex:0 0 14px;
  margin-top:3px;
  border-radius:999px;
  background:linear-gradient(135deg,#15b8a6,#f4c46b);
  box-shadow:0 0 0 0 rgba(21,184,166,.24);
  animation:unit-ai-pulse 1.35s ease-in-out infinite;
}

.unit-design-page .unit-ai-thinking strong{
  color:var(--forest);
}

@keyframes unit-ai-pulse{
  0%{box-shadow:0 0 0 0 rgba(21,184,166,.28);transform:scale(.9)}
  70%{box-shadow:0 0 0 10px rgba(21,184,166,0);transform:scale(1)}
  100%{box-shadow:0 0 0 0 rgba(21,184,166,0);transform:scale(.9)}
}

.unit-design-page .lesson-map-item{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.unit-design-page .lesson-map-item.compact{
  padding:10px;
}

.unit-design-page .lesson-map-hint{
  margin-top:4px;
}

.unit-design-page .lesson-map-desc{
  margin-top:8px;
  line-height:1.6;
}

.unit-design-page .lesson-map-actions{
  margin-top:8px;
}

.unit-design-page .lesson-map-actions .btn{
  min-height:34px;
  padding:0 12px;
  font-size:12px;
}

.unit-design-page .unit-lesson-table{
  display:grid;
  gap:6px;
}

.unit-design-page .unit-lesson-table-head,
.unit-design-page .unit-lesson-row{
  display:grid;
  grid-template-columns:62px minmax(120px,1fr) minmax(180px,1.4fr) 74px 52px;
  align-items:center;
  gap:10px;
}

.unit-design-page .unit-lesson-table-head{
  color:var(--muted);
  font-size:12px;
  padding:0 8px 2px;
}

.unit-design-page .unit-lesson-row{
  min-height:38px;
  padding:7px 8px;
  border:1px solid rgba(14,128,122,.14);
  border-radius:12px;
  background:rgba(255,255,255,.78);
  box-shadow:0 6px 16px rgba(15,68,61,.05);
  font-size:13px;
}

.unit-design-page .unit-lesson-row strong{
  color:var(--forest);
  white-space:nowrap;
}

.unit-design-page .unit-lesson-focus{
  color:var(--muted);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.unit-design-page .unit-lesson-status{
  justify-self:start;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(22,185,166,.1);
  color:var(--teal);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.unit-design-page .unit-lesson-edit{
  justify-self:end;
  color:var(--teal);
  font-size:12px;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}

.unit-design-page .unit-action-bar{
  display:none !important;
}

.design-center-page .saas-content-row,
.design-drafts-page .saas-content-row,
.design-attach-page .saas-content-row,
.planner-page .grid-2,
.entry-page .grid-2,
.calendar-page .grid-2,
.picker-page .split,
.brief-page .grid-3,
.draft-page .grid-2,
.refine-page .split,
.lesson-design-page .split{
  gap:28px;
}

.lesson-design-page .lesson-identity-item{
  display:grid;
  gap:7px;
  padding:12px;
}
.lesson-design-page .lesson-identity-item label{
  color:var(--forest);
  font-size:12px;
  font-weight:900;
}
.lesson-design-page .lesson-identity-item input,
.lesson-design-page .lesson-identity-item select{
  width:100%;
  min-height:36px;
  border:1px solid #d6e1ee;
  border-radius:10px;
  background:#ffffff;
  color:var(--saas-ink);
  font-size:13px;
  font-weight:800;
  padding:8px 10px;
}
.lesson-design-page .lesson-identity-item input:focus,
.lesson-design-page .lesson-identity-item select:focus{
  outline:none;
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}
.lesson-design-page .lesson-linked-select{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
.lesson-design-page .lesson-linked-select .mini-link{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border:1px solid #dcece6;
  border-radius:10px;
  background:#f8fcfb;
  color:var(--saas-teal);
  font-size:12px;
  font-weight:900;
  text-decoration:none;
}
.lesson-design-page .lesson-linked-select .mini-link:hover{
  background:var(--saas-cyan-lt);
}

.lesson-design-page .lesson-required-panel{
  max-width:1292px;
  margin:14px auto 0;
  padding:18px;
  border:1px solid #f3c777;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(255,249,236,.92), rgba(246,255,252,.86));
  box-shadow:0 12px 28px rgba(173,126,38,.08);
}

.lesson-design-page .lesson-required-head{
  display:block;
  margin-bottom:14px;
}

.lesson-design-page .lesson-required-head h2{
  margin:0 0 6px;
  color:#087b72;
  font-size:17px;
  line-height:1.25;
}

.lesson-design-page .lesson-required-head p{
  margin:0;
  color:#75827f;
  font-size:13px;
  line-height:1.55;
}

.lesson-design-page .lesson-required-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed rgba(202,151,61,.28);
}

.lesson-design-page #lessonRequiredCount{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 11px;
  border-radius:999px;
  background:#fff1cf;
  color:#a56d16;
  font-size:13px;
  font-weight:900;
  white-space:nowrap;
}

.lesson-design-page #lessonRequiredCount.is-ready{
  background:#dff8f3;
  color:#078173;
}

.lesson-design-page .lesson-required-generate-btn,
.lesson-design-page .lesson-ai-adopt-btn{
  min-height:32px;
  padding:0 13px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#0aa89b 0%,#19b7b5 54%,#b08a38 100%);
  color:#fff;
  font-size:14px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  box-shadow:0 12px 24px rgba(17,151,139,.16);
}

.lesson-design-page .lesson-required-checklist{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px;
  border-radius:14px;
  background:rgba(255,255,255,.56);
  border:1px solid rgba(240,189,110,.32);
}

.lesson-design-page .lesson-required-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid #f1c27a;
  background:#fffaf0;
  color:#8a5b16;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}

.lesson-design-page .lesson-required-chip.is-ready{
  border-color:#b8ece3;
  background:#ecfffb;
  color:#078173;
}

.lesson-design-page .lesson-required-chip small{
  font-size:11px;
  opacity:.82;
}

.lesson-design-page .lesson-required-missing{
  border-color:#f0bd6e !important;
  background:#fffaf0 !important;
}

.lesson-design-page .lesson-required-ready{
  border-color:#b8ece3 !important;
  background:#f6fffc !important;
}

.lesson-design-page .lesson-card-title-row,
.lesson-design-page .lesson-inline-tools{
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:space-between;
}

.lesson-design-page .lesson-card-title-row{
  margin-bottom:10px;
}

.lesson-design-page .lesson-card-title-row h2{
  margin:0;
}

.lesson-design-page .field label{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.lesson-design-page .lesson-generate-field-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:0 9px;
  border:1px solid #b9eee5;
  border-radius:999px;
  background:#ffffff;
  color:#078173;
  font-size:11px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  box-shadow:0 4px 10px rgba(17,151,139,.06);
}

.lesson-design-page .lesson-generate-field-btn:hover{
  background:#ecfffb;
  transform:translateY(-1px);
}

.lesson-design-page .lesson-ai-draft-slot{
  margin-top:8px;
}

.lesson-design-page .lesson-ai-draft-slot:empty{
  display:none;
}

.lesson-design-page .lesson-ai-draft-card{
  padding:10px;
  border:1px dashed #f1b964;
  border-radius:14px;
  background:#fffdf6;
}

.lesson-design-page .lesson-ai-draft-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
  margin-bottom:8px;
}

.lesson-design-page .lesson-ai-draft-head strong{
  display:block;
  color:#83570e;
  font-size:13px;
}

.lesson-design-page .lesson-ai-draft-head span{
  display:block;
  margin-top:2px;
  color:#9a7b49;
  font-size:11px;
}

.lesson-design-page .lesson-ai-draft-actions{
  display:flex;
  gap:6px;
  flex-shrink:0;
}

.lesson-design-page .lesson-ai-draft-adopt,
.lesson-design-page .lesson-ai-draft-delete{
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}

.lesson-design-page .lesson-ai-draft-adopt{
  border:1px solid #b8ece3;
  background:#0aa89b;
  color:#fff;
}

.lesson-design-page .lesson-ai-draft-delete{
  border:1px solid #ffd7ca;
  background:#fff7f3;
  color:#b95f40;
}

.lesson-design-page .lesson-ai-draft-card textarea{
  width:100%;
  min-height:82px;
  border:1px solid #ead8b8;
  border-radius:12px;
  background:#fff;
  color:#243f3d;
  padding:9px 10px;
  line-height:1.65;
  resize:vertical;
}

body[data-clean-proto-page="lesson_design"] .lesson-design-page .split{
  max-width:1120px;
  grid-template-columns:minmax(0, 1fr) !important;
}

body[data-clean-proto-page="lesson_design"] .lesson-design-page .split > .section{
  width:100%;
}

.lesson-design-page .lesson-bottom-bar{
  max-width:1120px;
  margin:14px auto 0;
  padding:12px 14px;
  border:1px solid #dcece6;
  border-radius:18px;
  background:rgba(255,255,255,.82);
  box-shadow:0 10px 24px rgba(15,108,107,.07);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.lesson-design-page .lesson-bottom-status{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  color:#72817d;
  font-size:12px;
  line-height:1.5;
}

.lesson-design-page .lesson-bottom-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.lesson-design-page .split,
.draft-page .split,
.refine-page .split,
.picker-page .split,
.calendar-page .grid-2{
  grid-template-columns:minmax(0,960px) 300px;
  justify-content:center;
}

.lesson-design-page .section:last-child,
.draft-page .section:last-child,
.refine-page .section:last-child,
.picker-page .card.status-card,
.calendar-page .card.editor-card{
  width:300px;
  align-self:start;
}

.lesson-design-page .section:last-child .card,
.draft-page .section:last-child .card,
.refine-page .section:last-child .card{
  margin-bottom:16px;
}

.lesson-design-page aside.section,
.draft-page aside.section,
.refine-page aside.section,
.picker-page .card.status-card,
.calendar-page .card.editor-card{
  position:sticky;
  top:88px;
}

.lesson-design-page .process-board{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.lesson-design-page .process-card{
  padding:18px;
  border:1px solid #cfe0ee;
  border-radius:20px;
  background:rgba(255,255,255,.72);
  box-shadow:0 14px 30px rgba(76,130,198,.10);
}

.lesson-design-page .process-card-head{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}

.lesson-design-page .process-card-index{
  min-width:64px;
  padding:8px 10px;
  border-radius:14px;
  background:#dff8f3;
  color:#158b7d;
  font-size:12px;
  font-weight:900;
  text-align:center;
}

.lesson-design-page .process-card-head-fields{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  flex:1;
}

.lesson-design-page .process-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.lesson-design-page .process-card .field.compact label{
  margin-bottom:6px;
}

.lesson-design-page .process-card .field.compact input{
  min-height:42px;
}

.lesson-design-page .process-card textarea{
  min-height:92px;
  resize:vertical;
}

.lesson-design-page .evaluation-dimensions-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.lesson-design-page .evaluation-dimensions-head label{
  margin:0;
}

.lesson-design-page .evaluation-add-btn{
  min-height:32px;
  padding:0 12px;
  border-radius:12px;
  font-size:12px;
  white-space:nowrap;
}

.lesson-design-page .evaluation-dimensions-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.lesson-design-page .evaluation-dimension-field{
  margin:0;
}

.lesson-design-page .evaluation-dimension-row-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
}

.lesson-design-page .evaluation-dimension-row-head label{
  margin:0;
}

.lesson-design-page .evaluation-remove-btn{
  width:24px;
  height:24px;
  border-radius:999px;
  border:1px solid #d6e1ee;
  background:#fff;
  color:#8a91ad;
  line-height:1;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(76,130,198,.08);
  transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.lesson-design-page .evaluation-remove-btn:hover{
  background:#fff4f4;
  border-color:#ffd2d2;
  color:#d86d6d;
  transform:translateY(-1px);
}

.lesson-design-page .evaluation-dimension-field[hidden]{
  display:none;
}

.lesson-design-page .process-card-foot{
  display:flex;
  justify-content:flex-end;
  margin-top:12px;
}

.lesson-design-page .ai-workbench-card,
.unit-design-page .ai-workbench-card{
  margin-bottom:16px;
}

.design-compare-page .compare-summary-bar{
  max-width:1292px;
  margin:0 auto 18px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.design-compare-page .compare-summary-item{
  padding:16px 18px;
  border-radius:18px;
  background:#f7fcfb;
  border:1px solid #dfeeea;
  box-shadow:0 12px 28px rgba(15,108,107,.08);
}

.design-compare-page .compare-summary-item small{
  display:block;
  color:#0f8f86;
  margin-bottom:6px;
}

.design-compare-page .compare-summary-item strong{
  color:var(--forest);
  font-size:15px;
}

.design-compare-page .compare-grid{
  max-width:1292px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px;
}

.design-compare-page .compare-column{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.design-compare-page .compare-field{
  padding:14px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.78);
  border:1px solid #d8e8df;
}

.design-compare-page .compare-field.compare-diff{
  background:#eef9f6;
  border-color:#bde2d6;
}

.design-compare-page .compare-field small{
  display:block;
  margin-bottom:8px;
  color:#0f8f86;
}

.design-compare-page .compare-value{
  color:var(--ink);
  font-size:13px;
  line-height:1.75;
  white-space:normal;
  word-break:break-word;
}

.design-compare-page .compare-empty{
  color:#97a6a1;
}

.design-compare-page .compare-process-card{
  max-width:1292px;
  margin:24px auto 0;
}

.design-compare-page .compare-process-head{
  margin-bottom:14px;
}

.design-compare-page .compare-process-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.design-compare-page .compare-process-board{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.design-compare-page .compare-process-item{
  padding:16px;
  border-radius:18px;
  background:#ffffff;
  border:1px solid #d8e8df;
  box-shadow:0 12px 26px rgba(15,108,107,.08);
}

.design-compare-page .compare-process-item-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.design-compare-page .compare-process-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}

.design-compare-page .compare-process-block{
  margin-top:10px;
  color:var(--ink);
  font-size:13px;
  line-height:1.7;
}

.design-compare-page .compare-process-block small{
  display:block;
  color:#0f8f86;
  margin-bottom:6px;
}

@media (max-width: 1200px){
  .lesson-design-page .process-card-head-fields{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 900px){
  .lesson-design-page .process-grid{
    grid-template-columns:1fr;
  }

  .lesson-design-page .process-card-head{
    flex-direction:column;
  }

  .design-compare-page .compare-grid,
  .design-compare-page .compare-process-grid,
  .design-compare-page .compare-summary-bar{
    grid-template-columns:1fr;
  }
}

.entry-page .grid-2{
  grid-template-columns:minmax(0,960px) 300px;
  justify-content:center;
}

.entry-page .actions-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.brief-page .grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

.calendar-page .grid-2 .card.panel-card,
.picker-page .split .card.panel-card,
.lesson-design-page .split > article.card,
.draft-page .split > article.card,
.refine-page .split > article.card{
  min-width:0;
}

.design-center-page .saas-panel,
.design-drafts-page .saas-panel,
.design-attach-page .saas-panel{
  background:#f7fcfb;
  border-color:#dfeeea;
  box-shadow:0 16px 34px rgba(15,108,107,.10);
}

.entry-page .action-card,
.picker-page .list-item,
.brief-page .card,
.calendar-page .card{
  box-shadow:0 14px 28px rgba(15,108,107,.08);
}

.unit-design-page .unit-action-progress,
.quick-archive-page .unit-action-progress{
  min-width:120px;
  font-size:12px;
  font-weight:600;
  color:var(--saas-teal);
}

.unit-design-page .unit-action-main,
.quick-archive-page .unit-action-main{
  flex:1;
  min-width:0;
}

.unit-design-page .unit-action-main strong,
.quick-archive-page .unit-action-main strong{
  display:block;
  color:var(--forest);
  font-size:14px;
  margin-bottom:2px;
}

.unit-design-page .unit-action-meta,
.quick-archive-page .unit-action-meta{
  margin-top:6px;
  color:#7d8c87;
  line-height:1.55;
}

.unit-design-page .unit-action-buttons,
.quick-archive-page .unit-action-buttons{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}

.saas-stat-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-bottom:24px;
}
.saas-stat-card{
  background:#fdfefe;
  border-radius:16px;
  padding:22px 24px;
  box-shadow:0 14px 30px rgba(15,108,107,.08);
  border:1px solid #dfeeea;
  display:flex;
  align-items:center;
  gap:18px;
}
.saas-stat-icon{
  width:46px;
  height:46px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  color:var(--saas-ink-2);
}
.saas-stat-icon svg,
.saas-draft-icon svg,
.saas-empty-icon svg{
  width:20px;
  height:20px;
  display:block;
}
.saas-stat-icon.purple{background:var(--saas-purple-lt)}
.saas-stat-icon.teal{background:var(--saas-teal-lt)}
.saas-stat-icon.orange{background:var(--saas-orange-lt)}
.saas-stat-number{
  font-size:30px;
  line-height:1;
  font-weight:700;
  color:var(--saas-ink);
  letter-spacing:-.03em;
  margin-bottom:4px;
}
.saas-stat-label{
  font-size:12px;
  color:var(--saas-ink-3);
}
.saas-stat-sublabel{
  font-size:11px;
  color:var(--saas-ink-3);
  margin-top:2px;
}

.saas-content-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-bottom:20px;
}
.saas-panel{
  background:#f7fcfb;
  border-radius:16px;
  border:1px solid #dfeeea;
  box-shadow:0 16px 34px rgba(15,108,107,.10);
  overflow:hidden;
}
.saas-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:20px 22px 16px;
  border-bottom:1px solid var(--saas-line);
}
.saas-panel-head-left small{
  display:block;
  margin-bottom:2px;
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#0f8f86;
}
.saas-panel-head-left h2{
  margin:0;
  font-size:16px;
  font-weight:600;
  color:var(--forest);
}
.saas-panel-note{
  margin-top:6px;
  font-size:12px;
  color:var(--saas-ink-3);
  line-height:1.45;
}
.saas-panel-body{
  padding:8px 22px;
}
.saas-recent-panel{
  background:#f7fcfb;
  border-radius:16px;
  border:1px solid #dfeeea;
  box-shadow:0 16px 34px rgba(15,108,107,.10);
  overflow:hidden;
}

.saas-list-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:14px 0;
  border-bottom:1px solid #e4efeb;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.saas-list-item:last-child{
  border-bottom:none;
}
.saas-list-item-selectable{
  cursor:pointer;
  padding-inline:12px;
  margin-inline:-12px;
  border-radius:14px;
}
.saas-list-item-selectable:hover{
  background:#f7fcfb;
}
.saas-list-item-selectable.active-unit{
  background:var(--saas-cyan-lt);
  border-bottom-color:transparent;
  box-shadow:inset 0 0 0 1px rgba(35,198,197,.14);
}
.saas-item-color-bar{
  width:4px;
  border-radius:4px;
  align-self:stretch;
  flex-shrink:0;
  margin-top:2px;
  background:var(--saas-purple);
}
.saas-item-color-bar.teal{background:var(--saas-teal)}
.saas-item-color-bar.orange{background:var(--saas-orange)}
.saas-item-color-bar.rose{background:var(--saas-rose)}
.saas-item-body{
  flex:1;
  min-width:0;
}
.saas-item-title{
  font-size:13.5px;
  font-weight:600;
  color:var(--saas-ink);
  margin-bottom:2px;
}
.saas-item-meta{
  font-size:11px;
  color:var(--saas-ink-3);
  margin-bottom:6px;
}
.saas-item-desc{
  font-size:12px;
  color:var(--saas-ink-2);
  line-height:1.5;
  margin-bottom:10px;
}
.saas-inline-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.saas-meta-chip{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  background:#f2fbf8;
  border:1px solid #d8ebe4;
  color:#6e8883;
  font-size:11px;
  font-weight:700;
}
.saas-item-foot{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.saas-pill{
  display:inline-flex;
  align-items:center;
  padding:3px 10px;
  border-radius:100px;
  font-size:11px;
  font-weight:500;
  white-space:nowrap;
}
.saas-pill.purple{background:var(--saas-purple-lt);color:var(--saas-purple)}
.saas-pill.teal{background:var(--saas-teal-lt);color:var(--saas-teal)}
.saas-pill.orange{background:var(--saas-orange-lt);color:var(--saas-orange)}
.saas-pill.grey{background:var(--saas-surface-2);color:var(--saas-ink-3);border:1px solid var(--saas-line)}
.saas-pill.green{background:#e4f8f6;color:#0f9f96}
.saas-pill.amber{background:#fff3db;color:#b07800}
.saas-item-btn{
  display:inline-flex;
  align-items:center;
  padding:4px 12px;
  border-radius:6px;
  font-size:11px;
  font-weight:500;
  background:var(--saas-cyan-lt);
  color:var(--saas-cyan);
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.saas-item-btn:hover{
  background:var(--saas-cyan);
  color:#fff;
  transform:translateY(-1px) scale(1.02);
  box-shadow:0 6px 18px rgba(15,159,150,.20);
}
.saas-item-btn.filled{
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  color:#fff;
  box-shadow:0 4px 14px rgba(15,159,150,.24);
}
.saas-item-btn.filled:hover{
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  color:#fff;
  transform:translateY(-2px) scale(1.025);
  box-shadow:0 8px 22px rgba(15,159,150,.30);
}

.design-center-page .unit-directory-card{
  display:block;
  padding:12px;
  margin-inline:-8px;
}

.design-center-page .design-overview-workbench{
  width:100%;
  max-width:1292px;
  margin:0 auto 18px;
  overflow:hidden;
  padding-top:4px;
}

.design-center-page .design-overview-tabs{
  display:flex;
  align-items:flex-end;
  gap:10px;
  margin:0 0 -1px 34px;
  position:relative;
  z-index:3;
}

.design-center-page .design-overview-tab{
  position:relative;
  width:132px;
  min-height:40px;
  padding:0 22px 2px;
  border-radius:20px 20px 0 0;
  border:1px solid #c9e9e3;
  border-bottom:0;
  background:linear-gradient(180deg,#f7fcfb 0%,#e8f7f3 100%);
  color:#4f807a;
  font-size:14px;
  font-weight:900;
  cursor:pointer;
  transform:none;
  box-shadow:0 -4px 12px rgba(15,108,107,.045);
  transition:background .18s ease, box-shadow .18s ease, transform .18s ease, color .18s ease, border-color .18s ease;
}

.design-center-page .design-overview-tab + .design-overview-tab{
  margin-left:0;
}

.design-center-page .design-overview-tab:hover{
  transform:translateY(-2px);
  background:linear-gradient(180deg,#ffffff 0%,#edf9f6 100%);
  box-shadow:0 -8px 18px rgba(15,108,107,.08);
}

.design-center-page .design-overview-tab.active{
  color:#075d59;
  border-color:#b9eee5;
  background:#f7fcfb;
  transform:none;
  box-shadow:0 -10px 24px rgba(15,108,107,.08);
  z-index:2;
}

.design-center-page .design-overview-tab.active::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  background:#f7fcfb;
}

.design-center-page .design-overview-tab:focus-visible{
  outline:3px solid rgba(45,200,168,.18);
  outline-offset:2px;
}

.design-center-page .design-overview-single-card{
  min-height:560px;
  position:relative;
  z-index:1;
}

.design-center-page .design-overview-card-head{
  padding:22px 24px 16px;
  background:rgba(255,255,255,.50);
}

.design-center-page .design-overview-pane{
  display:none;
  padding:10px 24px 24px;
}

.design-center-page .design-overview-pane.active{
  display:block;
}

.design-center-page .design-overview-column{
  display:grid;
  align-content:start;
  gap:10px;
}

.design-center-page .design-section-label{
  width:max-content;
  padding:8px 14px;
  border-radius:999px;
  background:#dff8f3;
  border:1px solid #b9eee5;
  color:var(--forest);
  font-size:13px;
  font-weight:900;
  box-shadow:0 10px 24px rgba(15,108,107,.08);
}

.design-center-page .design-panel-toolbar{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.design-center-page .design-count-chip{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  padding:0 12px;
  border-radius:999px;
  background:#f2fbf8;
  border:1px solid #d7eee8;
  color:#0f6c6b;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.design-center-page .unit-card-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}

.design-center-page .unit-card-row.lesson-card-row{
  grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;
}

.design-center-page .unit-grade-badge{
  min-width:52px;
  height:30px;
  display:inline-grid;
  place-items:center;
  padding:0 10px;
  border-radius:12px;
  color:#fff;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(35,198,197,.16);
}

.design-center-page .unit-grade-badge.purple{background:linear-gradient(135deg,#8b7cf6,#6d5df3)}
.design-center-page .unit-grade-badge.teal{background:linear-gradient(135deg,#22c7bd,#0f9f98)}
.design-center-page .unit-grade-badge.orange{background:linear-gradient(135deg,#ff9c65,#f0783f)}
.design-center-page .unit-grade-badge.rose{background:linear-gradient(135deg,#ff6f91,#e94e78)}

.design-center-page .lesson-directory-card{
  display:block;
  padding:10px;
  margin-inline:-6px;
}

.design-center-page .lesson-card-markers{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  max-width:270px;
}

.design-center-page .lesson-unit-chip,
.design-center-page .lesson-step-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:26px;
  border-radius:8px;
  border:1px solid transparent;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
  line-height:1;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.design-center-page .lesson-unit-chip{
  max-width:156px;
  padding:0 9px;
  overflow:hidden;
  text-overflow:ellipsis;
  justify-content:flex-start;
  box-shadow:0 5px 12px rgba(15,108,107,.06);
}

.design-center-page .lesson-step-chip{
  flex:0 0 auto;
  padding:0 8px;
  color:#0f6c6b;
  background:#f2fbf8;
  border-color:#d3ede7;
}

.design-center-page .lesson-directory-card:hover .lesson-unit-chip,
.design-center-page .lesson-directory-card:hover .lesson-step-chip{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(15,108,107,.10);
}

.design-center-page .lesson-unit-chip.tone-1{background:#dff8f3;border-color:#aee8dd;color:#075d59}
.design-center-page .lesson-unit-chip.tone-2{background:#d9f5fb;border-color:#a9e0ec;color:#0c6676}
.design-center-page .lesson-unit-chip.tone-3{background:#def8f5;border-color:#aee8e0;color:#0a6d68}
.design-center-page .lesson-unit-chip.tone-4{background:#def2ff;border-color:#b0dff2;color:#0e6686}
.design-center-page .lesson-unit-chip.tone-5{background:#d8fbf8;border-color:#a7e9e2;color:#08746f}
.design-center-page .lesson-unit-chip.tone-6{background:#e7f7fb;border-color:#c1e8f0;color:#287085}
.design-center-page .lesson-unit-chip.tone-7{background:#d5f3ef;border-color:#acdcd5;color:#206c66}
.design-center-page .lesson-unit-chip.tone-8{background:#ecfbfa;border-color:#c2eee9;color:#087c76}

.design-center-page .unit-card-title{
  min-width:0;
  color:var(--forest);
  font-size:14px;
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.design-center-page .unit-card-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.design-center-page .unit-card-actions .saas-item-btn{
  min-height:30px;
  padding:0 10px;
  border-radius:10px;
  font-size:11px;
  white-space:nowrap;
}

.design-center-page .unit-card-preview{
  margin-top:10px;
  padding:11px;
  border-radius:14px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(188,224,216,.88);
}

.design-center-page .unit-preview-head{
  margin:12px 0 8px;
  color:#79918d;
  font-size:12px;
  font-weight:900;
}

.design-center-page .unit-preview-meta{
  margin-bottom:6px;
  color:#91a7a2;
  font-size:11px;
  font-weight:800;
}

.design-center-page .unit-preview-desc{
  margin-bottom:10px;
  color:var(--saas-ink-2);
  font-size:11px;
  line-height:1.55;
}

.design-center-page .unit-preview-chips{
  margin-bottom:10px;
}

.design-center-page .unit-preview-status{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.design-center-page .unit-preview-lessons{
  display:grid;
  gap:8px;
}

.design-center-page .unit-preview-lesson{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:12px;
  background:#f7fcfb;
  color:var(--saas-ink);
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.design-center-page .unit-preview-lesson:hover{
  transform:translateY(-1px);
  background:#eefbf8;
  box-shadow:0 8px 18px rgba(15,108,107,.10);
}

.design-center-page .unit-preview-lesson span{
  color:#0f8f86;
  font-size:11px;
  font-weight:900;
}

.design-center-page .unit-preview-lesson strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
}

.design-center-page .unit-preview-empty{
  color:#8a94ba;
  font-size:12px;
}

.saas-draft-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 22px;
  border-bottom:1px solid #e4efeb;
}
.saas-draft-item:last-child{
  border-bottom:none;
}
.saas-draft-icon{
  width:34px;
  height:34px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  color:var(--saas-ink-2);
}
.saas-draft-icon.unit{background:var(--saas-purple-lt)}
.saas-draft-icon.lesson{background:var(--saas-teal-lt)}
.saas-draft-body{
  flex:1;
  min-width:0;
}
.saas-draft-title{
  font-size:13px;
  font-weight:600;
  color:var(--saas-ink);
}
.saas-draft-type{
  font-size:11px;
  color:var(--saas-ink-3);
  margin-top:1px;
}
.saas-draft-time{
  font-size:11px;
  color:var(--saas-ink-3);
  white-space:nowrap;
}

.saas-empty{
  text-align:center;
  padding:40px;
  color:var(--saas-ink-3);
  font-size:13px;
}
.saas-empty-icon{
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:10px;
  margin-inline:auto;
  color:var(--saas-ink-3);
}

body[data-clean-proto-page="design_center"] .design-saas .page-head,
body[data-clean-proto-page="design_center"] .design-saas .entry-brand-hero,
body[data-clean-proto-page="design_center"] .design-saas .saas-stat-row,
body[data-clean-proto-page="design_center"] .design-saas .saas-content-row,
body[data-clean-proto-page="design_center"] .design-saas .design-overview-workbench,
body[data-clean-proto-page="design_center"] .design-saas .saas-recent-panel,
body[data-clean-proto-page="design_drafts"] .design-saas .page-head,
body[data-clean-proto-page="design_drafts"] .design-saas .saas-content-row,
body[data-clean-proto-page="design_attach"] .design-saas .page-head,
body[data-clean-proto-page="design_attach"] .design-saas .saas-content-row,
body[data-clean-proto-page="entry"] .design-saas .page-head,
body[data-clean-proto-page="entry"] .design-saas .entry-brand-hero,
body[data-clean-proto-page="entry"] .design-saas .hero,
body[data-clean-proto-page="entry"] .design-saas .actions-grid,
body[data-clean-proto-page="entry"] .design-saas .grid-2,
body[data-clean-proto-page="calendar"] .design-saas .page-head,
body[data-clean-proto-page="calendar"] .design-saas .hero,
body[data-clean-proto-page="calendar"] .design-saas .grid-2,
body[data-clean-proto-page="picker"] .design-saas .page-head,
body[data-clean-proto-page="picker"] .design-saas .hero,
body[data-clean-proto-page="picker"] .design-saas .split,
body[data-clean-proto-page="classroom"] .design-saas .page-head,
body[data-clean-proto-page="classroom"] .design-saas .hero,
body[data-clean-proto-page="classroom"] .design-saas .identity-strip,
body[data-clean-proto-page="classroom"] .design-saas .split,
body[data-clean-proto-page="assignments"] .design-saas .page-head,
body[data-clean-proto-page="assignments"] .design-saas .identity-strip,
body[data-clean-proto-page="assignments"] .design-saas .split,
body[data-clean-proto-page="evaluation"] .design-saas .page-head,
body[data-clean-proto-page="evaluation"] .design-saas .identity-strip,
body[data-clean-proto-page="evaluation"] .design-saas .split,
body[data-clean-proto-page="class_record"] .design-saas .page-head,
body[data-clean-proto-page="class_record"] .design-saas .identity-strip,
body[data-clean-proto-page="class_record"] .design-saas .split,
body[data-clean-proto-page="brief"] .design-saas .page-head,
body[data-clean-proto-page="brief"] .design-saas .hero,
body[data-clean-proto-page="brief"] .design-saas .identity-strip,
body[data-clean-proto-page="brief"] .design-saas .grid-3,
body[data-clean-proto-page="brief"] .design-saas .status-card,
body[data-clean-proto-page="draft"] .design-saas .page-head,
body[data-clean-proto-page="draft"] .design-saas .identity-strip,
body[data-clean-proto-page="draft"] .design-saas .grid-2,
body[data-clean-proto-page="refine"] .design-saas .page-head,
body[data-clean-proto-page="refine"] .design-saas .identity-strip,
body[data-clean-proto-page="refine"] .design-saas .split,
body[data-clean-proto-page="lesson_design"] .design-saas .page-head,
body[data-clean-proto-page="lesson_design"] .design-saas .identity-strip,
body[data-clean-proto-page="lesson_design"] .design-saas .split{
  max-width:1292px;
  margin-left:auto;
  margin-right:auto;
}

@media (max-width: 900px){
  .entry-page .entry-brand-hero,
  .design-center-page .entry-brand-hero{
    grid-template-columns:1fr;
    gap:16px;
    padding:20px;
  }

  .entry-page .entry-brand-copy h1,
  .design-center-page .entry-brand-copy h1{
    font-size:28px;
  }

  .entry-page .entry-brand-tags,
  .design-center-page .entry-brand-tags{
    justify-content:flex-start;
  }

  .entry-page .command-board{
    grid-template-columns:1fr;
  }

  .entry-page .command-stat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-left:0;
    border-top:1px solid #dcece6;
  }

  .quick-archive-page .quick-form-grid,
  .quick-archive-page .quick-form-grid.three,
  .quick-archive-page .quick-dim-grid,
  .quick-archive-page .process-mini-card,
  .refine-page .quick-form-grid,
  .refine-page .quick-form-grid.three,
  .refine-page .quick-dim-grid,
  .refine-page .process-mini-card{
    grid-template-columns:1fr;
  }
}

body[data-clean-proto-page="design_center"] .design-saas .saas-content-row,
body[data-clean-proto-page="design_drafts"] .design-saas .saas-content-row,
body[data-clean-proto-page="design_attach"] .design-saas .saas-content-row{
  gap:24px;
}

body[data-clean-proto-page="lesson_design"] .design-saas .split,
body[data-clean-proto-page="draft"] .design-saas .grid-2,
body[data-clean-proto-page="refine"] .design-saas .split,
body[data-clean-proto-page="classroom"] .design-saas .split,
body[data-clean-proto-page="assignments"] .design-saas .split,
body[data-clean-proto-page="evaluation"] .design-saas .split,
body[data-clean-proto-page="class_record"] .design-saas .split{
  grid-template-columns:minmax(0,960px) 300px;
  gap:32px;
}

body[data-clean-proto-page="picker"] .design-saas .split,
body[data-clean-proto-page="calendar"] .design-saas .grid-2{
  grid-template-columns:minmax(0,960px) 300px;
  gap:32px;
}

body[data-clean-proto-page="lesson_design"] .design-saas .split > aside,
body[data-clean-proto-page="draft"] .design-saas .grid-2 > aside,
body[data-clean-proto-page="refine"] .design-saas .split > aside,
body[data-clean-proto-page="classroom"] .design-saas .split > aside,
body[data-clean-proto-page="assignments"] .design-saas .split > aside,
body[data-clean-proto-page="evaluation"] .design-saas .split > aside,
body[data-clean-proto-page="class_record"] .design-saas .split > aside{
  position:sticky;
  top:88px;
  align-self:start;
  width:300px;
}

body[data-clean-proto-page="lesson_design"] .design-saas .editor-card,
body[data-clean-proto-page="draft"] .design-saas .editor-card,
body[data-clean-proto-page="refine"] .design-saas .editor-card,
body[data-clean-proto-page="classroom"] .design-saas .editor-card,
body[data-clean-proto-page="evaluation"] .design-saas .editor-card,
body[data-clean-proto-page="class_record"] .design-saas .editor-card{
  background:#ffffff;
  border-color:var(--saas-line);
  box-shadow:var(--saas-shadow);
}

body[data-clean-proto-page="lesson_design"] .design-saas .panel-card,
body[data-clean-proto-page="draft"] .design-saas .panel-card,
body[data-clean-proto-page="refine"] .design-saas .panel-card,
body[data-clean-proto-page="picker"] .design-saas .panel-card,
body[data-clean-proto-page="calendar"] .design-saas .panel-card,
body[data-clean-proto-page="classroom"] .design-saas .panel-card,
body[data-clean-proto-page="assignments"] .design-saas .panel-card,
body[data-clean-proto-page="evaluation"] .design-saas .panel-card,
body[data-clean-proto-page="class_record"] .design-saas .panel-card{
  background:#ffffff;
  border-color:var(--saas-line);
  box-shadow:var(--saas-shadow);
}

body[data-clean-proto-page="lesson_design"] .design-saas .status-card,
body[data-clean-proto-page="draft"] .design-saas .status-card,
body[data-clean-proto-page="refine"] .design-saas .status-card,
body[data-clean-proto-page="picker"] .design-saas .status-card,
body[data-clean-proto-page="calendar"] .design-saas .status-card,
body[data-clean-proto-page="brief"] .design-saas .status-card,
body[data-clean-proto-page="classroom"] .design-saas .status-card,
body[data-clean-proto-page="assignments"] .design-saas .status-card,
body[data-clean-proto-page="evaluation"] .design-saas .status-card,
body[data-clean-proto-page="class_record"] .design-saas .status-card{
  background:#ffffff;
  border-color:var(--saas-line);
  box-shadow:var(--saas-shadow);
}

body[data-clean-proto-page="lesson_design"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="lesson_design"] .design-saas .status-card .list-item,
body[data-clean-proto-page="draft"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="draft"] .design-saas .status-card .list-item,
body[data-clean-proto-page="refine"] .design-saas .status-card .list-item,
body[data-clean-proto-page="picker"] .design-saas .status-card .list-item,
body[data-clean-proto-page="calendar"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="brief"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="brief"] .design-saas .status-card .list-item,
body[data-clean-proto-page="classroom"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="classroom"] .design-saas .status-card .list-item,
body[data-clean-proto-page="assignments"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="assignments"] .design-saas .status-card .list-item,
body[data-clean-proto-page="evaluation"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="evaluation"] .design-saas .status-card .list-item,
body[data-clean-proto-page="class_record"] .design-saas .panel-card .list-item,
body[data-clean-proto-page="class_record"] .design-saas .status-card .list-item{
  background:rgba(255,255,255,.92);
  border:1px solid #dcece6;
}

body[data-clean-proto-page="lesson_design"] .design-saas .field textarea,
body[data-clean-proto-page="lesson_design"] .design-saas .field input,
body[data-clean-proto-page="draft"] .design-saas .field textarea,
body[data-clean-proto-page="refine"] .design-saas .field textarea,
body[data-clean-proto-page="classroom"] .design-saas .field textarea,
body[data-clean-proto-page="evaluation"] .design-saas .field textarea,
body[data-clean-proto-page="class_record"] .design-saas .field textarea,
body[data-clean-proto-page="calendar"] .design-saas .field textarea,
body[data-clean-proto-page="calendar"] .design-saas .field input,
body[data-clean-proto-page="calendar"] .design-saas .field select{
  background:#ffffff;
  border:1px solid #d6e1ee;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 2px 8px rgba(144,163,196,.06);
}

body[data-clean-proto-page="lesson_design"] .design-saas .field textarea:focus,
body[data-clean-proto-page="lesson_design"] .design-saas .field input:focus,
body[data-clean-proto-page="draft"] .design-saas .field textarea:focus,
body[data-clean-proto-page="refine"] .design-saas .field textarea:focus,
body[data-clean-proto-page="classroom"] .design-saas .field textarea:focus,
body[data-clean-proto-page="evaluation"] .design-saas .field textarea:focus,
body[data-clean-proto-page="class_record"] .design-saas .field textarea:focus,
body[data-clean-proto-page="calendar"] .design-saas .field textarea:focus,
body[data-clean-proto-page="calendar"] .design-saas .field input:focus,
body[data-clean-proto-page="calendar"] .design-saas .field select:focus{
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}

.quick-archive-page #content.section,
.quick-archive-page .quick-archive-layout,
.quick-archive-page .quick-archive-main{
  width:100%;
}

.quick-archive-page #content.section{
  justify-self:stretch;
}

.quick-archive-page .quick-archive-aside{
  width:300px;
}

@media (max-width: 1280px){
  .quick-archive-page .quick-archive-aside{
    width:280px;
  }
}

.refine-page #refineContent.section,
.refine-page .refine-workbench-layout,
.refine-page .refine-main-card{
  width:100%;
}

.refine-page #refineContent.section{
  justify-self:stretch;
}

.refine-page .refine-workbench-layout{
  align-items:start;
}

.refine-page .refine-workbench-aside{
  width:300px;
  display:grid;
  gap:16px;
}

.refine-page .refine-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}

.refine-page .refine-card-head small{
  display:block;
  margin-bottom:4px;
  color:#0f8f86;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.refine-page .refine-card-head h2{
  margin:0;
  color:var(--forest);
}

.refine-page .refine-card-head span{
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  color:#0f6c6b;
  background:#e4fbf8;
  border:1px solid #bfece5;
  font-size:12px;
  font-weight:900;
}

.refine-page .refine-card-head.compact{
  margin-bottom:12px;
}

.refine-page .refine-main-card textarea{
  min-height:124px;
}

.refine-page .refine-main-card #mainTask{
  min-height:220px;
}

.refine-page #classAdjust{
  min-height:116px;
}

.refine-page .refine-subsection{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #d9ebe5;
}

.refine-page .quick-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.refine-page .quick-form-grid.three{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.refine-page .process-mini-list{
  display:grid;
  gap:12px;
}

.refine-page .process-mini-card{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:12px;
  padding:12px;
  border-radius:18px;
  border:1px solid #d9ebe5;
  background:rgba(255,255,255,.86);
}

.refine-page .process-mini-title{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.refine-page .process-mini-title span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(135deg,var(--saas-cyan),var(--saas-cyan-2));
  font-size:12px;
  font-weight:900;
}

.refine-page .process-mini-title strong{
  color:var(--forest);
  font-size:14px;
}

.refine-page .process-mini-card textarea{
  min-height:94px;
}

.refine-page .quick-dim-head{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid #d9ebe5;
}

.refine-page .quick-dim-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}

.refine-page .quick-dim-item{
  display:grid;
  gap:6px;
  padding:10px;
  border:1px solid #d9ebe5;
  border-radius:16px;
  background:rgba(255,255,255,.82);
}

.refine-page .quick-dim-item label{
  color:#0f8f86;
  font-size:12px;
  font-weight:900;
}

.refine-page .quick-dim-item input{
  min-height:38px;
  padding:8px 10px;
  border:1px solid #d6e1ee;
  border-radius:12px;
  background:#fff;
  color:#243356;
}

.refine-page .quick-dim-item select{
  min-height:38px;
  padding:8px 10px;
  border:1px solid #d6e1ee;
  border-radius:12px;
  background:#fff;
  color:#42615e;
  font-weight:800;
}

.refine-page .quick-dim-item input:focus,
.refine-page .quick-dim-item select:focus{
  outline:none;
  border-color:var(--saas-teal);
  box-shadow:0 0 0 3px rgba(45,200,168,.12);
}

body[data-clean-proto-page="brief"] .design-saas .grid-3{
  gap:20px;
}

.class-record-page .record-analytics-card{
  overflow:hidden;
}

.class-record-page .record-chart-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:14px;
}

.class-record-page .record-chart-panel{
  background:rgba(255,255,255,.88);
  border:1px solid #dcece6;
  border-radius:22px;
  padding:16px;
  min-height:220px;
}

.class-record-page .chart-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
  color:#0f6c6b;
}

.class-record-page .chart-title strong{
  font-size:16px;
}

.class-record-page .chart-title span{
  color:#8a94ba;
  font-size:12px;
  white-space:nowrap;
}

.class-record-page .record-bar-chart{
  display:grid;
  gap:12px;
}

.class-record-page .record-bar-row{
  display:grid;
  gap:6px;
}

.class-record-page .record-bar-label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-size:13px;
  color:#243356;
}

.class-record-page .record-bar-label span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.class-record-page .record-bar-label em{
  color:#0f8f82;
  font-style:normal;
  font-weight:800;
}

.class-record-page .record-bar-track{
  height:10px;
  border-radius:999px;
  background:#e8f3ef;
  overflow:hidden;
}

.class-record-page .record-bar-track span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#2dc8c3,#0f9f98);
  box-shadow:0 8px 16px rgba(45,200,195,.22);
}

.class-record-page .record-quality-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.class-record-page .record-donut-card{
  display:grid;
  place-items:center;
  gap:10px;
  min-height:154px;
  border-radius:18px;
  background:#f7fcfa;
  border:1px solid #dcece6;
  text-align:center;
}

.class-record-page .record-donut-card strong{
  color:#0f6c6b;
  font-size:13px;
}

.class-record-page .record-donut{
  width:86px;
  height:86px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at center,#fff 58%,transparent 59%),
    conic-gradient(#25c7c1 var(--value),#e6f2ee 0);
  box-shadow:0 14px 28px rgba(15,108,107,.12);
}

.class-record-page .record-donut span{
  color:#0f6c6b;
  font-weight:900;
}

body[data-clean-proto-page="lesson_design"] .design-saas .identity-strip,
body[data-clean-proto-page="draft"] .design-saas .identity-strip,
body[data-clean-proto-page="refine"] .design-saas .identity-strip,
body[data-clean-proto-page="brief"] .design-saas .identity-strip,
body[data-clean-proto-page="classroom"] .design-saas .identity-strip,
body[data-clean-proto-page="assignments"] .design-saas .identity-strip,
body[data-clean-proto-page="evaluation"] .design-saas .identity-strip,
body[data-clean-proto-page="class_record"] .design-saas .identity-strip{
  margin-bottom:16px;
}

@media (max-width:1000px){
  .design-saas .execution-flow,
  .saas-stat-row,
  .saas-content-row,
  body[data-clean-proto-page="lesson_design"] .design-saas .split,
  body[data-clean-proto-page="draft"] .design-saas .grid-2,
  body[data-clean-proto-page="refine"] .design-saas .split,
  body[data-clean-proto-page="picker"] .design-saas .split,
  body[data-clean-proto-page="calendar"] .design-saas .grid-2,
  body[data-clean-proto-page="classroom"] .design-saas .split,
  body[data-clean-proto-page="assignments"] .design-saas .split,
  body[data-clean-proto-page="evaluation"] .design-saas .split,
  body[data-clean-proto-page="class_record"] .design-saas .split,
  .knowledge-base-page .knowledge-layout,
  .knowledge-assets-home-page .knowledge-home-layout,
  .course-knowledge-page .course-knowledge-layout,
  .lesson-assets-page .lesson-asset-layout,
  .lesson-assets-page .lesson-library-layout,
  .lesson-transfer-page .lesson-transfer-simple-layout{
    grid-template-columns:1fr;
  }
  .knowledge-base-page .kb-form-grid .field.wide{
    grid-column:auto;
  }
  .knowledge-base-page .kb-file-editor-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .knowledge-base-page .kb-file-row{
    grid-template-columns:1fr;
  }
  .knowledge-base-page .kb-file-name{
    white-space:normal;
  }
  .course-knowledge-page .current-knowledge-sidebar,
  .lesson-assets-page .lesson-asset-side,
  .lesson-assets-page .lesson-library-detail-card{
    position:static;
  }
  .lesson-assets-page .lesson-asset-flow,
  .knowledge-assets-home-page .knowledge-home-stat-grid,
  .lesson-assets-page .lesson-transfer-item .lesson-asset-card-list,
  .lesson-transfer-page .lesson-transfer-counts,
  .lesson-transfer-page .lesson-parse-log{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .profile-page .profile-workbench,
  .profile-page .profile-panel-grid,
  .profile-page .avatar-studio{
    grid-template-columns:1fr;
  }
  .profile-page .avatar-image-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .profile-page .profile-bookmarks{
    min-height:0;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-right:0;
    border-bottom:1px solid #dcece6;
  }
  .profile-page .profile-pages{
    min-height:0;
    padding:22px;
  }
  .profile-page .profile-panel-head.split-head{
    display:grid;
  }
  body[data-clean-proto-page="lesson_design"] .design-saas .split > aside,
  body[data-clean-proto-page="draft"] .design-saas .grid-2 > aside,
  body[data-clean-proto-page="refine"] .design-saas .split > aside,
  body[data-clean-proto-page="classroom"] .design-saas .split > aside,
  body[data-clean-proto-page="assignments"] .design-saas .split > aside,
  body[data-clean-proto-page="evaluation"] .design-saas .split > aside,
  body[data-clean-proto-page="class_record"] .design-saas .split > aside{
    position:static;
    width:auto;
  }
  .quick-archive-page .quick-action-bar{
    align-items:stretch;
    flex-direction:column;
  }
  .quick-archive-page .unit-action-buttons{
    justify-content:flex-start;
  }
  .class-record-page .record-chart-grid,
  .class-record-page .record-quality-row{
    grid-template-columns:1fr;
  }
}

@media (max-width:1180px){
  .teaching-home-page .home-metric-grid,
  .teaching-home-page .task-column-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .teaching-home-page .home-main-grid{
    grid-template-columns:1fr;
  }
  .teaching-home-page .semester-strip{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .teaching-home-page .semester-cell:nth-child(9n){
    border-right:1px solid var(--home-line);
  }
  .teaching-home-page .semester-cell:nth-child(6n){
    border-right:none;
  }
  .teaching-home-page .week-agenda-grid,
  .teaching-home-page .day-overview-shell{
    grid-template-columns:1fr;
  }
}

@media (max-width:760px){
  .teaching-home-page .home-topbar,
  .teaching-home-page .home-top-actions,
  .teaching-home-page .home-card-head{
    align-items:stretch;
    flex-direction:column;
  }
  .teaching-home-page .home-search,
  .teaching-home-page #semesterSelect{
    width:100%;
  }
  .teaching-home-page .home-metric-grid,
  .teaching-home-page .task-column-grid{
    grid-template-columns:1fr;
  }
  .teaching-home-page .home-metric-card{
    grid-template-columns:48px minmax(0,1fr);
  }
  .teaching-home-page .metric-ring{
    display:none;
  }
  .teaching-home-page .home-view-switch{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .teaching-home-page .semester-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .teaching-home-page .month-overview-grid,
  .teaching-home-page .week-overview-summary,
  .teaching-home-page .week-agenda-grid,
  .lesson-assets-page .lesson-asset-flow,
  .knowledge-assets-home-page .knowledge-home-stat-grid,
  .lesson-assets-page .lesson-transfer-item .lesson-asset-card-list,
  .lesson-transfer-page .lesson-transfer-counts,
  .lesson-transfer-page .lesson-parse-log{
    grid-template-columns:1fr;
  }
  .knowledge-assets-home-page .knowledge-asset-table-head{
    display:none;
  }
  .knowledge-assets-home-page .knowledge-asset-table-row{
    grid-template-columns:1fr 1fr;
  }
  .knowledge-assets-home-page .knowledge-asset-table-row strong,
  .knowledge-assets-home-page .knowledge-asset-table-row small{
    grid-column:1 / -1;
  }
  .lesson-assets-page .lesson-transfer-item,
  .lesson-assets-page .lesson-library-item,
  .lesson-transfer-page .lesson-file-row{
    grid-template-columns:1fr;
  }
  .lesson-assets-page .lesson-transfer-actions{
    justify-content:flex-start;
  }
  .teaching-home-page .overview-task-line,
  .teaching-home-page .day-timeline-item{
    grid-template-columns:minmax(0,1fr);
    align-items:start;
  }
  .teaching-home-page .overview-task-line em,
  .teaching-home-page .day-timeline-item em{
    width:max-content;
  }
  .teaching-home-page .week-lesson-chip{
    grid-template-columns:48px minmax(0,1fr);
  }
  .teaching-home-page .week-lesson-chip em{
    grid-column:1 / -1;
    white-space:normal;
  }
  .teaching-home-page .semester-cell:nth-child(6n){
    border-right:1px solid var(--home-line);
  }
  .teaching-home-page .semester-cell:nth-child(2n){
    border-right:none;
  }
}

/* 全局统一层 · 以备课工作台为基准 */
.design-saas{
  --saas-bg:#f5f2ea;
  --saas-surface:#fffefa;
  --saas-surface-2:#f2fbfa;
  --saas-cyan:#087b73;
  --saas-cyan-2:#18a7aa;
  --saas-cyan-lt:#e8f6f4;
  --saas-teal:#087b73;
  --saas-teal-lt:#e4f8f5;
  --saas-ink:#173332;
  --saas-ink-2:#607876;
  --saas-ink-3:#7b8d8a;
  --saas-line:#d9e9e6;
  --saas-shadow-sm:0 10px 22px rgba(75,62,39,.055);
  --saas-shadow:0 16px 34px rgba(75,62,39,.07);
  --saas-shadow-lg:0 22px 48px rgba(75,62,39,.10);
}
.design-saas .page-head{
  min-height:50px;
  padding:6px 8px 6px 16px;
  align-items:center;
  border:1px solid rgba(155,129,88,.18);
  border-radius:18px;
  background:rgba(255,253,248,.84);
  box-shadow:0 18px 42px rgba(75,62,39,.07);
  backdrop-filter:blur(14px);
}
.design-saas .saas-title-line h1,
.design-saas .page-title h1,
.design-saas .page-head h1{
  color:#173332;
  letter-spacing:0;
}
.design-saas .page-head p,
.design-saas .saas-title-meta{
  color:#607876;
}
.design-saas .btn,
.design-saas .btn.soft,
.design-saas .btn.tiny{
  min-height:38px;
  border-radius:10px;
  border-color:#d9e9e6;
  background:#fffefa;
  color:#24514e;
  box-shadow:0 10px 22px rgba(75,62,39,.055);
}
.design-saas .btn:hover,
.design-saas .btn.soft:hover,
.design-saas .btn.tiny:hover{
  transform:none;
  border-color:#c7e7e1;
  background:#f2fbfa;
  color:#087b73;
  box-shadow:0 12px 24px rgba(75,62,39,.07);
}
.design-saas .btn.primary{
  border-color:transparent;
  background:linear-gradient(135deg,#11a99d 0%,#18a7aa 58%,#b88a3a 100%);
  color:#fff;
  box-shadow:0 14px 26px rgba(19,143,135,.22);
}
.design-saas .btn.primary:hover{
  background:linear-gradient(135deg,#0f9f96 0%,#13a2a5 58%,#aa7e32 100%);
  color:#fff;
  box-shadow:0 16px 30px rgba(19,143,135,.24);
}
.design-saas .card,
.design-saas .editor-card,
.design-saas .panel-card,
.design-saas .status-card,
.design-saas .identity-item,
.design-saas .list-item,
.design-saas .execution-step-card,
.design-saas .section,
.design-saas .profile-form-card,
.design-saas .account-status-card{
  border-color:rgba(155,129,88,.18);
  border-radius:16px;
  background:#fffefa;
  box-shadow:0 16px 34px rgba(75,62,39,.07);
}
.design-saas .card h2,
.design-saas .card h3,
.design-saas .editor-card h2,
.design-saas .editor-card h3,
.design-saas .panel-card h2,
.design-saas .status-card h2{
  color:#173332;
}
.design-saas .list-item,
.design-saas .identity-item{
  background:#fffefa;
}
.design-saas .field label{
  color:#087b73;
}
.design-saas .field input,
.design-saas .field select,
.design-saas .field textarea,
.design-saas input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.design-saas select,
.design-saas textarea{
  border-color:#d9e9e6;
  border-radius:10px;
  background:#fffefa;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), 0 2px 8px rgba(31,75,58,.035);
}
.design-saas .field input:focus,
.design-saas .field select:focus,
.design-saas .field textarea:focus,
.design-saas input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
.design-saas select:focus,
.design-saas textarea:focus{
  outline:none;
  border-color:#18a7aa;
  box-shadow:0 0 0 3px rgba(24,167,170,.13);
}
.design-saas .badge,
.design-saas .pill,
.design-saas .status,
.design-saas .wb-badge,
.design-saas [class*="-badge"]{
  border-color:#d9e9e6;
}
.design-saas .guide-text,
.design-saas .muted.tiny,
.design-saas .section-note,
.design-saas .detail-text{
  color:#607876;
}

@media (max-width:1000px){
  body[data-clean-proto-page="unit_design"] .design-saas .unit-design-layout{
    grid-template-columns:1fr;
  }
  body[data-clean-proto-page="unit_design"] .design-saas .unit-side-column{
    position:static;
    width:auto;
  }
}

@media (max-width:720px){
  body[data-clean-proto-page="unit_design"] .design-saas .unit-meta-strip,
  body[data-clean-proto-page="unit_design"] .design-saas .unit-required-grid,
  body[data-clean-proto-page="unit_design"] .design-saas .unit-literacy-grid{
    grid-template-columns:1fr;
  }
  body[data-clean-proto-page="unit_design"] .design-saas .unit-action-bar{
    align-items:stretch;
    flex-direction:column;
  }
  body[data-clean-proto-page="unit_design"] .design-saas .unit-action-buttons{
    justify-content:flex-start;
  }
}

/* Design SaaS laptop fit pass v1 · 2026-05-04 */
@media (max-width:1440px){
  .design-saas .page-head{
    min-height:46px;
    padding:6px 8px 6px 12px;
  }

  .design-saas .saas-title-line h1,
  .design-saas .page-title h1,
  .design-saas .page-head h1,
  .quick-archive-page .page-title h1,
  .design-center-page .design-hero-title-row h1{
    font-size:24px;
    letter-spacing:0;
  }

  .design-saas .entry-brand-hero,
  .design-center-page .design-center-hero{
    margin-bottom:16px;
    padding:16px 18px;
  }

  .design-saas .card,
  .design-saas .editor-card,
  .design-saas .panel-card,
  .design-saas .status-card,
  .design-saas .section,
  .unit-design-page .unit-ai-card,
  .unit-design-page .unit-stage-card{
    padding:14px;
  }

  .saas-stat-number{
    font-size:25px;
  }

  .quick-archive-page .quick-archive-layout{
    grid-template-columns:minmax(0,1fr) 280px;
    gap:18px;
    max-width:1180px;
  }

  .knowledge-base-page .knowledge-layout,
  .course-knowledge-page .course-knowledge-layout{
    grid-template-columns:minmax(0,1fr) 320px;
    gap:16px;
  }

  body[data-clean-proto-page="unit_design"] .shell-main .unit-design-page .unit-design-layout{
    grid-template-columns:minmax(0,1fr);
    max-width:min(980px,100%);
  }
}

@media (max-width:1366px){
  .design-saas .saas-stat-row,
  .design-saas .identity-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .quick-archive-page .quick-archive-layout,
  .knowledge-base-page .knowledge-layout,
  .course-knowledge-page .course-knowledge-layout{
    grid-template-columns:minmax(0,1fr);
    max-width:100%;
  }

  .course-knowledge-page .current-knowledge-sidebar,
  .knowledge-base-page .knowledge-side{
    position:static;
  }

  .unit-design-page .unit-ai-actions{
    grid-template-columns:minmax(0,1fr);
  }

  .unit-design-page .unit-ai-card{
    max-height:none;
  }
}

@media (max-width:1180px){
  .design-saas .entry-brand-hero,
  .design-center-page .entry-brand-hero,
  .design-center-page .design-center-hero{
    grid-template-columns:1fr;
  }

  .design-saas .saas-stat-row,
  .design-saas .identity-strip{
    grid-template-columns:1fr;
  }

  .saas-stat-number{
    font-size:23px;
  }

  .unit-design-page .unit-meta-strip,
  .unit-design-page .unit-required-grid,
  .unit-design-page .unit-literacy-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:1440px){
  .profile-page .avatar-preview-avatar{
    width:96px;
    height:96px;
    font-size:34px;
  }

  .design-center-page .entry-brand-copy h1,
  .entry-page .command-board-main h2,
  .quick-archive-page .page-title h1{
    font-size:24px;
    line-height:1.12;
  }

  .entry-page .command-board-main strong,
  .teaching-home-page .week-overview-summary strong,
  .knowledge-assets-home-page .knowledge-home-stat-card strong,
  .saas-stat-number{
    font-size:24px;
  }
}

@media (max-width:1180px){
  .profile-page .avatar-preview-avatar{
    width:84px;
    height:84px;
    font-size:30px;
  }

  .design-center-page .entry-brand-copy h1,
  .entry-page .command-board-main h2,
  .quick-archive-page .page-title h1{
    font-size:22px;
  }

  .entry-page .command-board-main strong,
  .teaching-home-page .week-overview-summary strong,
  .knowledge-assets-home-page .knowledge-home-stat-card strong,
  .saas-stat-number{
    font-size:22px;
  }
}

/* Global SaaS type scale compression for laptop widths. */
@media (max-width:1440px){
  .design-saas h1,
  .design-saas .page-title h1,
  .design-saas .saas-title-line h1,
  .design-center-page .design-hero-title-row h1,
  .quick-archive-page .page-title h1{
    font-size:24px !important;
    line-height:1.14;
    letter-spacing:0;
  }

  .design-saas .saas-stat-number,
  .design-saas .command-stat strong,
  .design-saas .metric-main b,
  .design-saas .week-overview-summary strong,
  .knowledge-assets-home-page .knowledge-home-stat-card strong,
  .lesson-transfer-page .lesson-transfer-counts strong{
    font-size:22px !important;
    line-height:1.05;
  }
}

@media (max-width:1366px){
  .design-saas h1,
  .design-saas .page-title h1,
  .design-saas .saas-title-line h1,
  .design-center-page .design-hero-title-row h1,
  .quick-archive-page .page-title h1{
    font-size:22px !important;
  }

  .design-saas .saas-stat-number,
  .design-saas .command-stat strong,
  .design-saas .metric-main b,
  .design-saas .week-overview-summary strong,
  .knowledge-assets-home-page .knowledge-home-stat-card strong,
  .lesson-transfer-page .lesson-transfer-counts strong{
    font-size:20px !important;
  }

  .knowledge-assets-home-page .knowledge-home-stat-card,
  .lesson-transfer-page .lesson-transfer-counts article{
    padding:14px;
  }
}

@media (max-width:1180px){
  .design-saas h1,
  .design-saas .page-title h1,
  .design-saas .saas-title-line h1,
  .design-center-page .design-hero-title-row h1,
  .quick-archive-page .page-title h1{
    font-size:20px !important;
  }

  .design-saas .saas-stat-number,
  .design-saas .command-stat strong,
  .design-saas .metric-main b,
  .design-saas .week-overview-summary strong,
  .knowledge-assets-home-page .knowledge-home-stat-card strong,
  .lesson-transfer-page .lesson-transfer-counts strong{
    font-size:19px !important;
  }
}

/* Global SaaS type guard: keep knowledge and dashboard pages calm even above 1440px. */
.design-saas h1,
.design-saas .page-title h1,
.design-saas .saas-title-line h1,
.design-center-page .design-hero-title-row h1,
.quick-archive-page .page-title h1 {
  font-size: clamp(21px, 1.45vw, 28px) !important;
  line-height: 1.14;
  letter-spacing: 0;
}

.design-saas .saas-stat-number,
.design-saas .command-stat strong,
.design-saas .metric-main b,
.design-saas .week-overview-summary strong,
.knowledge-assets-home-page .knowledge-home-stat-card strong,
.lesson-transfer-page .lesson-transfer-counts strong {
  font-size: clamp(19px, 1.2vw, 24px) !important;
  line-height: 1.05;
}

.knowledge-assets-home-page .knowledge-home-stat-card,
.lesson-transfer-page .lesson-transfer-counts article {
  padding: clamp(12px, 1vw, 16px);
}

/* Unit design compact spacing pass · 2026-05-05 */
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-design-layout{
  margin-top:10px !important;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-edit-column{
  gap:8px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-edit-card,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-info-card,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-next-card{
  padding:12px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-edit-card h2,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-info-card h2{
  margin-bottom:8px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-meta-strip{
  margin-bottom:8px;
  gap:8px;
  align-items:stretch;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-meta-draft-grid{
  gap:6px;
  margin:0 0 8px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-meta-strip .identity-item{
  min-height:90px;
  display:grid;
  align-content:start;
  padding:12px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-meta-strip .identity-item[data-unit-required-key]{
  padding-right:58px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-meta-strip .identity-item .field{
  align-self:end;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-required-panel{
  gap:12px;
  margin-bottom:10px;
  padding:16px;
  border-radius:18px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-required-grid,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-literacy-grid{
  gap:8px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-required-field,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-literacy-item{
  padding:8px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .field[style*="margin-top:12px"],
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-literacy-field{
  margin-top:8px !important;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-field-head{
  margin-bottom:5px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .field label,
body[data-clean-proto-page="unit_design"] .unit-design-page .identity-item label,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-field-head h2,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-field-head label,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-field-title-inline label,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-literacy-item span{
  color:#31564e;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-resource-list{
  gap:6px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-resource-row,
body[data-clean-proto-page="unit_design"] .unit-design-page .unit-info-card .list-item{
  padding:8px 10px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-ai-draft-slot{
  margin-top:6px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-ai-draft-card{
  gap:6px;
  padding:8px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .unit-ai-draft-card textarea{
  min-height:62px;
}

body[data-clean-proto-page="unit_design"] .unit-design-page .head-actions .unit-ai-adopt-btn{
  min-height:32px;
  padding:0 13px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#0aa89b 0%,#19b7b5 54%,#b08a38 100%);
  color:#fff;
  font-size:14px;
  font-weight:900;
  line-height:1;
  box-shadow:0 12px 24px rgba(17,151,139,.18);
}

body[data-clean-proto-page="unit_design"] .unit-design-page .head-actions .unit-ai-adopt-btn:hover{
  background:linear-gradient(135deg,#07998f 0%,#12a9a8 54%,#9f7b31 100%);
  color:#fff;
  box-shadow:0 14px 28px rgba(17,151,139,.22);
}

body[data-clean-proto-page="lesson_design"] .lesson-design-page .split{
  max-width:1120px !important;
  grid-template-columns:minmax(0, 1fr) !important;
  gap:18px !important;
}

body[data-clean-proto-page="lesson_design"] .lesson-design-page .split > .section{
  width:100% !important;
  max-width:1120px;
}

body[data-clean-proto-page="lesson_design"] .lesson-design-page .identity-strip,
body[data-clean-proto-page="lesson_design"] .lesson-design-page .lesson-required-panel,
body[data-clean-proto-page="lesson_design"] .lesson-design-page .lesson-bottom-bar{
  max-width:1120px;
}
