/* ==========================================================
   拿云智学教育科技有限公司 · 全站品牌标识
   1) 各子系统左上角企业 logo
   2) 各页面底部企业页脚
   ========================================================== */

/* ---------- 全站品牌页眉、页脚容器 ---------- */
:root { --brand-content-width: 1080px; --brand-title-font: 'Ma Shan Zheng', 'STXingkai', 'KaiTi', serif; }

/* ---------- 子系统标题与内容统一使用首页版心 ----------
   注意：文字元宇宙页面（.meta-hero）保留 metaverse.css 自有的通栏水墨样式，
   不在此统一，避免出现"首页同款方框"的多余标题区。 */
.yw-hero, .yw-page-banner { box-sizing: border-box; width: min(var(--brand-content-width), calc(100% - 32px)); margin: 16px auto 28px; border: 1px solid rgba(139, 105, 20, 0.38); border-radius: 6px; background: radial-gradient(ellipse 70% 90% at 20% 10%, rgba(184,58,43,.05), transparent 60%), radial-gradient(ellipse 55% 80% at 85% 90%, rgba(139,115,85,.08), transparent 55%), linear-gradient(168deg,#f8f0e2 0%,#f4e8d5 55%,#f1e0ca 100%); box-shadow: inset 0 0 0 4px rgba(253,250,245,.85), inset 0 0 0 5px rgba(139,105,20,.2), 0 14px 40px rgba(60,50,35,.1); }
.yw-hero { padding: 42px 28px 44px; overflow: hidden; }
.yw-hero::after { left: 8%; right: 8%; }
.yw-page-banner { padding: 42px 28px 38px; }
.yw-hero .yw-hero-title, .yw-page-banner .banner-title { font-family: var(--brand-title-font); font-size: clamp(26px, 2.8vw, 30px); font-weight: 400; letter-spacing: 6px; line-height: 1.35; }
.yw-hero .yw-hero-slogan, .yw-page-banner .banner-subtitle { font-family: 'Noto Serif SC', 'STSong', 'SimSun', serif; font-size: 14px; letter-spacing: 3px; line-height: 1.8; }
.yw-page-banner .banner-title { font-weight: 400; }
@media (max-width: 640px) { .yw-hero .yw-hero-title, .yw-page-banner .banner-title { font-size: clamp(24px, 7vw, 30px); letter-spacing: 4px; } }
.yw-page-content, .yw-main:not(.full-width), .yw-container, .pr-container:not(.full-width), .rt-container, .ra-container, .es-main, .rv-wrap, .wb-container, .fc-wrap { box-sizing: border-box; width: min(var(--brand-content-width), calc(100% - 32px)); max-width: none; margin-left: auto; margin-right: auto; }
.yw-head:has(+ .yw-hero) { display: none; }
.meta-header { display: none; }
.yw-head:not(:has(+ .yw-hero)) .yw-head-inner, .rv-header { position: relative; width: min(var(--brand-content-width), calc(100% - 32px)); margin: 16px auto 28px; padding: 18px 24px; border: 1px solid rgba(139,105,20,.38); border-radius: 6px; background: linear-gradient(168deg,#f8f0e2,#f1e0ca); box-shadow: inset 0 0 0 4px rgba(253,250,245,.85), 0 14px 40px rgba(60,50,35,.08); }
.yw-head:not(:has(+ .yw-hero)) .brand-corner, .rv-header .brand-corner { display: none; }
.yw-hero-back { bottom: 14px; }
.brand-corner { top: 18px; left: 22px; }
.brand-corner img { height: 42px; }
.brand-row { max-width: var(--brand-content-width); margin: 16px auto -4px; padding: 0 8px; }
.brand-corner {
    position: absolute;
    top: 14px;
    left: 20px;
    z-index: 30;
    display: inline-flex;
    align-items: center;
    line-height: 0;
    text-decoration: none;
    /* logo 已统一改为 span，不允许点击：强制默认箭头、取消手势 */
    cursor: default;
    pointer-events: none;
    opacity: 0.95;
    transition: opacity 0.2s ease;
}
.brand-corner:hover { opacity: 1; }
.yw-title-panel .brand-corner { cursor: default; }
.brand-corner img {
    display: block;
    height: 38px;
    width: auto;
}

/* 嵌入顶部导航条（flex 行）时的行内形态 */
.brand-corner.brand-inline {
    position: static;
    top: auto;
    left: auto;
    flex-shrink: 0;
}
.brand-corner.brand-inline img { height: 34px; }

/* 独立品牌行（置于顶部栏上方，不改变原有布局） */
.brand-row {
    display: flex;
    justify-content: flex-start;
    margin: 0 0 10px;
}
.brand-row img {
    display: block;
    height: 34px;
    width: auto;
}

/* ---------- 企业页脚 ---------- */
.brand-footer {
    position: relative;
    box-sizing: border-box;
    width: min(var(--brand-content-width), calc(100% - 32px));
    /* 底部与页面装饰边框留出更从容的间距：
       页面装饰边框（.yw-page-frame）贴合文档底部内缩 10px，若页脚自身底部内边距过小，
       边框线会正好压在「智启新程，拿云而上」标语上，故底部内边距加大到 40px */
    margin: 52px auto 0;
    padding: 42px 20px 40px;
    text-align: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    font-family: 'Noto Serif SC', 'STSong', 'SimSun', serif;
}
.brand-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(139,105,20,.18) 18%, rgba(184,58,43,.52) 50%, rgba(139,105,20,.18) 82%, transparent);
}
.brand-footer-inner::before {
    content: '◇';
    position: absolute;
    top: -38px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(168,50,50,.62);
    font-size: 14px;
    line-height: 20px;
}
.brand-footer-inner {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}
.brand-footer-logo {
    display: block;
    height: 36px;
    width: auto;
    opacity: 0.9;
}
.brand-footer-company {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    color: #5b4c37;
}
.brand-footer-slogan {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 4px;
    color: #5b4c37;
}
/* 备案合规行：工信部要求备案号置于页脚并链接至备案系统 */
.brand-footer-icp {
    margin-top: 6px;
    font-size: 12px;
    letter-spacing: 1px;
}
.brand-footer-icp a {
    color: rgba(91, 76, 55, .62);
    text-decoration: none;
    border-bottom: 1px dotted rgba(91, 76, 55, .38);
    transition: color .25s;
}
.brand-footer-icp a:hover { color: #5b4c37; }


@media (max-width: 720px) {
    .yw-hero, .yw-page-banner { width: calc(100% - 20px); padding-left: 16px; padding-right: 16px; }
    .yw-head:not(:has(+ .yw-hero)) .yw-head-inner, .rv-header { width: calc(100% - 20px); margin-top: 8px; padding: 14px 12px; }
    /* 副标题原来的 14px / 3px 字距是按「六到八字」的短句定的；
       像「专题练习 · 教师批改 · 即时反馈」这种带分隔点的长句，
       在 375 屏算下来正好卡在可用宽度边缘，会被折成「…即时反 / 馈」。
       这里收窄字号与字距，保证整行放得下。 */
    .yw-hero .yw-hero-slogan, .yw-page-banner .banner-subtitle { font-size: 12px; letter-spacing: 1.5px; }
    .brand-corner { top: 12px; left: 12px; }
    .brand-corner img { height: 30px; }
    .brand-corner.brand-inline img { height: 28px; }
    .brand-row img { height: 28px; }
    .brand-footer { margin-top: 34px; padding: 42px 14px 32px; }
    .brand-footer-logo { height: 30px; }
    .brand-footer-company { font-size: 13px; }
    .brand-footer-slogan { font-size: 12px; letter-spacing: 2px; }
}
