:root{--bg-main: #f4f1ea;--bg-panel: #fffdf9;--bg-accent: #144552;--ink-main: #1f2933;--ink-soft: #52606d;--line: #d9d2c5;--ok: #197278;--warn: #d1495b;--radius: 14px;--shadow: 0 12px 28px rgba(20, 69, 82, .08)}*{box-sizing:border-box}body{margin:0;font-family:Poppins,Trebuchet MS,Segoe UI,sans-serif;background:#f2f3f8;color:var(--ink-main)}.content-wrapper,.animated-card{background:#ffffffb8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.35);box-shadow:0 8px 32px #1f26871a;border-radius:1rem;transition:transform .3s ease,box-shadow .3s ease}.animated-card:hover{transform:translateY(-4px) scale(1.005);box-shadow:0 12px 40px #1f268726}.form-label{display:block;margin-bottom:6px;font-size:.84rem;font-weight:700;color:#475569}.form-input{width:100%;border:1px solid #d7dce5;border-radius:.8rem;padding:.72rem .85rem;background:#ffffffeb;color:#1f2937;outline:none}.form-input:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f11f}.platform-shell{display:flex;min-height:100vh}.sidebar{transition:transform .3s ease-in-out;z-index:40;box-shadow:0 0 30px #0003}.platform-sidebar{width:14rem;background:linear-gradient(180deg,#1e293b,#0f172a);color:#fff;padding:1rem;display:flex;flex-direction:column;justify-content:space-between;position:fixed;top:0;left:0;height:100%}.platform-brand{text-align:center;padding:1rem 0 1.5rem}.platform-brand h1{margin:0;font-size:1.8rem;font-weight:800;letter-spacing:.04em}.platform-nav-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.nav-link{display:flex;align-items:center;width:100%;background:transparent;border:none;color:#cbd5e1;padding:.85rem 1rem;border-radius:.85rem;font-size:.92rem;font-weight:700;text-align:left;position:relative}.nav-link:hover{background:#6366f11f;color:#fff}.nav-link.active{background:linear-gradient(90deg,#6366f13d,#a855f733);color:#fff;box-shadow:inset 0 0 0 1px #ffffff0f}.nav-link.active:before{content:"";position:absolute;left:.3rem;top:.55rem;bottom:.55rem;width:3px;border-radius:999px;background:#818cf8}.platform-sidebar-footer{text-align:center;border-top:1px solid rgba(148,163,184,.18);padding-top:1rem}.platform-sidebar-footer p{margin:0;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:#94a3b8}.platform-sidebar-footer strong{display:block;margin-top:.55rem;padding:.65rem;border-radius:.75rem;background:#94a3b81f;border:1px solid rgba(148,163,184,.12);font-size:.78rem}.main-content{flex-grow:1;min-height:100vh;overflow-y:auto;overflow-x:hidden;margin-left:14rem;padding:1rem 2rem 2rem;min-width:0}.app-header{position:sticky;top:0;z-index:20;min-width:0;padding:1rem 1.2rem;border-radius:1rem;display:flex;align-items:center;justify-content:space-between;background:#ffffffad;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.45)}.platform-main-title{margin:0;font-size:2rem;color:#1f2937}.header-icon-btn{border-radius:999px;border:1px solid #e2e8f0;background:#ffffffe0;color:#475569;padding:.7rem 1rem}.header-icon-btn:hover{background:#eef2ff;color:#4338ca}.platform-header-actions{display:flex;align-items:center;gap:.75rem}.platform-user-chip{padding:.55rem .9rem;border-radius:999px;background:#6366f11a;color:#4338ca;font-weight:700}.content-view{display:grid;gap:1rem}.platform-titlebar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0}.platform-titlebar.compact{margin-bottom:1rem}.platform-titlebar h3{margin:0;font-size:1.16rem;line-height:1.2}.platform-titlebar p{margin-top:.25rem;color:#60708b;font-size:.88rem}.platform-primary-btn{border:none;border-radius:.85rem;background:linear-gradient(90deg,#6b63ff,#5955e8);color:#fff;padding:.9rem 1.15rem;font-weight:700;min-height:44px}.platform-stats-layout{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:1rem}.platform-stat-box{display:grid;gap:.35rem}.platform-stat-box span{font-size:2rem;font-weight:800;color:#312e81}.platform-stat-box small{font-size:.85rem;font-weight:700;color:#6366f1}.platform-badge{display:inline-flex;align-items:center;padding:.3rem .65rem;border-radius:999px;font-size:.75rem;font-weight:800}.platform-badge.active{background:#e8fff0;color:#166534}.platform-badge.frozen{background:#fff1f2;color:#be123c}.platform-table-btn{border:1px solid #c7d2fe;background:#eef2ff;color:#3730a3;border-radius:.6rem;padding:.45rem .7rem;font-size:.76rem;font-weight:700}.platform-table-btn.light{background:#fff3;color:#fff;border-color:#ffffff4d}.platform-table-btn.danger{background:#7f1d1df0;color:#fff;border-color:#7f1d1df0}.platform-role-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:1rem}.platform-role-card{border-radius:1rem;padding:1rem;color:#fff;box-shadow:0 16px 30px #0f172a2e;display:grid;gap:.9rem}.platform-role-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.platform-role-head h4{margin:0}.platform-role-head span{font-size:.72rem;padding:.3rem .55rem;border-radius:999px;background:#ffffff29}.platform-role-perms{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.platform-role-perms li{background:#ffffff1f;padding:.6rem .75rem;border-radius:.7rem;font-size:.84rem}.platform-subscription-grid{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:1rem;align-items:end}.platform-subscription-actions{grid-column:1 / -1}.platform-checkbox-row{display:flex;align-items:center;gap:.55rem;font-size:.92rem}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 18px;background:linear-gradient(180deg,#f8fafceb,#f1f5f9f5),#f8fafc}.login-container{max-width:1080px;width:100%;min-height:590px;border-radius:28px;overflow:hidden;background:#fff;border:1px solid rgba(226,232,240,.92);box-shadow:0 28px 70px #0f172a1f;display:grid;grid-template-columns:1fr}@media (min-width: 768px){.login-container{grid-template-columns:minmax(0,44%) minmax(0,56%)}}.login-branding{background:#fff;color:#111827;padding:64px 52px;display:none;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px;position:relative;border-right:1px solid rgba(226,232,240,.92);isolation:isolate}.login-branding:before{content:"";position:absolute;top:22px;right:22px;bottom:22px;left:22px;border:1px solid rgba(99,102,241,.12);border-radius:22px;pointer-events:none;z-index:-1}@media (min-width: 768px){.login-branding{display:flex}}.login-brand-logo{width:min(100%,260px);margin-bottom:24px}.login-brand-logo img{display:block;width:100%;height:auto}.login-mobile-logo{display:flex;justify-content:center;margin-bottom:24px}.login-mobile-logo img{width:min(210px,76%);height:auto}.login-brand-eyebrow{margin:0;color:#4f46e5;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.brand-title{max-width:100%;font-size:clamp(2.8rem,5vw,4.8rem);line-height:.94;font-weight:800;margin:0;color:#101828;overflow-wrap:anywhere}.brand-subtitle{margin:0;max-width:300px;font-size:1rem;line-height:1.7;color:#667085}.login-form-panel{min-width:0;padding:56px 48px;display:flex;flex-direction:column;justify-content:center}.login-title{font-size:clamp(2rem,4vw,2.55rem);line-height:1.12;font-weight:800;margin:0 0 34px}.login-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.login-mode-btn{border:1px solid #d7dbef;background:#f8f9ff;color:#3730a3;border-radius:8px;padding:8px 10px;font-size:.86rem;font-weight:700}.login-mode-btn.active{background:linear-gradient(to right,#6366f1,#4f46e5);border-color:#4f46e5;color:#fff}.input-block{position:relative;margin-bottom:28px}.input-field{width:100%;height:54px;border:1px solid #dbe3f0;border-radius:12px;outline:0;font-size:1rem;color:#111827;padding:0 15px;background:#f8fafc;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.input-field::placeholder{color:transparent}.taskdone-shell .platform-sidebar{width:15.5rem;background:#1f293d;padding:2rem 1.05rem 1rem;box-shadow:none}.taskdone-shell .main-content{margin-left:15.5rem;padding:1.55rem 1.5rem 2rem}.taskdone-brand-block{display:flex;align-items:center;gap:.9rem;justify-content:flex-start;padding:.6rem .6rem 2rem}.taskdone-brand-block h1{font-size:1.55rem;font-weight:700;letter-spacing:0}.taskdone-brand-logo{color:#6c63ff;font-size:2.15rem;font-weight:800;line-height:1}.taskdone-nav-link{display:flex;align-items:center;gap:.9rem;width:100%;border:none;border-radius:.9rem;padding:.95rem 1rem;background:transparent;color:#d0d6e5;font-size:.9rem;font-weight:600;position:relative;text-align:left}.taskdone-nav-link:hover{background:#ffffff0d;color:#fff}.taskdone-nav-link.active{color:#fff;background:linear-gradient(180deg,#6c63ff,#5a56e8);box-shadow:0 10px 20px #6c63ff47}.taskdone-nav-icon{width:1.15rem;height:1.15rem;display:inline-flex;align-items:center;justify-content:center;color:inherit;flex:0 0 auto}.taskdone-nav-icon svg,.taskdone-header-icon svg,.taskdone-avatar svg,.taskdone-calendar-icon svg{width:100%;height:100%}.taskdone-nav-label{flex:1}.taskdone-shell .notification-dot{width:.45rem;height:.45rem;border-radius:999px;background:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1f;flex:0 0 auto}.taskdone-header{position:static;margin-bottom:2rem;min-height:5.8rem;padding:1.4rem 1.7rem;border-radius:1rem;background:#fff;border:1px solid #eceef5;box-shadow:0 2px 14px #1f293d0a}.taskdone-header-left,.taskdone-header-right{display:flex;align-items:center}.taskdone-header-left,.taskdone-header-right{gap:1rem}.taskdone-header-title{margin:0;font-size:2rem;font-weight:700;color:#3f4a61}.taskdone-header-icon{width:2rem;height:2rem;border:none;background:transparent;display:inline-flex;align-items:center;justify-content:center;color:#64748b;padding:0}.taskdone-header-icon.menu{width:2.1rem;height:2.1rem}.taskdone-header-icon.purple{color:#6b5cff}.taskdone-header-icon.green{color:#22c55e}.taskdone-header-icon.red{color:#ff4d4f}.taskdone-user-meta{display:grid;justify-items:end;line-height:1.1}.taskdone-user-meta span{font-size:.88rem;color:#6b7280}.taskdone-user-meta strong{color:#5a56e8;font-size:.95rem}.taskdone-avatar{width:2.55rem;height:2.55rem;border-radius:999px;background:#eceffd;color:#6c63ff;display:inline-flex;align-items:center;justify-content:center;padding:.5rem}.taskdone-dashboard-content{display:grid;gap:1.15rem}.taskdone-state-error,.taskdone-state-info{padding:.95rem 1rem;border-radius:.9rem;font-weight:600}.taskdone-state-error{background:#fff0f1;color:#d64545}.taskdone-state-info{background:#eef4ff;color:#4b63d3}.taskdone-mode-toggle-wrap{display:flex;justify-content:flex-end}.taskdone-mode-toggle{display:inline-flex;gap:.35rem;padding:.35rem;border:1px solid #e8ebf4;border-radius:.85rem;background:#fff}.taskdone-mode-toggle button{border:none;background:transparent;color:#697386;font-size:.92rem;font-weight:700;border-radius:.6rem;padding:.6rem 1.15rem}.taskdone-mode-toggle button.active{background:#eef0ff;color:#5a56e8;box-shadow:inset 0 0 0 1px #d9ddfb}.taskdone-filter-card{background:#fff;border:1px solid #e9ecf4;box-shadow:0 2px 14px #1f293d0a;padding:.8rem 1rem 1rem}.taskdone-filter-top-row,.taskdone-filter-bottom-row{display:flex;align-items:center;gap:1rem;justify-content:space-between}.taskdone-filter-top-row{flex-wrap:wrap}.taskdone-filter-selects{display:flex;gap:.75rem;flex:1;flex-wrap:wrap}.taskdone-select{min-width:11rem;height:3rem;border-radius:.7rem;border:1px solid #e2e6f0;background:#fff;color:#374151;padding:0 .95rem;font-size:.95rem}.taskdone-date-range{display:flex;align-items:center;gap:.65rem;min-width:22rem;justify-content:flex-end}.taskdone-date-field{min-width:10.6rem;height:3rem;border:1px solid #e2e6f0;border-radius:.7rem;padding:0 .85rem;display:flex;align-items:center;gap:.55rem;background:#fff;position:relative}.taskdone-date-field input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.taskdone-calendar-icon{width:1rem;height:1rem;color:#94a3b8;flex:0 0 auto}.taskdone-date-field em{font-style:normal;font-size:.95rem;color:#4b5563}.taskdone-date-separator{color:#94a3b8;font-weight:700}.taskdone-filter-bottom-row{margin-top:.8rem}.taskdone-clear-btn,.taskdone-apply-btn,.taskdone-period-tabs button{border:1px solid #dbe1ed;background:#fff;color:#4b5563;font-weight:700}.taskdone-clear-btn{width:3.1rem;height:2.9rem;border-radius:.6rem 0 0 .6rem;background:#ff5454;color:#fff;border-color:#ff5454;font-size:1.6rem;line-height:1}.taskdone-apply-btn{height:2.9rem;padding:0 1rem;border-radius:.6rem}.taskdone-period-tabs{display:flex;flex:1;overflow:hidden;border-radius:.6rem}.taskdone-period-tabs button{height:2.9rem;padding:0 1.15rem;border-left-width:0}.taskdone-period-tabs button:first-child{border-left-width:1px}.taskdone-period-tabs button.active{background:#394150;color:#fff}.taskdone-summary-layout{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:1.2rem}.taskdone-summary-card{background:#fff;border:1px solid #e9ecf4;box-shadow:0 2px 14px #1f293d0a;padding:1.3rem 1.4rem;border-radius:1rem}.taskdone-summary-card h3{margin:0 0 1.4rem;font-size:.95rem;color:#475467}.taskdone-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.55rem 1rem}.taskdone-summary-grid div{display:grid;gap:.2rem}.taskdone-summary-grid strong{font-size:2rem;line-height:1}.taskdone-summary-grid span{font-size:.78rem;color:#4b5563;font-weight:700}.taskdone-summary-grid .blue{color:#5c6cff}.taskdone-summary-grid .green{color:#22c55e}.taskdone-summary-grid .yellow{color:#f4b400}.taskdone-summary-grid .red{color:#ef4444}.taskdone-dashboard-grids{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.taskdone-table-card{background:#fff;border:1px solid #e9ecf4;box-shadow:0 2px 14px #1f293d0a;padding:1.1rem 1.2rem}.taskdone-table-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.taskdone-table-head h3{margin:0;font-size:1rem;color:#3f4a61}.taskdone-table-head span{min-width:2rem;height:2rem;border-radius:999px;background:#eef0ff;color:#5a56e8;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.taskdone-table-wrap{overflow:auto}.taskdone-table{width:100%;border-collapse:collapse}.taskdone-table th,.taskdone-table td{padding:.8rem .6rem;border-bottom:1px solid #edf0f6;text-align:left;font-size:.88rem}.taskdone-table th{color:#64748b;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.taskdone-empty-state{padding:1rem 0;color:#6b7280;font-weight:600}@media (max-width: 1100px){.taskdone-summary-layout,.taskdone-dashboard-grids{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.taskdone-shell .platform-sidebar{position:static;width:100%;height:auto}.taskdone-shell .main-content{margin-left:0}.taskdone-shell{flex-direction:column}.taskdone-header{flex-direction:column;align-items:flex-start;gap:1rem}.taskdone-header-right,.taskdone-filter-top-row,.taskdone-filter-bottom-row,.taskdone-date-range{width:100%;justify-content:flex-start;flex-wrap:wrap}}@media (max-width: 640px){.taskdone-summary-layout,.taskdone-dashboard-grids{grid-template-columns:1fr}.taskdone-filter-selects,.taskdone-date-range,.taskdone-date-field,.taskdone-select,.taskdone-period-tabs{width:100%;min-width:100%}.taskdone-period-tabs{overflow:auto}}.taskdone-shell #app-admin-view .platform-titlebar h3,.taskdone-shell #role-management-view .platform-titlebar h3,.taskdone-shell #subscription-view .platform-titlebar h3{font-size:1.05rem;color:#3f4a61;font-weight:700}.taskdone-shell #app-admin-view .platform-titlebar p,.taskdone-shell #role-management-view .platform-titlebar p,.taskdone-shell #subscription-view .platform-titlebar p{color:#6b7280;font-size:.88rem}.taskdone-shell #app-admin-view .platform-stat-box{background:#fff;border:1px solid #e9ecf4;box-shadow:0 2px 14px #1f293d0a}.taskdone-shell #app-admin-view .platform-stat-box span{color:#5c6cff;font-size:2rem;font-weight:800}.taskdone-shell #app-admin-view .platform-stat-box small{color:#4b5563;font-size:.82rem;font-weight:700}.taskdone-shell .platform-primary-btn{border-radius:.6rem;font-size:.84rem;padding:.62rem .9rem;box-shadow:none}.taskdone-shell .platform-admin-table{width:100%;border-collapse:collapse}.taskdone-shell .platform-admin-table th,.taskdone-shell .platform-admin-table td{padding:9px 10px;border-bottom:1px solid #efe7da;text-align:left;font-size:.9rem;color:#334155}.taskdone-shell .platform-titlebar.compact>span{min-width:auto;height:auto;border-radius:0;background:transparent;color:#64748b;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.82rem}.taskdone-shell .platform-admin-table tbody tr{transition:background-color .2s ease}.taskdone-shell .platform-admin-table tbody tr:hover{background:#fcf8f2}.taskdone-shell .platform-admin-table th{background:#faf4ea;color:#4f5d75;font-size:.9rem;text-transform:none;letter-spacing:0;font-weight:600}.taskdone-shell .row-actions{gap:.45rem;display:flex;flex-wrap:wrap}.taskdone-shell .platform-table-btn{border:1px solid #0f3943;background:#0f3943;color:#fff;border-radius:10px;padding:8px 12px;font-size:.78rem;font-weight:600}.taskdone-shell .platform-table-btn:hover{filter:brightness(1.08)}.taskdone-shell .platform-role-grid{gap:1.1rem}.taskdone-shell .platform-role-card{border-radius:1rem;padding:1rem;box-shadow:0 12px 24px #0f172a33}.input-label{position:absolute;left:12px;top:-9px;display:block;max-width:calc(100% - 24px);padding:0 5px;background:#fff;color:#667085;font-size:.78rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease}.input-field:focus{border-color:#4f46e5;background:#fff;box-shadow:0 0 0 4px #4f46e51f}.input-field:focus~.input-label{color:#6366f1}.login-button{width:100%;min-height:56px;padding:.9rem 1rem;border:none;background:linear-gradient(135deg,#111827,#312e81 54%,#4f46e5);color:#fff;border-radius:12px;font-size:.96rem;font-weight:800;cursor:pointer;transition:all .3s ease;box-shadow:0 16px 28px #312e8138}.login-button:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #4f46e580}.login-button:disabled{cursor:wait;opacity:.72;transform:none}.login-error{color:#b42318;margin:14px 0 0;padding:10px 12px;border-radius:10px;background:#fff3f2;border:1px solid #ffd5d2;font-size:.92rem;font-weight:700}.login-powered-by{margin-top:28px;padding-top:14px;border-top:1px solid #f0f2f5;text-align:center}.login-powered-by p{margin:0;font-size:.72rem;color:#9ca3af;letter-spacing:.08em;text-transform:uppercase}.login-powered-by strong{display:block;margin-top:6px;color:#4338ca;font-size:.9rem}@media (max-width: 767px){.login-page{padding:16px;align-items:flex-start}.login-form-panel{padding:30px 20px}.login-title{font-size:1.8rem;margin-bottom:20px}}@keyframes login-gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.hidden{display:none!important}.saas-shell{min-height:100vh}.saas-nav{justify-content:space-between}.saas-nav ul{display:grid;gap:8px}.saas-nav-btn{width:100%;text-align:left;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#fff;padding:10px 12px;font-weight:700}.saas-nav-btn.active{background:linear-gradient(90deg,#6366f1f2,#a855f7e0);border-color:#ffffff2e}.saas-nav-footer{border-top:1px solid rgba(255,255,255,.14);margin-top:16px;padding-top:16px;text-align:center}.saas-nav-footer p{color:#ffffff9e;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.saas-nav-footer strong{display:block;margin-top:6px;padding:8px 10px;border-radius:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.1)}.platform-view{display:grid;gap:16px}.platform-head-actions{display:flex;justify-content:space-between;align-items:center}.platform-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px}.platform-stat-card{background:linear-gradient(135deg,#ffffffe0,#f6f7ffeb);border:1px solid rgba(99,102,241,.14);border-radius:18px;box-shadow:0 20px 40px #4f46e514;padding:18px;display:grid;gap:6px}.platform-stat-card span{font-size:2rem;font-weight:800;color:#312e81}.platform-stat-card small{color:#6366f1;font-weight:700}.platform-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:800}.platform-badge.active{background:#eafaf0;color:#166534;border:1px solid #bbf7d0}.platform-badge.frozen{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.platform-empty-plan{color:#dc2626;font-weight:700}.platform-role-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px}.platform-role-card{border-radius:20px;padding:18px;color:#fff;box-shadow:0 18px 36px #0f172a2e;display:grid;gap:14px}.platform-role-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.platform-role-card-head h4{margin:0;font-size:1.05rem}.platform-role-card-head span{font-size:.72rem;font-weight:800;background:#ffffff24;padding:4px 8px;border-radius:999px}.platform-permission-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.platform-permission-list li{font-size:.88rem;background:#ffffff1a;padding:8px 10px;border-radius:10px}.role-gradient-super-admin{background:linear-gradient(135deg,#ef4444,#ec4899)}.role-gradient-admin{background:linear-gradient(135deg,#2563eb,#06b6d4)}.role-gradient-employee{background:linear-gradient(135deg,#16a34a,#14b8a6)}.role-gradient-custom{background:linear-gradient(135deg,#6d28d9,#9333ea)}.platform-subscription-form{background:var(--bg-panel);border:1px solid var(--line);border-radius:16px}.swal-platform-form{display:grid;gap:10px}.swal-platform-form.checkbox-form{text-align:left}.swal-platform-form.checkbox-form label{display:flex;align-items:center;gap:8px;font-size:.92rem}h1,h2,h3,p{margin:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.left-nav{padding:24px 20px;border-right:1px solid var(--line);background:linear-gradient(180deg,#113640,#19525d);color:#fff}.left-nav h2{font-size:1.4rem;letter-spacing:.03em}.left-role{margin-top:6px;color:#ffffffbf}.left-nav ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}.left-nav li{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 12px;font-size:.92rem;background:#ffffff12}.main-shell{display:flex;flex-direction:column}.top-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);background:#fffdf9d9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.top-bar h1{font-size:1.35rem}.top-bar p{margin-top:4px;color:var(--ink-soft);font-size:.86rem}.top-actions{display:flex;align-items:center;gap:12px}button,select,input{font:inherit}button{border:1px solid #0f3943;background:#0f3943;color:#fff;border-radius:10px;padding:8px 12px;cursor:pointer}button:hover{filter:brightness(1.08)}.dash-content{padding:16px;display:grid;gap:14px}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px}.filter-bar label{display:grid;gap:4px;min-width:180px;color:var(--ink-soft);font-size:.9rem}.filter-bar select{border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:#fff}.notice-strip{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px}.notice-strip p{background:var(--bg-panel);border:1px solid var(--line);border-radius:12px;padding:10px;text-align:center;box-shadow:var(--shadow)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.metric-card{background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px;display:grid;gap:8px}.metric-card header{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.metric-card h3{font-size:.95rem}.metric-card header span{color:var(--ink-soft);font-size:.82rem}.metric-row{display:flex;align-items:baseline;gap:8px}.metric-row strong{font-size:1.55rem}.metric-row small{color:var(--ink-soft)}.metric-inline{display:flex;gap:8px;color:var(--ink-soft);font-size:.88rem}.metric-progress{width:100%;height:8px;border-radius:999px;overflow:hidden;background:#e6ebe9}.metric-progress span{display:block;height:100%;background:linear-gradient(90deg,#197278,#2a9d8f)}.panel-table{background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}.panel-head h3{font-size:1rem}.panel-head span{font-size:.82rem;color:var(--ink-soft)}.table-wrap{overflow:auto}.taskdone-shell .table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.taskdone-shell .platform-admin-table{min-width:860px}.taskdone-shell #companies .table-wrap,.taskdone-shell #company-details .table-wrap,.taskdone-shell #subscriptions .table-wrap,.taskdone-shell #plan-requests .table-wrap,.taskdone-shell #renewals .table-wrap,.taskdone-shell #audits .table-wrap{max-height:none}.taskdone-shell .platform-admin-table thead th{position:sticky;top:0;z-index:1}.taskdone-shell .platform-admin-table th.col-action,.taskdone-shell .platform-admin-table td.col-action{min-width:220px;white-space:normal}.taskdone-shell .platform-admin-table th.col-wrap,.taskdone-shell .platform-admin-table td.col-wrap{min-width:240px}.taskdone-shell .platform-admin-table th.col-date,.taskdone-shell .platform-admin-table td.col-date{min-width:160px}.taskdone-shell .row-actions.col-action{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.65rem;align-items:stretch}.taskdone-shell .row-actions.col-action button,.taskdone-shell .row-actions.col-action .platform-table-btn{width:100%;padding:.85rem .95rem;font-size:.82rem;border-radius:.95rem;line-height:1.2;white-space:nowrap}.taskdone-shell .platform-admin-table th,.taskdone-shell .platform-admin-table td{padding:12px 14px;word-break:break-word;overflow-wrap:anywhere}.taskdone-shell .platform-admin-table.table-compact th,.taskdone-shell .platform-admin-table.table-compact td{padding:10px 12px}.taskdone-shell .platform-admin-table tbody tr{transition:background .18s ease}.taskdone-shell .platform-admin-table tbody tr:hover{background:#6366f10f}.taskdone-shell .table-wrap{padding:.35rem;border-radius:1rem;background:#f8f7f3}.panel-body .table-wrap+.table-wrap{margin-top:8px}table{width:100%;border-collapse:collapse}th,td{padding:9px 10px;border-bottom:1px solid #efe7da;text-align:left;font-size:.9rem}.table-compact th,.table-compact td{padding:7px 8px;font-size:.82rem}th{background:#faf4ea;color:#4f5d75;font-weight:600}.table-legacy th.col-id,.table-legacy td.col-id{width:72px;white-space:nowrap}.table-legacy th.col-user,.table-legacy td.col-user,.table-legacy th.col-date,.table-legacy td.col-date,.table-legacy th.col-status,.table-legacy td.col-status,.table-legacy th.col-action,.table-legacy td.col-action,.table-legacy th.col-proof,.table-legacy td.col-proof{white-space:nowrap}.table-legacy th.col-wrap,.table-legacy td.col-wrap{min-width:220px}.table-legacy td.col-wrap{white-space:normal;line-height:1.32}.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 10px;font-size:.76rem;font-weight:700;letter-spacing:.01em;border:1px solid #c9d2d0;background:#eef3f2;color:#30565e}.status-active{border-color:#b7e4c7;background:#e9f8ef;color:#1b5e20}.status-in-active{border-color:#f5c2c7;background:#fff0f1;color:#7f1d1d}.status-paused{border-color:#f2d8a7;background:#fff7e7;color:#8a5a00}.status-pending{border-color:#bfdbfe;background:#eef6ff;color:#1e3a8a}.panel-empty,.state-info,.state-error{border:1px dashed var(--line);border-radius:10px;padding:10px 12px;background:#fff}.state-error{color:var(--warn);border-color:#d1495b66}.tab-row{display:flex;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.tab-btn{border-radius:999px;border:1px solid #c9beb0;background:#fff;color:#29434e;padding:7px 12px}.tab-btn.active{border-color:#0f3943;background:#0f3943;color:#fff}.panel-body{display:grid;gap:12px;padding:12px}.work-form{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(170px,1fr));align-items:end;background:#fff;border:1px solid #efe7da;border-radius:12px;padding:10px}.work-form h4{grid-column:1 / -1}.work-form label{display:grid;gap:4px;font-size:.88rem;color:var(--ink-soft)}.work-form input,.work-form select{border:1px solid var(--line);border-radius:8px;padding:7px 8px;background:#fff}.work-form select[multiple]{min-height:110px;max-height:220px;padding-right:8px}.multi-checkbox-grid{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:.5rem}.checkbox-item{display:flex;align-items:center;gap:.75rem;padding:.7rem .75rem;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;transition:background .15s ease,border-color .15s ease}.checkbox-item:hover{background:#3b82f60d}.checkbox-item input{accent-color:var(--blue)}.upload-panel{border:1px solid #efe7da;background:#fff;border-radius:12px;padding:10px}.file-drop-label{margin:0 0 6px;font-size:.84rem;font-weight:700;color:#4b5563}.file-drop-zone{border:2px dashed #b8c2b9;border-radius:10px;padding:14px;text-align:center;font-size:.86rem;color:#475569;background:#f8fafc;cursor:pointer}.file-drop-zone.drag-over{border-color:#0f7a43;background:#edf9f1}.file-list{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px}.file-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid #ebe5d8;border-radius:8px;padding:6px 8px;font-size:.82rem}.row-actions{display:flex;gap:6px;align-items:center}.row-actions.col-action{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.65rem;align-items:stretch}.row-actions.col-action button,.row-actions.col-action .platform-table-btn,.row-actions.col-action .btn-danger{width:100%;min-width:0;padding:.85rem .95rem;font-size:.82rem;border-radius:.95rem;line-height:1.2;white-space:nowrap}.btn-danger{background:#7f1d1d;border-color:#7f1d1d}.btn-compact{padding:5px 10px;border-radius:8px;font-size:.78rem;line-height:1;min-width:56px}.btn-ok{background:#166534;border-color:#166534}.approval-btn{width:28px;height:24px;border-radius:6px;padding:0;font-size:.68rem;font-weight:700;line-height:1;box-shadow:0 2px 6px #0000002e}.approval-btn.approve{background:#16a34a;border-color:#16a34a}.approval-btn.rework{background:#dc2626;border-color:#dc2626}.approval-btn:hover{transform:scale(1.05)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182773;display:grid;place-items:center;padding:16px;z-index:1000}.modal-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 50px #00000038;padding:14px;display:grid;gap:10px}.modal-card-wide{width:min(880px,100%)}.preview-list{display:grid;gap:10px;max-height:70vh;overflow:auto}.preview-item{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fbfaf8}.preview-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);font-size:.84rem}.preview-head a{color:#0f4c81;text-decoration:none;font-weight:700}.preview-head a:hover{text-decoration:underline}.preview-item iframe{width:100%;min-height:360px;border:none}.toast-notice{position:fixed;top:16px;right:16px;z-index:1200;border-radius:10px;padding:10px 14px;color:#fff;font-weight:700;box-shadow:0 14px 26px #00000040;animation:toastIn .18s ease-out,toastOut .22s ease-in 1.7s}.toast-notice.success{background:#0f7a43}.toast-notice.error{background:#b91c1c}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-6px) scale(.98)}}.modal-card label{display:grid;gap:6px;font-size:.9rem;color:var(--ink-soft)}.modal-card textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:8px;resize:vertical;min-height:90px;font:inherit}.modal-actions{display:flex;justify-content:flex-end;gap:8px}@media (max-width: 1000px){.app-shell{grid-template-columns:1fr}.left-nav{border-right:none;border-bottom:1px solid rgba(255,255,255,.2)}.metric-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.notice-strip{grid-template-columns:repeat(2,minmax(140px,1fr))}.platform-role-grid,.platform-stats-grid,.platform-stats-layout,.platform-subscription-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (max-width: 640px){.metric-grid,.notice-strip,.platform-role-grid,.platform-stats-grid{grid-template-columns:1fr}.main-content{margin-left:0;padding:1rem}.platform-sidebar{position:static;width:100%;height:auto}.platform-shell{display:grid}.app-header,.platform-titlebar,.platform-header-actions{flex-direction:column;align-items:flex-start}.platform-stats-layout,.platform-subscription-grid{grid-template-columns:1fr}.taskdone-shell .platform-admin-table{min-width:920px}.filter-bar label{min-width:100%}.top-bar{flex-direction:column;align-items:flex-start}.work-form{grid-template-columns:1fr}}.taskdone-shell .main-content,.taskdone-shell .content-view,.taskdone-shell .content-wrapper,.taskdone-shell .taskdone-table-card{min-width:0}.taskdone-shell .row-actions{align-items:center}.taskdone-shell .platform-titlebar .row-actions{justify-content:flex-end}.taskdone-shell .row-actions .form-input{min-width:180px}.taskdone-shell .table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.taskdone-shell .platform-admin-table{min-width:1120px}@media (max-width: 900px){.taskdone-header-title{font-size:1.5rem}.taskdone-shell .platform-titlebar{align-items:stretch}.taskdone-shell .platform-titlebar .row-actions{width:100%;justify-content:flex-start}.taskdone-shell .row-actions .form-input{min-width:160px;flex:1 1 220px}.taskdone-shell .platform-primary-btn{min-height:40px}}@media (max-width: 640px){.taskdone-header{padding:1rem;margin-bottom:1rem}.taskdone-header-left{width:100%}.taskdone-header-right{gap:.75rem}.taskdone-user-meta{justify-items:start;order:1;width:100%}.taskdone-avatar{order:2}.taskdone-header-icon.red{order:3}.taskdone-shell .platform-titlebar{gap:.75rem}.taskdone-shell .platform-titlebar .row-actions{width:100%}.taskdone-shell .row-actions .form-input,.taskdone-shell .row-actions .platform-primary-btn,.taskdone-shell .row-actions .platform-table-btn{width:100%;min-width:100%}.taskdone-shell .row-actions.col-action .platform-table-btn{width:auto;min-width:0}.fms-flow-panel{padding:.85rem}.fms-flow-panel .panel-head,.fms-flow-monitor,.fms-flow-actions{align-items:stretch;gap:.75rem}.fms-flow-panel .panel-head,.fms-flow-actions{flex-direction:column}.fms-flow-panel .panel-body,.fms-flow-panel .work-form{min-width:0}.fms-flow-panel .work-form{grid-template-columns:1fr}.fms-flow-panel input,.fms-flow-panel select,.fms-flow-panel textarea,.fms-flow-panel button{font-size:16px}.fms-flow-actions .form-input,.fms-flow-actions button,.fms-flow-panel .platform-primary-btn,.fms-flow-panel .platform-table-btn{width:100%}.fms-flow-table-wrap{border:1px solid #e6eaff;border-radius:.85rem;background:#fff}.fms-flow-table-wrap table{min-width:760px}.fms-flow-panel .taskdone-summary-layout{grid-template-columns:1fr}}.taskdone-shell{background:radial-gradient(1200px 500px at 30% -20%,#eef2ff,#f4f6fb 42%,#eef1f8)}.taskdone-shell .platform-sidebar{background:linear-gradient(180deg,#1f2b45,#1b2438);border-right:1px solid rgba(255,255,255,.06)}.taskdone-shell .taskdone-brand-logo{color:#6f6bff}.taskdone-shell .taskdone-nav-link{border:1px solid transparent;transition:all .2s ease}.taskdone-shell .taskdone-nav-link:hover{background:#ffffff14;border-color:#ffffff14}.taskdone-shell .taskdone-nav-link.active{background:linear-gradient(180deg,#6b63ff,#5955e8);box-shadow:0 10px 22px #5c56e859;border-color:#ffffff14}.taskdone-shell #overview-nav .taskdone-nav-icon{color:#a5b4fc}.taskdone-shell #renewals-nav .taskdone-nav-icon{color:#86efac}.taskdone-shell #plan-requests-nav .taskdone-nav-icon{color:#67e8f9}.taskdone-shell #audits-nav .taskdone-nav-icon{color:#f9a8d4}.taskdone-shell #subscriptions-nav .taskdone-nav-icon{color:#fcd34d}.taskdone-shell #companies-nav .taskdone-nav-icon{color:#93c5fd}.taskdone-shell #company-details-nav .taskdone-nav-icon{color:#fdba74}.taskdone-shell .taskdone-nav-link.active .taskdone-nav-icon,.taskdone-shell .taskdone-nav-link.active .taskdone-nav-label{color:#fff}.taskdone-shell .taskdone-header{background:#ffffffeb;border:1px solid #e6eaf4;box-shadow:0 8px 24px #1f293d14}.taskdone-shell .taskdone-header-icon{width:2.3rem;height:2.3rem;border-radius:999px;border:1px solid #e8ebf5;background:#fff}.taskdone-shell .taskdone-header-icon.menu{border:none;background:transparent}.taskdone-shell .taskdone-header-icon.purple{color:#635bff}.taskdone-shell .taskdone-header-icon.green{color:#22c55e}.taskdone-shell .taskdone-header-icon.red{color:#ff4d4f}.taskdone-shell .taskdone-dashboard-content .content-wrapper,.taskdone-shell .taskdone-table-card,.taskdone-shell .taskdone-summary-card{background:#ffffffe0;border:1px solid #e8ebf3;box-shadow:0 6px 20px #1921350f}.taskdone-shell .platform-titlebar h3{display:inline-flex;align-items:center;gap:.55rem;color:#3a4763}.taskdone-shell .section-title-icon{width:1.3rem;height:1.3rem;color:#5a56e8;display:inline-flex;align-items:center;justify-content:center;background:#6366f11f;border-radius:.45rem}.taskdone-shell .platform-primary-btn{background:linear-gradient(90deg,#6b63ff,#5955e8);border-radius:.68rem;box-shadow:0 8px 18px #5c56e847}.taskdone-shell .platform-primary-btn:hover{filter:brightness(1.03)}.taskdone-shell .platform-admin-table th{background:#f3efe6;color:#4a566f}.taskdone-shell .platform-admin-table tbody tr:hover{background:#f8f6f1}.ai-chat-fab{position:fixed;bottom:4.5rem;right:1.5rem;z-index:9999;width:3.6rem;height:3.6rem;border-radius:50%;border:none;background:linear-gradient(135deg,#6c63ff,#5a56e8,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px #6c63ff73,0 2px 8px #0000001f;cursor:pointer;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease;animation:ai-fab-pulse 3s ease-in-out infinite}.ai-chat-fab:hover{transform:scale(1.1);box-shadow:0 12px 40px #6c63ff8c,0 4px 12px #00000026}.ai-chat-fab--open{animation:none;background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 8px 24px #ef444466}.ai-chat-fab--open:hover{box-shadow:0 12px 36px #ef444480}@keyframes ai-fab-pulse{0%,to{box-shadow:0 8px 30px #6c63ff73,0 0 #6c63ff4d}50%{box-shadow:0 8px 30px #6c63ff73,0 0 0 10px #6c63ff00}}.ai-chat-window{position:fixed;bottom:5.8rem;right:1.5rem;z-index:9998;width:380px;max-width:calc(100vw - 2rem);height:520px;max-height:calc(100vh - 8rem);border-radius:1.2rem;background:#fffffff0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 25px 60px #1f26872e,0 8px 20px #00000014;display:flex;flex-direction:column;overflow:hidden;animation:ai-chat-slide-up .35s cubic-bezier(.34,1.56,.64,1)}@keyframes ai-chat-slide-up{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-chat-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem;background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;flex-shrink:0}.ai-chat-header-left{display:flex;align-items:center;gap:.65rem}.ai-chat-sparkle{width:2rem;height:2rem;border-radius:50%;background:linear-gradient(135deg,#6c63ff,#8b5cf6);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-chat-header-left strong{display:block;font-size:.92rem;letter-spacing:.02em}.ai-chat-status{display:block;font-size:.68rem;color:#86efac;font-weight:600;letter-spacing:.05em}.ai-chat-header-actions{display:flex;gap:.5rem}.ai-chat-clear-btn{border:none;background:#ffffff1f;color:#94a3b8;width:1.8rem;height:1.8rem;border-radius:50%;font-size:.72rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.ai-chat-clear-btn:hover{background:#ffffff38;color:#fff}.ai-chat-key-prompt{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;text-align:center;gap:.3rem}.ai-chat-key-icon{font-size:2.5rem;margin-bottom:.5rem}.ai-chat-key-prompt p{margin:0;color:#475569;font-size:.88rem}.ai-chat-key-desc{font-size:.78rem!important;color:#94a3b8!important}.ai-chat-key-desc a{color:#6c63ff;text-decoration:underline}.ai-chat-key-input-row{display:flex;gap:.5rem;margin-top:.75rem;width:100%}.ai-chat-key-input{flex:1;border:1px solid #d7dce5;border-radius:.7rem;padding:.6rem .75rem;font-size:.85rem;outline:none;background:#fff}.ai-chat-key-input:focus{border-color:#6c63ff;box-shadow:0 0 0 3px #6c63ff1f}.ai-chat-key-save{border:none;border-radius:.7rem;background:linear-gradient(90deg,#6c63ff,#5a56e8);color:#fff;padding:.6rem 1rem;font-weight:700;font-size:.82rem;cursor:pointer;white-space:nowrap}.ai-chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.ai-chat-messages::-webkit-scrollbar{width:4px}.ai-chat-messages::-webkit-scrollbar-thumb{background:#c7d2fe;border-radius:999px}.ai-chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.2rem;padding-top:1.5rem}.ai-chat-empty-icon{font-size:2.2rem;margin-bottom:.4rem}.ai-chat-empty p{margin:0;color:#64748b;font-size:.85rem}.ai-chat-suggestions{display:flex;flex-direction:column;gap:.4rem;margin-top:.8rem;width:100%;padding:0 .5rem}.ai-chat-suggestion-btn{border:1px solid #e0e4ef;background:#f8f9ff;color:#3730a3;border-radius:.65rem;padding:.55rem .75rem;font-size:.78rem;font-weight:600;cursor:pointer;text-align:left;transition:background .2s,border-color .2s}.ai-chat-suggestion-btn:hover{background:#eef2ff;border-color:#c7d2fe}.ai-chat-msg{display:flex;gap:.5rem;align-items:flex-start;max-width:95%;animation:ai-msg-fade .25s ease-out}@keyframes ai-msg-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ai-chat-msg--user{align-self:flex-end;flex-direction:row-reverse}.ai-chat-msg--assistant{align-self:flex-start}.ai-chat-msg-avatar{width:1.6rem;height:1.6rem;border-radius:50%;background:linear-gradient(135deg,#6c63ff,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;flex-shrink:0;margin-top:2px}.ai-chat-msg-content{padding:.6rem .85rem;border-radius:1rem;font-size:.84rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}.ai-chat-msg--user .ai-chat-msg-content{background:linear-gradient(135deg,#6c63ff,#5a56e8);color:#fff;border-bottom-right-radius:.3rem}.ai-chat-msg--assistant .ai-chat-msg-content{background:#f1f5f9;color:#1e293b;border-bottom-left-radius:.3rem}.ai-chat-typing{display:inline-block;animation:ai-typing-blink 1.2s ease-in-out infinite;letter-spacing:2px;color:#94a3b8}@keyframes ai-typing-blink{0%,to{opacity:.3}50%{opacity:1}}.ai-chat-input-area{display:flex;align-items:flex-end;gap:.5rem;padding:.65rem .75rem;border-top:1px solid #e8ebf4;background:#fffffff5;flex-shrink:0}.ai-chat-input{flex:1;resize:none;border:1px solid #dfe3ee;border-radius:.75rem;padding:.6rem .75rem;font-size:.85rem;font-family:inherit;outline:none;min-height:2.4rem;max-height:5rem;background:#fafbff;color:#1e293b;line-height:1.4}.ai-chat-input:focus{border-color:#6c63ff;box-shadow:0 0 0 3px #6c63ff1a}.ai-chat-input::placeholder{color:#94a3b8}.ai-chat-send-btn{width:2.4rem;height:2.4rem;border-radius:50%;border:none;background:linear-gradient(135deg,#6c63ff,#5a56e8);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .2s,opacity .2s}.ai-chat-send-btn:hover:not(:disabled){transform:scale(1.08)}.ai-chat-send-btn:disabled{opacity:.45;cursor:not-allowed}.ai-chat-chart-wrap{margin-top:.6rem;border-radius:.9rem;padding:.7rem;background:radial-gradient(130% 100% at 0% 100%,rgba(236,72,153,.18),transparent 50%),radial-gradient(120% 100% at 100% 100%,rgba(34,211,238,.16),transparent 45%),linear-gradient(180deg,#0f172a,#111827);border:1px solid rgba(255,255,255,.12)}.ai-chat-chart-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.ai-chat-chart-card{border-radius:.65rem;padding:.45rem;background:linear-gradient(180deg,#ffffff1f,#ffffff0a);border:1px solid rgba(255,255,255,.12)}.ai-chat-chart-bars{height:74px;display:flex;align-items:flex-end}.ai-chat-chart-bar-bg{height:100%;width:100%;border-radius:.45rem;background:#ffffff0f;display:flex;align-items:flex-end;overflow:hidden}.ai-chat-chart-bar-fill{width:100%;border-radius:.45rem;box-shadow:0 0 16px #fff3}.ai-chat-chart-label{margin-top:.32rem;font-size:.67rem;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-chat-chart-value{font-size:.68rem;color:#dbeafe;font-weight:700}.ai-chat-pie-row{margin-top:.6rem;display:flex;align-items:center;gap:.6rem}.ai-chat-pie{width:52px;height:52px;border-radius:999px;position:relative;border:1px solid rgba(255,255,255,.25)}.ai-chat-pie:after{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:999px;background:#111827}.ai-chat-pie-legend{display:grid;gap:.2rem;min-width:0}.ai-chat-pie-item{display:flex;align-items:center;gap:.3rem;font-size:.64rem;color:#e5e7eb}.ai-chat-pie-dot{width:.5rem;height:.5rem;border-radius:999px}@media (max-width: 480px){.ai-chat-window{inset:auto .5rem calc(env(safe-area-inset-bottom,0px) + 4.75rem) .5rem;width:auto;max-width:none;height:min(74dvh,calc(100dvh - 6rem));max-height:min(74dvh,calc(100dvh - 6rem));border-radius:1rem}.ai-chat-fab{bottom:calc(env(safe-area-inset-bottom,0px) + 1rem);right:1rem}.ai-chat-header{padding:.75rem .85rem}.ai-chat-messages{padding:.75rem;gap:.65rem}.ai-chat-msg{max-width:100%}.ai-chat-msg-content{max-width:calc(100vw - 5.25rem);font-size:.82rem}.ai-chat-msg--user .ai-chat-msg-content{max-width:calc(100vw - 3.5rem)}.ai-chat-input-area{padding:.55rem}.ai-chat-input{font-size:16px}.ai-chat-chart-cards{grid-template-columns:1fr}}@media (max-width: 380px){.ai-chat-window{left:.35rem;right:.35rem}.ai-chat-msg-avatar{width:1.35rem;height:1.35rem}}:root{--taskeasy-primary: #6c63ff;--taskeasy-primary-dark: #4f46e5;--taskeasy-primary-deep: #312e81;--taskeasy-primary-soft: #eef0ff;--taskeasy-primary-line: #d9ddfb;--taskeasy-accent: #22d3ee;--taskeasy-ink: #1f2437;--taskeasy-sidebar: #171b2f;--taskeasy-sidebar-deep: #101426}body{background:#f5f6ff}.form-input:focus,.input-field:focus,.ai-chat-input:focus,.ai-chat-key-input:focus{border-color:var(--taskeasy-primary);box-shadow:0 0 0 4px #6c63ff1f}.input-field:focus~.input-label{color:var(--taskeasy-primary)}.platform-sidebar,.left-nav,.taskdone-shell .platform-sidebar{background:linear-gradient(180deg,var(--taskeasy-sidebar) 0%,var(--taskeasy-sidebar-deep) 100%)}.taskdone-brand-logo,.taskdone-shell .taskdone-brand-logo,.taskdone-user-meta strong,.taskdone-shell .section-title-icon,.taskdone-summary-grid .blue,.taskdone-shell #app-admin-view .platform-stat-box span,.ai-chat-key-desc a{color:var(--taskeasy-primary)}.taskdone-shell{background:radial-gradient(1200px 520px at 28% -18%,#eef0ff,#f7f8ff 45%,#f2f5ff)}.nav-link.active,.taskdone-nav-link.active,.taskdone-shell .taskdone-nav-link.active,.login-mode-btn.active,.login-button,.taskdone-shell .platform-primary-btn,.platform-primary-btn,button,.ai-chat-fab,.ai-chat-key-save,.ai-chat-send-btn,.ai-chat-msg--user .ai-chat-msg-content{background:linear-gradient(135deg,var(--taskeasy-primary) 0%,var(--taskeasy-primary-dark) 100%);border-color:var(--taskeasy-primary-dark);color:#fff}.nav-link:hover,.taskdone-nav-link:hover,.taskdone-shell .taskdone-nav-link:hover{background:#6c63ff24;border-color:#6c63ff2e}.taskdone-nav-link.active,.taskdone-shell .taskdone-nav-link.active{box-shadow:0 10px 22px #6c63ff52}.taskdone-mode-toggle button.active,.taskdone-table-head span,.ai-chat-suggestion-btn:hover{background:var(--taskeasy-primary-soft);border-color:var(--taskeasy-primary-line);color:var(--taskeasy-primary-deep)}.taskdone-header-title,.taskdone-shell .platform-titlebar h3,.taskdone-table-head h3,.login-title{color:var(--taskeasy-ink)}.taskdone-header,.taskdone-shell .taskdone-header,.taskdone-filter-card,.taskdone-table-card,.taskdone-summary-card,.taskdone-shell .taskdone-dashboard-content .content-wrapper,.taskdone-shell .taskdone-table-card,.taskdone-shell .taskdone-summary-card,.ai-chat-window{border-color:#6c63ff24;box-shadow:0 8px 24px #312e8114}.taskdone-select,.taskdone-date-field,.taskdone-clear-btn,.taskdone-apply-btn,.taskdone-period-tabs button,.taskdone-header-icon,.taskdone-shell .taskdone-header-icon,.ai-chat-suggestion-btn,.ai-chat-input,.ai-chat-key-input{border-color:#dfe3ff}.taskdone-period-tabs button.active{background:var(--taskeasy-ink);color:#fff}.taskdone-shell .platform-admin-table th,.taskdone-table th{background:#f0f2ff;color:#4a4f73}.taskdone-shell .platform-admin-table tbody tr:hover,.taskdone-table tbody tr:hover{background:#f8f8ff}.taskdone-avatar{background:var(--taskeasy-primary-soft);color:var(--taskeasy-primary)}.ai-chat-header{background:linear-gradient(160deg,var(--taskeasy-primary-dark),var(--taskeasy-primary),var(--taskeasy-accent))}.login-branding{background:#fff}.login-button{background:linear-gradient(135deg,#111827 0%,#312e81 54%,var(--taskeasy-primary-dark) 100%)}.login-button,.taskdone-shell .platform-primary-btn,.ai-chat-fab{box-shadow:0 8px 22px #6c63ff52}@media (min-width: 768px){.login-mobile-logo{display:none}}@media (max-width: 767px){.login-container{min-height:auto;border-radius:22px}.login-form-panel{padding:34px 22px}.login-powered-by{margin-top:22px}}.ai-chat-sparkle,.ai-chat-msg-avatar{background:linear-gradient(135deg,#fff,#dfe3ff);color:var(--taskeasy-primary-dark)}.ai-chat-messages::-webkit-scrollbar-thumb{background:var(--taskeasy-primary-line)}.taskdone-filter-shell{display:block;gap:.7rem;position:relative}.taskdone-filter-trigger{display:none}.taskdone-filter-trigger:hover{transform:translateY(-1px);filter:none;box-shadow:0 12px 28px #6c63ff2e}.taskdone-filter-shell.open .taskdone-filter-trigger{background:linear-gradient(135deg,var(--taskeasy-primary) 0%,var(--taskeasy-primary-dark) 100%);color:#fff;box-shadow:0 12px 28px #6c63ff47}.taskdone-filter-trigger-icon{width:1rem;height:1rem;display:inline-flex;align-items:center;justify-content:center}.taskdone-filter-trigger-icon svg{width:100%;height:100%}.taskdone-filter-trigger strong{min-width:1.25rem;height:1.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--taskeasy-primary-soft);color:var(--taskeasy-primary-deep);font-size:.72rem;line-height:1}.taskdone-filter-shell.open .taskdone-filter-trigger strong{background:#fff3;color:#fff}.taskdone-filter-panel{width:100%;max-height:none;opacity:1;overflow:visible;pointer-events:auto;transform:none}.taskdone-filter-shell.open .taskdone-filter-panel{max-height:none;opacity:1;pointer-events:auto;transform:none}.taskdone-filter-panel .taskdone-filter-card{margin:0}@media (max-width: 900px){.taskdone-filter-shell{display:block}.taskdone-filter-trigger{display:none}.taskdone-filter-shell.open .taskdone-filter-panel{max-height:none}}
