@import"https://fonts.googleapis.com/css2?family=Inter:wght@500;600;800&family=Caveat:wght@600;700&display=swap";:root{--ink:#161412;--paper:#fdfcfa;--accent:#d95b2e;--accent2:#f08a5f;--grey:#6f6a62;--hair:#eceae6;--wash:#f8f5f0;--hand:"Caveat",cursive;--font:"Inter",system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:var(--paper)}.studio{display:flex;height:100vh;width:100vw;background:var(--paper)}.canvas-wrap{flex:1;min-width:0;height:100%;position:relative}.lesson-chip{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:5;background:#fff;border:1.5px solid var(--hair);border-radius:999px;padding:8px 20px;display:flex;align-items:center;gap:14px;box-shadow:0 10px 30px -18px #16141259;pointer-events:none}.lesson-chip strong{font-size:14px;font-weight:800}.lesson-chip .hand{font-family:var(--hand);font-weight:700;font-size:19px;color:var(--accent)}.panel{width:360px;flex:0 0 360px;border-left:1.5px solid var(--hair);padding:22px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;background:var(--paper)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);white-space:nowrap}.brand .lg-w{line-height:1}.brand .lg-w b{display:block;font-family:var(--font);font-weight:800;font-size:14px;letter-spacing:-.01em}.brand .lg-w i{display:block;font-style:normal;font-family:var(--hand);font-weight:700;font-size:21px;color:var(--accent);margin-top:-2px}.brand .studio-tag{font-family:var(--hand);font-size:16px;color:var(--grey);align-self:flex-end;margin-bottom:2px}.credits{font-family:var(--hand);font-weight:700;font-size:20px;color:var(--grey);background:#fff;border:1.5px solid var(--hair);border-radius:999px;padding:5px 16px;cursor:pointer;text-align:left;align-self:flex-start}.credits:hover{border-color:var(--accent);color:var(--accent)}.credits .plus{font-family:var(--font);font-weight:800;font-size:14px;margin-left:4px;color:var(--accent)}.tabs{display:flex;gap:8px}.tab{flex:1;font-family:var(--font);font-weight:600;font-size:13.5px;padding:10px;border:1.5px solid var(--hair);border-radius:999px;background:#fff;color:var(--grey);cursor:pointer}.tab:hover{border-color:var(--accent);color:var(--accent)}.tab.on{background:var(--ink);border-color:var(--ink);color:#fff}.fld{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--grey)}.fld input{font-family:var(--font);font-size:15px;padding:12px 16px;border:1.5px solid var(--hair);border-radius:14px;color:var(--ink);background:#fff;outline:none}.fld input:focus{border-color:var(--accent)}.btn{font-family:var(--font);font-weight:800;font-size:15px;padding:14px 20px;border:none;border-radius:999px;background:var(--accent);color:#fff;cursor:pointer;transition:transform .15s}.btn:hover{transform:rotate(-1.2deg) scale(1.02)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.ghost{background:#fff;color:var(--ink);border:1.5px solid var(--hair);font-weight:600}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.drop{border:2px dashed #ddd8d0;border-radius:16px;min-height:110px;background:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--hand);font-weight:600;font-size:20px;line-height:1.3;color:var(--grey);cursor:pointer;padding:10px;overflow:hidden}.drop:hover{border-color:var(--accent);color:var(--accent)}.drop em{font-size:15px;font-style:normal;color:#a5a099;font-family:var(--font)}.drop.hasimg{border-style:solid;border-color:var(--hair);padding:0}.drop img{max-width:100%;max-height:160px;display:block;object-fit:contain}.traced{font-family:var(--hand);font-weight:700;font-size:19px;color:var(--accent)}.err{color:#c4362e;font-size:13.5px}.empty{font-family:var(--hand);font-weight:600;font-size:20px;color:#a5a099;line-height:1.4;margin-top:8px}.steps{background:#fff;border:1.5px solid var(--hair);border-radius:18px;padding:20px;box-shadow:0 16px 40px -30px #16141259}.stepnav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.stepnav span{font-family:var(--hand);font-weight:700;font-size:21px;color:var(--accent)}.stepnav button{width:40px;height:40px;border:1.5px solid var(--hair);border-radius:999px;background:#fff;color:var(--ink);font-size:20px;cursor:pointer;line-height:1}.stepnav button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.stepnav button:disabled{opacity:.35;cursor:not-allowed}.preview{border:1.5px solid var(--hair);border-radius:14px;background:var(--paper);padding:6px;margin-bottom:14px;position:relative}.preview svg{display:block;width:100%;height:auto;aspect-ratio:1}.preview-cap{position:absolute;right:12px;bottom:8px;font-family:var(--hand);font-weight:600;font-size:16px;color:#b5afa7}.steps h3{font-size:19px;font-weight:800;letter-spacing:-.01em;margin:0 0 6px}.steps p{font-size:14.5px;color:var(--grey);line-height:1.55;margin:0}.tip{font-family:var(--hand);font-weight:700;font-size:20px;color:var(--accent);margin-top:12px}.hint{font-size:12.5px;color:#a5a099;margin-top:14px;line-height:1.45}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#16141273;display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.modal{background:var(--paper);border:1.5px solid var(--hair);border-radius:18px;max-width:420px;width:100%;padding:28px;text-align:center;box-shadow:0 30px 70px -40px #0009}.modal h3{font-size:23px;font-weight:800;margin:0 0 6px}.modal p{color:var(--grey);font-size:14px;margin:0 0 18px;line-height:1.5}.pack{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1.5px solid var(--hair);border-radius:14px;padding:14px 16px;margin-bottom:11px;cursor:pointer}.pack:hover{border-color:var(--accent)}.pack .l{text-align:left}.pack .l b{font-size:15.5px}.pack .l span{display:block;color:var(--grey);font-size:12.5px}.pack .amt{font-weight:800;font-size:19px;color:var(--accent)}.modal .close{margin-top:6px;color:var(--grey);font-size:13px;cursor:pointer;background:none;border:none}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:999px;font-size:14px;z-index:60}@media (max-width:820px){.studio{flex-direction:column-reverse}.panel{width:100%;flex:0 0 auto;border-left:none;border-top:1.5px solid var(--hair);max-height:48vh}.canvas-wrap{flex:1}.lesson-chip{top:8px;padding:6px 14px}.lesson-chip strong{font-size:12.5px}}
