@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css";:root{--white:#fff;--bg-primary:#f7f5f2;--bg-card:var(--white);--bg-pill:#f3eee8;--border-light:#ede7e1;--text-primary:#51463d;--text-secondary:#75685d;--text-muted:#a39588;--brand-primary:#ddd0c2;--brand-text:#5f544b;--shadow-sm:0 2px 8px #51463d0d;--shadow-md:0 4px 16px #51463d0a;--shadow-lg:0 8px 24px #51463d14;--radius-md:18px;--radius-lg:24px;--radius-pill:999px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);margin:0;font-family:Pretendard,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{margin:0;padding:0;font-family:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}main{max-width:1000px;margin:0 auto;padding:8px 16px}section{margin-bottom:36px}h1,h2,h3,p{margin:0}.hero-section{margin-bottom:36px;padding:28px 0 8px}.eyebrow{color:var(--text-muted);margin-bottom:2px;font-size:.85rem;font-weight:600}.hero-section h1{color:var(--text-primary);letter-spacing:-.06em;gap:2px;font-size:3.5rem;font-weight:700;line-height:1;display:grid}.hero-section h1 span{color:var(--text-secondary);letter-spacing:-.02em;font-size:1rem;font-weight:500}.hero-description{max-width:620px;color:var(--text-secondary);white-space:pre-line;word-break:keep-all;overflow-wrap:break-word;margin-top:12px;font-size:.95rem;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.pill-button{appearance:none;border:1px solid var(--border-light);border-radius:var(--radius-pill);background:var(--bg-card);min-width:80px;height:34px;color:var(--text-primary);letter-spacing:0;text-align:center;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;margin:0;padding:0 12px;font-family:Pretendard,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.85rem;font-style:normal;font-weight:600;line-height:1;text-decoration:none;transition:border-color .2s,background .2s,color .2s,box-shadow .2s,transform .2s;display:inline-flex}.pill-button--primary{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--brand-text)}.pill-button:hover{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--brand-text);box-shadow:var(--shadow-md);transform:translateY(-1px)}.pill-button:focus-visible{outline:2px solid var(--brand-primary);outline-offset:4px}.section-header{margin-bottom:12px}.section-header h2{color:var(--text-primary);letter-spacing:-.04em;font-size:1.45rem;line-height:1.25}.section-header p:not(.eyebrow){max-width:680px;color:var(--text-secondary);white-space:pre-line;word-break:keep-all;overflow-wrap:break-word;margin-top:6px;font-size:.92rem;line-height:1.65}.about-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.info-card{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);min-height:104px;box-shadow:var(--shadow-sm);padding:18px}.info-card strong{color:var(--text-primary);margin-bottom:8px;font-size:1.05rem;display:block}.info-card span{color:var(--text-secondary);white-space:pre-line;word-break:keep-all;overflow-wrap:break-word;font-size:.9rem;line-height:1.55}.ask-eun-section__actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.ask-eun-section__content{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .35s,opacity .25s,visibility .35s;display:grid}.ask-eun-section__content--open{opacity:1;visibility:visible;grid-template-rows:1fr}.ask-eun-section__content-inner{min-height:0;overflow:hidden}.ask-eun-section__content-inner .ask-eun-list{margin-top:12px}.ask-eun-list{gap:8px;display:grid}.ask-eun-card{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-sm);padding:15px 18px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.ask-eun-card--open{border-color:var(--brand-primary);box-shadow:var(--shadow-md)}.ask-eun-card__question{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:0;display:flex}.ask-eun-card__question span{color:var(--text-muted);margin-bottom:5px;font-size:.78rem;font-weight:700;display:inline-flex}.ask-eun-card__question h3{color:var(--text-primary);letter-spacing:-.035em;word-break:keep-all;overflow-wrap:break-word;font-size:1.08rem;line-height:1.35}.ask-eun-card__question em{border-radius:var(--radius-pill);background:var(--bg-pill);width:30px;height:30px;color:var(--brand-text);flex:none;justify-content:center;align-items:center;font-size:1.1rem;font-style:normal;font-weight:600;line-height:1;transition:background .2s,transform .2s;display:inline-flex}.ask-eun-card__question:hover em{background:var(--brand-primary);transform:translateY(-1px)}.ask-eun-card__question:focus-visible{outline:2px solid var(--brand-primary);outline-offset:5px;border-radius:var(--radius-md)}.ask-eun-card__tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.ask-eun-card__tags span{border-radius:var(--radius-pill);background:var(--bg-pill);color:var(--text-secondary);padding:7px 10px;font-size:.78rem;font-weight:600}.ask-eun-card__answer-wrap{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .3s,opacity .2s,visibility .3s;display:grid}.ask-eun-card__answer-wrap--open{opacity:1;visibility:visible;grid-template-rows:1fr}.ask-eun-card__answer-inner{min-height:0;overflow:hidden}.ask-eun-card__answer{border-radius:var(--radius-md);background:var(--bg-primary);margin-top:14px;padding:14px 16px}.ask-eun-card__label{color:var(--text-muted);margin-bottom:8px;font-size:.76rem;font-weight:700;display:inline-flex}.ask-eun-card__answer p{color:var(--text-secondary);white-space:pre-line;word-break:keep-all;overflow-wrap:break-word;font-size:.92rem;line-height:1.7}.ask-eun-card__answer p+p{margin-top:16px}.skill-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.skill-card{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-sm);padding:18px}.skill-card h3{color:var(--text-primary);margin-bottom:12px;font-size:1rem}.skill-list{flex-wrap:wrap;gap:6px;display:flex}.skill-list span,.project-card__stack span{border-radius:var(--radius-pill);background:var(--bg-pill);color:var(--text-secondary);padding:7px 10px;font-size:.8rem;font-weight:600}.highlight-list{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.highlight-card{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-card);min-height:230px;box-shadow:var(--shadow-sm);flex-direction:column;padding:18px;display:flex;position:relative;overflow:hidden}.highlight-card:before{content:"";background:var(--brand-primary);border-radius:0 999px 999px 0;width:3px;position:absolute;top:18px;bottom:18px;left:0}.highlight-card span{color:var(--text-muted);margin-bottom:8px;font-size:.76rem;font-weight:700;display:inline-flex}.highlight-card h3{color:var(--text-primary);letter-spacing:-.035em;word-break:keep-all;overflow-wrap:break-word;font-size:1.05rem;line-height:1.35}.highlight-card p{color:var(--text-secondary);word-break:keep-all;overflow-wrap:break-word;margin-top:8px;margin-bottom:14px;font-size:.88rem;line-height:1.6}.highlight-card strong{border-radius:var(--radius-pill);background:var(--bg-pill);color:var(--brand-text);align-self:flex-start;margin-top:auto;padding:7px 10px;font-size:.78rem;line-height:1.4;display:inline-flex}.project-list{gap:12px;display:grid}.project-card{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-md);padding:18px 20px;transition:box-shadow .2s;overflow:hidden}.project-card--open{box-shadow:var(--shadow-lg)}.project-card__layout{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch;gap:24px;display:grid}.project-card__content{flex-direction:column;min-width:0;display:flex}.project-card__toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:0;display:flex}.project-card__toggle span{color:var(--text-muted);margin-bottom:5px;font-size:.78rem;font-weight:700;display:inline-flex}.project-card__toggle h3{color:var(--text-primary);letter-spacing:-.04em;word-break:keep-all;overflow-wrap:break-word;font-size:1.35rem;line-height:1.35}.project-card__toggle em{border-radius:var(--radius-pill);background:var(--bg-pill);min-width:92px;height:30px;color:var(--brand-text);flex:none;justify-content:center;align-items:center;padding:0 10px;font-size:.78rem;font-style:normal;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.project-card__toggle:hover em{background:var(--brand-primary);transform:translateY(-1px)}.project-card__toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:5px;border-radius:var(--radius-md)}.project-card__description{max-width:620px;color:var(--text-secondary);white-space:pre-line;word-break:keep-all;overflow-wrap:break-word;margin-top:10px;font-size:.92rem;line-height:1.65}.project-card__stack{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.project-card__links{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:18px;display:flex}.project-card__links a{border:1px solid var(--border-light);border-radius:var(--radius-pill);background:var(--bg-pill);min-width:86px;height:34px;color:var(--brand-text);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;padding:0 12px;font-size:.82rem;font-weight:700;line-height:1;transition:border-color .2s,background .2s,box-shadow .2s,transform .2s;display:inline-flex}.project-card__links a:first-child{border-color:var(--brand-primary);background:var(--brand-primary)}.project-card__links a:hover{border-color:var(--brand-primary);background:var(--brand-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.project-card__preview{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-primary);min-height:190px;display:block;overflow:hidden}.project-card__preview img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .3s;display:block}.project-card__preview:hover img{transform:scale(1.025)}.project-card__detail-wrap{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .3s,opacity .2s,visibility .3s;display:grid}.project-card__detail-wrap--open{opacity:1;visibility:visible;grid-template-rows:1fr}.project-card__detail-inner{min-height:0;overflow:hidden}.project-card__detail{border-radius:var(--radius-md);background:var(--bg-primary);margin-top:16px;padding:14px 16px}.project-card__detail p{color:var(--text-primary);font-size:.86rem;font-weight:700}.project-card__points{color:var(--text-secondary);word-break:keep-all;overflow-wrap:break-word;gap:6px;margin:10px 0 0;padding-left:18px;font-size:.9rem;line-height:1.6;display:grid}.contact-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.site-footer{border-top:1px solid var(--border-light);text-align:center;margin-top:40px;padding:18px 0 10px}.site-footer p{color:var(--text-muted);letter-spacing:.01em;font-size:.75rem;line-height:1.5}@media (width<=768px){main{padding:12px 14px}section{margin-bottom:26px}.hero-section{margin-bottom:30px;padding-top:20px}.hero-section h1{font-size:2.7rem}.hero-description{font-size:.9rem}.about-grid,.skill-grid,.highlight-list{grid-template-columns:1fr}.highlight-card{min-height:auto}.ask-eun-card__question{gap:10px}.ask-eun-card__question em{width:30px;min-width:30px}.project-card{padding:18px}.project-card__layout{grid-template-columns:1fr;gap:18px}.project-card__preview{aspect-ratio:16/10;min-height:auto}.project-card__links{margin-top:0;padding-top:16px}.project-card__toggle{gap:10px}.project-card__toggle em{min-width:88px}.site-footer{margin-top:28px;padding:14px 0 8px}}@media (hover:none) and (pointer:coarse){.pill-button:focus,.pill-button:focus-visible,.ask-eun-card__question:focus,.ask-eun-card__question:focus-visible,.project-card__toggle:focus,.project-card__toggle:focus-visible{outline:none}}
