:root{
  --bg:#f2f0eb;--paper:#fffdfa;--ink:#111;--muted:#706d68;--line:#dcd7cf;--accent:#e54835;--accent-soft:#fbe5e0;--dark:#171717;--shadow:0 12px 40px rgba(18,18,18,.07)
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Inter, Pretendard, "Noto Sans KR", system-ui, -apple-system, sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--dark);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:4px 6px 24px;cursor:pointer}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--accent);font-family:serif;font-weight:800;font-size:22px}.brand h1{font-size:17px;margin:0 0 3px}.brand p{font-size:10px;margin:0;color:#8d8d8d;letter-spacing:.12em}.nav{display:flex;flex-direction:column;gap:5px}.nav-btn{border:0;background:transparent;color:#a9a9a9;text-align:left;border-radius:10px;padding:13px 12px;display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:4px}.nav-btn b{font-weight:650;font-size:14px}.nav-btn em{font-size:9px;font-style:normal;border:1px solid #555;padding:2px 4px;border-radius:4px}.nav-btn.active,.nav-btn:hover{background:#292929;color:#fff}.nav-btn.active span{color:#ff6b58}.sidebar-bottom{margin-top:auto;color:#797979;font-size:11px;line-height:1.6;padding:10px 5px}.install-btn{width:100%;border:1px solid #444;background:#242424;color:#fff;border-radius:8px;padding:10px;margin-bottom:10px}.main{min-width:0}.topbar{height:72px;padding:0 34px;display:flex;align-items:center;border-bottom:1px solid var(--line);background:rgba(242,240,235,.92);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.topbar>div{display:flex;flex-direction:column;gap:2px}.topbar strong{font-size:16px}.topbar span{font-size:11px;color:var(--muted)}.topbar .ghost-btn{margin-left:auto}.menu-btn{display:none;border:0;background:transparent;font-size:22px;margin-right:10px}.ghost-btn,.secondary-btn,.primary-btn,.text-btn{border:0;border-radius:8px}.ghost-btn{border:1px solid var(--line);background:var(--paper);padding:9px 13px;font-size:12px}.primary-btn{background:var(--accent);color:#fff;padding:13px 18px;font-weight:750}.secondary-btn{background:var(--dark);color:#fff;padding:13px 18px;font-weight:700}.text-btn{background:transparent;color:var(--muted);padding:4px 0;font-size:12px}.full{width:100%}.view{display:none;padding:38px 42px 70px;max-width:1560px;margin:0 auto}.view.active{display:block}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--accent)}.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:36px;align-items:stretch;margin-bottom:26px}.hero h2{font-family:Georgia,"Noto Serif KR",serif;font-size:46px;line-height:1.13;margin:13px 0 16px;letter-spacing:-.04em}.hero mark{background:none;color:var(--accent)}.hero>div:first-child>p{max-width:630px;color:var(--muted);line-height:1.75;font-size:14px}.hero-actions{display:flex;gap:9px;margin-top:24px}.desk-card{background:var(--dark);color:#fff;padding:23px;border-radius:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:270px}.desk-card-top,.memo-footer{display:flex;justify-content:space-between;align-items:center}.desk-card-top span{font-weight:750;font-size:13px}.desk-card-top time,.memo-footer{font-size:11px;color:#888}.desk-card textarea{flex:1;margin:18px 0 12px;background:#202020;border:1px solid #333;border-radius:10px;resize:none;color:#f5f5f5;padding:14px;line-height:1.7;outline:none}.desk-card .text-btn{color:#aaa}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tool-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;position:relative;cursor:pointer;min-height:210px;transition:.18s ease}.tool-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#c7c0b7}.tool-num{font-size:10px;color:#aaa;font-weight:800;letter-spacing:.12em}.tool-icon{font-size:29px;margin:20px 0 12px}.tool-card h3{font-size:17px;margin:0 0 9px}.tool-card h3 small{font-size:9px;color:var(--accent);border:1px solid #efb6ad;padding:2px 4px;border-radius:4px}.tool-card p{font-size:12px;color:var(--muted);line-height:1.65;margin:0 0 18px}.tool-link{font-size:12px;font-weight:750}.home-bottom{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:14px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.panel-head h3{font-size:14px;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:3px 0 0}.recent-list,.archive-list{display:grid;gap:8px}.recent-item,.archive-item{border:1px solid var(--line);border-radius:9px;padding:12px 13px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.type-badge{font-size:9px;background:#eee9e2;padding:4px 6px;border-radius:5px;font-weight:800}.recent-item b,.archive-item b{font-size:12px}.recent-item p,.archive-item p{font-size:10px;color:var(--muted);margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.recent-item time,.archive-item time{font-size:10px;color:#9b9790}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.mini-stats>div{background:#f4f1ec;border-radius:9px;padding:14px 10px}.mini-stats strong{display:block;font-size:22px}.mini-stats span{font-size:10px;color:var(--muted)}.tip{font-size:11px;color:var(--muted);line-height:1.6;margin:16px 0 0}.empty-state{color:#98938d;text-align:center;padding:34px 16px;font-size:12px}.page-intro{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}.page-intro h2{font-family:Georgia,"Noto Serif KR",serif;font-size:34px;margin:8px 0 7px;letter-spacing:-.03em}.page-intro p{font-size:12px;color:var(--muted);margin:0}.editor-layout{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(440px,1.1fr);gap:14px;align-items:stretch}.input-panel,.output-panel{min-height:650px;display:flex;flex-direction:column}.field{margin-bottom:14px}.field.grow{flex:1;display:flex;flex-direction:column}.field label{display:block;font-size:11px;font-weight:750;margin-bottom:7px}.field label span{font-weight:400;color:#a39e97}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fbf9f5;border-radius:8px;padding:11px 12px;outline:none;color:#222}.field input:focus,.field select:focus,.field textarea:focus{border-color:#aaa39a;background:#fff}.article-text{resize:none;flex:1;min-height:300px;line-height:1.75}.label-row{display:flex;justify-content:space-between;align-items:center}.label-row span{font-size:10px;color:#999}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.analysis-box{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.analysis-box>div{background:#f4f1ec;border-radius:9px;padding:12px}.analysis-box>div:last-child{grid-column:1/3}.analysis-box span,.brief-row span{font-size:9px;color:#9a958e;font-weight:800;letter-spacing:.08em}.analysis-box p{font-size:12px;line-height:1.55;margin:5px 0 0}.result-head{display:flex;justify-content:space-between;align-items:center}.result-head h3{font-size:14px}.segmented{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.segmented button,.archive-filters button{border:0;background:#faf7f2;padding:7px 9px;font-size:10px;color:#777}.segmented button.active,.archive-filters button.active{background:var(--dark);color:#fff}.headline-results{display:grid;gap:8px;flex:1;align-content:start}.headline-card{border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:#fff;display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:start}.headline-card .rank{font-family:Georgia,serif;font-size:13px;color:#999;padding-top:4px}.headline-card textarea{border:0;width:100%;resize:none;outline:none;font-weight:800;font-size:16px;line-height:1.45;overflow:hidden;background:transparent}.headline-meta{display:flex;gap:8px;font-size:9px;color:#999;margin-top:4px}.copy-btn{border:1px solid var(--line);background:#faf8f4;border-radius:6px;padding:5px 7px;font-size:10px}.subhead-box{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}.subhead-title{display:flex;justify-content:space-between;align-items:center}.subhead-title h3{font-size:13px}.subhead-line{font-size:12px;line-height:1.7;border-bottom:1px dashed #e1ddd7;padding:7px 0}.graphic-result{display:flex;flex-direction:column;gap:9px}.brief-row{border-bottom:1px solid var(--line);padding:10px 0}.brief-row p{font-size:13px;line-height:1.65;margin:5px 0}.prompt-box{background:#181818;color:#fff;border-radius:11px;padding:15px;margin-top:9px}.prompt-head{display:flex;justify-content:space-between;align-items:center}.prompt-head h3{font-size:13px}.prompt-head .text-btn{color:#aaa}.prompt-box textarea{width:100%;min-height:280px;background:#202020;color:#eee;border:1px solid #333;border-radius:8px;padding:12px;resize:vertical;line-height:1.65}.proof-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:14px}.drop-zone{display:grid;place-items:center;text-align:center;border:1.5px dashed #c8c2b9;border-radius:12px;padding:30px 15px;margin-bottom:16px;background:#faf8f4;cursor:pointer}.drop-zone strong{font-size:13px;margin:10px 0 3px}.drop-zone span{font-size:10px;color:#999}.pdf-icon{background:#cf3e31;color:#fff;font-weight:900;font-size:11px;padding:9px;border-radius:7px}.pdf-meta{padding:10px 12px;background:#f4f1ec;border-radius:8px;font-size:11px;margin-bottom:14px}.checklist{display:grid;gap:7px}.check-item{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:9px;padding:11px 12px}.check-item input{margin-top:3px}.check-item b{display:block;font-size:12px}.check-item p{font-size:10px;color:var(--muted);margin:3px 0 0;line-height:1.5}.check-item.done{background:#f3f1ec}.check-item.done b{text-decoration:line-through;color:#8f8a84}.progress-wrap{margin:18px 0}.progress-label{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.progress{height:8px;background:#e8e4de;border-radius:99px;overflow:hidden}.progress>div{height:100%;width:0;background:var(--accent);transition:.2s}.archive-actions{display:flex;gap:7px}.file-label{display:inline-flex;align-items:center;cursor:pointer}.archive-filters{display:flex;gap:4px;margin-bottom:14px}.archive-filters button{border-radius:7px}.archive-item{grid-template-columns:auto 1fr auto auto}.archive-item .delete-btn{border:0;background:transparent;color:#aaa;font-size:15px}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);opacity:0;background:#111;color:#fff;padding:10px 14px;border-radius:8px;font-size:11px;pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;width:250px;transition:.2s}.sidebar.open{left:0}.menu-btn{display:block}.view{padding:28px 22px 60px}.topbar{padding:0 20px}.hero,.home-bottom,.editor-layout,.proof-layout{grid-template-columns:1fr}.tool-grid{grid-template-columns:1fr 1fr}.input-panel,.output-panel{min-height:auto}.article-text{min-height:260px}}
@media(max-width:660px){.view{padding:24px 14px 60px}.topbar{height:62px}.topbar .ghost-btn{display:none}.hero h2{font-size:35px}.tool-grid{grid-template-columns:1fr}.page-intro{align-items:flex-start;flex-direction:column}.page-intro h2{font-size:29px}.settings-grid{grid-template-columns:1fr}.analysis-box{grid-template-columns:1fr}.analysis-box>div:last-child{grid-column:auto}.archive-actions{width:100%}.archive-actions>*{flex:1;text-align:center;justify-content:center}.archive-item{grid-template-columns:auto 1fr auto}.archive-item time{display:none}}
.headline-top-actions{display:flex;gap:9px;align-items:center}.ai-status{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--paper);border-radius:99px;padding:8px 11px;font-size:10px;color:var(--muted);white-space:nowrap}.ai-status i{width:7px;height:7px;border-radius:50%;background:#b7b1aa}.ai-status.connected{border-color:#bcd5c5;color:#2e6844;background:#f3faf5}.ai-status.connected i{background:#36a269;box-shadow:0 0 0 3px rgba(54,162,105,.12)}.ai-status.error{border-color:#efc0ba;color:#a73f34;background:#fff6f4}.ai-status.error i{background:#d95345}.ai-status.checking i{animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.35}}.input-note{font-size:10px;line-height:1.55;color:#9a958e;margin:9px 2px 0}.editor-note{background:#fff5df;border:1px solid #ead5a6;border-radius:9px;padding:10px 12px;font-size:11px;line-height:1.6;color:#6f592e;margin:-4px 0 13px}.learn-pill{font-size:9px;background:#f1eee8;border:1px solid var(--line);padding:5px 7px;border-radius:99px;color:#777}.learn-pill b{color:var(--accent)}.command-strip{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 12px}.command-strip button{border:1px solid var(--line);background:#faf8f4;border-radius:7px;padding:7px 9px;font-size:10px;color:#777}.command-strip button.active{background:var(--dark);border-color:var(--dark);color:#fff}.headline-card .candidate-why{font-size:10px;font-weight:400;color:#8b867f;line-height:1.5;margin:5px 0 0}.headline-card .angle-tag{font-size:9px;background:#f2eee8;color:#6f6a64;padding:3px 5px;border-radius:4px}.headline-card.learning{outline:2px solid rgba(229,72,53,.14)}.subhead-title>div p{font-size:9px;color:#999;margin:-7px 0 7px}.loading-state{padding:42px 16px;text-align:center;color:#777;font-size:12px}.loading-state .spinner{width:24px;height:24px;border:2px solid #ded9d2;border-top-color:var(--accent);border-radius:50%;margin:0 auto 12px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:660px){.headline-top-actions{width:100%;justify-content:space-between}.ai-status{padding:7px 9px}.command-strip{gap:4px}.command-strip button{flex:1 1 30%;padding:8px 4px}.archive-actions{flex-wrap:wrap}.archive-actions>*{flex:1 1 45%}}
.workflow-card{background:var(--dark);color:#fff;border-radius:16px;padding:22px 24px;box-shadow:var(--shadow)}.workflow-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #333;padding-bottom:13px}.workflow-head span{font-size:13px;font-weight:800}.workflow-head b{font-size:10px;color:#ff8a79;border:1px solid #53362f;border-radius:99px;padding:4px 7px}.workflow-card ol{list-style:none;margin:15px 0 0;padding:0;display:grid;gap:13px}.workflow-card li{display:flex;gap:10px;align-items:center}.workflow-card li i{font-style:normal;width:26px;height:26px;border-radius:50%;background:#2a2a2a;display:grid;place-items:center;color:#ff7b69;font-size:10px;font-weight:900}.workflow-card li div{display:flex;flex-direction:column;gap:2px}.workflow-card li b{font-size:12px}.workflow-card li span{font-size:10px;color:#8f8f8f}.stepper{display:flex;gap:6px;margin:-10px 0 16px;flex-wrap:wrap}.stepper span{font-size:9px;border:1px solid var(--line);background:#f8f5f0;padding:5px 8px;border-radius:99px;color:#8f8a84}.stepper span.on{background:var(--dark);color:#fff;border-color:var(--dark)}.free-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f4f8f3;border:1px solid #ceddcb;color:#355f39;border-radius:10px;padding:10px 12px;margin-bottom:14px}.free-banner b{font-size:11px}.free-banner span{font-size:9px;text-align:right}.prompt-section{display:flex;flex-direction:column;gap:10px}.prompt-section.growbox{flex:1;min-height:0}.prompt-section.growbox .prompt-textarea{flex:1;min-height:300px}.prompt-textarea{width:100%;min-height:285px;border:1px solid var(--line);background:#fbf9f5;border-radius:9px;padding:13px;resize:vertical;line-height:1.7;font-size:11px;outline:none}.prompt-textarea:focus,.result-paste:focus{border-color:#aaa39a;background:#fff}.prompt-textarea.tall{min-height:430px}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.import-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);flex:1;display:flex;flex-direction:column;min-height:0}.import-section .result-head>div p{font-size:9px;color:#999;margin:3px 0 0}.result-paste{width:100%;flex:1;min-height:300px;border:1px solid var(--line);background:#fbf9f5;border-radius:9px;padding:12px;resize:vertical;line-height:1.65;font-size:11px;margin-top:9px;outline:none}.review-panel{margin-top:14px}.review-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:14px}.review-head h3{font-size:20px;margin:6px 0 3px}.review-head p{font-size:10px;color:var(--muted);margin:0}.chips{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.chips span{font-size:9px;background:#f2eee8;border:1px solid var(--line);padding:5px 7px;border-radius:99px}.headline-results.wide{grid-template-columns:1fr 1fr;display:grid}.headline-card{position:relative}.headline-card textarea{min-height:48px}.candidate-angle{font-size:9px;color:#8f8a84;margin-top:4px}.candidate-why{font-size:9px;color:#999;line-height:1.45;margin-top:2px}.copy-btn.adopt{background:#171717;color:#fff;border-color:#171717}.copy-btn.adopt:hover{background:#333}.desk-memo-result{margin-top:13px;background:#fff5df;border:1px solid #ead5a6;border-radius:9px;padding:11px 12px;font-size:11px;line-height:1.6;color:#6f592e}.growbox{flex:1}.learning-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:14px}.style-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.style-stats div{background:#f4f1ec;border-radius:9px;padding:13px}.style-stats b{display:block;font-size:19px}.style-stats span{font-size:9px;color:var(--muted)}.profile-box{margin-top:14px;background:#171717;color:#fff;border-radius:10px;padding:14px}.profile-box h4{font-size:11px;margin:0 0 9px;color:#aaa}.profile-box pre{white-space:pre-wrap;font-family:inherit;font-size:10px;line-height:1.7;color:#ddd;margin:0}.learning-list{display:grid;gap:7px;max-height:650px;overflow:auto}.learning-item{display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid var(--line);border-radius:9px;padding:11px 12px}.learning-item b{font-size:12px;line-height:1.5}.learning-item p{font-size:9px;color:var(--muted);margin:4px 0 0}.learning-item time{font-size:9px;color:#999}.muted-small{font-size:9px;color:#999}.danger{color:#a13e34}.input-panel .primary-btn.full{margin-top:auto}.field input::placeholder,.field textarea::placeholder,.prompt-textarea::placeholder,.result-paste::placeholder{color:#aaa59e}.home-bottom{margin-top:14px}.learn-pill{white-space:nowrap}
@media(max-width:1050px){.learning-grid{grid-template-columns:1fr}.headline-results.wide{grid-template-columns:1fr}.review-head{align-items:flex-start;flex-direction:column}.chips{justify-content:flex-start}.prompt-textarea.tall{min-height:300px}}
@media(max-width:660px){.free-banner{align-items:flex-start;flex-direction:column}.free-banner span{text-align:left}.action-row{grid-template-columns:1fr}.style-stats{grid-template-columns:1fr 1fr}.headline-results.wide{grid-template-columns:1fr}.workflow-card{padding:18px}.hero{gap:18px}.learning-grid{grid-template-columns:1fr}}
.nameplate-box,.mandatory-fix-box{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}.nameplate-results{display:grid;gap:7px}.nameplate-item{display:grid;grid-template-columns:54px 1fr;gap:9px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}.nameplate-item>span{font-size:9px;font-weight:800;color:#918b84}.nameplate-item>div{font-size:13px;font-weight:750;line-height:1.5;outline:none}.fix-list{display:grid;gap:8px;margin-top:4px}.fix-item{display:grid;grid-template-columns:24px 1fr;gap:10px;border:1px solid #edc8c1;background:#fff8f6;border-radius:9px;padding:11px 12px}.fix-item>b{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#e54835;color:#fff;font-size:9px}.fix-item p{display:grid;grid-template-columns:38px 1fr;gap:7px;margin:0 0 5px;font-size:11px;line-height:1.55}.fix-item p span{font-size:9px;font-weight:800;color:#9b655e}.fix-item small{display:block;color:#8d7772;font-size:9px;line-height:1.5;margin-top:4px}.no-fix{border:1px dashed var(--line);border-radius:9px;padding:12px;font-size:11px;color:#777;background:#faf8f4}.no-fix.good{border-color:#c9ddcf;background:#f4faf5;color:#3f684a}.mandatory-fix-box .subhead-title{margin-bottom:8px}.nameplate-box .subhead-title{margin-bottom:8px}


.final-learning-box{margin-top:22px;border:1px solid #d8c9b8;background:#fffaf3;border-radius:12px;padding:18px}
.final-learning-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}
.final-learning-head h3{margin:5px 0 4px;font-size:18px}
.final-learning-head p{margin:0;font-size:10px;line-height:1.6;color:var(--muted)}
.final-learning-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:0 12px}
.final-title-field{grid-column:1/2}
.final-subs-field{grid-column:1/3}
.final-learning-box textarea,.final-learning-box input{width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:11px 12px;outline:none}
.final-learning-box textarea{resize:vertical;font-size:17px;font-weight:800;line-height:1.5}
.final-learning-box textarea:focus,.final-learning-box input:focus{border-color:#a99f93}
.final-meta{display:flex;justify-content:space-between;margin-top:5px;font-size:9px;color:#9a948d}
.final-learn-subs{display:grid;gap:7px}
.final-sub-row{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center}
.final-sub-row>span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#eee7de;font-size:9px;font-weight:800;color:#766f66}
.final-sub-row input{font-size:12px}
.final-learning-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.final-learning-note{font-size:9px;color:#90877c;line-height:1.55;margin:10px 0 0}
.candidate-actions{display:flex;flex-direction:column;gap:6px}
.recommended-card{border-color:#d8b18e;background:#fffdf9}
.recommend-tag{background:#fff0df;color:#9d5a1c;border:1px solid #efd1ad;border-radius:99px;padding:1px 5px}
.learning-nameplate{display:inline-block;font-size:9px;font-weight:800;color:#8d6d4d;background:#f7efe5;border-radius:5px;padding:3px 5px;margin-bottom:5px}
.learning-subs{display:grid;gap:2px;margin-top:6px}
.learning-subs span{font-size:9px;line-height:1.45;color:#7f7972}
@media(max-width:760px){.final-learning-grid{grid-template-columns:1fr}.final-title-field,.final-subs-field{grid-column:auto}.final-learning-head{flex-direction:column}.final-learning-actions{grid-template-columns:1fr}.candidate-actions{flex-direction:row}}

.import-step-btn{margin-top:10px;min-height:46px;font-size:inherit;font-weight:800;letter-spacing:-.01em}

/* V2.4 PDF 자동 검수 */
.proof-auto-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:14px;margin-bottom:14px}.proof-upload-panel{display:flex;flex-direction:column}.proof-drop{margin-bottom:12px}.proof-drop span:last-child{max-width:420px;line-height:1.5}.pdf-meta span{display:block;color:var(--muted);margin-top:5px}.pdf-scan-status{margin-top:14px}.scan-status-row{display:flex;justify-content:space-between;gap:12px;font-size:11px;margin-bottom:7px}.scan-status-row span{color:var(--muted)}.proof-note{margin-top:14px;background:#f6f1eb;border-left:3px solid #c9bfb3;border-radius:8px;padding:12px 13px}.proof-note b{font-size:11px}.proof-note p{font-size:10px;color:var(--muted);line-height:1.65;margin:5px 0 0}.proof-summary-panel{display:flex;flex-direction:column}.proof-badge{font-size:10px;font-weight:800;padding:5px 8px;border-radius:99px;background:#ece8e2;color:#777}.proof-badge.ready{background:#eee8df;color:#675d51}.proof-badge.scanning{background:#fff0d6;color:#9a6200}.proof-badge.done{background:#e7f2e8;color:#3e7143}.proof-badge.alert{background:#fde7e3;color:#b43b2d}.proof-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.proof-stats>div{background:#f4f1ec;border-radius:9px;padding:16px 10px}.proof-stats strong{display:block;font-size:25px;line-height:1}.proof-stats span{display:block;font-size:10px;color:var(--muted);margin-top:6px}.proof-empty{margin:auto 0}.proof-results-wrap{display:grid;gap:14px}.proof-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.proof-result-grid.lower{grid-template-columns:1fr 1fr}.proof-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.proof-section-head>div{display:flex;align-items:flex-start;gap:9px}.proof-section-head h3{font-size:14px;margin:0}.proof-section-head p{font-size:10px;color:var(--muted);margin:3px 0 0;line-height:1.45}.proof-dot{width:9px;height:9px;border-radius:50%;margin-top:4px;flex:0 0 9px}.proof-dot.must{background:#cf3e31}.proof-dot.review{background:#d59a2b}.proof-dot.headline{background:#262626}.proof-dot.preview{background:#7c756d}.proof-dot.ai{background:#7d5ce7}.proof-result-list{display:grid;gap:8px;max-height:560px;overflow:auto}.proof-issue{border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#fff}.proof-issue.must{border-left:3px solid #cf3e31}.proof-issue.review{border-left:3px solid #d59a2b}.proof-issue-top{display:flex;justify-content:space-between;gap:12px}.proof-issue-top b{font-size:11px}.proof-issue-top span{font-size:9px;color:#999;white-space:nowrap}.proof-issue p{font-size:10px;color:var(--muted);line-height:1.55;margin:6px 0 0}.proof-issue blockquote{margin:7px 0 0;padding:7px 9px;background:#f7f4ef;border-radius:6px;font-size:10px;line-height:1.55;color:#47423c}.proof-ok{border:1px dashed #d8d2ca;border-radius:9px;padding:18px;text-align:center;color:#8d877f;font-size:11px;line-height:1.6;background:#faf8f4}.proof-loading,.proof-error{padding:20px;text-align:center;color:var(--muted);font-size:11px}.proof-error{color:#b43b2d}.large-text-results{display:grid;gap:7px;max-height:560px;overflow:auto}.large-text-item{border-bottom:1px solid var(--line);padding:8px 0}.large-text-item:first-child{padding-top:0}.large-text-item>div{display:flex;justify-content:space-between;gap:8px}.large-text-item span,.large-text-item em{font-size:9px;color:#999;font-style:normal}.large-text-item b{display:block;font-size:13px;line-height:1.45;margin:4px 0}.large-text-item small{display:block;font-size:9px;color:#a75d52}.pdf-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:560px;overflow:auto}.pdf-preview-card{margin:0;background:#ede9e3;border:1px solid var(--line);border-radius:8px;overflow:hidden}.pdf-preview-card canvas{display:block;width:100%;height:auto;background:#fff}.pdf-preview-card figcaption{font-size:9px;color:#706a63;padding:6px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proof-ai-panel{margin-top:0}.proof-prompt{min-height:290px}.proof-check-panel{margin-top:0}.proof-check-panel .checklist{grid-template-columns:repeat(2,1fr)}
@media(max-width:1050px){.proof-auto-grid,.proof-result-grid,.proof-result-grid.lower{grid-template-columns:1fr}.pdf-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.proof-stats{grid-template-columns:repeat(2,1fr)}.pdf-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-check-panel .checklist{grid-template-columns:1fr}.proof-issue-top{display:block}.proof-issue-top span{display:block;margin-top:3px}.proof-section-head{align-items:center}}

/* V2.4.1 제목 줄 수·부제 행갈이 */
.subhead-copy-block{font-size:12px;line-height:1.9;white-space:pre-line;padding:8px 0;outline:none}
.subhead-copy-block:focus{background:#fffdf8;border-radius:6px;box-shadow:0 0 0 1px #e4ddd4 inset;padding:8px 10px}
.final-subs-field textarea{font-size:12px!important;font-weight:500!important;line-height:1.8!important;min-height:118px;white-space:pre-wrap}
.recent-item b,.learning-item b{white-space:pre-line}


/* V2.4.2 본문 전체 원문 대조형 교열 */
.article-proof-head{align-items:flex-start}.fix-head-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.article-proof-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 12px;padding:8px 10px;background:#faf7f2;border:1px solid var(--line);border-radius:8px;font-size:9px;color:#746e67}.article-proof-legend>span{display:flex;align-items:center;gap:5px;font-weight:700}.article-proof-legend small{margin-left:auto;color:#999}.legend-mark{display:inline-block;width:20px;height:10px;border-radius:2px;background:#ffe0da;border-bottom:2px solid #d04a3d}.legend-chip{font-style:normal;display:inline-grid;place-items:center;min-width:19px;height:16px;padding:0 4px;border-radius:4px;background:#f1ebe4;color:#9e493e;font-weight:900}.article-proof-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);gap:12px;align-items:start}.article-proof-paper,.article-proof-side{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.article-proof-paper-head,.article-proof-side-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;background:#f5f2ed;border-bottom:1px solid var(--line)}.article-proof-paper-head b,.article-proof-side-head b{font-size:10px}.article-proof-paper-head span,.article-proof-side-head span{font-size:9px;color:#8e8881}.article-proof-body{padding:18px 19px;white-space:pre-wrap;font-size:12px;line-height:2;color:#292724;max-height:720px;overflow:auto;word-break:keep-all;overflow-wrap:anywhere}.article-proof-empty{color:#999}.article-fix-mark{position:relative;background:#ffe2dc;color:inherit;border-bottom:2px solid #d34a3c;border-radius:2px;padding:1px 2px;cursor:pointer;box-decoration-break:clone;-webkit-box-decoration-break:clone}.article-fix-mark sup{display:inline-grid;place-items:center;vertical-align:super;margin-left:2px;min-width:14px;height:14px;padding:0 3px;border-radius:99px;background:#cc3e32;color:#fff;font-size:7px;line-height:1;font-weight:900}.article-fix-mark.active{background:#ffd0c7;box-shadow:0 0 0 2px rgba(204,62,50,.17)}.article-inline-correction{display:inline-block;margin:0 4px 0 3px;padding:2px 5px;border-radius:4px;background:#f3eee8;color:#a24439;font-size:9px;font-weight:800;line-height:1.45;vertical-align:baseline}.hide-inline-corrections .article-inline-correction{display:none}.hide-inline-corrections .article-fix-mark{background:#fff0ec}.article-proof-side{position:sticky;top:76px}.article-proof-side .fix-list{padding:9px;max-height:650px;overflow:auto}.article-fix-card{appearance:none;width:100%;text-align:left;font:inherit;cursor:pointer}.article-fix-card.active{border-color:#d4584c;background:#fff0ed;box-shadow:0 0 0 1px rgba(212,88,76,.08)}.article-fix-card.unmatched{border-style:dashed}.article-fix-card .location-warn{color:#ad7f32}.mandatory-fix-box .fix-item{grid-template-columns:24px minmax(0,1fr)}.mandatory-fix-box .fix-item p{grid-template-columns:38px minmax(0,1fr);word-break:break-word}.mandatory-fix-box .fix-item small{word-break:break-word}
@media(max-width:900px){.article-proof-layout{grid-template-columns:1fr}.article-proof-side{position:static}.article-proof-body{max-height:620px}.article-proof-side .fix-list{max-height:none}.article-proof-legend small{width:100%;margin-left:0}}
@media(max-width:600px){.article-proof-body{padding:14px 13px;font-size:11px;line-height:1.9}.article-inline-correction{display:block;width:max-content;max-width:100%;margin:3px 0 5px 0}.fix-head-actions{width:100%}.fix-head-actions .text-btn{flex:1}}

/* V2.5 편집 실전 검증·비교 강화 */
.stepper span.done{background:#ece8e1;color:#5d5751;border-color:#d5cec5}.stepper span.done::before{content:'✓ ';font-weight:900;color:#4c7a58}.stepper span.on{box-shadow:0 0 0 2px rgba(23,23,23,.08)}
.headline-line-metric{margin-top:5px}.line-metric{display:inline-flex;align-items:center;gap:4px;font-size:9px;padding:3px 6px;border-radius:5px;background:#f4f1ec;color:#777}.line-metric.ok{background:#edf6ef;color:#3f684a}.line-metric.warn{background:#fff0e9;color:#a65040}.headline-meta .total-len{font-weight:800;color:#68625b}
.subhead-actions{display:flex;align-items:center;gap:10px}.length-badge{font-size:9px;font-weight:800;padding:4px 7px;border-radius:99px;border:1px solid var(--line);white-space:nowrap}.length-badge.ok{background:#edf6ef;border-color:#c7ddcc;color:#3f684a}.length-badge.bad{background:#fff0ed;border-color:#e5b7ae;color:#b13e31}
.subhead-set{border:1px solid var(--line);border-radius:10px;padding:11px 12px;margin-top:8px;background:#fff}.subhead-set.selected{border-color:#d0b38f;background:#fffdf8;box-shadow:0 0 0 1px rgba(177,133,82,.06)}.subhead-set-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.subhead-set-head>div{display:flex;align-items:center;gap:8px}.subhead-set-head b{font-size:11px}.subhead-set-head span{font-size:9px;color:#999}.subhead-lines{display:grid;gap:3px}.subhead-line-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center;border-bottom:1px dashed #e4dfd8;padding:6px 0}.subhead-line-row:last-child{border-bottom:0}.subhead-line-edit{font-size:12px;line-height:1.6;outline:none;border-radius:5px;padding:2px 4px}.subhead-line-edit:focus{background:#fff8ed;box-shadow:0 0 0 1px #ead9c6 inset}.sub-len{text-align:center;font-size:9px;font-weight:800;border-radius:5px;padding:3px 4px}.sub-len.ok{background:#edf6ef;color:#3f684a}.sub-len.bad{background:#ffe3dd;color:#b13e31}
.nameplate-item{grid-template-columns:54px minmax(0,1fr) auto}.nameplate-item .copy-btn{white-space:nowrap}
.final-sub-validation{font-size:9px;margin-top:6px;padding:6px 8px;border-radius:6px;background:#f4f1ec;color:#777}.final-sub-validation.ok{background:#edf6ef;color:#3f684a}.final-sub-validation.bad{background:#fff0ed;color:#b13e31}.final-subs-field textarea.over-limit{border-color:#d85b4d!important;background:#fff7f5!important}
.final-diff-box{margin-top:14px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px}.final-diff-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px}.final-diff-head b{font-size:11px}.final-diff-head span{font-size:9px;color:#999}.final-diff-body{display:grid;grid-template-columns:1fr 1fr;gap:8px}.final-diff-body>div{background:#f7f4ef;border-radius:8px;padding:10px}.final-diff-body span{font-size:8px;font-weight:900;color:#8a837c;letter-spacing:.05em}.final-diff-body p{font-size:11px;line-height:1.65;margin:5px 0 0;white-space:pre-line}.final-diff-body del{background:#ffe0dc;color:#9e3e33;text-decoration:line-through;padding:1px 2px;border-radius:3px}.final-diff-body ins{background:#dff1e3;color:#326642;text-decoration:none;padding:1px 2px;border-radius:3px}
.article-applied-mark{position:relative;background:#e2f2e5;border-bottom:2px solid #4d8a5d;border-radius:2px;padding:1px 2px;cursor:pointer}.article-applied-mark sup{display:inline-grid;place-items:center;vertical-align:super;margin-left:2px;min-width:14px;height:14px;padding:0 3px;border-radius:99px;background:#4d8a5d;color:#fff;font-size:7px;font-weight:900}.article-proof-body.applied-preview{background:#fbfffc}
.proof-page-summary-panel{padding-bottom:16px}.proof-page-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.page-summary-item{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 10px;text-align:left;display:flex;justify-content:space-between;gap:8px;align-items:center}.page-summary-item span{font-size:9px;color:#6f6962;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-summary-item b{font-size:9px;white-space:nowrap}.page-summary-item.has-must{border-left:3px solid #cf3e31;background:#fff8f6}.page-summary-item.has-review{border-left:3px solid #d59a2b;background:#fffaf0}.page-summary-item.clean{border-left:3px solid #5d8b67;background:#f7fbf7}.pdf-preview-card:target,.pdf-preview-card.page-focus{outline:3px solid rgba(229,72,53,.25)}
.style-stats{grid-template-columns:repeat(2,1fr)}.style-stats div:nth-child(7) b{font-size:13px;line-height:1.4}
@media(max-width:900px){.proof-page-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.final-diff-body{grid-template-columns:1fr}.subhead-set-head{align-items:flex-start;flex-direction:column}.nameplate-item{grid-template-columns:54px minmax(0,1fr)}}
@media(max-width:600px){.proof-page-summary{grid-template-columns:1fr}.subhead-actions{width:100%;justify-content:space-between}.subhead-title{align-items:flex-start;flex-direction:column;gap:7px}.final-diff-head{align-items:flex-start;flex-direction:column}.style-stats{grid-template-columns:1fr 1fr}}
.final-meta{gap:8px;flex-wrap:wrap}.final-meta #finalTitleRows.ok{color:#3f684a;font-weight:800}.final-meta #finalTitleRows.warn{color:#b34a3c;font-weight:800}


/* V2.6.0 · 데스크톱 한 화면 작업 모드
   기사 제목 훈련 / 지면 그래픽 기획의 입력·옵션·주요 버튼을
   화면 안에서 한 번에 볼 수 있도록 세로 밀도를 조정한다. */
@media (min-width:1100px) and (min-height:700px){
  #headline.view,
  #graphic.view{
    padding-top:24px;
  }

  #headline .page-intro,
  #graphic .page-intro{
    margin-bottom:12px;
  }

  #headline .page-intro h2,
  #graphic .page-intro h2{
    font-size:31px;
    margin:5px 0 5px;
  }

  #headline .page-intro p,
  #graphic .page-intro p{
    line-height:1.45;
  }

  #headline .stepper{
    margin:0 0 10px;
  }

  #headline .editor-layout,
  #graphic .editor-layout{
    height:calc(100vh - 215px);
    min-height:570px;
    align-items:stretch;
  }

  #headline .input-panel,
  #headline .output-panel,
  #graphic .input-panel,
  #graphic .output-panel{
    height:100%;
    min-height:0;
    overflow:hidden;
    padding:18px 20px;
  }

  #headline .field,
  #graphic .field{
    margin-bottom:9px;
  }

  #headline .field label,
  #graphic .field label{
    margin-bottom:5px;
  }

  #headline .field input,
  #headline .field select,
  #headline .field textarea,
  #graphic .field input,
  #graphic .field select,
  #graphic .field textarea{
    padding:9px 11px;
  }

  #headline .field.grow,
  #graphic .field.grow{
    min-height:0;
  }

  #headline .article-text,
  #graphic .article-text{
    min-height:120px;
  }

  #headline .settings-grid,
  #graphic .settings-grid{
    gap:0 10px;
  }

  #headline .input-panel > .primary-btn.full,
  #graphic .input-panel > .primary-btn.full{
    flex:0 0 auto;
    min-height:46px;
    margin-top:2px;
  }

  /* 제목 훈련 오른쪽: 프롬프트와 결과창을 같은 화면에 유지 */
  #headline .free-banner{
    padding:8px 10px;
    margin-bottom:9px;
  }

  #headline .prompt-section{
    flex:0 0 39%;
    min-height:0;
    gap:7px;
  }

  #headline .prompt-section .prompt-textarea{
    flex:1;
    min-height:105px;
    resize:none;
  }

  #headline .import-section{
    margin-top:10px;
    padding-top:10px;
    min-height:0;
  }

  #headline .result-paste{
    flex:1;
    min-height:110px;
    resize:none;
  }

  #headline .action-row button,
  #headline .import-step-btn{
    min-height:44px;
  }

  /* 그래픽 기획 오른쪽: 큰 프롬프트창 + 버튼까지 한 화면 */
  #graphic .free-banner{
    padding:8px 10px;
    margin-bottom:9px;
  }

  #graphic .prompt-section.growbox{
    min-height:0;
  }

  #graphic .prompt-section.growbox .prompt-textarea{
    flex:1;
    min-height:180px;
    resize:none;
  }

  #graphic .action-row button{
    min-height:46px;
  }
}


