@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600&family=Kalam:wght@400;700&family=JetBrains+Mono:wght@400;500&display=swap";.cnm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:cnm-fade-in .18s ease}@keyframes cnm-fade-in{0%{opacity:0}to{opacity:1}}.cnm-modal{background:#131c2e;border:1px solid hsla(0,0%,100%,.09);border-radius:1.5rem;width:100%;max-width:540px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;animation:cnm-slide-up .22s cubic-bezier(.22,1,.36,1);box-shadow:0 32px 72px rgba(0,0,0,.6),inset 0 0 0 1px hsla(0,0%,100%,.04)}@keyframes cnm-slide-up{0%{transform:translateY(28px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cnm-header{display:grid;grid-template-columns:2.25rem 1fr 2.25rem;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid hsla(0,0%,100%,.06);flex-shrink:0;grid-gap:.5rem;gap:.5rem}.cnm-header-side{display:flex;align-items:center}.cnm-header-side--right{justify-content:flex-end}.cnm-title{font-size:.9375rem;font-weight:700;color:#f1f5f9;margin:0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cnm-back-btn{background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.08);color:#94a3b8;width:2.25rem;height:2.25rem;border-radius:.625rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,color .15s}.cnm-back-btn:hover{background:hsla(0,0%,100%,.13);color:#f1f5f9}.cnm-close-btn{background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.08);color:#64748b;font-size:1.125rem;cursor:pointer;line-height:1;width:2.25rem;height:2.25rem;border-radius:.625rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,color .15s}.cnm-close-btn:hover{background:hsla(0,0%,100%,.13);color:#f1f5f9}.cnm-body{padding:1.25rem 1.5rem 1.5rem;overflow-y:auto;flex:1 1}.cnm-body::-webkit-scrollbar{width:4px}.cnm-body::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.cnm-body::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.1);border-radius:2px}.cnm-body--compose{display:flex;flex-direction:column;gap:1.125rem}.cnm-instructions{font-size:.9375rem;color:#94a3b8;margin:0 0 1.25rem}.cnm-instructions strong{color:#f1f5f9}.cnm-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:.4rem;gap:.4rem;padding:.25rem}.cnm-slot{aspect-ratio:1;border-radius:.35rem;border:1.5px solid rgba(0,0,0,0);cursor:pointer;transition:transform .12s,box-shadow .12s}.cnm-slot--free{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.25)}.cnm-slot--free:hover{background:rgba(99,102,241,.25);border-color:rgba(99,102,241,.6);transform:scale(1.1);box-shadow:0 0 0 2px rgba(99,102,241,.3)}.cnm-slot--occupied{background:rgba(99,102,241,.4);border-color:rgba(99,102,241,.55);cursor:not-allowed;opacity:.45}.cnm-no-slots{font-size:.875rem;color:#64748b;text-align:center;margin-top:1rem}.cnm-control-group{display:flex;flex-direction:column;gap:.5rem}.cnm-label{font-size:.75rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em}.cnm-color-row{display:flex;gap:.5rem;flex-wrap:wrap}.cnm-color-dot{width:1.75rem;height:1.75rem;border-radius:50%;border:2px solid rgba(0,0,0,0);cursor:pointer;transition:transform .12s,box-shadow .12s}.cnm-color-dot:hover{transform:scale(1.2)}.cnm-color-dot--active{transform:scale(1.25);box-shadow:0 0 0 3px hsla(0,0%,100%,.3),0 2px 8px rgba(0,0,0,.3)}.cnm-emoji-tabs{display:flex;gap:.3rem;align-items:center}.cnm-emoji-tab-btn{width:2.25rem;height:2.25rem;border-radius:.5rem;border:1px solid hsla(0,0%,100%,.08);background:hsla(0,0%,100%,.04);font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s}.cnm-emoji-tab-btn:hover{background:hsla(0,0%,100%,.1)}.cnm-emoji-tab-btn--active{background:rgba(99,102,241,.2);border-color:rgba(99,102,241,.45)}.cnm-emoji-clear-btn{margin-left:auto;padding:.2rem .5rem;border-radius:.375rem;border:1px solid rgba(239,68,68,.3);background:rgba(239,68,68,.1);color:#f87171;font-size:.75rem;cursor:pointer;transition:background .12s}.cnm-emoji-clear-btn:hover{background:rgba(239,68,68,.2)}.cnm-emoji-row{display:flex;flex-wrap:wrap;gap:.3rem}.cnm-emoji-btn{width:2.25rem;height:2.25rem;border:1px solid rgba(0,0,0,0);border-radius:.5rem;background:hsla(0,0%,100%,.04);font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s,transform .1s}.cnm-emoji-btn:hover{background:hsla(0,0%,100%,.1);transform:scale(1.15)}.cnm-emoji-btn--active{background:rgba(99,102,241,.25);border-color:rgba(99,102,241,.5);transform:scale(1.15)}.cnm-font-row{display:flex;gap:.5rem;flex-wrap:wrap}.cnm-font-btn{padding:.35rem .875rem;border-radius:.5rem;border:1px solid hsla(0,0%,100%,.1);background:hsla(0,0%,100%,.05);color:#94a3b8;font-size:.9rem;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.cnm-font-btn:hover{background:hsla(0,0%,100%,.1);color:#f1f5f9}.cnm-font-btn--active{background:rgba(99,102,241,.2);border-color:rgba(99,102,241,.5);color:#a5b4fc}.cnm-postit-preview{width:100%;aspect-ratio:1/1;border-radius:1rem;padding:1.25rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0;position:relative;box-shadow:4px 6px 18px rgba(0,0,0,.4),inset 0 -2px 0 rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.25);overflow:hidden}.cnm-postit-preview:before{content:"";position:absolute;top:0;left:0;right:0;height:.4rem;background:rgba(0,0,0,.13);border-radius:1rem 1rem 0 0}.cnm-postit-emoji{font-size:1.875rem;line-height:1;flex-shrink:0}.cnm-postit-title{width:100%;background:rgba(0,0,0,0);border:none;border-bottom:1px dashed rgba(0,0,0,.2);outline:none;font-size:1.0625rem;font-weight:700;font-family:inherit;color:rgba(0,0,0,.8);padding:0 0 .35rem;flex-shrink:0}.cnm-postit-title::placeholder{color:rgba(0,0,0,.35);font-weight:400}.cnm-postit-content{width:100%;background:rgba(0,0,0,0);border:none;outline:none;font-size:1rem;color:rgba(0,0,0,.75);resize:none;line-height:1.65;flex:1 1;min-height:0}.cnm-postit-content::placeholder{color:rgba(0,0,0,.35)}.cnm-char-count{font-size:.75rem;color:rgba(0,0,0,.4);text-align:right;flex-shrink:0}.cnm-char-count--warn{color:#dc2626;font-weight:700}.cnm-error{font-size:.875rem;color:#f87171;background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.2);border-radius:.625rem;padding:.625rem .875rem;margin:0}.cnm-footer{display:flex;justify-content:flex-end;gap:.625rem;padding:1rem 1.5rem 1.25rem;border-top:1px solid hsla(0,0%,100%,.06);flex-shrink:0}.cnm-cancel-btn{padding:.625rem 1.25rem;border-radius:.75rem;border:1px solid hsla(0,0%,100%,.1);background:hsla(0,0%,100%,.05);color:#64748b;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.cnm-cancel-btn:hover{background:hsla(0,0%,100%,.09);color:#94a3b8}.cnm-cancel-btn:disabled{opacity:.4;cursor:not-allowed}.cnm-submit-btn{padding:.625rem 1.375rem;border-radius:.75rem;border:none;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s,box-shadow .15s;box-shadow:0 4px 14px rgba(99,102,241,.35)}.cnm-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 6px 20px rgba(99,102,241,.45)}.cnm-submit-btn:active:not(:disabled){transform:translateY(0)}.cnm-submit-btn:disabled{opacity:.4;cursor:not-allowed}.cnm-discard-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3100;background:#1e293b;border:1px solid rgba(239,68,68,.3);border-radius:1rem;padding:1.5rem;width:min(90vw,340px);box-shadow:0 20px 48px rgba(0,0,0,.7);animation:cnm-slide-up .18s cubic-bezier(.22,1,.36,1)}.cnm-discard-text{font-size:.9375rem;font-weight:600;color:#f1f5f9;margin:0 0 1.25rem;text-align:center}.cnm-discard-actions{display:flex;gap:.625rem}.cnm-discard-cancel{flex:1 1;padding:.625rem;border-radius:.625rem;border:1px solid hsla(0,0%,100%,.1);background:hsla(0,0%,100%,.06);color:#94a3b8;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.cnm-discard-cancel:hover{background:hsla(0,0%,100%,.1)}.cnm-discard-confirm{flex:1 1;padding:.625rem;border-radius:.625rem;border:none;background:rgba(239,68,68,.85);color:#fff;font-size:.875rem;font-weight:700;cursor:pointer;transition:opacity .15s}.cnm-discard-confirm:hover{opacity:.88}