  :root {
    --cb-paper:light-dark(#ffffff,#111722);--cb-surface:light-dark(#f7f9fc,#1b2432);
    --cb-ink:light-dark(#202c40,#f1f5fb);--cb-muted:light-dark(#647085,#b1bccd);
    --cb-line:light-dark(#e1e7ef,#354153);--cb-blue:light-dark(#2858e9,#9ab7ff);
    --cb-on-blue:light-dark(#ffffff,#132244);--cb-tint:light-dark(#edf2ff,#253652);
    --cb-radius:12px;--cb-space:60px;
  }
  .cb-page {background:var(--cb-paper);color:var(--cb-ink);font-size:14px;line-height:1.65;letter-spacing:-.025em;overflow-wrap:anywhere}
  .cb-page * {box-sizing:border-box}
  .cb-page :where(h1,h2,h3,p,ul,ol) {margin:0}
  .cb-page :where(a) {color:inherit;text-decoration:none}
  .cb-page :where(i,svg) {width:18px;height:18px;flex:none;display:inline-block;vertical-align:middle;stroke-width:1.75}
  .cb-wrap {width:min(100% - 80px,1120px);margin-inline:auto}
  .cb-header {border-bottom:1px solid var(--cb-line)}
  .cb-header-inner {min-height:78px;display:flex;align-items:center;gap:26px;padding-block:12px}
  .cb-logo {display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:21px;letter-spacing:-.06em;white-space:nowrap}
  .cb-mark {width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:var(--cb-on-blue);background:var(--cb-blue);font:700 20px/1 ui-monospace,monospace}
  .cb-nav {display:flex;align-items:center;gap:23px;margin-left:auto;font-size:13px;font-weight:600}
  .cb-nav a {display:inline-flex;align-items:center;gap:6px;min-height:38px}
  .cb-nav svg {width:16px;height:16px;color:var(--cb-muted)}
  .cb-nav a:hover,.cb-footer a:hover {color:var(--cb-blue)}
  .cb-login {display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:6px 10px;font-size:12px;white-space:nowrap;border:1px solid var(--cb-line);border-radius:7px}
  .cb-body {flex:1}
  .cb-hero {display:grid;grid-template-columns:minmax(0,1.25fr) minmax(275px,.8fr);align-items:center;gap:48px;padding-block:28px 40px}
  .cb-kicker {display:flex;align-items:center;gap:8px;color:var(--cb-blue);font-size:12px;font-weight:650;letter-spacing:.035em;margin-bottom:19px}
  .cb-headline {font-size:clamp(34px,4.6vw,54px);font-weight:800;line-height:1.28;letter-spacing:-.065em;word-break:keep-all}
  .cb-headline span {color:var(--cb-blue)}
  .cb-intro {margin-top:23px;color:var(--cb-muted);font-size:15px;line-height:1.85;word-break:keep-all}
  .cb-actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}
  .cb-action {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 16px;border:1px solid var(--cb-line);border-radius:8px;background:var(--cb-paper);font-size:13px;font-weight:650}
  .cb-primary {background:var(--cb-blue);color:var(--cb-on-blue);border-color:var(--cb-blue)}
  .cb-action:hover {filter:brightness(.96)}
  .cb-specs {display:flex;flex-wrap:wrap;align-items:center;gap:9px 16px;margin-top:21px;font-size:11px;color:var(--cb-muted)}
  .cb-specs span {display:inline-flex;align-items:center;gap:5px}
  .cb-specs svg {width:14px;height:14px}
  .cb-install {border:1px solid var(--cb-line);border-radius:var(--cb-radius);background:var(--cb-surface);overflow:hidden}
  .cb-install-top {padding:21px 24px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--cb-line)}
  .cb-package {width:34px;height:34px;display:grid;place-items:center;background:var(--cb-tint);color:var(--cb-blue);border-radius:8px}
  .cb-install-top strong {display:block;font-size:13px;font-weight:700}
  .cb-install-top small {display:block;color:var(--cb-muted);font-size:11px}
  .cb-version {margin-left:auto;color:var(--cb-blue);font:600 12px/1.4 ui-monospace,monospace}
  .cb-install-content {padding:23px 24px 25px}
  .cb-install h2 {font-size:19px;line-height:1.4;font-weight:750;letter-spacing:-.045em}
  .cb-install-copy {font-size:12px;color:var(--cb-muted);margin-top:6px}
  .cb-steps {list-style:none;padding:0;margin-top:22px;display:grid;gap:17px}
  .cb-step {display:flex;gap:11px;align-items:center}
  .cb-step-icon {display:grid;place-items:center;width:31px;height:31px;flex:none;border:1px solid var(--cb-line);background:var(--cb-paper);color:var(--cb-blue);border-radius:7px}
  .cb-step strong {display:block;font-size:12px;font-weight:650}
  .cb-step small {display:block;font-size:11px;color:var(--cb-muted)}
  .cb-install-link {display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--cb-line);padding:13px 24px;font-size:12px;font-weight:600;background:var(--cb-paper)}
  .cb-section {border-top:1px solid var(--cb-line);padding-block:30px 36px}
  .cb-section-head {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:21px}
  .cb-section-head h2 {font-size:23px;font-weight:750;line-height:1.4;letter-spacing:-.045em}
  .cb-section-head p {font-size:12px;color:var(--cb-muted)}
  .cb-feature-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .cb-feature {border:1px solid var(--cb-line);border-radius:var(--cb-radius);padding:23px 22px;background:var(--cb-paper)}
  .cb-feature-heading {display:flex;align-items:center;gap:11px;margin-bottom:13px}
  .cb-feature-icon {display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:9px;background:var(--cb-tint);color:var(--cb-blue)}
  .cb-feature h3 {font-size:16px;line-height:1.4;font-weight:700;letter-spacing:-.04em}
  .cb-feature p {font-size:12px;color:var(--cb-muted);line-height:1.9;word-break:keep-all}
  .cb-feature-note {margin-top:16px;border-top:1px solid var(--cb-line);padding-top:11px;display:flex;align-items:center;gap:6px;font-size:11px;color:var(--cb-muted)}
  .cb-feature-note svg {width:14px;height:14px}
  .cb-page .cb-feature-service-link {color:var(--cb-blue);font-size:12px;text-decoration:none}
  .cb-feature-service-link span {flex:1;min-width:0}
  .cb-feature-service-link:hover span {text-decoration:underline;text-underline-offset:3px}
  .cb-docs {background:var(--cb-surface);border:1px solid var(--cb-line);border-radius:var(--cb-radius);padding:26px 28px;margin-bottom:34px}
  .cb-docs-head {display:flex;align-items:center;gap:13px}
  .cb-doc-icon {display:grid;place-items:center;width:40px;height:40px;background:var(--cb-paper);border:1px solid var(--cb-line);border-radius:9px;color:var(--cb-blue);flex:none}
  .cb-doc-icon svg {width:21px;height:21px}
  .cb-docs h2 {font-size:20px;line-height:1.4;font-weight:750;letter-spacing:-.045em}
  .cb-docs p {font-size:12px;margin-top:3px;color:var(--cb-muted)}
  .cb-docs-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:22px;border-top:1px solid var(--cb-line);padding-top:17px}
  .cb-doc-link {display:flex;align-items:center;gap:9px;padding:7px 17px;border-right:1px solid var(--cb-line)}
  .cb-doc-link:first-child {padding-left:0}
  .cb-doc-link:last-child {border-right:0;padding-right:0}
  .cb-doc-link>svg {color:var(--cb-blue)}
  .cb-doc-link strong {display:block;font-size:12px;font-weight:650}
  .cb-doc-link small {display:block;font-size:11px;color:var(--cb-muted)}
  .cb-doc-link .cb-arrow {width:14px;height:14px;color:var(--cb-muted);margin-left:auto}
  .cb-footer {border-top:1px solid var(--cb-line);padding-block:22px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px;color:var(--cb-muted)}
  .cb-footer-links {display:flex;flex-wrap:wrap;gap:17px}
  .cb-footer-links a {display:inline-flex;align-items:center;gap:5px}
  .cb-footer svg {width:14px;height:14px}
  @media(max-width:760px) {
    .cb-wrap {width:calc(100% - 40px)}
    .cb-header-inner {gap:12px;flex-wrap:wrap;padding-block:15px}
    .cb-nav {order:3;width:100%;margin-left:0;justify-content:space-between;gap:8px;border-top:1px solid var(--cb-line);padding-top:8px}
    .cb-login {margin-left:auto}
    .cb-nav a {font-size:12px}
    .cb-hero {grid-template-columns:1fr;gap:28px;padding-block:24px 32px}
    .cb-headline {font-size:40px}
    .cb-feature-grid {grid-template-columns:1fr}
    .cb-section-head {align-items:flex-start;flex-direction:column;gap:5px}
    .cb-docs {padding:22px}
    .cb-docs-grid {grid-template-columns:1fr;gap:8px}
    .cb-doc-link,.cb-doc-link:first-child,.cb-doc-link:last-child {padding:10px 0;border-right:0}
    .cb-docs h2 {font-size:18px}
    .cb-footer {align-items:flex-start;flex-direction:column}
    .cb-page {min-height:0}
  }
  @media(max-width:400px) {
    .cb-wrap {width:calc(100% - 32px)}
    .cb-headline {font-size:34px}
    .cb-nav {gap:4px}
    .cb-nav svg {width:14px;height:14px}
    .cb-action {padding-inline:12px;font-size:12px}
  }
  @media(pointer:coarse) {
    .cb-nav a,.cb-login,.cb-doc-link,.cb-install-link,.cb-footer a,.cb-feature-service-link {min-height:44px}
  }

