@font-face{font-family:"Paperlogy";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/Paperlogy-4Regular.woff") format("woff")}
@font-face{font-family:"Paperlogy";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/Paperlogy-5Medium.woff") format("woff")}
@font-face{font-family:"Paperlogy";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/Paperlogy-6SemiBold.woff") format("woff")}
@font-face{font-family:"Paperlogy";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/Paperlogy-7Bold.woff") format("woff")}
@font-face{font-family:"Paperlogy";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/Paperlogy-8ExtraBold.woff") format("woff")}
:root{--con-font:"Paperlogy","Malgun Gothic",sans-serif;--con-paper:#fff}
body:not(.wp-admin){background:#fff!important;font-family:var(--con-font)!important}
body:not(.wp-admin) :is(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,summary,table,th,td,dt,dd,pre){font-family:var(--con-font)!important}
body.con-site{background:#fff!important;font-family:var(--con-font)!important;letter-spacing:-.015em}
body.con-site :is(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,summary,table,th,td,dt,dd,pre),body.con-site .con-community,body.con-site .con-member-form{font-family:var(--con-font)!important}
body.con-site :is(h1,h2,h3){letter-spacing:-.035em}
body.con-site :is(.con-main,.con-header,.con-footer,.con-split-feature,.con-callout,.con-market-hero,.con-value-banner){background:#fff!important}
body.con-site :is(.con-split-feature,.con-callout){border:1px solid #e4e8eb}
body.con-site :is(.con-value-summary,.con-audit-box,.con-market-notice,.con-handover-preview,.con-calc-result){background:#fafbfc!important;border-color:#e3e7eb}
body.con-site .con-field :is(input,select,textarea){background:#fff}
body.con-site .con-visual-orbit{background:#f5f7f9;transform:none;inset:12px 0 0}
body.con-site .con-header-cta{background:#fff}
body.con-site .con-member-form .display-name{font-family:var(--con-font)!important}
body.con-site .con-value-banner{border-color:#e1e7eb}

/* ==========================================================================
   CON-DESIGN-01 천사온 공통 디자인 시스템 (기준 코어 0.4.12)
   - 모든 규칙은 body.con-site 범위. 워드프레스 관리자(.wp-admin)에는 적용하지 않는다.
   - 기능·문구·선택자·폼 구조는 바꾸지 않고 표현만 보강한다.
   ========================================================================== */
:root{--con-font:"Paperlogy","Malgun Gothic","Apple SD Gothic Neo",sans-serif;--con-paper:#fff}
body.con-site{
 --con-brand:#E08600;--con-brand-strong:#A85800;--con-brand-deep:#8A4B00;--con-brand-tint:#FFF6EA;--con-brand-line:#F2D6AE;
 --con-heart:#F2928F;--con-heart-tint:#FFF1F0;
 --con-ink:#1B2430;--con-text:#2F3A46;--con-muted:#56616D;--con-subtle:#636D79;
 --con-line:#E5E8EC;--con-line-strong:#D3D9E0;--con-surface:#F7F8FA;--con-surface-2:#F1F3F6;
 --con-success:#1F7A4D;--con-success-tint:#F1F8F4;--con-warning:#9A5B00;--con-warning-tint:#FFF8EC;--con-danger:#C0362C;--con-danger-tint:#FFF4F2;--con-info:#2E5B8A;
 --con-radius:16px;--con-radius-sm:10px;--con-radius-md:12px;
 --con-shadow:0 1px 2px rgba(16,24,40,.04),0 6px 20px rgba(16,24,40,.05);
 --con-shadow-lift:0 2px 4px rgba(16,24,40,.05),0 12px 28px rgba(16,24,40,.08);
 --con-focus:0 0 0 3px #fff,0 0 0 6px #A85800;
 --con-orange:#E08600;--con-mint:#F7F8FA}
body:not(.wp-admin){background:#fff!important;font-family:var(--con-font)!important}
body:not(.wp-admin) :is(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,summary,table,th,td,dt,dd,pre){font-family:var(--con-font)!important}
body.con-site{background:#fff!important;font-family:var(--con-font)!important;color:var(--con-text);font-size:16px;line-height:1.7;letter-spacing:-.01em;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.con-site :is(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,summary,table,th,td,dt,dd,pre),body.con-site .con-community,body.con-site .con-member-form,body.con-site .con-member-form .display-name{font-family:var(--con-font)!important}
body.con-site :is(h1,h2,h3,h4){color:var(--con-ink);font-weight:700;letter-spacing:-.03em;word-break:keep-all}
body.con-site h1{line-height:1.3}
body.con-site :is(h2,h3){line-height:1.4}
body.con-site :is(.con-main,.con-header,.con-footer){background:#fff!important}
body.con-site ::selection{background:#FFE3B8;color:var(--con-ink)}
body.con-site :focus{outline:none}
body.con-site :focus-visible{outline:3px solid var(--con-brand-strong)!important;outline-offset:3px;border-radius:6px}
body.con-site :is(input,select,textarea):focus-visible{outline:none!important;border-color:var(--con-brand-strong)!important;box-shadow:0 0 0 3px #FBE2C0!important}
body.con-site small{font-size:14px}
body.con-site strong,body.con-site b{font-weight:700}
body.con-site .con-skip{border-radius:10px;font-weight:700;box-shadow:var(--con-shadow-lift);color:var(--con-ink)}

/* ---------- 머리글·메뉴 ---------- */
body.con-site .con-header{border-bottom:1px solid var(--con-line);position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97)!important}
body.con-site .con-header-inner{min-height:80px;gap:28px}
body.con-site .con-logo.con-logo-image img{width:140px;max-height:76px}
body.con-site .con-nav{gap:6px;font-size:16px;font-weight:600}
body.con-site .con-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:0;border-radius:10px;color:var(--con-text);position:relative}
body.con-site .con-nav a:hover{background:var(--con-surface);color:var(--con-ink)}
body.con-site .con-nav a[aria-current]{color:var(--con-brand-strong);background:var(--con-brand-tint)}
body.con-site .con-nav a[aria-current]::after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;border-radius:2px;background:var(--con-brand)}
body.con-site .con-header-cta{min-height:44px;padding:10px 16px;border-radius:12px;font-size:15px;font-weight:700;color:var(--con-ink);border:1px solid var(--con-line-strong);background:#fff!important;gap:8px}
body.con-site .con-header-cta:hover{border-color:var(--con-brand-strong);color:var(--con-brand-strong)}
body.con-site .con-header-cta svg{width:16px;height:16px}
body.con-site .con-menu-button{min-height:44px;min-width:44px;align-items:center;justify-content:center;padding:8px 10px;border-radius:10px;font-size:15px!important;font-weight:700;color:var(--con-ink)!important}
body.con-site .con-menu-button:hover{background:var(--con-surface)}

/* ---------- 버튼·링크 ---------- */
body.con-site .con-btn{min-height:52px;gap:10px;padding:13px 24px;border-radius:12px;background:var(--con-brand-strong);border:1px solid var(--con-brand-strong);color:#fff!important;font-size:16px;font-weight:700;letter-spacing:-.01em;box-shadow:0 1px 2px rgba(138,75,0,.18);transition:background .15s,border-color .15s,box-shadow .15s}
body.con-site .con-btn:hover{background:var(--con-brand-deep);border-color:var(--con-brand-deep)}
body.con-site .con-btn svg{width:18px;height:18px}
body.con-site .con-btn-light{background:#fff;color:var(--con-ink)!important;border-color:var(--con-line-strong);box-shadow:none}
body.con-site .con-btn-light:hover{background:var(--con-surface);border-color:var(--con-subtle);color:var(--con-ink)!important}
body.con-site :is(.con-btn,.con-mini-btn)[disabled],body.con-site :is(.con-btn,.con-mini-btn)[aria-disabled=true]{opacity:.55;cursor:not-allowed}
body.con-site .con-mini-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 16px;border:1px solid var(--con-line-strong);border-radius:10px;background:#fff;color:var(--con-ink);font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}
body.con-site .con-mini-btn:hover{border-color:var(--con-brand-strong);color:var(--con-brand-strong)}
body.con-site .con-text-link{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-size:15px;font-weight:700;color:var(--con-brand-strong);white-space:nowrap}
body.con-site .con-text-link:hover{color:var(--con-brand-deep);text-decoration:underline;text-underline-offset:4px}
body.con-site .con-read-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;color:var(--con-brand-strong)}
body.con-site .con-actions{gap:12px}

/* ---------- 라벨·배지 ---------- */
body.con-site .con-eyebrow{font-size:14px;font-weight:700;color:var(--con-brand-strong);letter-spacing:0}
body.con-site .con-eyebrow i{width:8px;height:8px;background:var(--con-brand)}
body.con-site .con-pill{display:inline-flex;align-items:center;min-height:28px;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:700;line-height:1.5;background:var(--con-surface);border:1px solid var(--con-line);color:var(--con-muted)}
body.con-site .con-tiny-label{font-size:13px;font-weight:700;color:var(--con-muted)}
body.con-site .con-small{font-size:14px!important;line-height:1.8!important;color:var(--con-subtle)}
body.con-site .con-small a,body.con-site .con-notice a,body.con-site .con-check a{color:var(--con-brand-strong);text-decoration:underline;text-underline-offset:3px}
body.con-site .con-icon-tile{width:48px;height:48px;border-radius:14px;background:var(--con-brand-tint);color:var(--con-brand-strong);border:1px solid #F7E3C6}
body.con-site .con-icon-tile svg{width:22px;height:22px}

/* ---------- 면·카드 ---------- */
body.con-site .con-panel{background:#fff;border:1px solid var(--con-line);border-radius:var(--con-radius);padding:32px;box-shadow:var(--con-shadow)}
body.con-site .con-panel h2{font-size:24px!important;line-height:1.4!important}
body.con-site .con-panel>p{font-size:16px;color:var(--con-muted);line-height:1.8}
body.con-site .con-section{margin:88px 0}
body.con-site .con-section-head{margin-bottom:28px}
body.con-site .con-section-head h2{font-size:30px!important;line-height:1.35!important}

/* ---------- 폼 ---------- */
body.con-site .con-field{gap:8px;font-size:15px;font-weight:700;color:var(--con-ink);margin-bottom:22px}
body.con-site .con-field small{font-size:13px;font-weight:500;color:var(--con-subtle);line-height:1.6}
body.con-site .con-field :is(input,select,textarea){min-height:50px;background:#fff;border:1px solid var(--con-line-strong);border-radius:10px;padding:12px 14px;color:var(--con-ink);font-size:16px!important;font-weight:500;transition:border-color .15s,box-shadow .15s}
body.con-site .con-field :is(input,select,textarea):hover{border-color:#B7C0CA}
body.con-site .con-field textarea{min-height:150px;line-height:1.7}
body.con-site .con-field :is(input,textarea)::placeholder{color:#8A939D}
body.con-site .con-field :is(input,select,textarea):user-invalid{border-color:var(--con-danger)!important;background:var(--con-danger-tint)}
body.con-site .con-check{gap:12px;font-size:15px;line-height:1.7;color:var(--con-text);min-height:44px;align-items:flex-start;padding:6px 0;margin-bottom:12px}
body.con-site .con-check input,body.con-site .con-days input{width:20px;height:20px;margin-top:3px;accent-color:var(--con-brand-strong);flex-shrink:0}
body.con-site select{cursor:pointer}
body.con-site summary{min-height:44px;display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--con-ink);padding:10px 0;list-style:none}
body.con-site summary::-webkit-details-marker{display:none}
body.con-site summary::before{content:"";width:8px;height:8px;border-right:2px solid var(--con-brand-strong);border-bottom:2px solid var(--con-brand-strong);transform:rotate(-45deg);transition:transform .15s;flex-shrink:0;margin:0 4px 0 2px}
body.con-site details[open]>summary::before{transform:rotate(45deg)}
body.con-site pre{font-size:14px;background:var(--con-surface);border:1px solid var(--con-line);color:var(--con-text)}

/* ---------- 안내·상태 ---------- */
body.con-site .con-notice{background:var(--con-surface)!important;border:1px solid var(--con-line);border-left:4px solid var(--con-brand);border-radius:12px;padding:16px 20px;font-size:15px!important;line-height:1.8!important;color:var(--con-text)}
body.con-site .con-success,body.con-site .con-error{position:relative;display:block;min-height:88px;padding:18px 22px 18px 92px;border-radius:14px;font-size:15px;line-height:1.75;margin-bottom:24px}
body.con-site .con-success{background:var(--con-success-tint);border:1px solid #BFDCCB;color:#1C5A3B}
body.con-site .con-error{background:var(--con-danger-tint);border:1px solid #F0C9C3;color:#8E2A21}
body.con-site .con-success::before,body.con-site .con-error::before{content:"";position:absolute;left:14px;top:50%;width:64px;height:64px;transform:translateY(-50%);background:center/contain no-repeat}
body.con-site .con-success::before{background-image:url("characters/oni-done.svg")}
body.con-site .con-error::before{background-image:url("characters/oni-error.svg")}
body.con-site .con-empty{padding:56px 28px}
body.con-site .con-empty>.con-icon-tile{width:112px;height:112px;border:0;background:url("characters/oni-progress.svg") center/contain no-repeat;margin:0 auto 12px;display:block}
body.con-site .con-empty>.con-icon-tile svg{display:none}
body.con-site .con-empty h2,body.con-site .con-empty h3{font-size:22px!important;margin:8px 0 10px!important}
body.con-site .con-empty p{font-size:16px;color:var(--con-muted);line-height:1.8}
body.con-site .con-result-empty{min-height:420px;gap:6px}
body.con-site .con-result-empty>img{order:-1;width:155px!important;height:155px;max-height:155px;margin:0 0 6px}
body.con-site .con-result-empty:has(>img)>.con-icon-tile{display:none}
body.con-site .con-result-empty h2{font-size:26px!important;margin:6px 0 10px!important}
body.con-site .con-result-empty p{font-size:16px;color:var(--con-muted);line-height:1.8}
body.con-site .con-guide-inline{width:155px;height:155px;object-fit:contain}
body.con-site [aria-busy=true]{cursor:progress}

/* ---------- 홈 ---------- */
body.con-site .con-hero{padding:72px 0 64px;gap:48px}
body.con-site .con-hero h1{font-size:clamp(40px,4.1vw,56px)!important;line-height:1.28!important;letter-spacing:-.04em;margin:18px 0 22px!important}
body.con-site .con-hero h1 em{color:var(--con-brand-strong);background:linear-gradient(transparent 68%,#FFE2B3 68%);padding:0 2px 2px}
body.con-site .con-hero-copy>p{font-size:19px;line-height:1.85;color:var(--con-muted)}
body.con-site .con-hero-notes{font-size:14px;color:var(--con-muted);gap:18px;flex-wrap:wrap}
body.con-site .con-hero-notes svg{width:16px;height:16px;color:var(--con-success)}
body.con-site .con-hero-visual{padding:30px 170px 40px 10px}
body.con-site .con-visual-orbit{inset:0 20px 0 30px;border-radius:50%;background:var(--con-surface)!important;transform:none}
body.con-site .con-floating-tag{transform:none;top:6px;right:0;background:#fff;border:1px solid var(--con-brand-line);color:var(--con-brand-deep);font-size:14px;padding:9px 16px;border-radius:999px;box-shadow:var(--con-shadow)}
body.con-site .con-plan-card{transform:none;max-width:390px;border:1px solid var(--con-line);border-radius:22px;box-shadow:var(--con-shadow-lift);padding:28px}
body.con-site .con-plan-status{font-size:13px;padding:2px 10px;border-radius:999px;background:var(--con-brand-tint);border:1px solid var(--con-brand-line);color:var(--con-brand-deep);font-weight:700}
body.con-site .con-plan-card h2{font-size:32px!important;line-height:1.3!important}
body.con-site .con-plan-task{border-top:1px solid var(--con-line);padding:13px 0}
body.con-site .con-plan-task b{font-size:14px;color:var(--con-brand-strong);font-weight:800}
body.con-site .con-plan-task strong{font-size:15px;color:var(--con-ink)}
body.con-site .con-plan-task div span{font-size:13px;color:var(--con-subtle)}
body.con-site .con-plan-task>span{color:var(--con-success);font-size:18px}
body.con-site .con-plan-progress span{height:6px;background:var(--con-surface-2)}
body.con-site .con-plan-progress span:nth-child(-n+3){background:var(--con-brand)}
body.con-site .con-plan-card>p{font-size:13px;color:var(--con-subtle)}
body.con-site .con-mascot{width:180px!important;height:180px!important;right:-6px;bottom:0;filter:none}
body.con-site .con-quick{border:1px solid var(--con-line);border-radius:20px;padding:10px;gap:0;box-shadow:var(--con-shadow);margin-bottom:24px}
body.con-site .con-quick>a{padding:14px 18px;border-right:0;border-radius:14px;gap:14px;min-height:80px;transition:background .15s}
body.con-site .con-quick>a:hover{background:var(--con-surface)}
body.con-site .con-quick>a+a{box-shadow:-1px 0 0 var(--con-line)}
body.con-site .con-quick small{font-size:13px;color:var(--con-subtle)}
body.con-site .con-quick strong{font-size:17px;color:var(--con-ink)}
body.con-site .con-quick-arrow{color:var(--con-brand-strong)}
body.con-site .con-article-grid{gap:24px}
body.con-site .con-editorial-card{border-radius:18px;border:1px solid var(--con-line);box-shadow:var(--con-shadow);transition:box-shadow .18s,border-color .18s}
body.con-site .con-editorial-card:hover{transform:none;box-shadow:var(--con-shadow-lift);border-color:var(--con-line-strong)}
body.con-site .con-cover{height:164px;border-bottom:1px solid var(--con-line)}
body.con-site .con-cover>span{font-size:13px}
body.con-site .con-cover>b{font-size:24px}
body.con-site .con-cover svg{opacity:.22}
body.con-site .con-cover-1{background:#FFF6EA;color:#8A4B00}
body.con-site .con-cover-2{background:#FFF1F0;color:#9C3B37}
body.con-site .con-cover-3{background:#F2F6FA;color:#2E5B8A}
body.con-site .con-cover-4{background:#F7F8FA;color:#3A4652}
body.con-site .con-card-meta{font-size:13px;color:var(--con-subtle)}
body.con-site .con-editorial-body h3{font-size:19px!important;line-height:1.5!important}
body.con-site .con-editorial-body p{font-size:15px;line-height:1.75;color:var(--con-muted)}
body.con-site .con-split-feature{background:#fff!important;border:1px solid var(--con-line);box-shadow:var(--con-shadow);border-radius:24px;padding:56px}
body.con-site .con-split-feature h2{font-size:34px!important;line-height:1.3!important}
body.con-site .con-split-feature p{font-size:17px;color:var(--con-muted);line-height:1.85}
body.con-site .con-method-list>div>span{width:32px;height:32px;font-size:14px;font-weight:800;color:var(--con-brand-strong);border:1px solid var(--con-brand-line);background:var(--con-brand-tint)}
body.con-site .con-method-list strong{font-size:18px;color:var(--con-ink)}
body.con-site .con-method-list p{font-size:15px}
body.con-site .con-connect-card{background:#fff!important;border:1px solid var(--con-line);box-shadow:var(--con-shadow);border-radius:20px;min-height:260px;transition:box-shadow .18s,border-color .18s}
body.con-site .con-connect-card:hover{transform:none;box-shadow:var(--con-shadow-lift);border-color:var(--con-line-strong)}
body.con-site .con-connect-card::before{content:"";position:absolute;left:28px;top:0;width:44px;height:4px;border-radius:0 0 4px 4px;background:var(--con-brand)}
body.con-site .con-tone-2::before{background:var(--con-heart)}
body.con-site .con-tone-3::before{background:#7B9CC0}
body.con-site .con-connect-card strong{font-size:15px;color:var(--con-text)}
body.con-site .con-connect-card p{font-size:15px;color:var(--con-muted);max-width:88%}
body.con-site .con-circle-arrow{width:44px;height:44px;border-color:var(--con-line-strong);color:var(--con-brand-strong);background:#fff}
body.con-site .con-brand-strip h2{font-size:28px!important}
body.con-site .con-brand-strip p{font-size:16px}
body.con-site .con-brand-strip small{font-size:14px;color:var(--con-subtle)}
body.con-site .con-service-links a{border-radius:14px;font-size:18px;color:var(--con-ink);min-height:88px;transition:border-color .15s}
body.con-site .con-service-links a:hover{border-color:var(--con-brand-strong)}
body.con-site .con-service-links span{font-size:14px}

/* ---------- 바닥글 ---------- */
body.con-site .con-footer{border-top:1px solid var(--con-line);padding:56px 0 28px;margin-top:96px}
body.con-site .con-footer-top p{font-size:15px;color:var(--con-muted)}
body.con-site .con-footer-top>div>strong{font-size:15px;color:var(--con-ink);margin-bottom:10px}
body.con-site .con-footer-top>div>a:not(.con-logo){display:flex;align-items:center;min-height:44px;margin:0;font-size:15px;color:var(--con-muted)}
body.con-site .con-footer-top>div>a:not(.con-logo):hover{color:var(--con-brand-strong)}
body.con-site .con-operator{font-size:13px;color:var(--con-subtle);border-top-color:var(--con-line)}
body.con-site .con-operator strong{color:var(--con-text)}
body.con-site .con-footer-bottom{font-size:13px;color:var(--con-subtle);border-top-color:var(--con-line)}
body.con-site .con-footer-bottom a{display:inline-flex;align-items:center;min-height:44px}

/* ---------- 쪽 머리말·검색·필터·탭·쪽수 ---------- */
body.con-site .con-page-heading{padding:64px 0 36px}
body.con-site .con-page-heading h1{font-size:42px!important;line-height:1.3!important}
body.con-site .con-lead{font-size:18px!important;line-height:1.8!important;color:var(--con-muted)}
body.con-site .con-filter-buttons{gap:8px}
body.con-site .con-filter-buttons button{min-height:44px;padding:9px 18px;border-radius:999px;font-size:15px;font-weight:600;border:1px solid var(--con-line-strong);color:var(--con-text);background:#fff}
body.con-site .con-filter-buttons button:hover{border-color:var(--con-brand-strong);color:var(--con-brand-strong)}
body.con-site .con-filter-buttons button[aria-pressed=true]{background:var(--con-ink);border-color:var(--con-ink);color:#fff}
body.con-site .con-search input,body.con-site .con-notes-search :is(input,select){min-height:50px;border:1px solid var(--con-line-strong);border-radius:12px;font-size:16px;padding:12px 16px 12px 44px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236B7581' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") 14px 50%/20px no-repeat}
body.con-site .con-notes-search select{padding-left:14px;background-image:none}
body.con-site .con-notes-search>button{min-height:50px}
body.con-site .con-tabs{gap:6px;border-bottom:1px solid var(--con-line)}
body.con-site .con-tabs button{min-height:48px;padding:10px 16px;font-size:16px;color:var(--con-muted);border-bottom:3px solid transparent;margin-bottom:-1px}
body.con-site .con-tabs button:hover{color:var(--con-ink)}
body.con-site .con-tabs button[aria-selected=true]{color:var(--con-brand-strong);border-color:var(--con-brand)}
body.con-site :is(.con-note-pagination,.con-desk-pagination){gap:8px}
body.con-site :is(.con-note-pagination,.con-desk-pagination)>a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--con-line);border-radius:10px;font-size:15px;color:var(--con-text);background:#fff}
body.con-site :is(.con-note-pagination,.con-desk-pagination)>a:hover{border-color:var(--con-brand-strong)}
body.con-site :is(.con-note-pagination,.con-desk-pagination)>a[aria-current]{background:var(--con-ink);border-color:var(--con-ink);color:#fff;font-weight:700}

/* ---------- 진단·도구 ---------- */
body.con-site .con-workspace{gap:28px}
body.con-site .con-priority-list li{font-size:16px;line-height:1.8;padding:18px 0 18px 48px}
body.con-site .con-priority-list li::before{font-size:14px;color:var(--con-brand-strong);width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--con-brand-tint);top:15px}
body.con-site .con-output-line{font-size:15px;gap:20px}
body.con-site .con-output-line>span{color:var(--con-subtle)}
body.con-site .con-output-line strong{font-size:16px;color:var(--con-ink)}
body.con-site .con-days{font-size:15px}
body.con-site .con-days label{min-height:44px;align-items:flex-start;padding:4px 0}
body.con-site .con-days input:checked+span{color:var(--con-subtle)}
body.con-site .con-calc-result{background:var(--con-surface)!important;border-color:var(--con-line)}
body.con-site .con-calc-result h3{font-size:18px!important}
body.con-site .con-big-number{font-size:38px!important;color:var(--con-ink)!important;letter-spacing:-.04em}
body.con-site .con-pack{border-radius:18px;box-shadow:var(--con-shadow)}
body.con-site .con-pack-no{color:var(--con-brand-strong);font-size:15px}
body.con-site .con-pack p{font-size:15px;line-height:1.75}
body.con-site .con-record-facts{font-size:15px}
body.con-site .con-record-facts>div{background:var(--con-surface);border:1px solid var(--con-line);border-radius:10px}
body.con-site .con-record-facts dt{font-size:13px;color:var(--con-subtle)}
body.con-site .con-intake-info h2{font-size:32px!important}

/* ---------- 정보 글 ---------- */
body.con-site .con-article{max-width:800px}
body.con-site .con-article nav{font-size:14px;color:var(--con-subtle)}
body.con-site .con-article nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--con-brand-strong);font-weight:700}
body.con-site .con-article h1{font-size:40px!important;line-height:1.35!important}
body.con-site .con-meta{font-size:14px!important;color:var(--con-subtle)}
body.con-site .con-prose{font-size:18px;line-height:1.9;color:var(--con-text)}
body.con-site .con-prose p{line-height:1.9!important}
body.con-site .con-prose h2{font-size:27px!important;padding-top:6px;border-top:1px solid var(--con-line);padding-top:32px!important}
body.con-site .con-prose a{color:var(--con-brand-strong);text-decoration:underline;text-underline-offset:3px}
body.con-site .con-prose blockquote{margin:28px 0;padding:18px 22px;border-left:4px solid var(--con-brand);background:var(--con-surface);border-radius:0 12px 12px 0;font-size:16px;color:var(--con-muted)}
body.con-site .con-prose table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:15px;margin:24px 0}
body.con-site .con-prose :is(th,td){border:1px solid var(--con-line);padding:10px 14px;text-align:left;white-space:nowrap}
body.con-site .con-prose th{background:var(--con-surface);font-weight:700}
body.con-site .con-callout{position:relative;background:#fff!important;border:1px solid var(--con-brand-line);border-radius:20px;padding:32px 36px;box-shadow:var(--con-shadow)}
body.con-site .con-callout>strong{font-size:21px;color:var(--con-ink)}
body.con-site .con-callout p{font-size:16px;color:var(--con-muted)}
@media(min-width:768px){body.con-site .con-callout{padding-right:190px}
body.con-site .con-callout::after{content:"";position:absolute;right:26px;bottom:20px;width:140px;height:140px;background:url("characters/oni-explain.svg") center/contain no-repeat;pointer-events:none}}

/* ---------- 회원·가입·결제 ---------- */
body.con-site .con-member-form{max-width:640px}
body.con-site .con-member-form label{font-size:15px;color:var(--con-ink);font-weight:600}
body.con-site .con-member-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),body.con-site .con-member-form select,body.con-site .con-member-form textarea{min-height:50px;border:1px solid var(--con-line-strong);border-radius:10px;background:#fff;font-size:16px}
body.con-site .con-member-form input[type=submit],body.con-site .con-member-form button[type=submit],body.con-site .con-member-form .button-primary{min-height:52px;background:var(--con-brand-strong)!important;border:1px solid var(--con-brand-strong)!important;color:#fff!important;border-radius:12px!important;font-size:16px!important;font-weight:700;padding:13px 26px!important;cursor:pointer}
body.con-site .con-member-form input[type=submit]:hover,body.con-site .con-member-form button[type=submit]:hover{background:var(--con-brand-deep)!important}
body.con-site .con-member-form input[type=checkbox]{width:20px;height:20px;accent-color:var(--con-brand-strong);vertical-align:-4px;margin-right:6px}
body.con-site .con-member-form :is(.login-remember,.forgetmenot) label{display:inline-flex;align-items:center;min-height:44px}
body.con-site .con-member-form legend{font-size:24px;color:var(--con-ink)}
body.con-site .con-member-form :is(.link-text,.req-text){font-size:14px}
body.con-site .con-member-form :is(table){width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}
body.con-site .con-member-form :is(th,td){border-bottom:1px solid var(--con-line);padding:12px 10px;text-align:left;white-space:nowrap}
body.con-site .con-member-form th{color:var(--con-subtle);font-weight:700;font-size:14px}

/* ---------- 커뮤니티(KBoard) ---------- */
body.con-site .con-community{font-size:15px}
body.con-site .con-community table{font-size:15px;width:100%;border-collapse:collapse}
body.con-site .con-community .kboard-list{overflow-x:auto;border:1px solid var(--con-line);border-radius:14px}
body.con-site .con-community .kboard-list thead td{background:var(--con-surface);font-size:14px;font-weight:700;color:var(--con-muted);padding:12px 10px;border-bottom:1px solid var(--con-line)}
body.con-site .con-community .kboard-list tbody td{padding:14px 10px;border-bottom:1px solid var(--con-line);vertical-align:middle}
body.con-site .con-community .kboard-list tbody tr:last-child td{border-bottom:0}
body.con-site .con-community .kboard-list-notice{background:var(--con-brand-tint)}
body.con-site .con-community .kboard-list-title a{display:block;padding:4px 0;color:var(--con-ink);font-weight:600}
body.con-site .con-community .kboard-comments-count{color:var(--con-brand-strong);font-weight:700}
body.con-site .con-community :is(select,input[type=search],input[type=text]){min-height:46px!important;font-size:16px!important;padding:8px 12px!important;border:1px solid var(--con-line-strong)!important;border-radius:10px!important;background:#fff}
body.con-site .con-community :is(.kboard-default-button-small,.kboard-forum-one-button-small){display:inline-flex!important;align-items:center;justify-content:center;min-height:46px;padding:8px 18px!important;background:var(--con-brand-strong)!important;border:0!important;border-radius:10px!important;font-size:15px!important;font-weight:700;color:#fff!important}
body.con-site .con-community .kboard-pagination ul{display:flex;gap:8px;justify-content:center;list-style:none;padding:0;margin:24px 0}
body.con-site .con-community .kboard-pagination li a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--con-line);border-radius:10px}
body.con-site .con-community .kboard-pagination li.active a{background:var(--con-ink);color:#fff;border-color:var(--con-ink)}
body.con-site .con-community .kboard-list-header,body.con-site .con-community .kboard-search{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:12px 0}
body.con-site .con-community .kboard-control{display:flex;justify-content:flex-end;margin:12px 0}
body.con-site .con-community .kboard-content .content-view{font-size:17px;line-height:1.9}

/* ---------- 반응형: 글자 13px 이상·터치 44px 이상 유지 ---------- */
@media(max-width:1100px){
 body.con-site .con-nav{gap:2px;font-size:15px}
 body.con-site .con-nav a{padding:8px 10px}
 body.con-site .con-header-cta{font-size:14px;padding:9px 13px}
 body.con-site .con-quick strong{font-size:16px}
 body.con-site .con-quick small{font-size:13px}
 body.con-site .con-quick .con-icon-tile{width:42px;height:42px}
 body.con-site .con-hero-visual{padding-right:140px}
 body.con-site .con-mascot{width:150px!important;height:150px!important}
}
@media(max-width:850px){
 body.con-site .con-header-inner{min-height:72px}
 body.con-site .con-nav{top:72px;padding:8px 20px 18px;box-shadow:0 12px 24px rgba(16,24,40,.08);gap:0}
 body.con-site .con-nav a{display:flex;min-height:52px;padding:12px 6px;border-radius:0;border-bottom:1px solid var(--con-line);font-size:17px}
 body.con-site .con-nav a[aria-current]{background:transparent}
 body.con-site .con-nav a[aria-current]::after{left:auto;right:6px;top:50%;bottom:auto;width:8px;height:8px;border-radius:50%;transform:translateY(-50%)}
 body.con-site .con-hero{grid-template-columns:1fr;gap:12px;padding:52px 0 40px}
 body.con-site .con-hero-visual{max-width:560px;width:100%;margin:0 auto;padding:30px 160px 40px 0}
 body.con-site .con-hero .con-btn{font-size:16px;min-height:52px;padding:13px 20px}
 body.con-site .con-hero-notes{font-size:14px}
 body.con-site .con-plan-task strong{font-size:15px}
 body.con-site .con-plan-task div span{font-size:13px}
 body.con-site .con-floating-tag{font-size:13px}
 body.con-site .con-quick{padding:8px}
 body.con-site .con-quick>a+a{box-shadow:none}
 body.con-site .con-quick>a{border-bottom:0!important}
 body.con-site .con-filter-buttons button{font-size:15px}
 body.con-site .con-field small{font-size:13px}
}
@media(max-width:620px){
 body.con-site{font-size:16px}
 body.con-site .con-header-inner{min-height:64px}
 body.con-site .con-nav{top:64px}
 body.con-site .con-logo.con-logo-image img{width:108px;max-height:58px}
 body.con-site .con-header-cta{font-size:14px;padding:8px 12px;min-height:44px}
 body.con-site .con-header-cta svg{width:14px;height:14px}
 body.con-site .con-menu-button{font-size:15px!important}
 body.con-site .con-hero{padding:36px 0 28px}
 body.con-site .con-hero h1{font-size:34px!important;line-height:1.3!important}
 body.con-site .con-hero-copy>p{font-size:16px}
 body.con-site .con-hero .con-actions{flex-direction:column;align-items:stretch}
 body.con-site .con-hero .con-btn{width:100%}
 body.con-site .con-hero-notes{font-size:14px;gap:12px}
 body.con-site .con-hero-visual{max-width:400px;padding:118px 0 8px;margin:4px auto 10px}
 body.con-site .con-visual-orbit{inset:40px 10px 0;border-radius:40%}
 body.con-site .con-mascot{width:127px!important;height:127px!important;right:0;top:0;bottom:auto}
 body.con-site .con-floating-tag{right:auto;left:0;top:40px}
 body.con-site .con-plan-card{max-width:none;padding:22px}
 body.con-site .con-plan-card h2{font-size:27px!important}
 body.con-site .con-plan-task strong{font-size:15px}
 body.con-site .con-plan-task div span{font-size:13px}
 body.con-site .con-quick{grid-template-columns:1fr;padding:6px;border-radius:16px}
 body.con-site .con-quick>a{padding:12px;min-height:64px;border-right:0!important}
 body.con-site .con-quick>a+a{box-shadow:0 -1px 0 var(--con-line)}
 body.con-site .con-quick .con-icon-tile{width:42px;height:42px}
 body.con-site .con-quick .con-icon-tile svg{width:20px;height:20px}
 body.con-site .con-quick strong{font-size:16px}
 body.con-site .con-quick small{font-size:13px}
 body.con-site .con-section{margin:56px 0}
 body.con-site .con-section-head{flex-wrap:wrap}
 body.con-site .con-section-head h2{font-size:25px!important}
 body.con-site .con-text-link{font-size:14px}
 body.con-site .con-cover>b{font-size:22px}
 body.con-site .con-editorial-body h3{font-size:18px!important}
 body.con-site .con-editorial-body p{font-size:15px}
 body.con-site .con-split-feature{padding:28px 22px;border-radius:20px}
 body.con-site .con-split-feature h2{font-size:27px!important}
 body.con-site .con-split-feature p{font-size:16px}
 body.con-site .con-method-list strong{font-size:17px}
 body.con-site .con-method-list p{font-size:15px}
 body.con-site .con-connect-card{min-height:0;padding:28px 22px 78px}
 body.con-site .con-connect-card h3{font-size:22px!important}
 body.con-site .con-connect-card p{max-width:100%}
 body.con-site .con-brand-strip h2{font-size:24px!important}
 body.con-site .con-brand-strip p{font-size:15px}
 body.con-site .con-service-links a{font-size:17px;padding:18px 16px;min-height:0}
 body.con-site .con-service-links span{font-size:13px}
 body.con-site .con-footer{margin-top:64px;padding:40px 0 24px}
 body.con-site .con-footer-top>div>a:not(.con-logo){font-size:15px;min-height:44px}
 body.con-site .con-footer-bottom{font-size:13px}
 body.con-site .con-operator{font-size:13px}
 body.con-site .con-page-heading{padding:36px 0 24px}
 body.con-site .con-page-heading h1{font-size:30px!important;line-height:1.35!important}
 body.con-site .con-lead{font-size:16px!important}
 body.con-site .con-panel{padding:24px 20px;border-radius:16px}
 body.con-site .con-panel h2{font-size:22px!important}
 body.con-site .con-panel>p{font-size:15px}
 body.con-site .con-form-grid{grid-template-columns:1fr!important}
 body.con-site .con-field{font-size:15px}
 body.con-site .con-field small{font-size:13px}
 body.con-site .con-filter-bar{gap:14px}
 body.con-site .con-filter-buttons{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px;scrollbar-width:thin}
 body.con-site .con-filter-buttons button{font-size:15px;padding:9px 16px;flex-shrink:0;white-space:nowrap}
 body.con-site .con-tabs{gap:0;overflow-x:auto;justify-content:flex-start}
 body.con-site .con-tabs button{font-size:15px;padding:10px 12px;flex-shrink:0;white-space:nowrap}
 body.con-site .con-big-number{font-size:32px!important}
 body.con-site .con-priority-list li{font-size:15px;padding-left:44px}
 body.con-site .con-days{font-size:15px}
 body.con-site .con-notice{font-size:14px!important;padding:14px 16px}
 body.con-site .con-output-line{font-size:14px;flex-wrap:wrap}
 body.con-site .con-output-line strong{font-size:15px;text-align:left}
 body.con-site .con-board-toolbar{flex-wrap:wrap}
 body.con-site .con-board-toolbar .con-btn{font-size:15px;min-height:48px}
 body.con-site .con-board-toolbar p{font-size:15px}
 body.con-site .con-record-facts{font-size:14px}
 body.con-site .con-article h1{font-size:29px!important}
 body.con-site .con-meta{font-size:13px!important}
 body.con-site .con-prose{font-size:17px}
 body.con-site .con-prose h2{font-size:23px!important}
 body.con-site .con-callout{padding:24px 20px}
 body.con-site .con-callout>strong{font-size:19px}
 body.con-site .con-callout p{font-size:15px}
 body.con-site .con-result-empty{min-height:340px}
 body.con-site .con-result-empty h2{font-size:23px!important}
 body.con-site .con-success,body.con-site .con-error{padding:74px 18px 16px;min-height:0}
 body.con-site .con-success::before,body.con-site .con-error::before{top:12px;left:16px;width:54px;height:54px;transform:none}
 body.con-site .con-community{padding:8px 0}
 body.con-site .con-community table{font-size:15px}
 body.con-site .con-community .kboard-list :is(.kboard-list-uid,.kboard-list-vote,.kboard-list-view){display:none}
 body.con-site .con-community .kboard-list :is(.kboard-list-user,.kboard-list-date){font-size:13px;white-space:nowrap;color:var(--con-subtle)}
}
@media(max-width:360px){
 body.con-site .con-logo.con-logo-image img{width:96px}
 body.con-site .con-header-cta{font-size:13px;padding:8px 10px}
 body.con-site .con-hero h1{font-size:31px!important}
 body.con-site .con-hero-notes{font-size:13px}
 body.con-site .con-quick strong{font-size:15px}
 body.con-site .con-quick small{font-size:13px}
 body.con-site .con-section-head h2{font-size:23px!important}
 body.con-site .con-text-link{font-size:14px}
 body.con-site .con-filter-buttons button{font-size:14px;padding:9px 13px}
 body.con-site .con-tabs button{font-size:14px}
 body.con-site .con-community .kboard-list .kboard-list-date{display:none}
}
@media(prefers-reduced-motion:reduce){body.con-site *{transition:none!important}}
body.con-site .kboard-list-title a{display:inline-flex;align-items:center;min-height:44px}
body.con-site article :is(h2,h3)>a:only-child{display:inline-block;padding:10px 0;margin:-10px 0}

/* ---------- 로고 아래 문구(이미지 → 텍스트) ---------- */
body.con-site a.con-logo.con-logo-image{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;line-height:1;flex-shrink:0}
body.con-site .con-logo.con-logo-image img{display:block;height:auto}
body.con-site .con-logo-tagline{display:block;font-family:var(--con-font)!important;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:.01em;color:#141414;white-space:nowrap}
body.con-site .con-logo-tagline-sep{display:inline-block;margin:0 .3em;font-weight:700}
@media(max-width:620px){
 body.con-site .con-logo-tagline{font-size:12px}
}
