:root{--font-ui:"Noto Sans KR", system-ui, -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--font-paper:"Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--font-mono:ui-monospace, "SF Mono", Consolas, monospace;--color-brand:#ffe84d;--color-on-brand:#0c3821;--color-accent:#0c3821;--color-accent-strong:#1b5a37;--color-on-accent:#ffe94e;--color-accent-soft:#0c38211f;--color-bg:#fffbd9;--color-canvas:#efe7a6;--color-surface:#fff3a1;--color-surface-hover:#ffe978;--color-border:#d9cd6f;--color-text:#0c3821;--color-text-muted:#55683a;--color-ruling:#c5d1b3;--color-danger:#b3261e;--color-danger-soft:#b3261e14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-ui);color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-brand:#082a19;--color-on-brand:#fff;--color-accent:#fff;--color-accent-strong:#d9e8de;--color-on-accent:#0c3821;--color-accent-soft:#ffffff29;--color-bg:#0c3821;--color-canvas:#06200f;--color-surface:#104a2c;--color-surface-hover:#17603a;--color-border:#2f6a48;--color-text:#fff;--color-text-muted:#b4cdbc;--color-ruling:#7d9a86;--color-danger:#ff8a80;--color-danger-soft:#ff8a8024}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{margin:0}button,input{font:inherit}img,svg{display:block}@media print{html,body,#root{height:auto;overflow:visible;background:#fff!important}}.fl-button{cursor:pointer;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:6px 14px;font-size:14px;line-height:1.4;transition:background-color .15s,border-color .15s;display:inline-flex}.fl-button:disabled{opacity:.5;cursor:not-allowed}.fl-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.fl-button--primary{background:var(--color-accent);color:var(--color-on-accent)}.fl-button--primary:hover:not(:disabled){background:var(--color-accent-strong)}.fl-button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.fl-button--secondary:hover:not(:disabled){background:var(--color-surface-hover)}.fl-button--ghost{color:inherit;background:0 0}.fl-button--ghost:hover:not(:disabled){background:#7f7f7f26}.fl-modal{border:1px solid var(--color-border);background:var(--color-bg);width:min(420px,100vw - 32px);color:var(--color-text);border-radius:16px;padding:0;box-shadow:0 20px 50px #0000004d}.fl-modal--wide{width:min(800px,100vw - 32px)}.fl-modal::backdrop{background:#081e128c}.about-modal{width:min(680px,100vw - 32px);max-height:min(88vh,860px)}.about-dialog{max-height:inherit;flex-direction:column;height:min(88vh,860px);display:flex}.about-dialog__scroll{flex:1;min-height:0;padding:32px 36px 8px;overflow-y:auto}.about-dialog__hero{text-align:center;flex-direction:column;align-items:center;display:flex}.about-dialog__logo{border-radius:20px}.about-dialog__name{letter-spacing:.02em;margin:14px 0 0;font-size:26px;font-weight:800}.about-dialog__name-ko{color:var(--color-text-muted);font-size:18px;font-weight:600}.about-dialog__tagline{word-break:keep-all;margin:8px 0 0;font-size:15px;font-weight:700;line-height:1.55}.about-dialog__meaning{background:var(--color-surface);word-break:keep-all;text-align:left;border-radius:10px;margin:12px 0 0;padding:12px 16px;font-size:13px;line-height:1.7}.about-dialog__section{margin-top:28px}.about-dialog__heading{border-bottom:2px solid var(--color-text);margin:0 0 10px;padding-bottom:6px;font-size:16px;font-weight:800}.about-dialog__paragraph{color:var(--color-text);word-break:keep-all;margin:0 0 10px;font-size:13.5px;line-height:1.75}.about-dialog__features{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.about-dialog__feature{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;padding:12px 16px}.about-dialog__feature-title{margin:0 0 6px;font-size:14px;font-weight:800}.about-dialog__feature .about-dialog__paragraph{margin:0}.about-dialog__team{flex-direction:column;gap:8px;margin:0;display:flex}.about-dialog__member{grid-template-columns:120px 1fr;align-items:baseline;gap:12px;font-size:13.5px;display:grid}.about-dialog__member dt{color:var(--color-text-muted)}.about-dialog__member dd{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;display:flex}.about-dialog__member-role{color:var(--color-text-muted);font-size:12.5px}.about-dialog__closing{border-top:1px solid var(--color-border);text-align:center;margin-top:28px;padding:18px 8px 22px}.about-dialog__quote{word-break:keep-all;margin:0 0 10px;font-size:15px;font-weight:700;line-height:1.6}.about-dialog__closing .about-dialog__paragraph{color:var(--color-text-muted)}.about-dialog__actions{border-top:1px solid var(--color-border);background:var(--color-bg);justify-content:center;padding:12px 36px 18px;display:flex}.about-dialog__actions .fl-button{padding-inline:32px}@media (width<=520px){.about-dialog__member{grid-template-columns:1fr;gap:2px}}.file-open-panel{border:2px dashed var(--color-border);color:var(--color-text-muted);border-radius:8px;flex-direction:column;align-items:center;gap:12px;padding:32px;font-size:14px;transition:border-color .15s,background-color .15s;display:flex}.file-open-panel--dragging{border-color:var(--color-accent);background:var(--color-accent-soft)}.home-sidebar{background:var(--color-brand);width:220px;min-height:0;color:var(--color-on-brand);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.home-sidebar__brand{letter-spacing:.02em;flex-direction:column;align-items:center;gap:8px;padding:28px 20px 24px;font-size:20px;font-weight:800;display:flex}.home-sidebar__logo{border-radius:22%;width:clamp(56px,16vh,132px);height:clamp(56px,16vh,132px)}.home-sidebar__nav{flex-direction:column;display:flex}.home-sidebar__footer{flex-direction:column;margin-top:auto;padding-bottom:12px;display:flex}.home-sidebar__item{color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;padding:12px 20px;font-size:15px;display:flex}.home-sidebar__item:hover{background:color-mix(in srgb, var(--color-on-brand) 12%, transparent)}.home-sidebar__item[aria-current=page]{background:var(--color-on-brand);color:var(--color-brand);font-weight:600}.home-sidebar__icon{text-align:center;width:20px}.recent-doc-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.recent-doc-list__row{border-bottom:1px solid var(--color-border);align-items:center;display:flex}.recent-doc-list__row:hover{background:var(--color-surface-hover)}.recent-doc-list__open{min-width:0;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;grid-template-columns:28px minmax(0,1fr) 140px 170px;align-items:center;gap:12px;padding:10px 12px;display:grid}.recent-doc-list__main{flex-direction:column;min-width:0;display:flex}.recent-doc-list__title{font-size:14px;font-weight:600}.recent-doc-list__preview,.recent-doc-list__meta{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.recent-doc-list__remove{width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;margin-right:8px;font-size:18px}.recent-doc-list__row:hover .recent-doc-list__remove,.recent-doc-list__remove:focus-visible{opacity:1}.recent-doc-list__remove:hover{background:#7f7f7f33}.recent-doc-list__empty{color:var(--color-text-muted);padding:24px 12px;font-size:14px}@media (width<=900px){.recent-doc-list__open{grid-template-columns:28px minmax(0,1fr)}.recent-doc-list__meta{display:none}}.template-card{width:168px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:6px;padding:0;display:flex}.template-card__thumb{aspect-ratio:210/297;border:1px solid var(--color-border);box-sizing:border-box;background-color:#fff;background-origin:content-box,border-box;background-clip:content-box,border-box;border-radius:2px;width:100%;padding:12% 10%;transition:border-color .15s,box-shadow .15s;display:block}.template-card__thumb--lined{background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 7px, var(--color-ruling) 7px, var(--color-ruling) 8px), linear-gradient(#fff, #fff)}.template-card__thumb--grid{background-image:linear-gradient(to bottom, var(--color-ruling) 1px, transparent 1px), linear-gradient(to right, var(--color-ruling) 1px, transparent 1px), linear-gradient(#fff, #fff);background-size:8px 8px,8px 8px,100% 100%;background-origin:content-box,content-box,border-box;background-clip:content-box,content-box,border-box}.template-card__thumb--image{object-fit:cover;padding:0}.template-card:hover .template-card__thumb,.template-card:focus-visible .template-card__thumb{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft)}.template-card:focus-visible{outline:none}.template-card__name{font-size:14px;font-weight:600}.template-card__desc{color:var(--color-text-muted);font-size:12px}.template-picker{padding:28px 32px 22px}.template-picker__title{margin:0;font-size:20px;font-weight:700}.template-picker__file{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 20px;font-size:13px;overflow:hidden}.template-picker__list{flex-wrap:wrap;gap:20px;display:flex}.template-picker__actions{justify-content:flex-end;margin-top:22px;display:flex}.home-view{height:100%;display:flex;overflow:hidden}.home-view__main{background:var(--color-bg);flex:1;min-width:0;padding:32px 48px;overflow-y:auto}.home-view__title{margin:0 0 24px;font-size:28px;font-weight:400}.home-view__section+.home-view__section{margin-top:40px}.home-view__heading{margin:0 0 16px;font-size:16px;font-weight:600}.home-view__templates{flex-wrap:wrap;gap:24px;display:flex}.home-view__error{border:1px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger);white-space:pre-line;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:10px 14px;font-size:14px;display:flex}.home-view__error button{color:inherit;cursor:pointer;background:0 0;border:none;font-size:18px}
