/* === extracted from App.js <style> === */

            @page { size: A4; margin: 18mm 14mm; }
            * { box-sizing: border-box; }
            body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans KR", Arial, "Apple Color Emoji", "Segoe UI Emoji"; color:#111827; }
            h1,h2,h3 { margin: 0 0 8px 0; }
            .tw-header { border-bottom:1px solid #e5e7eb; margin-bottom: 14px; padding-bottom: 10px; }
            .tw-meta { color:#64748b; font-size:12px; }
            .tw-amount { font-size:28px; font-weight:900; margin: 8px 0 2px; }
            .tw-card { border:1px solid #e5e7eb; border-radius:12px; padding:14px; background:#fff; margin:10px 0; break-inside: avoid; }
            .tw-section { margin-top: 14px; }
            .tw-grid { display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
            .tw-ul { margin:6px 0 0 20px; padding:0; }
            .tw-table { width:100%; border-collapse: collapse; font-size: 13px; }
            .tw-table th, .tw-table td { border:1px solid #e5e7eb; padding:8px; text-align:left; }
            .tw-table th { background:#f8fafc; }
            .num { text-align:right; font-variant-numeric: tabular-nums; }
            .tw-note { font-size:12px; color:#475569; }
            .tw-disclaimer { font-size:12px; color:#6b7280; }
            .tw-footer { margin-top: 14px; border-top:1px solid #f1f5f9; padding-top:8px; font-size:11px; color:#64748b; }
            .tw-charts svg { width: 100% !important; height: auto !important; }
          

{`
        .tw-footer-link {
          border: none;
          background: transparent;
          color: #ffffff;
          cursor: pointer;
          text-decoration: none;
          transition: opacity .2s ease;
        }
        .tw-footer-link:hover {
          opacity: .85;
        }
      `}

{`
        .tw-latest { background:#f1f5f9; border-radius:16px; padding:20px; }
        .tw-latest-grid { display:grid; gap:20px; }
        /* PC/태블릿: 2열 */
        @media (min-width: 768px) { .tw-latest-grid { grid-template-columns: repeat(2, 1fr); } }
        /* 모바일: 1열 */
        @media (max-width: 767px) { .tw-latest-grid { grid-template-columns: 1fr; } }

        .tw-card { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:16px; min-width:0; }
        .tw-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
        .tw-title { font-size:18px; font-weight:800; margin:0; }
        .tw-more { display:inline-flex; align-items:center; gap:6px; font-size:14px; color:#64748b; text-decoration:none; white-space:nowrap; }
        .tw-more:hover { text-decoration:underline; }
        .tw-chevron { font-weight:700; }

        .tw-list { list-style:none; margin:0; padding:0; }
        .tw-item { padding:10px 0; border-top:1px solid #f1f5f9; }
        .tw-item:first-child { border-top:none; }

        /* 핵심: 제목 1줄 고정 + … 처리 (모든 해상도 공통) */
        .tw-link { 
          display:flex; gap:10px; align-items:flex-start; text-decoration:none; color:#111827; line-height:1.6;
          min-width:0; /* flex 자식 ellipsis 활성화에 필수 */
        }
        .tw-bullet { margin-top:3px; flex:0 0 auto; color:#cbd5e1; }
        .tw-text {
          display:block; flex:1 1 auto; min-width:0;
          white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
        }
        /* 날짜는 숨김(다시 보이려면 이 규칙 삭제) */
        .tw-date { display:none !important; }
      `}

/* === extracted from App.js template literals === */
?tab=${t.key}

직계존속 ${data.isMinor ? '2천만원' : '5천만원'}

/?tab=${k.trim()}

${location.origin}${location.pathname}?tab=${activeTab}

${location.origin}${location.pathname}

지역: ${data.region}

분류: ${data.category==='housing'?'주택':(data.category==='officetel'?'오피스텔':'비주택')}

거래유형: ${data.dealType==='sale'?'매매·교환':'임대차(전월세)'}

적용요율: ${(appliedRate*100).toFixed(2)}%${negotiatedRatePct!=null?' (협의요율)':' (상한요율 기준)'}

dependents_${Math.max(1, Number(d.dependents)||1)}

/* === TaxWang theme parity (home look) === */
:root{
  --tw-text:#111827; --tw-muted:#475569; --tw-line:#e5e7eb;
  --tw-bg:#ffffff; --tw-soft:#f8fafc; --tw-brand:#111827;
  --tw-radius:12px;
}
html,body{color:var(--tw-text); background:#fff;}
.tw-article{max-width:1080px;margin:0 auto;padding:0 16px;}
.tw-header{border-bottom:1px solid var(--tw-line);padding:10px 0}
.tw-title{font-size:28px;font-weight:900;margin:0}
.tw-list{list-style:none;margin:8px 0 0;padding:0}
.tw-item{margin:6px 0}
.tw-link,.tw-footer-link{color:var(--tw-text);text-decoration:none;border-bottom:2px solid var(--tw-text)}
.tw-section{margin:24px 0}
.tw-card{border:1px solid var(--tw-line);border-radius:var(--tw-radius);padding:16px;background:var(--tw-bg);margin:16px 0}
.tw-muted{color:var(--tw-muted)}

.tw-hero{border:1px solid var(--tw-line);border-radius:18px;overflow:hidden;background:var(--tw-soft)}
.tw-hero img{display:block;width:100%;height:auto}

.tw-grid{display:grid;gap:10px}
@media(min-width:640px){.tw-grid-sm-2{grid-template-columns:repeat(2,1fr)}}
@media(min-width:768px){.tw-grid-md-3{grid-template-columns:repeat(3,1fr)}}
.tw-pill{display:inline-block;padding:10px 12px;border:1px solid var(--tw-line);border-radius:999px;text-decoration:none;color:var(--tw-text);background:#fff;white-space:nowrap}
.tw-pill--active{background:var(--tw-brand);color:#fff;border-color:var(--tw-brand)}
.tw-pillbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #f1f5f9}
.tw-pillbar-inner{display:flex;gap:8px;overflow-x:auto;padding:8px 10px}

/* 홈 섹션 타이틀 */
.tw-h2{margin:0 0 10px 0;font-weight:800;font-size:18px}
