@import"https://fonts.googleapis.com/css2?family=Black+Han+Sans&family=Gaegu:wght@400;700&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap";@media(min-width:761px)and (max-height:800px){html body .app-shell{padding:12px 20px}html body .app-header{min-height:50px;margin-bottom:15px}html body h1{font-size:38px}html body .app-header>p{font-size:16px}html body .paper-panel{padding:13px 16px}html body .tools h2{font-size:25px;margin-bottom:9px}html body .tools-intro{font-size:12px;margin-bottom:11px}html body .tool{height:63px;font-size:13px;gap:4px}html body .tool svg{height:31px}html body .swatches{margin:11px 0}html body .swatches button{height:37px;padding:6px}html body .small-title{font-size:12px;margin-bottom:7px}html body .presets button>div{height:56px}html body .presets button{font-size:11px}html body .edit-actions{margin:12px 0;padding:10px 0}html body .edit-actions button{height:33px;font-size:12px}html body .setting-row{margin:9px 0;font-size:13px}html body .segments button{height:29px;font-size:11px}html body .launch{height:51px;font-size:26px;margin-top:4px}html body .canvas-frame{height:calc(100dvh - 166px);flex:none}html body .canvas-frame canvas{height:100%;aspect-ratio:auto}html body .canvas-caption{padding:11px 17px}html body .canvas-caption strong{font-size:24px}html body .canvas-caption>span{font-size:12px}html body .observation h2{font-size:25px}html body .distance{margin:7px 0}html body .distance strong{font-size:50px}html body .telemetry{margin:14px 0 5px}html body .telemetry>div{margin-bottom:8px;font-size:12px}html body .note{font-size:11px;padding:10px;margin-bottom:13px}html body .observation-bottom{padding-top:12px;gap:8px}html body .observation-bottom>button:not(.text-btn){min-height:39px}html body .creature-caption{margin:5px 0}html body .observe-controls button{min-height:35px;font-size:11px}}:root{font-family:Noto Sans KR,Malgun Gothic,sans-serif;color:#29342e;background:#f6f2e7;font-synthesis:none;font-weight:500;--green:#426b4b;--line:#c5c2b4;--paper:#faf7ee;--ink:#29342e;--gold:#efbe4e}*{box-sizing:border-box}body{margin:0;background-image:linear-gradient(#57735109 1px,transparent 1px),linear-gradient(90deg,#57735109 1px,transparent 1px);background-size:22px 22px}button,input{font:inherit}button{cursor:pointer;color:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #b6b6a9;background:#f9f6ee;border-radius:10px;font-weight:650;font-size:14px;transition:background .15s,transform .15s,box-shadow .15s}button:hover{background:#efebdf;transform:translateY(-1px)}button:active{transform:translateY(1px)}button:focus-visible,input:focus-visible{outline:3px solid #dca828;outline-offset:4px}button:disabled{opacity:.4;cursor:default;transform:none}button svg{flex-shrink:0}h1,h2,h3,p{margin:0}button[aria-pressed=true]{background:var(--green);color:#fffdf5;border-color:var(--green)}.app-shell{max-width:1600px;margin:auto;padding:24px 30px 20px}.app-header{display:flex;align-items:center;gap:28px;margin-bottom:25px;min-height:82px}.brand{display:flex;align-items:end;gap:5px;position:relative;white-space:nowrap}.brand:after{content:"";position:absolute;left:2px;right:38px;bottom:-7px;border-bottom:4px solid #426b4b;border-radius:50%;transform:rotate(-1deg)}h1{font-family:Black Han Sans,Malgun Gothic,sans-serif;font-size:49px;letter-spacing:-2.7px;font-weight:900;line-height:1.15}.brand-doodle{transform:rotate(13deg);margin-bottom:-5px}.app-header>p{font-size:19px;font-weight:650;letter-spacing:-.7px}.app-header nav{margin-left:auto;display:flex;gap:12px;align-items:center}.icon-btn{width:45px;height:45px;border-radius:50%;border:1.3px solid var(--green);background:transparent}.book-btn{height:46px;padding:0 22px;border-radius:30px;border:1.3px solid var(--green);font-size:17px;gap:12px}.book-btn small{font-size:12px}.help-btn{border-color:transparent}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:stretch}.paper-panel{border:1px solid var(--green);border-radius:12px;background:#faf8f0db;padding:20px 18px;box-shadow:0 2px 3px #33422c04}.tools h2{font-family:Gaegu,sans-serif;font-size:31px;letter-spacing:-1.5px;font-weight:700;line-height:1.23;margin:0 -3px 14px;transform:rotate(-1.5deg)}.tools h2 span{display:block;padding:7px;background:linear-gradient(2deg,#efbe4e48,#efbe4e5a 65%,#efbe4e39);clip-path:polygon(2% 5%,98% 0,100% 90%,3% 100%,0 40%)}.tools-intro{font-size:14px;letter-spacing:-.5px;margin-bottom:18px}.tool-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tool{height:97px;flex-direction:column;gap:8px;background:#ede9df;font-size:16px;border-color:#c5c2b9;border-radius:12px}.tool.selected{box-shadow:inset 0 0 30px #b1c5940b}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:17px 0}.swatches button{height:51px;padding:8px;border:2px solid #ded9cf;background:transparent;border-radius:8px}.swatches button.selected{border-color:var(--green)}.swatches span{width:100%;height:100%;border-radius:45% 48% 40% 55%;transform:rotate(-18deg);background-image:repeating-linear-gradient(0deg,transparent 0 3px,#fff2 3px 4px)}.small-title{font-size:14px;font-weight:700;margin:0 0 9px}.presets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.presets button{padding:0;display:flex;flex-direction:column;border:0;background:none;gap:5px;font-size:13px}.presets button>div{height:79px;width:100%;background:#eee5d1;border:1px solid transparent;border-radius:3px;box-shadow:inset 0 0 25px #d5bf991d}.presets button>div.active{border-color:#71866666}.thumb{height:100%;width:100%;padding:9px}.edit-actions{display:flex;gap:10px;margin:18px 0 17px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.edit-actions button{flex:1;height:40px;font-size:13px;gap:7px}.edit-actions svg{width:19px}.setting-row{display:flex;gap:16px;align-items:center;margin:12px 0;font-size:15px}.setting-row>span{min-width:34px;font-weight:700}.segments{display:flex;gap:7px;flex:1}.segments button{height:33px;flex:1;padding:0 7px;font-size:12px;white-space:nowrap}.primary{background:var(--green);color:#fffdf5;border:1px solid #395a40;min-height:49px;padding:10px 20px;border-radius:12px;box-shadow:0 2px 1px #2f49331a}.primary:hover{background:#365b3f}.launch{width:100%;height:72px;font-family:Gaegu,sans-serif;font-size:31px;margin-top:7px;gap:16px}.error{font-size:12px;color:#a73b2a;line-height:1.7;padding-top:9px}.stage-area{min-width:0;display:flex;flex-direction:column}.chapter-row{display:flex;align-items:center;justify-content:space-between;height:44px;flex-shrink:0;border-top:1px solid #76836d;margin-bottom:8px;padding:5px 10px 0}.chapter-picker{background:transparent!important;border:0;font-size:18px;padding:0;gap:11px;letter-spacing:-.6px}.chapter-picker strong{font-size:24px}.chapter-picker>span{color:#677360}.chapter-picker .chevron{font-size:17px;margin-left:8px}.stars{display:inline-flex;gap:9px;align-items:center;color:#b9b7a9}.stars svg{fill:#b9b7a944;stroke-width:1.4}.stars .filled{color:#bc9226}.stars .filled svg{fill:#efbe4e}.canvas-frame{position:relative;border:1.3px solid #365840;border-radius:18px;overflow:hidden;background:#f7f1e4;isolation:isolate;flex:1}.canvas-frame canvas{display:block;width:100%;height:auto;aspect-ratio:1100/780;touch-action:none;-webkit-user-select:none;user-select:none}.drawing canvas{cursor:crosshair}.canvas-hint{position:absolute;top:25px;left:30px;font-family:Gaegu,sans-serif;font-weight:700;font-size:22px;transform:rotate(-7deg);color:#72786b;pointer-events:none}.canvas-hint span{display:block;font-size:40px;line-height:1;margin-top:4px}.canvas-caption{position:absolute;bottom:18px;right:17px;background:#fff9e5dc;padding:16px 22px;border-radius:30px 20px 27px 21px;display:flex;flex-direction:column;gap:5px;pointer-events:none}.canvas-caption strong{font-family:Gaegu,sans-serif;font-size:27px;font-weight:700;letter-spacing:-1px}.canvas-caption>span{font-size:13px;color:#868575}.stage-footer{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#74796b;padding:10px 4px 0;gap:12px}.stage-footer button{border:0;background:none;font-size:12px;padding:0;white-space:nowrap}.observation{display:flex;flex-direction:column}.observation h2{font-family:Gaegu,sans-serif;font-size:29px;margin:6px 0 8px}.creature-caption{display:flex;align-items:center;gap:8px;margin:10px 0;color:#727467;font-size:13px}.ink-dot{width:9px;height:9px;border-radius:50%;background:#d9694e}.distance{display:flex;flex-direction:column;align-items:center;gap:0;margin:20px 0 17px}.distance strong{font-size:72px;font-weight:800;letter-spacing:-5px;line-height:1.2}.distance small{font-size:24px;margin-left:4px;letter-spacing:0}.distance>span{font-size:12px;color:#727a6c}.progress-track{height:6px;background:#e5e3d6;border-radius:10px;overflow:hidden}.progress-track i,.run-progress i{display:block;background:#72965c;height:100%;transition:width .15s linear}.telemetry{margin:22px 0 12px}.telemetry>div{display:flex;justify-content:space-between;margin:0 0 14px;align-items:center;font-size:13px}.telemetry dt{color:#777d6f}.telemetry dd{margin:0;font-weight:700}.telemetry .stars svg{width:18px}.telemetry .stars{gap:5px}.note{padding:16px;background:#efbe4e20;font-size:13px;line-height:1.9;border-radius:3px;transform:rotate(-1deg);margin-bottom:20px}.note>span{display:block;font-weight:800;margin-bottom:3px}.observe-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px}.observe-controls button{min-height:42px;font-size:12px;gap:5px}.observe-controls svg{width:17px}.observation-bottom{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:18px}.observation-bottom>button:not(.text-btn){min-height:46px}.text-btn{background:transparent;border:0;font-size:12px;min-height:30px;box-shadow:none}.ghost-toggle{font-size:11px;color:#69715f;display:flex;gap:6px;margin-top:16px;align-items:center}.run-label{position:absolute;top:24px;left:24px;padding:9px 13px;background:#fffcf0de;border:1px solid #8b947351;border-radius:22px;font-size:13px;display:flex;gap:8px;align-items:center}.live-dot{height:6px;width:6px;background:#689549;border-radius:50%;animation:pulse 1.5s infinite}.run-progress{height:4px;position:absolute;bottom:0;left:0;right:0;background:#d5cfb4}.result-shade{position:absolute;inset:0;display:grid;place-items:center;background:#f5eed94f;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:18px}.result-sheet{max-width:435px;width:100%;padding:27px 27px 18px;border:1px solid #a4ab94;background:#fffbef;box-shadow:3px 7px #e5ddcbaa,0 16px 60px #24372624;border-radius:8px;text-align:center;animation:arrive .35s ease-out}.result-mark{color:#8f9d73;margin:0 auto 8px}.result-mark.won{color:#dbb03a}.result-mark.won svg{fill:#efbe4e33}.result-sheet h2{font-family:Gaegu,sans-serif;font-size:35px;margin-bottom:7px}.result-sheet>p{font-size:13px;line-height:1.8;color:#77816b}.result-sheet>.stars{margin:18px 0 5px;gap:15px}.result-sheet>.stars svg{width:31px;height:31px}.result-sheet .result-tip{padding:10px;margin:6px 0 14px;background:#f1eadb;font-size:12px;border-radius:5px}.result-actions{display:flex;gap:9px}.result-actions>button{flex:1;min-height:47px;font-size:13px;padding:8px}.result-sheet>.text-btn{margin-top:9px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);padding:14px 22px;background:#293d30;color:#fffdf2;border-radius:12px;font-size:13px;max-width:90vw;z-index:10;box-shadow:0 6px 20px #29342e22}dialog{max-width:660px;width:calc(100% - 30px);max-height:88vh;border:1px solid #728067;border-radius:18px;background:#faf7ed;color:var(--ink);padding:0;box-shadow:0 30px 100px #2835283d}dialog::backdrop{background:#273c3552;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-inner{padding:25px 30px 30px}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.modal-heading h2{font-family:Gaegu,sans-serif;font-size:32px}.modal-heading .icon-btn{height:34px;width:34px}.muted{font-size:12px;color:#7a8072;line-height:1.8}.course-list{display:flex;flex-direction:column;gap:5px}.course-list>button{border:0;border-bottom:1px solid #d8d6c9;border-radius:0;justify-content:start;gap:18px;text-align:left;min-height:80px;padding:10px 12px;background:transparent}.course-list>button.current{background:#e8edde;border-radius:9px}.course-number{font-size:21px;font-weight:800;color:#607356}.course-list strong{font-size:15px}.course-list small{display:block;font-size:11px;color:#7a8072;margin-top:5px}.course-list .stars{margin-left:auto;gap:4px}.course-list .stars svg{width:17px}.course-list>.muted{margin-top:15px}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:18px 0}.collection-grid button{display:flex;flex-direction:column;padding:8px;background:#f0eadc;border-color:#d7d1c4}.collection-grid .thumb{height:130px}.collection-grid strong{font-size:13px;max-width:100%;overflow-wrap:anywhere}.collection-grid small{font-size:10px;color:#7a8072}.empty-collection{text-align:center;padding:36px 10px;color:#77836e}.empty-collection h3{font-size:18px;margin:15px 0 6px}.empty-collection p{font-size:13px}.modal-inner>.primary,form>.primary{width:100%;margin-top:16px}.save-preview{height:200px;width:200px;margin:auto;background:#f0e8d6;border-radius:50%}.save-preview .thumb{padding:22px}.name-label{display:flex;flex-direction:column;gap:8px;font-size:13px;margin-top:15px}.name-label input{padding:12px;border-radius:9px;border:1px solid #b7beaa;background:#fffdf5;color:var(--ink)}.help-steps{padding-left:23px}.help-steps li{padding-left:7px;margin-bottom:21px}.help-steps strong{font-size:16px}.help-steps p{font-size:13px;color:#737c68;line-height:1.8;margin-top:6px}.workspace:fullscreen{background:#f6f2e7;padding:25px;overflow:auto;align-items:start}.workspace:fullscreen .stage-area{max-height:96vh}.workspace:fullscreen canvas{max-height:85vh;object-fit:contain}@keyframes arrive{0%{transform:translateY(15px) rotate(-2deg);opacity:0}to{transform:none;opacity:1}}@keyframes pulse{50%{opacity:.35}}@media(min-width:1450px){.workspace{grid-template-columns:340px minmax(0,1fr)}.paper-panel{padding:22px}.tools h2{font-size:34px}.tools-intro{font-size:16px}.tool{height:107px}.swatches button{height:62px}.presets button>div{height:91px}.edit-actions button{height:46px;font-size:15px}.segments button{height:36px;font-size:14px}.launch{height:78px;font-size:35px}.app-header{margin-bottom:29px}h1{font-size:57px}.app-header>p{font-size:21px}.canvas-caption strong{font-size:31px}.canvas-caption>span{font-size:15px}}@media(max-width:1100px){.app-shell{padding:18px}.app-header{gap:20px;margin-bottom:20px;min-height:70px}.app-header>p{font-size:15px}.workspace{grid-template-columns:250px minmax(0,1fr);gap:14px}.paper-panel{padding:16px 13px}.tools h2{font-size:26px}.tool{height:77px;font-size:14px}.tool svg{height:34px}.swatches{gap:8px;margin:13px 0}.swatches button{height:43px;padding:7px}.presets button>div{height:65px}.small-title{font-size:12px}.edit-actions{margin:13px 0;padding:12px 0}.edit-actions button{font-size:11px}.setting-row{gap:8px;font-size:13px;margin:10px 0}.segments{gap:5px}.segments button{font-size:11px;padding:0 5px}.launch{height:57px;font-size:27px}.canvas-frame{flex:initial}.chapter-picker{font-size:15px}.chapter-picker strong{font-size:20px}.canvas-caption{padding:12px 15px}.canvas-caption strong{font-size:23px}.canvas-caption>span{font-size:11px}.canvas-hint{font-size:18px;top:17px;left:20px}h1{font-size:39px}.distance{margin:12px 0}.distance strong{font-size:55px}.observation h2{font-size:25px}.observation .tools-intro{font-size:12px}.note{padding:11px;font-size:11px;margin-bottom:12px}.telemetry{margin:15px 0 5px}.telemetry>div{font-size:11px;margin-bottom:9px}.observe-controls button{font-size:10px;gap:3px}.observation-bottom{padding-top:14px}}@media(max-width:760px){.app-shell{padding:14px 12px 18px}.app-header{flex-wrap:wrap;gap:8px;margin-bottom:20px;min-height:unset}.brand{gap:2px}h1{font-size:34px;letter-spacing:-1.5px}.brand-doodle svg{width:26px}.brand:after{bottom:-5px;right:28px;border-width:3px}.app-header>p{order:3;flex-basis:100%;font-size:12px;padding-top:8px;color:#707a66}.app-header nav{gap:7px}.icon-btn{height:35px;width:35px}.book-btn{height:36px;padding:0 12px;font-size:13px;gap:7px}.book-btn svg{width:18px}.help-btn{display:none}.workspace{display:flex;flex-direction:column;gap:13px}.stage-area{order:0}.paper-panel{order:1}.chapter-row{height:37px;margin-bottom:7px;padding:3px 4px 0}.chapter-picker{font-size:15px}.chapter-picker strong{font-size:19px}.stars{gap:6px}.stars svg{width:20px}.canvas-frame{border-radius:12px}.canvas-hint{font-size:16px;left:15px;top:12px}.canvas-hint span{font-size:27px}.canvas-caption{right:9px;bottom:9px;padding:8px 12px;border-radius:18px}.canvas-caption strong{font-size:18px;letter-spacing:-.8px}.canvas-caption>span{font-size:8px}.stage-footer{font-size:10px;padding-top:8px}.stage-footer button{font-size:10px}.tools{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;padding:16px}.tools h2{font-size:27px;margin:0;align-self:center;grid-column:1/-1}.tools h2 span{display:inline-block;padding:3px 12px}.tools-intro{grid-column:1/-1;margin:0;font-size:13px}.tool-pair{gap:8px}.tool{height:76px}.swatches{margin:0;gap:7px;grid-template-columns:repeat(4,1fr);align-items:center}.swatches button{height:40px;padding:5px}.small-title{grid-column:1/-1;margin:0;display:none}.presets{grid-column:1/-1;gap:14px}.presets button{flex-direction:row;font-size:12px;gap:8px}.presets button>div{height:58px;width:54px}.presets .thumb{padding:5px}.edit-actions{grid-column:1/-1;margin:0;padding:9px 0;gap:12px}.edit-actions button{height:34px;font-size:12px}.setting-row{grid-column:1/-1;margin:0}.segments button{height:34px;font-size:12px}.setting-row>span{font-size:13px}.launch{grid-column:1/-1;margin:0;height:55px}.error{grid-column:1/-1;padding:0}.observation{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;padding:17px}.observation h2{font-size:27px;grid-column:1/-1;margin:0}.observation .tools-intro{grid-column:1/-1;margin:0}.creature-caption{grid-column:1/-1;margin:3px 0}.distance{margin:0;grid-column:1}.distance strong{font-size:48px}.distance>span{font-size:10px}.progress-track{grid-column:1;grid-row:5;align-self:center}.telemetry{grid-column:2;grid-row:4/6;margin:6px 0 0}.note{grid-column:1/-1;margin:7px 0;font-size:12px}.note>span{display:inline;margin-right:10px}.observe-controls{grid-column:1/-1}.observe-controls button{font-size:12px}.observation-bottom{grid-column:1/-1;padding-top:5px;display:grid;grid-template-columns:1fr 1fr}.observation-bottom .text-btn{grid-column:1/-1}.observation-bottom>button:not(.text-btn){min-height:42px;font-size:12px;padding:8px}.ghost-toggle{grid-column:1/-1;margin:7px 0}.run-label{font-size:10px;padding:6px 9px;top:12px;left:12px}.result-sheet{padding:15px 18px 10px;max-width:350px}.result-mark{display:none}.result-sheet h2{font-size:25px}.result-sheet>p{font-size:10px}.result-sheet>.stars{margin:9px 0 0}.result-sheet>.stars svg{width:23px;height:23px}.result-sheet .result-tip{font-size:10px;margin:7px 0;padding:6px}.result-actions>button{min-height:36px;font-size:11px;padding:6px}.result-sheet>.text-btn{font-size:10px;margin-top:3px;min-height:24px}.modal-inner{padding:20px}.modal-heading h2{font-size:28px}.course-list>button{gap:11px;padding:10px 7px;min-height:74px}.course-list strong{font-size:13px}.course-list small{font-size:9px}.course-list .stars{gap:2px}.course-list .stars svg{width:14px}.course-list>button>svg{display:none}.collection-grid{grid-template-columns:repeat(2,1fr)}.workspace:fullscreen{display:block;padding:12px}.workspace:fullscreen .paper-panel{margin-top:15px}.workspace:fullscreen canvas{max-height:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
