:root{--cream:#faf7f2;--white:#fff;--card-border:#ede9e3;--coral:#e07b39;--coral-light:#fef0e8;--coral-dark:#c4622a;--purple:#6b3fa0;--purple-light:#f3eef9;--purple-mid:#9b6dc5;--mint:#3db07c;--mint-light:#eaf6ef;--blue:#4a90d9;--blue-light:#ebf4fd;--yellow:#f5c842;--yellow-light:#fef9e7;--text:#2d2826;--text-mid:#6b6165;--text-muted:#a09aa5;--gen-bg:#f2ede6;--gen-card:#fdfaf6;--gen-border:#ddd4c8;--gen-border-md:#c8bdb0;--gen-text:#2c2018;--gen-muted:#8a7c6e;--gen-subtle:#f8f3ee;--terra:#b56b42;--terra-light:#f9efe7;--terra-dark:#8a4820;--terra-mid:#d4956c;--sage:#6a9470;--sage-light:#ebf3ec;--sage-dark:#3a5c40;--brown:#8b7055;--brown-light:#f5efe6;--rose:#c48a80;--rose-light:#faeeeb;--plum:#7a5a94;--plum-light:#f2edf8;--font:"Nunito", "Segoe UI", system-ui, sans-serif;--shadow-sm:0 1px 4px #2c20160f;--shadow-md:0 4px 16px #2c201612;--shadow-lg:0 8px 32px #2c201617;--shadow-gen:0 2px 12px #2c20160f;--r-sm:10px;--r-md:16px;--r-lg:22px;--r-full:999px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--text);background:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:15px;line-height:1.6}#root{width:100%;min-height:100svh}h1,h2,h3,h4{font-family:var(--font);margin:0;line-height:1.2}p,ul,ol{margin:0}button{font-family:var(--font);cursor:pointer}input,select{font-family:var(--font)}.kl-chip{transition:transform .12s,box-shadow .12s,background .12s,border-color .12s}.kl-chip:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #0000001a}.kl-chip:active:not(:disabled){transform:translateY(0)}.kl-type-chip{transition:transform .12s,box-shadow .12s,background .12s,border-color .12s}.kl-type-chip:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 14px #0000001a}.kl-type-chip:active:not(:disabled){transform:translateY(0)}.kl-btn{transition:transform .12s,box-shadow .12s,opacity .12s}.kl-btn:hover:not(:disabled){opacity:.95;transform:translateY(-2px);box-shadow:0 6px 20px #e07b3959}.kl-btn:active:not(:disabled){transform:translateY(0)}.kl-btn:disabled{opacity:.55;cursor:not-allowed}.kl-ghost-btn{transition:transform .12s,background .12s,color .12s}.kl-ghost-btn:hover:not(:disabled){transform:translateY(-1px);background:var(--purple)!important;color:#fff!important}.kl-gen-input{border:1.5px solid var(--gen-border);width:100%;font-size:14px;font-family:var(--font);color:var(--gen-text);background:var(--gen-card);border-radius:12px;padding:11px 14px;transition:border-color .15s}.kl-gen-input:focus{border-color:var(--terra);outline:none;box-shadow:0 0 0 3px #b56b421a}.kl-gen-input::placeholder{color:var(--gen-muted)}.kl-gen-chip{transition:transform .12s,box-shadow .12s,background .12s,border-color .12s}.kl-gen-chip:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #2c20161a}.kl-gen-type{transition:transform .12s,box-shadow .12s,background .12s,border-color .12s}.kl-gen-type:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 14px #2c20161a}@keyframes card-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kl-img-card{animation:.3s both card-appear}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce-dots{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{opacity:.7;transform:scale(.9)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(.9)}}.kl-fade-in{animation:.4s both fade-in-up}.kl-loading-icon{animation:1.8s ease-in-out infinite pulse-ring;display:inline-block}.kl-dot{background:var(--coral);border-radius:50%;width:8px;height:8px;margin:0 3px;animation:1.4s ease-in-out infinite bounce-dots;display:inline-block}.kl-dot:nth-child(2){animation-delay:.16s}.kl-dot:nth-child(3){animation-delay:.32s}@media print{body{background:#fff!important;margin:0!important}.no-print{display:none!important}}.nb-book *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.nb-book{max-width:780px;margin:0 auto;font-family:Nunito,Segoe UI,system-ui,sans-serif}.nb-cover{border-radius:18px;margin-bottom:24px;overflow:hidden;box-shadow:0 20px 60px #0003,0 4px 16px #0000001a}.nb-page{background:#fff;border-radius:14px;margin-bottom:20px;position:relative;box-shadow:0 4px 20px #00000012,0 1px 4px #0000000a}@media print{@page{size:A4 portrait;margin:14mm 18mm}.nb-book{width:100%!important;max-width:none!important;margin:0!important}.nb-cover{page-break-after:always;break-after:page;box-shadow:none!important;border-radius:0!important;width:100%!important;min-height:100svh!important;margin:0!important}.nb-page{page-break-after:always;break-after:page;box-shadow:none!important;border-radius:0!important;width:100%!important;margin:0!important;padding:0!important}.nb-page:last-of-type{page-break-after:avoid;break-after:avoid}.nb-draw-box{background:#fff!important;border:1.5px dashed #999!important}.nb-coloring-area{background:#fff!important;border:2px dashed #555!important}}.nb-printing .nb-cover{box-shadow:none!important;border-radius:0!important;margin-bottom:0!important}.nb-printing .nb-page{box-shadow:none!important;border-bottom:none!important;border-radius:0!important;margin-bottom:0!important}.nb-printing .nb-draw-box{background:#fff!important;border:1.5px dashed #aaa!important}.nb-printing .nb-page-spacer{display:none!important}
