  html, body { margin:0; padding:0; font-family:'Pretendard', system-ui, sans-serif; }
  body { background:#F5F7FB; min-height:100vh; }
  /* 스크롤바 숨김 (스크롤 기능은 유지) */
  html { scrollbar-width:none; -ms-overflow-style:none; }
  html::-webkit-scrollbar { width:0; height:0; display:none; }
  body::-webkit-scrollbar { width:0; height:0; display:none; }
  .device-viewport::-webkit-scrollbar { width:0; height:0; display:none; }
  /* mobile.html 미리보기 phone 컨테이너 패턴 — device-viewport가 페이지 컨텐츠 호스트.
     편집 환경 전용 속성(flex/overflow/padding-bottom)은 일반 페이지용으로 중화 */
  .device-viewport{ flex:none !important; background:var(--bg-color, #fff); max-width:440px; margin:0 auto; min-height:100vh; box-shadow:0 0 40px rgba(13,27,61,.08); overflow-x:hidden; overflow-y:visible !important; padding-bottom:0 !important; }
  @media (min-width:540px){
    body { background:linear-gradient(180deg,#EEF2F8 0%, #F5F7FB 100%); }
    .device-viewport{ margin:24px auto; min-height:calc(100vh - 48px); border-radius:24px; }
  }
  /* 편집 affordance 제거 (일반 사용자 페이지) */
  .pv-sec{ cursor:default !important; }
  .pv-sec:hover{ outline:none !important; }

  /* 화면 이탈 방지: 내용이 길어도 자동 줄바꿈 (CORE VALUE 카드 등) */
  .pv-sec{ max-width:100%; box-sizing:border-box; overflow-wrap:anywhere; }
  .pv-sec h1,.pv-sec h2,.pv-sec h3,.pv-sec p{ overflow-wrap:anywhere; word-break:break-word; min-width:0; }
  .features-list{ min-width:0; max-width:100%; }
  .features-list.style-threeColumn{ grid-template-columns:repeat(3, minmax(0,1fr)) !important; }
  .features-list .feature-item{ min-width:0; box-sizing:border-box; }
  .features-list .feature-content{ min-width:0; max-width:100%; }
  .features-list .feature-content h3,.features-list .feature-content p{ overflow-wrap:anywhere; word-break:break-word; }
  /* 편집기에서 입력한 줄바꿈 보존 */
  .pv-sec h1,.pv-sec h2,.pv-sec h3,.pv-sec p,.pv-sec-tag,
  .features-list .feature-content h3,.features-list .feature-content p,
  .tcs-title,.tcs-desc,.tpf-team-info{ white-space:pre-wrap; }

  /* 편집기에서 업로드한 비-hero 섹션 배경 + 가독성 오버레이 */
  .pv-sec.has-bg-image{ position:relative; background-size:cover !important; background-position:center !important; background-repeat:no-repeat !important; }
  .pv-sec.has-bg-image::before{ content:""; position:absolute; inset:0; background:rgba(255,255,255,0.80); z-index:0; pointer-events:none; }
  .pv-sec.has-bg-image > *{ position:relative; z-index:1; }

  /* 히어로 슬라이드쇼 (이미지/동영상) */
  .hero-slides{ position:absolute; inset:0; z-index:1; background:linear-gradient(135deg, #09090b 40%, #1e1b4b 100%); }
  .hero-slides .hslide{ position:absolute; inset:0; opacity:0; transition:opacity .6s ease; }
  .hero-slides .hslide.active{ opacity:1; }
  .hero-slides .hslide-img{ position:absolute; inset:0; background-size:cover; background-position:center; background-repeat:no-repeat; }
  .hero-slides .hslide video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

  /* team_page.css의 v20 모바일 standalone override(html,body overflow:hidden 등)는
     편집 페이지(mobile.html) 전용. 일반 페이지에서는 정상 스크롤되도록 강제 해제 */
  html, body { width:auto !important; height:auto !important; overflow:visible !important; }
  body { overflow-x:hidden !important; }

  /* 헤더 3등분: 로고(좌) · 메뉴(정중앙) · 로그인(우) */
  .preview-header .header-container{ display:flex !important; align-items:center; justify-content:space-between; }
  .preview-header .header-logo{ justify-self:start; }
  .preview-header .header-nav{ justify-self:center; }
  .preview-header .header-actions{ justify-self:end; display:flex !important; align-items:center; }
  .preview-header .btn-login{ display:inline-flex !important; }
  /* 로그인 사용자 드롭다운 */
  .ts-user-menu{ position:relative; }
  .ts-user-menu .btn-login-user{ border:0; cursor:pointer; font-family:inherit; }
  .ts-user-menu .ts-caret{ font-size:10px; margin-left:2px; opacity:.7; }
  .ts-user-dropdown{ position:absolute; top:calc(100% + 8px); right:0; min-width:150px; background:#fff; border:1px solid #E6E9F0; border-radius:12px; box-shadow:0 10px 30px rgba(13,27,61,.14); padding:6px; display:none; z-index:120; }
  .ts-user-menu.open .ts-user-dropdown{ display:block; }
  .ts-user-dropdown a{ display:block; padding:9px 12px; border-radius:8px; font-size:13px; font-weight:600; color:#1B2454; text-decoration:none; white-space:nowrap; }
  .ts-user-dropdown a:hover{ background:#F0F3F8; }
  .ts-user-dropdown a#tsLogoutBtn{ color:#C62828; }
  /* 모바일: 메뉴 숨김 + 2칸(로고 좌 · 로그인/사용자 우)로 양끝 정렬 */
  @media (max-width:600px){
    .preview-header .header-container{ grid-template-columns:1fr auto !important; }
    .preview-header .header-nav{ display:none !important; }
    .preview-header .header-logo{ justify-self:start; }
    .preview-header .header-actions{ justify-self:end; }
  }
  @media (max-width:380px){
    .preview-header .header-nav{ gap:10px; }
    .preview-header .header-nav a{ font-size:11px; }
  }

  /* 응원글 — 다른 섹션과 동일 톤 (테마 변수 사용) */
  .team-cheers-section{padding:36px 18px;border-bottom:1px solid var(--border-color);background:var(--bg-color)}
  .tcs-inner{max-width:560px;margin:0 auto}
  .tcs-tag{display:inline-block;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;color:var(--primary-color);background:rgba(16,185,129,0.08);padding:3px 8px;border-radius:99px}
  .tcs-title{margin:0 0 10px;font-size:22px;font-weight:800;line-height:1.25;letter-spacing:-0.04em;color:var(--text-main)}
  .tcs-desc{margin:0 0 18px;color:var(--text-muted);font-size:13px;line-height:1.5}
  .tcs-form{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
  .tcs-form input, .tcs-form textarea{box-sizing:border-box;padding:11px 13px;border:1px solid var(--border-color);border-radius:10px;font-family:inherit;font-size:13px;outline:none;background:var(--card-bg);color:var(--text-main)}
  .tcs-form textarea{min-height:74px;resize:vertical}
  .tcs-form input:focus, .tcs-form textarea:focus{border-color:var(--primary-color)}
  .tcs-submit{padding:12px 16px;background:var(--primary-color);color:#fff;border:0;border-radius:10px;font-weight:700;font-size:13px;cursor:pointer;transition:background .15s}
  .tcs-submit:hover{background:var(--primary-hover)}
  .tcs-form-foot{display:flex;align-items:center;gap:8px}
  .tcs-form-foot .tcs-submit{margin-left:auto}
  .tcs-msg + .cheer-thumbs{padding-right:0}
  .tcs-empty{padding:20px;text-align:center;color:var(--text-muted);background:var(--card-bg);border:1px dashed var(--border-color);border-radius:12px;font-size:12px}
  .tcs-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:14px 14px 12px;margin-bottom:8px;position:relative}
  .tcs-item-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
  .tcs-item-head strong{font-size:13px;color:var(--text-main);font-weight:700}
  .tcs-time{font-size:11px;color:var(--text-muted)}
  .tcs-msg{font-size:13px;line-height:1.55;color:var(--text-main);white-space:pre-wrap;padding-right:60px}
  .tcs-heart{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:4px;background:var(--bg-color);border:1px solid var(--border-color);color:var(--primary-color);padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s}
  .tcs-heart:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}

  /* 푸터 */
  .team-page-footer{background:#0D1B3D;color:#fff;padding:32px 20px calc(40px + env(safe-area-inset-bottom));font-family:'Pretendard', sans-serif}
  .tpf-wrap{max-width:720px;margin:0 auto}
  .tpf-company{font-size:11.5px;line-height:1.85;color:#B3BAD0}
  .tpf-company strong{color:#fff;font-weight:700}
  .tpf-company a{color:#FFD45A;text-decoration:none}
  .tpf-divider{height:1px;background:rgba(255,255,255,.12);margin:16px 0}
  .tpf-team{font-size:12px;line-height:1.8;color:#E5E9F3}
  .tpf-brand{font-weight:600}
  .tpf-team-name{margin-top:4px;color:#B3BAD0}
  .tpf-team-name strong{color:#FFD45A;font-weight:700}
  .tpf-team-info{margin-top:6px;font-size:12px;line-height:1.7;color:#C7CEDE;white-space:pre-wrap}

  /* sec-cta::after AI 버튼 영구 숨김 */
  .pv-sec.sec-cta::after, .sec-cta::after,
  .pv-sec[class*="sec-"]::after { display:none !important; content:none !important; }

  /* 백지(캔버스) 세션 — 공개 */
  .pv-sec.sec-canvas{padding:0}
  .tcanvas-pub{position:relative;width:100%;overflow:hidden;container-type:size}
  .tcanvas-pub .tcv-el-img{position:absolute;box-sizing:border-box}
  .tcanvas-pub .tcv-el-img img{width:100%;height:100%;object-fit:cover;display:block}
  .tcanvas-pub .tcv-el-text{position:absolute;box-sizing:border-box;display:flex;align-items:center;line-height:1.25;word-break:break-word;white-space:pre-wrap}
  .tcanvas-pub .tcv-el-text .tcv-text-inner{width:100%}

  /* 모바일: 히어로 통과 후 헤더 아래 기수 서브바(#6) + 하단 후원 버튼(#7) */
  /* 흰색 바 없이 히어로 태그만 좌측에 떠다니게 (클릭은 뒤 콘텐츠로 통과) */
  .ts-subbar{position:fixed; left:0; right:0; top:52px; z-index:100; display:none; align-items:center; justify-content:flex-start;
    padding:6px 14px; pointer-events:none;
    transform:translateY(-6px); opacity:0; transition:opacity .2s ease, transform .2s ease}
  /* 떠다니는 기수 칩: 칩만 클릭 가능(빈 영역은 뒤 콘텐츠로 통과) + 불투명 테마 배경으로 가독성 확보 */
  .ts-subbar .pv-sec-tag.pv-hero-tag2{margin:0; pointer-events:auto; cursor:pointer; opacity:1;
    background:var(--primary-color,#155ee8); border:0; color:#fff;
    box-shadow:0 6px 18px rgba(13,27,61,.20); padding:7px 13px; border-radius:14px;
    -webkit-backdrop-filter:none; backdrop-filter:none}
  .ts-subbar .pv-hero-tag2 .ht-brand{color:rgba(255,255,255,.9)}
  .ts-subbar .pv-hero-tag2 .ht-edition{color:#fff}
  .ts-sticky-cta{position:fixed; left:0; right:0; bottom:0; z-index:90; display:none;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
    background:rgba(255,255,255,0.96); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
    border-top:1px solid rgba(13,27,61,0.08); box-shadow:0 -6px 20px rgba(13,27,61,0.08)}
  .ts-sticky-cta a{display:block; text-align:center; text-decoration:none; background:var(--primary-color,#155ee8); color:#fff; font-weight:800; font-size:15px; padding:14px; border-radius:12px}
  @media (max-width:600px){
    .ts-subbar.show{display:flex; opacity:1; transform:translateY(0)}
    .ts-sticky-cta.show{display:block}
    body.ts-cta-on .device-viewport{padding-bottom:80px !important}
  }