/* 기존 게시판·회원 화면도 선택한 클린 블루 팔레트를 사용한다. */
:root,[data-theme="light"],[data-theme="dark"],:root:not([data-theme="light"]){
  --premium-page:var(--cb-paper);--premium-surface:var(--cb-paper);--premium-surface-2:var(--cb-surface);
  --premium-text:var(--cb-ink);--premium-muted:var(--cb-muted);--premium-line:var(--cb-line);
  --premium-line-strong:color-mix(in srgb,var(--cb-ink) 22%,var(--cb-paper));
  --premium-accent:var(--cb-blue);--premium-accent-strong:var(--cb-blue);
  --premium-accent-soft:var(--cb-tint);--premium-accent-text:var(--cb-on-blue);
  --premium-violet:var(--cb-blue);--premium-violet-soft:var(--cb-tint);
  --premium-radius:12px;--premium-radius-sm:8px;
  --premium-shadow:0 1px 3px color-mix(in srgb,var(--cb-ink) 6%,transparent);
  --premium-shadow-hover:0 4px 14px color-mix(in srgb,var(--cb-ink) 9%,transparent);
  --brand-deep:var(--cb-blue);--radius-field:.5rem;--radius-box:.75rem;
}
body:not(.admin-page){font-family:Pretendard,"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body:not(.admin-page) .wrap{max-width:1200px;padding-inline:40px}
body.modern-home .main-area{width:100%;max-width:none;padding:0}
.site-header{background:var(--cb-paper);border-color:var(--cb-line);box-shadow:none;backdrop-filter:none}
.site-header .site-header-inner{display:flex;align-items:center;min-height:78px;gap:24px;padding-block:10px}
.site-header .navbar-start,.site-header .navbar-end{width:auto;flex:none}
.site-header .navbar-end{gap:10px}
.site-utility-icons{gap:3px}
.site-primary-nav{display:flex;gap:22px;font-size:13px;color:var(--cb-ink)}
.site-primary-nav a{gap:6px;font-weight:600}
.site-primary-nav a .icon{color:var(--cb-muted)}
.site-icon-button.drawer-button{display:grid}
.site-header .cb-login{height:auto;color:var(--cb-ink);font-size:12px}
.site-header .cb-logo{color:var(--cb-ink)}
body:not(.admin-page) .btn-primary{box-shadow:none}
body:not(.admin-page) .btn{font-weight:650}
body:not(.admin-page) .card{border-radius:12px}
body[data-section="board"] .main-area,body[data-section="all"] .main-area{padding-top:32px}
body[data-section="board"] .page-head h1,body[data-section="all"] .page-head h1{font-size:clamp(28px,4vw,40px);line-height:1.3}
body[data-section="board"] .post-card,body[data-section="all"] .post-card{box-shadow:var(--premium-shadow)}
.cb-footer{padding-bottom:28px;color:var(--cb-muted)}
.cb-footer-links{align-items:center;justify-content:flex-end}
.cb-hero,.cb-section,.cb-install{scroll-margin-top:100px}
.auth-brand-mark .cb-logo{line-height:1}
@media(max-width:1050px){
  .site-header .site-header-inner{gap:14px;flex-wrap:wrap;padding-block:12px}
  .site-primary-nav{order:3;width:100%;height:auto;margin-left:0;padding-top:8px;border-top:1px solid var(--cb-line);flex-wrap:wrap;gap:10px 24px}
  .site-primary-nav a{min-height:36px}
  .site-header .navbar-end{margin-left:auto}
}
@media(max-width:760px){
  body:not(.admin-page) .wrap{padding-inline:20px}
  body.modern-home .main-area{padding:0}
  .site-header .site-header-inner{min-height:0;gap:8px}
  .site-primary-nav{display:flex;justify-content:space-between;gap:8px;font-size:12px}
  .site-header .navbar-end{gap:3px}
  .site-header .site-icon-button{width:32px;height:36px}
  .site-header .site-brand .cb-logo{font-size:19px;gap:8px}
  .site-header .cb-login{gap:4px;padding-inline:7px;font-size:11px}
  .site-header .cb-login .icon{display:none}
  .site-utility-icons{gap:0}
  .cb-footer-links{justify-content:flex-start;gap:8px 15px}
  body[data-section="board"] .main-area,body[data-section="all"] .main-area{padding-top:24px}
  .cb-footer{padding-bottom:84px}
  .cb-hero,.cb-section,.cb-install{scroll-margin-top:145px}
}
@media(max-width:400px){
  body:not(.admin-page) .wrap{padding-inline:16px}
  body.modern-home .main-area{padding:0}
  .site-primary-nav{gap:6px}
  .site-primary-nav a .icon{width:14px;height:14px}
}
