@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+KR:wght@400;500;600;700&display=swap";:root{color:#171717;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:IBM Plex Sans KR,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}main{min-height:100vh;position:relative;overflow:hidden}.grid-bg{pointer-events:none;background-image:linear-gradient(#1616160b 1px,#0000 1px),linear-gradient(90deg,#1616160b 1px,#0000 1px);background-size:68px 68px;position:fixed;inset:0}.grid-bg:after{content:"";background:url(/media/site/bg_image.webp) 100% 100%/clamp(420px,48vw,880px) no-repeat fixed,radial-gradient(circle at 18% 8%,#0284c721,#0000 28%),radial-gradient(circle at 86% 22%,#0596691a,#0000 30%),linear-gradient(#ffffff1f,#fff 84%);position:absolute;inset:0}header{z-index:10;justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;padding:26px 28px;display:flex;position:relative}.brand,nav,.mobile-nav,.action{align-items:center;display:flex}.brand{color:#181818;letter-spacing:0;gap:11px;font-size:14px;font-weight:700;text-decoration:none}.brand-mark{color:#fff;background:#161616;border-radius:12px;place-items:center;width:36px;height:36px;font-size:12px;display:grid}nav{background:#ffffffad;border:1px solid #14141414;border-radius:999px;gap:6px;padding:6px}nav a,.mobile-nav a{color:#525252;border-radius:999px;padding:9px 14px;font-size:14px;font-weight:700;text-decoration:none}nav a:hover,.mobile-nav a:hover{color:#111;background:#fff}.menu{color:#161616;cursor:pointer;background:#fff;border:1px solid #1414141a;border-radius:14px;place-items:center;width:42px;height:42px;display:none}.mobile-nav{z-index:20;background:#ffffffeb;border:1px solid #14141414;border-radius:20px;gap:4px;margin:0 20px;padding:8px;display:none;position:relative;box-shadow:0 20px 44px #1a171314}.hero{z-index:5;grid-template-columns:minmax(300px,370px) 1fr;align-items:center;gap:56px;max-width:1180px;margin:0 auto;padding:70px 28px 92px;display:grid;position:relative}.profile-card,.stats,.project-card,.cta{background:#ffffffd1;border:1px solid #14141414;box-shadow:0 24px 70px #1a171314}.profile-card{border-radius:26px;padding:30px}.top-line{justify-content:space-between;align-items:center;gap:12px;margin-bottom:38px;display:flex}.top-line b,.kicker{color:#76726b;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:700}.top-line span{color:#03607f;white-space:nowrap;background:#eef7fb;border:1px solid #cfe8f3;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.iconbox{color:#0277a4;background:#f7f7f5;border:1px solid #14141414;border-radius:18px;place-items:center;width:60px;height:60px;margin-bottom:24px;display:grid}.profile-card h1,.hero-copy h2,.project-index h2,.record-section h2,.cta h2{letter-spacing:0;margin:0}.profile-card h1{font-size:31px;line-height:1.18}.profile-card p,.hero-copy p,.project-index>p,.record-section p,.cta p{color:#5d5a54;line-height:1.75}.profile-card ul,.record-section ul{color:#4d4a45;gap:13px;margin:28px 0 0;padding:0;font-weight:700;list-style:none;display:grid}.profile-card li,.record-section li{align-items:center;gap:11px;display:flex}.profile-card li svg{color:#0277a4}.eyebrow{color:#03607f;background:#ffffffc7;border:1px solid #14141414;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:700;display:inline-flex}.hero-copy h2{max-width:820px;margin-top:22px;font-size:clamp(46px,7vw,88px);line-height:1.02}.hero-copy p{max-width:690px;margin:26px 0;font-size:18px}.actions{flex-wrap:wrap;gap:10px;display:flex}.action{color:#161616;cursor:pointer;background:#fff;border:1px solid #1414141f;border-radius:999px;justify-content:center;gap:8px;min-height:46px;padding:12px 18px;font-weight:700;text-decoration:none}.action.dark{color:#fff;background:#161616;border-color:#161616;box-shadow:0 16px 34px #00000029}.stats{z-index:4;border-radius:24px;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1180px;margin:0 auto 18px;padding:10px;display:grid;position:relative}.stats div{border-radius:18px;padding:26px}.stats div+div{border-left:1px solid #14141414}.stats svg{color:#0277a4;margin-bottom:20px}.stats p{color:#76726b;margin:0 0 8px;font-size:12px;font-weight:700}.stats strong{font-size:36px;line-height:1}.project-section{z-index:4;grid-template-columns:minmax(280px,340px) 1fr;gap:50px;max-width:1180px;margin:0 auto;padding:104px 28px 108px;display:grid;position:relative}.project-index{align-self:start;position:sticky;top:28px}.kicker{margin:0 0 12px}.project-index h2,.record-section h2,.cta h2{font-size:44px;line-height:1.1}.project-index label{background:#fff;border:1px solid #1414141c;border-radius:16px;align-items:center;gap:10px;margin-top:24px;padding:13px 14px;display:flex}.project-index label svg{color:#76726b;flex:none}.project-index input{color:#191919;background:0 0;border:0;outline:0;width:100%;min-width:0}.filters{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.filters button{color:#56524c;cursor:pointer;background:#ffffffb8;border:1px solid #1414141c;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:700}.filters button.active{color:#fff;background:#16313a;border-color:#16313a}.cards{gap:26px;display:grid}.project-card{color:inherit;border-radius:22px;grid-template-columns:200px minmax(0,1fr) 154px;min-height:205px;text-decoration:none;transition:box-shadow .2s,transform .2s;display:grid;overflow:hidden}.project-card:hover{transform:translateY(-2px);box-shadow:0 28px 78px #1a171321}.project-image{min-height:205px;position:relative;overflow:hidden}.project-image img{filter:saturate(.92);object-fit:cover;width:100%;height:100%;display:block}.project-image:after{content:"";background:linear-gradient(#0000 42%,#00000073);position:absolute;inset:0}.project-image span{color:#282522;z-index:2;background:#ffffffdb;border-radius:999px;padding:6px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700;position:absolute;bottom:14px;left:14px}.project-body{flex-direction:column;justify-content:center;min-width:0;padding:26px;display:flex}.meta-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.meta-row b{color:#76726b;letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.tone{border:1px solid;border-radius:999px;padding:5px 10px;font-size:12px;font-style:normal;font-weight:700}.blue{color:#03607f;background:#edf8fb;border-color:#bfe5ef}.amber{color:#99620d;background:#fff7e5;border-color:#f4d799}.green{color:#236d31;background:#eef8ee;border-color:#bfe3bd}.project-body h3{margin:14px 0 0;font-size:24px;line-height:1.28}.project-body p{color:#5d5a54;margin:10px 0 16px;font-size:14px;line-height:1.7}.tags{flex-wrap:wrap;gap:7px;display:flex}.tags small{color:#55504a;background:#f1efea;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700}.progress-panel{border-left:1px solid #14141414;flex-direction:column;justify-content:center;padding:22px;display:flex}.progress-panel p{color:#76726b;margin:0 0 5px;font-size:12px;font-weight:700}.progress-panel strong{font-size:34px;line-height:1}.bar{background:#ece8df;border-radius:999px;height:8px;margin:14px 0 10px;overflow:hidden}.bar i{border-radius:inherit;background:#16313a;height:100%;display:block}.progress-panel span{color:#76726b;font-size:12px;line-height:1.35}.progress-panel .report-chip{color:#25221e;background:#f8f7f3;border:1px solid #1414141c;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:42px;margin-top:18px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.post-page{z-index:4;max-width:960px;margin:0 auto;padding:42px 28px 96px;position:relative}.post-view{background:#ffffffdb;border:1px solid #14141414;border-radius:26px;overflow:hidden;box-shadow:0 24px 70px #1a171314}.post-view.compact{box-shadow:none}.post-hero img{object-fit:cover;width:100%;height:340px;display:block}.post-view.compact .post-hero img{height:220px}.post-view-body{padding:42px}.post-view.compact .post-view-body{padding:28px}.post-view h1{margin:16px 0 14px;font-size:42px;line-height:1.14}.post-summary{color:#5d5a54;margin:0 0 18px;font-size:17px;line-height:1.75}.markdown-view{border-top:1px solid #1414141a;margin-top:30px;padding-top:22px}.markdown-view h1,.markdown-view h2,.markdown-view h3{letter-spacing:0;margin:28px 0 12px;line-height:1.22}.markdown-view h1{font-size:34px}.markdown-view h2{font-size:26px}.markdown-view h3{font-size:21px}.markdown-view p,.markdown-view li{color:#4f4b45;line-height:1.8}.markdown-view ul{gap:8px;margin:14px 0 22px;padding-left:22px;display:grid}.markdown-view code{background:#f1efea;border-radius:7px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.markdown-view pre{color:#fff;background:#161616;border-radius:16px;padding:18px;overflow:auto}.markdown-view pre code{color:inherit;background:0 0;padding:0}.markdown-view figure{margin:28px 0}.markdown-view figure img{object-fit:contain;border-radius:18px;width:100%;max-height:560px;display:block}.markdown-view figcaption{color:#76726b;text-align:center;margin-top:10px;font-size:13px;font-weight:700}.empty-state{color:#5d5a54;text-align:center;background:#ffffffb3;border:1px dashed #1414142e;border-radius:18px;margin:0;padding:28px}.record-section{z-index:4;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:center;gap:64px;max-width:1180px;margin:0 auto;padding:18px 28px 112px;display:grid;position:relative}.desk{border-radius:24px;overflow:hidden;box-shadow:0 24px 70px #1a17131a}.desk img{object-fit:cover;width:100%;height:430px;display:block}.record-section svg,.cta>svg{color:#168058;flex:none}.cta{z-index:4;border-radius:28px;max-width:850px;margin:6px auto 104px;padding:52px;position:relative}.cta>svg{margin-bottom:24px}footer{color:#77736c;letter-spacing:.12em;text-transform:uppercase;z-index:4;border-top:1px solid #1414141a;justify-content:space-between;gap:18px;max-width:1180px;margin:0 auto;padding:32px 28px;font-size:11px;font-weight:700;display:flex;position:relative}.admin-shell{background:#fff;min-height:100vh;padding:34px 28px 72px;overflow:visible}.login-panel,.admin-panel,.admin-header{background:#ffffffdb;border:1px solid #14141417;box-shadow:0 24px 70px #1a171314}.login-panel{border-radius:24px;gap:16px;max-width:420px;margin:12vh auto 0;padding:34px;display:grid}.login-panel h1,.admin-header h1,.admin-panel h2,.post-editor h3{letter-spacing:0;margin:0}.login-panel p,.admin-header span{color:#5d5a54;margin:0}.login-panel a,.admin-link{color:#03607f;font-weight:700;text-decoration:none}.admin-header{border-radius:24px;justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:0 auto 24px;padding:28px;display:flex}.admin-header h1{margin-bottom:10px;font-size:34px;line-height:1.15}.admin-actions,.panel-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:24px;max-width:1180px;margin:0 auto 24px;display:grid}.admin-panel{border-radius:24px;padding:28px}.admin-panel h2{margin-bottom:22px;font-size:24px}.admin-panel h3{margin:22px 0 12px;font-size:17px}.admin-panel label,.login-panel label{gap:7px;margin-bottom:14px;display:grid}.admin-panel label span{color:#76726b;font-size:12px;font-weight:700}.admin-panel input,.admin-panel textarea,.admin-panel select,.login-panel input{color:#171717;background:#fff;border:1px solid #1414141f;border-radius:14px;outline:0;width:100%;min-height:44px;padding:11px 12px}.admin-panel textarea{resize:vertical;line-height:1.55}.admin-actions button,.admin-panel button,.login-panel button{color:#191919;cursor:pointer;background:#fff;border:1px solid #1414141f;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:700;display:inline-flex}.admin-actions .primary,.login-panel button{color:#fff;background:#161616;border-color:#161616}.admin-actions button:disabled{cursor:wait;opacity:.62}.admin-panel .danger{color:#a32626;border-color:#efcaca}.stat-editor,.post-form-grid{gap:10px;display:grid}.stat-editor{grid-template-columns:1fr 86px 96px;margin-bottom:12px}.posts-editor{max-width:1180px;margin:0 auto}.posts-editor>.panel-title-row{justify-content:space-between;margin-bottom:20px}.post-list-row{border-top:1px solid #1414141a;justify-content:space-between;align-items:center;gap:18px;padding-top:24px;display:flex}.post-list-row+.post-list-row{margin-top:24px}.post-list-row b{color:#76726b;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.post-list-row h3{margin:6px 0;font-size:20px}.post-list-row p{color:#5d5a54;margin:0}.post-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.post-editor-page{max-width:1180px;margin:0 auto}.post-editor-page>.panel-title-row{justify-content:space-between;margin-bottom:22px}.editor-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:24px;display:grid}.markdown-editor{min-height:680px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.drop-zone{color:#5d5a54;text-align:center;background:#f8f7f3;border:1px dashed #14141447;border-radius:16px;margin-bottom:10px;padding:14px;font-size:13px;font-weight:700;line-height:1.5}.viewer-preview{align-self:start;position:sticky;top:24px}.media-library{border-top:1px solid #1414141a;margin-top:30px;padding-top:24px}.media-library>.panel-title-row{justify-content:space-between;margin-bottom:16px}.upload-button{color:#fff;cursor:pointer;background:#161616;border-radius:999px;justify-content:center;align-items:center;min-height:44px;margin:0;padding:10px 16px;font-weight:700;display:inline-flex}.upload-button input{display:none}.media-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}.media-grid .empty-state{grid-column:1/-1}.media-grid button{color:#25221e;cursor:pointer;text-align:left;background:#fff;border:1px solid #1414141c;border-radius:16px;gap:9px;min-height:0;padding:9px;display:grid}.media-grid img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;display:block}.media-grid span{color:#5d5a54;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}@media (width<=940px){nav{display:none}.menu,.mobile-nav{display:grid}.hero,.project-section,.record-section{grid-template-columns:1fr;gap:42px}.project-index{position:static}.project-card{grid-template-columns:1fr}.project-image{min-height:230px}.progress-panel{border-top:1px solid #14141414;border-left:0}.stats{grid-template-columns:1fr}.stats div+div{border-top:1px solid #14141414;border-left:0}.hero-copy h2{font-size:54px}footer{flex-direction:column}.admin-header,.admin-grid{grid-template-columns:1fr}.admin-header{flex-direction:column;align-items:flex-start}.post-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-split{grid-template-columns:1fr}.viewer-preview{position:static}}@media (width<=620px){header{padding:20px}.brand span:last-child{max-width:170px}.hero,.project-section,.record-section{padding-left:20px;padding-right:20px}.hero{padding-top:42px;padding-bottom:70px}.project-section{padding-top:78px;padding-bottom:86px}.record-section{padding-top:8px;padding-bottom:86px}.profile-card,.project-body,.cta{padding:24px}.hero-copy h2,.project-index h2,.record-section h2,.cta h2{font-size:38px}.hero-copy p{font-size:16px}.action{width:100%}.desk img{height:310px}.admin-shell{padding:20px 16px 52px}.login-panel,.admin-panel,.admin-header{padding:22px}.admin-header h1{font-size:28px}.admin-actions,.admin-actions button,.admin-link,.panel-title-row button,.stat-editor,.post-form-grid{width:100%}.stat-editor,.post-form-grid{grid-template-columns:1fr}.post-page{padding:24px 20px 70px}.post-view-body{padding:24px}.post-view h1{font-size:32px}.post-list-row{flex-direction:column;align-items:flex-start}}