/* V2.6.1 · PDF 글자 소실 완화 / 고해상도 미리보기 */
.pdf-preview-card{
  cursor:zoom-in;
  transition:box-shadow .18s ease,transform .18s ease;
}
.pdf-preview-card:hover{
  box-shadow:0 8px 24px rgba(0,0,0,.10);
}
.pdf-preview-card canvas{
  image-rendering:auto;
}
.pdf-preview-card figcaption{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
}
.pdf-preview-card figcaption b{
  font-size:8px;
  color:#9b958e;
  font-weight:700;
  flex:0 0 auto;
}
.pdf-preview-card.preview-expanded{
  grid-column:1/-1;
  cursor:zoom-out;
  background:#e8e3dc;
  padding:10px;
}
.pdf-preview-card.preview-expanded canvas{
  width:min(100%,1100px);
  margin:0 auto;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.preview-fallback{
  cursor:default;
  min-height:160px;
  display:grid;
  place-items:center;
}
.preview-fallback-msg{
  padding:18px;
  text-align:center;
}
.preview-fallback-msg b{
  display:block;
  font-size:11px;
  margin-bottom:6px;
}
.preview-fallback-msg span{
  display:block;
  font-size:9px;
  color:var(--muted);
  line-height:1.5;
}

/* V2.7.0 · 편집 스타일 학습 엔진 */
.learning-edit-summary{display:block;margin-top:6px;padding:6px 8px;border-radius:6px;background:#f4f1ec;color:#6f6961;font-size:9px;line-height:1.5}

/* V2.7.1 · 학습 저장 상태 피드백 */
.learning-save-status{
  margin-top:10px;
  padding:10px 12px;
  border-radius:8px;
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  gap:10px;
  font-size:10px;
  transition:.18s ease;
}
.learning-save-status b{font-size:10px;white-space:nowrap}
.learning-save-status span{color:var(--muted);line-height:1.45}
.learning-save-status.pending{background:#f7f4ef}
.learning-save-status.dirty{background:#fff7e7;border-color:#ead6a5}
.learning-save-status.dirty b{color:#8a6420}
.learning-save-status.success{background:#edf7ef;border-color:#bcd7c2}
.learning-save-status.success b{color:#347043}
.learning-save-status.error{background:#fff0ed;border-color:#efbdb4}
.learning-save-status.error b{color:#b23e30}
#saveFinalLearning.learn-success{background:#2f7a43}
#saveFinalLearning.learn-error{background:#b34335}
#saveFinalLearning:disabled{opacity:.65;cursor:wait}

/* V2.7.3 · 홈 카피 핵심어 확실한 볼드 처리 */
.hero h2{
  font-family:"Noto Serif KR","Nanum Myeongjo","Batang","AppleMyungjo","Times New Roman",serif;
}
.hero h2 .hero-key{
  font-family:inherit;
  font-weight:800 !important;
  font-synthesis:weight;
  letter-spacing:-.045em;
  -webkit-text-stroke:.10px currentColor;
}

/* V2.8.0 · 수정표시 PDF */
.pdf-export-bar{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0 12px;
}
.pdf-export-hint,#pdfExportHint{
  font-size:9px;
  color:var(--muted);
}
.pdf-export-note{
  display:block;
  width:100%;
  font-size:8px;
  color:var(--muted);
}
#exportMarkedPdf:disabled{
  opacity:.5;
  cursor:not-allowed;
}

/* V2.8.1 · PDF 드래그앤드롭 */
.pdf-drop-zone{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:112px;
  padding:16px;
  border:1.5px dashed #c9c2b9;
  border-radius:12px;
  background:#faf8f5;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.pdf-drop-zone:hover{
  border-color:#8d867d;
  background:#f7f3ee;
}
.pdf-drop-zone.drag-over{
  border-color:#b34b3f;
  background:#fff1ed;
  box-shadow:0 0 0 3px rgba(179,75,63,.08);
  transform:translateY(-1px);
}
.pdf-drop-zone input[type="file"]{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
}
.pdf-drop-copy{
  pointer-events:none;
  text-align:center;
}
.pdf-drop-copy b{
  display:block;
  margin-bottom:5px;
  font-size:12px;
}
.pdf-drop-copy span{
  display:block;
  font-size:9px;
  color:var(--muted);
  line-height:1.45;
}

/* V2.9.0 · PDF PROOF ENGINE 2.0 */
.proof-engine-status{margin-top:14px;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#f7f4ef;display:flex;align-items:flex-start;gap:10px}
.proof-engine-status b{flex:0 0 auto;font-size:10px}
.proof-engine-status span{color:var(--muted);font-size:9px;line-height:1.55}
.proof-engine-status.scanning{background:#fff8e8;border-color:#e7d4a5}
.proof-engine-status.done{background:#edf7ef;border-color:#bdd8c3}
.proof-engine-status.done b{color:#347043}
.proof-engine-status.error{background:#fff0ed;border-color:#efbdb4}
.proof-engine-status.error b{color:#b23e30}
.proof-correction{display:flex;align-items:baseline;gap:8px;margin-top:7px;padding:7px 9px;border-radius:6px;border-left:3px solid #c64a3d;background:#faf3f0}
.proof-correction span{flex:0 0 auto;color:#8f8981;font-size:8px}
.proof-correction b{font-size:10px;color:#9f392f}
.proof-jump{margin-top:7px;font-size:9px}
.page-summary-item{display:grid;grid-template-columns:minmax(0,1fr) auto}
.page-summary-item small{grid-column:1/-1;margin-top:3px;color:#a19a92;font-size:8px}

/* V2.9.1 · PDF 선택창 재디자인 */
.pdf-picker{
  position:relative;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  min-height:86px;
  padding:15px 16px;
  margin-bottom:12px;
  border:1.5px dashed #cfc7bd;
  border-radius:12px;
  background:#fbf9f6;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.pdf-picker:hover{border-color:#9f978e;background:#f7f3ee}
.pdf-picker.drag-over{border-color:#d44b3a;background:#fff1ed;box-shadow:0 0 0 3px rgba(212,75,58,.08);transform:translateY(-1px)}
.pdf-picker input[type="file"]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.pdf-picker-icon{
  width:44px;height:44px;display:grid;place-items:center;border-radius:10px;
  background:#e44a38;color:#fff;font-size:11px;font-weight:900;letter-spacing:.03em;pointer-events:none;
}
.pdf-picker-copy{min-width:0;pointer-events:none}
.pdf-picker-copy strong{display:block;margin:0 0 5px;font-size:12px;line-height:1.35;color:#1d1b1a}
.pdf-picker-copy small{display:block;color:#918a83;font-size:9px;line-height:1.5}
.pdf-picker-action{
  pointer-events:none;padding:8px 11px;border:1px solid #ddd5cb;border-radius:8px;
  background:#fff;color:#49443f;font-size:10px;font-weight:750;white-space:nowrap;
}
.pdf-meta{
  padding:11px 12px;background:#f6f3ee;border:1px solid #e3ddd5;border-radius:9px;
  font-size:10px;margin-bottom:12px;
}
.pdf-meta-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}
.pdf-meta-head b{font-size:10px}
.pdf-meta-head span{font-size:9px;color:#8f8880;margin:0}
.pdf-meta-files{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:7px}
.pdf-meta-files span{
  display:block;max-width:100%;padding:4px 7px;border-radius:6px;background:#fff;border:1px solid #e1dbd3;
  color:#514c47;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;
}
.pdf-meta small{display:block;color:#9a938b;font-size:8px}

@media(max-width:700px){
  .pdf-picker{grid-template-columns:42px 1fr}
  .pdf-picker-action{grid-column:1/-1;text-align:center}
}

/* V2.9.2 · ChatGPT 정밀검수 사용 안내 */
.proof-ai-note{
  margin-top:8px;
  padding:8px 10px;
  border-radius:7px;
  background:#f6f3ee;
  color:#817a73;
  font-size:9px;
  line-height:1.5;
}

/* V2.9.3 · ChatGPT 정밀검수 2단계 */
.proof-ai-step{
  margin-top:12px;
}
.proof-ai-step-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}
.proof-ai-step-head>span{
  flex:0 0 auto;
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#191817;
  color:#fff;
  font-size:10px;
  font-weight:800;
}
.proof-ai-step:nth-of-type(3) .proof-ai-step-head>span{
  background:#c44738;
}
.proof-ai-step-head b{
  display:block;
  font-size:11px;
}
.proof-ai-step-head small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:8px;
}
.proof-ai-divider{
  height:1px;
  margin:16px 0 4px;
  background:var(--line);
}
.proof-pdf-prompt{
  min-height:230px;
}
.proof-ai-note{
  margin-top:13px;
  padding:9px 11px;
  border-radius:8px;
  background:#f5f2ed;
  color:#776f68;
  font-size:9px;
  line-height:1.55;
}

/* V2.9.4 · 정밀검수 단일 단계 */
.proof-ai-panel .proof-prompt{
  min-height:320px;
}

/* V2.9.5 · 검수 결과 5분류 */
.proof-category-grid{
  align-items:start;
}
.proof-review-full{
  margin-top:14px;
}
.proof-dot.number{background:#8a5c19}
.proof-dot.body{background:#406a55}
.proof-dot.symbol{background:#66538d}
.proof-issue-status{
  display:inline-flex;
  align-items:center;
  margin-left:5px;
  padding:2px 5px;
  border-radius:999px;
  font-style:normal;
  font-size:7px;
  line-height:1;
  vertical-align:1px;
}
.proof-issue-status.must{
  color:#9f3429;
  background:#fae9e6;
}
.proof-issue-status.review{
  color:#9a631c;
  background:#fff1d8;
}

/* V2.10.1 · 오류 위치 표시 */
.proof-location{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin:6px 0 2px;
  padding:4px 7px;
  border-radius:6px;
  background:#fff0ed;
  color:#a9362d;
  font-size:8px;
  font-weight:800;
}
.proof-location.line{
  background:#fff5df;
  color:#a36b20;
}
.proof-location.memo{
  background:#f3f0ec;
  color:#777069;
}

/* V2.10.4 · 이미지형 PDF 모드 */
.image-pdf-notice{
  margin-top:12px;padding:11px 12px;border-radius:9px;border:1px solid #d8cec4;
  background:#f8f5f1;display:flex;gap:10px;align-items:flex-start;
}
.image-pdf-notice.hidden{display:none}
.image-pdf-notice b{flex:0 0 auto;font-size:10px}
.image-pdf-notice span{font-size:9px;color:#746d66;line-height:1.55}
.image-pdf-notice.image-only{border-color:#d5b67d;background:#fff7e8}
.image-pdf-notice.image-only b{color:#9b651d}
.image-pdf-notice.mixed{border-color:#b8c9dc;background:#f0f6fb}
.image-pdf-notice.mixed b{color:#426985}
.proof-image-mode{
  padding:11px 12px;border:1px dashed #d7c9b8;border-radius:8px;background:#fffaf2;
  color:#7e6751;font-size:9px;line-height:1.55;
}
.proof-engine-status.image-mode{background:#fff7e8;border-color:#d5b67d}
.proof-engine-status.image-mode b{color:#9b651d}
.proof-badge.image{background:#fff0d2;color:#915d16;border-color:#e1c38b}
.page-summary-item.image-page{border-color:#dcc89d;background:#fff9ec}
.page-summary-item.image-page b{color:#9b651d}

/* V2.13.0 · 조판/레이아웃 검수 */
.proof-dot.layout{background:#a63c57}

/* V2.14.0 accuracy recovery */
.beta-tag{
  display:inline-block;
  margin-left:5px;
  padding:1px 5px;
  border-radius:999px;
  font-size:7px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.03em;
  color:#7a5a3a;
  background:#f3eadf;
  vertical-align:middle;
}
.layout-beta-toggle{
  display:flex;
  align-items:center;
  gap:5px;
  font-size:9px;
  color:#716960;
  cursor:pointer;
  user-select:none;
}
.layout-beta-toggle input{
  width:14px;
  height:14px;
  accent-color:#8b4b55;
}

/* V3.0.0 · actual JS runtime verification */
.runtime-build{
  margin:2px 0 0;
  font-size:7px;
  font-weight:800;
  letter-spacing:.04em;
  color:#a79d94;
}
.runtime-build-ready{color:#6da27d}
.runtime-build-error{color:#d14d43}

/* V3 clean rebuild */
.runtime-build-ready{color:#73a985!important}
.runtime-build-error{color:#d14d43!important}

/* V3.0.1 · 텍스트 PDF 전용 */
.image-pdf-notice.image-only{
  border-color:#d8a27f;
  background:#fff4ec;
}
.image-pdf-notice.image-only b{color:#a24d2f}
.proof-engine-status.image-mode{
  background:#fff4ec;
  border-color:#d8a27f;
}
.proof-engine-status.image-mode b{color:#a24d2f}
.proof-badge.image{
  background:#fff0e7;
  color:#a24d2f;
  border-color:#e0ad8b;
}
.proof-page-chip.image-page{
  border-color:#dfb496;
  background:#fff6ef;
}

/* V3.1.3 stable */
.stable-engine-badge{
  display:inline-block;
  margin-top:3px;
  padding:2px 6px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  font-size:7px;
  font-weight:800;
  letter-spacing:.08em;
  color:#b8d9c2;
}
