:root{--font-main:"Inter", "Noto Sans Thai", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary:#09090b;--bg-secondary:#121215;--bg-tertiary:#18181b;--bg-card:#141417;--bg-card-hover:#1c1c20;--bg-glass:#121215f2;--border-subtle:#ffffff12;--border-strong:#ffffff24;--border-focus:#3b82f6;--text-main:#f4f4f5;--text-muted:#a1a1aa;--text-dim:#71717a;--accent-primary:#3b82f6;--accent-primary-hover:#2563eb;--accent-emerald:#10b981;--accent-amber:#f59e0b;--accent-rose:#ef4444;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #00000059;--shadow-lg:0 12px 28px #00000080;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-full:9999px;--transition-fast:.12s cubic-bezier(.16, 1, .3, 1)}.light-theme{--bg-primary:#fafafa;--bg-secondary:#fff;--bg-tertiary:#f4f4f5;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-glass:#fffffffa;--border-subtle:#e4e4e7;--border-strong:#d4d4d8;--border-focus:#2563eb;--text-main:#18181b;--text-muted:#52525b;--text-dim:#a1a1aa;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000f;--shadow-lg:0 10px 24px #00000014}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-primary);color:var(--text-main);letter-spacing:-.015em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.45;overflow-x:hidden}button,input,textarea,select{color:inherit;font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.app-layout{background-color:var(--bg-primary);width:100vw;height:100vh;display:flex;overflow:hidden}.main-content-area{background-color:var(--bg-primary);flex-direction:column;flex:1;height:100vh;display:flex;position:relative;overflow:hidden}.page-scroll-container{flex:1;padding:1rem 1.25rem 5rem;overflow:hidden auto}@media (width>=768px){.page-scroll-container{padding:1.25rem 1.5rem 1.5rem}}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle)}.card-elevated{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.card-elevated:hover{border-color:var(--border-strong)}.badge-priority{border-radius:var(--radius-xs);letter-spacing:.01em;align-items:center;gap:4px;padding:1px 6px;font-size:.675rem;font-weight:500;display:inline-flex}.badge-urgent{color:#ef4444;background:#ef44441a;border:1px solid #ef444433}.badge-high{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b33}.badge-medium{color:#3b82f6;background:#3b82f61a;border:1px solid #3b82f633}.badge-low{color:#a1a1aa;background:#a1a1aa1a;border:1px solid #a1a1aa33}.status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.dot-todo{background:#71717a}.dot-in-progress{background:#3b82f6}.dot-review{background:#8b5cf6}.dot-done{background:#10b981}.btn-primary{color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:#2563eb;border:1px solid #ffffff1a;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:500;display:inline-flex}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:var(--bg-tertiary);color:var(--text-main);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:5px;padding:5px 10px;font-size:.775rem;font-weight:500;display:inline-flex}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-strong)}.btn-icon{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--bg-tertiary);color:var(--text-main);border-color:var(--border-subtle)}.kanban-grid{scroll-snap-type:x mandatory;gap:.75rem;min-height:calc(100vh - 160px);padding-bottom:.75rem;display:flex;overflow-x:auto}.kanban-column{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);scroll-snap-align:start;flex-direction:column;flex:0 0 270px;min-width:260px;max-width:310px;max-height:84vh;display:flex}@media (width>=1200px){.kanban-column{flex:1;min-width:240px}}.kanban-column-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:.75rem .85rem;display:flex}.kanban-card-list{flex-direction:column;flex:1;gap:.5rem;min-height:80px;padding:.65rem;display:flex;overflow-y:auto}.kanban-card-list.drag-over{border:1px dashed var(--accent-primary);border-radius:var(--radius-sm);background:#3b82f60a}.task-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:grab;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);padding:.75rem .85rem;position:relative}.task-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.mobile-bottom-nav{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-subtle);z-index:50;justify-content:space-around;align-items:center;height:52px;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px){.mobile-bottom-nav{display:none}}.nav-item-touch{height:100%;color:var(--text-dim);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.675rem;font-weight:500;display:flex}.nav-item-touch.active{color:var(--accent-primary);font-weight:600}.ai-fab{color:#fff;width:40px;height:40px;box-shadow:var(--shadow-md);cursor:pointer;z-index:45;transition:all var(--transition-fast);background:#2563eb;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:64px;right:16px}@media (width>=768px){.ai-fab{bottom:18px;right:18px}}.ai-fab:hover{background:#1d4ed8}.modal-backdrop{-webkit-backdrop-filter:blur(4px);z-index:100;background:#000000a6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;max-width:540px;max-height:90vh;box-shadow:var(--shadow-lg);overflow-y:auto}.toast-banner{z-index:200;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);align-items:center;gap:8px;padding:7px 14px;font-size:.775rem;font-weight:500;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.toast-success{color:#a7f3d0;background:#064e3b;border:1px solid #059669}.toast-info{color:#f4f4f5;border:1px solid var(--border-strong);background:#18181b}.toast-warning{color:#fde68a;background:#78350f;border:1px solid #d97706}
