@import "https://fonts.googleapis.com/css2?family=Noto+Sans+Lao:wght@400;500;600;700&display=swap";:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e8edf3;--bg-orb-1:#5eead4;--bg-orb-2:#7dd3fc;--bg-orb-3:#a5b4fc;--surface:#ffffffe6;--surface-solid:#fff;--surface-raised:#f1f5f9;--border:#94a3b857;--border-strong:#64748b75;--text:#0f172a;--text-muted:#475569;--text-subtle:#64748b;--accent:#0d9488;--accent-hover:#0f766e;--accent-muted:#0d948824;--danger:#be123c;--danger-muted:#be123c1f;--warning:#b45309;--warning-muted:#b453091f;--info:#0369a1;--info-muted:#0369a11f;--progress:#0284c7;--backdrop:#0f172a6b;--glass-blur:14px;--glass-saturate:1.12;--glass-shine:inset 0 1px 0 #ffffffeb;--glass-shadow:0 1px 2px #0f172a0f, 0 6px 20px #0f172a12;--glass-shadow-lg:0 4px 16px #0f172a14, 0 18px 48px #0f172a1a;--stat-info-bg:#dbeafeeb;--stat-info-border:#60a5fa8c;--stat-success-bg:#ccfbf1eb;--stat-success-border:#2dd4bf80;--stat-warning-bg:#fef3c7f0;--stat-warning-border:#fbbf248c;--stat-danger-bg:#ffe4e6f0;--stat-danger-border:#fb71858c;--status-todo-bg:#f1f5f9f5;--status-todo-text:#64748b;--status-progress-bg:#dbeafef5;--status-progress-text:#0369a1;--status-review-bg:#ccfbf1f5;--status-review-text:#0f766e;--role-admin-bg:#ccfbf1eb;--role-admin-text:#0f766e;--role-manager-bg:#dbeafeeb;--role-manager-text:#0369a1;--sidebar-width:216px;--sidebar-width-collapsed:4rem;--mobile-breakpoint:900px;--mobile-nav-z:50;--mobile-backdrop-z:49;--space-1:.25rem;--space-2:.4rem;--space-3:.55rem;--space-4:.75rem;--space-5:1rem;--space-6:1.25rem;--page-pad-x:1.25rem;--page-pad-y:1rem;--navbar-pad-y:.65rem;--control-pad-y:.4rem;--control-pad-x:.7rem;--radius-base:11px;--radius-xs:calc(var(--radius-base) * .45);--radius-sm:calc(var(--radius-base) * .65);--radius:var(--radius-base);--radius-lg:calc(var(--radius-base) * 1.35);--radius-xl:calc(var(--radius-base) * 1.85);--radius-full:9999px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--bg-orb-1:#134e4a;--bg-orb-2:#1e3a5f;--bg-orb-3:#312e81;--surface:#161e2e8c;--surface-solid:#161e2ee0;--surface-raised:#2430449e;--border:#94a3b829;--border-strong:#94a3b847;--text:#f1f5f9;--text-muted:#94a3b8;--text-subtle:#64748b;--accent:#2dd4bf;--accent-hover:#5eead4;--accent-muted:#2dd4bf24;--danger:#fb7185;--danger-muted:#fb718524;--warning:#fbbf24;--warning-muted:#fbbf2424;--info:#38bdf8;--info-muted:#38bdf824;--progress:#38bdf8;--backdrop:#0206179e;--glass-shine:inset 0 1px 0 #ffffff1a;--glass-shadow:0 1px 2px #00000040, 0 16px 48px #00000059;--glass-shadow-lg:0 8px 32px #00000059, 0 28px 72px #0006;--stat-info-bg:#1e3a5fa6;--stat-info-border:#2563eb8c;--stat-success-bg:#134e4aa6;--stat-success-border:#14b8a673;--stat-warning-bg:#3d3014b3;--stat-warning-border:#b453098c;--stat-danger-bg:#3f1d1db3;--stat-danger-border:#b91c1c8c;--status-todo-bg:#2a303cb3;--status-todo-text:#94a3b8;--status-progress-bg:#1e3a5fb3;--status-progress-text:#7dd3fc;--status-review-bg:#134e4ab3;--status-review-text:#5eead4;--role-admin-bg:#134e4ab3;--role-admin-text:#5eead4;--role-manager-bg:#1e3a5fb3;--role-manager-text:#7dd3fc}*,:before,:after{box-sizing:border-box}html{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Noto Sans Lao,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.45}body{background-color:var(--bg);background-image:radial-gradient(ellipse 70% 55% at 8% 12%, color-mix(in srgb, var(--bg-orb-1) 55%, transparent), transparent 70%), radial-gradient(ellipse 60% 50% at 92% 8%, color-mix(in srgb, var(--bg-orb-2) 50%, transparent), transparent 68%), radial-gradient(ellipse 55% 45% at 78% 88%, color-mix(in srgb, var(--bg-orb-3) 45%, transparent), transparent 65%), radial-gradient(ellipse 40% 35% at 20% 80%, color-mix(in srgb, var(--bg-orb-2) 30%, transparent), transparent 70%), linear-gradient(160deg, color-mix(in srgb, var(--bg) 92%, white), var(--bg));background-attachment:fixed;min-height:100vh;margin:0}[data-theme=light] body{background-image:radial-gradient(ellipse 65% 50% at 8% 10%, color-mix(in srgb, var(--bg-orb-1) 28%, transparent), transparent 72%), radial-gradient(ellipse 55% 45% at 92% 6%, color-mix(in srgb, var(--bg-orb-2) 24%, transparent), transparent 70%), radial-gradient(ellipse 50% 40% at 80% 90%, color-mix(in srgb, var(--bg-orb-3) 20%, transparent), transparent 68%), linear-gradient(165deg, #f8fafc 0%, var(--bg) 48%, #e2e8f0 100%)}body.mobile-nav-open{overflow:hidden}@media (width<=900px){html{font-size:13.5px}:root,[data-theme=light],[data-theme=dark]{--page-pad-x:.75rem;--page-pad-y:.75rem;--navbar-pad-y:.55rem}}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit;color:var(--text);background:var(--surface-solid)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.glass,.glass-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--glass-shine), var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.glass-raised{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--glass-shine), var(--glass-shadow);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * .85)) saturate(var(--glass-saturate))}.glass-solid{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--glass-shine), var(--glass-shadow);-webkit-backdrop-filter:blur(12px)saturate(1.2)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar,.navbar,.section-menu,.modal,.delete-modal,.login-shell,.project-menu,.user-menu,.notif-panel,.detail-panel,.filters-bar,.invite-shell,.reset-shell{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:var(--glass-shine), var(--glass-shadow)}.modal,.delete-modal,.login-shell,.detail-panel,.project-menu,.user-menu,.notif-panel{box-shadow:var(--glass-shine), var(--glass-shadow-lg);background:var(--surface-solid)}.btn-primary,.btn.primary{box-shadow:inset 0 1px 0 #ffffff47, 0 8px 20px color-mix(in srgb, var(--accent) 28%, transparent)}.search input,.icon-btn,.btn-secondary,.btn.secondary,.theme-toggle,.nav-toggle{-webkit-backdrop-filter:blur(12px)saturate(1.2);box-shadow:var(--glass-shine)}}.tool-chip,.status-select,.priority-select,.section-select{-webkit-backdrop-filter:blur(10px)}body{margin:0}
