:root{--font-edit-red: #e52532;--font-edit-green: #087a55;--font-edit-amber: #b66a00;--font-edit-surface: #f5f5f7;--font-edit-line: #d9d9df;--font-edit-text: #202026}body:has(.font-editor-workspace){overflow:hidden}.font-editor-landing{min-height:calc(100vh - var(--header-height));color:var(--font-edit-text);background:linear-gradient(180deg,#fff 0,#f6f6f8 72%,#efeff2);padding:48px clamp(20px,5vw,80px) 72px}.font-editor-hero{width:min(940px,100%);margin:0 auto;text-align:center}.font-editor-hero h1{margin:18px 0 16px;color:#18181d;font-size:clamp(40px,6vw,74px);line-height:.98;letter-spacing:-.065em}.font-editor-hero>p{max-width:720px;margin:0 auto;color:#65656d;font-size:clamp(15px,1.6vw,20px);line-height:1.65}.font-editor-dropzone{margin-top:34px;min-height:300px;border:2px dashed #c6c6cd;border-radius:22px;background:#fff;box-shadow:0 20px 60px #16161e14;display:grid;place-content:center;justify-items:center;gap:13px;padding:40px;transition:border-color .18s,background .18s,transform .18s}.font-editor-dropzone.is-dragging{border-color:var(--font-edit-red);background:#fff7f7;transform:translateY(-2px)}.font-editor-dropzone strong{font-size:24px}.font-editor-dropzone p{margin:0 0 8px;color:#73737c}.font-editor-notice{margin:18px auto 0;max-width:720px;color:#8c1c27;border:1px solid #f0c2c7;border-radius:10px;background:#fff5f6;padding:13px 16px;text-align:left}.font-editor-benefits{width:min(1180px,100%);margin:30px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.font-editor-benefits article{min-height:150px;border:1px solid #dedee3;border-radius:14px;background:#ffffffc7;padding:24px}.font-editor-benefits strong{display:block;margin-bottom:9px;font-size:15px}.font-editor-benefits p{margin:0;color:#707078;font-size:13px;line-height:1.65}.font-editor-workspace{height:calc(100vh - var(--header-height));min-height:600px;display:grid;grid-template-columns:190px minmax(0,1fr);color:var(--font-edit-text);background:#dadce0}.font-editor-pages{min-width:0;border-right:1px solid #d2d2d7;background:#f7f7f8;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr)}.font-editor-pages>header,.font-editor-inspector>header{min-height:56px;border-bottom:1px solid var(--font-edit-line);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px}.font-editor-pages>header span,.font-editor-inspector>header span{color:#777780;font-size:11px}.font-editor-page-list{overflow:auto;padding:10px;display:grid;align-content:start;gap:7px}.font-editor-page-list button{width:100%;min-height:58px;border:1px solid transparent;border-radius:9px;color:#4e4e56;background:transparent;cursor:pointer;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:7px;padding:8px;text-align:left}.font-editor-page-list button:hover{background:#ededf0}.font-editor-page-list button.active{color:#c81f2c;border-color:#eab9be;background:#fff;box-shadow:0 4px 14px #19191e12}.font-editor-page-list button strong{height:34px;border-radius:6px;background:#e8e8eb;display:grid;place-items:center}.font-editor-page-list button.active strong{background:#ffe7e9}.font-editor-page-list button span{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.font-editor-main{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.font-editor-toolbar{z-index:20;min-height:66px;border-bottom:1px solid #d1d1d6;background:#fff;display:grid;grid-template-columns:minmax(200px,1fr) auto minmax(470px,1.35fr);align-items:center;gap:12px;padding:8px 12px;box-shadow:0 1px 8px #1212180d}.font-editor-file{min-width:0;display:flex;align-items:center;gap:9px}.font-editor-file>span{width:36px;height:36px;color:var(--font-edit-red);border-radius:7px;background:#ffe9eb;flex:0 0 36px;display:grid;place-items:center;font-size:10px;font-weight:900}.font-editor-file div{min-width:0;display:grid}.font-editor-file strong,.font-editor-file small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-editor-file strong{font-size:12px}.font-editor-file small{color:#777780;font-size:10px}.font-editor-page-controls,.font-editor-actions{display:flex;align-items:center;gap:5px}.font-editor-page-controls button,.font-editor-actions>button:not(.button){min-height:36px;color:#505058;border:1px solid #d5d5da;border-radius:7px;background:#fff;cursor:pointer;padding:0 10px;font-size:10px;font-weight:760}.font-editor-page-controls button:disabled,.font-editor-actions button:disabled{cursor:default;opacity:.4}.font-editor-page-controls label{height:36px;border:1px solid #d5d5da;border-radius:7px;display:flex;align-items:center;padding:0 7px}.font-editor-page-controls input{width:42px;border:0;outline:0;text-align:right;font-weight:800}.font-editor-page-controls label span,.font-editor-actions>span{color:#777780;font-size:10px}.font-editor-actions{min-width:0;justify-content:flex-end;overflow-x:auto;scrollbar-width:none}.font-editor-actions::-webkit-scrollbar{display:none}.font-editor-actions .button{min-height:38px;flex:none;white-space:nowrap}.font-editor-content{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 340px}.font-editor-stage{min-width:0;overflow:auto;background:#d9dbe0;padding:28px 30px 60px;display:grid;justify-items:center;align-items:start}.font-editor-page{position:relative;flex:none;background:#fff;box-shadow:0 14px 36px #15151b2e}.font-editor-page canvas{position:absolute;inset:0;display:block}.font-editor-text-layer{position:absolute;inset:0;overflow:hidden}.font-editor-text{position:absolute;z-index:2;overflow:visible;border:0;outline:0;color:transparent;background:transparent;transform-origin:left top;padding:0;text-align:left;line-height:1;white-space:pre}.font-editor-text:disabled{pointer-events:none}.font-editor-text.is-editable{cursor:text}.font-editor-text.is-editable:hover,.font-editor-text.is-selected{outline:2px solid rgb(229 37 50 / 70%);outline-offset:2px;background:#ffeaec47}.font-editor-text.is-modified{z-index:3;color:#151519;background:#fff;outline:2px solid rgb(8 122 85 / 75%)}.font-editor-text>span{display:block;min-width:max-content}.font-editor-inspector{min-width:0;border-left:1px solid #d1d1d6;background:#fff;overflow:auto}.font-editor-empty{min-height:260px;color:#707078;display:grid;place-content:center;gap:8px;padding:28px;text-align:center}.font-editor-empty strong{color:#3d3d44}.font-editor-empty p{margin:0;font-size:12px;line-height:1.6}.font-editor-form{display:grid;gap:14px;padding:16px}.font-editor-compatibility{border:1px solid;border-radius:10px;display:grid;gap:3px;padding:12px 13px}.font-editor-compatibility.is-exact{color:#075f43;border-color:#a8d9ca;background:#effaf6}.font-editor-compatibility.is-blocked{color:#8c1c27;border-color:#efc4c8;background:#fff5f6}.font-editor-compatibility strong{font-size:13px}.font-editor-compatibility span{font-size:10px;opacity:.8}.font-editor-form dl{margin:0;border:1px solid #e0e0e4;border-radius:9px;overflow:hidden}.font-editor-form dl div{display:grid;grid-template-columns:74px minmax(0,1fr);padding:8px 10px;font-size:10px}.font-editor-form dl div+div{border-top:1px solid #e8e8eb}.font-editor-form dt{color:#777780}.font-editor-form dd{margin:0;overflow:hidden;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.font-editor-font-source{border:1px solid #dcdce1;border-radius:10px;display:grid;gap:10px;padding:11px;background:#fafafa}.font-editor-font-source-heading,.font-editor-selected-font,.font-editor-font-results article{display:flex;align-items:center;justify-content:space-between;gap:8px}.font-editor-font-source-heading>div,.font-editor-selected-font>div,.font-editor-font-results article>div:first-child{min-width:0;display:grid;gap:2px}.font-editor-font-source-heading strong,.font-editor-selected-font strong,.font-editor-font-results strong{overflow:hidden;color:#242428;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.font-editor-font-source-heading span,.font-editor-selected-font span,.font-editor-font-results span{overflow:hidden;color:#777780;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.font-editor-font-source button{flex:0 0 auto;border:1px solid #d3d3d8;border-radius:7px;background:#fff;padding:6px 8px;color:#4d4d55;cursor:pointer;font-size:9px;font-weight:760}.font-editor-font-source button:hover,.font-editor-font-source button.active{color:#fff;border-color:#202025;background:#202025}.font-editor-font-source button:disabled{cursor:wait;opacity:.55}.font-editor-selected-font{border:1px solid #a8d9ca;border-radius:8px;background:#effaf6;padding:8px}.font-editor-font-match,.font-editor-catalog-error{margin:0;color:#075f43;font-size:9px;line-height:1.45}.font-editor-catalog-error{color:#8c1c27}.font-editor-font-search input{width:100%;border:1px solid #d5d5da;border-radius:7px;outline:0;padding:8px 9px;background:#fff;font-size:11px}.font-editor-font-search input:focus{border-color:var(--font-edit-red);box-shadow:0 0 0 3px #e525321a}.font-editor-font-results{max-height:230px;overflow:auto;border:1px solid #e1e1e5;border-radius:8px;background:#fff}.font-editor-font-results article{align-items:flex-start;padding:8px}.font-editor-font-results article+article{border-top:1px solid #ededf0}.font-editor-font-results article>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.font-editor-font-results article button{padding:4px 5px;font-size:8px}.font-editor-font-source .font-editor-upload-font{width:100%;border-style:dashed;padding-block:8px}.font-editor-form label{display:grid;gap:6px}.font-editor-form label>span{color:#5f5f67;font-size:11px;font-weight:760}.font-editor-form textarea{width:100%;resize:vertical;border:1px solid #d5d5da;border-radius:8px;outline:0;padding:10px;font:13px/1.5 system-ui,sans-serif}.font-editor-form textarea:focus{border-color:var(--font-edit-red);box-shadow:0 0 0 3px #e525321a}.font-editor-form textarea[readonly]{color:#777780;background:#f5f5f7}.font-editor-character-warning,.font-editor-character-ready,.font-editor-message{color:#8a4f00;border:1px solid #efd2a5;border-radius:8px;background:#fff9ef;padding:10px;font-size:11px;line-height:1.5}.font-editor-character-warning span{display:block;margin-top:3px}.font-editor-character-ready{color:#075f43;border-color:#a8d9ca;background:#effaf6}.font-editor-form-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:7px}.font-editor-form-actions .button{min-width:0}.font-editor-remove-edit{color:#a82430;border:0;background:transparent;cursor:pointer;font-size:11px;text-decoration:underline}.font-editor-message,.font-editor-output,.font-editor-policy{margin:0 16px 16px}.font-editor-output,.font-editor-policy{border:1px solid #dedee3;border-radius:10px;display:grid;gap:7px;padding:13px}.font-editor-output{color:#075f43;border-color:#a8d9ca;background:#effaf6}.font-editor-output span,.font-editor-policy p{margin:0;color:#6d6d75;font-size:10px;line-height:1.55}.font-editor-policy{background:#f7f7f8}@media(max-width:1480px){.font-editor-toolbar{grid-template-columns:minmax(180px,.8fr) auto minmax(400px,1.2fr)}.font-editor-actions>button:not(.button){padding-inline:7px}}@media(max-width:1180px){body:has(.font-editor-workspace){overflow:auto}.font-editor-workspace{height:auto;min-height:calc(100vh - var(--header-height));grid-template-columns:minmax(0,1fr)}.font-editor-pages{display:none}.font-editor-toolbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"file page" "actions actions"}.font-editor-file{grid-area:file}.font-editor-page-controls{grid-area:page}.font-editor-actions{grid-area:actions;border-top:1px solid #e2e2e5;justify-content:center;padding-top:7px}.font-editor-content{min-height:720px;grid-template-columns:minmax(0,1fr) 320px}}@media(max-width:780px){.primary-nav .primary-nav-link[href="/merge/"]{display:none}.font-editor-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.font-editor-toolbar{grid-template-columns:minmax(0,1fr);grid-template-areas:"file" "page" "actions"}.font-editor-page-controls,.font-editor-actions{justify-content:center}.font-editor-content{min-height:0;grid-template-columns:minmax(0,1fr)}.font-editor-stage{min-height:540px;padding:18px 8px 36px}.font-editor-inspector{border-top:1px solid #d1d1d6;border-left:0}}@media(max-width:520px){.font-editor-landing{padding-inline:14px}.font-editor-dropzone{min-height:260px;padding:24px 16px}.font-editor-benefits{grid-template-columns:minmax(0,1fr)}.font-editor-actions>span,.font-editor-actions>button[aria-label=축소],.font-editor-actions>button[aria-label=확대]{display:none}}
