@import "https://fonts.googleapis.com/css2?family=Gowun+Batang:wght@400;700&family=Hahmlet:wght@500;700&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#1d1a17;--muted:#6e655b;--brand:#c46a4f;--brand-dark:#8f4632;--sage:#a3b1a6;--sand:#f6f0e8;--rose:#f1ded0;--card:#fff;--shadow:0 18px 40px #231e1a1f}*{box-sizing:border-box}body{color:var(--ink);word-break:keep-all;background:linear-gradient(120deg,#f9f4ee 0%,#f5eee6 40%,#efe1d6 100%);margin:0;font-family:Gowun Batang,Nanum Myeongjo,serif}.page{min-height:100vh}.hero{padding:5rem 6vw 4rem;position:relative;overflow:hidden}.top-nav{z-index:2;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2.5rem;display:flex;position:relative}.brand-mark{color:var(--ink);letter-spacing:.12em;text-transform:uppercase;font-family:Hahmlet,serif;font-size:1.1rem;text-decoration:none}.nav-links{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.hero-ornament{filter:blur(2px);z-index:0;background:radial-gradient(circle,#c46a4f33,#0000 70%);width:55vw;height:55vw;position:absolute;inset:-30% auto auto -20%}.hero-inner{z-index:1;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;display:grid;position:relative}.hero-copy h1{margin:0 0 1.5rem;font-family:Hahmlet,serif;font-size:clamp(2.4rem,3vw,3.6rem);line-height:1.2}.hero-copy h1 span{color:var(--brand-dark);display:block}.hero-copy h1 .inline-emphasis{display:inline}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:1rem;font-size:.75rem}.subtitle{color:var(--muted);margin-bottom:2rem;font-size:1.05rem;line-height:1.7}.hero-tags{flex-wrap:wrap;gap:.75rem;display:flex}.hero-tags span{background:#ffffffb3;border:1px solid #c46a4f59;border-radius:999px;padding:.4rem .9rem;font-size:.85rem}.hero-card{background:var(--card);box-shadow:var(--shadow);border-radius:24px;gap:1.5rem;padding:2rem;display:grid}.input-form{gap:1rem;display:grid}.input-form label{margin-bottom:.4rem;font-weight:600;display:block}.input-form input{background:#fbf9f6;border:1px solid #e2d6c9;border-radius:14px;width:100%;padding:.85rem 1rem;font-size:1rem}.hanja-picker{background:#fffaf5;border:1px solid #e2d6c9cc;border-radius:16px;gap:.75rem;margin-top:.75rem;padding:.9rem;display:grid}.hanja-picker-header{color:var(--muted);justify-content:space-between;font-size:.85rem;display:flex}.hanja-picker-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.6rem;max-height:220px;display:grid;overflow:auto}.hanja-option{text-align:center;cursor:pointer;background:#fff;border:1px solid #c46a4f40;border-radius:12px;gap:.25rem;padding:.6rem .5rem;font-family:Hahmlet,serif;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.hanja-option strong{color:var(--ink);font-size:1.2rem}.hanja-option small{color:var(--muted);font-size:.75rem;line-height:1.2}.hanja-option:hover{border-color:#c46a4f99;transform:translateY(-1px);box-shadow:0 8px 16px #c46a4f26}.hanja-option.active{background:#fff1e6;border-color:#c46a4fe6;box-shadow:0 10px 18px #c46a4f2e}.hanja-picker-empty{color:var(--muted);margin:0;font-size:.85rem}.hanja-selected{color:var(--muted);align-items:center;gap:.6rem;margin:.5rem 0 0;font-size:.85rem;display:flex}.hanja-change{color:var(--brand-dark);cursor:pointer;background:#fff7f1;border:1px solid #c46a4f59;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;transition:transform .2s,box-shadow .2s}.hanja-change:hover{transform:translateY(-1px);box-shadow:0 6px 12px #c46a4f2e}.input-form button[type=submit]{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:.9rem 1.6rem;font-family:Hahmlet,serif;font-size:1rem;transition:transform .2s,box-shadow .2s}.input-form button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 12px 24px #c46a4f40}.input-form button[type=submit]:disabled{opacity:.6;cursor:progress;box-shadow:none}.form-error{color:#b24837;margin:.25rem 0 0}.result-hint{color:var(--muted);border-top:1px solid #efe5db;gap:.6rem;padding-top:1rem;display:grid}.result-hint strong{color:var(--ink);font-size:1.05rem;display:block}.form-note{margin:0;font-size:.85rem}main{padding:0 6vw 5rem}.section{margin-bottom:4rem}.section-header{margin-bottom:2rem}.section-header h2{margin-bottom:.8rem;font-family:Hahmlet,serif;font-size:clamp(1.6rem,2.2vw,2.4rem)}.section-header p{color:var(--muted);max-width:640px}.search-bar{background:var(--sand);border:1px solid #1d1a1714;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.2rem;display:flex}.search-bar input{background:0 0;border:none;outline:none;flex:240px;font-size:1rem}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.3rem;margin-top:1.8rem;display:grid}.result-card{background:var(--card);border:1px solid #231e1a14;border-radius:20px;flex-direction:column;gap:1.1rem;padding:1.6rem;display:flex;box-shadow:0 18px 40px #231e1a1a}.result-header{align-items:flex-start;gap:.9rem;display:flex}.result-badge{background:var(--brand);color:#fff;letter-spacing:.03em;border-radius:999px;padding:.3rem .75rem;font-size:.85rem;font-weight:700}.result-name .hangul{color:var(--ink);margin-bottom:.2rem;font-family:Hahmlet,serif;font-size:1.3rem;font-weight:700}.result-name .hanja{color:var(--muted);letter-spacing:.08em;font-size:1.05rem}.result-meta{flex-wrap:wrap;gap:.45rem;display:flex}.meta-chip{color:var(--ink);background:#c46a4f29;border-radius:999px;padding:.25rem .7rem;font-size:.85rem;font-weight:600}.meta-chip strong{color:var(--brand-dark);font-weight:700}.meaning-grid{gap:.6rem;display:grid}.meaning-item{align-items:baseline;gap:.6rem;display:flex}.meaning-item .hanja{color:var(--ink);min-width:2.5rem;font-size:1.1rem;font-weight:700}.meaning-item .meaning{color:var(--muted);font-size:.95rem}@media (max-width:720px){.card-grid{grid-template-columns:1fr}}.empty-state{text-align:center;color:var(--muted);background:#ffffffb3;border-radius:16px;padding:2rem}.guide-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.4rem;display:grid}.guide-card{background:var(--card);border-radius:18px;padding:1.5rem;box-shadow:0 12px 24px #231e1a14}.guide-card h3{margin-top:0;font-family:Hahmlet,serif}.faq-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.4rem;display:grid}.faq-card{background:#ffffffd9;border:1px solid #231e1a14;border-radius:18px;gap:.7rem;padding:1.5rem;display:grid;box-shadow:0 14px 28px #231e1a14}.faq-card h3{margin:0;font-family:Hahmlet,serif;font-size:1.05rem}.faq-card p{color:var(--muted);margin:0;line-height:1.6}.principles-essay{max-width:100%;margin:0 auto}.principles-article .section-header p{max-width:720px;line-height:1.8}.article-block{margin-top:2.4rem}.article-heading{letter-spacing:.02em;margin:0 0 1.4rem;font-family:Hahmlet,serif;font-size:1.35rem}.article-intro{color:var(--muted);max-width:720px;margin:-.4rem 0 1.8rem;line-height:1.8}.section-cta{color:var(--brand-dark);letter-spacing:.01em;background:#f1ded099;border:1px solid #c46a4f59;border-radius:999px;align-items:center;gap:.4rem;max-width:720px;margin:1.6rem 0 0;padding:.75rem 1.1rem;font-weight:600;line-height:1.6;display:inline-flex}.principle-grid{grid-template-columns:1fr;gap:2.2rem;padding-top:.5rem;display:grid}.principle-card{box-shadow:none;background:0 0;border-bottom:1px solid #231e1a1f;border-radius:0;gap:.8rem;padding:0 0 2rem;display:grid}.principle-grid .principle-card:last-child{border-bottom:none;padding-bottom:0}.principle-card h3{margin:0;font-family:Hahmlet,serif;font-size:1.35rem}.principle-card h4{color:var(--ink);margin:0;font-family:Hahmlet,serif;font-size:1.2rem}.principle-card p{color:var(--muted);margin:0;font-size:1.02rem;line-height:1.8}.principle-card ul{color:var(--muted);gap:.4rem;margin:0;padding-left:1.1rem;font-size:.98rem;line-height:1.7;display:grid}.principle-table{border-collapse:collapse;width:100%;color:var(--muted);border-top:1px solid #231e1a2e;font-size:.98rem}.principle-table th,.principle-table td{text-align:left;border-bottom:1px solid #231e1a1f;padding:.7rem .4rem}.principle-table th{color:var(--ink);font-family:Hahmlet,serif;font-weight:600}.principle-note{color:var(--ink);background:#f1ded0a6;border-left:4px solid #c46a4f80;border-radius:12px;margin-top:2.4rem;padding:1.2rem 1.4rem}.principle-note p{margin:0;line-height:1.8}.principles-preview-card{box-shadow:none;background:#ffffff8c;border:1px solid #231e1a1a;border-radius:14px;gap:1rem;max-width:720px;padding:1.4rem 1.6rem;display:grid}.principles-bridge{background:0 0;border-left:3px solid #c46a4f73;border-radius:0;max-width:760px;margin-top:2.4rem;padding-left:1.4rem}.principles-preview-card p{color:var(--muted);margin:0;line-height:1.8}.nav-link{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;background:#fff6;border:1px solid #1d1a1726;border-radius:999px;justify-content:center;align-items:center;padding:.4rem .95rem;font-family:Hahmlet,serif;font-size:.85rem;text-decoration:none;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.nav-link:hover{color:var(--brand-dark);background:#f6f0e8cc;border-color:#c46a4f66}.nav-link[aria-current=page]{color:var(--brand-dark);letter-spacing:.1em;background:#f1ded0e6;border-color:#c46a4f73;font-weight:700}.text-link{color:var(--brand-dark);align-items:center;gap:.4rem;margin-top:1.5rem;font-weight:600;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--brand)}.footer{text-align:center;color:var(--muted);padding:2.5rem 1rem}.footer-links{flex-wrap:wrap;justify-content:center;gap:1.25rem;margin-bottom:1rem;display:flex}.footer-link{color:var(--ink);letter-spacing:.08em;font-size:.85rem;font-weight:600;text-decoration:none}.footer-link:hover{color:var(--brand)}.footer-powered-link{color:var(--brand-dark);font-weight:600;text-decoration:none}.footer-powered-link:hover{color:var(--brand)}.reveal{opacity:0;animation:.8s forwards fadeUp;transform:translateY(12px)}.delay-1{animation-delay:.15s}.delay-2{animation-delay:.3s}.delay-3{animation-delay:.45s}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.hero{padding:3.5rem 6vw 2rem}.top-nav{margin-bottom:2rem}.hero-card{padding:1.5rem}.hero-tags{gap:.5rem}.hero-tags span{font-size:.75rem}}
