@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background:#f1f5f9;line-height:1.4;font-weight:400;font-size:15px}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:.8rem;padding:.6rem .75rem;outline:none}input:focus,select:focus,textarea:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-text-fill-color:#0f172a;-webkit-box-shadow:0 0 0 1000px #ffffff inset;transition:background-color 9999s ease-in-out 0s}textarea{resize:vertical}.app-shell{min-height:100vh;padding:.6rem;position:relative;overflow:hidden;background:linear-gradient(180deg,#0f766e 0,#0891b2 12rem,#f1f5f9 12rem,#f1f5f9)}.login-shell{background:radial-gradient(circle at top left,rgba(251,191,36,.12),transparent 22rem),radial-gradient(circle at top right,rgba(34,211,238,.16),transparent 24rem),linear-gradient(180deg,#eff7fb,#f8fbfd 52%,#eef3f8)}.login-grid-lines{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:84px 84px;-webkit-mask-image:radial-gradient(circle at center,black 38%,transparent 88%);mask-image:radial-gradient(circle at center,black 38%,transparent 88%);pointer-events:none}.admin-shell{height:100vh;padding:0;background:linear-gradient(180deg,#eaf6fb,#f5f8fb);overflow:hidden}.bg-orb{position:absolute;border-radius:999px;filter:blur(80px);opacity:.55;pointer-events:none}.orb-right{top:4rem;right:-3rem;width:14rem;height:14rem;background:#ffffff2e}.orb-left{top:6rem;left:-4rem;width:16rem;height:16rem;background:#fbbf2433}.login-layout,.dashboard-layout{position:relative;z-index:1;max-width:1280px;margin:0 auto}.login-layout{min-height:calc(100vh - 2rem);display:grid;align-items:center;gap:1rem;max-width:1040px}.dashboard-layout,.main-column,.content-shell,.nav-list,.stack-form,.workflow-list,.list-stack,.history-list,.stack-column{display:grid;gap:.6rem}.desktop-sidebar,.desktop-sidebar.sidebar-card{display:none}.mobile-topbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;position:sticky;top:0;z-index:8;padding:.7rem .85rem;background:#ffffffdb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-topbar-title{display:block;margin-top:.15rem;font-size:1rem;font-weight:800;letter-spacing:-.03em}.mobile-bottom-nav{position:fixed;left:.75rem;right:.75rem;bottom:.75rem;z-index:18;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;padding:.45rem;border-radius:1rem;background:#020617f0;box-shadow:0 18px 40px #0f172a38}.mobile-nav-item{border:0;background:transparent;color:#cbd5e1;border-radius:.8rem;padding:.55rem .35rem;display:grid;justify-items:center;gap:.28rem;font-size:.74rem;font-weight:700}.mobile-nav-item.active{background:#ffffff1a;color:#fff}.mobile-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem}.card{border-radius:.8rem;background:#fffffff0;border:1px solid rgba(226,232,240,.95);box-shadow:0 20px 45px #0f172a24}.login-hero,.login-card,.page-heading,.panel-card,.hero-card,.filter-card,.dark-panel,.modal-card,.empty-card,.sidebar-card,.project-card{padding:.85rem}.desktop-only{display:none}.login-hero{color:#fff;background:radial-gradient(circle at top right,rgba(103,232,249,.2),transparent 18rem),radial-gradient(circle at bottom left,rgba(45,212,191,.12),transparent 16rem),linear-gradient(160deg,#0a849cf5,#0f172afa 72%);border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 70px #0f172a38;min-height:34rem;display:grid;align-content:space-between}.login-hero-top{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.login-hero-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .65rem;background:#ffffff1f;border:1px solid rgba(255,255,255,.14);color:#cffafe;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.login-card{max-width:28rem;width:100%;margin:0 auto;background:#fffffffa;border:1px solid rgba(203,213,225,.9);box-shadow:0 24px 54px #0f172a1a;order:-1}.login-card-head{display:flex;align-items:flex-start;gap:.9rem}.login-card-icon{width:2.7rem;height:2.7rem;border-radius:.95rem;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#ecfeff,#ccfbf1);color:#0f766e;box-shadow:inset 0 1px #fffc;flex:0 0 auto}.login-card-icon-svg{width:1.2rem;height:1.2rem}.login-card-note{display:flex;align-items:center;gap:.55rem;margin-top:.7rem;padding:.72rem .8rem;border-radius:.8rem;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:1px solid #dbe4ee;color:#334155;font-size:.84rem}.login-note-dot{width:.55rem;height:.55rem;border-radius:999px;background:#14b8a6;flex:0 0 auto}.eyebrow{margin:0;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.24em}.eyebrow.light{color:#bae6fd}.eyebrow.dark{color:#0f766e}.login-hero h1,.login-card h2,.hero-card h2,.panel-card h3,.project-card h3,.modal-card h3,.dark-panel h3{margin:0;font-weight:800;letter-spacing:-.04em}.login-hero h1{margin-top:.8rem;font-size:clamp(1.8rem,3.2vw,3.1rem);max-width:12ch;line-height:1.05;text-shadow:0 10px 35px rgba(2,6,23,.45)}.hero-copy,.section-header p,.panel-title-row p,.workflow-box p,.dark-panel p,.subtle-text,.history-item p,.demo-box p{margin:0}.hero-copy{margin-top:.6rem;max-width:34rem;font-size:.9rem;line-height:1.5;color:#f1f5f9eb}.login-hero-stats,.login-hero-footer{display:grid;gap:.6rem;margin-top:1rem}.login-mini-card{padding:.75rem .8rem;border-radius:.85rem;background:#ffffff14;border:1px solid rgba(255,255,255,.1);color:#f1f5f9f0}.login-mini-card span{display:block;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#a5f3fc}.login-mini-card strong{display:block;margin-top:.35rem;font-size:.9rem;font-weight:700;line-height:1.4}.feature-grid,.stats-grid,.filter-grid,.form-grid,.project-body,.meta-grid{display:grid;gap:.6rem}.feature-box,.workflow-box,.demo-box,.user-box,.history-item,.update-form{border-radius:.75rem;padding:.65rem}.feature-box{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff0f}.feature-box span,.stat-card span,.mini-label{display:block;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.feature-box strong,.stat-card strong{display:block;margin-top:.25rem;font-size:1rem;font-weight:800;letter-spacing:-.03em}.section-header{display:grid;gap:.15rem}.section-header h2{margin:0;font-size:clamp(1.08rem,1.8vw,1.5rem);line-height:1.15}.section-header p{color:#64748b;font-size:.85rem;line-height:1.45}.demo-box,.workflow-box,.history-item,.update-form{background:#f8fafc;border:1px solid #e2e8f0}.warn-soft{background:#fffbeb}.info-soft{background:#ecfeff}.field{display:grid;gap:.35rem}.field span{font-size:.88rem;font-weight:700;color:#334155}.btn{border:0;border-radius:.8rem;padding:.58rem .75rem;font-weight:800;font-size:.94rem;letter-spacing:-.01em}.btn-dark{background:#020617;color:#fff}.btn-accent{background:#14b8a6;color:#042f2e}.btn-outline{background:transparent;color:inherit;border:1px solid rgba(148,163,184,.4)}.btn-danger{background:#be185d14;color:#be123c;border:1px solid rgba(190,24,93,.18)}.btn-sm{padding:.35rem .6rem;border-radius:.7rem;font-size:.8rem}.error-banner{margin:0;background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:.8rem;padding:.55rem .7rem}.login-footnote{margin:.75rem 0 0;color:#64748b;font-size:.8rem;text-align:center}.sidebar-card{background:#020617e6;color:#fff;border-radius:0;border:0;box-shadow:none;display:flex;flex-direction:column;overflow:hidden}.sidebar-top,.panel-title-row,.history-top,.tag-row{display:flex;gap:1rem}.sidebar-top,.panel-title-row,.history-top{justify-content:space-between;align-items:flex-start}.sidebar-top{flex-shrink:0}.tag-row{flex-wrap:wrap;align-items:center}.sidebar-title{font-size:1.2rem;margin-top:.1rem;line-height:1.1;letter-spacing:-.03em}.sidebar-body{display:none;margin-top:.75rem;min-height:0}.sidebar-body.open{display:grid;gap:.75rem;grid-template-rows:minmax(0,1fr) auto}.sidebar-footer{display:block;padding-top:.6rem;border-top:1px solid rgba(148,163,184,.14);flex-shrink:0}.content-shell{min-height:100vh;height:100vh;align-content:start;padding-bottom:5.8rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-header{position:sticky;top:0;z-index:10;min-height:.75rem;padding:.5rem 1rem 0;border-radius:0;border-left:0;border-right:0;background:transparent;border-top:0;border-bottom:0;box-shadow:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.page-heading{padding:.55rem .75rem}.page-heading .eyebrow{font-size:.62rem;letter-spacing:.18em}.user-box{background:#ffffff0f;border:1px solid rgba(148,163,184,.15);padding:.5rem .6rem;border-radius:.8rem;align-self:start}.sidebar-user-box{display:flex;align-items:center;justify-content:space-between;gap:.45rem}.sidebar-user-meta{min-width:0}.user-name{margin:0;font-weight:800;font-size:.9rem;line-height:1.2}.user-email{margin:.2rem 0 0;color:#cbd5e1;font-size:.76rem;line-height:1.2}.icon-btn{width:2.2rem;min-width:2.2rem;height:2.2rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:.7rem}.icon-svg{width:1rem;height:1rem}.nav-list{padding-top:.25rem;min-height:0;overflow-y:auto;align-content:center;padding-right:.25rem;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.45) transparent}.nav-list::-webkit-scrollbar{width:6px}.nav-list::-webkit-scrollbar-track{background:transparent}.nav-list::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:999px}.nav-list::-webkit-scrollbar-thumb:hover{background:#94a3b8a6}.nav-button{width:100%;border:0;background:transparent;color:#cbd5e1;text-align:left;border-radius:.8rem;padding:.56rem .7rem;font-weight:600;font-size:.94rem;line-height:1.25}.nav-button.active{background:#ffffff1f;color:#fff;font-weight:700}.stats-grid{margin-top:.35rem;grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:.6rem .7rem;border-radius:.75rem}.stat-card.dark{background:#020617;color:#fff}.stat-card.warn{background:#fef3c7;color:#92400e}.stat-card.info{background:#cffafe;color:#155e75}.stat-card.muted{background:#e2e8f0;color:#334155}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:.22rem .48rem;font-size:.72rem;font-weight:800;letter-spacing:.01em}.pill.warn,.pill.followup{background:#fef3c7;color:#92400e}.pill.scheduled{background:#cffafe;color:#155e75}.pill.renewed{background:#ccfbf1;color:#115e59}.pill.active{background:#e2e8f0;color:#334155}.pill.closed{background:#020617;color:#fff}.pill.discontinued{background:#ffe4e6;color:#9f1239}.dashboard-grid{display:grid;gap:.6rem}.dashboard-table-wrap{margin-top:.55rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.projects-toolbar{display:flex;align-items:center;justify-content:flex-end}.table-actions{display:flex;align-items:center;gap:.4rem}.table-icon-btn{width:2.2rem;min-width:2.2rem;height:2.2rem}.projects-header{display:flex;align-items:center;justify-content:space-between;gap:.55rem;flex-wrap:wrap}.projects-toolbar,.projects-toolbar .btn{width:100%}.projects-title h3{margin:0}.projects-title p{margin-top:.2rem;font-size:.86rem;color:#64748b;line-height:1.45}.project-filters{margin-top:.45rem;gap:.45rem}.project-filters input,.project-filters select{padding:.55rem .72rem;border-radius:.75rem}.dashboard-table{width:100%;border-collapse:collapse;min-width:720px}.dashboard-table th,.dashboard-table td{padding:.5rem .45rem;text-align:left;border-bottom:1px solid #e2e8f0;font-size:.88rem;vertical-align:middle;line-height:1.35}.dashboard-table th{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:#64748b}.dashboard-table tbody tr:last-child td{border-bottom:0}.dashboard-table tbody tr:hover{background:#f8fafccc}.dashboard-table tbody tr.row-warning{background:#fffbeb}.dashboard-table tbody tr.row-warning:hover{background:#fef3c7}.dashboard-table tbody tr.row-danger{background:#fff1f2}.dashboard-table tbody tr.row-danger:hover{background:#ffe4e6}.main-column{padding:.9rem;align-content:start}.main-column>.page-heading{display:none}.tag-chip{display:inline-flex;align-items:center;border-radius:999px;background:#020617;color:#fff;padding:.36rem .68rem;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.18em}.project-head{display:grid;gap:.75rem}.meta-grid p{margin:0;color:#475569}.history-panel{display:grid;gap:.6rem}.history-title{margin:0;font-weight:700}.history-top span{color:#94a3b8;font-size:.8rem}.empty-card{text-align:center;color:#64748b;border-style:dashed}.dark-panel{background:#020617;color:#fff}.dark-panel p:last-child{color:#cbd5e1}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#02061785;display:grid;place-items:center;padding:.75rem;z-index:20}.modal-card{width:min(100%,42rem)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;background:#0206176b;z-index:25}.drawer-panel{width:min(100%,32rem);height:100vh;background:#fffffffa;border-left:1px solid #dbe4ee;box-shadow:-12px 0 36px #0f172a29;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:.75rem;padding:1rem}.drawer-panel .form-grid,.drawer-meta{grid-template-columns:1fr}.drawer-head,.timeline-top{display:flex;justify-content:space-between;gap:.8rem}.drawer-head{align-items:flex-start}.drawer-head h3{margin:0}.drawer-subtitle{margin:.2rem 0 0;color:#64748b;font-size:.88rem}.drawer-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.drawer-meta-item{padding:.65rem .7rem;border-radius:.8rem;background:#f8fafc;border:1px solid #e2e8f0}.drawer-meta-item span{display:block;margin-bottom:.3rem;color:#64748b;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.drawer-meta-item strong{font-size:.9rem}.drawer-body{min-height:0;overflow-y:auto;padding-right:.2rem}.timeline-list{display:grid;gap:.75rem}.timeline-item{position:relative;display:grid;grid-template-columns:1rem minmax(0,1fr);gap:.7rem}.timeline-item:before{content:"";position:absolute;left:.35rem;top:1.1rem;bottom:-.9rem;width:1px;background:#dbe4ee}.timeline-item:last-child:before{display:none}.timeline-dot{width:.7rem;height:.7rem;border-radius:999px;background:#14b8a6;box-shadow:0 0 0 4px #14b8a61f;margin-top:.35rem}.timeline-card{padding:.8rem;border-radius:.85rem;background:#f8fafc;border:1px solid #e2e8f0}.timeline-top{align-items:center}.timeline-top strong{font-size:.9rem}.timeline-top span{color:#64748b;font-size:.76rem;white-space:nowrap}.timeline-card p{margin:.35rem 0 0;color:#334155;line-height:1.5}.drawer-form{display:grid;gap:.6rem;padding-top:.75rem;border-top:1px solid #e2e8f0}@media (max-width: 767px){.login-shell{background:linear-gradient(180deg,#eef6fb,#f8fbfd)}.login-grid-lines,.login-hero,.orb-left{display:none}.orb-right{top:-2rem;right:-3rem;width:12rem;height:12rem;opacity:.35}.login-layout{min-height:100vh;align-content:center;padding:1rem;max-width:32rem}.login-card{margin-top:0;max-width:none;border-radius:1rem;padding:1rem;background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 50px #0f172a1f}.login-card-head{gap:.75rem}.login-card-icon{width:2.5rem;height:2.5rem;border-radius:.85rem}.login-card-note{margin-top:.6rem}.login-footnote{display:none}.app-shell{padding:0}.dashboard-layout{grid-template-columns:minmax(0,1fr)}.page-heading,.hero-card,.panel-card,.filter-card{border-radius:.95rem}.main-column{padding:.75rem .75rem 6.5rem}.stats-grid{grid-template-columns:1fr}.section-header h2{font-size:1.2rem}.drawer-panel{width:100%;padding:.85rem}.drawer-head,.timeline-top{gap:.55rem}.timeline-top{flex-direction:column;align-items:flex-start}.dashboard-table-wrap{overflow-x:visible}.dashboard-table,.dashboard-table thead,.dashboard-table tbody,.dashboard-table tr,.dashboard-table th,.dashboard-table td{display:block;width:100%}.dashboard-table{min-width:0}.dashboard-table thead{display:none}.dashboard-table tbody{display:grid;gap:.75rem}.dashboard-table tbody tr{padding:.2rem 0;border:1px solid #e2e8f0;border-radius:.9rem;background:#fff;box-shadow:0 12px 28px #0f172a0f}.dashboard-table tbody tr.row-warning{background:#fffbeb}.dashboard-table tbody tr.row-danger{background:#fff1f2}.dashboard-table td{padding:.55rem .75rem;border-bottom:1px solid #edf2f7}.dashboard-table td:last-child{border-bottom:0}.dashboard-table td:before{content:attr(data-label);display:block;margin-bottom:.22rem;color:#64748b;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.table-actions{justify-content:flex-start}}.is-muted{opacity:.82}@media (min-width: 768px){.projects-toolbar,.projects-toolbar .btn{width:auto}.mobile-topbar,.mobile-bottom-nav{display:none}.main-column>.page-heading{display:block}.content-shell{padding-bottom:0}.feature-grid,.login-hero-stats,.login-hero-footer,.stats-grid,.filter-grid,.form-grid,.project-body,.meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-head{grid-template-columns:1.2fr 1fr;align-items:start}.drawer-panel .form-grid,.drawer-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.desktop-sidebar,.desktop-sidebar.sidebar-card{display:flex}.desktop-only{display:block}.login-layout{grid-template-columns:minmax(0,1.15fr) 28rem}.login-card{order:0}.dashboard-layout{grid-template-columns:18rem minmax(0,1fr);max-width:none;min-height:100vh;gap:0}.drawer-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-menu-btn{display:none}.sidebar-card{position:sticky;top:0;height:100vh;padding:1.1rem}.sidebar-body{display:grid;gap:.85rem;flex:1;margin-top:.9rem;min-height:0;grid-template-rows:1fr auto}.content-shell{background:#f8fafcdb}.admin-header{padding:.55rem .95rem 0}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1.35fr 1fr}}
