:root{--bg-0: #14141a;--bg-1: #1b1c25;--bg-2: #232430;--bg-3: #2c2d3a;--bg-glass: rgba(35, 36, 48, .72);--fg-strong: #f4f4f8;--fg-default: #d8d9e2;--fg-muted: #9a9bab;--fg-faint: #6b6c7c;--accent: #a78bfa;--accent-strong: #8b5cf6;--accent-soft: rgba(167, 139, 250, .18);--danger: #f87171;--success: #34d399;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--r-pill: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "JetBrains Mono", "Fira Code", Menlo, monospace;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);--shadow-md: 0 6px 16px rgba(0, 0, 0, .32);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .42);--shadow-focus: 0 0 0 3px rgba(167, 139, 250, .45);--ease-out: cubic-bezier(.22, 1, .36, 1);--t-fast: .12s;--t-base: .2s}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:1.55;color:var(--fg-default);background-color:var(--bg-0);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}textarea{font:inherit;color:inherit}kbd{font-family:var(--font-mono);font-size:.85em;padding:1px 6px;border-radius:var(--r-sm);background:var(--bg-3);border:1px solid rgba(255,255,255,.08);color:var(--fg-strong)}.app{position:relative;min-height:100%;background:radial-gradient(1100px 700px at 12% -10%,rgba(167,139,250,.1),transparent 60%),radial-gradient(900px 600px at 110% 10%,rgba(56,189,248,.08),transparent 65%),radial-gradient(800px 600px at 50% 110%,rgba(244,114,182,.06),transparent 65%),var(--bg-0)}.app:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.045) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;mask-image:radial-gradient(ellipse at center,rgba(0,0,0,1) 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,rgba(0,0,0,1) 30%,transparent 75%)}.skip-link{position:absolute;inset-inline-start:var(--s-3);inset-block-start:var(--s-3);padding:var(--s-2) var(--s-3);background:var(--bg-3);color:var(--fg-strong);border-radius:var(--r-md);text-decoration:none;transform:translateY(-200%);transition:transform var(--t-base) var(--ease-out);z-index:1000}.skip-link:focus-visible{transform:translateY(0)}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--r-sm)}.board{position:relative;width:100vw;height:100vh;overflow:auto}.note{position:absolute;width:280px;min-height:160px;border-radius:var(--r-lg);background:var(--note-body);color:var(--note-text);box-shadow:0 1px 1px #0000002e,0 4px 10px #00000038,0 18px 40px #00000052;transition:transform var(--t-base) var(--ease-out),box-shadow var(--t-base) var(--ease-out);user-select:none;isolation:isolate}.note.is-selected{z-index:2;box-shadow:0 1px 1px #0000002e,0 6px 14px #00000047,0 22px 50px #0000006b,0 0 0 2px var(--accent);transform:translateY(-1px)}.note.is-pending{opacity:.7}.note-header{display:flex;align-items:center;justify-content:space-between;padding:var(--s-2) var(--s-3);background:var(--note-header);border-radius:var(--r-lg) var(--r-lg) 0 0;cursor:grab}.note-header{touch-action:none}.note-header:active{cursor:grabbing}.toolbar{position:fixed;left:var(--s-5);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--s-3);padding:var(--s-3);background:var(--bg-glass);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-radius:var(--r-pill);box-shadow:var(--shadow-md);z-index:50}.toolbar-add{width:44px;height:44px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#1a1326;box-shadow:0 4px 12px #a78bfa73;transition:transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.toolbar-add:hover{transform:scale(1.05);box-shadow:0 6px 16px #a78bfa8c}.toolbar-add:active{transform:scale(.95)}.toolbar-add:disabled{opacity:.6;cursor:progress;transform:none}.toolbar-divider{width:24px;height:1px;background:#ffffff14}.toolbar-colors{display:flex;flex-direction:column;gap:var(--s-2)}.toolbar-color{width:32px;height:32px;border-radius:var(--r-pill);background:var(--swatch);border:2px solid transparent;box-shadow:0 1px 2px #0000004d,inset 0 0 0 1px #ffffff1f;transition:transform var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}.toolbar-color:hover:not(:disabled){transform:scale(1.12)}.toolbar-color.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft),0 1px 2px #0000004d}.toolbar-color:disabled{opacity:.35;cursor:not-allowed}.board-loading,.board-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-3);color:var(--fg-muted)}.board-loading-spin{animation:spin 1.2s linear infinite;color:var(--accent)}.board-loading span{font-size:14px;letter-spacing:.02em}.board-empty-card{width:96px;height:96px;border-radius:var(--r-lg);display:grid;place-items:center;background:var(--bg-2);border:1px dashed rgba(255,255,255,.12);color:var(--fg-faint);margin-bottom:var(--s-3)}.board-empty-title{font-size:18px;font-weight:600;color:var(--fg-strong)}.board-empty-text{font-size:14px}.toast-stack{position:fixed;bottom:var(--s-5);right:var(--s-5);display:flex;flex-direction:column;gap:var(--s-2);z-index:100;max-width:360px}.toast{display:flex;align-items:flex-start;gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-md);box-shadow:var(--shadow-md);color:var(--fg-default);animation:toast-in var(--t-base) var(--ease-out)}.toast-info{border-inline-start:3px solid var(--accent)}.toast-error{border-inline-start:3px solid var(--danger)}.toast-success{border-inline-start:3px solid var(--success)}.toast-body{flex:1}.toast-title{font-weight:600;color:var(--fg-strong);display:block}.toast-message{font-size:13px;margin-top:2px;color:var(--fg-muted)}.toast-action{font-weight:600;color:var(--accent);padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);transition:background-color var(--t-fast)}.toast-action:hover{background:var(--accent-soft)}.toast-close{width:24px;height:24px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;color:var(--fg-muted)}.toast-close:hover{background:#ffffff0f;color:var(--fg-strong)}.toast-close-icon{transform:rotate(45deg)}body.is-dragging,body.is-dragging *{user-select:none!important;-webkit-user-select:none!important;cursor:grabbing!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media(max-width:640px){.toolbar{top:auto;bottom:var(--s-5);left:50%;transform:translate(-50%);flex-direction:row}.toolbar-divider{width:1px;height:24px}.toolbar-colors{flex-direction:row}.note{width:min(86vw,320px)}}.note-saving{display:inline-flex;align-items:center;gap:var(--s-2);font-size:12px;font-weight:500;letter-spacing:.01em;color:inherit;background:transparent;pointer-events:none;min-height:20px}.note-saving svg{animation:spin 1.1s linear infinite}.note-delete{width:28px;height:28px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;color:inherit;opacity:.6;transition:opacity var(--t-fast) var(--ease-out),background-color var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out)}.note-delete:hover{opacity:1;background:#00000014}.note-delete:active{transform:scale(.94)}.note-body{padding:var(--s-3) var(--s-4) var(--s-4)}.note-body textarea{width:100%;background:transparent;border:none;outline:none;resize:none;color:inherit;font-size:15px;line-height:1.55;min-height:100px;overflow:hidden}.note-body textarea::placeholder{color:#00000059}.board{height:100dvh}.board-heading{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:22px 28px;pointer-events:none}.board-heading h1{font-size:24px;letter-spacing:-.7px;color:var(--fg-strong)}.board-heading p{font-size:13px;color:var(--fg-muted)}.board-heading #board-help{max-width:330px;font-size:12px}.board-count{display:inline-block;margin-left:10px;padding:1px 8px;border-radius:20px;background:var(--bg-3);color:var(--fg-muted);font-size:12px;vertical-align:middle}.primary-button{background:var(--accent);color:#1a1326;padding:10px 18px;border-radius:var(--r-md);font-weight:600;margin-top:10px}.primary-button:disabled{opacity:.6;cursor:progress}.note-body textarea{display:block;user-select:text}.note-error{font-size:12px;padding-top:8px}.note-error button{text-decoration:underline;font-weight:700}.board-empty{padding:110px 24px 120px;text-align:center}.toast-stack{max-height:50dvh;overflow-y:auto}.toast-action:disabled{opacity:.5;cursor:progress}@media(max-width:640px){.board-heading{padding:18px 20px}.board-heading #board-help{display:none}.toolbar{gap:8px;padding:10px;bottom:max(16px,env(safe-area-inset-bottom));max-width:calc(100vw - 16px)}.toolbar-color{width:30px;height:36px}.toolbar-colors{gap:6px}.toast-stack{bottom:96px;left:16px;right:16px;max-width:none}}.board-brand{display:flex;align-items:center;gap:12px;min-width:0}.board-logo{flex:0 0 auto;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}@media(max-width:640px){.board-brand{gap:10px}.board-logo{width:36px;height:36px}.board-brand p{max-width:250px;font-size:12px}}
