:root{--ink:#1d2724;--muted:#7c837d;--line:#e4e7df;--green:#244b3a;--paper:#f8f9f5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Pretendard,-apple-system,BlinkMacSystemFont,'Noto Sans KR','Malgun Gothic',sans-serif;font-size:15px;letter-spacing:-.035em}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}header{height:88px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1200px)/2))}.brand{font-size:34px;font-weight:850;letter-spacing:-3px;display:flex;align-items:center}.brand>span{color:#659746}.brand b{border-left:1px solid #ddd;margin-left:24px;padding-left:24px;font-size:16px;letter-spacing:-.6px}.header-right{display:flex;align-items:center;gap:25px}.open-badge{font-size:12px;color:#64816d}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;background:var(--green);border:1px solid var(--green);color:white;padding:15px 23px;border-radius:9px;font-size:14px;font-weight:650;cursor:pointer}.button:hover{filter:brightness(1.12)}.button:disabled{opacity:.5;cursor:wait}.button.small{padding:11px 17px}.button.secondary{background:white;color:var(--ink);border-color:var(--line)}main{max-width:1200px;margin:0 auto;padding:40px 0 70px}.hero{background:#edf0e4;border:1px solid #e1e6d6;border-radius:20px;padding:48px 55px;display:flex;justify-content:space-between;overflow:hidden;min-height:340px}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:700;color:#64745c}.hero h1{font-size:38px;line-height:1.35;letter-spacing:-1.9px;margin:18px 0 14px}.hero p{font-size:14px;color:#73806c;line-height:1.8;margin:0 0 24px}.hero-art{position:relative;width:400px;margin:15px 20px 0 0}.art-card{position:absolute;width:225px;height:255px;border-radius:13px;box-shadow:0 15px 35px #233c2612;padding:25px}.art-card.back{right:0;top:0;transform:rotate(10deg);background:#b5c79e;color:#465c36;font-size:12px;letter-spacing:3px}.back span{display:block;text-align:center;font-size:60px;margin-top:40px}.art-card.front{right:105px;top:24px;background:#fffefa;transform:rotate(-9deg)}.front small{font-size:9px;letter-spacing:1.5px;color:#8c9485}.front strong{display:block;font-size:26px;line-height:1.5;margin-top:25px}.art-line{width:70px;height:5px;background:#c4d49c;margin-top:18px}.front>span{display:block;margin-top:27px;font-size:10px;color:#7e8975}.spark{position:absolute;right:0;bottom:0;font-size:95px;color:#658446}.library{margin-top:42px}.section-head{display:flex;align-items:center;justify-content:space-between}h2{font-size:21px;margin:0}.section-head h2 span,.detail-media h2 span{font-size:15px;color:#799665;margin-left:8px}.search{display:flex;align-items:center;border:1px solid var(--line);background:white;border-radius:9px;padding:6px 10px}.search input{border:0;padding:7px;width:245px;background:transparent;outline:none}.search button{border:0;background:transparent;font-size:12px;color:#62735e}.filters{display:flex;gap:8px;margin:24px 0;flex-wrap:wrap}.filters a{border:1px solid var(--line);background:white;border-radius:7px;padding:9px 17px;font-size:13px}.filters a span{margin-left:8px;color:#99a092;font-size:11px}.filters a.active{background:var(--green);color:white;border-color:var(--green)}.filters a.active span{color:#bfcebb}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.material{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden;transition:transform .2s,box-shadow .2s}.material:hover{transform:translateY(-4px);box-shadow:0 9px 25px #22341e0e}.thumbnail{height:230px;position:relative;background:#e8ede0;overflow:hidden}.thumbnail>img{width:100%;height:100%;object-fit:cover}.category-tag{position:absolute;left:16px;bottom:15px;background:#ffffffed;border-radius:5px;padding:6px 10px;font-size:11px!important;color:#455d3b}.text-thumb{padding:20px 27px;background:#edf0e6}.text-thumb>span:first-child{font-family:Georgia,serif;font-size:66px;color:#b3c4a0;line-height:1}.text-thumb>p{margin:0;font-size:20px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.video-thumb{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;background:#273c32;color:#d5e6c1;font-size:42px}.video-thumb small{font-size:10px;letter-spacing:3px}.material-info{padding:19px 21px}.material h3{font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 0 15px}.material-info p{display:flex;justify-content:space-between;font-size:12px;color:#8b9287;margin:0}.empty{border:1px dashed #d8dfd0;border-radius:14px;text-align:center;padding:55px 20px}.empty>div{font-size:38px;color:#a5b699}.empty h3{font-size:19px;margin:15px}.empty p{color:var(--muted);font-size:14px;margin-bottom:25px}.pagination{display:flex;justify-content:center;gap:25px;margin-top:25px;font-size:13px}footer{max-width:1200px;margin:0 auto;padding:26px 0 35px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1.5px;color:#929a8b;display:flex;justify-content:space-between}footer span{letter-spacing:-.2px}.editor-heading,.detail-wrap{max-width:960px;margin:0 auto}.back-link{font-size:13px;color:#75816f;display:inline-block;margin-bottom:22px}.editor-heading h1{font-size:30px;margin:0 0 9px}.editor-heading p{color:var(--muted);margin:0 0 28px}.editor-panel,.detail-panel{max-width:960px;margin:0 auto;border:1px solid var(--line);border-radius:15px;background:white;padding:32px}.metadata{display:flex;gap:22px;border-bottom:1px solid var(--line);padding-bottom:23px}.metadata label{display:flex;align-items:center;gap:12px;font-size:13px;color:#7a8275}input,select{border:1px solid var(--line);border-radius:7px;padding:10px 12px;color:var(--ink);background:#fff}.metadata input{width:150px}.title-input{border:0;font-size:28px;font-weight:700;padding:29px 0;width:100%;outline:none}.title-input::placeholder{color:#b9beb4}.ql-toolbar.ql-snow{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 4px;background:#fafbf8}.ql-container.ql-snow{border:0;font-family:inherit;font-size:16px}.ql-editor{min-height:320px;padding:24px 0;line-height:1.9}.ql-editor.ql-blank::before{left:0;color:#b1b8aa;font-style:normal}.ql-editor img{max-width:100%;height:auto}.attachments{border-top:1px solid var(--line);padding-top:24px}.attachment-heading{display:flex;justify-content:space-between;align-items:center}.attachment-heading h3{font-size:15px;margin:0 0 7px}.attachment-heading p{font-size:12px;color:var(--muted);margin:0}#dropzone{border:1px dashed #cdd8c3;background:#fafbf7;border-radius:10px;text-align:center;padding:28px;margin-top:20px;color:#78856b;font-size:14px}#dropzone span{display:block;font-size:10px;letter-spacing:1px;color:#a6ae9e;margin-top:9px}#dropzone.dragging{background:#e4eedb;border-color:#638051}.file-row{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:12px 0}.file-row img,.file-row video{width:90px;height:65px;object-fit:cover;border-radius:6px}.file-row>span{flex:1;word-break:break-all;font-size:13px}.file-row button{border:0;background:#f5f6f2;color:#8f5a51;padding:8px;border-radius:5px}#upload-status{font-size:13px;color:#687c59}.form-footer{display:flex;justify-content:space-between;align-items:center;padding-top:25px;margin-top:20px;border-top:1px solid var(--line);gap:20px}.form-footer>span{font-size:12px;color:#89917e}.detail-top{display:flex;align-items:center;justify-content:space-between}.pill{font-size:12px;background:#eef2e8;color:#63814e;border-radius:5px;padding:7px 12px}.detail-panel h1{font-size:32px;line-height:1.5;overflow-wrap:anywhere;margin:24px 0 10px}.byline{font-size:12px;color:#93998c;border-bottom:1px solid var(--line);padding-bottom:25px}.content-body{min-height:120px;font-size:16px;overflow-wrap:anywhere}.detail-media{margin-top:28px;padding-top:25px;border-top:1px solid var(--line)}figure{margin:24px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}figure img,figure video{display:block;width:100%;max-height:700px;object-fit:contain;background:#f2f4ed}figcaption{padding:13px 16px;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#7a8571}figcaption span{overflow-wrap:anywhere}figcaption a{white-space:nowrap}*:focus-visible{outline:2px solid #8cae6a;outline-offset:3px}@media(max-width:1264px){main{margin:0 32px}footer{margin:0 32px}}@media(max-width:760px){header{height:72px;padding:0 20px}.brand{font-size:28px}.brand b{font-size:13px;margin-left:13px;padding-left:13px}.open-badge{display:none}.header-right .button{font-size:12px;padding:9px 11px}.hero{padding:30px;min-height:0}.hero h1{font-size:30px}.hero-art{display:none}main{margin:0 20px;padding-top:24px}.section-head{display:block}.search{margin-top:18px}.search input{width:100%}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.thumbnail{height:175px}.text-thumb{padding:12px 18px}.text-thumb>p{font-size:16px}.material-info{padding:14px}.material h3{font-size:15px}.material-info p{font-size:10px;gap:5px}.editor-panel,.detail-panel{padding:21px}.title-input{font-size:22px}.metadata{gap:12px}.metadata label{gap:7px;font-size:12px}.metadata input{width:100px}.attachment-heading{gap:15px}.attachment-heading .button{padding:11px;font-size:12px;white-space:nowrap}.detail-panel h1{font-size:26px}.form-footer>span{max-width:55%}.filters a{padding:8px 12px}footer{margin:0 20px;font-size:9px}.ql-editor{min-height:270px}.content-body{min-height:100px}}@media(max-width:400px){.brand b{font-size:11px}.grid{grid-template-columns:1fr}.header-right .button{font-size:11px}.metadata{flex-wrap:wrap}}
.button{white-space:nowrap;flex-shrink:0}.ql-snow .ql-picker.ql-header .ql-picker-label::before,.ql-snow .ql-picker.ql-header .ql-picker-item::before{content:'본문'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='2']::before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='2']::before{content:'큰 제목'}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value='3']::before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value='3']::before{content:'작은 제목'}
