:root{--navy:#172b3c;--navy-soft:#263d50;--ink:#203442;--muted:#6a787f;--line:#dfe4e4;--paper:#fff;--bg:#f5f6f3;--sage:#557366;--light:#eef3ef;--red:#a44338;--serif:Georgia,'Noto Serif KR','Batang',serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit}button{border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink);padding:9px 14px;font-weight:600;line-height:1.4}button:hover:not(:disabled){border-color:#9caeb3;background:#f4f7f6}button.primary{background:var(--navy);color:white;border-color:var(--navy)}button.primary:hover:not(:disabled){background:#29485e}button.quiet{border-color:transparent;background:transparent}button.danger{color:var(--red)}button.small{font-size:12px;padding:7px 10px}button.wide{width:100%;padding:14px}input,select,textarea{width:100%;background:white;border:1px solid #cfd8da;color:var(--ink);border-radius:5px;padding:11px 12px;min-width:0}textarea{resize:vertical;line-height:1.85;min-height:130px}input::placeholder,textarea::placeholder{color:#889498}input:disabled,textarea:disabled,select:disabled{background:#f4f6f5;color:#66787d}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #9bbbad;outline-offset:3px}label{font-size:13px;font-weight:650;display:block;margin-bottom:7px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.4}h1{font-size:29px;font-weight:700}h2{font-size:23px}h3{font-size:16px}p{margin-bottom:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;text-transform:uppercase;color:var(--sage)}[hidden]{display:none!important}.skip-link{position:fixed;left:16px;top:-100px;padding:10px;background:white;z-index:100}.skip-link:focus{top:12px}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;letter-spacing:.08em;font-weight:750;font-size:17px}.brand-mark{width:30px;height:32px;display:grid;place-items:center;border:1px solid currentColor;font:22px var(--serif);letter-spacing:-3px;padding-right:3px}.rail{position:fixed;inset:0 auto 0 0;width:224px;background:var(--navy);color:#f5f7f5;display:flex;flex-direction:column;padding:30px 20px;z-index:10}.rail .brand{margin:0 10px 38px}.rail-label{font-size:10px;color:#b5c3ca;letter-spacing:1.7px;margin:0 12px 13px}.module-link{display:block;border-top:1px solid #405363;padding:16px 12px;margin-bottom:28px;color:#d5e2df;font-size:12px;text-decoration:none}.module-link span{float:right}.outline{display:flex;flex-direction:column;gap:5px}.outline button{background:none;border:0;color:#bdcbd2;font-size:13px;font-weight:400;text-align:left;display:flex;gap:15px;padding:12px 14px;align-items:center}.outline button .num{font:11px var(--serif);color:#93aaad}.outline button:hover:not(:disabled){background:#263d50;color:white}.outline button.active,.outline button.active:hover:not(:disabled){background:#e8efea;color:var(--navy);font-weight:700}.outline button.active .num{color:var(--sage)}.rail-bottom{margin-top:auto;border-top:1px solid #405363;padding:20px 10px 0;font-size:11px;color:#bccbd0}.rail-bottom p{margin:0 0 14px}.rail-bottom a{text-decoration:none}.workspace{margin-left:224px}.topbar{min-height:76px;padding:18px 36px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb strong{color:var(--ink);font-weight:600}.top-actions{display:flex;gap:8px;align-items:center}.save-state{font-size:12px;color:var(--sage);margin-right:8px;max-width:300px}.save-state.error{color:var(--red);font-weight:600}.work-body{max-width:1600px;margin:auto;padding:32px 36px 44px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.page-heading h1{margin:7px 0 7px}.page-heading p{font-size:13px;color:var(--muted);margin:0}.usage{min-width:150px;border-left:1px solid var(--line);padding-left:22px;align-self:center}.usage span{font-size:11px;display:block;color:var(--muted)}.usage strong{font-size:22px;font-weight:600;letter-spacing:-1px}.usage small{font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}.project-meta{background:#fff;border:1px solid var(--line);padding:20px 24px;margin-bottom:24px;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:18px;border-radius:7px}.project-meta input{font-weight:600}.tabs{display:flex;align-items:center;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--line)}.tabs button{border:none;border-radius:0;background:transparent;padding:12px 14px;color:var(--muted)}.tabs button.active{color:var(--navy);border-bottom:2px solid var(--navy)}.tabs .spacer{flex:1}.editor-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;align-items:start}.editor-grid.edit-only{grid-template-columns:minmax(0,800px)}.editor-grid.preview-only{grid-template-columns:minmax(0,920px);justify-content:center}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.section-head h2{margin:0;font-size:20px}.section-head span{font:12px var(--serif);color:#768b8e}.field-card{background:white;border:1px solid var(--line);padding:22px;border-radius:7px;margin-bottom:16px}.field-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.field-head label{font-size:15px;margin:0}.field-card p{font-size:12px;color:var(--muted);margin:0 0 14px}.field-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:10px}.char-count{font-size:11px;color:var(--muted)}.ai-action{color:var(--sage);border-color:#cedbd1;font-size:12px;background:#f6f9f6}.row{display:flex;gap:12px;align-items:end}.row>*{flex:1}.row button{flex:none}.field-gap{margin-bottom:18px}.hint{font-size:12px;color:var(--muted);padding:14px 0}.notice{padding:13px 16px;border:1px solid #cbd9d1;background:#edf3ef;border-radius:5px;font-size:12px;margin-bottom:18px}.notice.warn{background:#faf3e8;border-color:#e9d8b6;color:#745936}.suggestions{display:grid;gap:8px;margin-top:16px}.suggestions button{text-align:left;font-weight:400;font-size:13px;line-height:1.65;padding:12px 14px}.preview-label{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px;letter-spacing:.5px;margin-bottom:16px;height:28px}.paper-wrap{background:#edf0ed;padding:20px;border-radius:6px;border:1px solid var(--line);max-height:calc(100vh - 270px);min-height:570px;overflow:auto}.paper{background:white;padding:38px 34px;min-height:740px;box-shadow:0 3px 8px #2034420a;color:#2a363b;font-size:12px;line-height:1.95;overflow-wrap:anywhere}.paper .paper-kicker{font:10px var(--serif);letter-spacing:2px;color:#7a8d89;text-align:center;margin:12px 0 26px}.paper h1{font-size:22px;text-align:center;line-height:1.6;margin:0 0 28px;white-space:pre-wrap}.paper .paper-rule{border:0;border-top:1px solid #b4c2bf;margin-bottom:28px}.paper h2{font-size:15px;margin-top:30px;margin-bottom:9px}.paper p{white-space:pre-wrap}.paper .empty{color:#879397;font-size:12px}.paper .paper-foot{font:9px var(--serif);letter-spacing:2px;color:#8b9899;text-align:center;margin-top:45px;border-top:1px solid #e2e7e4;padding-top:15px}.section-navigation{display:flex;justify-content:space-between;margin-top:20px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(640px,calc(100% - 32px));background:#203b4b;color:#fff;border-radius:7px;padding:14px 22px;box-shadow:0 8px 32px #14243026;font-size:13px;z-index:1000;display:flex;gap:20px;align-items:center}.toast.error{background:#783f37}.toast button{border:none;background:transparent;color:white;padding:0 4px}.auth-overlay{position:fixed;inset:0;z-index:50;background:var(--bg);overflow:auto}.auth-header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 6vw;background:#fff}.auth-nav{display:flex;gap:28px;font-size:12px;color:var(--muted)}.auth-nav a{text-decoration:none}.auth-nav .current{color:var(--navy);font-weight:700}.auth-grid{min-height:calc(100vh - 84px);display:grid;grid-template-columns:1.05fr 1fr}.auth-story{background:var(--navy);color:#f3f6f4;padding:9vh 7vw;display:flex;flex-direction:column}.auth-story .eyebrow{color:#b3cabb}.auth-story h1{font-size:clamp(30px,3.2vw,46px);font-weight:500;line-height:1.5;margin:24px 0;letter-spacing:-.055em}.auth-story p{font-size:14px;line-height:1.9;color:#b7c9d0;max-width:380px}.story-foot{margin-top:auto;padding-top:38px;display:flex;gap:26px;border-top:1px solid #4b5e6b}.story-foot div{font-size:12px;color:#becdd2}.story-foot strong{display:block;font:21px var(--serif);margin-bottom:8px;color:#e5eee8}.story-graphic{height:170px;display:flex;gap:18px;align-items:flex-end;max-width:330px;margin:25px 0 44px;border-bottom:1px solid #71817e;padding:0 12px}.story-graphic i{display:block;width:44px;border:1px solid #768f89;background:#d2dfd80a;height:42%}.story-graphic i:nth-child(2){height:67%}.story-graphic i:nth-child(3){height:55%}.story-graphic i:nth-child(4){height:84%;background:#d2dfd81c}.story-graphic i:nth-child(5){height:95%;background:#d2dfd837}.auth-form-wrap{display:flex;justify-content:center;align-items:center;padding:50px 7vw}.auth-form{max-width:390px;width:100%}.auth-form h2{font-size:27px;margin:9px 0 12px}.auth-form>p{font-size:13px;color:var(--muted);margin-bottom:32px;line-height:1.8}.auth-form input{margin-bottom:18px;padding:14px;font-size:16px}.auth-form .fine{font-size:11px;margin-top:20px;line-height:1.8;color:#77858a}.auth-form .error-text{color:var(--red);font-size:13px;margin:14px 0;white-space:pre-wrap}.auth-form .auth-bottom{margin-top:34px;border-top:1px solid var(--line);padding-top:20px;font-size:12px;display:flex;justify-content:space-between;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:9px;max-width:720px;width:calc(100% - 32px);padding:0;color:var(--ink);box-shadow:0 20px 80px #172b3c33}dialog::backdrop{background:#132b3c80}dialog .dialog-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:18px 24px}dialog h2{margin:0;font-size:20px}.dialog-content{padding:24px;max-height:60vh;overflow:auto}.dialog-content pre{font-family:inherit;font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.dialog-actions{display:flex;justify-content:flex-end;padding:16px 24px;gap:10px;border-top:1px solid var(--line)}.history-item{display:block;width:100%;text-align:left;margin-bottom:10px}.history-item span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.plain-page{max-width:1120px;margin:auto;padding:46px 28px}.admin-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px}.admin-card{border:1px solid var(--line);background:white;border-radius:7px;padding:24px}.admin-card h2{font-size:19px}.stats{display:flex;gap:36px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:22px}.stats strong{font-size:28px;display:block}.stats span{font-size:12px;color:var(--muted)}.issue-item{border-top:1px solid var(--line);padding:16px 0;overflow-wrap:anywhere}.issue-item:first-of-type{border-top:0}.issue-item summary{cursor:pointer;font-weight:600}.issue-item p{font-size:12px;margin-top:8px}.code-list{white-space:pre-wrap;word-break:break-all;background:#f1f4f2;padding:12px;font:12px/1.8 monospace;border-radius:4px;max-height:220px;overflow:auto}.mobile-brand{display:none}.locked-label{color:var(--red);font-size:12px}.skeleton{min-height:100vh;display:grid;place-items:center;color:var(--muted)}
@media(min-width:1450px){.paper{padding:46px 48px}.work-body{padding-top:36px}.field-card{padding:25px}.editor-grid{gap:32px}}
@media(max-width:1180px){.rail{width:194px;padding:28px 14px}.workspace{margin-left:194px}.topbar{padding:16px 24px}.work-body{padding:28px 24px}.top-actions{gap:5px}.top-actions button{font-size:12px;padding:8px}.save-state{max-width:180px}.editor-grid{gap:18px}.paper-wrap{padding:12px}.paper{padding:28px 22px}.field-card{padding:18px}.page-heading h1{font-size:26px}}
@media(max-width:950px){.rail{width:175px;padding:25px 10px}.rail .brand{font-size:14px;gap:8px}.workspace{margin-left:175px}.editor-grid{grid-template-columns:1fr}.preview-panel{display:none}.editor-grid.preview-only .preview-panel{display:block}.editor-grid.preview-only .editor-panel{display:none}.view-split{display:none}.paper-wrap{max-height:none;min-height:0}.paper{padding:40px;min-height:860px}.topbar{flex-wrap:wrap;gap:10px}.top-actions{width:100%;justify-content:flex-end}.save-state{margin-right:auto}.auth-form-wrap{padding:44px}.auth-story{padding:70px 42px}.auth-story h1{font-size:35px}.admin-grid{grid-template-columns:300px 1fr}.project-meta{grid-template-columns:1fr 190px}}
@media(max-width:700px){body{font-size:14px}.rail{position:static;width:100%;padding:15px 16px 0}.rail .brand{font-size:16px;margin:0 0 16px}.rail-label,.rail-bottom,.module-link{display:none}.outline{flex-direction:row;overflow-x:auto;gap:6px;padding-bottom:12px}.outline button{white-space:nowrap;font-size:12px;padding:9px 13px;gap:7px}.outline button .num{font-size:10px}.workspace{margin:0}.topbar{padding:13px 18px;gap:8px}.breadcrumb{font-size:11px}.top-actions{flex-wrap:wrap;justify-content:flex-start;gap:7px}.top-actions .save-state{flex-basis:100%;max-width:none;font-size:11px;margin-bottom:3px}.top-actions button{font-size:11px;padding:8px 10px}.work-body{padding:24px 18px}.page-heading{gap:16px;margin-bottom:20px}.page-heading h1{font-size:24px;margin-top:5px}.page-heading p{font-size:12px;line-height:1.7}.usage{min-width:101px;padding-left:14px}.usage strong{font-size:19px}.usage span{font-size:10px}.project-meta{grid-template-columns:1fr;padding:17px;gap:13px;margin-bottom:16px}.tabs{margin-bottom:22px;gap:0}.tabs button{padding:10px;font-size:12px}.field-card{padding:18px}.field-head label{font-size:14px}textarea{min-height:155px;font-size:16px}input,select{font-size:16px}.field-footer{align-items:center}.row{flex-wrap:wrap}.row>*{flex-basis:100%}.row button{width:100%}.paper{padding:26px 20px;min-height:680px}.paper h1{font-size:20px}.paper-wrap{padding:10px}.auth-header{height:auto;min-height:76px;padding:17px 22px;gap:22px;align-items:flex-start}.auth-header .brand{font-size:15px;white-space:nowrap}.auth-nav{gap:12px;font-size:11px;flex-wrap:wrap;justify-content:flex-end;padding-top:7px}.auth-grid{display:block;min-height:0}.auth-story{padding:28px 26px}.auth-story h1{font-size:26px;margin:12px 0 8px}.auth-story h1 br{display:none}.auth-story p{font-size:12px;margin:0;max-width:none}.story-graphic,.story-foot{display:none}.auth-form-wrap{padding:32px 26px}.auth-form h2{font-size:24px}.auth-form>p{margin-bottom:24px}.auth-form .auth-bottom{margin-top:22px}.plain-page{padding:28px 18px}.admin-grid{grid-template-columns:1fr}.stats{gap:24px}.admin-card{padding:20px}.dialog-content{padding:18px}.dialog-actions{padding:14px 18px;flex-wrap:wrap}.toast{bottom:14px}.page-heading .top-actions{width:auto}}
@media print{body{background:white}.rail,.topbar,.page-heading,.project-meta,.tabs,.editor-panel,.preview-label,.toast,.auth-overlay,dialog,.notice{display:none!important}.workspace{margin:0}.work-body{padding:0}.editor-grid,.preview-panel{display:block!important}.paper-wrap{padding:0;border:0;max-height:none;overflow:visible;background:none}.paper{box-shadow:none;padding:0;min-height:0}.paper h2{break-after:avoid}.paper p{orphans:3;widows:3}@page{size:A4;margin:20mm}}

/* Writing depth controls and plain-text verification annotations. */
.writing-options{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;padding:20px 22px;margin:-8px 0 24px;border:1px solid var(--line);border-radius:7px;background:#fff}.writing-options textarea{min-height:84px;line-height:1.7}.writing-options .hint{font-size:11px;margin:8px 0 0;line-height:1.7}.writing-options label .muted{font-size:11px;font-weight:400;margin-left:6px}.field-footer{flex-wrap:wrap;gap:8px}.field-footer .char-count{margin-right:auto}.report-text,.suggestion-text{white-space:pre-wrap;overflow-wrap:anywhere}.suggestion-text{font-size:14px;line-height:1.95;margin:0}.verification-note{color:#b42318}.verification-heading{font-weight:700}.paper .verification-note{color:#b42318;print-color-adjust:exact;-webkit-print-color-adjust:exact}
@media(max-width:700px){.writing-options{grid-template-columns:1fr;gap:16px;padding:17px;margin:0 0 18px}.writing-options textarea{font-size:16px;min-height:100px}.field-footer .char-count{flex-basis:100%}}
@media print{.writing-options{display:none!important}.verification-note{color:#b42318!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
/* Research sources and anonymous competition summary */
.research-search{display:grid;grid-template-columns:1fr;gap:.6rem;margin-bottom:1rem}.research-search button{justify-self:start}.source-card{border:1px solid var(--line,#d8dfe4);border-radius:10px;padding:1rem;margin-top:1rem}.source-card h3{font-size:1rem;line-height:1.5;margin:0 0 .5rem;overflow-wrap:anywhere}.source-card button{margin:.6rem .5rem 0 0}.source-card details{margin-top:.8rem}.source-abstract{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.research-link{color:#235962;text-decoration:underline;text-underline-offset:3px;display:inline-block;overflow-wrap:anywhere;padding:.4rem 0;margin-right:1rem}.summary-photo{border:1px dashed #77858c;padding:2rem .8rem;margin:1rem 0;text-align:center;color:#4b5961}.dialog-content textarea{width:100%;resize:vertical}.tabs{flex-wrap:wrap}
