:root{--color-bg: #f4f5ff;--color-bg-muted: #eef1ff;--color-surface: #ffffff;--color-surface-soft: #f8f9ff;--color-border: rgba(15, 23, 42, .08);--color-border-strong: rgba(15, 23, 42, .12);--color-text: #0f172a;--color-text-muted: #64748b;--color-brand: #6366f1;--color-brand-strong: #4f46e5;--color-brand-muted: rgba(99, 102, 241, .14);--color-success: #22c55e;--color-danger: #ef4444;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .08);--shadow-sm: 0 6px 18px rgba(15, 23, 42, .08);--shadow-md: 0 18px 40px rgba(15, 23, 42, .08);--radius-sm: .4rem;--radius-md: .8rem;--radius-lg: 1.2rem;--radius-xl: 1.8rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--max-content-width: 1100px;--trans-fast: .15s}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}html{scroll-behavior:smooth;background:linear-gradient(180deg,#6366f11f,#0ea5e914)}body{margin:0;color:var(--color-text);font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;background:transparent;transition:opacity .22s ease;opacity:0}html.app-ready body{opacity:1}a{color:inherit;text-decoration:none}a:hover{color:var(--color-brand-strong)}p{margin:0 0 var(--space-4);color:var(--color-text-muted)}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.01em;color:var(--color-text)}h1{font-size:clamp(2rem,2.5vw,2.6rem)}h2{font-size:clamp(1.5rem,2vw,2rem)}button{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);padding:.5rem .95rem;font-weight:600;cursor:pointer;transition:transform var(--trans-fast) ease,box-shadow var(--trans-fast) ease,border-color var(--trans-fast) ease,background var(--trans-fast) ease}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-xs);border-color:var(--color-brand)}button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn{border:0;background:var(--color-brand);color:#fff;border-radius:var(--radius-sm);padding:.55rem 1.15rem;display:inline-flex;align-items:center;gap:.4rem;font-weight:600;box-shadow:0 8px 18px #6366f140}.btn:hover:not(:disabled){background:var(--color-brand-strong);box-shadow:0 12px 24px #6366f147}.btn--ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border);box-shadow:none}.btn--ghost:hover:not(:disabled){color:var(--color-brand-strong);background:#6366f10f;border-color:var(--color-brand);box-shadow:var(--shadow-xs)}.btn--flat{background:#0f172a14;color:var(--color-text);box-shadow:none;border:0}.btn--flat:hover:not(:disabled){background:#0f172a1f}.btn--small{padding:.4rem .8rem;font-size:.9rem}input,select,textarea{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-border);padding:.55rem .75rem;background:var(--color-surface);transition:border-color var(--trans-fast) ease,box-shadow var(--trans-fast) ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #6366f138}label{font-size:.85rem;font-weight:600;color:var(--color-text-muted)}.surface-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-xs);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);min-width:0;overflow:hidden}.surface-card--muted{background:var(--color-surface-soft)}.surface-card--frosted{background:#ffffffc7;backdrop-filter:blur(18px)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-shell__content{flex:1;width:100%;max-width:var(--max-content-width);margin:0 auto;padding:var(--space-7) var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-6)}.app-footer{border-top:1px solid var(--color-border);background:var(--color-surface);margin-top:auto}.app-footer__content{max-width:var(--max-content-width);margin:0 auto;padding:var(--space-4) var(--space-6);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;font-size:.875rem}.app-footer__links{display:flex;gap:var(--space-4);flex-wrap:wrap}.app-footer__link{color:var(--color-text-muted);text-decoration:none;transition:color .2s}.app-footer__link:hover{color:var(--color-text)}.app-footer__meta{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:.8rem}.app-footer__user{opacity:.7}.app-footer__version{opacity:.5;font-family:Courier New,monospace;font-size:.75rem}@media (max-width: 768px){.app-footer__content{flex-direction:column;align-items:flex-start}.app-footer__meta{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}.navbar{position:sticky;top:0;z-index:40;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);background:#f6f7ffd9;backdrop-filter:blur(18px);border-bottom:1px solid var(--color-border);box-shadow:0 12px 34px #0f172a14}.navbar__brand{display:flex;align-items:center;gap:var(--space-3);font-weight:700;letter-spacing:-.02em}.navbar__logo{width:36px;height:36px;border:0;padding:0;cursor:pointer;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-brand),var(--color-brand-strong));color:#fff;display:grid;place-items:center;font-size:1.1rem;font-weight:700;box-shadow:0 12px 24px #6366f159}.navbar__logo:focus-visible{outline:2px solid var(--color-brand-strong);outline-offset:3px}.navbar__product{font-size:1.05rem;display:flex;align-items:center;gap:var(--space-2)}.navbar__tier{display:inline-flex;align-items:center;padding:.2rem .5rem;font-size:.65rem;font-weight:700;letter-spacing:.5px;border-radius:4px;text-transform:uppercase;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.navbar__tier:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.navbar__tier--free{background:linear-gradient(135deg,#64748b,#94a3b8)}.navbar__tier--solo{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.navbar__tier--team{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.navbar__tier--business{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.navbar__nav{display:flex;align-items:center;gap:var(--space-3);margin-left:var(--space-6)}.navbar__link{padding:.45rem .8rem;border-radius:var(--radius-sm);font-weight:500;color:var(--color-text-muted);transition:color var(--trans-fast) ease,background var(--trans-fast) ease,box-shadow var(--trans-fast) ease}.navbar__link:hover{color:var(--color-brand-strong);background:#6366f114;box-shadow:var(--shadow-xs)}.navbar__link.is-active{color:var(--color-brand-strong);background:#6366f114;box-shadow:inset 0 0 0 1px #6366f14d}.navbar__meta{font-size:.8rem;color:var(--color-text-muted)}.navbar__actions{display:flex;align-items:center;gap:var(--space-2);margin-left:var(--space-4)}.navbar__meta strong{color:var(--color-text)}.page-stack{display:flex;flex-direction:column;gap:var(--space-6)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);flex-wrap:wrap}.page-header__content{display:flex;flex-direction:column;gap:var(--space-2);flex:1 1 260px}.page-header__eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--color-brand-strong)}.page-header__subtitle{max-width:540px}.page-header__actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);flex:0 1 280px}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.card-heading__meta{display:flex;flex-direction:column;gap:.4rem}.card-heading__meta h2{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0}.card-heading__meta p{font-size:.9rem;color:var(--color-text-muted);margin:0}.link-muted{font-weight:600;font-size:.9rem;color:var(--color-brand)}.link-muted:hover{color:var(--color-brand-strong)}.page-grid{display:grid;gap:var(--space-4)}.page-grid--responsive{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.page-grid--two{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.board-grid{display:grid;gap:var(--space-4)}.board-grid--recent{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.board-card-wrapper{position:relative}.board-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-surface);box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:.45rem;transition:transform var(--trans-fast) ease,box-shadow var(--trans-fast) ease}.board-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}.board-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.board-card__meta{font-size:.8rem;color:var(--color-text-muted)}.board-card__leave-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font-size:1.2rem;line-height:1;cursor:pointer;transition:all var(--trans-fast) ease;opacity:0;pointer-events:none;display:flex;align-items:center;justify-content:center}.board-card-wrapper:hover .board-card__leave-btn{opacity:1;pointer-events:auto}.board-card__leave-btn:hover{background:var(--color-error);color:#fff;border-color:var(--color-error);transform:scale(1.1)}.board-card__leave-btn:disabled{opacity:.5;cursor:not-allowed}.role-badge{font-size:.7rem;padding:2px 8px;border-radius:var(--radius-sm);font-weight:600;text-transform:uppercase}.role-badge--owner{background:var(--color-brand-soft);color:var(--color-brand)}.role-badge--editor{background:var(--color-success-soft);color:var(--color-success)}.role-badge--viewer{background:var(--color-surface-soft);color:var(--color-text-muted)}.empty-state{text-align:center;padding:var(--space-5);border-radius:var(--radius-lg);border:1px dashed var(--color-border);background:var(--color-surface-soft);display:flex;flex-direction:column;gap:var(--space-3);align-items:center;color:var(--color-text-muted)}.empty-state.small{padding:var(--space-4);font-size:.9rem}.error-banner{background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#b91c1c;padding:var(--space-4);border-radius:var(--radius-md)}.form-grid{display:grid;gap:var(--space-3);grid-template-columns:1fr;align-items:stretch}@media (min-width: 768px){.form-grid{grid-template-columns:1fr 1fr}.form-grid button[type=button]{grid-column:1 / -1}}.form-grid select,.form-grid input{min-width:0;max-width:100%}.form-grid button{max-width:100%}.input-field{display:flex;flex-direction:column;gap:.35rem}.input-field>span{font-size:.9rem;font-weight:600;color:var(--color-text)}.input-field input,.input-field select,.input-field textarea{padding:.65rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.95rem;background:var(--color-surface);color:var(--color-text);transition:border-color var(--trans-fast) ease,box-shadow var(--trans-fast) ease}.input-field input:focus,.input-field select:focus,.input-field textarea:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #6366f11a}.input-field input::placeholder,.input-field textarea::placeholder{color:var(--color-text-muted)}.list-rows{display:grid;gap:var(--space-3)}.list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-xs);transition:transform var(--trans-fast) ease,box-shadow var(--trans-fast) ease}.list-item:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.list-item__meta{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:0}.list-item__meta strong{font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item__meta span{font-size:.85rem;color:var(--color-text-muted)}.avatar-badge{width:36px;height:36px;border-radius:9999px;display:grid;place-items:center;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--color-brand),var(--color-brand-strong));box-shadow:var(--shadow-xs)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.stat-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-surface);display:flex;flex-direction:column;gap:.5rem;box-shadow:var(--shadow-xs)}.stat-card__label{font-size:.85rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.stat-card__value{font-size:2rem;font-weight:700}.stat-card__hint{font-size:.9rem;color:var(--color-text-muted)}.stat-card__trend{font-size:.85rem;font-weight:600}.stat-card__trend.is-positive{color:var(--color-success)}.stat-card__trend.is-negative{color:var(--color-danger)}.skeleton-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.skeleton{height:100px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--color-surface) 0%,var(--color-surface-soft) 50%,var(--color-surface) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}@keyframes shimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}.pill{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:var(--radius-full);font-size:.85rem;font-weight:600;background:var(--color-brand);color:#fff;box-shadow:var(--shadow-xs)}.pill--muted{background:var(--color-surface-soft);color:var(--color-text-muted);border:1px solid var(--color-border);box-shadow:none}.toast-host{position:fixed;right:var(--space-4);bottom:80px;display:grid;gap:var(--space-3);z-index:9999}.toast{background:var(--color-text);color:#fff;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.board-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.presence{display:flex;gap:6px;margin-left:auto}.presence .avatar{width:28px;height:28px;border-radius:9999px;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff}.board-page{display:flex;flex-direction:column;gap:var(--space-6);min-height:0}.board-layout{display:grid;grid-template-columns:1fr 320px;gap:var(--space-4);align-items:start}.board-sidebar{position:sticky;top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.board-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);min-height:400px;margin-bottom:var(--space-6)}.board-col{background:var(--color-bg-muted);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);min-height:400px;box-shadow:var(--shadow-sm);transition:box-shadow .2s;display:flex;flex-direction:column}.board-col:hover{box-shadow:var(--shadow-md)}.board-col-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-border)}.board-col-title{font-weight:700;font-size:1.125rem;color:var(--color-text);margin:0}.board-col-count{background:var(--color-border);color:var(--color-text-muted);font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:12px}.task-list{display:grid;gap:var(--space-3);min-height:140px}.task-card{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);display:flex;gap:var(--space-3);align-items:flex-start;box-shadow:var(--shadow-xs);cursor:grab;transition:box-shadow .2s,transform .2s}.task-card:hover{box-shadow:var(--shadow-sm)}.drag-handle{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-bg-muted);color:var(--color-text-muted);cursor:grab;flex-shrink:0;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-size:1.25rem;font-weight:600;border:none}.drag-handle svg{width:16px;height:16px}.kanban-task__content{flex:1;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.kanban-task__title{font-weight:600;color:var(--color-text);line-height:1.4}.kanban-task__title strong{display:block;word-wrap:break-word}.kanban-task__title input{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 10px;font:inherit;font-weight:600}.kanban-task__description{font-size:.875rem;color:var(--color-text-muted);line-height:1.5;margin:0;word-wrap:break-word}.kanban-task__subtasks{display:flex;align-items:center;gap:var(--space-2);font-size:.813rem;color:var(--color-text-muted);margin-top:var(--space-1)}.kanban-task__subtasks svg{flex-shrink:0}.kanban-task__actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.kanban-task__action-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:.813rem;font-weight:500;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all .15s}.kanban-task__action-btn:hover{background:var(--color-bg-muted);border-color:var(--color-border-strong)}.kanban-task__action-btn--danger{color:var(--color-danger)}.kanban-task__action-btn--danger:hover{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.kanban-task__action-btn svg{flex-shrink:0}.task-assignee-avatar{position:absolute;bottom:8px;right:8px;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--color-brand),var(--color-accent));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;border:2px solid var(--color-surface);box-shadow:var(--shadow-sm);cursor:help;z-index:1;pointer-events:none}@media (max-width: 768px){.task-assignee-avatar{top:8px;right:8px;bottom:auto;width:24px;height:24px;font-size:.65rem}}.task-title{flex:1}.task-title input{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 10px;font:inherit}.task-actions{display:flex;gap:var(--space-2);margin-left:auto}.sortable-ghost{opacity:.6;transform:rotate(1deg);background:var(--color-brand-soft)}.sortable-chosen{box-shadow:0 14px 32px #0f172a38;cursor:grabbing!important}.sortable-drag{opacity:.8;transform:rotate(2deg);box-shadow:0 20px 40px #0f172a4d;cursor:grabbing!important}.drag-ghost{opacity:.6}@media (max-width: 768px){.drag-handle{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.sortable-chosen .drag-handle{cursor:grabbing}.task-card{touch-action:manipulation}}.quick-actions{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.quick-actions__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.quick-actions__item h3{margin:0;font-size:1rem}.quick-actions__item p{margin:0;color:var(--color-text-muted);font-size:.9rem}.guidelines{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.guidelines li{display:flex;flex-direction:column;gap:.35rem;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-muted)}.guidelines strong{font-size:.95rem}.guidelines span{color:var(--color-text-muted);font-size:.85rem}.board-create{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4)}.board-create .input-field{flex:1 1 260px}.board-create .btn{flex:0 0 auto}.plan-limit-info{display:flex;align-items:center;gap:var(--space-3);font-size:.9rem;color:var(--color-text-muted)}.plan-badge{display:inline-block;padding:.25rem .625rem;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;border-radius:6px;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.limit-text{color:var(--color-text-muted);font-size:.9rem}@media (max-width: 1100px){.app-shell__content{padding:var(--space-6) var(--space-5) var(--space-7)}}@media (max-width: 960px){.quick-actions__item{flex-direction:column;align-items:flex-start}.navbar{height:auto;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.navbar__nav{order:3;width:100%;flex-wrap:wrap;gap:var(--space-2);margin-left:0}.navbar__actions{order:2;width:100%;justify-content:flex-start;margin-left:0}.navbar__meta{width:100%;order:2}.app-shell__content{padding:var(--space-6) var(--space-4) var(--space-7)}.page-header__actions{justify-content:flex-start}.board-columns{grid-template-columns:1fr}}@media (max-width: 620px){.page-header{gap:var(--space-4)}.navbar__brand{width:100%;justify-content:space-between}}.modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);animation:fadeIn .2s ease-out}.modal-content{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out;overflow:hidden}.modal-content>form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:2px solid var(--color-border)}.modal-header h2{font-size:1.5rem;font-weight:700;margin:0;color:var(--color-text)}.modal-close{background:transparent;border:none;padding:var(--space-2);cursor:pointer;color:var(--color-text-muted);transition:color .2s;border-radius:var(--radius-sm)}.modal-close:hover{color:var(--color-text);background:var(--color-bg-muted)}.modal-body{padding:var(--space-6);overflow-y:auto;flex:1;min-height:0}.form-group{margin-bottom:var(--space-5)}.form-group label{display:block;font-weight:600;margin-bottom:var(--space-2);color:var(--color-text)}.form-group input[type=text],.form-group textarea{width:100%;padding:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);font:inherit;color:var(--color-text);background:var(--color-surface-soft);transition:border-color .2s}.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:var(--color-brand)}.form-group textarea{resize:vertical;min-height:100px}.subtask-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3);max-height:300px;overflow-y:auto}.subtask-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:var(--radius-md)}.subtask-checkbox{width:18px;height:18px;cursor:pointer;flex-shrink:0}.subtask-item span{flex:1;color:var(--color-text)}.subtask-completed{text-decoration:line-through;color:var(--color-text-muted)}.subtask-remove{background:transparent;border:none;padding:var(--space-1);cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-sm);transition:all .2s;flex-shrink:0}.subtask-remove:hover{color:var(--color-danger);background:var(--color-bg-muted)}.subtask-add{display:flex;gap:var(--space-2)}.subtask-add input{flex:1;padding:var(--space-2) var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);font:inherit}.subtask-add button{flex-shrink:0}.modal-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-top:2px solid var(--color-border);flex-shrink:0;background:var(--color-surface)}.modal-footer__actions{display:flex;gap:var(--space-3)}.btn--danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn--danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626;color:#fff}.btn--primary{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.btn--primary:hover:not(:disabled){background:var(--color-brand-strong);border-color:var(--color-brand-strong);color:#fff}.pricing-toggle{display:flex;justify-content:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-muted);border-radius:var(--radius-lg);width:fit-content;margin:0 auto var(--space-8)}.pricing-toggle__btn{position:relative;padding:var(--space-2) var(--space-4);background:transparent;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s;color:var(--color-text-muted)}.pricing-toggle__btn:hover:not(.is-active){background:#ffffff80;color:var(--color-text)}.pricing-toggle__btn.is-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs)}.pricing-toggle__badge{position:absolute;top:-8px;right:-8px;background:var(--color-brand);color:#fff;font-size:.625rem;padding:2px 6px;border-radius:8px;font-weight:700}.stats-widget{background:linear-gradient(135deg,#6366f114,#0ea5e914);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:0 4px 20px #6366f11a;transition:all .3s ease;animation:fadeInUp .5s ease}.stats-widget:hover{transform:translateY(-2px);box-shadow:0 8px 30px #6366f126;border-color:#6366f14d}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stats-widget__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.stats-widget__level{display:flex;align-items:center;gap:var(--space-2)}.stats-widget__level-badge{background:linear-gradient(135deg,var(--color-brand),var(--color-brand-strong));color:#fff;padding:.5rem 1rem;border-radius:var(--radius-full);font-weight:700;font-size:1rem;box-shadow:0 4px 12px #6366f166;transition:all .3s ease;animation:pulse 2s ease-in-out infinite}.stats-widget__level-badge:hover{transform:scale(1.05);box-shadow:0 6px 16px #6366f180}@keyframes pulse{0%,to{box-shadow:0 4px 12px #6366f166}50%{box-shadow:0 4px 20px #6366f199}}.stats-widget__xp{font-size:.9rem;font-weight:600;color:var(--color-text-muted);transition:color .2s ease}.stats-widget__xp:hover{color:var(--color-text)}.stats-widget__streak{display:flex;align-items:center;gap:.4rem;background:#ef44441a;padding:.4rem .8rem;border-radius:var(--radius-full);border:1px solid rgba(239,68,68,.2);transition:all .3s ease}.stats-widget__streak:hover{background:#ef444426;border-color:#ef44444d;transform:scale(1.05)}.stats-widget__streak-icon{font-size:1.2rem;animation:flicker 1.5s ease-in-out infinite}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.stats-widget__streak-count{font-size:.85rem;font-weight:700;color:#dc2626}.stats-widget__progress{display:flex;flex-direction:column;gap:.4rem}.progress-bar{height:10px;background:var(--color-bg-muted);border-radius:var(--radius-full);overflow:hidden;position:relative}.progress-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-bar__fill{height:100%;background:linear-gradient(90deg,var(--color-brand),var(--color-brand-strong));border-radius:var(--radius-full);transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #6366f180}.stats-widget__progress-text{font-size:.8rem;color:var(--color-text-muted);text-align:center}.stats-widget__badges{display:flex;flex-direction:column;gap:.5rem}.stats-widget__badges-header{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;color:var(--color-text)}.stats-widget__badges-count{color:var(--color-text-muted);font-size:.8rem}.stats-widget__badges-list{display:flex;gap:.4rem;flex-wrap:wrap;min-height:32px;align-items:center}.badge-icon{font-size:1.8rem;cursor:help;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));animation:badgePop .5s ease backwards}@keyframes badgePop{0%{opacity:0;transform:scale(0) rotate(-180deg)}50%{transform:scale(1.2) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0)}}.badge-icon:hover{transform:scale(1.3) rotate(10deg);filter:drop-shadow(0 4px 8px rgba(99,102,241,.4))}.stats-widget__no-badges{font-size:.85rem;color:var(--color-text-muted);font-style:italic;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.stats-widget__stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid rgba(99,102,241,.1)}.stat-mini{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:var(--space-2);border-radius:var(--radius-md);transition:all .2s ease}.stat-mini:hover{background:#6366f10d;transform:translateY(-2px)}.stat-mini__value{font-size:1.25rem;font-weight:700;color:var(--color-brand)}.stat-mini__label{font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;text-align:center}.xp-notifications{position:fixed;top:100px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.xp-notification{background:linear-gradient(135deg,var(--color-brand),var(--color-brand-strong));color:#fff;padding:.6rem 1rem;border-radius:var(--radius-lg);font-weight:700;font-size:1rem;box-shadow:0 8px 24px #6366f166;opacity:0;transform:translate(100px) scale(.8);transition:all .3s ease}.xp-notification.show{opacity:1;transform:translate(0) scale(1)}.level-up-celebration{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;animation:levelUpAppear .5s ease-out}.level-up-celebration.fade-out{animation:levelUpFadeOut .5s ease-out forwards}.level-up-content{background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;padding:var(--space-6) var(--space-8);border-radius:var(--radius-xl);box-shadow:0 20px 60px #6366f180;text-align:center;display:flex;flex-direction:column;gap:var(--space-2)}.level-up-icon{font-size:4rem;animation:bounce .5s ease-out infinite alternate}.level-up-text{font-size:2rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.level-up-level{font-size:3rem;font-weight:700}@keyframes levelUpAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes levelUpFadeOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.8)}}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.pricing-card{position:relative;display:flex;flex-direction:column;padding:var(--space-6);transition:transform .2s,box-shadow .2s}.pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.pricing-card--popular{border:2px solid var(--color-brand)}.pricing-card__badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--color-brand);color:#fff;font-size:.75rem;font-weight:700;padding:4px 16px;border-radius:16px;box-shadow:var(--shadow-sm)}.pricing-card__header{text-align:center;margin-bottom:var(--space-5)}.pricing-card__name{font-size:1.5rem;font-weight:700;margin:0 0 var(--space-2);color:var(--color-text)}.pricing-card__tagline{font-size:.875rem;color:var(--color-text-muted);margin:0}.pricing-card__price{text-align:center;margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:2px solid var(--color-border)}.pricing-card__currency{font-size:1.5rem;font-weight:600;color:var(--color-text-muted);vertical-align:top}.pricing-card__amount{font-size:3.5rem;font-weight:700;color:var(--color-text);line-height:1}.pricing-card__period{font-size:1rem;color:var(--color-text-muted)}.pricing-card__billing-note{font-size:.875rem;color:var(--color-text-muted);margin-top:var(--space-2)}.pricing-card__custom{font-size:2rem;font-weight:700;color:var(--color-text)}.pricing-card__features{list-style:none;padding:0;margin:0 0 var(--space-6);flex:1}.pricing-card__feature{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;color:var(--color-text);font-size:.938rem}.pricing-card__check{flex-shrink:0;color:var(--color-brand)}.pricing-card__cta{width:100%}.pricing-addons{margin-bottom:var(--space-8)}.pricing-addons__header{text-align:center;margin-bottom:var(--space-6)}.pricing-addons__header h2{font-size:1.75rem;font-weight:700;margin:0 0 var(--space-2)}.pricing-addons__header p{font-size:1rem;color:var(--color-text-muted);margin:0}.pricing-addons__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5)}.pricing-addon{text-align:center;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.pricing-addon__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-brand-soft);color:var(--color-brand);border-radius:12px;margin-bottom:var(--space-3)}.pricing-addon h3{font-size:1.125rem;font-weight:700;margin:0 0 var(--space-2)}.pricing-addon__price{font-size:1.5rem;font-weight:700;color:var(--color-brand);margin:0 0 var(--space-2)}.pricing-addon__desc{font-size:.875rem;color:var(--color-text-muted);margin:0}.pricing-faq__title{font-size:1.5rem;font-weight:700;text-align:center;margin:var(--space-8) 0 var(--space-6)}.leaderboard-container{max-width:900px;margin:0 auto;padding:var(--space-6) var(--space-4)}.leaderboard-header{text-align:center;margin-bottom:var(--space-6)}.leaderboard-title{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,var(--color-brand),var(--color-brand-strong));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 var(--space-2);animation:fadeInUp .6s ease}.leaderboard-subtitle{font-size:1.1rem;color:var(--color-text-muted);margin:0}.leaderboard-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);background:var(--color-bg-muted);padding:var(--space-1);border-radius:var(--radius-lg)}.leaderboard-tab{flex:1;padding:var(--space-3) var(--space-4);border:none;background:transparent;color:var(--color-text-muted);font-weight:600;font-size:.95rem;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.leaderboard-tab:hover{background:#6366f11a;color:var(--color-text)}.leaderboard-tab.active{background:var(--color-brand);color:#fff;box-shadow:0 2px 8px #6366f14d}.leaderboard-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8);color:var(--color-text-muted)}.leaderboard-list{display:flex;flex-direction:column;gap:var(--space-2)}.leaderboard-entry{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all .3s ease;animation:fadeInUp .4s ease backwards}.leaderboard-entry:hover{transform:translate(4px);box-shadow:0 4px 12px #0000001a;border-color:#6366f14d}.leaderboard-entry.is-top-3{background:linear-gradient(135deg,#ffd7000d,#ffd70005);border-color:#ffd7004d}.leaderboard-entry.is-current-user{background:linear-gradient(135deg,#6366f11a,#6366f10d);border-color:var(--color-brand);border-width:2px}.leaderboard-entry:nth-child(n){animation-delay:calc(var(--n, 0) * .05s)}.leaderboard-entry__rank{min-width:60px;text-align:center}.leaderboard-entry__medal{font-size:2rem;font-weight:700;display:inline-block;animation:bounce .6s ease backwards}.leaderboard-entry.is-top-3 .leaderboard-entry__medal{font-size:2.5rem}.leaderboard-entry__info{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.leaderboard-entry__user{display:flex;align-items:center;gap:var(--space-2)}.leaderboard-entry__level{background:linear-gradient(135deg,var(--color-brand),var(--color-brand-strong));color:#fff;padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700}.leaderboard-entry__name{font-weight:600;font-size:1.1rem}.leaderboard-entry.is-current-user .leaderboard-entry__name{color:var(--color-brand);font-weight:700}.leaderboard-entry__badges{display:flex;gap:var(--space-1);align-items:center}.leaderboard-badge-icon{font-size:1.2rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));transition:transform .2s ease;cursor:help}.leaderboard-badge-icon:hover{transform:scale(1.2)}.leaderboard-badge-more{font-size:.75rem;color:var(--color-text-muted);font-weight:600}.leaderboard-entry__value{font-size:1.2rem;font-weight:700;color:var(--color-brand);text-align:right;min-width:150px}.leaderboard-empty{text-align:center;padding:var(--space-8);color:var(--color-text-muted);font-size:1.1rem}@media (max-width: 768px){.leaderboard-tabs{flex-direction:column}.leaderboard-entry{flex-wrap:wrap}.leaderboard-entry__value{flex-basis:100%;text-align:left;margin-top:var(--space-2)}}.pricing-faq__title{text-align:center;font-size:1.75rem;font-weight:700;margin:0 0 var(--space-6)}.pricing-faq__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5)}.pricing-faq__item h3{font-size:1rem;font-weight:700;margin:0 0 var(--space-2);color:var(--color-text)}.pricing-faq__item p{font-size:.938rem;color:var(--color-text-muted);margin:0;line-height:1.6}.navbar__actions .btn{white-space:nowrap}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg-muted) 100%);padding:var(--space-6)}.login-container{width:100%;max-width:440px;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-8);border:1px solid var(--color-border)}.login-header{text-align:center;margin-bottom:var(--space-8)}.login-logo{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.login-logo-icon{width:48px;height:48px;background:var(--color-brand);color:#fff;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700;box-shadow:var(--shadow-md)}.login-logo-text{font-size:1.5rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em}.login-title{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 var(--space-2);letter-spacing:-.02em}.login-subtitle{font-size:1rem;color:var(--color-text-muted);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--space-4)}.login-message{padding:var(--space-3);border-radius:var(--radius-md);font-size:.875rem;line-height:1.5;font-weight:500}.login-message--error{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.login-message--success{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.login-social{display:flex;flex-direction:column;gap:var(--space-3)}.login-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:.938rem;font-weight:600;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.login-btn:hover:not(:disabled){background:var(--color-bg-muted);border-color:var(--color-brand);transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-btn:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-btn-icon{width:20px;height:20px;flex-shrink:0}.login-btn--google:hover:not(:disabled){border-color:#4285f4}.login-btn--microsoft{color:#2b2b2b}.login-btn--microsoft:hover:not(:disabled){border-color:#00a4ef}.login-btn--email:hover:not(:disabled){border-color:var(--color-brand)}.login-btn--primary{background:var(--color-brand);color:#fff;border-color:var(--color-brand);box-shadow:var(--shadow-md)}.login-btn--primary:hover:not(:disabled){background:var(--color-brand-dark);border-color:var(--color-brand-dark);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.login-divider{position:relative;text-align:center;margin:var(--space-2) 0}.login-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border)}.login-divider-text{position:relative;display:inline-block;padding:0 var(--space-3);background:var(--color-surface);color:var(--color-text-muted);font-size:.875rem;font-weight:500}.login-email-form{display:flex;flex-direction:column;gap:var(--space-4)}.login-input-group{display:flex;flex-direction:column;gap:var(--space-2)}.login-label{font-size:.875rem;font-weight:600;color:var(--color-text)}.login-input{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.938rem;color:var(--color-text);background:var(--color-surface);transition:all .2s ease}.login-input:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.1)}.login-input::placeholder{color:var(--color-text-muted)}.login-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.login-link{background:none;border:none;color:var(--color-brand);font-size:.875rem;font-weight:600;cursor:pointer;padding:var(--space-1);text-decoration:none;transition:color .2s ease}.login-link:hover:not(:disabled){color:var(--color-brand-dark);text-decoration:underline}.login-link:disabled{opacity:.6;cursor:not-allowed}.login-info{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border);text-align:center}.login-info p{font-size:.875rem;color:var(--color-text-muted);margin:0;line-height:1.6}.login-info strong{color:var(--color-text);font-weight:600}@media (max-width: 480px){.login-container{padding:var(--space-6)}.login-title{font-size:1.5rem}.login-footer{flex-direction:column;align-items:stretch}.login-link{text-align:center}}.notification-bell{position:relative}.notification-bell__button{position:relative;background:none;border:none;cursor:pointer;padding:.5rem;color:var(--color-text);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:background var(--trans-fast)}.notification-bell__button:hover{background:var(--color-surface-soft)}.notification-bell__badge{position:absolute;top:2px;right:2px;background:#ef4444;color:#fff;border-radius:9999px;padding:0 .35rem;font-size:.7rem;font-weight:600;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-surface)}.notification-dropdown{position:absolute;right:0;top:calc(100% + .5rem);width:360px;max-width:90vw;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;max-height:480px;display:flex;flex-direction:column}.notification-dropdown__header{padding:var(--space-4);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.notification-dropdown__header h3{margin:0;font-size:1rem;font-weight:600}.notification-dropdown__mark-all{background:none;border:none;color:var(--color-brand);font-size:.85rem;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:background var(--trans-fast)}.notification-dropdown__mark-all:hover{background:var(--color-brand-soft)}.notification-dropdown__list{overflow-y:auto;max-height:400px}.notification-dropdown__empty{padding:var(--space-8);text-align:center;color:var(--color-text-muted);font-size:.9rem}.notification-item{padding:var(--space-3);border-bottom:1px solid var(--color-border);cursor:pointer;transition:background var(--trans-fast);display:flex;gap:var(--space-3);align-items:flex-start;position:relative}.notification-item:hover{background:var(--color-surface-soft)}.notification-item--unread{background:var(--color-brand-soft)}.notification-item--unread:hover{background:var(--color-brand-soft);filter:brightness(.98)}.notification-item__icon{font-size:1.25rem;flex-shrink:0}.notification-item__content{flex:1;min-width:0}.notification-item__content p{margin:0 0 .25rem;font-size:.9rem;line-height:1.4}.notification-item__time{font-size:.75rem;color:var(--color-text-muted)}.notification-item__unread-dot{position:absolute;top:50%;right:var(--space-3);transform:translateY(-50%);width:8px;height:8px;background:var(--color-brand);border-radius:50%}@media (max-width: 768px){.btn,button:not(.notification-bell__button):not(.board-card__leave-btn){min-height:44px;padding:var(--space-3) var(--space-4)}.task-card{min-height:60px;padding:var(--space-3)}.drag-handle{font-size:1.4rem;padding:var(--space-2);min-width:44px;min-height:44px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-soft);border:1px solid var(--color-border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.drag-handle:active{cursor:grabbing;background:var(--color-brand-soft);animation:pulse-drag .5s ease-in-out}@keyframes pulse-drag{0%{transform:scale(1);box-shadow:0 0 #4f46e5b3}50%{transform:scale(1.05);box-shadow:0 0 0 10px #4f46e500}to{transform:scale(1.1);box-shadow:0 0 #4f46e500}}.sortable-chosen .drag-handle{cursor:grabbing;background:var(--color-brand)!important;color:#fff!important;transform:scale(1.15);box-shadow:0 4px 12px #4f46e580}.sortable-drag{opacity:.6;transform:rotate(3deg)}.drag-ghost{opacity:.3;background:var(--color-brand-soft)}.board-grid{grid-template-columns:1fr}.board-card{min-height:80px}.board-card__leave-btn{opacity:1;pointer-events:auto;width:36px;height:36px;font-size:1.4rem}.kanban-columns{flex-direction:row;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-4)}.kanban-column{min-width:280px;max-width:280px;flex-shrink:0}.modal{padding:var(--space-2)}.modal__content{max-width:100%;max-height:95vh;width:100%;margin:auto;overflow-y:auto}.modal__header,.modal__body,.modal__footer{padding:var(--space-3)}.app-shell__nav{flex-wrap:wrap;gap:var(--space-2)}.app-shell__nav a,.app-shell__nav button{min-height:44px;padding:var(--space-2) var(--space-3)}.page-header__title{font-size:1.75rem}.page-header__subtitle{font-size:.9rem}input[type=text],input[type=email],input[type=password],textarea,select{min-height:44px;font-size:16px}.notification-dropdown{left:0;right:0;width:100%;max-width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:70vh}.task-modal__actions{flex-direction:column;gap:var(--space-2)}.task-modal__actions button{width:100%}.pricing-grid{grid-template-columns:1fr;gap:var(--space-4)}.stats-grid{grid-template-columns:1fr}.surface-card{padding:var(--space-4)}.page-stack{gap:var(--space-4)}}@media (max-width: 375px){.kanban-column{min-width:260px;max-width:260px}.task-card{font-size:.9rem}.board-card,.surface-card{padding:var(--space-3)}}@media (hover: none) and (pointer: coarse){.task-card:hover,.board-card:hover{transform:none}.board-card__leave-btn{opacity:.7;pointer-events:auto}.board-card-wrapper:hover .board-card__leave-btn,.board-card__leave-btn:focus{opacity:1}button,a,.clickable{min-width:44px;min-height:44px}}@media (max-width: 768px) and (orientation: landscape){.kanban-columns{height:calc(100vh - 200px)}.modal__content{max-height:90vh}}
