body{margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}.drawnix-console{position:absolute;top:50%;transform:translateY(-50%);left:0;height:200px;width:100px;overflow:auto;background-color:#000;color:#fff;padding:8px;opacity:.5}.share-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.share-modal{background:#fff;border-radius:8px;padding:32px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 4px 20px #00000026;animation:slideUp .3s ease-out}.share-modal .close-button{position:absolute;top:16px;right:16px;background:none;border:none;font-size:28px;line-height:1;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.share-modal .close-button:hover{background-color:#f0f0f0;color:#333}.share-modal h2{margin:0 0 24px;font-size:24px;font-weight:600;color:#333}.share-modal h3{margin:24px 0 16px;font-size:18px;font-weight:600;color:#333}.share-modal .error-message{background-color:#fee;color:#c33;padding:12px;border-radius:4px;margin-bottom:16px;font-size:14px;border:1px solid #fcc}.share-modal .form-group{margin-bottom:16px}.share-modal .form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:14px}.share-modal .form-group input,.share-modal .form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.share-modal .form-group input:focus,.share-modal .form-group select:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.share-modal .btn-primary{padding:10px 20px;background-color:#4a9eff;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.share-modal .btn-primary:hover:not(:disabled){background-color:#3a8eef}.share-modal .btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.share-modal .create-share-link{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e0e0e0}.share-modal .share-links-list .loading,.share-modal .share-links-list .empty-state{text-align:center;padding:24px;color:#666;font-size:14px}.share-modal .share-links-list .share-links{display:flex;flex-direction:column;gap:16px}.share-modal .share-links-list .share-link-item{border:1px solid #e0e0e0;border-radius:6px;padding:16px;background-color:#fafafa}.share-modal .share-links-list .share-link-item.inactive{opacity:.6}.share-modal .share-links-list .share-link-item .share-link-info{margin-bottom:12px}.share-modal .share-links-list .share-link-item .share-link-info .share-link-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.share-modal .share-links-list .share-link-item .share-link-info .share-link-header .permission-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.share-modal .share-links-list .share-link-item .share-link-info .share-link-header .permission-badge.permission-view{background-color:#e3f2fd;color:#1976d2}.share-modal .share-links-list .share-link-item .share-link-info .share-link-header .permission-badge.permission-edit{background-color:#e8f5e9;color:#388e3c}.share-modal .share-links-list .share-link-item .share-link-info .share-link-header .expires-at{font-size:12px;color:#666}.share-modal .share-links-list .share-link-item .share-link-info .share-link-header .inactive-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;background-color:#ffebee;color:#c62828}.share-modal .share-links-list .share-link-item .share-link-info .share-link-url{display:flex;gap:8px}.share-modal .share-links-list .share-link-item .share-link-info .share-link-url input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;font-family:monospace;background-color:#fff;cursor:text}.share-modal .share-links-list .share-link-item .share-link-info .share-link-url input:focus{outline:none;border-color:#4a9eff}.share-modal .share-links-list .share-link-item .share-link-info .share-link-url .btn-copy{padding:8px 12px;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:16px;transition:background-color .2s}.share-modal .share-links-list .share-link-item .share-link-info .share-link-url .btn-copy:hover{background-color:#e0e0e0}.share-modal .share-links-list .share-link-item .share-link-actions{display:flex;gap:8px;justify-content:flex-end}.share-modal .share-links-list .share-link-item .share-link-actions button{padding:6px 12px;border:none;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s}.share-modal .share-links-list .share-link-item .share-link-actions button.btn-deactivate{background-color:#fff3cd;color:#856404}.share-modal .share-links-list .share-link-item .share-link-actions button.btn-deactivate:hover{background-color:#ffeaa7}.share-modal .share-links-list .share-link-item .share-link-actions button.btn-delete{background-color:#fee;color:#c33}.share-modal .share-links-list .share-link-item .share-link-actions button.btn-delete:hover{background-color:#fcc}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.auth-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}@keyframes fadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.auth-modal{background:#fff;border-radius:24px;padding:48px 40px;max-width:440px;width:90%;position:relative;box-shadow:0 20px 60px #0000004d;animation:slideUp .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.2)}.auth-modal .close-button{position:absolute;top:20px;right:20px;background:#0000000d;border:none;font-size:24px;line-height:1;color:#718096;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.auth-modal .close-button:hover{background:#1e293b1a;color:#1e293b;transform:rotate(90deg)}@keyframes slideUp{0%{transform:translateY(40px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.auth-form h2{margin:0 0 8px;font-size:32px;font-weight:800;color:#1e293b;letter-spacing:-.02em}.auth-form .auth-subtitle{color:#718096;font-size:15px;margin-bottom:32px;font-weight:400}.auth-form .error-message{background:#fef2f2;color:#dc2626;padding:14px 16px;border-radius:8px;margin-bottom:24px;font-size:14px;font-weight:500;border:1px solid #fecaca;animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.auth-form .form-group{margin-bottom:24px}.auth-form .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2d3748;font-size:14px;letter-spacing:.02em}.auth-form .form-group input{width:100%;padding:14px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:15px;transition:all .3s ease;box-sizing:border-box;font-weight:500;color:#2d3748;background:#f7fafc}.auth-form .form-group input::placeholder{color:#a0aec0;font-weight:400}.auth-form .form-group input:focus{outline:none;border-color:#1e293b;background:#fff;box-shadow:0 0 0 3px #1e293b1a}.auth-form .form-group input:disabled{background-color:#edf2f7;cursor:not-allowed;opacity:.6}.auth-form .btn-primary{width:100%;padding:16px;background:#1e293b;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;margin-top:8px;letter-spacing:.02em}.auth-form .btn-primary:hover:not(:disabled){background:#334155}.auth-form .btn-primary:active:not(:disabled){background:#475569}.auth-form .btn-primary:disabled{background:#94a3b8;cursor:not-allowed}.auth-form .switch-form{margin-top:28px;text-align:center;font-size:15px;color:#718096;font-weight:500}.auth-form .switch-form .link-button{background:none;border:none;color:#1e293b;cursor:pointer;padding:0;font-size:15px;font-weight:600;text-decoration:none;transition:color .2s ease}.auth-form .switch-form .link-button:hover{color:#475569;text-decoration:underline}@media(max-width:480px){.auth-modal{padding:32px 24px;border-radius:20px}.auth-form h2{font-size:28px}}.dashboard{min-height:100vh;padding:0;background:#fafbfc;position:relative}.dashboard-top-bar{background:#fff;padding:1.25rem 3rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #0000000d;position:sticky;top:0;z-index:100}.dashboard-logo{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:700;color:#1e293b}.dashboard-logo svg{flex-shrink:0}.dashboard-user-info{display:flex;align-items:center;gap:1rem}.dashboard-user-info .user-email{font-size:.875rem;color:#64748b;font-weight:500}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:3rem}.dashboard-loading h2{margin-bottom:1rem;color:#333}.dashboard-loading p{color:#666;margin-bottom:1.5rem}.dashboard-auth-required{display:flex;flex-direction:column;align-items:center;min-height:100vh;height:100vh;padding:0;background:#fafbfc;position:fixed;top:0;left:0;right:0;bottom:0;overflow-y:auto;overflow-x:hidden;z-index:1}:root{--landing-primary: #0F172A;--landing-primary-light: #1E293B;--landing-accent: #3B82F6;--landing-accent-dark: #2563EB;--landing-text: #1E293B;--landing-text-muted: #64748B;--landing-bg: #FAFBFC;--landing-card-bg: #FFFFFF;--landing-border: #E2E8F0}.landing-nav{width:100%;max-width:1280px;margin:0 auto;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:10}.landing-nav-logo{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:var(--landing-primary);letter-spacing:-.02em}.landing-nav-login{padding:.625rem 1.25rem;background:transparent;color:var(--landing-text);border:1px solid var(--landing-border);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.landing-nav-login:hover{background:var(--landing-primary);color:#fff;border-color:var(--landing-primary)}.landing-bg-decoration{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0;pointer-events:none}.landing-hero{width:100%;max-width:900px;margin:0 auto;padding:4rem 2rem 6rem;text-align:center;position:relative;z-index:1}.landing-hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#3b82f614;color:var(--landing-accent);border-radius:100px;font-size:.8125rem;font-weight:500;margin-bottom:1.5rem;animation:fadeInUp .6s ease-out}.landing-hero-badge svg{width:14px;height:14px}.landing-hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;color:var(--landing-text);margin:0 0 1.5rem;line-height:1.1;letter-spacing:-.03em;animation:fadeInUp .6s ease-out .1s backwards}.landing-hero-title .text-gradient{background:linear-gradient(135deg,var(--landing-accent) 0%,#8B5CF6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-subtitle{font-size:1.125rem;color:var(--landing-text-muted);margin:0 0 2.5rem;max-width:560px;margin-left:auto;margin-right:auto;line-height:1.7;animation:fadeInUp .6s ease-out .2s backwards}.landing-hero-cta{display:flex;justify-content:center;gap:1rem;margin-bottom:4rem;animation:fadeInUp .6s ease-out .3s backwards}.landing-hero-cta .btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;background:var(--landing-primary);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #0f172a40}.landing-hero-cta .btn-primary svg{transition:transform .2s ease}.landing-hero-cta .btn-primary:hover{background:var(--landing-primary-light);transform:translateY(-2px);box-shadow:0 6px 20px #0f172a4d}.landing-hero-cta .btn-primary:hover svg{transform:translate(3px)}.landing-hero-cta .btn-primary:active{transform:translateY(0)}.landing-hero-cta .btn-secondary{padding:.875rem 1.75rem;background:transparent;color:var(--landing-text);border:1px solid var(--landing-border);border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.landing-hero-cta .btn-secondary:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.landing-hero-stats{display:flex;justify-content:center;align-items:center;gap:2.5rem;animation:fadeInUp .6s ease-out .4s backwards}.landing-hero-stats .stat{display:flex;flex-direction:column;gap:.25rem}.landing-hero-stats .stat-value{font-size:1.5rem;font-weight:700;color:var(--landing-text);letter-spacing:-.02em}.landing-hero-stats .stat-label{font-size:.8125rem;color:var(--landing-text-muted)}.landing-hero-stats .stat-divider{width:1px;height:40px;background:var(--landing-border)}.landing-features{width:100%;max-width:1200px;margin:0 auto;padding:4rem 2rem 6rem;z-index:1;position:relative}.landing-features-header{text-align:center;margin-bottom:4rem;animation:fadeInUp .6s ease-out}.features-label{display:inline-block;padding:.375rem .875rem;background:#3b82f614;color:var(--landing-accent);border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.features-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;color:var(--landing-text);margin:0 0 1rem;letter-spacing:-.02em}.features-subtitle{font-size:1rem;color:var(--landing-text-muted);max-width:480px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.feature-card{background:var(--landing-card-bg);border:1px solid var(--landing-border);border-radius:16px;padding:2rem;transition:all .3s ease;animation:fadeInUp .6s ease-out backwards}.feature-card:nth-child(1){animation-delay:.1s}.feature-card:nth-child(2){animation-delay:.15s}.feature-card:nth-child(3){animation-delay:.2s}.feature-card:nth-child(4){animation-delay:.25s}.feature-card:hover{border-color:#3b82f64d;box-shadow:0 8px 30px #0000000f;transform:translateY(-4px)}.feature-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#3b82f614;color:var(--landing-accent);border-radius:12px;margin-bottom:1.25rem}.feature-card-icon svg{width:24px;height:24px}.feature-card-title{font-size:1.125rem;font-weight:600;color:var(--landing-text);margin:0 0 .75rem;letter-spacing:-.01em}.feature-card-description{font-size:.9375rem;color:var(--landing-text-muted);line-height:1.6;margin:0}.landing-cta{width:100%;padding:0 2rem 6rem;z-index:1;position:relative}.landing-cta-content{max-width:800px;margin:0 auto;padding:4rem;background:var(--landing-primary);border-radius:24px;text-align:center;position:relative;overflow:hidden}.landing-cta-content:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(59,130,246,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,.15) 0%,transparent 50%)}.landing-cta-content h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:#fff;margin:0 0 1rem;position:relative;letter-spacing:-.02em}.landing-cta-content p{font-size:1rem;color:#ffffffbf;margin:0 0 2rem;position:relative}.landing-cta-content .btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:#fff;color:var(--landing-primary);border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;position:relative}.landing-cta-content .btn-primary svg{transition:transform .2s ease}.landing-cta-content .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0003}.landing-cta-content .btn-primary:hover svg{transform:translate(3px)}.landing-cta-content .btn-large{padding:1rem 2.5rem}.landing-footer{width:100%;padding:2rem;border-top:1px solid var(--landing-border);z-index:1;position:relative}.landing-footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.landing-footer-logo{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--landing-text)}.landing-footer-copy{font-size:.8125rem;color:var(--landing-text-muted);margin:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:2.5rem 3rem 0;animation:fadeInUp .6s ease-out;position:relative;z-index:1}.dashboard-header h1{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;color:#1e293b;margin:0;letter-spacing:-.02em}.dashboard-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 3rem 2rem;padding:1rem 1.5rem;background:#fff;border-radius:10px;border:1px solid #E2E8F0;position:relative;z-index:1}.dashboard-error{background:#fee;border:1px solid #fcc;border-radius:4px;padding:1rem;margin:0 3rem 1rem;color:#c33}.dashboard-error button{margin-left:1rem;padding:.25rem .5rem;background:#c33;color:#fff;border:none;border-radius:4px;cursor:pointer}.dashboard-empty{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:0 3rem;position:relative;z-index:1}.dashboard-empty .empty-state{text-align:center;padding:3rem;background:#fff;border-radius:16px;border:1px solid #E2E8F0;max-width:400px}.dashboard-empty .empty-state h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin-bottom:.5rem}.dashboard-empty .empty-state p{color:#64748b;margin-bottom:1.5rem;font-size:.9375rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;padding:0 3rem 3rem;animation:fadeInUp .6s ease-out .2s backwards;position:relative;z-index:1}.btn-admin{padding:.625rem 1.25rem;background:transparent;color:#1e293b;border:1px solid #E2E8F0;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-admin:hover{background:#0f172a;color:#fff;border-color:#0f172a}.btn-logout{padding:.625rem 1.25rem;background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-logout:hover{background:#f8fafc;border-color:#cbd5e0;color:#475569}.btn-create-board{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;background:#0f172a;color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #0f172a40}.btn-create-board:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 6px 20px #0f172a4d}.btn-create-board:active{transform:translateY(0)}.btn-create-board-primary{padding:1rem 2rem;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-create-board-primary:hover{background:#0056b3}.board-card{background:#fff;border-radius:16px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;border:1px solid #E2E8F0;animation:fadeInUp .6s ease-out backwards}.board-card:nth-child(1){animation-delay:.1s}.board-card:nth-child(2){animation-delay:.15s}.board-card:nth-child(3){animation-delay:.2s}.board-card:nth-child(4){animation-delay:.25s}.board-card:nth-child(5){animation-delay:.3s}.board-card:nth-child(6){animation-delay:.35s}.board-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000000f;border-color:#3b82f64d}.board-card:hover .board-card-actions{opacity:1}.board-card[draggable=true]{cursor:grab}.board-card[draggable=true]:active{cursor:grabbing}.board-card.dragging{opacity:.5;transform:scale(.95)}.board-card.drag-over{border-color:#3b82f6;transform:translateY(-4px);box-shadow:0 8px 30px #3b82f626}.board-card-preview{width:100%;height:160px;background:#f8fafc;display:flex;align-items:center;justify-content:center;transition:transform .3s ease;overflow:hidden;position:relative}.board-card-content{padding:1.25rem 1.5rem 1.5rem;background:#fff}.board-card-title{font-size:1rem;font-weight:600;color:#1e293b;margin:0 0 .75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.board-card-meta{display:flex;justify-content:space-between;align-items:flex-end;font-size:.875rem;color:#64748b;flex-direction:row;gap:.75rem}.board-card-dates{display:flex;flex-direction:column;gap:.25rem}.board-card-date{color:#64748b;font-size:.8125rem;font-weight:500}.board-card-created{color:#94a3b8;font-size:.75rem}.board-card-elements{color:#3b82f6;font-size:.8125rem;font-weight:600}.board-card-permission{padding:.375rem .625rem;border-radius:6px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.board-card-permission.permission-owner{background:#0f172a;color:#fff}.board-card-permission.permission-admin{background:#7c3aed;color:#fff}.board-card-permission.permission-edit{background:#0891b2;color:#fff}.board-card-permission.permission-view{background:#64748b;color:#fff}.board-card-actions{position:absolute;top:.75rem;right:.75rem;opacity:0;transition:opacity .3s ease;z-index:10}.board-card-menu{position:relative}.board-card-edit{padding:1.5rem;border-top:1px solid #f1f5f9}.btn-menu-toggle{background:#fff;border:1px solid #E2E8F0;border-radius:8px;padding:.5rem .625rem;cursor:pointer;font-size:1.1rem;font-weight:700;line-height:1;transition:all .2s ease;color:#64748b}.btn-menu-toggle:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.board-menu-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border:1px solid #E2E8F0;border-radius:10px;box-shadow:0 4px 12px #00000014;min-width:160px;z-index:1000;overflow:hidden}.board-menu-dropdown .menu-item{display:flex;align-items:center;width:100%;padding:.75rem 1rem;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:#475569;transition:all .15s ease}.board-menu-dropdown .menu-item:hover{background:#f8fafc;color:#1e293b}.board-menu-dropdown .menu-item.menu-item-danger{color:#ef4444}.board-menu-dropdown .menu-item.menu-item-danger:hover{background:#fef2f2;color:#dc2626}.board-menu-dropdown .menu-item:not(:last-child){border-bottom:1px solid #f1f5f9}.board-title-input{width:100%;padding:.5rem;border:2px solid #007bff;border-radius:4px;font-size:1.1rem;font-weight:600;font-family:inherit;outline:none}.board-title-input:focus{border-color:#0056b3}.board-preview-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;position:relative}.board-preview-placeholder svg{opacity:.4}.board-preview-content{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0f172a;padding:1.5rem;gap:1rem;position:relative;overflow:hidden}.preview-icons{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;z-index:1;position:relative}.preview-icon{font-size:2rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));transition:transform .3s ease}.preview-icon:hover{transform:scale(1.2) rotate(5deg)}.preview-info{color:#fff;font-size:.875rem;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.4);z-index:1;position:relative}.preview-count{color:#fffffff2;font-weight:600}.search-container{position:relative;flex:1;max-width:400px}.search-input{width:100%;padding:.625rem 2.5rem .625rem 1rem;border:1px solid #E2E8F0;border-radius:8px;font-size:.875rem;transition:all .2s ease;background:#fff}.search-input:focus{outline:none;border-color:#0f172a}.search-input::placeholder{color:#94a3b8}.search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.search-clear:hover{color:#333}.sort-container{display:flex;align-items:center;gap:.5rem}.sort-container label{font-size:.9rem;color:#666;font-weight:500}.sort-select{padding:.625rem 1rem;border:1px solid #E2E8F0;border-radius:8px;font-size:.875rem;background:#fff;cursor:pointer;transition:all .2s ease}.sort-select:focus{outline:none;border-color:#0f172a}.sort-order-btn{padding:.625rem 1rem;border:1px solid #E2E8F0;border-radius:8px;background:#fff;font-size:1.1rem;cursor:pointer;transition:all .2s ease;min-width:42px}.sort-order-btn:hover{background:#f8fafc;border-color:#cbd5e1}.btn-clear-search{padding:.75rem 1.5rem;background:#6c757d;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s;margin-top:1rem}.btn-clear-search:hover{background:#5a6268}@media(max-width:768px){.dashboard-top-bar{padding:1rem;flex-direction:column;gap:1rem;align-items:flex-start}.dashboard-user-info{width:100%;justify-content:space-between}.dashboard-controls{flex-direction:column;align-items:stretch;gap:1rem;margin:0 1rem 1.5rem}.dashboard-error{margin:0 1rem 1rem}.dashboard-empty{padding:0 1rem}.dashboard-grid{padding:0 1rem 3rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:2rem 1rem 0}.dashboard-header h1{font-size:1.5rem}.dashboard-grid{grid-template-columns:1fr}.search-container{max-width:100%}.sort-container{width:100%;justify-content:space-between}.board-card-actions{opacity:1}.board-card-meta{flex-direction:column;gap:.5rem}.landing-nav{padding:1rem}.landing-hero{padding:2rem 1.5rem 4rem}.landing-hero-cta{flex-direction:column;gap:.75rem}.landing-hero-cta .btn-primary,.landing-hero-cta .btn-secondary{width:100%;justify-content:center}.landing-hero-stats{flex-wrap:wrap;gap:1.5rem}.landing-hero-stats .stat-divider{display:none}.landing-hero-stats .stat{min-width:80px}.landing-features{padding:2rem 1.5rem 4rem}.features-grid{grid-template-columns:1fr}.landing-cta{padding:0 1rem 4rem}.landing-cta-content{padding:2.5rem 1.5rem}.landing-footer-content{flex-direction:column;gap:1rem;text-align:center}}.plait-board-container{display:block;width:100%;height:100%;position:relative;overflow:hidden}.plait-board-container foreignObject{outline:none}.plait-board-container.firefox{-webkit-user-select:none;user-select:none}.plait-board-container .viewport-container{width:100%;height:100%;overflow:auto}.plait-board-container.disabled-scroll .viewport-container{overflow:hidden}.plait-board-container svg{transform:scale(1)}.plait-board-container .plait-text-container{position:initial!important}.plait-board-container .text foreignObject{outline:none}.plait-board-container .text .slate-editable-container{outline:none}.plait-board-container .plait-toolbar{position:absolute;display:flex;height:30px;z-index:100}.plait-board-container.element-moving .element-active-host>g:not(.active-with-moving){display:none}.plait-board-container.element-rotating .element-active-host g.resize-handle,.plait-board-container.element-rotating .element-active-host g[class^=line-auto-complete-]{display:none}.plait-board-container.pointer-selection{cursor:default}.plait-board-container.ns-resize{cursor:ns-resize}.plait-board-container.ew-resize{cursor:ew-resize}.plait-board-container.nwse-resize{cursor:nwse-resize}.plait-board-container.nesw-resize{cursor:nesw-resize}.plait-board-container.crosshair{cursor:crosshair}.plait-board-container foreignObject[class^=foreign-object-]{-webkit-user-select:none;user-select:none}.plait-board-container .board-active-svg{position:absolute;left:0;top:0;pointer-events:none}.plait-board-container.theme-colorful .board-host-svg,.plait-board-container.theme-default .board-host-svg{background-color:#fff}.plait-board-container.theme-soft .board-host-svg{background-color:#f5f5f5}.plait-board-container.theme-retro .board-host-svg{background-color:#f9f8ed}.plait-board-container.theme-dark .board-host-svg{background-color:#141414}.plait-board-container.theme-starry .board-host-svg{background-color:#0d2537}.plait-board-container .text foreignObject{overflow-y:auto;scrollbar-width:none}.plait-board-container .text foreignObject::-webkit-scrollbar{display:none}.plait-text-container{font-size:14px;min-height:20px;line-height:20px;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif}.slate-editable-container{outline:none;padding:0;cursor:default}.slate-editable-container [data-slate-node=element]{-webkit-user-select:none;user-select:none}.slate-editable-container[contenteditable=true]{cursor:text}.slate-editable-container[contenteditable=true] [data-slate-node=element]{-webkit-user-select:text;user-select:text}.drawnix .island{--padding: 0;box-sizing:border-box;background-color:var(--island-bg-color);box-shadow:var(--shadow-island);border-radius:var(--border-radius-md);padding:calc(var(--padding) * var(--space-factor));position:relative;transition:box-shadow .5s ease-in-out;border:1px solid var(--island-border-color)}.drawnix .island.zen-mode{box-shadow:none}.drawnix .stack{--gap: 0;display:grid;gap:calc(var(--space-factor) * var(--gap))}.drawnix .stack_vertical{grid-template-columns:auto;grid-auto-flow:row;grid-auto-rows:min-content}.drawnix .stack_horizontal{grid-template-rows:auto;grid-auto-flow:column;grid-auto-columns:min-content}.drawnix .tool-icon{border-radius:var(--border-radius-md);display:inline-flex;align-items:center;justify-content:center;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.drawnix .tool-icon__hidden{display:none!important}.drawnix .tool-icon.fillable .tool-icon_type_radio:checked+.tool-icon__icon,.drawnix .tool-icon.fillable .tool-icon_type_checkbox:checked+.tool-icon__icon{--icon-fill-color: var(--color-on-primary-container)}.drawnix .tool-icon.fillable .tool-icon_type_radio:checked+.tool-icon__icon svg,.drawnix .tool-icon.fillable .tool-icon_type_checkbox:checked+.tool-icon__icon svg{fill:var(--icon-fill-color)}.drawnix .tool-icon .tool-icon_type_radio:checked+.tool-icon__icon,.drawnix .tool-icon .tool-icon_type_checkbox:checked+.tool-icon__icon{background:var(--color-surface-primary-container);--keybinding-color: var(--color-on-primary-container)}.drawnix .tool-icon .tool-icon_type_radio:checked+.tool-icon__icon svg,.drawnix .tool-icon .tool-icon_type_checkbox:checked+.tool-icon__icon svg{color:var(--color-on-primary-container)}.drawnix .tool-icon .tool-icon__keybinding{bottom:4px;right:4px}.drawnix .tool-icon .tool-icon__icon:hover{background-color:var(--color-surface-primary-container);color:var(--color-primary)}.drawnix .tool-icon .tool-icon__icon:active{background-color:var(--color-surface-primary-container);border:1px solid var(--button-active-border)}.drawnix .tool-icon .tool-icon__icon:active svg{color:var(--color-on-primary-container)}.drawnix .tool-icon .tool-icon__icon[aria-disabled=true]{background:initial;border:none}.drawnix .tool-icon .tool-icon__icon[aria-disabled=true] svg{color:var(--color-disabled)}.drawnix .tool-icon--plain{background-color:transparent}.drawnix .tool-icon--plain .tool-icon__icon{width:2rem;height:2rem}.drawnix .tool-icon_type_radio,.drawnix .tool-icon_type_checkbox{position:absolute;opacity:0;pointer-events:none}.drawnix .tool-icon__icon{box-sizing:border-box;width:var(--lg-button-size);height:var(--lg-button-size);color:var(--icon-fill-color);display:flex;justify-content:center;align-items:center;border-radius:var(--border-radius-md)}.drawnix .tool-icon__icon+.tool-icon__label{margin-inline-start:0}.drawnix .tool-icon__icon svg{stroke:currentColor;position:relative;width:var(--lg-icon-size);height:var(--lg-icon-size);outline:none}.drawnix .tool-icon_type_button{padding:0;border:none;margin:0;font-size:inherit;background-color:initial}.drawnix .tool-icon_type_button:focus-visible{box-shadow:0 0 0 2px var(--color-primary);outline:none}.drawnix .tool-icon_type_button.tool-icon--selected{background:var(--color-surface-primary-container)}.drawnix .tool-icon_type_button.tool-icon--selected svg{color:var(--color-on-primary-container)}.drawnix .tool-icon_type_button:active{background-color:var(--button-gray-3)}.drawnix .tool-icon_type_button:disabled{cursor:default}.drawnix .tool-icon_type_button:disabled:active,.drawnix .tool-icon_type_button:disabled:focus-visible,.drawnix .tool-icon_type_button:disabled:hover{background-color:initial;border:none;box-shadow:none}.drawnix .tool-icon_type_button:disabled svg{color:var(--color-disabled)}.drawnix .tool-icon_type_button--show{visibility:visible}.drawnix .tool-icon_type_button--hide{display:none!important}.drawnix .tool-icon__label{display:flex;align-items:center;color:var(--icon-fill-color);font-family:var(--ui-font);margin:0 .8em;text-overflow:ellipsis}.drawnix .tool-icon_size_small .tool-icon__icon{width:2rem;height:2rem;font-size:.8em}.drawnix .tool-icon_size_small .tool-icon__icon svg{width:var(--default-icon-size);height:var(--default-icon-size)}.drawnix .tool-icon__keybinding{position:absolute;bottom:2px;right:3px;font-size:.625rem;color:var(--keybinding-color);font-family:var(--ui-font);-webkit-user-select:none;user-select:none}.drawnix .menu--mobile{left:0;width:100%;row-gap:.75rem}.drawnix .menu--mobile .menu-container{padding:8px;box-sizing:border-box;box-shadow:var(--shadow-island);border-radius:var(--border-radius-lg);position:relative;transition:box-shadow .5s ease-in-out}.drawnix .menu--mobile .menu-container.zen-mode{box-shadow:none}.drawnix .menu .menu-container{background-color:var(--island-bg-color);max-height:calc(100vh - 150px);overflow-y:auto;--gap: 2}.drawnix .menu .menu-item-base{display:flex;padding:0 .625rem;column-gap:.625rem;font-size:.875rem;color:var(--color-gray-90);width:100%;box-sizing:border-box;font-weight:400;font-family:inherit}.drawnix .menu .menu-item{background-color:transparent;border:1px solid transparent;align-items:center;height:2rem;margin-top:4px;cursor:pointer;border-radius:var(--border-radius-md)}@media screen and (min-width:1921px){.drawnix .menu .menu-item{height:2.25rem}}.drawnix .menu .menu-item--active{background-color:var(--color-surface-primary-container);text-decoration:none}.drawnix .menu .menu-item__text{display:flex;align-items:center;width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;gap:.75rem}.drawnix .menu .menu-item__shortcut{margin-inline-start:auto;opacity:.5}.drawnix .menu .menu-item__shortcut--orphaned{text-align:right;font-size:.875rem;padding:0 .625rem}.drawnix .menu .menu-item:hover{background-color:var(--color-surface-primary-container);text-decoration:none}.drawnix .menu .menu-item:active{background-color:var(--color-surface-primary-container);border-color:var(--color-brand-active)}.drawnix .menu .menu-item svg{width:1rem;height:1rem;display:block}.drawnix .menu .menu-item-bare{align-items:center;height:2rem;justify-content:space-between}@media screen and (min-width:1921px){.drawnix .menu .menu-item-bare{height:2.25rem}}.drawnix .menu .menu-item-bare svg{width:1rem;height:1rem;display:block}.drawnix .menu .menu-item-custom{margin-top:.5rem}.drawnix .menu .menu-group-title{font-size:14px;text-align:left;margin:10px 0;font-weight:500}.drawnix .menu-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border:none;border-style:none;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--icon-fill-color);font-family:var(--ui-font);width:var(--lg-button-size);height:var(--lg-button-size)}.drawnix .menu-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.drawnix .menu-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)))}.drawnix .menu-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.drawnix .menu-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.drawnix .menu-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.drawnix .menu-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.drawnix.theme--dark.drawnix .menu-button{--background: var(--color-surface-high)}.drawnix.theme--dark.drawnix .menu-button:hover{--background: #363541}.drawnix .menu-button svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.drawnix .menu-button--mobile{border:none;margin:0;padding:0;width:var(--default-button-size);height:var(--default-button-size)}.popup-toolbar .property-button{height:var(--lg-button-size);width:var(--lg-button-size)}.popup-toolbar .property-button .color-label{cursor:pointer}.popup-toolbar .property-button .fill-label{display:inline-block;width:var(--popup-label-size);height:var(--popup-label-size);border-radius:50%}.popup-toolbar .property-button .fill-label.color-white{border:1px solid var(--color-gray-30)}.popup-toolbar .property-button .stroke-label{border-radius:50%;width:calc(var(--popup-label-size) - var(--border-radius-lg));height:calc(var(--popup-label-size) - var(--border-radius-lg));border-width:var(--border-radius-sm);border-style:solid}.popup-toolbar .property-button .tool-icon__icon svg{width:var(--xlg-icon-size);height:var(--xlg-icon-size)}.stroke-setting.has-stroke-style{padding-top:8px!important}.stroke-setting .stroke-style-picker{justify-content:space-between;padding:0 8px}.source-arrow-island .property-button,.source-arrow-button{transform:rotateY(180deg)}.color-select-item{width:var(--default-button-size);height:var(--default-button-size);border-radius:50%;display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--color-gray-30);cursor:pointer;padding:0}.color-select-item.active{border-color:var(--color-primary)}.color-select-item.active.no-color .selected-icon{background-color:#fff}.color-select-item .selected-icon{stroke:currentColor;outline:none;position:absolute;width:var(--default-icon-size);height:var(--default-icon-size)}.color-select-item.no-color{border:none}.color-select-item.no-color .no-color-icon{display:block;width:var(-default-button-size);height:var(-default-button-size);color:#0006}.slider-container{padding:10px 0}.slider-container.disabled{opacity:50%;cursor:not-allowed}.slider-container.disabled .slider-track,.slider-container.disabled .slider-thumb{cursor:not-allowed}.slider-container .slider-track{position:relative;height:4px;background-color:var(--color-gray-20);border-radius:2px;cursor:pointer}.slider-container .slider-range{position:absolute;height:100%;background-color:var(--color-primary);border-radius:3px}.slider-container .slider-thumb{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid var(--color-primary);border-radius:50%;top:50%;transform:translate(-50%,-50%);cursor:grab;box-shadow:0 2px 4px #0000001a}.plait-board-container.pointer-text .board-host-svg{cursor:default}.plait-board-container:not(.pointer-text):not(.pointer-selection):not(.pointer-hand):not(.pointer-vectorLine) .board-host-svg{cursor:crosshair}.plait-board-container.draw-line-resizing .element-active-host .selection-rectangle{display:none}.plait-board-container.line-text-resizing,.plait-board-container.line-text-resizing .slate-editable-container{cursor:move}.plait-board-container g[plait-mind=true] .slate-editable-container,.plait-board-container g[plait-mind-temporary=true] .slate-editable-container{min-width:5px}.plait-board-container g[plait-mind=true] .collapse-button,.plait-board-container g[plait-mind=true] .add-button,.plait-board-container g[plait-mind-temporary=true] .collapse-button,.plait-board-container g[plait-mind-temporary=true] .add-button{transform-origin:center center;transform-box:fill-box;cursor:pointer}.plait-board-container g[plait-mind=true] .collapse-button.animated,.plait-board-container g[plait-mind=true] .add-button.animated,.plait-board-container g[plait-mind-temporary=true] .collapse-button.animated,.plait-board-container g[plait-mind-temporary=true] .add-button.animated{animation:scale-in .15s ease-out forwards}.plait-board-container g[plait-mind=true] .expanded-button,.plait-board-container g[plait-mind-temporary=true] .expanded-button{cursor:pointer}@keyframes scale-in{0%{transform:scale(0)}to{transform:scale(1)}}.plait-board-container g[plait-mind=true] .dragging-node,.plait-board-container g[plait-mind-temporary=true] .dragging-node{opacity:.6}.plait-board-container.pointer-hand .board-host-svg{cursor:grab}.plait-board-container.pointer-mind .board-host-svg{cursor:default!important}.plait-board-container.readonly .mind-node-image{cursor:zoom-in}.plait-board-container.viewport-moving svg{cursor:grabbing}.plait-board-container.abstract-resizing-horizontal{cursor:ns-resize}.plait-board-container.abstract-resizing-vertical{cursor:ew-resize}.plait-board-container .node-emojis-container{display:flex;position:initial;align-items:center;height:100%}.plait-board-container .fake-node.dragging{cursor:pointer;opacity:.6}.plait-board-container .root .plait-text-container{font-size:18px;min-height:25px;line-height:25px}.plait-board-container .mind-node-image{display:block}.plait-board-container.theme-default .plait-text-container,.plait-board-container.theme-soft .plait-text-container{color:#333}.plait-board-container.theme-colorful .root .plait-text-container,.plait-board-container.theme-retro .root .plait-text-container,.plait-board-container.theme-dark .plait-text-container,.plait-board-container.theme-starry .plait-text-container{color:#fff}.plait-board-container.theme-dark .root .plait-text-container,.plait-board-container.theme-starry .root .plait-text-container{color:#333}.drawnix{--focus-highlight-color: #a5d8ff;--icon-fill-color: var(--color-on-surface);--island-bg-color: #ffffff;--island-border-color: #eeeeee;--keybinding-color: var(--color-gray-40);--shadow-island: 0 0 16px #00000014;--dialog-border-color: var(--color-gray-20);--link-color: var(--color-primary);--default-button-size: 2rem;--default-icon-size: 1rem;--lg-button-size: 2.25rem;--lg-icon-size: 1.125rem;--xlg-icon-size: 1.25rem;--popup-label-size: 1.25rem;--editor-container-padding: 1rem;--space-factor: .25rem;--text-primary-color: var(--color-on-surface);--color-icon-white: #ffffff;--color-primary: #6698ff;--color-primary-darker: #4a7ee6;--color-primary-darkest: #3366cc;--color-primary-light: #e6f0ff;--color-primary-light-darker: #cce0ff;--color-primary-hover: #80acff;--button-hover-bg: var(--color-surface-high);--button-active-bg: var(--color-surface-high);--button-active-border: var(--color-brand-active);--color-gray-10: #f5f5f5;--color-gray-20: #ebebeb;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-gray-70: #5c5c5c;--color-gray-80: #3d3d3d;--color-gray-85: #242424;--color-gray-90: #1e1e1e;--color-gray-100: #121212;--color-disabled: var(--color-gray-40);--color-promo: var(--color-primary);--color-success: #268029;--color-success-lighter: #cafccc;--border-radius-sm: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--color-surface-high: hsl(220, 100%, 97%);--color-surface-mid: hsl(220 25% 96%);--color-surface-low: hsl(220 25% 94%);--color-surface-lowest: #ffffff;--color-on-surface: #666666;--color-brand-hover: #6698ff;--color-on-primary-container: #6698ff;--color-surface-primary-container: rgba(102, 152, 255, .1);--color-brand-active: #6698ff;--color-border-outline: #767680;--color-border-outline-variant: #c5c5d0;--default-border-color: var(--color-surface-high)}@media screen and (min-device-width:1921px){.drawnix{--lg-button-size: 2.5rem;--lg-icon-size: 1.25rem;--default-button-size: 2.25rem;--default-icon-size: 1.25rem}}.drawnix{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif}.drawnix .pencil-mode-toolbar{position:absolute;top:82px;left:0}.drawnix .pencil-mode-toolbar .tool-icon__icon{width:auto;padding:0 8px;background-color:var(--color-surface-mid)}.drawnix .draw-toolbar{cursor:default;position:absolute;top:36px;left:50%;transform:translate(-50%)}.drawnix--mobile.drawnix .draw-toolbar{top:20px}.drawnix .zoom-toolbar{cursor:default;position:absolute;top:36px;right:36px}.drawnix--mobile.drawnix .zoom-toolbar{display:none}.drawnix .zoom-toolbar .zoom-out-button{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.drawnix .zoom-toolbar .zoom-menu-trigger{width:56px;display:flex;align-items:center;justify-content:center;color:var(--color-on-surface);border-radius:var(--border-radius-sm);cursor:pointer}.drawnix .zoom-toolbar .zoom-menu-trigger:hover,.drawnix .zoom-toolbar .zoom-menu-trigger.active{--background: var(--color-surface-primary-container);background-color:var(--background)}.drawnix .zoom-toolbar .zoom-in-button{color:var(--color-on-surface);border-top-left-radius:0!important;border-bottom-left-radius:0!important}.drawnix .app-toolbar{position:absolute;top:36px;left:36px}.drawnix--mobile.drawnix .app-toolbar{bottom:20px;top:auto;width:86%;left:50%;transform:translate(-50%)}.drawnix--mobile.drawnix .app-toolbar .stack{display:flex;align-items:center;justify-content:space-between}.drawnix .theme-toolbar{position:absolute;bottom:36px;right:36px}.drawnix--mobile.drawnix .theme-toolbar{display:none}.drawnix .theme-toolbar select{width:100px;background-color:var(--color-surface-secondary-container);color:var(--color-on-surface);border-radius:var(--border-radius-sm);padding:4px 8px;cursor:pointer;border:none;outline:none;font-size:14px}.drawnix .theme-toolbar select:hover{background-color:var(--color-surface-primary-container)}.drawnix .drawnix-link,.drawnix a{text-decoration:none;color:var(--link-color);-webkit-user-select:none;user-select:none;cursor:pointer}.drawnix .drawnix-link:hover,.drawnix a:hover{text-decoration:underline}.drawnix .drawnix-link:active,.drawnix a:active{text-decoration:none}.drawnix .a{font-weight:500;text-decoration:none;color:var(--link-color);-webkit-user-select:none;user-select:none;cursor:pointer}.drawnix textarea{outline:none}.drawnix textarea:hover,.drawnix textarea:focus{border:1px solid var(--color-primary)}.drawnix .drawnix-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border:none;border-style:none;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--icon-fill-color);font-family:var(--ui-font)}.drawnix .drawnix-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.drawnix .drawnix-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)))}.drawnix .drawnix-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.drawnix .drawnix-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.drawnix .drawnix-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.drawnix .drawnix-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.drawnix [plait-mindmap=true] img.image-origin--focus:hover{cursor:zoom-in}.drawnix .laser-pointer{background:transparent;position:fixed;left:0;top:0;z-index:2022;width:100vw;height:100vh}.drawnix .laser-pointer.mouse-course-hidden{pointer-events:none}.drawnix--readonly .plait-board-container .mind-node-extend-handle,.drawnix--readonly .plait-board-container .extend-handle,.drawnix--readonly .plait-board-container .quick-insert,.drawnix--readonly .plait-board-container .quick-insert-g,.drawnix--readonly .plait-board-container [class*=extend],.drawnix--readonly .plait-board-container [class*=quick-insert]{display:none!important;pointer-events:none!important}.drawnix--readonly .plait-board-container .resize-handle,.drawnix--readonly .plait-board-container .selection-rectangle,.drawnix--readonly .plait-board-container .active-handle{display:none!important}.drawnix--readonly .plait-board-container .slate-editable-container{pointer-events:none!important}.drawnix--readonly .plait-board-container .popup-toolbar,.drawnix--readonly .plait-board-container .context-menu{display:none!important}.drawnix--readonly .board-host-svg g[plait-mind] .mind-node-extend-handle,.drawnix--readonly .board-host-svg g[plait-mind] .extend-handle{display:none!important}.plait-board-container.pointer-eraser .board-host-svg{cursor:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTAiIGN5PSIxMCIgcj0iNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNjY2IiBzdHJva2Utd2lkdGg9IjEuNSIvPgo8L3N2Zz4=) 10 10,crosshair!important}.plait-board-container .slate-editable-container{cursor:inherit!important}.Dialog-overlay{background:#12121233;display:grid;place-items:center}.Dialog{margin:15px;background-color:#fff;padding:15px;border-radius:4px}.drawnix .dialog-mermaid-title{margin-block:.25rem;font-size:1.25rem;font-weight:700;padding-inline:2.5rem}:export{themeFilter:invert(93%) hue-rotate(180deg);rightSidebarWidth:302px}.drawnix .Dialog.ttd-dialog{padding:1.25rem;display:flex;flex-direction:column;width:100%;max-width:1024px;height:100%;max-height:540px}.drawnix .Dialog.ttd-dialog.Dialog--fullscreen{margin-top:0}.drawnix .Dialog.ttd-dialog .Island{padding-inline:0!important;height:100%;display:flex;flex-direction:column;flex:1 1 auto;box-shadow:none}.drawnix .Dialog.ttd-dialog .Modal__content{height:auto;max-height:100%}@media screen and (min-width:861px){.drawnix .Dialog.ttd-dialog .Modal__content{max-height:750px;height:100%}}.drawnix .Dialog.ttd-dialog .Dialog__content{flex:1 1 auto}.drawnix .ttd-dialog-desc{font-size:15px;font-style:italic;font-weight:500;margin-bottom:1.5rem}.drawnix .ttd-dialog-tabs-root{width:100%;height:100%;display:flex;flex-direction:column}.drawnix .ttd-dialog-tab-trigger{color:var(--color-on-surface);font-size:.875rem;margin:0;padding:0 1rem;background-color:transparent;border:0;height:2.875rem;font-weight:600;font-family:inherit;letter-spacing:.4px}.drawnix .ttd-dialog-tab-trigger[data-state=active]{border-bottom:2px solid var(--color-primary)}.drawnix .ttd-dialog-triggers{border-bottom:1px solid var(--color-surface-high);margin-bottom:1.5rem;padding-inline:2.5rem}.drawnix .ttd-dialog-content{padding-inline:2.5rem;height:100%;display:flex;flex-direction:column}.drawnix .ttd-dialog-content[hidden]{display:none}.drawnix .ttd-dialog-input{width:auto;height:10rem;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;font-family:monospace}@media screen and (min-width:861px){.drawnix .ttd-dialog-input{width:100%;height:100%}}.drawnix .ttd-dialog-output-wrapper{display:flex;align-items:center;justify-content:center;padding:.85rem;box-sizing:border-box;flex-grow:1;position:relative;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);height:400px;width:auto}@media screen and (min-width:861px){.drawnix .ttd-dialog-output-wrapper{width:100%;height:200px}}.drawnix .ttd-dialog-output-wrapper canvas{max-width:100%;max-height:100%}.drawnix .ttd-dialog-output-canvas-container{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-grow:1;overflow:hidden}.drawnix .ttd-dialog-output-error{color:red;font-weight:700;font-size:30px;word-break:break-word;overflow:auto;max-height:100%;height:100%;width:100%;text-align:center;position:absolute;z-index:10}.drawnix .ttd-dialog-output-error p{font-weight:500;font-family:Cascadia;text-align:left;white-space:pre-wrap;font-size:.875rem;padding:0 10px}.drawnix .ttd-dialog-panels{height:100%}@media screen and (min-width:861px){.drawnix .ttd-dialog-panels{display:grid;grid-template-columns:1fr 1fr;gap:4rem}}.drawnix .ttd-dialog-panel{display:flex;flex-direction:column;width:100%}.drawnix .ttd-dialog-panel__header{display:flex;margin:0 4px 4px;align-items:center;gap:1rem}.drawnix .ttd-dialog-panel__header label{font-size:14px;font-style:normal;font-weight:600}.drawnix .ttd-dialog-panel:first-child .ttd-dialog-panel-button-container:not(.invisible){margin-bottom:4rem}@media screen and (min-width:861px){.drawnix .ttd-dialog-panel .ttd-dialog-panel-button-container:not(.invisible){margin-bottom:.5rem!important}}.drawnix .ttd-dialog-panel textarea{height:100%;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;width:100%;font-family:monospace}@media screen and (max-width:861px){.drawnix .ttd-dialog-panel textarea{width:auto;height:10rem}}.drawnix .ttd-dialog-panel-button-container{margin-top:1rem;margin-bottom:.5rem}.drawnix .ttd-dialog-panel-button-container.invisible .ttd-dialog-panel-button{display:none}@media screen and (min-width:861px){.drawnix .ttd-dialog-panel-button-container.invisible .ttd-dialog-panel-button{display:block;visibility:hidden}}.drawnix .ttd-dialog-panel-button{position:relative}.drawnix .ttd-dialog-panel-button.drawnix-button{font-family:inherit;font-weight:600;height:2.5rem;font-size:12px;color:#fff;background-color:var(--color-primary);width:100%}.drawnix .ttd-dialog-panel-button.drawnix-button:hover{background-color:var(--color-primary-darker)}.drawnix .ttd-dialog-panel-button.drawnix-button:active{background-color:var(--color-primary-darkest)}.drawnix .ttd-dialog-panel-button.drawnix-button:disabled{opacity:.5;cursor:not-allowed}.drawnix .ttd-dialog-panel-button.drawnix-button:disabled:hover{background-color:var(--color-primary)}@media screen and (min-width:861px){.drawnix .ttd-dialog-panel-button.drawnix-button{width:auto;min-width:7.5rem}}.drawnix.theme--dark.drawnix .ttd-dialog-panel-button.drawnix-button{color:var(--color-gray-100)}.drawnix .ttd-dialog-panel-button div{display:contents}.drawnix .ttd-dialog-panel-button div.invisible{visibility:hidden}.drawnix .ttd-dialog-panel-button div.Spinner{display:flex!important;position:absolute;top:0;right:0;bottom:0;left:0;--spinner-color: white}.drawnix.theme--dark.drawnix .ttd-dialog-panel-button div.Spinner{--spinner-color: var(--color-gray-100)}.drawnix .ttd-dialog-panel-button div span{padding-left:.5rem;display:flex}.drawnix .ttd-dialog-submit-shortcut{margin-inline-start:.5rem;font-size:.625rem;opacity:.6;display:flex;gap:.125rem}.drawnix .ttd-dialog-submit-shortcut__key{border:1px solid gray;padding:2px 3px;border-radius:4px}.clean-confirm{background:#fff;border-radius:8px;padding:20px;width:300px}.clean-confirm__title{font-size:18px;font-weight:500;margin:0 0 8px}.clean-confirm__description{color:#666;font-size:14px;margin:0 0 20px}.clean-confirm__actions{display:flex;justify-content:flex-end;gap:8px}.clean-confirm__button{padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;border:none}.clean-confirm__button--cancel{background:#f5f5f5;color:#000}.clean-confirm__button--cancel:hover{background:#e8e8e8}.clean-confirm__button--ok{background:#fff;color:#ff4d4f;border:1px solid #ff4d4f}.clean-confirm__button--ok:hover{color:#fff;background:#ff4d4f}.drawnix .link-popup{padding-left:8px}.drawnix .link-popup__link{font-size:14px}.drawnix .link-popup .link-popup__link{display:inline-block;width:18rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawnix .link-popup__input{padding:10px 0;width:328px;border:none;border-radius:4px;font-size:14px;outline:none}.drawnix-tutorial{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif;position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background-color:transparent}.drawnix-tutorial p{margin:0;font-size:14px;color:#888;line-height:1.5}.drawnix-tutorial .tutorial-overlay{position:absolute;width:100%;height:100%;pointer-events:none;display:flex;justify-content:center;align-items:center}.drawnix-tutorial .tutorial-content{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.drawnix-tutorial .brand-title{font-size:72px;font-weight:400;color:#333;letter-spacing:2px;margin:0 0 25px}.drawnix-tutorial .brand-description{font-size:18px;color:#333;text-align:center;max-width:600px;line-height:1.6;font-style:italic;margin-bottom:25px}.drawnix-tutorial .brand-tooltip{color:#888;text-align:center;max-width:600px;line-height:1.6;margin-bottom:40px}.drawnix-tutorial .feature-pointer{position:absolute}.drawnix-tutorial .top-left{position:absolute;top:100px;left:60px}.drawnix-tutorial .top-left .pointer-content{position:absolute;top:100px;width:100%;text-align:center;left:20px}.drawnix-tutorial .top-center{top:100px;left:50%;width:200px;transform:translate(-50%)}.drawnix-tutorial .top-center .pointer-content{position:absolute;width:100%;top:50px;left:60px}.drawnix-tutorial .bottom-right{bottom:70px;right:40px}.drawnix-tutorial .bottom-right .pointer-content{position:absolute;top:-30px;right:80px;width:100%}@media screen and (max-width:768px){.drawnix-tutorial .tutorial-content{width:95%;height:95%}.drawnix-tutorial .feature-pointer{display:none}}.board-editor-container{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.board-editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh}.board-editor-loading .loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.board-editor-loading p{margin-top:1rem;color:#666}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.board-editor-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#fff;border-bottom:1px solid #e9ecef;z-index:100}.board-editor-title{display:flex;align-items:center;gap:1rem}.breadcrumbs{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.breadcrumb-link{background:none;border:none;color:#007bff;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .2s;font-size:.9rem}.breadcrumb-link:hover{background:#e7f3ff;text-decoration:underline}.breadcrumb-separator{color:#999}.breadcrumb-current{color:#333;font-weight:500}.board-editor-controls{display:flex;align-items:center;gap:1rem}.sync-status{padding:.5rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500}.sync-status.sync-status-syncing{background:#fff3cd;color:#856404}.sync-status.sync-status-synced{background:#d4edda;color:#155724}.sync-status.sync-status-error{background:#f8d7da;color:#721c24}.sync-status.sync-status-idle{background:#e2e3e5;color:#383d41}.user-menu{display:flex;align-items:center;gap:1rem}.btn-share,.btn-login,.btn-logout{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-share{background:#007bff;color:#fff}.btn-share:hover{background:#0056b3}.btn-login{background:#28a745;color:#fff}.btn-login:hover{background:#218838}.btn-logout{background:#dc3545;color:#fff}.btn-logout:hover{background:#c82333}.username{font-size:.9rem;color:#495057;font-weight:500}.board-editor-content{flex:1;overflow:hidden;position:relative}.auth-required-message{display:flex;align-items:center;justify-content:center;height:100%;background:#f8f9fa}.auth-required-message .message-content{text-align:center;padding:2rem}.auth-required-message .message-content h2{font-size:2rem;color:#333;margin-bottom:1rem}.auth-required-message .message-content p{font-size:1.1rem;color:#666;margin-bottom:2rem}.btn-auth-required{padding:1rem 2rem;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-auth-required:hover{background:#0056b3}.admin-dashboard{height:100vh;background:#fafbfc;padding:0;padding-bottom:3rem;overflow-y:auto;overflow-x:hidden}.landing-bg-decoration{position:fixed;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0;pointer-events:none}.decoration-grid{position:absolute;top:0;left:0;width:100%;height:600px;background-image:linear-gradient(rgba(59,130,246,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(59,130,246,.03) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:linear-gradient(to bottom,#00000080,#0000);mask-image:linear-gradient(to bottom,#00000080,#0000)}.decoration-gradient{position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(59,130,246,.08) 0%,transparent 70%);border-radius:50%}.admin-header{background:#fff;box-shadow:0 2px 8px #0000000d;padding:2rem 3rem;position:sticky;top:0;z-index:100}.admin-header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.admin-logo{display:flex;align-items:center;gap:1rem}.admin-logo svg{flex-shrink:0}.admin-logo h1{margin:0;font-size:32px;font-weight:800;color:#1e293b}.btn-back{padding:12px 24px;background:#1e293b;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-back:hover{background:#334155}.admin-tabs{max-width:1400px;margin:2rem auto;padding:0 3rem;display:flex;gap:1rem;position:relative;z-index:1}.admin-tab{padding:12px 24px;background:#fff;border:2px solid transparent;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#64748b}.admin-tab:hover{background:#f8fafc;border-color:#e2e8f0}.admin-tab.active{background:#1e293b;color:#fff}.admin-content{max-width:1400px;margin:0 auto;padding:0 3rem 3rem;position:relative;z-index:1}.admin-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:#64748b}.admin-error{max-width:1400px;margin:2rem auto;padding:1rem 3rem;background:#fee;color:#c33;border-radius:12px;font-weight:500}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.stat-card{background:#fff;border-radius:16px;padding:2rem;border:1px solid #E2E8F0;transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000000f;border-color:#3b82f64d}.stat-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;margin-bottom:1.25rem;background:#3b82f614;color:#3b82f6}.stat-card-primary .stat-card-icon{background:#3b82f614;color:#3b82f6}.stat-card-success .stat-card-icon{background:#10b98114;color:#10b981}.stat-card-info .stat-card-icon{background:#8b5cf614;color:#8b5cf6}.stat-card h3{margin:0 0 .5rem;font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.stat-card .stat-value{font-size:42px;font-weight:700;color:#1e293b;line-height:1;margin-bottom:.75rem;letter-spacing:-.02em}.stat-card .stat-trend{display:inline-flex;align-items:center;gap:.375rem;font-size:13px;font-weight:500;color:#64748b}.stat-card .stat-trend svg{width:14px;height:14px}.stat-card .stat-trend.positive{color:#10b981}.stat-card .stat-trend.negative{color:#ef4444}.stat-card .stat-trend.negative svg{transform:rotate(180deg)}.stat-card .stat-trend.neutral{color:#64748b}.charts-section{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}.chart-card{background:#fff;border-radius:16px;border:1px solid #E2E8F0;overflow:hidden;transition:all .3s ease}.chart-card:hover{border-color:#3b82f64d;box-shadow:0 8px 30px #0000000f}.chart-card-header{padding:1.5rem 1.5rem 0}.chart-card-header h3{margin:0 0 .375rem;font-size:16px;font-weight:600;color:#1e293b}.chart-card-header p{margin:0;font-size:13px;color:#64748b}.chart-card-wide{grid-column:1/-1}.chart-container{padding:1.5rem}.chart-container .recharts-cartesian-grid-horizontal line,.chart-container .recharts-cartesian-grid-vertical line{stroke:#f1f5f9}.chart-container .recharts-legend-item-text{color:#64748b!important;font-size:13px}.chart-container .recharts-tooltip-wrapper{outline:none}@media(max-width:1024px){.charts-section{grid-template-columns:1fr}.chart-card-wide{grid-column:1}}.admin-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.admin-table{width:100%;border-collapse:collapse}.admin-table thead{background:#1e293b}.admin-table thead tr th{padding:1rem 1.5rem;text-align:left;font-size:14px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.admin-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s ease}.admin-table tbody tr:hover{background:#f8fafc}.admin-table tbody tr:last-child{border-bottom:none}.admin-table tbody tr td{padding:1rem 1.5rem;font-size:14px;color:#334155}.role-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge.admin{background:#1e293b;color:#fff}.role-badge.user{background:#e2e8f0;color:#475569}.owner-info{display:flex;flex-direction:column;gap:4px}.owner-info .owner-email{font-size:12px;color:#64748b}.btn-delete{padding:8px 16px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-delete:hover:not(:disabled){background:#b91c1c}.btn-delete:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.admin-header,.admin-tabs,.admin-content{padding-left:1.5rem;padding-right:1.5rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media(max-width:768px){.admin-header-content{flex-direction:column;gap:1rem;align-items:flex-start}.admin-header-content h1{font-size:24px}.admin-tabs{flex-direction:column}.stats-grid{grid-template-columns:1fr}.admin-table-container{overflow-x:auto}.admin-table{min-width:800px}}.app-container{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.app-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background-color:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 1px 3px #0000000d;z-index:100}.app-header .app-title{font-size:18px;font-weight:600;color:#333}.app-header .app-controls{display:flex;align-items:center;gap:16px}.app-header .sync-status{font-size:13px;padding:4px 10px;border-radius:12px;display:flex;align-items:center;gap:4px}.app-header .sync-status.sync-status-idle{background-color:#f5f5f5;color:#666}.app-header .sync-status.sync-status-syncing{background-color:#e3f2fd;color:#1976d2}.app-header .sync-status.sync-status-synced{background-color:#e8f5e9;color:#388e3c}.app-header .sync-status.sync-status-error{background-color:#ffebee;color:#c62828}.app-header .user-menu{display:flex;align-items:center;gap:12px}.app-header .user-menu .username{font-size:14px;color:#666;font-weight:500}.app-header .btn-login,.app-header .btn-logout,.app-header .btn-share{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.app-header .btn-login{background-color:#4a9eff;color:#fff}.app-header .btn-login:hover{background-color:#3a8eef}.app-header .btn-share{background-color:#4a9eff;color:#fff}.app-header .btn-share:hover{background-color:#3a8eef}.app-header .btn-logout{background-color:#f5f5f5;color:#666}.app-header .btn-logout:hover{background-color:#e0e0e0;color:#333}.board-container{flex:1;overflow:hidden;position:relative}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100vw;background-color:#fafafa}.app-loading .loading-spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top-color:#4a9eff;border-radius:50%;animation:spin .8s linear infinite}.app-loading p{margin-top:16px;color:#666;font-size:14px}@keyframes spin{to{transform:rotate(360deg)}}.auth-required-message{display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:#1e293b}.auth-required-message .message-content{text-align:center;background:#fff;padding:48px 64px;border-radius:12px;box-shadow:0 10px 40px #00000026;max-width:500px}.auth-required-message .message-content h2{font-size:32px;font-weight:700;color:#1e293b;margin:0 0 16px}.auth-required-message .message-content p{font-size:16px;color:#64748b;margin:0 0 32px;line-height:1.6}.auth-required-message .message-content .btn-auth-required{padding:14px 32px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;background-color:#1e293b;color:#fff;transition:all .2s ease}.auth-required-message .message-content .btn-auth-required:hover{background-color:#334155}.auth-required-message .message-content .btn-auth-required:active{background-color:#475569}
