@font-face{font-family:Hahmlet;font-weight:600;font-display:swap;src:url(/fonts/Hahmlet-600.woff2) format("woff2")}@font-face{font-family:Hahmlet;font-weight:700 900;font-display:swap;src:url(/fonts/Hahmlet-800.woff2) format("woff2")}@font-face{font-family:NanumSquareNeo;font-weight:400 500;font-display:swap;src:url(/fonts/NanumSquareNeo-Regular.woff2) format("woff2")}@font-face{font-family:NanumSquareNeo;font-weight:600 900;font-display:swap;src:url(/fonts/NanumSquareNeo-Bold.woff2) format("woff2")}:root{--surface: #ffffff;--raised: #f4f6f8;--active: #ebedee;--border: #e8eaec;--rule: #f0f1f2;--control: #cdced1;--band: #f6f7f6;--hover: #e1e3e5;--text-hover: #2a2c2f;--text: #131416;--muted: #5d5f60;--accent: #23694f;--accent-wash: rgba(35, 105, 79, .08);--negative: #c4242a;--warning: #92400e;--warning-line: #e9c99a;--warning-ink: #5b2a07;--negative-ink: #6d1518;--pill-positive-bg: #dcfae5;--pill-positive-ink: #04250e;--pill-negative-bg: #ffedea;--pill-negative-ink: #831c1e;--pill-warning-bg: #fffbeb;--pill-warning-ink: #92400e;--pill-neutral-bg: #ebedee;--pill-neutral-ink: #353736;--radius-card: 8px;--radius-control: 6px;--radius-sheet: 16px;--gap: 24px;--control-height: 36px;--fs-title: 22px;--fs-section: 16px;--fs-body: 16px;--fs-small: 12px;--font-title: "Hahmlet", "Malgun Gothic", serif;--font-body: "NanumSquareNeo", "Malgun Gothic", "Apple SD Gothic Neo", system-ui, sans-serif;font-family:var(--font-body);color:var(--text);background:var(--surface);font-size:var(--fs-body);line-height:1.6;word-break:keep-all;overflow-wrap:anywhere}*{box-sizing:border-box}body{margin:0;background:var(--surface)}button,input,select,textarea{font:inherit;color:inherit}img{display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{min-height:100vh;background:var(--surface)}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:28px;height:56px;padding:0 max(32px,calc((100vw - 1180px)/2 + 32px));background:var(--band)}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;cursor:pointer;white-space:nowrap}.steps{display:flex;align-items:stretch;height:100%;gap:22px;font-size:14px}.steps span{display:flex;align-items:center;gap:6px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.steps span .n{font-variant-numeric:tabular-nums}.steps span.on{color:var(--text);font-weight:700;border-bottom-color:var(--accent)}.steps span.done{color:var(--text)}.steps span.link{cursor:pointer}.steps span.link:hover{color:var(--accent)}.top-tools{display:flex;align-items:center;gap:6px}.top-tools .btn.link{color:var(--muted);font-weight:500}.top-tools .btn.link:hover{color:var(--text);background:var(--raised)}.top-tools .notice{font-size:13px}.ctxbar{display:flex;flex-wrap:wrap;gap:18px;align-items:baseline;padding:10px max(32px,calc((100vw - 1180px)/2 + 32px));background:var(--band);font-size:14px;color:var(--muted)}.ctxbar b{color:var(--text)}.wrap{max-width:1180px;margin:0 auto;padding:32px 32px 80px;container-type:inline-size}@media(max-width:1100px){.topbar{gap:16px;padding:0 20px}.brand span{display:none}.steps{gap:14px}.wrap,.ctxbar{padding-left:20px;padding-right:20px}}h1{font-size:26px;line-height:1.35;margin:4px 0 8px;letter-spacing:-.015em;text-wrap:balance;font-weight:700}h2{font-size:var(--fs-title);line-height:1.4;margin:0 0 6px;letter-spacing:-.01em;text-wrap:balance;font-weight:700}h3{font-size:var(--fs-section);line-height:1.45;margin:0 0 6px;font-weight:700}p{text-wrap:pretty}p.lead{color:var(--muted);margin:0 0 20px;font-size:var(--fs-body);max-width:68ch}.muted{color:var(--muted)}.small{font-size:13px}.num{font-variant-numeric:tabular-nums}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.stack>*+*{margin-top:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}@container (max-width: 760px){.grid2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 14px;border:1px solid transparent;background:var(--active);color:var(--text);border-radius:var(--radius-control);cursor:pointer;font-weight:600;white-space:nowrap;text-decoration:none}.btn:hover{background:var(--hover)}.btn.primary{background:var(--text);color:#fff}.btn.primary:hover{background:var(--text-hover)}.btn.big{height:44px;padding:0 20px;font-size:16px}.btn.small{height:28px;padding:0 10px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.link{height:auto;padding:2px 4px;background:none;color:var(--accent);font-weight:600}.btn.link:hover{background:var(--accent-wash)}a.btn{display:inline-flex}.choice{display:block;text-align:left;width:100%;padding:14px 16px;border-radius:var(--radius-card);border:1px solid var(--border);background:var(--surface);cursor:pointer}.choice:hover{border-color:var(--control)}.choice.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.choice b{display:block;font-size:var(--fs-section);margin-bottom:2px}.pill{display:inline-block;font-size:var(--fs-small);line-height:20px;padding:0 8px;border-radius:999px;background:var(--pill-neutral-bg);color:var(--pill-neutral-ink);font-weight:600;vertical-align:middle}.pill.ok{background:var(--pill-positive-bg);color:var(--pill-positive-ink)}.pill.warn{background:var(--pill-warning-bg);color:var(--pill-warning-ink)}.pill.bad{background:var(--pill-negative-bg);color:var(--pill-negative-ink)}.notice{background:var(--raised);border-radius:var(--radius-control);padding:10px 14px}.notice.warn{background:var(--pill-warning-bg);color:var(--warning-ink)}.notice.bad{background:var(--pill-negative-bg);color:var(--negative-ink)}ul.plain,ol.plain{margin:0;padding-left:18px}input[type=text],input[type=date],input[type=number],input[type=search],select,textarea{border:1px solid var(--control);border-radius:var(--radius-control);height:var(--control-height);padding:0 10px;background:#fff;min-width:0}textarea{height:auto;padding:8px 10px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}input[type=search].big{height:44px;font-size:16px;width:100%}.results{margin-top:8px;border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden;background:#fff}.results button{display:flex;width:100%;gap:10px;align-items:baseline;padding:12px 14px;border:0;border-bottom:1px solid var(--rule);background:#fff;cursor:pointer;text-align:left}.results button:hover{background:var(--raised)}.results button:last-child{border-bottom:0}.progress{height:6px;border-radius:999px;background:var(--active);overflow:hidden}.progress>div{height:100%;background:var(--accent);transition:width .3s}table.events{width:100%;border-collapse:collapse;background:#fff}table.events th,table.events td{padding:8px 10px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:middle}table.events th{font-size:var(--fs-small);color:var(--muted);font-weight:600;border-bottom-color:var(--border)}table.events tr.off td{opacity:.45}table.events input[type=text]{width:100%}table.events .thumb{width:64px;height:44px;border-radius:var(--radius-control);object-fit:cover;background:var(--raised)}.table-scroll{overflow-x:auto}.table-scroll table.events{min-width:620px}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.ph{position:relative;aspect-ratio:4/3;border-radius:var(--radius-control);overflow:hidden;background:var(--raised);cursor:pointer;outline:2px solid transparent;outline-offset:-2px}.ph img{width:100%;height:100%;object-fit:cover}.ph.on{outline-color:var(--accent)}.ph .badge{position:absolute;top:6px;right:6px;background:var(--accent);color:#fff;font-size:var(--fs-small);font-weight:700;border-radius:999px;min-width:22px;height:22px;padding:0 6px;display:grid;place-items:center;font-variant-numeric:tabular-nums}.skel{width:100%;height:100%;background:var(--raised)}.small-photos{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}.fill{width:100%;height:100%;object-fit:cover}.album-sample{width:100%;max-height:180px;object-fit:cover;border-radius:var(--radius-control)}.footer-bar{position:sticky;bottom:0;background:var(--surface);border-top:1px solid var(--border);padding:12px 0;margin-top:24px}.mobile-block{max-width:520px;margin:0 auto;padding:32px 20px;background:var(--surface);min-height:100vh}.mobile-block h1{margin-top:20px;font-size:28px}.drop{border:1px dashed var(--control);border-radius:var(--radius-card);padding:40px;text-align:center;background:var(--raised)}.drop.over{border-color:var(--accent);background:var(--accent-wash)}.modal-bg{position:fixed;inset:0;background:#1314164d;display:grid;place-items:center;z-index:60}.modal{width:min(520px,92vw);border-radius:var(--radius-sheet);padding:24px}.studio-grid{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:var(--gap);align-items:start}.studio-main{min-width:0}.preview-canvas{display:block;width:auto;height:auto;max-width:100%;max-height:62vh;margin:0 auto;background:#000;border-radius:var(--radius-control)}@container (max-width: 900px){.studio-grid{grid-template-columns:minmax(0,1fr)}.studio-main{order:-1}}.apply-bar{border-radius:var(--radius-card);padding:10px 14px;border:1px solid var(--border)}.apply-bar.dirty{border-color:var(--warning-line);background:var(--pill-warning-bg)}.apply-bar.ok{background:var(--surface)}.preview-wrap{position:relative}.preview-wrap>.card{background:var(--raised);border-color:var(--raised)}.preview-wrap.dirty .preview-canvas{filter:blur(6px) grayscale(.5) brightness(.9)}.preview-wrap.dirty .card .row button{pointer-events:none;opacity:.5}.apply-cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;font-weight:700}.apply-cover p{margin:0;background:#fff;padding:6px 12px;border-radius:999px;border:1px solid var(--border)}.preview-empty{min-height:260px;display:grid;place-items:center;color:var(--muted);text-align:center}.ai-diff{margin-top:4px;color:var(--text);background:var(--accent-wash);border-radius:4px;padding:3px 8px;display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ai-diff s{color:var(--muted)}.report-top{color:var(--muted);font-weight:500;white-space:nowrap}.wipe-btn{color:var(--muted)}.login-check{border-color:var(--warning-line)}.folder-ways li+li{margin-top:6px}.folder-ways code{background:var(--raised);padding:1px 6px;border-radius:4px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.home>*+*{margin-top:48px}.home h1{font-size:52px;line-height:1.25;letter-spacing:-.025em;font-weight:800;margin:0 0 16px;text-wrap:balance}.home-lead{font-size:19px;line-height:1.6;color:var(--text);margin:0;max-width:30em}.home-a-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:44px;align-items:center}.home-a-text>*+*{margin-top:28px}@container (max-width: 960px){.home-a-top{grid-template-columns:1fr;gap:28px}.home h1{font-size:32px}}.starts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.starts .btn.big{height:52px;padding:0 18px;font-size:16px}.starts-note{flex-basis:100%;margin:6px 0 0;font-size:15px;color:var(--muted);max-width:38em}.show{margin:0}.show-screen{aspect-ratio:16 / 9;background:#000;border-radius:4px;overflow:hidden}.show-screen img{width:100%;height:100%;object-fit:cover}.show-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.seg{display:inline-flex;border:1px solid var(--control);border-radius:var(--radius-control);overflow:hidden}.seg button{height:34px;padding:0 14px;border:0;border-left:1px solid var(--control);background:var(--surface);cursor:pointer;font-size:14px;color:var(--muted)}.seg button:first-child{border-left:0}.seg button.on{background:var(--text);color:#fff;font-weight:600}.thumbs{display:flex;gap:6px}.thumbs button{width:72px;aspect-ratio:16 / 9;padding:0;border:0;border-radius:3px;overflow:hidden;cursor:pointer;opacity:.55;outline:2px solid transparent;outline-offset:1px}.thumbs button.on{opacity:1;outline-color:var(--accent)}.thumbs img{width:100%;height:100%;object-fit:cover}.show-note{margin:8px 0 0;font-size:13px;color:var(--muted)}.home-cal h2{font-size:24px}.home-cal .lead{max-width:60ch}.notes{margin:0;padding:0 0 0 18px;color:var(--muted);font-size:15px;max-width:60ch}.notes li+li{margin-top:6px}.resume{padding:12px 16px;border:1px solid var(--text);border-radius:var(--radius-card)}.cal{margin:0;border-top:2px solid var(--text);font-size:14px}.cal-head{display:flex;gap:14px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--text)}.cal-head b{font-size:15px}.cal-head span{color:var(--muted);font-variant-numeric:tabular-nums}.cal-row{display:grid;grid-template-columns:56px repeat(6,minmax(0,1fr));border-bottom:1px solid var(--border)}.cal-row:last-of-type{border-bottom:1px solid var(--text)}.cal-term{padding:10px 0;font-weight:700;writing-mode:horizontal-tb}.cal-cell{padding:10px 10px 12px;border-left:1px solid var(--rule);min-height:96px}.cal-m{font-weight:700;margin-bottom:6px;font-variant-numeric:tabular-nums}.cal-cell ul{margin:0;padding:0;list-style:none}.cal-cell li{line-height:1.45;margin-bottom:4px}.cal-d{color:var(--accent);font-weight:700;margin-right:6px;font-variant-numeric:tabular-nums}.cal-cell li.more{color:var(--muted);font-size:13px}.cal-empty{color:var(--control)}.cal figcaption{margin-top:8px;font-size:13px;color:var(--muted)}@container (max-width: 760px){.cal-row{grid-template-columns:repeat(3,minmax(0,1fr))}.cal-term{grid-column:1 / -1;padding-bottom:0}.cal-cell:nth-child(n+5){border-top:1px solid var(--rule)}.cal-cell:nth-child(2),.cal-cell:nth-child(5){border-left:0}}h1,h2,h3,.brand,.cal-m,.cal-head b,.cal-term{font-family:var(--font-title)}.cal-cell.in{background:var(--accent-wash)}.cal-cell.out{color:var(--muted)}.cal-cell.out .cal-m{color:var(--muted);font-weight:600}.cal-cell li.off,.cal-cell li.off .cal-d{color:var(--muted)}.guide>.card{border:0;border-top:1px solid var(--border);border-radius:0;padding:28px 0 8px}.guide>.card.login-check{border-top:2px solid var(--text)}.guide>.card h3{font-size:20px}.guide video{max-width:760px}.guide .grid2 .notice{background:none}.cal-cell li,.cal figcaption,.notes li,.starts-note,.show-note,p.lead{text-wrap:pretty}.cal-d{white-space:nowrap}
