*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-primary, "Space Grotesk", system-ui, sans-serif);transition:background .5s ease,color .5s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--color-bg: #08080f;--color-surface: rgba(255, 255, 255, .04);--color-surface-hover: rgba(255, 255, 255, .07);--color-border: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .18);--color-text: #f0f0f8;--color-text-muted: #6b6f8e;--color-accent: #00d4ff;--dot-color: rgba(255, 255, 255, .05);--toolbar-bg: rgba(12, 12, 22, .85);--modal-bg: rgba(10, 10, 18, .97);--surface-card-radius: 16px;--surface-panel-radius: 20px;--surface-pill-radius: 28px;--surface-button-radius: 12px;--surface-blur: 20px;--surface-strong-blur: 24px;--surface-soft-blur: 12px;--surface-overlay-blur: 8px;--surface-card-hover-shadow: 0 12px 50px -8px var(--card-glow, rgba(255,255,255,.1)), 0 4px 20px -4px rgba(0,0,0,.4);--surface-panel-shadow: 0 8px 40px rgba(0, 0, 0, .5), 0 1px 0 rgba(255, 255, 255, .05) inset;--surface-modal-shadow: 0 24px 80px rgba(0, 0, 0, .7), 0 1px 0 rgba(255, 255, 255, .06) inset;--surface-hover-lift: -3px;--bg-dot-opacity: 1;--bg-blob-opacity: .7;--nav-bg: var(--color-surface);--nav-border: var(--color-border);--nav-text: var(--color-text);--nav-text-muted: var(--color-text-muted);--nav-accent: var(--color-accent);--nav-hover-bg: var(--color-surface-hover);--nav-hover-text: var(--color-text);--nav-dropdown-bg: var(--toolbar-bg);--nav-dropdown-border: var(--color-border);--nav-sidebar-bg: var(--toolbar-bg);--nav-sidebar-text: var(--color-text);--nav-sidebar-border: var(--color-border);--footer-bg: var(--color-surface);--footer-border: var(--color-border);--footer-text: var(--color-text);--footer-text-muted: var(--color-text-muted);--footer-chip-bg: var(--color-bg);--footer-accent: var(--color-accent);--footer-link-hover: var(--color-text);--selection-bg: rgba(0, 212, 255, .25);--selection-text: var(--color-text);--blob-1: radial-gradient(circle, #1a0050 0%, transparent 70%);--blob-2: radial-gradient(circle, #002050 0%, transparent 70%);--blob-3: radial-gradient(circle, #200040 0%, transparent 70%);--card-note-color: #fbbf24;--card-video-color: #f43f5e;--card-music-color: #a78bfa;--card-image-color: #34d399;--card-link-color: #60a5fa;--spring: cubic-bezier(.16, 1, .3, 1)}.bg-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;transition:background .5s ease,background-image .5s ease}.bg-blob{position:absolute;border-radius:50%;filter:blur(140px);opacity:var(--bg-blob-opacity);will-change:transform}.bg-blob-1{width:700px;height:700px;top:-15%;left:-10%;background:var(--blob-1);animation:blob-drift-1 24s ease-in-out infinite alternate}.bg-blob-2{width:500px;height:500px;top:40%;right:-8%;background:var(--blob-2);animation:blob-drift-2 18s ease-in-out infinite alternate}.bg-blob-3{width:450px;height:450px;bottom:-10%;left:30%;background:var(--blob-3);animation:blob-drift-3 28s ease-in-out infinite alternate}.bg-dots{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--dot-color) 1px,transparent 1px);background-size:28px 28px;opacity:var(--bg-dot-opacity)}@keyframes blob-drift-1{0%{transform:translate(0) scale(1)}33%{transform:translate(60px,40px) scale(1.05)}66%{transform:translate(30px,80px) scale(.97)}to{transform:translate(80px,30px) scale(1.03)}}@keyframes blob-drift-2{0%{transform:translate(0) scale(1)}40%{transform:translate(-70px,-50px) scale(1.08)}70%{transform:translate(-40px,60px) scale(.95)}to{transform:translate(-100px,20px) scale(1.04)}}@keyframes blob-drift-3{0%{transform:translate(0) scale(1)}30%{transform:translate(50px,-60px) scale(1.06)}60%{transform:translate(-60px,-30px) scale(.96)}to{transform:translate(30px,-80px) scale(1.02)}}.card{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--surface-card-radius);overflow:visible;backdrop-filter:blur(var(--surface-blur));-webkit-backdrop-filter:blur(var(--surface-blur));display:flex;flex-direction:column;height:100%;transition:transform .3s var(--spring),box-shadow .3s var(--spring),border-color .3s var(--spring);will-change:transform}.card:hover{border-color:var(--card-accent, var(--color-border-hover));box-shadow:var(--surface-card-hover-shadow)}.board:not(.admin-mode) .card:hover{transform:translateY(var(--surface-hover-lift))}.card-header{padding:11px 14px 10px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:8px;flex-shrink:0;cursor:grab;-webkit-user-select:none;user-select:none;transition:border-color .3s ease}.card-header:active{cursor:grabbing}.card-type-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;transition:box-shadow .3s ease}.card-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .3s ease}.card:hover .card-title{color:var(--color-text)}.card-body{flex:1;overflow:visible;padding:14px;position:relative}.card-body-fill{padding:0;overflow:hidden}.card-delete-btn{width:22px;height:22px;border-radius:calc(var(--surface-button-radius) - 4px);border:1px solid var(--color-border);background:#f43f5e1f;color:#f43f5e;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;transition:all .2s ease;padding:0}.card-delete-btn:hover{background:#f43f5e47;border-color:#f43f5e;transform:scale(1.1)}@media (max-width: 768px){.card-delete-btn{width:32px;height:32px;font-size:20px;border-radius:8px}}.note-card-text{width:100%;height:100%;background:transparent;border:none;outline:none;resize:none;color:var(--color-text);font-size:14px;line-height:1.7;font-family:Inter,sans-serif;caret-color:var(--color-accent);overflow-y:auto}.note-card-text::placeholder{color:var(--color-text-muted);opacity:.6}.note-card-text::-webkit-scrollbar{width:4px}.note-card-text::-webkit-scrollbar-track{background:transparent}.note-card-text::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.video-card-iframe{width:100%;height:100%;border:none;display:block}.video-card-input{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;text-align:center;padding:12px}.image-card-img{width:100%;height:100%;object-fit:cover;display:block}.toolbar{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:10px;padding:10px;background:linear-gradient(180deg,#ffffff0f,#ffffff03),var(--toolbar-bg);backdrop-filter:blur(var(--surface-strong-blur));-webkit-backdrop-filter:blur(var(--surface-strong-blur));border:1px solid var(--color-border-hover);border-radius:calc(var(--surface-pill-radius) + 4px);box-shadow:var(--surface-panel-shadow);animation:toolbar-enter .6s var(--spring) both}.toolbar-group{display:flex;align-items:center;gap:6px;padding:6px;border-radius:calc(var(--surface-pill-radius) - 8px);border:1px solid var(--color-border);background:linear-gradient(180deg,#ffffff0d,#fff0),var(--color-surface);box-shadow:inset 0 1px #ffffff0d}@keyframes toolbar-enter{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toolbar-enter-mobile{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes toolbar-sheet-enter{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.toolbar{left:12px;right:12px;transform:none;width:auto;max-width:none;max-width:calc(100vw - 24px);overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;-ms-overflow-style:none;padding:8px;gap:8px;justify-content:flex-start;animation:toolbar-enter-mobile .45s var(--spring) both}.toolbar::-webkit-scrollbar{display:none}.toolbar-group{padding:4px;gap:4px;min-width:max-content}}.toolbar-divider{width:1px;height:24px;background:var(--color-border);flex-shrink:0;margin:0 2px}.tool-btn{position:relative;width:48px;height:46px;border-radius:calc(var(--surface-button-radius) + 2px);border:1px solid transparent;background:#ffffff03;color:var(--color-text-muted);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .15s var(--spring),box-shadow .2s ease;flex-shrink:0;font-family:Space Grotesk,sans-serif;box-shadow:inset 0 1px #ffffff08}.tool-btn:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover);color:var(--color-text);transform:translateY(-1px);box-shadow:0 10px 24px #0000002e}.tool-btn:active{transform:translateY(0) scale(.97)}.tool-btn.active{background:linear-gradient(180deg,#ffffff0f,#fff0),var(--color-surface-hover);border-color:var(--color-accent);color:var(--color-accent);box-shadow:inset 0 1px #ffffff0f,0 12px 24px #0003}.tool-btn.active:after{content:"";position:absolute;bottom:5px;left:50%;transform:translate(-50%);width:14px;height:3px;border-radius:999px;background:var(--color-accent)}.tool-btn-icon{font-size:15px;line-height:1;font-weight:700}.tool-btn-label{font-size:9.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;line-height:1;opacity:.76}.tool-btn.active .tool-btn-label{opacity:1}.tool-btn-mobile{border-radius:16px}.draw-tools{position:fixed;top:50%;right:28px;transform:translateY(-50%);z-index:100;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:linear-gradient(180deg,#ffffff0f,#ffffff03),var(--toolbar-bg);backdrop-filter:blur(var(--surface-strong-blur));-webkit-backdrop-filter:blur(var(--surface-strong-blur));border:1px solid var(--color-border-hover);border-radius:calc(var(--surface-pill-radius) - 4px);box-shadow:var(--surface-panel-shadow);animation:draw-panel-enter .5s var(--spring) both}@keyframes draw-panel-enter{0%{opacity:0;transform:translateY(-50%) translate(20px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.color-dot{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s var(--spring),border-color .15s ease,box-shadow .15s ease;flex-shrink:0}.color-dot:hover{transform:scale(1.2)}.color-dot.active{border-color:var(--color-text);box-shadow:0 0 0 3px #ffffff26;transform:scale(1.1)}.mobile-builder-sheet{background:radial-gradient(circle at top right,rgba(255,255,255,.08),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015) 32%,transparent 100%),var(--toolbar-bg);border:1px solid var(--color-border-hover);box-shadow:var(--surface-panel-shadow);backdrop-filter:blur(var(--surface-strong-blur));-webkit-backdrop-filter:blur(var(--surface-strong-blur));overflow:hidden}.mobile-builder-sheet:before{content:"";position:absolute;top:0;left:18px;right:18px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);pointer-events:none}.mobile-builder-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mobile-builder-sheet-kicker{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent)}.mobile-builder-sheet-copy{margin-top:5px;font-size:12px;line-height:1.55;color:var(--color-text-muted)}.mobile-builder-section-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.mobile-builder-chip-row{display:flex;flex-wrap:wrap;gap:8px}.mobile-builder-chip-row>*{flex:1 1 112px;min-width:0}.mobile-color-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;justify-items:center}.website-toolbar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.website-toolbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.draw-tools-mobile .tool-btn,.text-tools-mobile .tool-btn{width:100%}.card-header-actions{display:flex;align-items:center;gap:4px}.card-mobile-action-row{display:flex;flex-wrap:wrap;gap:6px}.card-mobile-action-row .card-delete-btn{width:38px;height:38px;font-size:18px}@media (max-width: 520px){.website-toolbar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-unlock-btn{position:fixed;z-index:50;width:44px;height:44px;border-radius:50%;border:1px solid var(--color-border);background:var(--toolbar-bg);backdrop-filter:blur(var(--surface-soft-blur));-webkit-backdrop-filter:blur(var(--surface-soft-blur));color:var(--color-text-muted);cursor:grab;font-size:18px;display:flex;align-items:center;justify-content:center;transition:border-color .3s ease,box-shadow .3s ease,color .3s ease;box-shadow:var(--surface-panel-shadow);touch-action:none}.admin-unlock-btn:active{cursor:grabbing}.admin-unlock-btn:hover{border-color:var(--color-accent);color:var(--color-text);box-shadow:0 4px 20px #0006,0 0 16px #00d4ff26}.admin-unlock-btn.admin-active{border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 4px 20px #0006,0 0 20px #00d4ff40}.draw-canvas{position:absolute;top:0;right:0;bottom:0;left:0;cursor:crosshair;touch-action:none;z-index:10}.draw-canvas-inactive{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;touch-action:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top,rgba(255,255,255,.08),transparent 36%),#000000ad;backdrop-filter:blur(var(--surface-overlay-blur));-webkit-backdrop-filter:blur(var(--surface-overlay-blur));animation:overlay-enter .25s ease both}@keyframes overlay-enter{0%{opacity:0}to{opacity:1}}.modal{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015) 20%,transparent 44%),var(--modal-bg);border:1px solid var(--color-border-hover);border-radius:var(--surface-panel-radius);padding:24px;width:460px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow-y:auto;box-shadow:var(--surface-modal-shadow);animation:modal-enter .4s var(--spring) both}.modal:before{content:"";position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);pointer-events:none}@keyframes modal-enter{0%{opacity:0;transform:scale(.93) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal::-webkit-scrollbar{width:4px}.modal::-webkit-scrollbar-track{background:transparent}.modal::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.modal-title{font-size:20px;font-weight:800;color:var(--color-text);margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;letter-spacing:-.02em}.modal-close{width:34px;height:34px;border-radius:calc(var(--surface-button-radius) + 2px);border:1px solid var(--color-border-hover);background:linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface);color:var(--color-text-muted);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1;padding:0;flex-shrink:0}.modal-close:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover);color:var(--color-text);transform:translateY(-1px)}.field{margin-bottom:18px}.field-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:8px}.field-input{width:100%;padding:12px 14px;background:linear-gradient(180deg,#ffffff08,#fff0),var(--color-surface);border:1px solid var(--color-border-hover);border-radius:calc(var(--surface-button-radius) + 2px);color:var(--color-text);font-size:14px;font-family:Inter,sans-serif;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease;resize:vertical;box-shadow:inset 0 1px #ffffff08}.field-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #00d4ff1f,0 10px 24px #00000024;background:var(--color-surface-hover);transform:translateY(-1px)}.field-input::placeholder{color:var(--color-text-muted);opacity:.6}.field-input:read-only{cursor:default}.btn{padding:11px 18px;border-radius:calc(var(--surface-button-radius) + 2px);border:1px solid var(--color-border-hover);cursor:pointer;font-size:13px;font-weight:700;font-family:Space Grotesk,sans-serif;transition:background .2s ease,border-color .2s ease,transform .15s var(--spring),box-shadow .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(180deg,#ffffff14,#fff0),var(--color-accent);border-color:var(--color-accent);color:#08080f;box-shadow:0 14px 30px #00d4ff33}.btn-primary:hover{filter:brightness(1.06);box-shadow:0 16px 32px #00d4ff42}.btn-secondary{background:linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-secondary:hover{background:var(--color-surface-hover);border-color:var(--color-border-hover)}.card-type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:8px}.card-type-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px 8px;border-radius:var(--surface-panel-radius);border:1px solid var(--color-border);background:linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface);color:var(--color-text-muted);cursor:pointer;font-size:12px;font-weight:600;font-family:Space Grotesk,sans-serif;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s var(--spring),box-shadow .2s ease}.card-type-btn:hover{background:var(--color-surface-hover);border-color:var(--card-type-color, var(--color-accent));color:var(--color-text);transform:translateY(-3px);box-shadow:0 12px 30px -8px #0000006b,0 0 16px -4px var(--card-type-color, var(--color-accent))}.card-type-icon{font-size:28px;line-height:1}.studio-hero{margin-bottom:20px;padding:18px;border-radius:calc(var(--surface-panel-radius) + 2px);border:1px solid var(--color-border-hover);background:radial-gradient(circle at top right,rgba(255,255,255,.08),transparent 34%),linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface);box-shadow:inset 0 1px #ffffff0d}.studio-hero-title{font-size:22px;font-weight:800;line-height:1.1;color:var(--color-text);letter-spacing:-.03em}.studio-hero-copy{margin-top:8px;font-size:13px;line-height:1.6;color:var(--color-text-muted)}.studio-badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.studio-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface-hover);color:var(--color-text-muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.studio-tabbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding:6px;border-radius:calc(var(--surface-panel-radius) + 2px);border:1px solid var(--color-border);background:linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface)}.studio-tab{padding:10px 14px;border-radius:calc(var(--surface-button-radius) + 2px);border:1px solid transparent;background:transparent;color:var(--color-text-muted);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.studio-tab:hover{color:var(--color-text);background:#ffffff08}.studio-tab.active{background:var(--color-surface-hover);border-color:var(--color-border-hover);color:var(--color-text);box-shadow:inset 0 1px #ffffff0d}.studio-panel{padding:16px;border-radius:calc(var(--surface-panel-radius) - 2px);border:1px solid var(--color-border);background:linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface);box-shadow:inset 0 1px #ffffff0a}.studio-panel+.studio-panel{margin-top:12px}.studio-panel-title{font-size:14px;font-weight:700;color:var(--color-text)}.studio-panel-copy{margin-top:6px;font-size:12px;line-height:1.55;color:var(--color-text-muted)}.launch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.launch-stat{padding:12px 14px;border-radius:16px;border:1px solid var(--color-border);background:#ffffff05}.launch-stat-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.launch-stat-value{margin-top:6px;font-size:14px;font-weight:700;color:var(--color-text);word-break:break-word}.share-card{padding:18px;border-radius:calc(var(--surface-panel-radius) + 2px);border:1px solid var(--color-border);background:radial-gradient(circle at top right,rgba(255,255,255,.06),transparent 30%),linear-gradient(180deg,#ffffff0a,#fff0),var(--color-surface)}.share-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.share-card-title{font-size:15px;font-weight:700;color:var(--color-text)}.share-card-copy{margin-top:4px;font-size:12px;line-height:1.55;color:var(--color-text-muted)}.share-url-bar{display:flex;gap:8px;align-items:center;padding:10px;border-radius:16px;background:#00000029;border:1px solid var(--color-border)}.share-url-input{flex:1;min-width:0;background:transparent;border:none;color:var(--color-accent);font-size:12px;font-family:JetBrains Mono,Fira Code,monospace;outline:none}.share-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.share-meta{flex:1;font-size:11px;color:var(--color-text-muted)}.share-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--color-border);background:#ffffff08;color:var(--color-text-muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.info-list{margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.75;color:var(--color-text-muted)}@media (max-width: 768px){.launch-grid{grid-template-columns:1fr}}.theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.theme-btn{height:70px;border-radius:var(--surface-button-radius);border:2px solid var(--color-border);cursor:pointer;transition:border-color .2s ease,transform .2s var(--spring),box-shadow .2s ease;overflow:hidden;position:relative}.theme-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 28px #00000080}.theme-btn.active{border-color:var(--color-accent);box-shadow:0 0 0 3px #00d4ff33,0 8px 28px #00000080;transform:translateY(-2px) scale(1.02)}.layout{position:relative}.react-grid-placeholder{background:var(--color-accent)!important;opacity:.08!important;border-radius:var(--surface-card-radius)!important;border:1px dashed var(--color-accent)!important;box-sizing:border-box}.react-resizable-handle{opacity:.25;transition:opacity .2s ease}.react-grid-item:hover .react-resizable-handle{opacity:1}.react-grid-item:focus-within{z-index:900!important}.react-resizable-handle:after{border-color:var(--color-accent)!important;opacity:.6}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}::selection{background:var(--selection-bg);color:var(--selection-text)}@keyframes dd-fade{0%{opacity:0}to{opacity:1}}@keyframes dd-slide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes dd-scale{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes sidebar-slide-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes sidebar-slide-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes dance-bob{0%{transform:translateY(0) scale(1) rotate(0)}to{transform:translateY(-10px) scale(1.03) rotate(1.5deg)}}@keyframes dance-sway{0%{transform:translateY(0) scale(1) rotate(0)}to{transform:translateY(-6px) scale(1.02) rotate(-2deg)}}@keyframes dance-pulse{0%{transform:scale(1) rotate(0)}to{transform:scale(1.05) rotate(1deg)}}@keyframes dance-shake{0%{transform:translate(0) rotate(0)}to{transform:translate(6px) rotate(-1.5deg)}}@keyframes dance-btn-spin{0%{transform:rotate(-15deg) scale(1)}to{transform:rotate(15deg) scale(1.2)}}.dance-active .react-grid-item>*{animation:dance-bob .5s ease-in-out infinite alternate;will-change:transform}.dance-active .react-grid-item:nth-child(2n)>*{animation:dance-sway .55s ease-in-out infinite alternate;animation-delay:.1s}.dance-active .react-grid-item:nth-child(3n)>*{animation:dance-pulse .45s ease-in-out infinite alternate;animation-delay:.2s}.dance-active .react-grid-item:nth-child(4n)>*{animation:dance-shake .6s ease-in-out infinite alternate;animation-delay:.05s}.dance-active .react-grid-item:nth-child(5n)>*{animation:dance-bob .7s ease-in-out infinite alternate;animation-delay:.15s}.dance-active .react-grid-item:nth-child(6n)>*{animation:dance-sway .4s ease-in-out infinite alternate;animation-delay:.25s}@keyframes dance-beat-hit{0%{transform:scale(1) translateY(0) rotate(0)}35%{transform:scale(1.09) translateY(-16px) rotate(2.5deg)}to{transform:scale(1) translateY(0) rotate(0)}}body.beat-hit .dance-active .react-grid-item>*{animation:dance-beat-hit .22s cubic-bezier(.25,.46,.45,.94)!important;will-change:transform}body.beat-hit .dance-active .react-grid-item:nth-child(2n)>*{animation-delay:.02s!important}body.beat-hit .dance-active .react-grid-item:nth-child(3n)>*{animation-delay:.04s!important}body.beat-hit .dance-active .react-grid-item:nth-child(4n)>*{animation-delay:.01s!important}body.beat-hit .dance-active .free-layer>*{animation:dance-beat-hit .22s cubic-bezier(.25,.46,.45,.94)!important;will-change:transform}.fx-smooth-scroll .board-scroll,.fx-smooth-scroll .share-scroll{scroll-behavior:smooth}.fx-custom-scrollbar ::-webkit-scrollbar{width:4px;height:4px}.fx-custom-scrollbar ::-webkit-scrollbar-track{background:transparent}.fx-custom-scrollbar ::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:2px;opacity:.7}.fx-custom-scrollbar ::-webkit-scrollbar-thumb:hover{opacity:1}@keyframes fx-bg-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.fx-anim-hidden{opacity:0!important;transform:translateY(20px)!important}.fx-anim-visible{opacity:1!important;transform:translateY(0)!important;transition:opacity .55s ease,transform .55s ease!important}@keyframes fx-loading-out{0%{opacity:1;pointer-events:all}to{opacity:0;pointer-events:none}}@keyframes fx-spin{to{transform:rotate(360deg)}}body:has(.fx-cursor-active) *{cursor:none!important}.site-structure{display:flex;flex-direction:column;gap:0}.site-board-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:12px;background:#ffffff08;border:1px solid var(--color-border);margin-bottom:10px}.site-board-banner-inner{display:flex;align-items:center;gap:10px;min-width:0}.site-board-icon{font-size:18px;color:var(--color-accent);flex-shrink:0;line-height:1}.site-board-text{min-width:0}.site-board-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:2px}.site-board-url{font-size:12px;font-weight:600;color:var(--color-accent);font-family:JetBrains Mono,Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-board-count{font-size:11px;font-weight:700;color:var(--color-text-muted);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:999px;padding:3px 10px;flex-shrink:0}.site-structure-explainer{font-size:12px;color:var(--color-text-muted);line-height:1.6;margin:0 0 14px}.site-structure-explainer strong{color:var(--color-text)}.site-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.site-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.site-section-add{font-size:11px;padding:4px 10px}.site-pages-list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.site-page-card{border-radius:10px;border:1px solid var(--color-border);background:#ffffff05;overflow:hidden;transition:border-color .15s}.site-page-card.current{border-color:var(--color-border-hover);background:var(--color-surface-hover)}.site-page-row{display:flex;align-items:center;gap:8px;padding:10px 12px}.site-page-go{background:none;border:none;padding:0;cursor:pointer;flex-shrink:0;display:flex;align-items:center}.site-page-dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--color-border);transition:background .15s,box-shadow .15s}.site-page-dot.active{background:var(--color-accent);box-shadow:0 0 6px var(--color-accent)}.site-page-info{flex:1;min-width:0}.site-page-name{font-size:13px;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-page-name-input{font-size:13px;font-weight:600;color:var(--color-text);background:var(--color-surface-hover);border:1px solid var(--color-accent);border-radius:6px;padding:2px 6px;outline:none;font-family:inherit;width:100%}.site-current-tag{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);background:var(--color-surface-hover);border:1px solid var(--color-border-hover);border-radius:999px;padding:1px 6px;flex-shrink:0}.site-page-slug{font-size:11px;color:var(--color-text-muted);font-family:JetBrains Mono,Fira Code,monospace;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-page-badges{display:flex;gap:4px;flex-shrink:0}.site-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:2px 6px;border:1px solid}.site-badge-home{color:#a78bfa;border-color:#a78bfa59;background:#a78bfa14}.site-badge-nav{color:var(--color-text-muted);border-color:var(--color-border);background:#ffffff08}.site-expand-btn{background:none;border:1px solid transparent;border-radius:6px;color:var(--color-text-muted);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,background .15s,border-color .15s}.site-expand-btn:hover,.site-expand-btn.open{color:var(--color-text);background:var(--color-surface-hover);border-color:var(--color-border)}.site-expand-btn svg{transition:transform .2s var(--spring)}.site-expand-btn.open svg{transform:rotate(180deg)}.site-page-settings{padding:10px 14px 12px;border-top:1px solid var(--color-border);background:#0000001f;display:flex;flex-direction:column;gap:10px}.site-setting-row{display:flex;align-items:center;gap:8px}.site-setting-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);flex-shrink:0;min-width:54px}.site-slug-field{display:flex;align-items:center;gap:0;flex:1;background:#0003;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.site-slug-prefix{padding:4px 6px 4px 8px;font-size:12px;color:var(--color-text-muted);font-family:JetBrains Mono,Fira Code,monospace}.site-setting-input{background:transparent;border:none;color:var(--color-text);font-size:12px;font-family:JetBrains Mono,Fira Code,monospace;padding:4px 8px 4px 2px;outline:none;width:100%}.site-setting-toggles{gap:14px}.site-toggle{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.site-toggle input[type=checkbox]{accent-color:var(--color-accent);width:13px;height:13px;cursor:pointer}.site-setting-actions{display:flex;gap:6px;align-items:center}.site-add-page-form{display:flex;gap:6px;align-items:center;padding:8px 0;margin-bottom:4px}.site-concept-panel{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:14px;border-radius:10px;background:#0000001f;border:1px solid rgba(255,255,255,.05)}.site-concept-item{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.site-concept-icon{font-size:16px;color:var(--color-accent);flex-shrink:0;line-height:1.3;opacity:.7}.site-concept-name{font-size:11px;font-weight:700;color:var(--color-text);margin-bottom:3px}.site-concept-desc{font-size:10px;color:var(--color-text-muted);line-height:1.55}.site-concept-arrow{font-size:14px;color:var(--color-text-muted);flex-shrink:0;padding-top:2px}.boards-panel-copy{font-size:11px;color:var(--color-text-muted);line-height:1.55;padding:2px 10px 10px}.boards-current-pill{display:flex;align-items:center;gap:8px;margin:0 8px 10px;padding:8px 10px;border-radius:10px;background:#ffffff08;border:1px solid var(--color-border)}.boards-current-label{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent)}.boards-current-name{font-size:12px;font-weight:700;color:var(--color-text)}.boards-list{display:flex;flex-direction:column;gap:6px;padding:0 6px}.boards-item{border:1px solid var(--color-border);border-radius:10px;background:#ffffff05}.boards-item.current{border-color:#00d4ff40;background:#00d4ff0d}.boards-item-row,.boards-rename-row{display:flex;gap:8px;align-items:center;padding:8px 10px}.boards-open-btn{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:none;border:none;color:inherit;padding:0;text-align:left;cursor:pointer}.boards-open-btn:disabled{cursor:default}.boards-dot{width:8px;height:8px;border-radius:999px;background:var(--color-border);flex-shrink:0}.boards-dot.active{background:var(--color-accent);box-shadow:0 0 8px var(--color-accent)}.boards-item-copy{min-width:0;display:flex;flex-direction:column}.boards-item-name{font-size:12px;font-weight:700;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.boards-item-meta{font-size:10px;color:var(--color-text-muted);margin-top:2px}.boards-item-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.boards-inline-btn{background:none;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);font-size:10px;font-weight:700;padding:4px 8px;cursor:pointer;font-family:inherit}.boards-inline-btn.primary{background:var(--color-accent);border-color:transparent;color:#fff}.boards-inline-btn.danger{color:#fca5a5;border-color:#ef44443d}.boards-create-card{margin:12px 8px 4px;padding:12px;border-radius:12px;border:1px solid var(--color-border);background:#ffffff08;display:flex;flex-direction:column;gap:10px}.boards-create-head{font-size:12px;font-weight:800;color:var(--color-text)}.boards-create-copy,.boards-empty,.boards-error{font-size:11px;line-height:1.55;color:var(--color-text-muted)}.boards-empty{padding:8px 12px}.boards-error{color:#fca5a5;padding:10px 12px 4px}.boards-input{width:100%;background:#0003;border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:12px;font-family:inherit;padding:8px 10px;outline:none}.boards-kind-row{display:flex;gap:8px}.boards-kind-btn{flex:1;border:1px solid var(--color-border);border-radius:999px;background:#ffffff05;color:var(--color-text-muted);font-size:11px;font-weight:700;padding:7px 10px;cursor:pointer;font-family:inherit}.boards-kind-btn.active{color:var(--color-text);border-color:#00d4ff4d;background:#00d4ff14}@media (max-width: 720px){.boards-item-row,.boards-rename-row{flex-direction:column;align-items:stretch}.boards-item-actions{justify-content:flex-start}}.pp-page-item{position:relative}.pp-page-item.current>button:first-child{font-weight:700}.pp-badge{display:inline-flex;align-items:center;font-size:9px;font-weight:700;border-radius:999px;padding:1px 5px;border:1px solid;margin-left:4px;vertical-align:middle}.pp-badge-home{color:#a78bfa;border-color:#a78bfa59;background:#a78bfa14}.pp-badge-nav{color:var(--color-text-muted);border-color:var(--color-border);background:#ffffff05}.pp-meta-panel{margin:0 6px 4px;padding:8px 10px;background:#0000002e;border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column;gap:7px}.pp-meta-row{display:flex;align-items:center;gap:8px}.pp-meta-key{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);flex-shrink:0;min-width:36px}.pp-meta-input{flex:1;background:#0003;border:1px solid var(--color-border);border-radius:5px;color:var(--color-text);font-size:11px;font-family:JetBrains Mono,Fira Code,monospace;padding:3px 6px;outline:none}.pp-toggle{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.pp-toggle input[type=checkbox]{accent-color:var(--color-accent);width:12px;height:12px;cursor:pointer}.pp-meta-action{background:none;border:1px solid var(--color-border);border-radius:5px;color:var(--color-text-muted);font-size:10px;font-weight:600;padding:2px 7px;cursor:pointer;font-family:inherit;transition:color .15s,border-color .15s}.pp-meta-action:hover{color:var(--color-text);border-color:var(--color-border-hover)}.pp-home-chip{font-size:10px;font-weight:700;color:#a78bfa;background:#a78bfa1a;border:1px solid rgba(167,139,250,.3);border-radius:999px;padding:2px 8px}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}
