@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-content:""}}}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-full{top:100%}.z-50{z-index:50}.container{width:100%}.mx-auto{margin-inline:auto}.-mt-\[4\.9rem\]{margin-top:-4.9rem}.-mb-px{margin-bottom:-1px}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[335\/376\]{aspect-ratio:335/376}.aspect-square{aspect-ratio:1}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-\[260px\]{width:260px}.w-\[448px\]{width:448px}.w-full{width:100%}.max-w-\[335px\]{max-width:335px}.max-w-full{max-width:100%}.max-w-none{max-width:none}.min-w-\[3rem\]{min-width:3rem}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.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}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}.self-end{align-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[\#19140035\]{border-color:#19140035}.border-\[\#e3e3e0\]{border-color:#e3e3e0}.border-transparent{border-color:#0000}.bg-\[\#1b1b18\]{background-color:#1b1b18}.bg-\[\#FDFDFC\]{background-color:#fdfdfc}.bg-\[\#dbdbd7\]{background-color:#dbdbd7}.bg-\[\#fff2f2\]{background-color:#fff2f2}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-\[13px\]{font-size:13px}.leading-\[20px\]{--tw-leading:20px;line-height:20px}.whitespace-nowrap{white-space:nowrap}.text-\[\#1b1b18\]{color:#1b1b18}.text-\[\#706f6c\]{color:#706f6c}.text-\[\#F53003\],.text-\[\#f53003\]{color:#f53003}.uppercase{text-transform:uppercase}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-100{opacity:1}.shadow-\[0px_0px_1px_0px_rgba\(0\,0\,0\,0\.03\)\,0px_1px_2px_0px_rgba\(0\,0\,0\,0\.06\)\]{--tw-shadow:0px 0px 1px 0px var(--tw-shadow-color,#00000008),0px 1px 2px 0px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[8px_8px_0px_0px_rgba\(0\,0\,0\,1\)\]{--tw-shadow:8px 8px 0px 0px var(--tw-shadow-color,#000);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0px_0px_0px_1px_rgba\(26\,26\,0\,0\.16\)\]{--tw-shadow:inset 0px 0px 0px 1px var(--tw-shadow-color,#1a1a0029);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.delay-300{transition-delay:.3s}.duration-750{--tw-duration:.75s;transition-duration:.75s}.select-all{-webkit-user-select:all;user-select:all}.not-has-\[nav\]\:hidden:not(:has(:is(nav))){display:none}.peer-focus\:ring-4:is(:where(.peer):focus~*){--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.peer-focus\:outline-none:is(:where(.peer):focus~*){--tw-outline-style:none;outline-style:none}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:bottom-1\/2:before{content:var(--tw-content);bottom:50%}.before\:left-\[0\.4rem\]:before{content:var(--tw-content);left:.4rem}.before\:border-l:before{content:var(--tw-content);border-left-style:var(--tw-border-style);border-left-width:1px}.before\:border-\[\#e3e3e0\]:before{content:var(--tw-content);border-color:#e3e3e0}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:start-\[2px\]:after{content:var(--tw-content);inset-inline-start:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:rounded-full:after{content:var(--tw-content);border-radius:3.40282e38px}.after\:border:after{content:var(--tw-content);border-style:var(--tw-border-style);border-width:1px}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}@media(hover:hover){.hover\:border-\[\#1915014a\]:hover{border-color:#1915014a}.hover\:border-\[\#19140035\]:hover{border-color:#19140035}.hover\:no-underline:hover{text-decoration-line:none}}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-4:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}@media(prefers-color-scheme:dark){.dark\:block{display:block}.dark\:hidden{display:none}.dark\:border-\[\#3E3E3A\]{border-color:#3e3e3a}.dark\:border-\[\#eeeeec\]{border-color:#eeeeec}.dark\:bg-\[\#0a0a0a\]{background-color:#0a0a0a}.dark\:bg-\[\#1D0002\]{background-color:#1d0002}.dark\:bg-\[\#3E3E3A\]{background-color:#3e3e3a}.dark\:bg-\[\#161615\]{background-color:#161615}.dark\:bg-\[\#eeeeec\]{background-color:#eeeeec}.dark\:text-\[\#1C1C1A\]{color:#1c1c1a}.dark\:text-\[\#A1A09A\]{color:#a1a09a}.dark\:text-\[\#EDEDEC\]{color:#ededec}.dark\:text-\[\#F61500\]{color:#f61500}.dark\:text-\[\#FF4433\]{color:#f43}.dark\:shadow-\[inset_0px_0px_0px_1px_\#fffaed2d\]{--tw-shadow:inset 0px 0px 0px 1px var(--tw-shadow-color,#fffaed2d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.dark\:before\:border-\[\#3E3E3A\]:before{content:var(--tw-content);border-color:#3e3e3a}@media(hover:hover){.dark\:hover\:border-\[\#3E3E3A\]:hover{border-color:#3e3e3a}.dark\:hover\:border-\[\#62605b\]:hover{border-color:#62605b}}}@starting-style{.starting\:opacity-0{opacity:0}}:root{--color-primary:#1a1a1a;--color-secondary:#25d366;--color-accent:#128c7e;--color-background:#f8f9fa;--color-surface:#fff;--color-text:#1a1a1a;--color-text-secondary:#6b7280;--color-text-muted:#9ca3af;--color-border:#e5e7eb;--color-error:#ef4444;--color-success:#22c55e;--color-warning:#f59e0b;--font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-family);color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:1rem;line-height:1.5}.hidden{display:none!important}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.auth-card{background:var(--color-surface);border-radius:1rem;width:100%;max-width:400px;padding:2rem 1.5rem}.auth-logo{text-align:center}.logo-img{max-width:200px;height:auto}.auth-title{text-align:center;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.auth-subtitle{color:var(--color-text-secondary);text-align:center;margin-bottom:1.5rem;font-size:.875rem;line-height:1.6}.form-group{margin-bottom:1rem}.form-label{color:var(--color-text);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.form-input,.form-select{width:100%;font-size:1rem;font-family:var(--font-family);border:1px solid var(--color-border);background:var(--color-surface);border-radius:.5rem;padding:.75rem 1rem;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #1a1a1a1a}.form-input::placeholder{color:var(--color-text-muted)}.form-error{color:var(--color-error);margin-top:.5rem;font-size:.875rem;display:block}.btn{font-size:1rem;font-weight:500;font-family:var(--font-family);cursor:pointer;white-space:nowrap;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:#333}.btn-secondary{background:var(--color-secondary);color:#fff}.btn-outline{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.btn-outline:hover:not(:disabled){background:var(--color-background)}.btn-full{width:100%}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.btn-icon{width:20px;height:20px}.link-btn{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;margin-left:.5rem;padding:0;font-size:.875rem;font-weight:500}.link-btn:hover{text-decoration:underline}.link{color:var(--color-secondary);font-weight:500;text-decoration:none}@media(max-width:640px){.btn{gap:.375rem;padding:.625rem 1rem;font-size:.875rem}.btn-sm{padding:.5rem .75rem;font-size:.813rem}.btn svg{width:16px;height:16px}}.otp-inputs{justify-content:center;gap:.5rem;display:flex}.otp-input{text-align:center;border:2px solid var(--color-border);background:var(--color-surface);border-radius:.5rem;width:44px;height:52px;font-size:1.25rem;font-weight:600}.otp-input:focus{border-color:var(--color-primary);outline:none}.resend-section{text-align:center;color:var(--color-text-secondary);margin-top:1.5rem;font-size:.875rem}.onboarding-container{flex-direction:column;min-height:100vh;padding:1rem 1rem 100px;display:flex}.onboarding-card{background:var(--color-surface);border-radius:1rem;width:100%;max-width:600px;margin:0 auto;padding:1.5rem 1rem}.stepper{justify-content:center;align-items:center;margin-bottom:2rem;padding:0 1rem;display:flex}.stepper-item{flex-direction:column;align-items:center;gap:.5rem;display:flex}.stepper-circle{border:2px solid var(--color-border);width:32px;height:32px;color:var(--color-text-muted);background:var(--color-surface);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.stepper-label{color:var(--color-text-muted);white-space:nowrap;font-size:.75rem}.stepper-item.active .stepper-circle,.stepper-item.completed .stepper-circle{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.stepper-item.active .stepper-label{color:var(--color-text);font-weight:500}.stepper-line{background:var(--color-border);flex:1;height:2px;margin:0 .5rem 1.5rem}.step-content{display:none}.step-content.active{display:block}.step-title{margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.step-subtitle{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.875rem}.step-hint{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.813rem;font-style:italic}.team-size-options{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:1rem;display:grid}.team-size-option{cursor:pointer}.team-size-option input{display:none}.team-size-btn{text-align:center;border:2px solid var(--color-border);border-radius:.5rem;padding:1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:block}.team-size-option input:checked+.team-size-btn{border-color:var(--color-primary);background:#1a1a1a0d}.team-member-card{border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.team-member-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.team-member-number{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.remove-member-btn{color:var(--color-error);cursor:pointer;background:0 0;border:none;padding:.25rem}.team-member-fields .field-row{grid-template-columns:1fr;gap:.75rem;display:grid}.add-member-btn{border:2px dashed var(--color-border);width:100%;color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;display:flex}.add-member-btn:hover{border-color:var(--color-text-muted);color:var(--color-text)}.skip-hint{text-align:center;color:var(--color-text-muted);margin-top:1rem;font-size:.813rem}.step-navigation{border-top:1px solid var(--color-border);gap:.75rem;margin-top:2rem;padding-top:1rem;display:flex}.step-navigation .btn{flex:1}.step-navigation .btn-outline{flex:none;padding-left:1.5rem;padding-right:1.5rem}.page-container{min-height:100vh;padding:1rem 1rem 100px}.page-card{background:var(--color-surface);border-radius:1rem;width:100%;max-width:600px;margin:0 auto;padding:1.5rem 1rem}.page-header{margin-bottom:1.5rem}.page-title{margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.page-subtitle{color:var(--color-text-secondary);font-size:.875rem}.page-hint{color:var(--color-text-muted);margin-top:.25rem;font-size:.813rem;font-style:italic}.frequency-options{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.frequency-option{cursor:pointer}.frequency-option input{display:none}.frequency-btn{border:2px solid var(--color-border);border-radius:.5rem;flex-direction:column;align-items:center;padding:1rem;transition:all .15s;display:flex}.frequency-btn strong{font-size:.875rem}.frequency-btn small{color:var(--color-text-muted);font-size:.75rem}.frequency-option input:checked+.frequency-btn{border-color:var(--color-primary);background:#1a1a1a0d}.date-fields{gap:1rem;margin-top:1rem;display:grid}.info-box{background:var(--color-background);color:var(--color-text-secondary);border-radius:.5rem;margin-top:1.5rem;padding:1rem;font-size:.875rem}.form-actions{margin-top:1.5rem}.select-all-bar{background:var(--color-background);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.checkbox-label{cursor:pointer;align-items:center;gap:.75rem;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.phase-section{margin-bottom:1.5rem}.phase-title{border-bottom:1px solid var(--color-border);margin-bottom:.75rem;padding-bottom:.5rem;font-size:1rem;font-weight:600}.task-item{border:1px solid var(--color-border);border-radius:.5rem;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.task-name{font-size:.875rem}.task-assignments{gap:.25rem;display:flex}.assignment-badge{background:var(--color-background);color:var(--color-text-muted);border-radius:.25rem;padding:.125rem .375rem;font-size:.625rem}.assignment-badge.assigned{background:var(--color-primary);color:#fff}.assignment-badge.responsible.assigned{background:#3b82f6}.assignment-badge.accountable.assigned{background:#8b5cf6}.assignment-badge.consulted.assigned{background:#f59e0b}.bottom-action-bar{background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex;position:fixed;bottom:70px;left:0;right:0;box-shadow:0 -4px 6px -1px #0000001a}.selected-count{font-size:.875rem;font-weight:500}.action-buttons{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.btn-close-bar{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:1.5rem}.fixed-bottom-btn{background:var(--color-surface);border-top:1px solid var(--color-border);z-index:99;padding:1rem;position:fixed;bottom:0;left:0;right:0}.modal-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container{background:var(--color-surface);border-radius:1rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.modal-content{background:var(--color-surface);border-radius:1rem 1rem 0 0;width:100%;max-width:500px;max-height:70vh;padding:1.5rem;overflow-y:auto}.modal-title{font-size:1.125rem;font-weight:600}.team-member-list{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.team-member-btn{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:2rem;padding:.75rem 1rem;font-size:.875rem;transition:all .15s}.team-member-btn:hover{background:var(--color-background);border-color:var(--color-primary)}.loading-overlay{background:var(--color-surface);z-index:300;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-content{text-align:center}.loading-spinner{border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:48px;height:48px;margin:0 auto 1.5rem;animation:1s linear infinite spin}.loading-content h2{margin-bottom:.5rem;font-size:1.25rem}.loading-content p{color:var(--color-text-secondary);font-size:.875rem}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-placeholder{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:1rem;display:flex}.dashboard-placeholder h1{text-align:center;font-size:1.5rem;font-weight:700}.dashboard-placeholder p{color:var(--color-text-secondary);text-align:center}@media(min-width:640px){.auth-card{padding:3rem}.otp-input{width:48px;height:56px}.onboarding-card,.page-card{padding:2rem;box-shadow:0 4px 6px -1px #0000001a}.team-member-fields .field-row{grid-template-columns:1fr 1fr}.step-title,.page-title{font-size:1.5rem}.logo-img{max-width:120px}.date-fields{grid-template-columns:repeat(3,1fr)}.modal-overlay{align-items:center}.modal-content{border-radius:1rem}}@media(min-width:768px){.onboarding-container,.page-container{justify-content:center;align-items:center;padding:2rem}.stepper{padding:0}.stepper-circle{width:36px;height:36px}.stepper-label{font-size:.875rem}.stepper-line{margin:0 1rem 1.5rem}.team-size-options{grid-template-columns:repeat(3,1fr)}.bottom-action-bar{padding:1rem 2rem}.action-buttons{flex-wrap:nowrap}}.dashboard{background:var(--color-background);background:#f3f4f6;min-height:100vh}.dashboard-main{max-width:1440px;margin:0 auto;padding:1rem}.dashboard-header{z-index:50;background:var(--color-surface);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;height:80px;padding:.75rem 1rem;display:flex;position:sticky;top:0}.header-left,.header-right{align-items:center;gap:.5rem;display:flex}.menu-btn,.icon-btn{cursor:pointer;color:var(--color-text);background:0 0;border:none;border-radius:.5rem;padding:.5rem;position:relative}.menu-btn:hover,.icon-btn:hover{background:var(--color-background)}.header-logo{font-size:1.25rem;font-weight:700}.notification-badge{background:var(--color-error);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.625rem;font-weight:600;display:flex;position:absolute;top:2px;right:2px}.notification-dropdown{position:relative}.notification-menu{background:var(--color-surface);border:1px solid var(--color-border);opacity:0;visibility:hidden;z-index:100;border-radius:.75rem;flex-direction:column;width:380px;max-height:500px;transition:all .15s;display:flex;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-10px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.notification-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.notification-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:1rem;display:flex}.notification-title{color:var(--color-text);font-size:1rem;font-weight:600}.mark-all-read-btn{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;border-radius:.375rem;padding:.5rem;transition:all .15s}.mark-all-read-btn:hover{background:var(--color-background);color:var(--color-primary)}.notification-list{flex:1;max-height:420px;overflow-y:auto}.notification-item{border-bottom:1px solid var(--color-border);cursor:pointer;gap:.75rem;padding:1rem;transition:background .15s;display:flex;position:relative}.notification-item:hover{background:var(--color-background)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:#f0f9ff}.notification-item.unread:hover{background:#e0f2fe}.notification-content{flex:1}.notification-item-title{color:var(--color-text);margin-bottom:.25rem;font-size:.875rem;font-weight:600}.notification-item-message{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.813rem;line-height:1.4}.notification-item-time{color:var(--color-text-muted);font-size:.75rem}.notification-unread-dot{background:#3b82f6;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.25rem}.notification-loading,.no-notifications,.notification-error{text-align:center;color:var(--color-text-muted);padding:3rem 2rem}.notification-loading{flex-direction:column;align-items:center;gap:1rem;display:flex}.notification-loading .spinner{margin-bottom:0}.no-notifications{font-size:.875rem}.notification-error{color:var(--color-error);font-size:.875rem}@media(max-width:640px){.notification-menu{width:calc(100vw - 2rem);right:-50px}}.user-dropdown{position:relative}.user-avatar-btn{cursor:pointer;background:0 0;border:none;padding:0}.user-avatar{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.75rem;font-weight:600;display:flex}.dropdown-menu{background:var(--color-surface);border:1px solid var(--color-border);z-index:100;border-radius:.75rem;min-width:200px;display:none;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 10px 40px #0000001f}.dropdown-menu.show{display:block}.dropdown-header{background:#f9fafb;padding:1rem}.dropdown-name{font-size:.875rem;font-weight:600;display:block}.dropdown-role{color:var(--color-text-muted);font-size:.75rem;display:block}.dropdown-divider{background:var(--color-border);height:1px}.dropdown-item{color:var(--color-text);cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;font-size:.875rem;text-decoration:none;transition:background .15s;display:flex}.dropdown-item:hover{background:#f3f4f6}.dropdown-item.logout{color:var(--color-error)}.welcome-section{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.welcome-text h1{margin-bottom:.25rem;font-size:1.25rem;font-weight:600}.welcome-date{font-size:.875rem}@media(max-width:640px){.welcome-section{flex-direction:column;gap:1rem}.welcome-section>div[style*="display: flex"]{flex-wrap:wrap;width:100%}}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}.stat-card{background:var(--color-surface);border-radius:.75rem;align-items:center;gap:.75rem;padding:1rem;display:flex;box-shadow:0 1px 3px #00000014}.stat-icon{border-radius:.625rem;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stat-icon.overdue{color:#dc2626;background:#fee2e2}.stat-icon.today{color:#d97706;background:#fef3c7}.stat-icon.review{color:#7c3aed;background:#e9d5ff}.stat-icon.total,.stat-icon.active{color:#16a34a;background:#dcfce7}.stat-icon.completed{color:#7c3aed;background:#e9d5ff}.stat-icon.progress{color:#d97706;background:#fef3c7}.stat-content{flex-direction:column;display:flex}.stat-value{font-size:1.5rem;font-weight:700;line-height:1}.stat-label{color:var(--color-text-muted);margin-top:.25rem;font-size:.75rem}.filters-bar{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.search-box{flex:1;min-width:180px;max-width:280px;position:relative}@media(max-width:640px){.filters-bar{gap:.5rem}.search-box{min-width:100%;max-width:100%}.filter-buttons{flex-wrap:wrap;width:100%}.filter-select{flex:1;min-width:calc(50% - .25rem)}}.search-box svg{color:var(--color-text-muted);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-box input{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.5rem;width:100%;padding:.5rem .75rem .5rem 2.25rem;font-size:.813rem}.search-box input:focus{border-color:var(--color-primary);outline:none}.filter-buttons{gap:.5rem;display:flex}.filter-select{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:.5rem;padding:.5rem .75rem;font-size:.813rem}.filter-select:focus{border-color:var(--color-primary);outline:none}.accordion-section{background:var(--color-surface);border-radius:.75rem;margin-bottom:1rem;overflow:hidden;box-shadow:0 1px 3px #00000014}.accordion-header{cursor:pointer;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:1rem 1.25rem;transition:background .15s;display:flex}.accordion-header:hover{background:#f9fafb}.accordion-header:not(.collapsed){border-bottom-color:var(--color-border)}.accordion-title{align-items:center;gap:.75rem;display:flex}.accordion-icon{border-radius:.5rem;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.accordion-icon.needs-action{color:#dc2626;background:#fee2e2}.accordion-icon.review{color:#7c3aed;background:#e9d5ff}.accordion-icon.waiting{color:#d97706;background:#fef3c7}.accordion-icon.completed{color:#16a34a;background:#dcfce7}.accordion-title-text{flex-direction:column;display:flex}.accordion-name{font-size:.938rem;font-weight:600}.accordion-count{color:var(--color-text-muted);font-size:.75rem}.accordion-chevron{color:var(--color-text-muted);transition:transform .2s}.accordion-header.collapsed .accordion-chevron{transform:rotate(-90deg)}.accordion-content{max-height:2000px;padding:1rem 1.25rem;transition:all .3s}.accordion-content.collapsed{max-height:0;padding:0 1.25rem;overflow:hidden}.task-cards{grid-template-columns:1fr;gap:.75rem;display:grid}.task-card{cursor:pointer;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.625rem;padding:.6rem;transition:all .15s}.task-card:hover{border-color:var(--color-primary);transform:translateY(-1px)}.task-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:flex}.task-card-title{flex:1;font-size:.875rem;font-weight:600;line-height:1.3}.priority-badge{text-transform:uppercase;white-space:nowrap;border-radius:.2rem;padding:.25rem .5rem;font-size:.625rem;font-weight:600}.priority-badge.high{color:#dc2626;background:#fee2e2}.priority-badge.medium{color:#d97706;background:#fef3c7}.priority-badge.low{color:#16a34a;background:#dcfce7}.priority-badge.completed{color:#059669;background:#d1fae5}.task-card-ref{color:var(--color-text-muted);margin-bottom:.75rem;font-size:.75rem}.task-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.task-card-due,.task-card-submitter,.task-card-completed{color:var(--color-text-secondary);align-items:center;gap:.375rem;font-size:.75rem;display:flex}.task-card-due.overdue{color:var(--color-error);font-weight:600}.task-card-due.today{color:var(--color-warning);font-weight:600}.revision-tag{color:#92400e;background:#fef3c7;border-radius:.25rem;padding:.25rem .5rem;font-size:.625rem;font-weight:600}.waiting-tag{color:var(--color-warning);align-items:center;gap:.375rem;font-size:.75rem;font-weight:500;display:flex}.empty-state{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.empty-state svg{opacity:.4;margin-bottom:.75rem}.empty-state p{font-size:.875rem}.empty-state.small{padding:1.5rem}@media(min-width:640px){.stats-grid{grid-template-columns:repeat(4,1fr)}.task-cards{grid-template-columns:repeat(2,1fr)}.welcome-text h1{font-size:2rem}}@media(min-width:1024px){.dashboard-main{margin:0 auto;padding:1.5rem 0;max-width:1440px!important}.task-cards{grid-template-columns:repeat(3,1fr)}}.sidebar-overlay{z-index:60;opacity:0;visibility:hidden;background:#00000080;transition:all .2s;position:fixed;inset:0}.sidebar-overlay.open{opacity:1;visibility:visible}.sidebar{background:var(--color-surface);z-index:70;flex-direction:column;width:280px;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:2px 0 10px #0000001a}.sidebar.open{transform:translate(0)}@media(min-width:1024px){.sidebar{transform:translate(0)}.sidebar.closed{transform:translate(-100%)}.sidebar-overlay{display:none}.dashboard{margin-left:280px;transition:margin-left .2s}.dashboard.sidebar-closed{margin-left:0}.menu-btn,.header-left .header-logo{display:none}.dashboard.sidebar-closed .menu-btn,.dashboard.sidebar-closed .header-left .header-logo{display:block}}.sidebar-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.close-btn,.sidebar-toggle-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:.5rem;padding:.5rem;transition:all .15s}.close-btn:hover,.sidebar-toggle-btn:hover{background:var(--color-background);color:var(--color-text)}.sidebar-nav{flex:1;padding:1rem .75rem}.nav-item{color:var(--color-text-secondary);border-radius:.5rem;align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.75rem 1rem;font-size:16px;text-decoration:none;transition:all .15s;display:flex}.nav-item:hover{background:var(--color-background);color:var(--color-text)}.nav-item.active{background:var(--color-primary);color:#fff;font-weight:500}.sidebar-user-section{border-top:1px solid var(--color-border);padding:1rem .75rem}.sidebar-user-dropdown{position:relative}.sidebar-user-btn{cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.75rem;width:100%;transition:background .15s;display:flex}.sidebar-user-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.875rem;font-weight:600;display:flex}.sidebar-user-info{text-align:left;flex-direction:column;flex:1;gap:.125rem;display:flex}.sidebar-user-name{color:var(--color-text);font-size:.875rem;font-weight:500;line-height:1.2}.sidebar-user-role{color:var(--color-text-secondary);font-size:.75rem;line-height:1.2}.sidebar-user-dots{color:var(--color-text-muted);flex-shrink:0}.sidebar-user-menu{background:var(--color-surface);border:1px solid var(--color-border);opacity:0;visibility:hidden;border-radius:.5rem;margin-bottom:.5rem;transition:all .15s;position:absolute;bottom:100%;left:.75rem;right:.75rem;overflow:hidden;transform:translateY(.5rem);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.sidebar-user-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.sidebar-user-menu-item{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;text-decoration:none;transition:background .15s;display:flex}.sidebar-user-menu-item:hover{background:var(--color-background)}.sidebar-user-menu-item.logout{color:var(--color-error);border-top:1px solid var(--color-border)}.sidebar-user-menu-item svg{flex-shrink:0}.sidebar-user-menu form{margin:0}.modal-header h2{padding-right:1rem;font-size:1.125rem;font-weight:600;line-height:1.3}.modal-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.25rem}.modal-close:hover{background:var(--color-background);color:var(--color-text)}.task-details{background:#f9fafb;border-radius:.5rem;margin-bottom:1rem;padding:.75rem}.detail-row:last-child{border-bottom:none}.detail-value{text-align:right;font-size:.813rem;font-weight:500}.no-proofs{text-align:center;color:var(--color-text-muted);background:#f9fafb;border-radius:.5rem;padding:1.5rem;font-size:.875rem}.proof-item.approved{border-left-color:var(--color-success);background:#f0fdf4}.proof-item.revision{border-left-color:var(--color-warning);background:#fffbeb}.review-buttons{flex-wrap:wrap;gap:.75rem;display:flex}.review-buttons .btn{flex:1;min-width:0}@media(max-width:640px){.review-buttons{gap:.5rem}.review-buttons .btn{min-width:calc(50% - .25rem)}}.due-dates-preview{background:var(--color-background);border-radius:.5rem;margin-top:1.5rem;padding:1rem}.preview-title{align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.875rem;font-weight:600;display:flex}.preview-hint{color:var(--color-text-muted);margin-bottom:1rem;font-size:.75rem}.due-date-phase{margin-bottom:1rem}.due-date-phase h4{color:var(--color-text-secondary);text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.due-date-item{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.due-date-task{flex:1;font-size:.813rem}.due-date-input{border:1px solid var(--color-border);border-radius:.25rem;width:140px;padding:.375rem .5rem;font-size:.75rem}.owner-card{border:2px solid var(--color-primary);background:#1a1a1a05}.team-divider{color:var(--color-text-muted);align-items:center;gap:1rem;margin:1.5rem 0;font-size:.75rem;display:flex}.team-divider:before,.team-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.task-modal-content{max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;display:flex}.modal-header h2{font-size:1.125rem;font-weight:600}.modal-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none}.modal-body{padding-bottom:1rem}.task-details{margin-bottom:1.5rem}.detail-row{border-bottom:1px solid var(--color-border);justify-content:space-between;padding:.5rem 0;display:flex}.detail-label{color:var(--color-text-secondary);font-size:.813rem}.detail-value{font-size:.813rem;font-weight:500}.section-label{margin-top:1rem;margin-bottom:.75rem;font-size:.875rem;font-weight:600}.proof-history{margin-bottom:1rem}.no-proofs{text-align:center;color:var(--color-text-muted);padding:1rem;font-size:.875rem}.proof-item{border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:.75rem;padding:1rem}.proof-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.proof-status{text-transform:uppercase;border-radius:1rem;padding:.125rem .5rem;font-size:.625rem;font-weight:600}.proof-status.approved{color:#166534;background:#dcfce7}.proof-status.revision{color:#92400e;background:#fef3c7}.proof-status.pending{color:#6b21a8;background:#e9d5ff}.proof-date{color:var(--color-text-muted);font-size:.75rem}.proof-submitter{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.75rem}.proof-notes{margin-bottom:.5rem;font-size:.813rem}.proof-attachments{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.attachment-link{color:var(--color-secondary);border:1px solid var(--color-border);background:#fff;border-radius:.25rem;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;text-decoration:none;display:inline-flex}.attachment-link:hover{background:var(--color-background)}.revision-notes-display{background:#fef3c7;border-radius:.25rem;margin-top:.5rem;padding:.5rem;font-size:.75rem}.proof-reviewer{color:var(--color-text-muted);margin-top:.5rem;font-size:.75rem}.file-upload{position:relative}.file-upload input[type=file]{opacity:0;width:0;height:0;position:absolute}.file-upload-label{border:2px dashed var(--color-border);cursor:pointer;color:var(--color-text-muted);border-radius:.5rem;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;font-size:.875rem;transition:all .15s;display:flex}.file-upload-label:hover{border-color:var(--color-primary);color:var(--color-text)}.file-list{margin-top:.5rem}.file-item{background:var(--color-background);border-radius:.25rem;margin-top:.25rem;padding:.25rem .5rem;font-size:.75rem}.form-textarea{width:100%;font-size:.875rem;font-family:var(--font-family);border:1px solid var(--color-border);resize:vertical;border-radius:.5rem;padding:.75rem}.form-textarea:focus{border-color:var(--color-primary);outline:none}.review-buttons{gap:.75rem;margin-bottom:1rem;display:flex}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:#16a34a}.btn-warning{background:var(--color-warning);color:#fff}.btn-warning:hover:not(:disabled){background:#d97706}.revision-label{color:#92400e;background:#fef3c7;border-radius:.25rem;margin-top:.5rem;padding:.25rem .5rem;font-size:.75rem;display:inline-block}.task-card-meta{color:var(--color-text-secondary);margin-top:.5rem;font-size:.75rem}.section-icon.review{color:#8b5cf6}.priority-badge.review{color:#6b21a8;background:#e9d5ff}.member-role{text-align:center;background:var(--color-primary);color:#fff;border-radius:50%;width:18px;height:18px;margin-left:.25rem;font-size:.625rem;line-height:18px;display:inline-block}.timeline-info{background:var(--color-background);border-radius:.5rem;justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.timeline-date{text-align:center}.date-label{color:var(--color-text-muted);margin-bottom:.25rem;font-size:.75rem;display:block}.date-value{font-size:.875rem;font-weight:600}.timeline-arrow{color:var(--color-text-muted);font-size:1.5rem}.timeline-phase{margin-bottom:1.5rem}.phase-header{border-bottom:2px solid var(--color-primary);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.75rem 0;display:flex}.phase-name{font-size:.875rem;font-weight:600}.phase-count{color:var(--color-text-muted);font-size:.75rem}.phase-tasks{flex-direction:column;gap:.5rem;display:flex}.timeline-task{background:var(--color-surface);border:1px solid var(--color-border);cursor:grab;border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem;transition:all .15s;display:flex}.timeline-task:hover{border-color:var(--color-primary)}.timeline-task.dragging{opacity:.5;transform:scale(1.02)}.timeline-task.drag-over{border-color:var(--color-secondary);border-style:dashed}.drag-handle{color:var(--color-text-muted);cursor:grab;flex-shrink:0}.drag-handle:active{cursor:grabbing}.task-info{flex:1;min-width:0}.task-info .task-name{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;display:block;overflow:hidden}.task-meta{color:var(--color-text-muted);font-size:.75rem}.task-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.priority-dot{border-radius:50%;width:8px;height:8px}.priority-dot.high{background:#ef4444}.priority-dot.medium{background:#f59e0b}.priority-dot.low{background:#22c55e}.task-due-date{border:1px solid var(--color-border);border-radius:.25rem;width:130px;padding:.375rem .5rem;font-size:.75rem}.task-due-date:focus{border-color:var(--color-primary);outline:none}@media(max-width:640px){.timeline-task{flex-wrap:wrap}.task-info{width:calc(100% - 40px)}.task-right{width:100%;margin-top:.5rem;padding-left:24px}.task-due-date{flex:1}.filter-buttons{display:none}.search-box{max-width:100%}.new-workstream{display:none}}.field-hint{color:var(--color-text-muted);margin-top:-.5rem;margin-bottom:.5rem;font-size:.75rem}.required{color:var(--color-error)}.raci-letter{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:.625rem;font-weight:700;display:inline-flex}.raci-letter.r{background:#3b82f6}.raci-letter.a{background:#8b5cf6}.raci-letter.c{background:#f59e0b}.raci-letter.i{background:#6b7280}.raci-section{margin-bottom:1rem}.raci-list{flex-direction:column;gap:.5rem;display:flex}.raci-item{background:#f9fafb;border-radius:.375rem;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.raci-name{flex:1;font-size:.875rem;font-weight:500}.raci-role{color:var(--color-text-muted);font-size:.75rem}.no-raci{color:var(--color-text-muted);text-align:center;padding:.75rem;font-size:.875rem}.proof-timestamp{color:var(--color-text-muted);font-size:.75rem}.proof-attachments{margin-top:.75rem}.attachments-label{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:block}.attachment-item{border:1px solid var(--color-border);background:#fff;border-radius:.375rem;justify-content:space-between;align-items:center;margin-bottom:.375rem;padding:.5rem .75rem;display:flex}.attachment-name{text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:.75rem;font-size:.813rem;overflow:hidden}.view-attachment-btn{flex-shrink:0;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;display:inline-flex}.file-item{background:var(--color-background);border-radius:.375rem;justify-content:space-between;align-items:center;margin-top:.375rem;padding:.5rem .75rem;display:flex}.file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:.5rem;font-size:.813rem;overflow:hidden}.file-remove-btn{cursor:pointer;color:var(--color-error);background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:.25rem;display:flex}.file-remove-btn:hover{background:#fee2e2}.task-card-submitter,.waiting-tag{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.waiting-tag{color:var(--color-warning);font-weight:500}.customer-dashboard{background:#f0f4f8;flex-direction:column;min-height:100vh;display:flex}.customer-header{z-index:50;border-bottom:1px solid var(--color-border);background:#fff;justify-content:space-between;align-items:center;padding:.875rem 1rem;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #0000000d}.customer-header .header-left{align-items:center;gap:.75rem;display:flex}.header-divider{color:var(--color-border)}.header-subtitle{color:var(--color-text-secondary);font-size:.875rem}.customer-main{flex:1;width:100%;max-width:800px;margin:0 auto;padding:1rem}.welcome-banner{color:#fff;background:linear-gradient(135deg,#1e40af,#3b82f6);border-radius:.75rem;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.welcome-icon{background:#fff3;border-radius:.75rem;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.welcome-content{flex:1}.welcome-content h1{margin-bottom:.25rem;font-size:1.125rem;font-weight:600}.welcome-content p{opacity:.9;font-size:.813rem}.welcome-date{opacity:.8;white-space:nowrap;font-size:.75rem}.shipment-card{background:#fff;border-radius:.75rem;margin-bottom:1rem;overflow:hidden;box-shadow:0 1px 3px #00000014}.shipment-header{align-items:center;gap:.875rem;padding:1rem 1.25rem;display:flex}.shipment-icon{color:#4f46e5;background:#e0e7ff;border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.shipment-title{flex:1}.shipment-title h2{margin-bottom:.125rem;font-size:1rem;font-weight:600}.shipment-ref{color:var(--color-text-muted);font-size:.75rem}.expand-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:.375rem;padding:.5rem;transition:all .15s}.expand-btn:hover{background:var(--color-background);color:var(--color-text)}.shipment-card.expanded .expand-btn{transform:rotate(180deg)}.status-banner{background:#eff6ff;border-radius:.5rem;align-items:center;gap:.75rem;margin:0 1rem;padding:.875rem 1.25rem;display:flex}.status-banner.completed{background:#f0fdf4;border-left-color:#22c55e}.status-icon{color:#3b82f6}.status-banner.completed .status-icon{color:#22c55e}.status-content{flex-direction:column;display:flex}.status-label{color:#1e40af;font-size:.875rem;font-weight:600}.status-banner.completed .status-label{color:#166534}.status-description{color:#3b82f6;font-size:.75rem}.status-banner.completed .status-description{color:#22c55e}.progress-stats{border-bottom:1px solid var(--color-border);justify-content:space-around;align-items:center;padding:1rem 1.25rem;display:flex}.stat-item{text-align:center}.stat-number{margin-bottom:.25rem;font-size:1.5rem;font-weight:700;line-height:1;display:block}.stat-number.completed{color:#22c55e}.stat-number.in-progress{color:#3b82f6}.stat-number.upcoming{color:#6b7280}.stat-item .stat-label{color:var(--color-text-muted);font-size:.75rem}.stat-divider{background:var(--color-border);width:1px;height:40px}.progress-bar-section{padding:1rem 1.25rem}.progress-bar-header{color:var(--color-text-secondary);justify-content:space-between;margin-bottom:.5rem;font-size:.75rem;display:flex}.progress-percent{color:#3b82f6;font-weight:600}.progress-bar{background:#e5e7eb;border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#3b82f6,#22c55e);border-radius:4px;height:100%;transition:width .5s}.shipment-details{max-height:0;transition:max-height .3s;overflow:hidden}.shipment-details.expanded{max-height:100%}.milestones-section{border-top:1px solid var(--color-border);padding:1.25rem}.section-header h3{margin-bottom:.25rem;font-size:1rem;font-weight:600}.section-hint{color:var(--color-text-muted);margin-bottom:1.25rem;font-size:.813rem;font-style:italic}.milestones-timeline{position:relative}.milestone-item{gap:1rem;padding-bottom:1.25rem;display:flex}.milestone-item:last-child{padding-bottom:0}.milestone-item:last-child .indicator-line{display:none}.milestone-indicator{flex-direction:column;flex-shrink:0;align-items:center;width:28px;display:flex}.indicator-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.indicator-icon.completed{color:#fff;background:#22c55e}.indicator-icon.in-progress{background:#dbeafe;border:2px solid #3b82f6}.indicator-icon.upcoming{background:#fff;border:2px solid #d1d5db}.pulse-dot{background:#3b82f6;border-radius:50%;width:10px;height:10px;animation:2s infinite pulse}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.empty-dot{background:#d1d5db;border-radius:50%;width:8px;height:8px}.indicator-line{background:#e5e7eb;flex:1;width:2px;min-height:20px;margin-top:.5rem}.milestone-item.completed .indicator-line{background:#22c55e}.milestone-content{flex:1;padding-bottom:.5rem}.milestone-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.25rem;display:flex}.milestone-title{font-size:.938rem;font-weight:600}.milestone-item.completed .milestone-title{color:var(--color-text)}.milestone-item.upcoming .milestone-title{color:var(--color-text-muted)}.milestone-badge{text-transform:uppercase;white-space:nowrap;border-radius:1rem;padding:.25rem .5rem;font-size:.625rem;font-weight:600}.milestone-badge.completed{color:#166534;background:#dcfce7}.milestone-badge.in_progress{color:#1e40af;background:#dbeafe}.milestone-badge.upcoming{color:#6b7280;background:#f3f4f6}.milestone-description{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.813rem}.milestone-meta{flex-wrap:wrap;gap:.75rem;display:flex}.meta-item{color:var(--color-text-muted);align-items:center;gap:.375rem;font-size:.75rem;display:flex}.delivery-section{background:#f0fdf4;border-top:1px solid #dcfce7;align-items:center;gap:.875rem;padding:1rem 1.25rem;display:flex}.delivery-icon{color:#22c55e;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.delivery-content{flex-direction:column;display:flex}.delivery-label{color:#166534;font-size:.75rem}.delivery-date{color:#166534;font-size:.938rem;font-weight:600}.empty-state-card{text-align:center;background:#fff;border-radius:.75rem;padding:3rem 2rem;box-shadow:0 1px 3px #00000014}.empty-icon{color:#d1d5db;margin-bottom:1rem}.empty-state-card h2{margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.empty-state-card p{color:var(--color-text-muted);font-size:.875rem;line-height:1.6}.help-section{background:#fffbeb;border:1px solid #fef3c7;border-radius:.75rem;align-items:flex-start;gap:.875rem;margin-top:1.5rem;padding:1rem 1.25rem;display:flex}.help-icon{color:#d97706;background:#fef3c7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.help-content h4{color:#92400e;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.help-content p{color:#b45309;font-size:.813rem}.customer-footer{text-align:center;border-top:1px solid var(--color-border);background:#fff;padding:1.5rem}.customer-footer p{color:var(--color-text-muted);font-size:.75rem}.customer-footer strong{color:var(--color-text)}@media(max-width:640px){.welcome-banner{flex-wrap:wrap}.welcome-date{text-align:left;width:100%;margin-top:.5rem}.milestone-header{flex-direction:column;gap:.25rem}.milestone-badge{align-self:flex-start}}.back-btn{width:40px;height:40px;color:var(--color-text);border-radius:.5rem;justify-content:center;align-items:center;text-decoration:none;transition:background .15s;display:flex}.back-btn:hover{background:var(--color-background)}.page-header-section{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.page-header-content h1{margin-bottom:.25rem;font-size:1.5rem;font-weight:600}.page-header-content p{color:var(--color-text-secondary);font-size:.875rem}.team-stats{gap:1rem;margin-bottom:1.5rem;display:flex}.team-stat{text-align:center;background:#fff;border-radius:.75rem;flex:1;padding:1rem;box-shadow:0 1px 3px #00000014}.team-stat .stat-number{color:var(--color-primary);font-size:1.5rem;font-weight:700;display:block}.team-stat .stat-label{color:var(--color-text-muted);font-size:.75rem}.team-list{flex-direction:column;gap:.5rem;display:flex}.team-member-row{background:#fff;border-radius:.75rem;align-items:center;gap:1rem;padding:1rem;transition:all .15s;display:flex;box-shadow:0 1px 3px #00000014}.team-member-row:hover{box-shadow:0 4px 12px #0000001a}.member-avatar{color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:.875rem;font-weight:600;display:flex}.member-info{flex:1;min-width:0}.member-name{align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.938rem;font-weight:600;display:flex}.owner-badge{background:var(--color-primary);color:#fff;border-radius:1rem;padding:.125rem .5rem;font-size:.625rem;font-weight:600}.member-meta{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.member-meta .meta-item{color:var(--color-text-secondary);align-items:center;gap:.375rem;font-size:.75rem;display:flex}.member-meta .meta-item.department{color:var(--color-text-muted)}.raci-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.625rem;font-weight:700;display:inline-flex}.raci-badge.responsible{background:#3b82f6}.raci-badge.accountable{background:#8b5cf6}.raci-badge.consulted{background:#f59e0b}.raci-badge.informed{background:#6b7280}.member-status{flex-shrink:0}.status-badge{text-transform:uppercase;border-radius:1rem;padding:.25rem .625rem;font-size:.688rem;font-weight:600}.status-badge.active{color:#166534;background:#dcfce7}.status-badge.pending{color:#92400e;background:#fef3c7}.member-actions{flex-shrink:0;gap:.25rem;display:flex}.action-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:.375rem;padding:.5rem;transition:all .15s}.action-btn:hover{background:var(--color-background);color:var(--color-text)}.action-btn.danger:hover{color:#dc2626;background:#fee2e2}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-hint{color:var(--color-text-muted);margin-top:.25rem;font-size:.75rem}.form-actions{gap:.75rem;margin-top:1.5rem;display:flex}.form-actions .btn{flex:1}.permissions-modal-content{max-width:600px;max-height:85vh}.modal-subtitle{color:var(--color-text-secondary);margin-top:.25rem;font-size:.875rem;font-weight:400}.permissions-info{color:#1e40af;background:#eff6ff;border-radius:.5rem;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.813rem;display:flex}.permissions-body{max-height:50vh;padding-right:.5rem;overflow-y:auto}.permission-workstream{margin-bottom:1.5rem}.permission-workstream:last-child{margin-bottom:0}.workstream-header{border-bottom:2px solid var(--color-primary);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}@media(max-width:640px){.workstream-header{flex-direction:column;align-items:flex-start}}.workstream-info h4{font-size:.938rem;font-weight:600}.workstream-ref{color:var(--color-text-muted);font-size:.75rem}.permission-tasks{flex-direction:column;gap:.5rem;display:flex}.permission-task{background:#f9fafb;border-radius:.5rem;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.permission-task .task-info{flex:1;min-width:0}.permission-task .task-name{font-size:.875rem;font-weight:500;display:block}.permission-task .task-phase{color:var(--color-text-muted);font-size:.75rem}.toggle-switch{flex-shrink:0;width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#d1d5db;border-radius:24px;transition:all .3s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background-color:#22c55e}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.empty-permissions{text-align:center;color:var(--color-text-muted);padding:2rem}.modal-footer{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;padding-top:1rem;display:flex}.modal-footer .btn{flex:1;min-width:0}@media(max-width:640px){.modal-footer{gap:.5rem}.modal-footer .btn{min-width:calc(50% - .25rem)}}.modal-sm{max-width:400px}.modal-body{padding:1rem 0}.modal-body p{margin-bottom:.5rem}.text-muted{color:var(--color-text-muted);font-size:.875rem}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover:not(:disabled){background:#b91c1c}@media(max-width:640px){.page-header-section{flex-direction:column}.page-header-section .btn{width:100%}.team-member-row{flex-wrap:wrap}.member-info{width:calc(100% - 60px)}.member-status{margin-left:auto}.member-actions{border-top:1px solid var(--color-border);justify-content:flex-end;width:100%;margin-top:.5rem;padding-top:.5rem}.form-row{grid-template-columns:1fr}div[style*="display: flex"]:has(.btn){flex-wrap:wrap!important}.welcome-section>div{width:100%}.table-actions{flex-wrap:wrap;gap:.25rem!important}form>div:last-child:has(.btn){flex-wrap:wrap}.breadcrumb{flex-wrap:wrap;gap:.25rem}}.upload-options-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}@media(max-width:640px){.upload-options-grid{grid-template-columns:1fr}}.upload-option-card{cursor:pointer;display:block}.upload-option-card .upload-option-content{text-align:center;background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;padding:1.5rem;transition:all .15s;display:flex}.upload-option-card:hover .upload-option-content{background-color:#fafafa;border-color:#6b7280}.upload-option-card.active .upload-option-content,.upload-option-card input:checked+.upload-option-content{background-color:#f9fafb;border-color:#000}.upload-icon{color:#000;width:48px;height:48px;margin-bottom:.75rem}.upload-option-title{color:#000;margin-bottom:.25rem;font-size:1rem;font-weight:600}.upload-option-desc{color:#6b7280;font-size:.875rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-upload-section{margin-top:1.5rem}.file-upload-area{background:#fff;border:2px dashed #d1d5db;border-radius:.5rem;padding:1.5rem}.file-input-hidden{display:none}.file-upload-label{cursor:pointer;text-align:center;flex-direction:column;align-items:center;display:flex}.file-upload-icon{color:#9ca3af;width:48px;height:48px;margin-bottom:1rem}.file-upload-text{color:#6b7280;font-size:.875rem}.file-upload-cta{color:#000;font-weight:600}.file-upload-cta:hover{color:#374151}.file-upload-hint{color:#9ca3af;margin-top:.25rem;font-size:.75rem}.file-name-display{color:#374151;margin-top:.75rem;font-size:.875rem;font-weight:500}.download-template-link{margin-top:1rem}.template-link{color:#000;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.template-link:hover{color:#374151}.template-link svg{flex-shrink:0}.alert{border:1px solid;border-radius:.75rem;padding:1rem 1.25rem;font-size:.875rem}.alert-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.alert-title{margin-bottom:.25rem;font-size:.875rem;font-weight:600}.alert-message{opacity:.9;margin:0;font-size:.8125rem}.alert-danger{color:#991b1b;background-color:#fef2f2;border-color:#fecaca}.alert-danger .alert-icon{color:#dc2626}.alert-warning{color:#92400e;background-color:#fffbeb;border-color:#fed7aa}.alert-warning .alert-icon{color:#f59e0b}.alert-info{color:#1e40af;background-color:#eff6ff;border-color:#bfdbfe}.alert-info .alert-icon{color:#3b82f6}.alert-success{color:#166534;background-color:#f0fdf4;border-color:#bbf7d0}.alert-success .alert-icon{color:#22c55e}.login-phone{padding-right:0!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}
