@charset "UTF-8";
*{box-sizing:border-box;margin:0;padding:0} :root{--brand:#185a50;--brand-d:#104238;--ink:#223832;--bg:#f6f7f2;--card:#fff;--line:#e0e6df;--muted:#74827a;--accent:#185a50;--ok:#26745c;--err:#b84438}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','Malgun Gothic',sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;min-height:100vh}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}[hidden]{display:none!important}a{color:var(--brand);text-decoration:none}.wrap{width:min(1120px,100%);margin:auto;padding:0 32px}:focus-visible{outline:3px solid #a9c9bb;outline-offset:3px}
header{background:#fff;border-bottom:1px solid var(--line);padding:21px 0}.hbar,.header-end,.who{display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:19px;font-weight:750;letter-spacing:-.5px}.brand-icon,.modal-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:var(--brand);color:white;font-weight:800;font-size:23px}.brand small{display:block;font-size:9px;letter-spacing:2.2px;color:var(--muted);font-weight:600}.local-pill{color:var(--muted);font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:7px}.local-pill i{width:6px;height:6px;background:#559b79;border-radius:50%}.who{gap:7px}.who button{border:1px solid var(--line);background:white;border-radius:9px;color:var(--ink);padding:8px 13px;font-size:12px;font-weight:600}.who .nm{font-size:12px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;padding-top:48px;padding-bottom:42px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2.2px;color:var(--brand);margin-bottom:11px}.hero h1{font-size:42px;line-height:1.27;font-weight:750;letter-spacing:-2px}.hero p{font-size:14px;color:var(--muted);margin-top:18px}.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.hero-tags span{font-size:10px;color:#52675b;background:#eaf0e6;border:1px solid #dfe8d9;border-radius:6px;padding:4px 9px}.hero-art{background:#e5ece0;border:1px solid #d4dfcd;border-radius:24px;padding:24px 27px;box-shadow:0 8px 0 -4px #d7e0d0;transform:rotate(-2deg)}.art-label{font-size:9px;font-weight:700;letter-spacing:2px;color:#63755c}.bars{height:154px;display:flex;align-items:center;justify-content:center;gap:7px}.bars i{width:6px;height:var(--h);border-radius:5px;background:#547d61}.bars i:nth-child(3n){background:#96ad78}.art-foot{display:flex;justify-content:space-between;font-size:10px;color:#607656;border-top:1px solid #ccd8c2;padding-top:12px}
main{padding-bottom:42px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:19px;padding:28px;box-shadow:0 3px 10px #20372d03;min-width:0}.card h2{font-size:18px;letter-spacing:-.5px;line-height:1.5}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading .eyebrow{margin-bottom:5px}.step-tag{font-size:10px;color:var(--muted);white-space:nowrap}.sub{color:var(--muted);font-size:12px;margin-bottom:14px}.source-tabs{display:flex;gap:4px;margin:20px 0 15px;border-bottom:1px solid var(--line)}.source-tabs button{border:0;background:none;padding:11px 13px;color:var(--muted);font-size:12px;font-weight:700;border-bottom:2px solid transparent}.source-tabs button.active{color:var(--brand);border-bottom-color:var(--brand)}.source-tabs span{font-size:9px;color:var(--muted);margin-left:5px;font-weight:400}.drop{border:1.5px dashed #bbcdbf;background:#f7faf6;border-radius:13px;padding:25px 12px;text-align:center;cursor:pointer;transition:background .15s}.drop:hover,.drop.over{background:#eaf2e8;border-color:var(--brand)}.drop .ico{display:grid;place-items:center;width:38px;height:38px;margin:auto;background:#e7eee3;color:var(--brand);border-radius:11px;font-size:25px}.drop .t{font-size:13px;font-weight:700;margin-top:9px}.drop .s{font-size:10px;color:var(--muted);margin-top:4px}input[type=file]{display:none}.settings-heading{margin-top:25px}.text-btn{font-size:11px;color:var(--muted);border:0;background:transparent;padding:7px}
.opts{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-top:13px}.fld{display:flex;flex-direction:column;gap:6px;min-width:0}.fld label,.input-label{font-size:11px;font-weight:650;color:var(--muted)}select,input:not([type=checkbox]),textarea{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 12px;color:var(--ink);min-width:0}select{font-size:12px;max-width:100%;min-width:110px}.chk{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px;padding-bottom:10px}input[type=checkbox]{accent-color:var(--brand);width:15px;height:15px}.btn{border:1px solid var(--brand);border-radius:9px;background:var(--brand);color:#fff;font-size:12px;font-weight:650;padding:11px 16px;white-space:nowrap;transition:background .15s}.btn:hover:not(:disabled){background:var(--brand-d)}.btn.ghost{background:#fff;color:var(--ink);border-color:var(--line)}.btn.ghost:hover{background:#f1f5ee}.btn.sm{font-size:11px;padding:7px 10px}.opts #go{margin-left:auto}.url-input{display:flex;gap:8px;margin-top:8px}.url-input input{flex:1;font-size:12px}.yt-note{margin-top:10px}.empty-state{font-size:11px;text-align:center;color:#96a196;padding:18px}.prog{height:5px;background:#e9eee6;border-radius:10px;overflow:hidden;margin-top:16px;display:none}.prog.on{display:block}.prog i{display:block;height:100%;width:0;background:var(--brand);transition:width .2s}.status{font-size:12px;color:var(--muted);margin-top:8px;min-height:18px;overflow-wrap:anywhere}.status.ok{color:var(--ok)}.status.err,.bad{color:var(--err)}.list{display:flex;flex-direction:column;gap:8px;margin-top:13px}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border:1px solid var(--line);padding:11px 12px;border-radius:11px;background:#fff}.row .nm{font-size:12px;font-weight:650;flex:1;min-width:170px;overflow-wrap:anywhere}.row .meta,.row .wait,.row .bad{font-size:10px}.row .meta{color:var(--muted)}.row .bad{flex-basis:100%}.row .wait{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.remove-file{background:none;border:0;font-size:19px;line-height:1;color:var(--muted);padding:4px}
.wave,.sub-card{display:none;background:#f8faf6;border:1px solid var(--line);border-radius:13px;margin-top:17px;padding:16px}.wave.on,.sub-card.on{display:block}.wtop{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:12px}.wnm,.snm{font-size:13px;font-weight:650;overflow-wrap:anywhere}.wdur{font-size:11px;color:var(--muted);white-space:nowrap}.cvwrap{position:relative;background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;touch-action:none}canvas#cv{width:100%;height:110px;display:block}.playhead{position:absolute;top:0;bottom:0;width:2px;background:var(--err);display:none;pointer-events:none}.wtip{font-size:10px;color:var(--muted);margin-top:7px}.wrange{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.wrange input{width:110px;font-size:12px}.wbtns{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.warnbox,.note{background:#f0f4e9;border-radius:10px;padding:12px 14px;color:#687654;font-size:11px;line-height:1.8;margin-top:16px}.note{background:#f8f9f5;color:var(--muted)}.warnbox b,.note b{color:#536947}.srt{display:none;max-height:360px;overflow:auto;margin-top:13px}.srt.on{display:block}.cue{display:flex;align-items:start;gap:9px;padding:8px 0;border-top:1px solid var(--line)}.cue b{font-size:10px;white-space:nowrap;color:var(--brand);padding-top:7px;min-width:75px}.cue textarea{flex:1;resize:vertical;font-size:12px;min-height:45px;padding:7px 9px}.timestamp-mode{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:15px;flex-wrap:wrap;color:var(--muted)}.timestamp-mode span{font-size:10px;flex-basis:100%;padding-left:22px}.faq{margin-top:14px}.faq details{border-top:1px solid var(--line);padding:13px 0}.faq summary{cursor:pointer;font-size:12px;font-weight:600;list-style:none}.faq summary::after{content:'+';float:right;color:var(--muted)}.faq details[open] summary::after{content:'−'}.faq p{font-size:11px;color:var(--muted);margin-top:9px}.workspace>.card:last-child{padding:23px 20px}.workspace>.card:last-child h2{font-size:15px}
footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:11px;background:#f0f3ed}.fx{display:flex;gap:12px;align-items:center}.fx b{font-size:13px;color:var(--ink)}.xlinks{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.xlinks a{padding:4px 8px;border:1px solid #dce3d8;border-radius:6px;color:var(--muted);font-size:10px}footer a,footer div[style]{color:var(--muted)!important}footer div[style]{border-color:var(--line)!important}
.mask{position:fixed;inset:0;z-index:50;background:#18392c70;backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:20px}.mask.on{display:flex}.modal{position:relative;background:white;border:1px solid #dce5d9;border-radius:22px;width:min(420px,100%);padding:34px;box-shadow:0 30px 90px #122b3340;max-height:90dvh;overflow:auto}.modal-mark{margin-bottom:22px;width:43px;height:43px}.modal h3{font-size:25px;letter-spacing:-1px;font-weight:750}.modal .msub{font-size:12px;color:var(--muted);margin:8px 0 23px}.modal .fld{margin-bottom:14px}.modal input{width:100%;font-size:13px;padding:12px}.modal .mbtns{display:flex;gap:9px;margin-top:15px}.mbtns .btn{flex:1;padding:12px}.merr{font-size:12px;min-height:20px;color:var(--err)}.modal-x{position:absolute;top:15px;right:18px;border:0;background:none;font-size:25px;color:var(--muted)}.password-field{display:flex;position:relative}.password-field input{padding-right:60px}.password-field button{position:absolute;right:12px;top:12px;font-size:11px;color:var(--muted);border:0;background:none}
@media(max-width:960px){.workspace{grid-template-columns:1fr}.workspace>.card:last-child{display:block}.hero{gap:30px}.step-tag{display:none}}
@media(max-width:600px){.wrap{padding-left:18px;padding-right:18px}header{padding:15px 0}.brand{font-size:17px}.brand small{font-size:8px}.local-pill{display:none}.who .nm{max-width:84px}.who button{font-size:10px;padding:7px 9px}.header-end{gap:7px}.hero{padding-top:28px;padding-bottom:28px;gap:20px;grid-template-columns:1fr}.hero h1{font-size:33px;letter-spacing:-1.5px}.hero p{font-size:12px;margin-top:12px}.hero h1 br{display:none}.hero-art{display:none}.hero-tags{margin-top:15px}.card{padding:20px 17px;border-radius:15px}.card h2{font-size:16px}.eyebrow{font-size:9px}.opts{gap:10px}.opts>.fld{flex:1;min-width:115px}.opts .btn{flex:1}.opts #go{margin:0}.chk{padding-bottom:5px}.source-tabs button{padding:10px;font-size:11px}.source-tabs span{font-size:8px}.drop{padding:25px 10px}.url-input{flex-wrap:wrap}.url-input input{flex-basis:100%}.url-input .btn{width:100%}.wave,.sub-card{padding:12px}.wtop{align-items:start}.wdur{font-size:10px}.wrange .fld{flex:1}.wrange input{width:100%}.modal{padding:28px 22px}.modal h3{font-size:23px}.cue b{min-width:66px;font-size:9px}.row .nm{flex-basis:100%}.who{max-width:190px;flex-wrap:wrap;justify-content:flex-end}footer .wrap{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:600px){.hero h1{font-size:32px;word-break:keep-all}.hero h1 br{display:block}}

/* [2026-10-10] 유튜브 탭은 로그인 전에는 감춘다 — hidden 이 레이아웃에 지지 않게 */
#youtubeTab[hidden]{display:none!important}

/* [2026-10-10] 머리말 로그인 메뉴 — 이름을 누르면 아래로 펼친다.
   좁은 화면에서는 이름을 숨기던 규칙이 있었는데, 이제 이름이 메뉴로 드는
   유일한 문이라 숨기지 않고 폭만 줄인다. */
.who .menu{position:relative}
.who .menu>button{display:flex;align-items:center;gap:6px}
.who .menu>button .caret{font-size:9px;color:var(--muted);transition:transform .15s}
.who .menu>button[aria-expanded="true"]{background:#f1f5ee}
.who .menu>button[aria-expanded="true"] .caret{transform:rotate(180deg)}
.who .menu-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:142px;
  display:flex;flex-direction:column;gap:2px;padding:6px;background:#fff;
  border:1px solid var(--line);border-radius:11px;box-shadow:0 12px 28px rgba(32,48,32,.15)}
.who .menu-pop[hidden]{display:none}
.who .menu-pop button{border:0;background:none;width:100%;text-align:left;white-space:nowrap;
  padding:9px 11px;border-radius:8px;font-size:12px;font-weight:600;color:var(--ink)}
.who .menu-pop button:hover{background:#f1f5ee}
.who .menu-pop #outBtn{color:var(--err)}
