:root{--red:#e8365d;--navy:#0f1f3d;--teal:#0a7e8c;--amber:#f5a623;--green:#12a05c;--indigo:#6366f1;--bg:#f4f6fa;--surface:#fff;--surface-alt:#f8f9fc;--border:#e4e8f1;--border-hover:#cdd5e3;--text:#0f172a;--muted:#5f6b7f;--shadow-sm:0 1px 2px #0f1f3d0d, 0 1px 4px #0f1f3d0a;--shadow:0 1px 3px #0f1f3d0f, 0 6px 16px #0f1f3d0f;--shadow-lg:0 2px 6px #0f1f3d0f, 0 14px 32px #0f1f3d1a;--shadow-brand:0 4px 14px #e8365d3d;--r-sm:6px;--r-md:10px;--r-lg:12px;--r-xl:14px;--ease-out:cubic-bezier(.22,1,.36,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--dur-fast:.14s;--dur-base:.22s;--dur-slow:.38s;font-family:DM Sans,Inter,sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}p{margin:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideRight{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-6px)}to{opacity:1;max-height:2000px;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}@keyframes pulseDot{0%,to{box-shadow:0 0 #12a05c73}50%{box-shadow:0 0 0 7px #12a05c00}}@keyframes pulseRed{0%,to{box-shadow:0 0 #e8365d66}50%{box-shadow:0 0 0 6px #e8365d00}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progressFill{0%{opacity:.6;width:0%}to{opacity:1}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)scale(.88)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ripple{0%{opacity:.35;transform:scale(0)}to{opacity:0;transform:scale(2.5)}}@keyframes navIndicator{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.app-screen{grid-template-columns:250px 1fr;min-height:100vh;display:grid;overflow-x:hidden}.sidebar{-webkit-backdrop-filter:blur(20px);scrollbar-width:none;background:#ffffffd1;border-right:1px solid #0f1f3d12;flex-direction:column;height:100vh;padding:0;display:flex;position:sticky;top:0;overflow:hidden auto;box-shadow:2px 0 20px #0f1f3d0a}.sidebar::-webkit-scrollbar{display:none}.sidebar-logo{border-bottom:1px solid #0f1f3d0f;padding:22px 18px 18px}.logo{letter-spacing:-.05em;color:var(--red);font-family:Syne,sans-serif;font-size:1.75rem;font-weight:800;line-height:1}.logo-sub{color:var(--muted);letter-spacing:.05em;margin-top:2px;font-size:.68rem}.mono{font-family:JetBrains Mono,monospace}.nav-list{flex-direction:column;flex:1;gap:3px;padding:14px 10px;display:flex}.nav-item{border-radius:var(--r-md);color:var(--muted);transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast);cursor:pointer;align-items:center;gap:9px;padding:10px 12px;font-size:.86rem;font-weight:600;display:flex;position:relative;overflow:hidden}.nav-item:hover{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);transform:translate(2px)}.nav-item.active{background:var(--surface);color:var(--red);box-shadow:var(--shadow)}.nav-item.active:before{content:"";background:var(--red);width:3px;animation:navIndicator var(--dur-base) var(--ease-spring) both;border-radius:0 3px 3px 0;position:absolute;top:20%;bottom:20%;left:0;box-shadow:2px 0 8px #e8365d4d}.sidebar-user{border-radius:var(--r-lg);background:linear-gradient(155deg, var(--navy), #172f57);color:#fff;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin:10px;padding:14px;display:grid}.sidebar-user:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0f1f3d2e}.avatar{background:linear-gradient(135deg, var(--navy), #2a4370);color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:.8rem;font-weight:700;display:grid;box-shadow:0 2px 8px #0f1f3d40}.avatar.small{border-radius:9px;width:34px;height:34px;font-size:.74rem}.user-name{white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;font-weight:700;overflow:hidden}.user-role{color:#ffffff9e;text-transform:capitalize;font-size:.72rem}.main-panel{grid-template-rows:auto 1fr;min-width:0;display:grid;overflow:hidden}.topbar{-webkit-backdrop-filter:blur(16px);z-index:40;background:#f4f6faeb;border-bottom:1px solid #0f1f3d0f;justify-content:space-between;align-items:center;gap:20px;padding:22px 32px 16px;display:flex;position:sticky;top:0}.topbar-title{letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;color:var(--text);margin:0;font-family:Syne,sans-serif;font-size:clamp(1.3rem,2.4vw,1.75rem);font-weight:700;overflow:hidden}.topbar-chip{color:var(--green);background:#12a05c1a;border:1px solid #12a05c33;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 13px;font-size:.76rem;font-weight:700;display:flex}.live-dot{background:var(--green);border-radius:50%;width:7px;height:7px;animation:2.2s ease-in-out infinite pulseDot;display:inline-block}.eyebrow{letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 3px;font-size:.68rem;font-weight:700}.page-content{min-width:0;padding:24px 32px 36px;overflow:hidden auto}.page-grid{gap:22px;width:100%;min-width:0;display:grid}.page-grid>*,.stats-grid>*,.two-col-grid>*,.three-col-grid>*{min-width:0}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.project-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;display:grid}.three-col-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.two-col-grid{grid-template-columns:1.1fr .9fr;gap:18px;display:grid}.kanban-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.wiki-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}@media (width<=480px){.stats-grid{gap:10px;grid-template-columns:1fr 1fr!important}.three-col-grid,.two-col-grid,.project-grid,.kanban-grid{grid-template-columns:1fr!important}}.panel,.stat-card,.project-card,.hero-card,.kanban-card,.wiki-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);transition:transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base)}.panel{padding:24px}.panel:hover{box-shadow:var(--shadow);border-color:var(--border-hover)}.panel-head{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.panel-head>div:first-child{min-width:0}.stat-card{padding:22px;position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow);border-color:var(--border-hover);transform:translateY(-2px)}.stat-accent{border-radius:0 2px 2px 0;width:4px;position:absolute;inset:0 auto 0 0}.stat-value{letter-spacing:-.03em;color:var(--text);animation:countUp var(--dur-slow) var(--ease-spring) both;margin:6px 0 0;font-family:Syne,sans-serif;font-size:2.1rem;font-weight:700;line-height:1}.project-card{gap:14px;padding:22px;display:grid}.project-card:hover{box-shadow:var(--shadow);border-color:var(--border-hover);transform:translateY(-2px)}.project-card-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.project-card-head>div:first-child{min-width:0;overflow:hidden}.project-card-head>div:first-child p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-card-meta{justify-content:space-between;gap:12px;font-size:.88rem;display:flex}.project-card-meta span{color:var(--muted)}.hero-card{color:#fff;background:linear-gradient(135deg,#0f1f3df2,#0e3a63eb);padding:24px}.wiki-card{padding:20px}.kanban-card{padding:18px}.wiki-card:hover,.kanban-card:hover{box-shadow:var(--shadow);border-color:var(--border-hover);transform:translateY(-2px)}.task-row p,.member-row p,.wiki-card p,.kanban-card p,.project-card-meta span,.muted-copy{color:var(--muted);margin:4px 0 0;line-height:1.5}.code-block{white-space:pre-wrap;word-break:break-word;color:#b7d3ff;border-radius:var(--r-lg);background:#091120;margin:0;padding:18px;font-family:JetBrains Mono,monospace;font-size:.82rem;line-height:1.7}.progress-track{background:var(--surface-alt);border-radius:999px;height:7px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--red), #c21e4a);height:100%;animation:progressFill .9s var(--ease-out) both;border-radius:999px}.task-list,.member-row{gap:0;display:grid}.task-row,.member-row{border-bottom:1px solid var(--border);transition:background var(--dur-fast), padding-left var(--dur-fast) var(--ease-out);border-radius:var(--r-sm);align-items:center;gap:14px;padding:10px;display:flex}.task-row:last-child,.member-row:last-child{border-bottom:none}.task-row:hover{background:#0a7e8c0a;padding-left:14px}.task-dot{border-radius:50%;flex:none;width:10px;height:10px}.dot-pending{background:var(--amber)}.dot-in_progress{background:var(--teal)}.dot-done{background:var(--green)}.dot-overdue{background:var(--red);animation:2s ease-in-out infinite pulseRed}.badge{text-transform:capitalize;color:var(--muted);transition:all var(--dur-fast);background:#0f1f3d12;border-radius:999px;align-items:center;padding:5px 11px;font-size:.76rem;font-weight:700;display:inline-flex}.badge-pending{color:#b36c05;background:#f5a62324}.badge-pre_confirmed{color:#4338ca;background:#6366f11a}.badge-confirmed,.badge-in_progress{color:var(--teal);background:#0a7e8c21}.badge-closed,.badge-done{color:var(--green);background:#12a05c21}.badge-overdue{color:var(--red);background:#e8365d1f}.primary-button{border-radius:var(--r-md);cursor:pointer;background:linear-gradient(135deg, var(--red), #c21e4a);color:#fff;box-shadow:var(--shadow-brand);transition:transform var(--dur-fast) var(--ease-spring), box-shadow var(--dur-fast), filter var(--dur-fast);border:none;justify-content:center;align-items:center;gap:7px;padding:12px 18px;font-size:.88rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.primary-button:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 6px 18px #e8365d52}.primary-button:active{box-shadow:var(--shadow-brand);transform:scale(.96)translateY(0)}.primary-button.compact{padding:9px 14px;font-size:.82rem}.ghost-button{border-radius:var(--r-md);color:var(--navy);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:#0f1f3d0f;border:1px solid #0f1f3d1a;justify-content:center;align-items:center;gap:6px;padding:8px 13px;font-size:.82rem;font-weight:600;display:inline-flex}.ghost-button:hover{box-shadow:var(--shadow);background:#fff;border-color:#0f1f3d24;transform:translateY(-1px)}.ghost-button:active,button:active{transform:scale(.97)}.search-input{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:240px;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);outline:none;padding:10px 14px}.search-input:focus{border-color:#e8365d66;box-shadow:0 0 0 3px #e8365d14}input,textarea,select{transition:border-color var(--dur-fast), box-shadow var(--dur-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:#e8365d66!important;box-shadow:0 0 0 3px #e8365d14!important}.login-screen{background:#06101f;place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.login-grid{background-image:linear-gradient(#e8365d0e 1px,#0000 1px),linear-gradient(90deg,#e8365d0e 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0}.login-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:min(1040px,100vw - 32px);min-height:620px;animation:scaleIn .45s var(--ease-spring) both;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:28px;grid-template-columns:1.2fr .8fr;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000073}.login-left{background:linear-gradient(145deg,#e8365d2e,#7c3aed14);flex-direction:column;justify-content:space-between;padding:56px;display:flex}.login-right{color:#fff;background:#06101fb8;flex-direction:column;justify-content:center;padding:56px 44px;display:flex}.login-headline{letter-spacing:-.08em;color:#fff;max-width:12ch;margin:0;font-family:Syne,sans-serif;font-size:clamp(2.6rem,5vw,4.6rem);line-height:.96}.login-headline span{color:#ff6b88;display:block}.login-copy{color:#ffffffc2;max-width:36ch;font-size:1rem;line-height:1.7}.login-right .eyebrow,.login-right h2,.login-right label{color:#ffffffeb}.login-badges{gap:12px;display:grid}.glass-row{color:#ffffffe0;transition:background var(--dur-fast), transform var(--dur-fast) var(--ease-out);background:#ffffff12;border:1px solid #ffffff1a;border-radius:14px;padding:13px 16px}.glass-row:hover{background:#ffffff1c;transform:translate(3px)}.login-form{gap:16px;margin-top:24px;display:grid}.login-form label{gap:8px;font-size:.92rem;display:grid}.login-form input{color:#fff;width:100%;transition:border-color var(--dur-fast), background var(--dur-fast), box-shadow var(--dur-fast);background:#ffffff12;border:1px solid #ffffff24;border-radius:12px;outline:none;padding:13px 16px}.login-form input:focus{background:#ffffff1a;border-color:#e8365d80;box-shadow:0 0 0 3px #e8365d26}.error-text{color:#ff9ab0;margin:0;font-size:.86rem}.page-grid>*{animation:fadeUp var(--dur-slow) var(--ease-out) both}.stats-grid>:first-child{animation-delay:0s}.stats-grid>:nth-child(2){animation-delay:55ms}.stats-grid>:nth-child(3){animation-delay:.11s}.stats-grid>:nth-child(4){animation-delay:.165s}.project-grid>:first-child{animation-delay:30ms}.project-grid>:nth-child(2){animation-delay:70ms}.project-grid>:nth-child(3){animation-delay:.11s}.project-grid>:nth-child(4){animation-delay:.15s}.project-grid>:nth-child(5){animation-delay:.19s}.project-grid>:nth-child(n+6){animation-delay:.23s}.task-list .task-row:first-child{animation:slideRight var(--dur-base) var(--ease-out) 50ms both}.task-list .task-row:nth-child(2){animation:slideRight var(--dur-base) var(--ease-out) 90ms both}.task-list .task-row:nth-child(3){animation:slideRight var(--dur-base) var(--ease-out) .13s both}.task-list .task-row:nth-child(4){animation:slideRight var(--dur-base) var(--ease-out) .17s both}.task-list .task-row:nth-child(5){animation:slideRight var(--dur-base) var(--ease-out) .21s both}.task-list .task-row:nth-child(n+6){animation:slideRight var(--dur-base) var(--ease-out) .25s both}.slide-down{animation:slideDown .28s var(--ease-out) both;overflow:hidden}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg,#e8ecf4 25%,#f2f4f9 50%,#e8ecf4 75%) 0 0/600px 100%;animation:1.6s linear infinite shimmer}.skeleton-text{height:13px;margin-bottom:8px}.skeleton-title{width:55%;height:20px;margin-bottom:12px}.skeleton-card{border-radius:var(--r-xl);height:110px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#c5cede;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#a0aab8}.spinner{border:2px solid var(--border);border-top-color:var(--red);border-radius:50%;width:15px;height:15px;animation:.65s linear infinite spin;display:inline-block}:focus-visible{outline:2px solid var(--red);outline-offset:2px;border-radius:var(--r-sm)}.mobile-nav,.mobile-avatar-btn{display:none}@media (width<=1024px){.app-screen{grid-template-columns:1fr}.sidebar{display:none}.stats-grid,.three-col-grid,.two-col-grid,.login-panel{grid-template-columns:1fr}.login-left{display:none}.page-content{padding:16px 16px calc(80px + env(safe-area-inset-bottom,0px) + 16px)}.topbar{gap:10px;padding:10px 14px}.topbar-title{font-size:1.25rem}.mobile-nav{z-index:200;-webkit-backdrop-filter:blur(20px);padding:8px 4px calc(8px + env(safe-area-inset-bottom,0px));background:#fffffff5;border-top:1px solid #0f1f3d14;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0f1f3d14}.mobile-nav-item{color:var(--muted);letter-spacing:.02em;cursor:pointer;transition:color var(--dur-fast), background var(--dur-fast);background:0 0;border:none;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:3px;min-width:52px;padding:6px 12px;font-size:.62rem;font-weight:600;text-decoration:none;display:flex}.mobile-nav-item:hover,.mobile-nav-item.active{color:var(--red);background:#e8365d12}.mobile-nav-item span{line-height:1.1}.mobile-avatar-btn{border-radius:9px;width:34px;height:34px;font-size:.72rem;display:grid}.hide-xs{display:none}}.mobile-drawer-backdrop,.mobile-drawer{display:none}@media (width<=1024px){.mobile-drawer-backdrop{z-index:300;-webkit-backdrop-filter:blur(4px);animation:fadeIn var(--dur-fast) var(--ease-out) both;background:#0f1f3d59;display:block;position:fixed;inset:0}.mobile-drawer{z-index:400;background:var(--surface);padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px));animation:slideUp var(--dur-base) var(--ease-out) both;border-radius:22px 22px 0 0;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 40px #0f1f3d29}.mobile-drawer-handle{background:var(--border);border-radius:999px;width:40px;height:4px;margin:0 auto 16px}.mobile-drawer-user{border-radius:var(--r-lg);background:var(--surface-alt);border:1px solid var(--border);cursor:pointer;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.mobile-drawer-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mobile-drawer-item{border-radius:var(--r-md);color:var(--text);background:var(--surface-alt);border:1px solid var(--border);transition:all var(--dur-fast);align-items:center;gap:10px;padding:12px 14px;font-size:.86rem;font-weight:600;text-decoration:none;display:flex}.mobile-drawer-item:hover,.mobile-drawer-item.active{color:var(--red);background:#e8365d12;border-color:#e8365d33}.mobile-drawer-icon{background:#0f1f3d0f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.mobile-drawer-item.active .mobile-drawer-icon{background:#e8365d1a}}@media (width<=480px){.page-content{padding:12px 12px calc(80px + env(safe-area-inset-bottom,0px) + 12px)}.topbar{padding:8px 12px}.topbar-title{font-size:1.1rem}.stats-grid{gap:12px}.project-grid{grid-template-columns:1fr}.mobile-nav-item{min-width:44px;padding:6px}.stat-value{font-size:1.8rem}.panel{padding:16px}.search-input{width:100%;min-width:0}.eyebrow{font-size:.6rem}.mobile-drawer-grid{grid-template-columns:1fr}}.mobile-scroll-x{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=1024px){.filter-bar{flex-wrap:wrap!important;gap:8px!important}.pipeline-stats-grid{grid-template-columns:repeat(2,1fr)!important}.perf-member-expanded{grid-template-columns:1fr!important}.perf-member-radar-border{border-bottom:1px solid #f0f2f6;border-right:none!important}.tab-nav-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;overflow-x:auto}.tab-nav-scroll::-webkit-scrollbar{display:none}.form-two-col{grid-template-columns:1fr!important}.report-btn{margin-left:0!important}.card-auto-grid,.milestone-layout-grid,.profile-layout-grid{grid-template-columns:1fr!important}.profile-sidebar-sticky{position:static!important}}@media (width<=480px){.pipeline-stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
