@font-face{font-family:Google Sans;src:url(/fonts/GoogleSans-VariableFont.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Google Sans;src:url(/fonts/GoogleSans-Italic.ttf)format("truetype");font-weight:100 900;font-style:italic;font-display:swap}:root{--color-brand:#1f4ead;--color-brand-light:#2662d9;--color-brand-50:#f2f6fd;--color-brand-100:#e2e9f9;--color-brand-200:#c2d1f0;--color-accent:#f29e0d;--color-accent-50:#fef5e7;--color-proposed:#1f4ead;--color-proposed-bg:#f2f6fd;--color-inprogress:#da8e0b;--color-inprogress-bg:#fef5e7;--color-completed:#2c9658;--color-completed-bg:#ebf9f1;--color-rejected:#ce2727;--color-rejected-bg:#fceeee;--color-surface:#fff;--color-surface-2:#f9fafb;--color-muted:#f3f4f6;--color-border:#e2e4e9;--color-border-strong:#cacfd8;--color-text:#1d2330;--color-text-sub:#677183;--color-text-muted:#949ba8;--color-success:#2c9658;--color-success-bg:#ebf9f1;--color-warning:#da8e0b;--color-warning-bg:#fef5e7;--color-danger:#ce2727;--color-danger-bg:#fceeee;--sidebar-width:224px;--header-height:56px;--radius:.375rem;--shadow-sm:0 1px 2px 0 #1d23300d;--shadow:0 1px 3px 0 #1d233014, 0 1px 2px -1px #1d23300f;--shadow-md:0 4px 6px -1px #1d233014, 0 2px 4px -2px #1d23300d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:var(--color-text);background-color:var(--color-surface-2);font-family:Google Sans,Inter,system-ui,sans-serif;font-size:.875rem;line-height:1.5}a{color:var(--color-brand);text-decoration:none}a:hover{text-decoration:underline}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-brand{color:var(--color-brand)}.text-muted{color:var(--color-text-muted)}.text-sub{color:var(--color-text-sub)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.grow{flex-grow:1}.shrink-0{flex-shrink:0}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-12{grid-template-columns:repeat(12,1fr);gap:1.5rem;display:grid}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-4{grid-column:span 4/span 4}.col-span-5{grid-column:span 5/span 5}.col-span-6{grid-column:span 6/span 6}.col-span-7{grid-column:span 7/span 7}.col-span-8{grid-column:span 8/span 8}.col-span-9{grid-column:span 9/span 9}.col-span-10{grid-column:span 10/span 10}.col-span-11{grid-column:span 11/span 11}.col-span-12{grid-column:span 12/span 12}.staff-profile-grid{grid-template-columns:1fr 2fr;gap:1rem;display:grid}.staff-stats-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-3{padding-inline:.75rem}.px-4{padding-inline:1rem}.px-5{padding-inline:1.25rem}.py-2{padding-block:.5rem}.py-3{padding-block:.75rem}.py-4{padding-block:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-auto{margin-left:auto}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-muted{background-color:var(--color-muted)}.bg-brand{background-color:var(--color-brand)}.bg-brand-50{background-color:var(--color-brand-50)}.border{border:1px solid var(--color-border)}.border-strong{border:1px solid var(--color-border-strong)}.border-b{border-bottom:1px solid var(--color-border)}.border-t{border-top:1px solid var(--color-border)}.rounded{border-radius:var(--radius)}.rounded-full{border-radius:9999px}.shadow{box-shadow:var(--shadow)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100dvh}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-pre-wrap{white-space:pre-wrap}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.inset-0{inset:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.divider{background-color:var(--color-border);height:1px;margin-block:1rem}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}.skeleton{background-color:var(--color-muted);border-radius:var(--radius);animation:1.6s ease-in-out infinite skeleton-pulse}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-brand);border-radius:9999px;width:1.25rem;height:1.25rem;animation:.65s linear infinite spin;display:inline-block}.spinner-sm{width:1rem;height:1rem}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.transition{transition:all .15s}.dashboard-shell{background-color:var(--color-surface-2);min-height:100dvh;display:flex}.dashboard-sidebar{width:var(--sidebar-width);background-color:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.dashboard-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.dashboard-header{height:var(--header-height);border-bottom:1px solid var(--color-border);background-color:var(--color-surface);flex-shrink:0;align-items:center;gap:1rem;padding-inline:1.5rem;display:flex}.dashboard-content{flex:1;padding:1.5rem;overflow-y:auto}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}table{border-collapse:collapse;width:100%;font-size:.875rem}th{text-align:left;color:var(--color-text-sub);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);background-color:var(--color-muted);white-space:nowrap;padding:.625rem 1rem;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:.75rem 1rem}tr:last-child td{border-bottom:none}tbody tr:hover{background-color:var(--color-brand-50);cursor:pointer}label{color:var(--color-text);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.input,input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],textarea,select{width:100%;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius);appearance:none;outline:none;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;transition:border-color .15s,box-shadow .15s}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.25rem;padding-right:2.25rem}.input:focus,input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,input[type=number]:focus,input[type=date]:focus,textarea:focus,select:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px #1f4ead1f}.input.error,input.error{border-color:var(--color-danger)}textarea{resize:vertical;min-height:5rem}.input-error-msg{color:var(--color-danger);margin-top:.25rem;font-size:.75rem}.field{flex-direction:column;gap:0;display:flex}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.375rem;padding:.5rem .875rem;font-family:Google Sans,Inter,system-ui,sans-serif;font-size:.875rem;font-weight:500;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:.375rem .625rem;font-size:.8125rem}.btn-primary{background-color:var(--color-brand);color:#fff;border-color:var(--color-brand)}.btn-primary:hover:not(:disabled){background-color:var(--color-brand-light);border-color:var(--color-brand-light)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.btn-secondary:hover:not(:disabled){background-color:var(--color-muted)}.btn-ghost{color:var(--color-text-sub);background-color:#0000;border-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--color-muted);color:var(--color-text)}.btn-danger{background-color:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){opacity:.88}.badge{border-radius:var(--radius);white-space:nowrap;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.badge-proposed{background-color:var(--color-proposed-bg);color:var(--color-proposed)}.badge-inprogress{background-color:var(--color-inprogress-bg);color:var(--color-inprogress)}.badge-completed{background-color:var(--color-completed-bg);color:var(--color-completed)}.badge-rejected{background-color:var(--color-rejected-bg);color:var(--color-rejected)}.badge-neutral{background-color:var(--color-muted);color:var(--color-text-sub)}.badge-brand{background-color:var(--color-brand-50);color:var(--color-brand)}.stat-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.25rem 1.5rem}.stat-card__label{color:var(--color-text-sub);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:500}.stat-card__value{color:var(--color-text);margin-top:.375rem;font-size:1.25rem;font-weight:600}.stat-card__sub{color:var(--color-text-muted);margin-top:.25rem;font-size:.75rem}.modal-overlay{z-index:50;background-color:#1d233059;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background-color:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow-md);width:100%;max-width:30rem;max-height:90dvh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-body{padding:1.25rem}.modal-footer{border-top:1px solid var(--color-border);justify-content:flex-end;gap:.5rem;padding:1rem 1.25rem;display:flex}.slideover-overlay{z-index:40;background-color:#1d23304d;position:fixed;inset:0}.slideover{background-color:var(--color-surface);border-left:1px solid var(--color-border);width:min(520px,95vw);height:100dvh;box-shadow:var(--shadow-md);z-index:41;flex-direction:column;display:flex;position:fixed;top:0;right:0;overflow-y:auto}.slideover-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.slideover-body{flex:1;padding:1.25rem;overflow-y:auto}.slideover-footer{border-top:1px solid var(--color-border);flex-shrink:0;padding:1rem 1.25rem}.sidebar-logo{border-bottom:1px solid var(--color-border);color:var(--color-brand);flex-shrink:0;padding:1rem;font-size:1rem;font-weight:600}.sidebar-nav{flex:1;padding:.5rem 0;overflow-y:auto}.sidebar-nav-item{color:var(--color-text-sub);cursor:pointer;border-left:2px solid #0000;border-radius:0;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.sidebar-nav-item:hover{background-color:var(--color-brand-50);color:var(--color-brand);text-decoration:none}.sidebar-nav-item.active{background-color:var(--color-brand-50);color:var(--color-brand);border-left-color:var(--color-brand);font-weight:600}.sidebar-section-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;padding:.75rem 1rem .25rem;font-size:.6875rem;font-weight:600}.sidebar-footer{border-top:1px solid var(--color-border);flex-shrink:0;padding:.75rem 1rem}.step-bar{align-items:center;gap:.5rem;margin-bottom:2rem;display:flex}.step-bar__item{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500;display:flex}.step-bar__dot{background-color:var(--color-muted);width:1.5rem;height:1.5rem;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.step-bar__item.active .step-bar__dot{background-color:var(--color-brand);color:#fff;border-color:var(--color-brand)}.step-bar__item.active{color:var(--color-text)}.step-bar__item.done .step-bar__dot{background-color:var(--color-completed);color:#fff;border-color:var(--color-completed)}.step-bar__connector{background-color:var(--color-border);flex:1;max-width:3rem;height:1px}.tab-strip{border-bottom:1px solid var(--color-border);scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:0;margin-bottom:1.25rem;display:flex;overflow-x:auto}.tab-strip::-webkit-scrollbar{display:none}.tab-strip__item{color:var(--color-text-sub);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.625rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s}.tab-strip__item:hover{color:var(--color-brand)}.tab-strip__item.active{color:var(--color-brand);border-bottom-color:var(--color-brand);font-weight:600}.alert{border-radius:var(--radius);border:1px solid;padding:.75rem 1rem;font-size:.875rem}.alert-error{background-color:var(--color-danger-bg);color:var(--color-danger);border-color:#efa9a9}.alert-success{background-color:var(--color-success-bg);color:var(--color-success);border-color:#9ce2b9}.alert-warning{background-color:var(--color-warning-bg);color:var(--color-warning);border-color:#f9cf86}.alert-info{background-color:var(--color-brand-50);border-color:var(--color-brand-200);color:var(--color-brand)}.upload-zone{border:2px dashed var(--color-border-strong);border-radius:var(--radius);text-align:center;color:var(--color-text-sub);cursor:pointer;padding:1.5rem;transition:border-color .15s,background-color .15s}.upload-zone:hover,.upload-zone.dragover{border-color:var(--color-brand);background-color:var(--color-brand-50)}.checkbox-group{flex-wrap:wrap;gap:.5rem;display:flex}.checkbox-chip{border:1px solid var(--color-border-strong);border-radius:var(--radius);cursor:pointer;color:var(--color-text-sub);background-color:var(--color-surface);-webkit-user-select:none;user-select:none;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:inline-flex}.checkbox-chip:hover{border-color:var(--color-brand);color:var(--color-brand)}.checkbox-chip.selected{background-color:var(--color-brand-50);border-color:var(--color-brand);color:var(--color-brand)}.auth-page{background-color:var(--color-surface-2);justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}.auth-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:28rem;box-shadow:var(--shadow-md);padding:2rem}.auth-card__logo{color:var(--color-brand);margin-bottom:.25rem;font-size:1.125rem;font-weight:600}.auth-card__title{color:var(--color-text);margin-bottom:.25rem;font-size:1rem;font-weight:600}.auth-card__subtitle{color:var(--color-text-sub);margin-bottom:1.5rem;font-size:.8125rem}.submit-page{background-color:var(--color-surface-2);flex-direction:column;min-height:100dvh;display:flex}.submit-header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);align-items:center;gap:.75rem;padding:.875rem 1.5rem;display:flex}.submit-body{flex:1;justify-content:center;padding:2rem 1rem;display:flex}.submit-form-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:36rem;box-shadow:var(--shadow-sm);padding:2rem}.mobile-sidebar-toggle,.mobile-close-btn{display:none}@media (max-width:768px){.dashboard-sidebar{height:100dvh;width:var(--sidebar-width);z-index:100;box-shadow:var(--shadow-md);transition:transform .2s cubic-bezier(.4,0,.2,1);top:0;left:0;transform:translate(-100%);display:flex!important;position:fixed!important}.dashboard-sidebar.open{transform:translate(0)}.sidebar-backdrop{z-index:90;background-color:#1d233066;animation:.2s sidebarFadeIn;position:fixed;inset:0}@keyframes sidebarFadeIn{0%{opacity:0}to{opacity:1}}.mobile-sidebar-toggle{z-index:45;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius);width:36px;height:36px;color:var(--color-text-sub);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;font-size:1.25rem;transition:background-color .15s;display:inline-flex;position:fixed;top:10px;left:16px}.mobile-sidebar-toggle:hover{background-color:var(--color-muted);color:var(--color-text)}.mobile-close-btn{color:var(--color-text-sub);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;font-size:1rem;line-height:1;display:inline-flex}.mobile-close-btn:hover{color:var(--color-text)}.dashboard-header{padding-inline:1rem!important;padding-left:3.75rem!important}.dashboard-content{padding:1rem}.grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,1fr)}.grid-cols-2,.grid-cols-12{grid-template-columns:1fr}.col-span-1,.col-span-2,.col-span-3,.col-span-4,.col-span-5,.col-span-6,.col-span-7,.col-span-8,.col-span-9,.col-span-10,.col-span-11,.col-span-12{grid-column:span 12/span 12}.staff-profile-grid{grid-template-columns:1fr}.staff-stats-grid{grid-template-columns:repeat(2,1fr)}.card.overflow-hidden{overflow-x:auto!important}table{min-width:600px}}@media (max-width:480px){.grid-cols-2,.grid-cols-3,.grid-cols-4,.staff-stats-grid{grid-template-columns:1fr}.submit-form-card{padding:1.25rem}}
