:root{font-family:Inter,"Segoe UI","Malgun Gothic",sans-serif;color:#202c29;background:#f5f6f2;font-synthesis:none;--green:#28614d;--muted:#7a8580;--line:#e3e8e2}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}[hidden]{display:none!important}header{height:88px;max-width:1240px;margin:auto;padding:0 44px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:#233d32;font-size:26px;font-weight:800;display:flex;gap:12px;align-items:center}.logo{background:#295d49;color:#fff;width:38px;height:38px;border-radius:12px;text-align:center;font-size:38px;line-height:29px;transform:rotate(-8deg)}.brand-sub{font-size:10px;letter-spacing:2px;color:#87928b;margin-left:6px;font-weight:600}.connection{display:flex;align-items:center;gap:7px;font-size:12px;color:#617367}.connection:before{content:"";width:6px;height:6px;background:#9ba59d;border-radius:50%}.connection.ready:before{background:#4a916a}.connection.error:before{background:#bb7359}main{max-width:1120px;padding:58px 36px 0;margin:auto}.intro{position:relative;padding-bottom:40px}.eyebrow{font-size:10px;letter-spacing:2.4px;color:#6a7f72;font-weight:700;margin-bottom:22px}h1{font-size:46px;line-height:1.35;letter-spacing:-2px;margin:0 0 20px;font-weight:650}h1 span{color:var(--green)}.intro p{position:absolute;right:0;bottom:54px;font-size:14px;color:#7b867f;line-height:1.9}.studio{display:grid;grid-template-columns:minmax(0,1fr) 314px;gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 4px 16px #243b2c03}.editor{padding:25px 28px 0;display:flex;flex-direction:column;min-height:490px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px}h2{font-size:15px;font-weight:650;margin:0;display:flex;align-items:center;gap:10px}.step{font-size:10px;background:#eef3ed;border:1px solid #e5ece3;color:#71806e;padding:5px 6px;border-radius:6px;letter-spacing:.5px}.text-button{font-size:12px;background:none;border:0;color:#667b6b;text-decoration:none;padding:4px 0;cursor:pointer}.text-button:hover{color:#214f3a}.editor textarea{resize:vertical;min-height:300px;flex:1;width:100%;border:0;background:none;line-height:1.9;font-size:16px;color:#34493c;margin-top:24px;padding:0}.editor textarea::placeholder{color:#a8b0a8}.editor textarea:focus{outline:0}.editor:focus-within{border-color:#84a78c}.editor-bottom{padding:20px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#9ba49c}.file-button{font-size:12px;color:#6d7d6e;cursor:pointer}.file-button:hover{text-decoration:underline}.hint{border-top:1px solid #edf0ea;padding:17px 0 20px;line-height:1.7;font-size:11px;color:#919c92}.settings{padding:25px 24px}.settings h2{margin-bottom:26px}.settings label{display:block;font-size:12px;color:#56665a;margin-bottom:9px}.settings select,.settings textarea{width:100%;background:#f8f9f6;border:1px solid #e1e7dd;border-radius:8px;padding:11px 12px;color:#3d5042;font-size:12px}.settings select{margin-bottom:19px}.field-note{font-size:10px;color:#8b968b;line-height:1.6;margin:-10px 0 18px}.range-label{display:flex;justify-content:space-between;margin-top:2px}.range-label output{font-size:12px;color:var(--green);font-weight:700}input[type=range]{width:100%;accent-color:var(--green);cursor:pointer;margin:4px 0 8px}.range-ends{display:flex;justify-content:space-between;font-size:10px;color:#9da59b;margin-bottom:24px}.settings textarea{height:80px;resize:vertical}.cost-note{background:#f2f5ed;display:flex;gap:8px;padding:12px;border-radius:9px;color:#829275;margin-top:3px}.cost-note p{font-size:10px;margin:0;line-height:1.8}.action-bar{grid-column:1/-1;display:flex;gap:12px;align-items:center;padding:7px 0 11px}.action-bar>div{flex:1}.action-bar strong{font-size:13px;font-weight:550}.action-bar p{font-size:11px;color:#939e93;margin:7px 0}.primary,.secondary{border:0;border-radius:10px;padding:17px 28px;font-size:13px;font-weight:600}.primary{background:var(--green);color:#fff;box-shadow:0 5px 12px #214f3a18}.primary span{margin-right:8px}.primary:hover{background:#1e4b3a}.secondary{background:#e7ece3;color:#4c604d}.result{margin-top:18px;padding:25px 28px}.empty{text-align:center;padding:28px 0 20px}.empty p{font-size:13px;color:#7b897b;margin:17px 0 8px}.empty>span{font-size:11px;color:#a1aaa0}.wave{height:32px;display:flex;align-items:center;gap:5px;justify-content:center}.wave i{width:4px;border-radius:8px;background:#cad7c6;height:12px}.wave i:nth-child(2n){height:22px}.wave i:nth-child(3n){height:32px}.empty.loading .wave i{animation:pulse .85s ease-in-out infinite alternate}.empty.loading .wave i:nth-child(2n){animation-delay:.3s}.empty.loading .wave i:nth-child(3n){animation-delay:.6s}@keyframes pulse{to{transform:scaleY(.35)}}audio{width:100%;margin:24px 0 15px}#result-meta:empty{display:none}#result-meta{margin:5px 0}#status{font-size:12px;line-height:1.8;color:#657862;min-height:22px;margin:14px 0}#status.error{color:#ae4e3c}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:28px;padding:25px 0 30px;color:#9da79b;font-size:10px;letter-spacing:.3px}footer b{font-weight:400;margin:0 8px;color:#6d8d70}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){header{height:72px;padding:0 22px}.brand-sub{display:none}main{padding:34px 20px 0}h1{font-size:36px}.intro p{position:static;margin:0;font-size:12px}.intro{padding-bottom:26px}.studio{grid-template-columns:1fr}.editor{min-height:400px;padding:22px 20px 0}.editor textarea{min-height:240px}.settings{padding:24px 20px}.action-bar{flex-wrap:wrap}.action-bar>div{flex-basis:100%;margin:6px 0}.primary{flex:1}.result{padding:24px 20px}.hint{font-size:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
.study{margin-top:18px;padding:25px 28px}.study-badge{font-size:11px;color:#74866e}.study-controls{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:24px}.study-controls>div label{display:block;font-size:11px;color:#71806e;margin-bottom:8px}.study-controls select{border:1px solid #e1e7dd;border-radius:8px;padding:9px 12px;background:#f8f9f6;color:#3d5042;font-size:12px}.check-label{font-size:11px;color:#71806e;display:flex;align-items:center;gap:5px;cursor:pointer}.check-label input{accent-color:#28614d}.study-help{font-size:11px;line-height:1.8;color:#929d8e;margin:18px 0}.items{margin:0;padding:0;list-style:none;counter-reset:study-item;max-height:320px;overflow-y:auto}.items li{counter-increment:study-item;display:flex;gap:14px;align-items:center;padding:16px 12px;border-top:1px solid #edf0ea;border-radius:5px}.items li:before{content:counter(study-item,decimal-leading-zero);font-size:10px;color:#9baa92}.items li.active{background:#edf4e9}.item-text{flex:1;font-size:13px;line-height:1.8;overflow-wrap:anywhere}.masked .item-text{color:transparent;background:repeating-linear-gradient(0deg,transparent 0,transparent 7px,#e5eadf 7px,#e5eadf 15px,transparent 15px,transparent 24px);user-select:none}.items button{flex-shrink:0}.study-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:20px}.study-actions>span{font-size:11px;color:#7e8e75}.study-actions button{padding:13px 18px}.items:empty:after{content:'위에 학습 내용을 입력하면 항목이 나타나요.';display:block;font-size:12px;color:#a0ac98;padding:22px 0;text-align:center}@media(max-width:760px){.study{padding:24px 20px}.study-controls{gap:16px}.study-controls>div{flex:1}.study-controls select{width:100%}.study-actions>span{flex-basis:100%;line-height:1.8}}
.transfer{margin-top:18px;padding:25px 28px}.transfer-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.transfer-actions button{font-size:11px;padding:12px 15px}.transfer-actions label{padding:10px}.transfer-actions #clear-data{color:#9b7d6b}@media(max-width:760px){.transfer{padding:24px 20px}.transfer-actions .secondary{width:100%}}
