/* ── Used Luxury Design System ── */
:root{
  --ul-charcoal:#1A1A1A;
  --ul-gold:#C9A227;
  --ul-gold-light:#D4B44A;
  --ul-ivory:#F5F0E8;
  --ul-ivory-dark:#E8E0D2;
  --ul-gray-100:#F8F7F5;
  --ul-gray-200:#EEEBE6;
  --ul-gray-500:#8A8578;
  --ul-gray-700:#4A4740;
  --ul-radius:8px;
  --ul-shadow:0 2px 16px rgba(26,26,26,.08);
  --ul-shadow-lg:0 8px 32px rgba(26,26,26,.12);
  --ul-max-w:800px;
  --ul-transition:all .2s ease;
}
@media(prefers-reduced-motion:reduce){:root{--ul-transition:none}}

/* Reset WP theme chrome */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;padding:0;font-family:"Pretendard",-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--ul-charcoal);background:var(--ul-ivory);line-height:1.75;-webkit-font-smoothing:antialiased}

/* Typography */
h1,h2,h3,h4{font-family:"Noto Serif KR","Pretendard",serif;font-weight:700;letter-spacing:-.02em;line-height:1.3}
h1{font-size:clamp(1.75rem,4vw,2.5rem);margin:0 0 .5em}
h2{font-size:clamp(1.35rem,3vw,1.75rem);margin:2em 0 .75em;padding-bottom:.4em;
  border-bottom:2px solid var(--ul-gold);color:var(--ul-charcoal)}
h3{font-size:clamp(1.1rem,2.5vw,1.35rem);margin:1.5em 0 .5em;color:var(--ul-gray-700)}
p{margin:0 0 1.2em;font-size:1.05rem;line-height:1.8}
a{color:var(--ul-gold);text-decoration:none;transition:var(--ul-transition)}
a:hover{color:var(--ul-gold-light)}

/* ── Site Header ── */
.ul-header{position:sticky;top:0;z-index:100;background:var(--ul-charcoal);
  border-bottom:1px solid rgba(201,162,39,.2);backdrop-filter:blur(12px)}
.ul-header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;
  justify-content:space-between;padding:0 24px;height:64px}
.ul-logo{display:flex;align-items:center;gap:10px;color:#fff;font-family:"Noto Serif KR",serif;
  font-size:1.1rem;font-weight:700;text-decoration:none;letter-spacing:.02em}
.ul-logo img{height:36px;width:36px;border-radius:6px}
.ul-logo span{color:var(--ul-gold)}
.ul-nav{display:flex;gap:24px;list-style:none;margin:0;padding:0}
.ul-nav a{color:rgba(255,255,255,.8);font-size:.9rem;font-weight:500;padding:6px 0;
  border-bottom:2px solid transparent;transition:var(--ul-transition)}
.ul-nav a:hover,.ul-nav a.active{color:#fff;border-bottom-color:var(--ul-gold)}

/* Mobile nav */
.ul-menu-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:8px}
@media(max-width:768px){
  .ul-nav{display:none;position:absolute;top:64px;left:0;right:0;
    flex-direction:column;background:var(--ul-charcoal);padding:16px 24px;gap:4px;
    border-top:1px solid rgba(201,162,39,.15)}
  .ul-nav.open{display:flex}
  .ul-nav a{padding:12px 0;font-size:1rem}
  .ul-menu-toggle{display:block}
}

/* ── Post Content ── */
.entry-content,.wp-block-post-content,article.post,article.page,.single .content-area{
  max-width:var(--ul-max-w);margin:0 auto;padding:40px 24px 80px}
.single .entry-header{max-width:var(--ul-max-w);margin:0 auto;padding:60px 24px 0}
.single h1.entry-title,.single .wp-block-post-title{
  font-size:clamp(1.6rem,4vw,2.2rem);margin-bottom:.3em;color:var(--ul-charcoal)}
.single .entry-meta{font-size:.85rem;color:var(--ul-gray-500);margin-bottom:2em}

/* Tables */
.entry-content table,.wp-block-post-content table{
  width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.95rem;
  border-radius:var(--ul-radius);overflow:hidden;border:1px solid var(--ul-ivory-dark)}
.entry-content th,.wp-block-post-content th{
  background:var(--ul-charcoal);color:var(--ul-ivory);font-weight:600;
  padding:12px 16px;text-align:left;font-size:.9rem}
.entry-content td,.wp-block-post-content td{
  padding:12px 16px;border-bottom:1px solid var(--ul-gray-200)}
.entry-content tr:nth-child(even) td,.wp-block-post-content tr:nth-child(even) td{
  background:var(--ul-gray-100)}
.entry-content tr:hover td,.wp-block-post-content tr:hover td{background:rgba(201,162,39,.06)}
@media(max-width:600px){
  .entry-content table,.wp-block-post-content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* Lists */
.entry-content ul,.entry-content ol,.wp-block-post-content ul,.wp-block-post-content ol{
  padding-left:1.5em;margin:1em 0}
.entry-content li,.wp-block-post-content li{margin-bottom:.5em;line-height:1.7}
.entry-content ul li::marker{color:var(--ul-gold)}

/* Blockquotes / Callouts */
.entry-content blockquote,.wp-block-post-content blockquote{
  margin:1.5em 0;padding:20px 24px;background:linear-gradient(135deg,rgba(201,162,39,.06),rgba(201,162,39,.02));
  border-left:4px solid var(--ul-gold);border-radius:0 var(--ul-radius) var(--ul-radius) 0;
  font-size:1rem;color:var(--ul-gray-700)}
.entry-content blockquote p:last-child{margin-bottom:0}

/* Images */
.entry-content img,.wp-block-post-content img{
  max-width:100%;height:auto;border-radius:var(--ul-radius);margin:1em 0}
.wp-post-image{width:100%;max-height:400px;object-fit:cover;border-radius:var(--ul-radius);margin-bottom:1.5em}

/* Inline Charts */
.ul-chart{margin:1.5em 0;padding:20px;background:#fff;border-radius:var(--ul-radius);
  box-shadow:var(--ul-shadow)}
.ul-bar{display:flex;align-items:center;margin:8px 0;gap:12px}
.ul-bar-label{min-width:120px;font-size:.9rem;font-weight:500;text-align:right}
.ul-bar-track{flex:1;height:28px;background:var(--ul-gray-200);border-radius:14px;overflow:hidden;position:relative}
.ul-bar-fill{height:100%;border-radius:14px;background:linear-gradient(90deg,var(--ul-gold),var(--ul-gold-light));
  display:flex;align-items:center;justify-content:flex-end;padding-right:10px;
  font-size:.8rem;font-weight:600;color:var(--ul-charcoal);transition:width .6s ease}
@media(max-width:480px){.ul-bar-label{min-width:80px;font-size:.8rem}}

/* Legal / AI Notices */
.legal-notice{font-size:.85em!important;color:#777!important;background:#f8f9fa!important;
  border-left:3px solid #cbd5e1!important;padding:10px 14px!important;margin-top:2em!important;
  border-radius:0 6px 6px 0!important}
.legal-notice p{margin:4px 0!important;font-size:.85em!important}
.ai-notice{font-size:.85em!important;color:#888!important;margin-top:2em!important}
.affiliate-notice{font-size:.9em;color:#666;background:#fffbea;border:1px solid #f6e05e;
  padding:8px 12px;border-radius:6px}

/* TOC */
.ul-toc{background:#fff;border:1px solid var(--ul-gray-200);border-radius:var(--ul-radius);
  padding:20px 24px;margin:0 0 2em}
.ul-toc-title{font-family:"Noto Serif KR",serif;font-size:1rem;font-weight:700;
  margin-bottom:.75em;color:var(--ul-charcoal);display:flex;align-items:center;gap:8px}
.ul-toc-title::before{content:"";width:3px;height:16px;background:var(--ul-gold);border-radius:2px}
.ul-toc ol{margin:0;padding-left:1.2em}
.ul-toc li{margin:.4em 0;font-size:.95rem}
.ul-toc a{color:var(--ul-gray-700);transition:var(--ul-transition)}
.ul-toc a:hover{color:var(--ul-gold)}

/* Related Posts Card */
.ul-related{margin:3em 0;padding:32px 0}
.ul-related-title{font-family:"Noto Serif KR",serif;font-size:1.2rem;font-weight:700;
  margin-bottom:1em;padding-bottom:.4em;border-bottom:2px solid var(--ul-gold)}
.ul-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.ul-related-card{background:#fff;border-radius:var(--ul-radius);overflow:hidden;
  box-shadow:var(--ul-shadow);transition:var(--ul-transition)}
.ul-related-card:hover{transform:translateY(-2px);box-shadow:var(--ul-shadow-lg)}
.ul-related-card img{width:100%;height:140px;object-fit:cover}
.ul-related-card .card-body{padding:12px 16px}
.ul-related-card .card-title{font-size:.95rem;font-weight:600;margin:0;line-height:1.4}

/* ── Footer ── */
.ul-footer{background:var(--ul-charcoal);color:rgba(255,255,255,.6);padding:48px 24px 32px;
  font-size:.85rem;line-height:1.8}
.ul-footer-inner{max-width:1200px;margin:0 auto}
.ul-footer a{color:var(--ul-gold);transition:var(--ul-transition)}
.ul-footer a:hover{color:var(--ul-gold-light)}
.ul-footer-links{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:16px}
.ul-footer-copy{border-top:1px solid rgba(255,255,255,.1);padding-top:16px;margin-top:16px}
.ul-footer .legal-footer{font-size:.8rem;color:rgba(255,255,255,.4);margin-top:12px;line-height:1.7}

/* ── WP Theme Override ── */
.wp-site-blocks{padding:0!important}
.wp-block-template-part,.has-global-padding{padding:0!important}
header.wp-block-template-part{display:none!important}
footer.wp-block-template-part{display:none!important}
.wp-block-post-title{font-family:"Noto Serif KR",serif!important}

/* Scroll animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.ul-animate{animation:fadeUp .5s ease both}

/* Print */
@media print{.ul-header,.ul-footer,.ul-toc,.ul-related{display:none}}
