@layer legacy{*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}html[dir=rtl]{font-family:var(--font-arabic), var(--font-latin), Tahoma, sans-serif}html[dir=ltr]{font-family:var(--font-latin), var(--font-arabic), Arial, sans-serif}body{background:var(--canvas);color:var(--text);line-height:1.55;font-size:var(--fs-body-sm);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:clip}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:800}[lang=ar] *{letter-spacing:normal!important}:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.mono{font-family:var(--font-mono);letter-spacing:.01em}.login-shell{background:var(--white);grid-template-columns:minmax(0,.95fr) minmax(380px,.62fr);min-height:100svh;display:grid}.login-brand{background:var(--navy-deep);color:var(--white);border-inline-end:1px solid #ffffff14;flex-direction:column;justify-content:center;padding:clamp(2.5rem,6vw,4.5rem);display:flex;position:relative;overflow:hidden}.login-brand__media{z-index:0;position:absolute;inset:0}.login-brand__image{object-fit:cover;object-position:center;filter:saturate(.85)brightness(.75)}.login-brand__overlay{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:radial-gradient(at 85% 15%,#e8762526 0%,#0000 60%),linear-gradient(150deg,#0b132beb 0%,#16234be0 50%,#0b132bf5 100%);position:absolute;inset:0}.login-brand__content{z-index:1;gap:var(--space-5);flex-direction:column;max-width:580px;display:flex;position:relative}.login-brand__content>img{filter:brightness(0)invert();opacity:.96;width:min(240px,60vw);height:auto}.login-brand__eyebrow{font-size:var(--fs-caption);color:var(--orange);letter-spacing:.08em;text-transform:uppercase;align-items:center;margin-bottom:.4rem;font-weight:700;display:inline-flex}.login-brand__copy h1{color:var(--white);margin:0;font-size:clamp(1.65rem,3.2vw,2.5rem);font-weight:800;line-height:1.25}.login-brand__copy p{color:#ffffffc7;margin:.8rem 0 0;font-size:clamp(.9rem,1.2vw,1.02rem);line-height:1.65}.login-brand__sequence{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.login-brand__sequence span{border-radius:var(--radius-sm);color:#fffc;min-height:38px;font-size:var(--fs-label);background:#ffffff0f;border:1px solid #ffffff29;align-items:center;gap:.45rem;padding:0 .75rem;font-weight:700;display:inline-flex}.login-brand__sequence bdi{color:var(--orange-soft);font-family:var(--font-mono)}.login-panel{background:var(--canvas);align-content:center;padding:clamp(1.25rem,5vw,3.5rem);display:grid}.login-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);width:min(100%,420px);box-shadow:var(--shadow-md);margin-inline:auto;padding:clamp(1.5rem,4vw,2.1rem)}.login-card__top{justify-content:space-between;gap:12px;margin-bottom:1.6rem;display:flex}.login-card h2{font-size:var(--fs-title-lg);color:var(--navy);margin:0;font-weight:800}.login-card p{color:var(--muted);font-size:var(--fs-body-sm);margin:.6rem 0 0}.login-form{gap:1rem;margin-top:1.4rem;display:grid}.ui-field{color:var(--navy);font-weight:700;font-size:var(--fs-body-sm);gap:.4rem;display:grid}.ui-field input,.ui-field select,.ui-field textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;min-height:40px;color:var(--text);font-weight:500;font-size:var(--fs-body-sm);padding:.55rem .75rem;transition:border-color .12s}.ui-field input:focus,.ui-field select:focus,.ui-field textarea:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 2px #0c173614}.ui-field input:disabled{background:var(--surface-soft);cursor:not-allowed}.login-submit{cursor:pointer;border:0;width:100%;min-height:44px}.login-disabled-note{border-inline-start:3px solid var(--orange);border-radius:var(--radius-sm);background:var(--orange-wash);color:var(--muted);font-size:var(--fs-body-sm);padding:.75rem}.force-password{background:var(--surface-soft);place-items:center;min-height:100dvh;padding:24px;display:grid}.force-password__card{text-align:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);width:min(100%,440px);box-shadow:var(--shadow-md);justify-items:center;gap:.9rem;padding:clamp(1.5rem,4vw,2.2rem);display:grid}.force-password__card>img{height:auto}.force-password__icon{background:var(--orange-wash);width:44px;height:44px;color:var(--orange);border-radius:50%;place-items:center;display:inline-grid}.force-password__card h1{font-size:var(--fs-title);color:var(--navy);margin:0;font-weight:800}.force-password__lead{color:var(--muted);font-size:var(--fs-body-sm);margin:0;line-height:1.6}.force-password__card form{text-align:start;gap:.9rem;width:100%;display:grid}.force-password__submit{justify-content:center;width:100%;min-height:44px}.force-password__note{color:var(--muted);font-size:var(--fs-caption);margin:0;line-height:1.55}.force-password__logout{color:var(--muted);font-size:var(--fs-label);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px 10px;font-weight:700;display:inline-flex}.force-password__logout:hover{color:var(--navy)}.password-input{display:block;position:relative}.password-input input{padding-inline-end:2.75rem}.form-error,.form-success{border-radius:var(--radius-sm);font-size:var(--fs-body-sm);margin:0;padding:.65rem .8rem;font-weight:600}.form-error{background:var(--danger-wash);color:#a01d1d}.form-success{background:var(--success-wash);color:var(--success)}.app-loading{background:var(--canvas);min-height:100svh;color:var(--navy);place-items:center;font-weight:700;display:grid}.app-sidebar>*{z-index:1;position:relative}.app-logo{align-items:center;min-height:42px;padding-inline:.45rem;display:flex}.app-logo img{filter:brightness(0)invert();opacity:.96;width:134px;height:auto}.app-nav a{border-radius:var(--radius-sm);color:#ffffffad;min-height:38px;font-size:var(--fs-label);border-inline-start:3px solid #0000;flex:none;align-items:center;gap:.6rem;padding:0 .65rem;font-weight:700;transition:background-color .12s,border-color .12s,color .12s;display:flex}.app-nav a svg{opacity:.72;flex:none;width:16px;height:16px}.app-nav a:hover{color:var(--white);background:#ffffff0f}.app-nav a.active{border-inline-start-color:var(--orange);color:var(--white);background:#e8762524}.app-nav a.active svg{opacity:1;color:var(--orange)}.app-user-meta strong{color:var(--white);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.app-user-meta span{color:#ffffff73;font-size:var(--fs-caption)}.app-breadcrumb>span{align-items:center;gap:.4rem;min-width:0;display:inline-flex}.app-actions .lang-link{min-width:68px;color:var(--muted);background:0 0;border-color:#0000}.app-actions .lang-link:hover{border-color:var(--border);background:var(--surface);color:var(--navy)}.impersonation-banner button{border:1px solid var(--orange);border-radius:var(--radius-sm);background:var(--orange);min-height:32px;color:var(--white);font:inherit;font-weight:800;font-size:var(--fs-caption);cursor:pointer;padding:.3rem .7rem}.impersonation-banner button:disabled{cursor:wait;opacity:.7}.page-header h1{color:var(--navy);font-size:var(--fs-title-lg);letter-spacing:-.015em;margin:0;font-weight:800}.page-header p{color:var(--muted);font-size:var(--fs-label);max-width:640px;margin:.35rem 0 0;line-height:1.5}.page-heading{margin-bottom:var(--space-4)}.page-heading--row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.page-heading h1{color:var(--navy);font-size:var(--fs-title);letter-spacing:-.01em;margin:0;font-weight:800}.page-heading p{color:var(--muted);font-size:var(--fs-label);margin:.3rem 0 0}.section-title{justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 0 var(--space-3);display:flex}.section-title h2{color:var(--navy);font-size:var(--fs-body-sm);letter-spacing:-.005em;margin:0;font-weight:800}.section-title .ui-badge{font-weight:700}.panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.panel-pad{padding:var(--space-5)}.ui-badge{border-radius:var(--radius-sm);font-size:var(--fs-caption);white-space:nowrap;border:1px solid #0000;align-items:center;gap:.3rem;padding:.2rem .55rem;font-weight:700;line-height:1.4;display:inline-flex}.ui-badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.ui-badge--neutral{background:var(--surface-soft);border-color:var(--border);color:var(--muted)}.ui-badge--navy{color:var(--navy);background:#0c173612;border-color:#0c17361f}.ui-badge--orange{background:var(--orange-wash);color:#b0500f;border-color:#e8762533}.ui-badge--success{background:var(--success-wash);color:var(--success);border-color:#0d8a582e}.ui-badge--info{background:var(--info-wash);color:var(--info);border-color:#1f69c92e}.ui-badge--danger{background:var(--danger-wash);color:var(--danger);border-color:#dc26262e}.console-surface .form-error{margin:var(--space-3) var(--space-4)}.search-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;max-width:320px;min-height:38px;color:var(--text);font-size:var(--fs-body-sm);padding:.5rem .75rem;transition:border-color .12s}.search-input:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 2px #0c173614}.filter-select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);min-height:38px;color:var(--navy);font-size:var(--fs-label);padding:.45rem .65rem;font-weight:600;transition:border-color .12s}.filter-select:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 2px #0c173614}.data-row>div{gap:.15rem;min-width:0;display:grid}.data-row>div>strong,.data-row>div>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.data-row>div>strong{color:var(--navy);font-weight:700;font-size:var(--fs-body-sm)}.data-row span{color:var(--muted);font-size:var(--fs-caption);overflow-wrap:anywhere}.data-row-action{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.projects-register-page{gap:var(--space-4)}.project-register-search .search-input{background:var(--surface);max-width:none;min-height:38px}.project-register-filters .filter-select{background:var(--surface);min-width:112px;min-height:36px}.project-register-cell>strong,.project-register-cell>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-register-cell>strong{color:var(--navy);font-size:var(--fs-caption);font-weight:700}.project-register-cell--identity>div{gap:.1rem;min-width:0;display:grid}.project-register-cell--identity a{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-register-cell--identity a strong{font-size:var(--fs-label);font-weight:800}.project-register-cell--identity small{color:var(--muted-soft);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-register-cell--location svg,.project-register-cell--date svg{color:var(--muted-soft);flex:none}.project-register-cell--progress>div{align-items:center;gap:.45rem;display:flex}.project-register-cell--progress .progress-track{flex:1;min-width:0;height:5px}.project-register-cell--progress strong{color:var(--navy);font-family:var(--font-mono);font-size:var(--fs-caption);flex:none}.users-summary{margin-bottom:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);box-shadow:var(--shadow-xs);grid-template-columns:repeat(4,minmax(100px,.55fr)) minmax(260px,1.8fr);display:grid;overflow:hidden}.users-summary__metric{min-height:78px;padding:.65rem var(--space-4);border-inline-end:1px solid var(--border);box-shadow:inset 0 3px 0 var(--navy);align-content:center;gap:.15rem;display:grid}.users-summary__metric--active{box-shadow:inset 0 3px #27845b}.users-summary__metric--suspended{box-shadow:inset 0 3px 0 var(--orange)}.users-summary__metric--archived{box-shadow:inset 0 3px #8991a5}.users-summary small,.users-role-distribution small{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.03em;font-weight:700}.users-summary__metric strong{color:var(--navy);font-size:var(--fs-title);font-weight:800}.users-role-distribution{min-width:0;padding:.75rem var(--space-4);align-content:center;gap:.55rem;display:grid}.users-role-distribution>div{flex-wrap:wrap;gap:.35rem;display:flex}.users-role-distribution span{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);min-height:26px;color:var(--navy);font-size:var(--fs-caption);align-items:center;gap:.35rem;padding:.2rem .55rem;display:inline-flex}.users-role-distribution strong{color:var(--orange)}.users-toolbar{align-items:stretch}.users-toolbar .search-input{flex:320px;max-width:none}.users-toolbar .filter-select{min-width:150px}.users-table{overflow:visible}.user-actions__menu a,.user-actions__menu button{border-radius:var(--radius-sm);width:100%;min-height:38px;color:var(--text);font:inherit;font-size:var(--fs-label);text-align:start;cursor:pointer;background:0 0;border:0;align-items:center;gap:.55rem;padding:.4rem .6rem;display:flex}.user-actions__menu a:hover,.user-actions__menu button:hover{background:var(--surface-soft);color:var(--navy)}.user-actions__menu .danger{color:#a43a36}.account-form-note{align-self:center;max-width:48ch}.account-dialog{gap:var(--space-3);border-radius:var(--radius-md);background:var(--white);width:min(520px,100%);max-height:calc(100dvh - 32px);padding:var(--space-5);box-shadow:var(--shadow-xl);display:grid;position:relative;overflow-y:auto}.account-dialog__close{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;inset-block-start:.75rem;inset-inline-end:.75rem}.account-dialog__icon{border-radius:var(--radius-sm);background:var(--orange-wash);width:42px;height:42px;color:var(--orange);place-items:center;display:grid}.account-dialog h2{color:var(--navy);font-size:var(--fs-title-sm);margin:0;font-weight:800}.account-dialog>p{color:var(--muted);margin:0;line-height:1.65}.deletion-impact{border-radius:var(--radius-sm);padding:var(--space-3);color:var(--text);font-size:var(--fs-label);background:#fff8f0;border:1px solid #e8762540}.deletion-impact ul{columns:2;margin:.55rem 0;padding-inline-start:1.2rem}.deletion-impact span{color:#8d4c15;font-weight:700}.account-dialog__actions{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);display:flex}.account-dialog__danger{color:var(--white);background:#a43a36;border:1px solid #a43a36}.account-dialog__danger:disabled{opacity:.55}.mini-project-row{align-items:center;gap:var(--space-4);padding:.7rem var(--space-4);border-top:1px solid var(--border-soft);color:var(--text);transition:background-color .1s;display:flex}.mini-project-row:first-child{border-top:0}.mini-project-row:hover{background:var(--surface-soft)}.mini-project-row__id{flex:none;gap:.1rem;width:190px;min-width:0;display:grid}.mini-project-row__id strong{color:var(--navy);font-weight:700;font-size:var(--fs-body-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mini-project-row__id span{color:var(--muted-soft);font-size:var(--fs-caption)}.mini-project-row__phase{width:150px;color:var(--muted);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;flex:none;font-weight:600;overflow:hidden}.mini-project-row__progress{flex:auto;align-items:center;gap:.6rem;min-width:90px;display:flex}.mini-project-row__progress .progress-track{flex:1}.mini-project-row__progress strong{width:34px;color:var(--navy);font-size:var(--fs-caption);flex:none;font-weight:700}.mini-project-row__action{flex:none}.empty-state strong{color:var(--navy);font-size:var(--fs-body);font-weight:800}.empty-state span{max-width:360px;font-size:var(--fs-label)}.loading-state{padding:var(--space-8) var(--space-5);color:var(--muted);font-size:var(--fs-body-sm);justify-content:center;align-items:center;gap:.6rem;font-weight:600;display:flex}.loading-state__spinner{border:2px solid var(--border-strong);border-top-color:var(--orange);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.check-field input{width:17px;height:17px;accent-color:var(--orange)}.full-span{grid-column:1/-1}.form-actions{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.lifecycle-pipeline{margin-top:var(--space-1);padding-top:42px;position:relative}.lifecycle-pipeline__summary{inset-inline:0;justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--muted);font-size:var(--fs-caption);font-weight:700;display:flex;position:absolute;top:0}.lifecycle-pipeline__summary strong{color:var(--orange);font-family:var(--font-mono);font-size:var(--fs-body-sm)}.lifecycle-pipeline__track{top:56px;background:var(--border);z-index:1;height:2px;position:absolute;inset-inline:8.33333%}.lifecycle{z-index:2;gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:relative}.lifecycle-step{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);min-height:130px;box-shadow:var(--shadow-xs);flex-direction:column;gap:.25rem;padding:.75rem .7rem;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s;display:flex;position:relative}.lifecycle-step__indicator{align-items:center;margin-bottom:.25rem;display:flex}.lifecycle-step__node{border:2px solid var(--border);background:var(--white);border-radius:50%;width:12px;height:12px}.lifecycle-step__meta{justify-content:space-between;align-items:baseline;gap:.25rem;margin-bottom:.15rem;display:flex}.lifecycle-step__index{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--muted-soft);font-weight:800}.lifecycle-step__state-tag{font-size:var(--fs-caption);text-transform:uppercase;color:var(--muted-soft);font-weight:700}.lifecycle-step__label{font-size:var(--fs-caption);color:var(--muted);font-weight:700;line-height:1.25}.lifecycle-step--done{background:#0c173608;border-color:#0c173629}.lifecycle-step--done .lifecycle-step__node{border-color:var(--navy);background:var(--navy)}.lifecycle-step--done .lifecycle-step__index,.lifecycle-step--done .lifecycle-step__label,.lifecycle-step--done .lifecycle-step__state-tag{color:var(--navy)}.lifecycle-step--current{border-color:var(--orange);background:var(--white);box-shadow:0 0 0 1px var(--orange), 0 8px 24px #e8762524}.lifecycle-step--current .lifecycle-step__node{border-color:var(--orange);background:var(--orange);box-shadow:0 0 0 3px #e8762533}.lifecycle-step--current .lifecycle-step__index{color:var(--orange)}.lifecycle-step--current .lifecycle-step__label{color:var(--navy)}.lifecycle-step--current .lifecycle-step__state-tag{color:var(--orange)}.lifecycle-step--upcoming{color:var(--muted-soft)}.lifecycle-strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem;display:grid}.lifecycle-strip span{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:40px;color:var(--muted);text-align:center;font-weight:700;font-size:var(--fs-caption);background:var(--card);place-items:center;padding:.4rem;display:grid}.lifecycle-strip .done{color:var(--navy);background:#0c17360a;border-color:#0c173633}.lifecycle-strip .current{border-color:var(--orange);background:var(--orange);color:var(--white)}.progress-track{border-radius:var(--radius-pill);background:var(--border);height:6px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--orange);height:100%;transition:width .3s;display:block}.progress-track--orange span{background:var(--orange)}.progress-track--success span{background:var(--success)}.progress-track--navy span{background:var(--navy)}.overview-header{border-radius:var(--radius-md);background:radial-gradient(ellipse at 90% 10%, #e876251f 0%, transparent 50%), linear-gradient(155deg, var(--navy-soft) 0%, var(--navy-deep) 100%);color:var(--white);padding:var(--space-6);margin-bottom:var(--space-4);box-shadow:var(--shadow-md);border:1px solid #ffffff14;position:relative;overflow:hidden}.overview-header:after{content:"";inset-inline-end:-60px;background:radial-gradient(circle,#e8762524,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-60px}.overview-header__top{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex;position:relative}.overview-header__code{color:var(--orange-soft);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:.04em;margin-bottom:.5rem;font-weight:700;display:inline-block}.overview-header h1{color:var(--white);font-size:var(--fs-display);margin:0}.overview-header__tags{flex-wrap:wrap;gap:.4rem;margin-top:.7rem;display:flex}.overview-header__progress{text-align:end;gap:.35rem;min-width:160px;display:grid;position:relative}.overview-header__progress strong{font-size:var(--fs-display);line-height:1}.overview-header__progress span{color:#ffffff9e;font-size:var(--fs-caption);letter-spacing:.03em;text-transform:uppercase;font-weight:700}.overview-header__progress .progress-track{background:#ffffff2e;width:160px}.overview-modules{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.overview-module{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);padding:var(--space-4);box-shadow:var(--shadow-xs);gap:.3rem;display:grid}.overview-module__label{color:var(--muted);font-size:var(--fs-caption);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.4rem;font-weight:700;display:flex}.overview-module strong{color:var(--navy);font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-module span{color:var(--muted-soft);font-size:var(--fs-caption)}.project-overview-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.updates-panel{gap:var(--space-3);margin-top:var(--space-5);display:grid}.update-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);padding:var(--space-4);box-shadow:var(--shadow-xs);gap:.55rem;display:grid}.update-card__head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.update-card__author{align-items:center;gap:.55rem;display:flex}.update-card__avatar{border-radius:var(--radius-pill);width:30px;height:30px;color:var(--navy);font-weight:800;font-size:var(--fs-caption);background:#16234b14;flex:none;place-items:center;display:inline-grid}.update-card__author strong{color:var(--navy);font-size:var(--fs-body-sm);display:block}.update-card__author span{color:var(--muted-soft);font-size:var(--fs-caption);display:block}.update-card time{color:var(--muted-soft);font-size:var(--fs-caption);white-space:nowrap;font-weight:600}.update-card p{color:var(--text);font-size:var(--fs-body-sm);margin:0;line-height:1.55}.update-card span,.muted-line{color:var(--muted)}.activity-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);gap:0;display:grid;overflow:hidden}.activity-row{padding:.7rem var(--space-4);border-top:1px solid var(--border);font-size:var(--fs-body-sm);align-items:center;gap:.7rem;display:flex}.activity-row:first-child{border-top:0}.activity-row__dot{background:var(--orange);border-radius:50%;flex:none;width:6px;height:6px}.activity-row__body{flex:1;gap:.1rem;min-width:0;display:grid}.activity-row__body strong{color:var(--navy);font-size:var(--fs-body-sm);font-weight:700}.activity-row__body span{color:var(--muted-soft);font-size:var(--fs-caption)}.activity-row time{color:var(--muted-soft);font-size:var(--fs-caption);white-space:nowrap}.preview-grid,.media-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.preview-grid span{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas);font-size:var(--fs-label);overflow-wrap:anywhere;padding:.55rem}.media-grid figure{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--canvas);margin:0;overflow:hidden}.media-grid img,.media-grid video{aspect-ratio:4/3;object-fit:cover;background:var(--canvas);width:100%;display:block}.upload-form{margin-top:var(--space-4)}.upload-form input[type=file]{border:2px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--canvas);width:100%;min-height:64px;color:var(--muted);cursor:pointer;font-size:var(--fs-body-sm);align-items:center;padding:.85rem;display:flex}.upload-form input[type=file]::file-selector-button{border-radius:var(--radius-md);background:var(--navy);min-height:42px;color:var(--white);cursor:pointer;border:0;margin-inline-end:.8rem;padding:.65rem 1.1rem;font-weight:700}.upload-form button[type=submit]{min-height:54px;font-size:var(--fs-body-lg)}.worker-shell{max-width:620px;margin-inline:auto}.worker-project-card{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:var(--space-4);box-shadow:var(--shadow-sm);display:flex}.worker-project-card strong{color:var(--navy);font-size:var(--fs-body-lg);display:block}.worker-project-card span{color:var(--muted);font-size:var(--fs-label);margin-top:.15rem;display:block}@media (max-width:1180px){.overview-modules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.login-shell{grid-template-columns:1fr}.app-logo img{width:118px}.overview-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.project-row{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:.6rem}.users-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.users-role-distribution{border-top:1px solid var(--border);grid-column:1/-1}.login-brand{min-height:220px;padding:clamp(1.5rem,5vw,3rem)}}@media (max-width:640px){.page-heading--row{flex-direction:column;align-items:stretch}.login-brand{min-height:auto;padding:var(--space-4) var(--space-4) var(--space-3)}.login-brand h1,.login-brand p{display:none}.login-brand img{width:min(180px,52vw);margin-bottom:0}.login-panel{padding:var(--space-4)}.app-logo img{width:100px}.overview-header__top{gap:var(--space-3);flex-direction:column}.overview-header__progress{text-align:start}.overview-header__progress .progress-track{width:100%}.overview-modules,.project-overview-grid,.lifecycle,.lifecycle-strip,.preview-grid,.media-grid,.project-row{grid-template-columns:1fr}.mini-project-row{flex-wrap:wrap;gap:.5rem}.mini-project-row__id,.mini-project-row__phase{width:auto}.mini-project-row__progress{order:3;width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.full-width{width:100%}.project-workspace-page{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.project-command-header h1{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em;margin:0;font-size:clamp(1.35rem,2.45vw,2rem);font-weight:800;line-height:1.2;overflow:hidden}.project-command-header__phase-chip svg{color:var(--orange)}.project-command-header__phase-chip small{font-size:var(--fs-caption);opacity:.85}.project-command-header__phase-chip strong{font-size:var(--fs-caption);color:var(--white)}.project-command-header__progress-meta span{color:#ffffffa6;font-size:var(--fs-caption);font-weight:700}.project-command-header__progress-meta strong{font-size:var(--fs-display);font-weight:800;font-family:var(--font-mono);color:var(--orange);line-height:1}.project-command-header__facts>span{min-height:62px;padding:.7rem var(--space-4);border-inline-end:1px solid #ffffff12;align-items:center;gap:.45rem;min-width:0;display:flex;position:relative}.project-command-header__facts>span:last-child{border-inline-end:none}.project-command-header__facts svg{color:var(--orange);flex-shrink:0;width:20px;height:20px}.project-command-header__facts small{color:#ffffff80;font-size:var(--fs-caption);white-space:nowrap}.project-command-header__facts strong{color:#ffffffeb;font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-command-header__details-toggle svg{transition:transform .15s}.project-command-header__details[open] .project-command-header__details-toggle svg{transform:rotate(180deg)}.project-workspace-bar{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:.2rem var(--space-2);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:center;display:flex}.project-workspace-nav a{border-radius:var(--radius-sm);min-height:34px;color:var(--muted);font-size:var(--fs-caption);align-items:center;gap:.4rem;padding:.4rem .7rem;font-weight:700;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s;display:inline-flex;position:relative}.project-workspace-nav a:hover{background:var(--surface-soft);color:var(--navy)}.project-workspace-nav a.active{color:var(--navy);box-shadow:inset 0 -2px var(--orange);background:#0c17360f}.project-overview-v2{gap:var(--space-5);display:grid}.workspace-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace-panel__title svg{color:var(--orange)}.workspace-panel__title h2,.workspace-panel__title h3{font-size:var(--fs-body-sm);font-weight:800}.detail-list{margin:0;display:grid}.detail-list>div{gap:var(--space-3);border-top:1px solid var(--border);grid-template-columns:minmax(110px,.35fr) minmax(0,1fr);padding-block:.7rem;display:grid}.detail-list>div:first-child{border-top:0}.detail-list dt{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.detail-list dd{min-width:0;color:var(--text);font-size:var(--fs-label);overflow-wrap:anywhere;margin:0;font-weight:650}.detail-list.compact>div{grid-template-columns:minmax(94px,.42fr) minmax(0,1fr);padding-block:.55rem}.team-strip{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.team-strip span{border-inline-start:3px solid var(--orange);gap:.2rem;padding-inline-start:var(--space-3);display:grid}.team-strip small{color:var(--muted);font-size:var(--fs-caption)}.team-strip strong{font-size:var(--fs-label)}.section-title--with-lead{margin-bottom:0}.section-title--with-lead p{color:var(--muted);font-size:var(--fs-label);margin:.2rem 0 0}.site-upload-panel{margin:0}.design-hub-heading h2,.design-detail-heading h2{color:var(--navy);font-size:var(--fs-title)}.design-hub-heading p{max-width:680px;color:var(--muted);font-size:var(--fs-label);margin:.25rem 0 0}.section-kicker{color:var(--orange);font-size:var(--fs-caption);letter-spacing:.07em;margin-bottom:.2rem;font-weight:800;display:block}.design-kpi-strip>span{min-height:64px;padding:.6rem var(--space-4);border-inline-end:1px solid var(--border);align-content:center;gap:.15rem;display:grid}.design-kpi-strip>span:last-of-type{border-inline-end:0}.design-kpi-strip>span.attention{background:var(--orange-wash)}.design-kpi-strip small{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.03em;font-weight:700}.design-kpi-strip strong{color:var(--navy);font-size:var(--fs-title);font-weight:800}.design-kpi-strip p{border-top:1px solid var(--border);padding:var(--space-3) var(--space-4);color:var(--muted);font-size:var(--fs-caption);grid-column:1/-1;align-items:center;margin:0;display:flex}.design-toolbar{gap:var(--space-2);grid-template-columns:minmax(260px,1fr) 190px 190px;display:grid}.design-search,.design-filter{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);min-width:0;height:40px;color:var(--muted);align-items:center;gap:.45rem;padding-inline:.75rem;display:flex}.design-search:focus-within,.design-filter:focus-within{border-color:var(--navy);box-shadow:0 0 0 2px #0c17360f}.design-search input,.design-filter select{width:100%;min-width:0;font-size:var(--fs-label);background:0 0;border:0;outline:0}.design-register__identity strong{color:var(--navy);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.design-register__identity bdi,.design-register__row>span,.design-register__row time{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.design-register--loading span{background:linear-gradient(90deg,#fff 25%,#f4f6fa 50%,#fff 75%) 0 0/200% 100%;height:64px;animation:1.2s linear infinite design-skeleton;display:block}@keyframes design-skeleton{to{background-position:-200% 0}}.design-dialog>header{z-index:2;justify-content:space-between;align-items:center;gap:var(--space-4);background:var(--navy-deep);padding:var(--space-4) var(--space-5);color:var(--white);border-bottom:1px solid #ffffff1a;display:flex;position:sticky;top:0}.design-dialog>header span{color:var(--orange-soft);font-size:var(--fs-caption);letter-spacing:.06em;font-weight:800;display:block}.design-dialog>header h2{font-size:var(--fs-body-lg)}.design-dialog form{gap:var(--space-4);padding:var(--space-5);display:grid}.design-dialog fieldset{gap:var(--space-3);border:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;display:grid}.design-dialog legend{border-bottom:1px solid var(--border);width:100%;color:var(--navy);font-size:var(--fs-caption);grid-column:1/-1;margin-bottom:.1rem;padding-bottom:.45rem;font-weight:800}.upload-dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-soft);min-height:132px;color:var(--navy);text-align:center;cursor:pointer;align-content:center;place-items:center;gap:.25rem;display:grid}.upload-dropzone:hover{border-color:var(--orange);background:var(--orange-wash)}.upload-dropzone svg{color:var(--orange)}.upload-dropzone strong{font-size:var(--fs-label)}.upload-dropzone span{color:var(--muted);font-size:var(--fs-caption)}.selected-file{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:0;padding:.65rem var(--space-3);font-size:var(--fs-caption);background:#f7f9fc;display:flex}.selected-file>span{min-width:0;display:grid}.selected-file bdi{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-file small{color:var(--muted)}.selected-file button{color:var(--danger);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.design-dialog footer{justify-content:flex-end;gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-4);display:flex}.field-hint{margin:0 0 var(--space-3);color:var(--muted-soft);font-size:var(--fs-caption)}.upload-progress{color:var(--muted);font-size:var(--fs-caption);gap:.35rem;display:grid}.upload-progress>div{border-radius:var(--radius-pill);background:#e7ebf2;height:6px;overflow:hidden}.upload-progress i{background:var(--orange);height:100%;display:block}.next-revision>span>bdi{border:1px solid var(--navy);border-radius:var(--radius-sm);background:var(--navy);color:var(--white);font-family:var(--font-mono);padding:.35rem .65rem;font-weight:800}.design-detail-heading>div:first-child>div{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--fs-caption);margin-top:.4rem;display:flex}.design-kpi-strip__filter small{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.03em;font-weight:700}.design-kpi-strip__filter strong{color:var(--navy);font-size:var(--fs-title);font-weight:800}.design-next-action small{text-transform:uppercase;letter-spacing:.03em;font-weight:700;font-size:var(--fs-caption)}.design-history-banner>span{align-items:center;gap:.45rem;display:inline-flex}.design-rejection-banner strong{color:var(--danger);font-size:var(--fs-label)}.design-rejection-banner p{color:var(--ink,var(--navy));font-size:var(--fs-body-sm);margin:.3rem 0}.design-rejection-banner small{color:var(--muted);font-size:var(--fs-caption)}.design-revision-note small{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.03em;font-weight:700}.design-revision-note bdi{font-size:var(--fs-label);line-height:1.5}.next-revision{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.next-revision small,.next-revision>span{color:var(--muted);font-size:var(--fs-caption)}.file-preview--image img{object-fit:contain;max-height:68vh}.file-preview--pdf iframe{background:var(--white);border:0;width:100%;height:min(68vh,700px);display:block}.file-preview--pdf p{border-top:1px solid var(--border);background:var(--white);color:var(--muted);font-size:var(--fs-caption);text-align:center;margin:0;padding:.5rem}.file-meta{gap:var(--space-3);margin:var(--space-3) 0 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.file-meta>div{gap:.12rem;min-width:0;display:grid}.file-meta dt{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.file-meta dd{font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.approval-panel>div:first-child{gap:var(--space-3);display:flex}.approval-panel h3{color:var(--navy);font-size:var(--fs-body)}.approval-panel p{color:var(--muted);font-size:var(--fs-caption);margin:.2rem 0 0}.approval-confirm>div{gap:var(--space-2);justify-content:flex-end;display:flex}.comment-form textarea{resize:vertical;border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-height:76px;padding:.65rem}.revision-list>button{border:1px solid var(--border);border-radius:var(--radius-sm);text-align:start;cursor:pointer;background:#fafbfd;grid-template-columns:1fr auto;gap:.2rem .5rem;width:100%;padding:.65rem;display:grid}.revision-list>button.active{border-color:var(--navy);box-shadow:inset 3px 0 var(--orange)}html[dir=rtl] .revision-list>button.active{box-shadow:inset -3px 0 var(--orange)}.revision-list>button>span{align-items:center;gap:.4rem;display:flex}.revision-list>button small{color:var(--orange);font-size:var(--fs-caption);font-weight:800}.revision-list time,.revision-list>button>bdi{color:var(--muted);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-timeline article{padding-bottom:var(--space-4);grid-template-columns:16px minmax(0,1fr);gap:.55rem;display:grid;position:relative}.activity-timeline article:before{content:"";inset-inline-start:7px;background:var(--border-strong);width:1px;position:absolute;top:11px;bottom:-1px}.activity-timeline article:last-child:before{display:none}.activity-timeline i{z-index:1;border:2px solid var(--white);background:var(--orange);width:9px;height:9px;box-shadow:0 0 0 1px var(--orange);border-radius:50%;margin-top:4px}.activity-timeline article>div{gap:.15rem;display:grid}.activity-timeline strong{color:var(--navy);font-size:var(--fs-caption)}.activity-timeline span,.activity-timeline time{color:var(--muted);font-size:var(--fs-caption)}.activity-timeline p{border-inline-start:2px solid var(--border-strong);color:var(--text);font-size:var(--fs-caption);background:#f7f9fc;margin:.25rem 0 0;padding:.4rem .55rem}.inline-confirm strong{font-size:var(--fs-caption)}.inline-confirm>div{gap:var(--space-2);display:flex}.discipline-chip span{font-family:inherit;font-size:var(--fs-caption);opacity:.9;font-weight:600}.design-register__meta-cell strong{font-size:var(--fs-caption);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.design-register__meta-cell time{font-size:var(--fs-caption);color:var(--muted-soft)}.drawing-titleblock{border:2px solid var(--navy);border-radius:var(--radius-sm);background:var(--white);margin-bottom:var(--space-4);box-shadow:var(--shadow-xs);overflow:hidden}.drawing-titleblock__main{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg, var(--navy) 0%, var(--navy-deep) 100%);color:var(--white);border-bottom:1px solid #ffffff1a;display:flex}.drawing-titleblock__doc-info{flex-direction:column;gap:.2rem;min-width:0;display:flex}.drawing-titleblock__meta-strip{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.drawing-titleblock__grid{background:var(--surface-soft);border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.drawing-titleblock__cell{border-inline-end:1px solid var(--border);flex-direction:column;gap:.15rem;padding:.5rem .75rem;display:flex}.drawing-titleblock__cell:last-child{border-inline-end:none}.drawing-titleblock__cell small{font-size:var(--fs-caption);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.drawing-titleblock__cell strong{font-size:var(--fs-caption);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-form--elevated>.form-error,.admin-form--elevated>.form-success{margin:var(--space-4) var(--space-5) 0}.required-star{color:#d93025;margin-inline-start:.2rem;font-weight:800}.project-workspace-nav a:active{transform:scale(.985)}.project-workspace-nav a:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.project-row:hover{background-color:#f7f9fd}@media (max-width:1180px){.design-register__head span:nth-child(6),.design-register__row>span:nth-child(6){display:none}}@media (max-width:980px){.project-command-header__facts>span:nth-child(2){border-inline-end:0}.project-command-header__facts>span:nth-child(-n+2){border-bottom:1px solid #ffffff14}.design-detail-sidebar>section:last-child{grid-column:1/-1}.design-register__row>span,.design-register__row time{white-space:normal;gap:.18rem;display:grid;overflow:visible}.design-register__row>span:before,.design-register__row time:before{content:attr(data-label);color:var(--muted-soft);font-size:var(--fs-caption);font-weight:700}}@media (max-width:700px){.impersonation-banner button{min-height:44px}.users-toolbar{grid-template-columns:minmax(0,1fr);display:grid}.users-toolbar .filter-select{width:100%;min-height:44px}.users-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.users-summary__metric:nth-child(2){border-inline-end:0}.users-role-distribution{grid-column:1/-1}.users-table .data-row>div{align-items:center;min-width:0;display:flex}.users-table .data-row>div:before{content:none}.users-table .data-row>div:first-child{border-bottom:1px solid var(--border-soft);grid-column:1/-1;padding-bottom:.5rem}.users-table .data-row>div:nth-child(4){color:var(--muted);font-size:var(--fs-caption)}.users-table .data-row>div:nth-child(4) .mono{font-size:var(--fs-caption)}.account-dialog{padding:var(--space-4)}.deletion-impact ul{columns:1}.account-dialog__actions{flex-direction:column-reverse}.data-table--clients .data-row>div{grid-template-columns:100px minmax(0,1fr);align-items:center;display:grid}.data-table--clients .data-row>div:before{content:attr(data-label);color:var(--muted);font-size:var(--fs-caption);font-weight:700}.data-table--clients .data-row .ui-badge{justify-self:start}.admin-command-strip>div strong{font-size:var(--fs-title-sm)}.project-command-header h1{white-space:normal}.project-workspace-bar{flex-direction:column;align-items:stretch}.project-workspace-nav a{white-space:nowrap;flex:none}.workspace-grid,.team-strip,.file-meta{grid-template-columns:minmax(0,1fr)}.design-detail-sidebar>section:last-child{grid-column:auto}.design-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.design-search{grid-column:1/-1}.drawing-titleblock__main{flex-direction:column;align-items:flex-start}.drawing-titleblock__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drawing-titleblock__cell:nth-child(2){border-inline-end:none}.drawing-titleblock__cell:nth-child(-n+2){border-bottom:1px solid var(--border)}}@media (max-width:480px){.project-command-header__facts>span{min-height:66px;padding:.55rem .65rem}.project-command-header__facts>span:nth-child(2n){border-inline-end:0}.project-command-header__facts>span:nth-last-child(-n+2){border-bottom:0}.project-workspace-nav a{min-height:42px;padding-inline:.65rem}.design-kpi-strip>span{min-height:62px;padding-inline:.55rem}.design-kpi-strip small{line-height:1.25}.design-toolbar{grid-template-columns:minmax(0,1fr)}.design-search{grid-column:auto}.drawing-titleblock__grid{grid-template-columns:minmax(0,1fr)}.drawing-titleblock__cell{border-inline-end:none;border-bottom:1px solid var(--border)}.drawing-titleblock__cell:last-child{border-bottom:none}.design-dialog form,.design-dialog>header{padding:var(--space-4)}.design-dialog fieldset{grid-template-columns:minmax(0,1fr)}.design-dialog .full-span,.design-dialog legend{grid-column:auto}.design-dialog footer,.approval-confirm>div{flex-direction:column;grid-template-columns:minmax(0,1fr)}.file-preview--pdf iframe{height:52vh}}.client-info-strip{border-radius:var(--radius-sm);font-size:var(--fs-label);color:var(--navy);background:#0c17360a;border:1px solid #0c17361a;align-items:center;gap:8px;padding:8px 14px;display:flex}.worker-upload-card{background:var(--surface);border:2px solid var(--orange);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex;box-shadow:0 4px 14px #e876251a}.worker-upload-card__header h3{font-size:var(--fs-title-sm);color:var(--navy);margin:0;font-weight:800}.worker-upload-card__header p{font-size:var(--fs-label);color:var(--muted);margin:2px 0 0}.worker-upload-card__form{gap:var(--space-3);flex-direction:column;display:flex}.worker-field-label{font-size:var(--fs-caption);color:var(--navy);margin-bottom:6px;font-weight:700;display:block}.worker-pills-row{flex-wrap:wrap;gap:6px;display:flex}.worker-pill{border:1px solid var(--border);background:var(--canvas);font-size:var(--fs-label);color:var(--muted);cursor:pointer;border-radius:9999px;padding:6px 12px;font-weight:600;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s}.worker-pill:hover{border-color:var(--navy);color:var(--navy)}.worker-pill.active{background:var(--navy);color:var(--white);border-color:var(--navy)}.worker-textarea{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-family:inherit;font-size:var(--fs-body-sm);resize:vertical;padding:8px 12px}.worker-file-drop{border:2px dashed var(--border);border-radius:var(--radius-md);background:var(--canvas);cursor:pointer;text-align:center;font-size:var(--fs-label);color:var(--navy);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:16px;font-weight:600;transition:border-color .15s;display:flex}.worker-file-drop:hover{border-color:var(--orange)}.worker-file-drop input{display:none}.worker-files-preview{margin-top:6px}.worker-files-preview small{font-size:var(--fs-caption);color:var(--muted);margin-bottom:4px;font-weight:700;display:block}.preview-chips{flex-wrap:wrap;gap:4px;display:flex}.file-chip{border-radius:var(--radius-xs);font-size:var(--fs-caption);color:var(--navy);background:#16234b14;padding:2px 6px}.worker-submit-btn{min-height:48px;font-size:var(--fs-body);cursor:pointer;justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.site-media-thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform .2s}.site-media-thumbnail.clickable:hover img{transform:scale(1.05)}.site-media-thumbnail video{object-fit:contain;width:100%;height:100%}.gallery-item-preview img,.gallery-item-preview video{object-fit:cover;width:100%;height:100%}.gallery-item-meta strong{font-size:var(--fs-caption);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-modal-header h3{font-size:var(--fs-body-lg);color:var(--navy);margin:0;font-weight:800}.progress-slider-field{align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--canvas);border-radius:var(--radius-md);border:1px solid var(--border);flex-direction:column;display:flex}.big-percent{font-size:var(--fs-display);color:var(--navy);font-weight:800}.site-progress-slider{width:100%;accent-color:var(--orange);cursor:pointer}.phase-select-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.phase-radio-card{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:var(--canvas);flex-direction:column;gap:4px;padding:10px;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s;display:flex}.phase-radio-card input{display:none}.phase-radio-card.selected{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#16234b14}.phase-step{font-size:var(--fs-caption);color:var(--muted);font-weight:700}.phase-name{font-size:var(--fs-label);color:var(--navy)}.ui-field-checkbox label{font-size:var(--fs-label);color:var(--navy);cursor:pointer;align-items:center;gap:8px;font-weight:600;display:inline-flex}.lightbox-overlay{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a1020f0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-container{flex-direction:column;justify-content:space-between;width:100vw;height:100dvh;display:flex}.lightbox-header{color:#fff;background:#0006;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.lightbox-meta{align-items:center;gap:12px;display:flex}.lightbox-title{font-size:var(--fs-body-sm);font-weight:600}.lightbox-counter{font-size:var(--fs-label);color:#fff9;border-radius:var(--radius-xs);background:#ffffff1a;padding:2px 8px}.lightbox-close-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:6px;transition:background .15s;display:flex}.lightbox-close-btn:hover{background:#fff3}.lightbox-stage{flex:1;justify-content:space-between;align-items:center;padding:0 16px;display:flex;position:relative;overflow:hidden}.lightbox-image-wrap{flex:1;justify-content:center;align-items:center;height:100%;padding:16px;display:flex}.lightbox-image-wrap img{object-fit:contain;border-radius:var(--radius-sm);max-width:100%;max-height:calc(100dvh - 140px);box-shadow:0 8px 32px #00000080}.lightbox-nav-btn{color:#fff;cursor:pointer;z-index:10;background:#00000080;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s;display:flex}.lightbox-nav-btn:hover{border-color:var(--orange);background:#e87625cc}.lightbox-caption-bar{color:#fff;background:#00000080;padding:14px 24px}.caption-text p{font-size:var(--fs-body-sm);margin:0 0 4px}.caption-sub{font-size:var(--fs-caption);color:#fff9;align-items:center;gap:12px;display:flex}@media (max-width:768px){.phase-select-grid{grid-template-columns:minmax(0,1fr)}}.finance-subtabs button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--muted);font-size:var(--fs-caption);cursor:pointer;padding:.35rem .75rem;font-weight:700;transition:color .12s,background-color .12s,border-color .12s,box-shadow .12s,transform .12s,opacity .12s}.finance-subtabs button:hover{border-color:var(--border-strong);color:var(--navy)}.finance-subtabs button.active{border-color:var(--navy);background:var(--navy);color:var(--white)}.finance-panel-heading h2{font-size:var(--fs-body-lg);color:var(--navy);margin:0;font-weight:800}.finance-panel-heading p{color:var(--muted);font-size:var(--fs-caption);margin:.1rem 0 0}.finance-totals-strip span{color:var(--muted);align-items:baseline;gap:.35rem;display:flex}.finance-totals-strip strong{color:var(--navy);font-family:var(--font-mono)}.finance-register__identity strong{color:var(--navy);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-register--loading span{background:linear-gradient(90deg, #fff 25%, var(--surface-soft) 50%, #fff 75%);background-size:200% 100%;height:54px;animation:1.2s linear infinite design-skeleton;display:block}.finance-history-row strong{color:var(--navy);display:block}.finance-history-row__action small,.finance-history-row__actor small{color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-caption);display:block}.finance-history-row__actor strong{font-size:var(--fs-caption);font-weight:600}.finance-history-row time{color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-caption);white-space:nowrap}.finance-version-banner__id>div{gap:.1rem;min-width:0;display:grid}.finance-version-banner__id strong{color:var(--navy);font-size:var(--fs-body-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-version-banner__id small{color:var(--muted);font-size:var(--fs-caption)}.finance-version-banner__total small{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.finance-version-banner__total strong{color:var(--navy);font-size:var(--fs-body)}.finance-version-ledger .section-kicker{margin-bottom:.1rem}.finance-version-ledger__row strong{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.finance-version-ledger__row>span.mono{color:var(--navy)}.finance-version-ledger__row time{color:var(--muted);font-size:var(--fs-caption);white-space:nowrap}.notification-bell{position:relative}.notification-bell__trigger{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);width:34px;min-width:34px;height:34px;min-height:34px;color:var(--navy);cursor:pointer;place-items:center;transition:border-color .15s,background .15s;display:inline-grid;position:relative}.notification-bell__trigger:hover{border-color:var(--border-strong);background:var(--surface-soft)}.notification-bell__badge{border-radius:var(--radius-pill);background:var(--orange);min-width:18px;height:18px;color:var(--white);font-size:var(--fs-caption);place-items:center;padding-inline:4px;font-weight:800;line-height:1;display:inline-grid;position:absolute;inset-block-start:-6px;inset-inline-end:-6px}.notification-panel{inset-inline-end:0;z-index:60;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);width:min(360px,88vw);max-height:70vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;top:calc(100% + 10px);overflow:hidden}.notification-panel__header{justify-content:space-between;align-items:center;gap:var(--space-2);border-bottom:1px solid var(--border);padding:var(--space-3) var(--space-4);display:flex}.notification-panel__header strong{color:var(--navy);font-size:var(--fs-body-sm)}.notification-panel__mark-all{color:var(--info);cursor:pointer;font-size:var(--fs-caption);background:0 0;border:none;align-items:center;gap:.3rem;font-weight:700;display:inline-flex}.notification-panel__list{max-height:52vh;overflow-y:auto}.notification-panel__empty{padding:var(--space-6) var(--space-4);color:var(--muted);font-size:var(--fs-label);text-align:center}.notification-panel__item{border:none;border-bottom:1px solid var(--border);cursor:pointer;width:100%;padding:var(--space-3) var(--space-4);text-align:start;background:0 0;flex-direction:column;gap:2px;transition:background .12s;display:flex}.notification-panel__item:hover{background:var(--surface-soft)}.notification-panel__item--unread{background:var(--orange-wash)}.notification-panel__item-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.notification-panel__item-type{color:var(--muted);font-size:var(--fs-caption);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:.35rem;font-weight:800;display:inline-flex}.notification-unread-dot{background:var(--orange);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.notification-panel__item-time{color:var(--muted-soft);font-size:var(--fs-caption);flex:none}.notification-panel__item-title{color:var(--text);font-size:var(--fs-label);font-weight:600}.notification-panel__item-project{color:var(--muted);font-size:var(--fs-caption)}.notification-destination{border:1px solid var(--border-soft);background:var(--surface-soft);width:fit-content;max-width:100%;color:var(--navy);text-overflow:ellipsis;white-space:nowrap;border-radius:3px;align-items:center;padding:.12rem .35rem;display:inline-flex;overflow:hidden}.notification-panel__footer{border-top:1px solid var(--border);background:var(--surface-soft);padding:var(--space-3) var(--space-4);color:var(--navy);font-size:var(--fs-caption);text-align:center;font-weight:700;display:block}.notifications-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.notifications-back-link{color:var(--muted);font-size:var(--fs-caption);margin-inline-start:auto;font-weight:700;text-decoration:none}.notifications-back-link:hover{color:var(--orange)}.notifications-filter{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);gap:.3rem;padding:3px;display:inline-flex}.notifications-filter button{border-radius:var(--radius-sm);cursor:pointer;color:var(--muted);font-size:var(--fs-caption);background:0 0;border:none;padding:.35rem .85rem;font-weight:700}.notifications-filter button.active{background:var(--navy);color:var(--white)}.notifications-list{gap:var(--space-2);flex-direction:column;display:flex}.notifications-row{align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);cursor:pointer;padding:var(--space-3) var(--space-4);text-align:start;grid-template-columns:minmax(120px,.9fr) 2fr auto auto;transition:background-color .1s;display:grid}.notifications-row:hover{background:var(--surface-soft)}.notifications-row--unread{border-color:var(--orange-soft);border-inline-start:3px solid var(--orange);background:var(--orange-wash)}.notifications-row__type{color:var(--muted);font-size:var(--fs-caption);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:.35rem;font-weight:800;display:inline-flex}.notifications-row__content{flex-direction:column;gap:1px;min-width:0;display:flex}.notifications-row__title{min-width:0;color:var(--text);font-size:var(--fs-body-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.notifications-row__body{min-width:0;color:var(--muted);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notifications-row__project{color:var(--muted);font-size:var(--fs-caption)}.notifications-row__time{color:var(--muted-soft);font-size:var(--fs-caption);white-space:nowrap;flex:none}@media (max-width:700px){.notifications-row{grid-template-columns:1fr;gap:4px}}.chat-shell{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-xs);flex-direction:column;display:flex;overflow:hidden}.chat-message-list{gap:var(--space-2);padding:var(--space-5);background:var(--surface-soft);flex-direction:column;flex:auto;display:flex;position:relative;overflow-y:auto}.chat-load-older{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--white);cursor:pointer;margin-bottom:var(--space-3);color:var(--muted);font-size:var(--fs-caption);align-self:center;align-items:center;gap:.35rem;padding:.35rem .9rem;font-weight:700;display:inline-flex}.chat-load-older:disabled{cursor:not-allowed;opacity:.6}.chat-date-separator{border-radius:var(--radius-pill);background:var(--white);border:1px solid var(--border);margin-block:var(--space-2);color:var(--muted);font-size:var(--fs-caption);align-self:center;padding:.2rem .75rem;font-weight:700}.chat-bubble-row{justify-content:flex-start;display:flex}.chat-bubble-row--own{justify-content:flex-end}.chat-bubble{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);width:fit-content;max-width:min(560px,84%);box-shadow:var(--shadow-xs);padding:.55rem .75rem}.chat-bubble--own{background:#0c17360d;border-color:#0c173629}.chat-bubble__meta{align-items:baseline;gap:.45rem;margin-bottom:.15rem;display:flex}.chat-bubble__meta strong{color:var(--navy);font-size:var(--fs-caption)}.chat-bubble__role{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;font-weight:700}.chat-bubble__time{color:var(--muted-soft);font-size:var(--fs-caption);margin-inline-start:auto}.chat-bubble__text{overflow-wrap:anywhere;color:var(--text);font-size:var(--fs-label);white-space:pre-wrap;line-height:1.5}.chat-new-indicator{z-index:5;border-radius:var(--radius-pill);background:var(--navy);cursor:pointer;color:var(--white);font-size:var(--fs-caption);box-shadow:var(--shadow-md);border:none;align-items:center;gap:.35rem;padding:.4rem 1rem;font-weight:700;display:inline-flex;position:absolute;bottom:118px;left:50%;transform:translate(-50%)}.chat-new-indicator__count{border-radius:var(--radius-pill);background:var(--orange);min-width:18px;height:18px;font-size:var(--fs-caption);place-items:center;padding-inline:4px;font-weight:800;line-height:1;display:inline-grid}.chat-unread-divider{align-self:stretch;align-items:center;gap:var(--space-3);margin-block:var(--space-2);color:var(--orange);font-size:var(--fs-caption);letter-spacing:.04em;text-transform:uppercase;font-weight:800;display:flex}.chat-unread-divider:before,.chat-unread-divider:after{content:"";background:color-mix(in srgb, var(--orange) 40%, transparent);flex:auto;height:1px}.chat-composer{border-top:1px solid var(--border);background:var(--white);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));flex:none}.chat-composer__error{margin-bottom:var(--space-2)}.chat-composer__row{align-items:flex-end;gap:var(--space-2);display:flex}.chat-composer__input{resize:none;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);min-height:40px;max-height:120px;color:var(--text);font-family:inherit;font-size:var(--fs-label);flex:auto;padding:.5rem .75rem;transition:border-color .12s}.chat-composer__input:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 2px #0c17360f}.chat-composer__mic{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);width:40px;height:40px;color:var(--navy);cursor:pointer;flex:none;place-items:center;transition:color .12s,background-color .12s,border-color .12s,box-shadow .12s,transform .12s,opacity .12s;display:inline-grid}.chat-composer__mic:hover{border-color:var(--orange);color:var(--orange)}.chat-composer__mic:disabled{cursor:not-allowed;opacity:.6}.chat-composer__send{flex:none}.chat-recorder{align-items:center;gap:var(--space-3);display:flex}.chat-recorder--preview{flex-wrap:wrap}.chat-recorder__dot{background:var(--danger);border-radius:50%;flex:none;width:9px;height:9px;animation:1.1s ease-in-out infinite chat-recorder-pulse}@keyframes chat-recorder-pulse{0%,to{opacity:1}50%{opacity:.35}}.chat-recorder__preview-audio{flex:220px;min-width:200px;height:36px}.voice-message{align-items:center;gap:.6rem;min-width:220px;display:flex}.voice-message__toggle{background:var(--navy);width:32px;height:32px;color:var(--white);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;display:inline-grid}.voice-message__track{border-radius:var(--radius-pill);background:var(--border-strong);cursor:pointer;flex:auto;height:5px;position:relative}.voice-message__track:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.voice-message__spinner{border:2px solid #ffffff59;border-top-color:var(--white);border-radius:50%;width:13px;height:13px;animation:.8s linear infinite voice-spin}@keyframes voice-spin{to{transform:rotate(360deg)}}.voice-message__toggle:disabled{cursor:not-allowed;opacity:.55}.voice-message__track-fill{border-radius:var(--radius-pill);background:var(--orange);position:absolute;inset-block:0;inset-inline-start:0}.voice-message__duration{color:var(--muted);font-size:var(--fs-caption);flex:none}@media (max-width:640px){.chat-bubble{max-width:92%}.chat-message-list{padding:var(--space-3)}.chat-composer{padding:var(--space-2) var(--space-3)}.notification-panel{inset-inline:var(--space-3);width:auto;max-height:min(70vh,70dvh);position:fixed;inset-block-start:var(--bell-panel-top,76px)}.notification-bell__trigger{width:44px;height:44px}.chat-composer__mic,.chat-composer__send{min-width:44px;min-height:44px}.voice-message__toggle{width:40px;height:40px}}.global-search-field{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--muted);align-items:center;gap:.5rem;transition:border-color .12s;display:flex}.global-search-field:focus-within{border-color:var(--navy);box-shadow:0 0 0 2px #0c17360f}.app-global-search input,.global-search-field input{width:100%;min-width:0;font-size:var(--fs-label);background:0 0;border:0;outline:0}.global-search-field{width:min(100%,760px);min-height:44px;padding:.55rem .8rem}.search-page-field{margin-bottom:0}.reports-toolbar .global-search-field{flex:auto;max-width:520px}.report-identity-card,.report-section{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);min-width:0;box-shadow:var(--shadow-xs)}.report-identity-card__title,.report-progress{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.report-project-card__head>div,.report-identity-card__title>div{gap:.2rem;min-width:0;display:grid}.report-project-card__head strong,.report-identity-card__title strong{overflow-wrap:anywhere;color:var(--navy)}.report-identity-card{gap:var(--space-4);padding:var(--space-5);display:grid}.report-identity-card__title strong{font-size:var(--fs-title-sm)}.report-progress .ui-progress,.report-progress .progress-track{flex:auto}.report-facts{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.report-facts div{background:var(--surface-soft);min-width:0;padding:.65rem .8rem}.report-facts dt,.report-summary-card span{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.03em;font-weight:700}.report-facts dd{overflow-wrap:anywhere;color:var(--navy);margin:.2rem 0 0;font-weight:700}.project-report-page{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.report-section{padding:0;overflow:hidden}.report-section__head{align-items:center;gap:var(--space-3);padding:.7rem var(--space-5);border-bottom:1px solid var(--border);background:var(--surface-soft);display:flex}.report-section__index{border:1px solid var(--border-strong,var(--border));border-radius:var(--radius-sm);background:var(--white);width:26px;height:26px;color:var(--orange);font-size:var(--fs-caption);flex:none;place-items:center;font-weight:800;display:inline-grid}.report-section__head h2{color:var(--navy);font-size:var(--fs-body);letter-spacing:.01em;margin:0;font-weight:800}.report-section__body{gap:var(--space-4);padding:var(--space-4) var(--space-5) var(--space-5);display:grid}.report-summary-card strong{overflow-wrap:anywhere;color:var(--navy)}.report-list{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--border);gap:1px;display:grid;overflow:hidden}.report-list article{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--white);padding:.75rem;display:flex}.report-list article>div{align-items:center;gap:var(--space-2);min-width:0;display:flex}.report-list article span{color:var(--muted);font-size:var(--fs-caption);flex:none}.report-table th,.report-table td{border-bottom:1px solid var(--border);text-align:start;overflow-wrap:anywhere;padding:.7rem}.report-table th{background:var(--navy);color:var(--white);font-size:var(--fs-caption)}.search-console{gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--navy-soft);border-radius:var(--radius-sm);background:linear-gradient(#ffffff09 1px, transparent 1px), linear-gradient(90deg, #ffffff09 1px, transparent 1px), linear-gradient(155deg, var(--navy-soft) 0%, var(--navy-deep) 100%);background-size:22px 22px,22px 22px,auto;display:grid}.search-console .global-search-field{background:var(--white);width:100%;max-width:none;min-height:48px}.search-scope{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.search-scope__label{color:#ffffff8c;font-family:var(--font-mono,monospace);font-size:var(--fs-caption);letter-spacing:.09em;text-transform:uppercase;flex:none;font-weight:600}.search-scope__tiles{flex-wrap:wrap;gap:.45rem;display:flex}.search-scope__tile{border-radius:var(--radius-sm);color:#ffffffd1;font-size:var(--fs-caption);background:#ffffff0f;border:1px solid #ffffff2e;align-items:center;gap:.4rem;padding:.32rem .7rem;font-weight:600;display:inline-flex}.search-scope__tile svg{color:var(--orange)}.search-groups{gap:var(--space-4);display:grid}.search-group{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:0;box-shadow:var(--shadow-xs);display:grid;overflow:hidden}.search-group__head{align-items:center;gap:var(--space-2);padding:.6rem var(--space-4);border-bottom:1px solid var(--border-soft);background:var(--surface-soft,#f6f8fb);display:flex}.search-group__head svg{color:var(--orange)}.search-group__head h2{color:var(--navy);font-size:var(--fs-label);margin:0;font-weight:700}.search-group__head .mono{color:var(--muted);font-size:var(--fs-caption);margin-inline-start:auto}.search-group .search-results{padding:0 var(--space-2);gap:0}.search-group .search-result{border:0;border-bottom:1px solid var(--border-soft);padding:.6rem var(--space-2);background:0 0;border-radius:0}.search-group .search-result:last-child{border-bottom:0}.search-group .search-result:hover{background:var(--surface-soft,#f6f8fb)}.search-result__type{border:1px solid var(--border);background:var(--white);width:fit-content;color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;border-radius:3px;margin-inline-end:.45rem;padding:.08rem .35rem;font-weight:800;display:inline-flex}.search-result__go{color:var(--muted);font-size:var(--fs-body-sm);flex:none;transition:color .12s,transform .12s}.search-result:hover .search-result__go{color:var(--orange)}.search-page-empty{margin-block:var(--space-4)}.search-results{gap:var(--space-2);min-width:0;display:grid}.search-result{align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);min-width:0;color:var(--navy);padding:.7rem;text-decoration:none;transition:border-color .15s,background-color .15s;display:flex}.search-result:hover{background:var(--surface-soft);border-color:var(--orange)}.search-result__icon{border-radius:var(--radius-sm);background:var(--surface-soft);border:1px solid var(--border);flex:none;place-items:center;width:36px;height:36px;display:grid}.search-result__body{flex:auto;gap:.3rem;min-width:0;display:grid}.search-result__body>span{align-items:center;gap:var(--space-2);display:flex}.search-result__body strong,.search-result__body bdi{overflow-wrap:anywhere}.search-result__body bdi{color:var(--muted);font-size:var(--fs-caption)}@media (max-width:700px){.reports-toolbar .global-search-field{max-width:none}.report-facts{grid-template-columns:minmax(0,1fr)}.report-identity-card,.report-section{padding:var(--space-4)}.report-list article,.report-list article>div{flex-direction:column;align-items:flex-start}.report-list article span{flex:auto}}.login-brand{position:relative;overflow:hidden}.login-card__heading{margin-bottom:var(--space-4);flex-direction:column;gap:.4rem;display:flex}.login-card__tag{font-size:var(--fs-caption);letter-spacing:.16em;text-transform:uppercase;color:var(--orange);font-weight:700;display:inline-block}.dashboard-section-heading>div{gap:.18rem;min-width:0;display:grid}.dashboard-section-heading h2{color:var(--navy);font-size:var(--fs-body-lg);line-height:1.35}.dashboard-section-heading p{color:var(--muted);font-size:var(--fs-caption);margin:.1rem 0 0}.dashboard-project-row__identity>div{gap:.12rem;display:grid}.dashboard-project-row__identity strong,.dashboard-project-row__client strong{color:var(--navy);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.dashboard-project-row__identity span,.dashboard-project-row__identity small,.dashboard-project-row__phase>span,.dashboard-project-row__client>span{color:var(--muted-soft);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-project-row__identity small{color:var(--muted);font-size:var(--fs-caption)}.dashboard-project-row__phase .ui-badge{justify-self:start}.dashboard-project-row__phase>span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}@media (min-width:701px){.dashboard-project-row__progress>div>span,.dashboard-project-row__client>span{display:none}.dashboard-project-row__progress>div{justify-content:flex-end}}.dashboard-project-row__progress>div{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--fs-caption);display:flex}.dashboard-project-row__progress strong{color:var(--navy);font-size:var(--fs-caption)}.dashboard-project-row__progress .progress-track{height:5px}.dashboard-project-row__client strong{font-size:var(--fs-caption)}.dashboard-activity-row__marker i{z-index:1;border:2px solid var(--surface);background:var(--orange);width:7px;height:7px;box-shadow:0 0 0 1px var(--orange);border-radius:50%;position:relative}.dashboard-activity-row__body strong{color:var(--navy);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-activity-row__body span{color:var(--muted);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-activity-row__body em,.dashboard-update-card em{color:var(--orange);font-style:normal}.dashboard-activity-row time,.dashboard-update-card time{color:var(--muted-soft);font-size:var(--fs-caption);white-space:nowrap}.dashboard-update-card__head strong{color:var(--navy);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-update-card p{color:var(--text-soft);font-size:var(--fs-caption);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.overview-lifecycle-section{margin-bottom:var(--space-5)}.section-title--compact{margin-bottom:var(--space-3)}.section-title--compact h2{font-size:var(--fs-body-lg);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.data-table--projects .project-row__progress-cell{align-items:center;gap:.5rem;display:flex}.data-table--projects .project-row__progress-cell strong{color:var(--navy);font-size:var(--fs-label);flex:none}.admin-command-strip>div{gap:.12rem;min-width:0;display:grid}.admin-command-strip .section-kicker{font-family:var(--font-mono,"Rubik", monospace);font-size:var(--fs-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--orange);align-items:center;gap:.45rem;font-weight:600;display:inline-flex}.admin-command-strip .section-kicker:before{content:"";background:var(--orange);flex:none;width:14px;height:2px}.admin-command-strip>div strong{font-size:var(--fs-title);color:var(--navy);letter-spacing:-.01em;font-weight:800;line-height:1.2}.admin-command-strip__meta span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.admin-command-strip__meta strong{color:var(--navy);font-family:var(--font-mono,monospace);font-size:var(--fs-title);font-weight:800;line-height:1.1}.users-kpi-strip{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.users-role-strip>small{color:var(--navy);font-size:var(--fs-caption);letter-spacing:.06em;text-transform:uppercase;flex:none;font-weight:800}.users-role-chip strong{color:var(--navy);font-family:var(--font-mono);font-size:var(--fs-label)}.chat-context-bar{padding:.45rem var(--space-4);background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0;border-bottom:none;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.chat-context-bar__info{align-items:baseline;gap:.6rem;min-width:0;display:flex}.chat-context-bar__info .section-kicker{font-family:var(--font-mono,"Rubik", monospace);font-size:var(--fs-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--accent,#e87625);flex:none;margin-bottom:0;font-weight:600}.chat-context-bar__info>strong{font-size:var(--fs-body-sm);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.chat-context-bar__tag{font-size:var(--fs-caption);letter-spacing:.14em;text-transform:uppercase;color:var(--orange);flex:none;font-weight:700}.chat-context-bar__tag .mono{letter-spacing:.04em;color:var(--muted)}.chat-shell .chat-message-list{border-radius:0 0 var(--radius-sm) var(--radius-sm)}@media (max-width:1180px){.users-kpi-strip{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.users-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.chat-context-bar{flex-direction:column;align-items:flex-start;gap:.3rem}}[lang=ar] .hero-eyebrow,[lang=ar] .hero-scope__head,[lang=ar] .login-card__tag,[lang=ar] .chat-context-bar__tag,[lang=ar] .section-title--compact h2{letter-spacing:normal!important}.dashboard-command-intro__eyebrow .mono{color:#ffffff7a}.dashboard-command-intro__copy h1{color:var(--white);font-size:clamp(1.35rem,2.2vw,1.75rem);line-height:1.2}.dashboard-command-intro__copy p{color:#ffffffa6;font-size:var(--fs-caption);margin:.12rem 0 0}.dashboard-command-intro__meta strong{color:var(--white);font-size:var(--fs-body-sm);margin-top:.35rem}.dashboard-command-intro__system i{background:#56c48d;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #56c48d21}.dashboard-quick-grid a{border:1px solid var(--border-soft);border-radius:var(--radius-xs);background:var(--surface-soft);min-height:48px;color:var(--text-soft);font-size:var(--fs-caption);align-items:center;gap:.55rem;padding:.6rem;transition:border-color .12s,background-color .12s,color .12s;display:flex}.dashboard-quick-grid a:hover{border-color:var(--orange-soft);background:var(--orange-wash);color:var(--navy)}.dashboard-quick-grid svg{color:var(--orange);flex:none}.dashboard-phase-list>div{align-items:center;gap:var(--space-2);color:var(--text-soft);font-size:var(--fs-caption);grid-template-columns:minmax(106px,1fr) minmax(70px,1fr) 22px;display:grid}.dashboard-phase-list i{background:var(--canvas-tint);height:5px;overflow:hidden}.dashboard-phase-list b{background:var(--orange);height:100%;display:block}.dashboard-phase-list strong{color:var(--navy);text-align:end}.finance-portfolio-heading h2{font-size:var(--fs-title)}.finance-portfolio-heading>span{color:var(--muted);font-family:var(--font-mono)}.finance-portfolio-grid>a{gap:var(--space-3);min-height:250px;padding:var(--space-5);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);display:grid;position:relative;overflow:hidden}.finance-portfolio-grid>a:after{content:"";background:var(--orange);width:3px;position:absolute;inset-block:0;inset-inline-start:0}.finance-portfolio-grid>a:hover{border-color:var(--navy-soft);box-shadow:var(--shadow-md)}.finance-portfolio-grid>a>span,.finance-portfolio-card__phase span{color:var(--muted);font-size:var(--fs-label)}.finance-portfolio-grid h3{font-size:var(--fs-title-sm)}.finance-portfolio-grid>a>b{color:var(--navy);font-size:var(--fs-label);align-self:end}@media (max-width:700px){.dashboard-activity-row time{grid-column:2}}@media (max-width:480px){.dashboard-command-intro__copy h1{font-size:var(--fs-title)}.dashboard-project-row__identity small{max-width:24ch}}.project-register-surface .loading-state{min-height:160px}.project-command-header--v5 h1{max-width:24ch;color:var(--white);font-size:clamp(1.5rem,2.8vw,2.2rem)}.project-command-header--v5 .project-command-header__phase-chip>div{gap:.05rem;display:grid}.project-command-header--v5 .project-command-header__phase-chip small{color:#ffffff8c}.project-command-header--v5 .project-command-header__progress-meta strong{color:var(--orange-soft);font-size:var(--fs-display)}.project-command-facts>span{min-width:0;min-height:66px;padding:.65rem var(--space-3);border-inline-end:1px solid var(--border-soft);grid-template-columns:auto minmax(0,1fr);align-content:center;gap:.12rem .45rem;display:grid}.project-command-facts>span:last-child{border-inline-end:0}.project-command-facts svg{color:var(--orange);grid-row:1/3;align-self:center}.project-command-facts small{color:var(--muted);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.project-command-facts strong{color:var(--navy);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-workspace-bar{gap:var(--space-3);min-width:0;min-height:48px;padding:.25rem var(--space-3);border-radius:var(--radius-sm)}.project-workspace-bar__label{color:var(--muted-soft);font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:.06em;text-transform:uppercase;flex:none;font-weight:700}.project-workspace-nav a{border-radius:var(--radius-xs);white-space:nowrap;min-height:38px;padding-inline:.7rem}.project-workspace-nav a.active{background:var(--navy);color:var(--white);box-shadow:none}.project-workspace-nav a.active svg{color:var(--orange-soft)}.overview-section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-3);display:flex}.overview-section-heading>div{gap:.18rem;display:grid}.overview-section-heading h2{color:var(--navy);font-size:var(--fs-body-lg)}.overview-section-heading p,.workspace-panel__title p{color:var(--muted);font-size:var(--fs-caption);margin:0}.overview-section-heading .ui-badge{flex:none}.overview-lifecycle-section{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-xs)}.workspace-grid--overview{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-panel__title>div{gap:.12rem;display:grid}.workspace-panel__title h2{font-size:var(--fs-body-sm)}.workspace-panel--brief .detail-list dd{font-weight:650}.project-overview-empty{padding-block:var(--space-5)}.project-overview-activity-list{border-top:1px solid var(--border-soft);gap:0;display:grid}.project-overview-activity{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-soft);grid-template-columns:26px minmax(0,1fr) auto;min-width:0;padding:.7rem 0;display:grid}.project-overview-activity:last-child{border-bottom:0}.project-overview-activity__marker{border:1px solid var(--orange-soft);border-radius:var(--radius-xs);width:25px;height:25px;color:var(--orange);place-items:center;display:inline-grid}.project-overview-activity>div{gap:.12rem;min-width:0;display:grid}.project-overview-activity strong{color:var(--navy);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-overview-activity p{color:var(--text-soft);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.project-overview-activity small{color:var(--muted-soft);font-size:var(--fs-caption)}.overview-modules-section{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);box-shadow:var(--shadow-xs)}.overview-module-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.overview-module-card{gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:grid}.overview-module-card:hover{border-color:var(--orange-soft);box-shadow:var(--shadow-xs)}.overview-module-card:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.overview-module-card__head{align-items:center;gap:var(--space-2);min-width:0;display:flex}.overview-module-card__icon{border:1px solid var(--orange-soft);border-radius:var(--radius-xs);width:28px;height:28px;color:var(--orange);flex:none;place-items:center;display:inline-grid}.overview-module-card__head strong{min-width:0;color:var(--navy);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-module-card__cta{color:var(--orange);font-size:var(--fs-caption);white-space:nowrap;align-items:center;gap:.25rem;margin-inline-start:auto;font-weight:700;display:inline-flex}.overview-module-card__body{align-content:start;gap:.4rem;min-width:0;display:grid}.overview-module-card__stat{color:var(--text);font-size:var(--fs-caption);align-items:baseline;gap:.4rem;display:flex}.overview-module-card__stat strong{color:var(--navy);font-size:var(--fs-body-lg)}.overview-module-card__meta{min-width:0;color:var(--muted);font-size:var(--fs-caption);flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.overview-module-card__empty{color:var(--muted);font-size:var(--fs-caption)}.overview-module-card__finance{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.overview-module-card__finance>span{gap:.1rem;min-width:0;display:grid}.overview-module-card__finance small{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.overview-module-card__finance strong{color:var(--navy);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-overdue-note{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:.65rem var(--space-4);border-radius:var(--radius-sm);background:var(--danger-wash);color:var(--danger);font-size:var(--fs-caption);border:1px solid #dc26264d;font-weight:700;display:flex}@media (max-width:640px){.overview-module-grid{grid-template-columns:1fr}.overview-module-card__finance{grid-template-columns:repeat(3,minmax(0,1fr))}}.lifecycle-control .lifecycle-pipeline__summary{justify-content:space-between;align-items:flex-start;gap:var(--space-3);color:var(--muted);font-size:var(--fs-caption);display:flex;position:absolute;inset:0 0 auto}.lifecycle-pipeline__summary>div{gap:.12rem;display:grid}.lifecycle-pipeline__summary>div span{color:var(--muted);font-weight:700}.lifecycle-pipeline__summary>div strong{color:var(--navy);font-size:var(--fs-caption)}.lifecycle-pipeline__summary>bdi{color:var(--orange);font-size:var(--fs-label);font-weight:800}.lifecycle-control .lifecycle-pipeline__track{top:76px;background:var(--border-strong);height:2px;inset-inline:8.33333%}.lifecycle-control .lifecycle{gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.lifecycle-control .lifecycle-step{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-soft);min-width:0;min-height:122px;padding:var(--space-3);box-shadow:none;gap:.45rem}.lifecycle-control .lifecycle-step__indicator{z-index:2;margin-bottom:.25rem;position:relative}.lifecycle-control .lifecycle-step__node{width:22px;height:22px;color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-caption);border-width:2px;place-items:center;font-weight:800;display:grid}.lifecycle-control .lifecycle-step__body{gap:.35rem;display:grid}.lifecycle-control .lifecycle-step__meta{margin:0}.lifecycle-control .lifecycle-step__index{display:none}.lifecycle-control .lifecycle-step__state-tag,.lifecycle-control .lifecycle-step__label{font-size:var(--fs-caption)}.lifecycle-control .lifecycle-step--done{background:#1023440b;border-color:#10234433}.lifecycle-control .lifecycle-step--current{border-color:var(--orange);background:var(--surface);box-shadow:0 0 0 1px var(--orange)}.lifecycle-control .lifecycle-step--upcoming{background:var(--surface)}.project-edit-page .overview-header{margin-bottom:var(--space-4);padding:var(--space-5);border-radius:var(--radius-sm)}.project-edit-page .overview-header__top{align-items:center}.project-edit-page .overview-header h1{font-size:clamp(1.35rem,2.4vw,1.9rem)}@media (max-width:1300px){.project-register-head>span:nth-child(4),.project-register-head>span:nth-child(8){display:none}}@media (max-width:1100px){.project-register-head>span:nth-child(3){display:none}}@media (max-width:768px){.project-register-filters .filter-select{width:100%}.project-register-cell--identity>div{flex:1}.project-register-cell--progress>div{min-width:0}.project-command-header--v5 h1{white-space:normal;max-width:none}.project-workspace-bar{flex-direction:row;align-items:center;overflow:hidden}.project-workspace-bar__label{display:none}.project-command-facts>span{border-bottom:1px solid var(--border-soft)}.project-command-facts>span:nth-child(2n){border-inline-end:0}.project-command-facts>span:last-child{grid-column:1/-1}.workspace-grid--overview{grid-template-columns:minmax(0,1fr)}.project-overview-activity{grid-template-columns:26px minmax(0,1fr)}.project-overview-activity>.ui-badge{grid-column:2;justify-self:start}.lifecycle-control .lifecycle-pipeline__track{top:78px;bottom:78px;width:2px;height:auto;inset-inline:28px auto}.lifecycle-control .lifecycle{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.lifecycle-control .lifecycle-step{min-height:74px;padding:var(--space-3);grid-template-columns:42px minmax(0,1fr);align-items:center;display:grid}.lifecycle-control .lifecycle-step__indicator{align-self:stretch;place-items:center;margin:0;display:grid}.lifecycle-control .lifecycle-step__body{align-self:center}}@media (max-width:480px){.project-command-facts>span{min-height:62px;padding-inline:var(--space-2)}.project-overview-activity p{white-space:normal}}.technical-register-toolbar .design-search{min-width:0}.technical-document-register .finance-register__identity strong{font-size:var(--fs-label)}.technical-record-heading .design-detail-identity h2{font-size:clamp(1.25rem,2.4vw,1.8rem)}.technical-file-panel .workspace-panel__title h3,.technical-file-panel .workspace-panel__title-left h3{color:var(--white)}.technical-control-sidebar .revision-list>button{border-radius:var(--radius-xs);background:var(--surface-soft);border-inline-start:2px solid #0000}.technical-control-sidebar .revision-list>button.active{border-color:var(--navy);border-inline-start-color:var(--orange);background:var(--surface);box-shadow:none}.technical-record-layout .comment-form textarea{min-height:110px}.technical-record-layout .drawing-titleblock{border-color:var(--navy)}@media (max-width:980px){.technical-register-toolbar .design-search{grid-column:1/-1}}@media (max-width:700px){.technical-register-toolbar .design-search{grid-column:auto}.technical-register .design-register__row time{white-space:normal;gap:.18rem;display:grid;overflow:visible}.technical-register .design-register__row time:before{content:attr(data-label);color:var(--muted-soft);font-size:var(--fs-caption);font-weight:700}}.site-ops-command-strip>div:first-child{gap:.15rem;min-width:0;display:grid}.site-ops-command-strip h1{color:var(--navy);font-size:var(--fs-title-sm)}.site-ops-command-strip p{color:var(--muted);font-size:var(--fs-caption);margin:0}.site-ops-command-strip__latest span{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.site-ops-command-strip__latest strong{color:var(--navy);font-size:var(--fs-caption)}.site-operations-page .worker-upload-card{border-width:1px;border-inline-start:3px solid var(--orange);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.site-operations-page .worker-upload-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.site-operations-page .worker-pills-row{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.site-operations-page .worker-pill{border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:.35rem;min-height:42px;padding:.45rem .55rem;display:inline-flex}.worker-pill__icon{flex:none;place-items:center;display:inline-grid}.site-operations-page .worker-textarea{border-radius:var(--radius-sm);min-height:88px;padding:.7rem .8rem}.site-operations-page .worker-file-drop{border-radius:var(--radius-sm);border-color:var(--border-strong);background:var(--surface-soft);min-height:104px}.site-operations-page .worker-file-drop:hover,.site-operations-page .worker-file-drop:focus-within{border-color:var(--orange);background:var(--orange-wash)}.site-operations-page .worker-submit-btn{border-radius:var(--radius-sm);min-height:48px}.site-operations-page .phase-radio-card{border-radius:var(--radius-sm);justify-content:center;min-height:72px}.site-operations-page .phase-radio-card.selected{border-color:var(--orange);background:var(--orange-wash);box-shadow:inset 0 0 0 1px var(--orange)}.site-operations-page .lightbox-header,.site-operations-page .lightbox-caption-bar{padding-inline:max(var(--space-4), env(safe-area-inset-left)) max(var(--space-4), env(safe-area-inset-right))}.site-operations-page .lightbox-nav-btn,.site-operations-page .lightbox-close-btn{min-width:44px;min-height:44px}@media (max-width:700px){.site-operations-page.worker-shell .worker-upload-card{order:1}.site-operations-page .worker-upload-card{padding:var(--space-4)}.site-operations-page .worker-pills-row{grid-template-columns:repeat(2,minmax(0,1fr))}.site-operations-page .worker-pill{justify-content:flex-start;min-height:44px}.site-operations-page .lightbox-stage{padding-inline:4px}}.finance-portfolio-page .finance-portfolio-heading h2{font-size:var(--fs-body-lg)}.finance-portfolio-register>a{align-items:center;gap:var(--space-3);min-height:64px;padding:.55rem var(--space-4);border:0;border-bottom:1px solid var(--border-soft);box-shadow:none;grid-template-columns:minmax(210px,1.6fr) 110px minmax(140px,1fr) minmax(120px,.9fr) minmax(150px,1.1fr) 130px;display:grid}.finance-portfolio-register>a:last-child{border-bottom:0}.finance-portfolio-register>a:after{width:2px}.finance-portfolio-register>a:hover{box-shadow:inset 2px 0 var(--orange);background:#f8fafc}.finance-portfolio-register .finance-portfolio-card__identity>span{color:var(--muted);font-size:var(--fs-caption)}.finance-portfolio-register .finance-portfolio-card__identity h3{color:var(--navy);font-size:var(--fs-body-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.finance-portfolio-register>a>.ui-badge{justify-self:start}.finance-portfolio-register>a>span,.finance-portfolio-register .finance-portfolio-card__phase span{color:var(--muted);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-portfolio-register .finance-portfolio-card__phase strong{color:var(--navy);font-family:var(--font-mono);font-size:var(--fs-caption)}.finance-portfolio-register>a>.progress-track{grid-area:1/4;height:5px}.finance-portfolio-register>a>b{color:var(--navy);font-size:var(--fs-caption);grid-area:1/5;justify-self:end}.finance-command-strip>div{gap:.15rem;min-width:0;display:grid}.finance-command-strip>div strong{color:var(--navy);font-size:var(--fs-body-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-module-tabs button{border-radius:var(--radius-xs);white-space:nowrap;border-color:#0000;flex:none;min-height:38px}.finance-module-tabs button.active{background:var(--navy);box-shadow:none}.finance-summary-command .finance-summary-primary{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-summary-command .finance-summary-secondary{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-register__identity .mono{font-variant-numeric:tabular-nums}.finance-void-row .finance-register__identity strong{text-decoration:line-through}.finance-void-row .ui-badge{opacity:1}.finance-command-strip__meta bdi{color:var(--navy);font-weight:800}.finance-collection-bar__label strong{color:var(--navy);font-size:var(--fs-label)}.finance-collection-bar__label strong bdi{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.finance-collection-bar__label small{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.finance-boq-section-filter select{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface);min-height:36px;color:var(--navy);font-size:var(--fs-caption);padding:0 var(--space-3);font-weight:600}.finance-section-header__total small{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.finance-section-header__total bdi{color:var(--navy);font-family:var(--font-mono);font-size:var(--fs-label);font-variant-numeric:tabular-nums;font-weight:800}.finance-register-meta bdi{color:var(--navy);font-weight:800}.finance-register-meta__voided bdi{color:inherit}.finance-line-preview{align-items:baseline;gap:.3rem var(--space-3);padding:.5rem var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-xs);background:var(--canvas-tint);font-size:var(--fs-caption);flex-wrap:wrap;display:flex}.finance-line-preview__value bdi{color:var(--navy);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.finance-line-preview small{color:var(--muted);font-size:var(--fs-caption)}.finance-dialog-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.finance-void-summary{margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-inline-start:3px solid var(--danger,#b91c1c);border-radius:var(--radius-xs);background:var(--canvas-tint);gap:.2rem;display:grid}.finance-void-summary strong{color:var(--navy);font-size:var(--fs-label)}.finance-void-summary span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.finance-void-note{margin:var(--space-2) 0 0;color:var(--muted);font-size:var(--fs-caption);line-height:1.5}.finance-version-confirm{color:var(--muted);font-size:var(--fs-label);line-height:1.7}.finance-portfolio-card__finance>span{gap:.1rem;min-width:0;display:grid}.finance-portfolio-card__finance small{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.finance-portfolio-card__finance bdi{color:var(--navy);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.finance-portfolio-card__overpaid small,.finance-portfolio-card__overpaid bdi{color:var(--danger,#b91c1c)}@media (max-width:1180px){.finance-portfolio-register>a{gap:var(--space-3);grid-template-columns:minmax(190px,1.5fr) 100px minmax(120px,.9fr) minmax(110px,.85fr) minmax(130px,1fr) 115px}.finance-summary-command .finance-summary-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.finance-portfolio-register>a{gap:var(--space-2);min-height:0;padding:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.finance-portfolio-register>a>.ui-badge,.finance-portfolio-register>a>span,.finance-portfolio-register>a>.progress-track,.finance-portfolio-register>a>b{grid-area:auto/1/auto/-1}.finance-portfolio-register>a>.ui-badge{order:2}.finance-portfolio-register>a>span{order:3}.finance-portfolio-register>a>.progress-track{order:5}.finance-portfolio-register>a>b{order:6;justify-self:start}.finance-summary-command .finance-summary-primary,.finance-summary-command .finance-summary-secondary{grid-template-columns:minmax(0,1fr)}}.ui-search-field{align-items:center;min-width:200px;display:flex;position:relative}.ui-search-field__icon{color:var(--muted-soft);pointer-events:none;position:absolute;inset-inline-start:.75rem}.ui-search-field input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);width:100%;height:38px;color:var(--text);font-size:var(--fs-label);padding:0 2rem 0 2.3rem;transition:border-color .15s,box-shadow .15s}[dir=rtl] .ui-search-field input{padding:0 2.3rem 0 2rem}.ui-search-field input:focus{border-color:var(--navy-soft);outline:none;box-shadow:0 0 0 3px #2f447f1f}.ui-search-field input::placeholder{color:var(--muted-soft)}.ui-search-field__clear{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--muted);font-size:var(--fs-body-lg);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid;position:absolute;inset-inline-end:.45rem}.ui-search-field__clear:hover{background:var(--canvas-tint);color:var(--navy)}.ui-overlay{z-index:80;display:flex;position:fixed;inset:0}.ui-overlay__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default;background:#0b132b80;border:0;position:absolute;inset:0}.ui-drawer{background:var(--white);border-inline-start:1px solid var(--border);width:min(480px,100%);height:100%;box-shadow:var(--shadow-xl);flex-direction:column;margin-inline-start:auto;animation:.22s ui-drawer-in;display:flex;position:relative}@keyframes ui-drawer-in{0%{opacity:.6;transform:translate(-24px)}to{opacity:1;transform:none}}[dir=ltr] .ui-drawer{animation-name:ui-drawer-in-ltr}@keyframes ui-drawer-in-ltr{0%{opacity:.6;transform:translate(24px)}to{opacity:1;transform:none}}.ui-drawer__header,.ui-modal__header,.ui-bottom-sheet__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:.9rem var(--space-5);border-bottom:1px solid var(--border);display:flex}.ui-drawer__header h2,.ui-modal__header h2,.ui-bottom-sheet__header h2{font-size:var(--fs-body-lg);color:var(--navy);font-weight:800}.ui-drawer__body,.ui-modal__body,.ui-bottom-sheet__body{padding:var(--space-5);flex:1;overflow-y:auto}.ui-drawer__footer,.ui-modal__footer,.ui-bottom-sheet__footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:.8rem var(--space-5);border-top:1px solid var(--border);background:var(--surface-soft);display:flex}.ui-overlay--modal{padding:var(--space-4);justify-content:center;align-items:center}.ui-modal{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(520px,100%);max-height:min(720px,100svh - 2rem);box-shadow:var(--shadow-xl);flex-direction:column;animation:.18s ui-modal-in;display:flex;position:relative}.ui-modal--wide{width:min(880px,100%)}@keyframes ui-modal-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}.ui-modal__description{color:var(--muted);font-size:var(--fs-body-sm);margin:0}.ui-overlay--sheet{justify-content:center;align-items:flex-end}.ui-bottom-sheet{background:var(--white);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-height:min(88svh,760px);box-shadow:var(--shadow-xl);padding-bottom:env(safe-area-inset-bottom,0);flex-direction:column;animation:.24s cubic-bezier(.32,.72,0,1) ui-sheet-in;display:flex;position:relative}@keyframes ui-sheet-in{0%{opacity:.5;transform:translateY(48px)}to{opacity:1;transform:none}}.ui-bottom-sheet__grip{border-radius:var(--radius-pill);background:var(--border-strong);align-self:center;width:40px;height:4px;margin-top:.55rem}.ui-bottom-sheet__header{padding-top:.55rem}.ui-dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-soft);transition:border-color .15s,background .15s}.ui-dropzone--dragging{border-color:var(--orange);background:var(--orange-wash)}.ui-dropzone__trigger{width:100%;min-height:120px;padding:var(--space-5);color:var(--muted);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;display:flex}.ui-dropzone--compact .ui-dropzone__trigger{min-height:72px;padding:var(--space-3)}.ui-dropzone__trigger strong{color:var(--navy);font-size:var(--fs-body-sm)}.ui-dropzone__trigger svg{color:var(--navy-soft)}.ui-dropzone__hint{font-size:var(--fs-caption);color:var(--muted-soft)}.ui-dropzone__trigger:disabled{opacity:.55;cursor:not-allowed}.ui-upload-progress{gap:.35rem;display:grid}.ui-upload-progress__track{border-radius:var(--radius-pill);background:var(--canvas-tint);height:6px;overflow:hidden}.ui-upload-progress__track span{border-radius:inherit;background:var(--orange);height:100%;transition:width .2s;display:block}.ui-upload-progress__meta{font-size:var(--fs-caption);color:var(--muted);justify-content:space-between;align-items:center;display:flex}.ui-bulk-bar{bottom:var(--space-4);z-index:30;align-items:center;gap:var(--space-3);border:1px solid var(--navy);border-radius:var(--radius-md);background:var(--navy);color:var(--white);box-shadow:var(--shadow-lg);padding:.55rem .9rem;display:flex;position:sticky}.ui-bulk-bar__count{font-size:var(--fs-label);white-space:nowrap}.ui-bulk-bar__actions{align-items:center;gap:var(--space-2);flex:1;display:flex}.ui-bulk-bar__clear{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--white);font-size:var(--fs-body-lg);cursor:pointer;background:#ffffff1f;border:0;place-items:center;display:inline-grid}.ui-skeleton{padding:var(--space-4);gap:.6rem;display:grid}.ui-skeleton__line{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--canvas-tint) 25%, var(--surface-soft) 50%, var(--canvas-tint) 75%);background-size:200% 100%;height:12px;animation:1.4s infinite ui-shimmer;display:block}.ui-skeleton-rows{gap:0;display:grid}.ui-skeleton-rows__row{border-bottom:1px solid var(--border-soft);background:linear-gradient(90deg, var(--surface-soft) 25%, var(--canvas-tint) 50%, var(--surface-soft) 75%);background-size:200% 100%;height:52px;animation:1.4s infinite ui-shimmer}@keyframes ui-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.ui-skeleton__line,.ui-skeleton-rows__row,.ui-drawer,.ui-modal,.ui-bottom-sheet{animation:none}}.ui-data-toolbar{align-items:center;gap:var(--space-3);padding:.7rem var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-soft);flex-wrap:wrap;display:flex}.ui-data-toolbar .ui-search-field{flex:1;min-width:180px;max-width:340px}.ui-data-toolbar__meta{font-size:var(--fs-caption);color:var(--muted);white-space:nowrap;margin-inline-start:auto}.ui-filter-drawer__body{gap:var(--space-4);display:grid}.ui-filter-drawer__actions{gap:var(--space-3);display:flex}.ui-preview-drawer__stage{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas);place-items:center;min-height:320px;display:grid;overflow:hidden}.ui-preview-drawer__stage img,.ui-preview-drawer__stage video{object-fit:contain;max-width:100%;max-height:70svh}.ui-preview-drawer__stage iframe{border:0;width:100%;height:70svh}.ui-preview-drawer__fallback{padding:var(--space-6);color:var(--muted);font-size:var(--fs-body-sm);text-align:center}.ui-import-stepper{flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.ui-import-stepper__step{color:var(--muted-soft);font-size:var(--fs-caption);align-items:center;gap:.45rem;padding:.35rem .75rem .35rem 0;font-weight:600;display:flex}[dir=rtl] .ui-import-stepper__step{padding:.35rem 0 .35rem .75rem}.ui-import-stepper__step:not(:last-child):after{content:"";background:var(--border-strong);width:22px;height:1px;margin-inline-start:.75rem}.ui-import-stepper__index{border:1px solid var(--border-strong);border-radius:var(--radius-pill);width:22px;height:22px;font-size:var(--fs-caption);place-items:center;font-weight:700;display:inline-grid}.ui-import-stepper__step--current{color:var(--navy)}.ui-import-stepper__step--current .ui-import-stepper__index{border-color:var(--orange);background:var(--orange);color:var(--white)}.ui-import-stepper__step--done{color:var(--success)}.ui-import-stepper__step--done .ui-import-stepper__index{border-color:var(--success);color:var(--success)}.ui-activity-timeline{gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.ui-activity-timeline__item{gap:var(--space-3);grid-template-columns:26px minmax(0,1fr);padding:.55rem 0;display:grid;position:relative}.ui-activity-timeline__item:not(:last-child):before{content:"";inset-inline-start:12px;background:var(--border);width:1px;position:absolute;top:34px;bottom:-4px}.ui-activity-timeline__marker{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--white);width:26px;height:26px;color:var(--muted);font-size:var(--fs-caption);place-items:center;display:inline-grid}.ui-activity-timeline__item--success .ui-activity-timeline__marker{border-color:var(--success);color:var(--success)}.ui-activity-timeline__item--warning .ui-activity-timeline__marker{border-color:var(--orange);color:var(--orange)}.ui-activity-timeline__item--danger .ui-activity-timeline__marker{border-color:var(--danger);color:var(--danger)}.ui-activity-timeline__item--info .ui-activity-timeline__marker{border-color:var(--info);color:var(--info)}.ui-activity-timeline__body{gap:.15rem;min-width:0;display:grid}.ui-activity-timeline__body strong{font-size:var(--fs-label);color:var(--text)}.ui-activity-timeline__body p{font-size:var(--fs-label);color:var(--muted);margin:0}.ui-activity-timeline__body small{font-size:var(--fs-caption);color:var(--muted-soft)}.record-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);gap:.55rem;padding:.85rem 1rem;display:grid}.record-card--interactive{cursor:pointer;transition:border-color .15s,box-shadow .15s}.record-card--interactive:hover{border-color:var(--navy-soft);box-shadow:var(--shadow-sm)}.record-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.record-card__identity{gap:.15rem;min-width:0;display:grid}.record-card__identity strong{font-size:var(--fs-body);color:var(--navy)}.record-card__subtitle{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--muted-soft)}.record-card__meta{gap:.35rem var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.record-card__meta>div{align-items:baseline;gap:.4rem;min-width:0;display:flex}.record-card__meta dt{font-size:var(--fs-caption);color:var(--muted-soft);flex-shrink:0}.record-card__meta dd{font-size:var(--fs-label);color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.record-card__foot{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.record-card__open{font-size:var(--fs-caption);color:var(--orange-hover);font-weight:700}.ui-command-bar{align-items:center;gap:var(--space-3);padding:.6rem var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);flex-wrap:wrap;display:flex}.app-bottom-nav a,.app-bottom-nav button{color:#ffffff9e;min-width:0;min-height:56px;font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.2rem;font-weight:600;transition:color .15s;display:flex;position:relative}.app-bottom-nav a.active,.app-bottom-nav button.active{color:var(--white)}.app-bottom-nav a.active:before,.app-bottom-nav button.active:before{content:"";background:var(--orange);border-radius:0 0 3px 3px;width:28px;height:2px;position:absolute;top:0}.app-bottom-nav a svg,.app-bottom-nav button svg{flex-shrink:0}.project-context-bar__name strong{font-size:var(--fs-body-sm);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-context-bar__name small{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--muted-soft)}.project-context-bar__phase small{font-size:var(--fs-caption);color:var(--muted-soft);display:block}.project-context-bar__phase strong{font-size:var(--fs-caption);color:var(--navy);display:block}.project-context-bar__progress .progress-track{flex:1;min-width:60px}.project-context-bar__progress strong{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--navy)}.project-context-bar__nav a{border-radius:var(--radius-sm);min-height:32px;color:var(--muted);font-size:var(--fs-caption);white-space:nowrap;align-items:center;gap:.35rem;padding:.3rem .7rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.project-context-bar__nav a:hover{background:var(--canvas-tint);color:var(--navy)}.project-context-bar__nav a.active{background:var(--navy);color:var(--white)}.attention-row__body strong{font-size:var(--fs-label);color:var(--navy);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attention-row__body span{font-size:var(--fs-caption);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.generated-code-field small{color:var(--muted);font-size:var(--fs-caption)}@media (max-width:900px){.project-created-banner{grid-template-columns:1fr 1fr}.project-created-banner__actions{grid-column:1/-1;justify-content:flex-start}}@media (max-width:700px){.project-created-banner{grid-template-columns:1fr}.project-created-banner__context{border-inline-start:0;padding-inline-start:0;padding-top:var(--space-3);border-top:1px solid #0d8a5838}.project-created-banner__actions{grid-column:auto}.client-create-next-step{flex-direction:column;align-items:flex-start}}.dataops-console{gap:var(--space-6);max-width:1100px;display:grid}.dataops-metrics{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-xs);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;display:grid;overflow:hidden}.dataops-metric{min-width:0;padding:.85rem var(--space-4);border-inline-start:1px solid var(--border-soft);align-content:center;gap:.25rem;display:grid}.dataops-metric:first-child{border-inline-start:0}.dataops-metric dt{font-size:var(--fs-caption);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.dataops-metric dd{font:800 1.3rem/1.15 var(--font-mono);color:var(--navy);margin:0}.dataops-metric[data-tone=danger] dd{color:var(--danger)}.dataops-section{gap:var(--space-3);display:grid}.dataops-section__head{justify-content:space-between;align-items:end;gap:var(--space-3);display:flex}.dataops-section__head h2{font-size:var(--fs-body-lg);color:var(--navy);margin:0}.dataops-section__head p{font-size:var(--fs-caption);color:var(--muted);margin:.2rem 0 0}.dataops-tools{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dataops-tool{column-gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);text-align:start;cursor:pointer;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon body""foot foot";transition:border-color .15s,box-shadow .15s;display:grid}.dataops-tool:hover{border-color:var(--navy-soft);box-shadow:var(--shadow-sm)}.dataops-tool:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.dataops-tool__icon{border-radius:var(--radius-sm);background:var(--navy);width:36px;height:36px;color:var(--white);grid-area:icon;place-items:center;display:inline-grid}.dataops-tool__icon--orange{background:var(--orange)}.dataops-tool__icon--success{background:var(--success)}.dataops-tool__icon--info{background:var(--info)}.dataops-tool__body{grid-area:body;min-width:0}.dataops-tool__body h3{font-size:var(--fs-body);color:var(--navy);margin:0;line-height:1.4}.dataops-tool__body p{font-size:var(--fs-caption);color:var(--muted);margin:.3rem 0 0;line-height:1.6}.dataops-tool__foot{justify-content:space-between;align-items:center;gap:var(--space-3);border-top:1px dashed var(--border-soft);grid-area:foot;margin-top:.85rem;padding-top:.65rem;display:flex}.dataops-tool__format{font:600 var(--fs-caption)/1 var(--font-mono);letter-spacing:.02em;color:var(--muted)}.dataops-tool__cta{font-size:var(--fs-caption);color:var(--orange-hover);align-items:center;gap:.35rem;font-weight:700;display:inline-flex}.dataops-tool:hover .dataops-tool__cta{color:var(--orange)}.dataops-export{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-xs);display:flex}.dataops-export__body{flex:1;min-width:0}.dataops-export__body h3{font-size:var(--fs-body);color:var(--navy);margin:0}.dataops-export__body>p{font-size:var(--fs-caption);color:var(--muted);margin:.3rem 0 0;line-height:1.6}.dataops-export__meta{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.dataops-chip{border:1px solid var(--border);background:var(--surface-soft);font:600 var(--fs-caption)/1 var(--font-mono);color:var(--muted);white-space:nowrap;border-radius:999px;padding:.28rem .55rem}.dataops-empty{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-soft);display:flex}.dataops-empty__icon{border-radius:var(--radius-sm);background:var(--white);border:1px solid var(--border);width:34px;height:34px;color:var(--muted);flex:none;place-items:center;display:inline-grid}.dataops-empty__body{flex:1;min-width:0}.dataops-empty__body strong{font-size:var(--fs-label);color:var(--navy);display:block}.dataops-empty__body p{font-size:var(--fs-caption);color:var(--muted);margin:.15rem 0 0}.dataops-workspace{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-xs)}.jobs-register{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-xs);overflow:hidden}.jobs-register__head{align-items:center;gap:var(--space-3);padding:.55rem var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-soft);grid-template-columns:34px minmax(0,1fr) minmax(0,auto) 72px 88px;display:grid}.jobs-register__head span{font-size:var(--fs-caption);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700}.jobs-register__head span:nth-child(2){grid-column:4}.jobs-register__head span:nth-child(3){text-align:end;grid-column:5}.jobs-register__row{align-items:center;gap:var(--space-3);padding:.6rem var(--space-4);border-bottom:1px solid var(--border-soft);grid-template-columns:34px minmax(0,1fr) minmax(0,auto) 72px 88px;display:grid}.jobs-register__row:last-child{border-bottom:0}.jobs-register__icon{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-soft);width:30px;height:30px;color:var(--navy);place-items:center;display:inline-grid}.jobs-register__icon--danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 30%, transparent);background:color-mix(in srgb, var(--danger) 8%, var(--white))}.jobs-register__meta{min-width:0;display:grid}.jobs-register__meta strong{font-size:var(--fs-label);color:var(--navy);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.jobs-register__meta span{font-size:var(--fs-caption);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.jobs-register__counts{font:600 var(--fs-caption)/1.4 var(--font-mono);color:var(--muted);white-space:nowrap}.jobs-register__row .ui-badge{justify-self:start}.jobs-register__row time{font-size:var(--fs-caption);color:var(--muted-soft);text-align:end;white-space:nowrap}@media (max-width:1023px){.dataops-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dataops-metric:nth-child(3){border-inline-start:0}.dataops-metric:nth-child(n+3){border-top:1px solid var(--border-soft)}}@media (max-width:767px){.dataops-tools{grid-template-columns:1fr}.dataops-export,.dataops-empty{flex-wrap:wrap}.jobs-register__head{display:none}.jobs-register__row{grid-template-columns:30px minmax(0,1fr) auto;grid-template-areas:"icon meta badge""icon counts time";row-gap:.2rem}.jobs-register__icon{grid-area:icon;align-self:start}.jobs-register__meta{grid-area:meta}.jobs-register__counts{grid-area:counts}.jobs-register__row .ui-badge{grid-area:badge;justify-self:end}.jobs-register__row time{grid-area:time}}.import-wizard{gap:var(--space-5);display:grid}.import-mapping-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.import-mapping-row{gap:.3rem;display:grid}.import-mapping-row label{font-size:var(--fs-caption);color:var(--muted);font-weight:600}.import-preview-table{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.import-preview-table table{border-collapse:collapse;width:100%;font-size:var(--fs-label)}.import-preview-table th,.import-preview-table td{border-bottom:1px solid var(--border-soft);text-align:start;white-space:nowrap;padding:.5rem .75rem}.import-preview-table th{background:var(--surface-soft);color:var(--muted);font-size:var(--fs-caption);font-weight:700}.import-preview-table tr:last-child td{border-bottom:0}.import-row--error td{background:var(--danger-wash)}.import-row--duplicate td{background:var(--orange-wash)}.import-issue{border-radius:var(--radius-sm);background:var(--danger-wash);color:#a01d1d;font-size:var(--fs-caption);margin:.1rem .2rem .1rem 0;padding:.1rem .4rem;display:inline-block}.import-issue--duplicate{background:var(--orange-wash);color:var(--orange-hover)}.import-summary-strip{gap:var(--space-3);flex-wrap:wrap;display:flex}.import-summary-chip{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);font-size:var(--fs-label);color:var(--muted);align-items:center;gap:.4rem;padding:.4rem .8rem;display:inline-flex}.import-summary-chip strong{font-family:var(--font-mono);font-size:var(--fs-body);color:var(--navy)}.import-summary-chip--valid strong{color:var(--success)}.import-summary-chip--error strong{color:var(--danger)}.import-summary-chip--duplicate strong{color:var(--orange-hover)}.import-result-panel{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--success);border-radius:var(--radius-md);background:var(--success-wash);display:grid}.import-result-panel--partial{border-color:var(--orange);background:var(--orange-wash)}.jobs-list{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);gap:0;display:grid;overflow:hidden}.job-row{align-items:center;gap:var(--space-3);padding:.65rem var(--space-4);border-bottom:1px solid var(--border-soft);display:flex}.job-row:last-child{border-bottom:0}.job-row__meta{flex:1;min-width:0;display:grid}.job-row__meta strong{font-size:var(--fs-label);color:var(--navy)}.job-row__meta span{font-size:var(--fs-caption);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.job-row time{font-size:var(--fs-caption);color:var(--muted-soft);flex-shrink:0}.notification-group{margin-bottom:var(--space-4);gap:.4rem;display:grid}.notification-group__header{font-size:var(--fs-caption);color:var(--muted);align-items:center;gap:.5rem;padding:.35rem .2rem;font-weight:700;display:flex}.notification-group__header .mono{color:var(--navy-soft)}@media (max-width:900px){.project-context-bar__nav a{font-size:var(--fs-caption);flex:1;justify-content:center;padding:.35rem .5rem}.project-context-bar__nav a svg{display:none}}@media (max-width:768px){.register-desktop-only{display:none!important}.record-card-list{gap:.6rem;display:grid}}@media (min-width:769px){.record-card-list{display:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.password-generate-row input{font-family:var(--font-mono);flex:1}.worker-quick-fab{inset-inline-end:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px) + 56px);z-index:60;background:var(--orange);width:56px;height:56px;color:var(--white);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:none;position:fixed;box-shadow:0 8px 24px #10203359}.worker-quick-fab:active{transform:scale(.94)}.worker-sheet-lead{margin:0 0 var(--space-3);color:var(--muted);font-size:var(--fs-label)}@media (max-width:700px){.site-operations-page.worker-shell .worker-quick-fab{display:flex}}.dashboard-attention-clear>div{gap:.12rem;display:grid}.dashboard-attention-clear strong{color:var(--navy);font-size:var(--fs-caption)}.dashboard-attention-clear span{color:var(--muted);font-size:var(--fs-caption)}.project-setup-checklist{gap:var(--space-3);margin:var(--space-4) 0 var(--space-5);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft);display:grid}.project-setup-checklist__head,.project-setup-checklist__items{align-items:center;gap:var(--space-3);display:flex}.project-setup-checklist__head{justify-content:space-between}.project-setup-checklist__head h2{color:var(--navy);font-size:var(--fs-body);margin:.2rem 0 0}.project-setup-checklist__head>span{color:var(--muted);font:700 var(--fs-caption)/1 var(--font-mono)}.project-setup-checklist__items{flex-wrap:wrap}.project-setup-checklist__items>div,.project-setup-checklist__items>a{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);min-height:34px;color:var(--muted);font-size:var(--fs-caption);align-items:center;gap:.4rem;padding:.35rem .55rem;display:inline-flex}.project-setup-checklist__items>a{color:var(--orange-hover);font-weight:800}.project-setup-checklist__items span{color:var(--muted-soft);display:inline-grid}.project-setup-checklist__items span.is-complete{color:var(--success)}.project-mobile-actions>div{gap:var(--space-2);flex-wrap:wrap;display:flex}.project-mobile-actions a{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);min-height:38px;color:var(--navy);font-size:var(--fs-caption);align-items:center;gap:.35rem;padding:.45rem .65rem;font-weight:800;display:inline-flex}.project-created-banner{gap:var(--space-4);margin:var(--space-4) 0 var(--space-5);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--success-wash);border:1px solid #0d8a5847;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto;align-items:center;display:grid}.project-created-banner__identity,.project-created-banner__context,.project-created-banner__actions{gap:.25rem;display:grid}.project-created-banner__eyebrow{color:var(--success);font-size:var(--fs-caption);text-transform:uppercase;font-weight:800}.project-created-banner__identity strong{color:var(--navy);font-size:var(--fs-body-lg)}.project-created-banner__identity>span:last-child,.project-created-banner__context span{color:var(--muted);font-size:var(--fs-caption)}.project-created-banner__context{border-inline-start:1px solid #0d8a5838;padding-inline-start:var(--space-4)}.project-created-banner__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.client-create-next-step{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--info-wash);border:1px solid #1f69c938;display:flex}.credential-reveal .mono{background:var(--white);width:fit-content;max-width:100%;color:var(--navy);overflow-wrap:anywhere;border:1px solid #0d8a582e;border-radius:3px;padding:.16rem .38rem}.client-create-next-step>div{gap:.18rem;min-width:0;display:grid}.client-create-next-step strong{color:var(--navy);font-size:var(--fs-label)}.client-create-next-step span{color:var(--muted);font-size:var(--fs-caption)}.dashboard-setup-guide__head h2{color:var(--navy);font-size:var(--fs-title-sm);margin:.25rem 0 0}.dashboard-setup-guide__head p{max-width:680px;color:var(--muted);font-size:var(--fs-label);margin:.35rem 0 0}.dashboard-setup-step__copy strong{color:var(--navy);font-size:var(--fs-label)}.dashboard-setup-step__copy small{color:var(--muted);font-size:var(--fs-caption);line-height:1.45}.media-source-row{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.worker-file-drop.media-source{min-height:76px;padding:var(--space-2) var(--space-3)}.worker-field-hint{color:var(--muted);font-size:var(--fs-caption);margin-top:var(--space-1);display:block}.media-pick-notice{border-radius:var(--radius-sm);color:#9c4a1d;font-size:var(--fs-caption);margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3);background:#d95a2614;border:1px solid #d95a2647;line-height:1.5}.media-pick-grid{gap:var(--space-2);margin:var(--space-2) 0 0;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));padding:0;list-style:none;display:grid}.media-pick{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.media-pick__thumb{aspect-ratio:4/3;background:var(--navy-deep);position:relative}.media-pick__thumb img,.media-pick__thumb video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.media-pick__kind{color:#fff;inset-inline-start:4px;background:#0b132bb8;border-radius:4px;align-items:center;padding:2px 4px;display:inline-flex;position:absolute;top:4px}.media-pick__remove{color:#fff;cursor:pointer;inset-inline-end:4px;background:#0b132bc7;border:0;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;transition:background .15s;display:inline-flex;position:absolute;top:4px}.media-pick__remove:hover{background:var(--orange)}.media-pick__remove:disabled{cursor:default;opacity:.5}.media-pick__meta{align-items:baseline;gap:var(--space-1);padding:4px var(--space-2);justify-content:space-between;display:flex}.media-pick__name{font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.media-pick__size{color:var(--muted);font-size:var(--fs-caption);flex-shrink:0}.media-upload-progress{margin-top:var(--space-2);gap:4px;display:grid}.media-upload-progress__track{background:var(--border-soft);border-radius:999px;height:8px;overflow:hidden}.media-upload-progress__track span{background:var(--orange);border-radius:inherit;height:100%;transition:inline-size .2s;display:block}.media-upload-progress small{color:var(--muted);font-size:var(--fs-caption)}.visibility-choice{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.visibility-choice__option{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;font-size:var(--fs-label);align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);font-weight:600;transition:border-color .15s,background .15s,color .15s;display:flex}.visibility-choice__option.active{background:var(--orange-wash);border-color:var(--orange);color:var(--navy)}.progress-delta-row{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.progress-delta-row__cell{background:var(--border-soft);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);text-align:center;gap:2px;display:grid}.progress-delta-row__cell small{color:var(--muted);font-size:var(--fs-caption)}.progress-delta-row__cell strong{font-size:var(--fs-body-lg)}.progress-delta-row__cell--new{background:var(--navy-deep);border-color:var(--navy-deep)}.progress-delta-row__cell--new small,.progress-delta-row__cell--new strong{color:#fff}.progress-delta-row__cell.is-up strong{color:#0d8a58}.progress-delta-row__cell.is-down strong{color:#c0392b}.phase-radio-card.current{border-color:var(--navy)}.phase-current-tag{background:var(--navy-deep);color:#fff;font-size:var(--fs-caption);text-transform:uppercase;border-radius:4px;margin-inline-start:4px;padding:1px 5px;font-style:normal;font-weight:700}.lightbox-loading{color:#ffffffb3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lightbox-image-wrap img,.lightbox-image-wrap video{object-fit:contain;opacity:0;max-width:100%;max-height:calc(100dvh - 140px);transition:opacity .2s}.lightbox-image-wrap img.loaded,.lightbox-image-wrap video.loaded{opacity:1}.lightbox-type-tag{color:var(--orange-soft);font-size:var(--fs-caption);text-transform:uppercase;align-items:center;gap:5px;margin-bottom:4px;font-weight:700;display:inline-flex}.lightbox-image-wrap{position:relative}@media (max-width:700px){.media-pick-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.visibility-choice__option{font-size:var(--fs-caption);text-align:center;justify-content:center}}.app-nav a{min-height:36px;font-size:var(--fs-caption);border-radius:4px}.app-nav a.active{box-shadow:inset 2px 0 var(--orange);background:#e8762526}.page-header h1{font-size:clamp(1.25rem,1.8vw,1.55rem)}.page-header p{max-width:700px;font-size:var(--fs-label)}.project-register-filters .filter-select,.filter-select,.search-input{min-height:34px;font-size:var(--fs-caption);border-radius:4px}.project-workspace-page{gap:.75rem}.project-command-header--v5 h1{font-size:clamp(1.35rem,2.3vw,2rem)}.project-command-header__progress-meta strong{font-size:var(--fs-title-lg)}.project-workspace-bar{min-height:44px;box-shadow:none;border-radius:5px}.project-workspace-bar__label{font-size:var(--fs-caption)}.project-workspace-nav a,.project-context-bar__nav a{min-height:32px;font-size:var(--fs-caption);padding-inline:.6rem}.project-command-facts>span{min-height:58px;padding-block:.5rem}.project-overview-v2{gap:1rem}.overview-lifecycle-section,.overview-modules-section{border:1px solid var(--border);background:var(--surface);border-radius:5px;padding:.9rem}.overview-section-heading{margin-bottom:.7rem}.overview-section-heading h2{font-size:var(--fs-body-lg)}.overview-section-heading p{font-size:var(--fs-caption)}.overview-module-card{box-shadow:none;border-radius:4px;gap:.65rem;padding:.75rem}.lifecycle-control .lifecycle-step{min-height:82px;box-shadow:none;border-radius:4px;padding:.7rem}.chat-context-bar{min-height:60px;box-shadow:none;border-radius:5px;padding:.75rem 1rem}.finance-subtabs a,.finance-subtabs button,.finance-module-tabs a,.finance-module-tabs button{min-height:34px;font-size:var(--fs-caption);padding-inline:.65rem}.finance-summary-secondary{grid-template-columns:repeat(5,minmax(0,1fr))}.documents-register,.users-table,.clients-table{box-shadow:none;border-radius:5px}.ui-dialog,.dialog-panel{border-radius:6px;max-height:min(760px,100dvh - 2rem);overflow:auto}@media (max-width:980px){.finance-summary-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.finance-summary-primary,.finance-summary-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.project-command-header--v5 h1{font-size:var(--fs-title)}.project-workspace-bar{overflow:hidden}.project-workspace-bar__label{display:none}.project-command-facts>span:last-child{grid-column:1/-1}.chat-context-bar{flex-direction:column;align-items:flex-start;gap:.55rem}.workspace-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:390px){.finance-summary-secondary{grid-template-columns:minmax(0,1fr)}.finance-summary-primary{grid-template-columns:repeat(2,minmax(0,1fr))}}.settings-identity h2,.settings-password h2{margin:0 0 var(--space-5);font-size:var(--fs-body-lg)}.settings-identity dl{margin:0}.settings-identity dl div{justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-soft);display:flex}.settings-identity dt{color:var(--muted)}.settings-identity dd{text-align:end;margin:0;font-weight:700}.project-record__identity a{width:fit-content;max-width:100%}.project-record__identity a strong{color:var(--navy);font-size:var(--fs-body-sm);overflow-wrap:anywhere;line-height:1.4;display:block}.project-record__person strong,.project-record__phase span{font-size:var(--fs-caption);overflow-wrap:anywhere;font-weight:650;line-height:1.4}.project-record .project-register-cell--location span{overflow-wrap:anywhere}.project-record .project-register-cell--progress>div{gap:.25rem;width:100%;display:grid}.project-record .project-register-cell--progress strong{font-size:var(--fs-caption);text-align:start}.project-record .project-register-cell--progress .progress-track{height:5px}.project-record .ui-badge{white-space:nowrap}.project-control-header__identity h1{color:var(--navy);overflow-wrap:anywhere;flex-basis:100%;order:-1;margin:0;font-size:clamp(1.2rem,2vw,1.7rem);line-height:1.3}.project-control-header__meta bdi{color:var(--navy);font-weight:700}[dir=ltr] .project-control-header__back svg,[dir=ltr] .project-context-bar__back svg{transform:rotate(180deg)}.project-control-header__phase>span{background:var(--navy);color:#fff;width:36px;height:36px;font-weight:700;font-size:var(--fs-caption);border-radius:3px;place-items:center;display:grid}.project-control-header__phase>div,.project-control-header__progress>div{gap:.1rem;display:grid}.project-control-header__phase small,.project-control-header__progress small{color:var(--muted);font-size:var(--fs-caption)}.project-control-header__phase strong{color:var(--navy);font-size:var(--fs-label);white-space:nowrap}.project-control-header__progress>div{justify-content:space-between;align-items:baseline;display:flex}.project-control-header__progress strong{color:var(--navy);font-size:var(--fs-body-sm)}.project-control-header__progress .progress-track{height:6px}.project-control-header__facts>div{min-width:0;font-size:var(--fs-caption);align-items:center;gap:.35rem;display:flex}.project-control-header__facts svg,.project-control-header__facts dt{color:var(--muted)}.project-control-header__facts dd{color:var(--navy);overflow-wrap:anywhere;margin:0;font-weight:700}.project-control-nav a{color:var(--muted);font-size:var(--fs-caption);white-space:nowrap;border-radius:3px;flex:none;align-items:center;gap:.35rem;padding:.55rem .8rem;font-weight:700;display:flex}.project-control-nav a.active{background:var(--navy);color:var(--white);box-shadow:none}.project-control-nav a:hover:not(.active){background:var(--surface-soft);color:var(--navy)}.delivery-path__info strong{color:var(--muted);font-size:var(--fs-caption);line-height:1.5}.delivery-path__info small{color:var(--muted);font-size:var(--fs-caption)}.delivery-path__stage--done .delivery-path__info strong,.delivery-path__stage--current .delivery-path__info strong{color:var(--navy)}.delivery-path__stage--current .delivery-path__info strong{font-weight:800}.delivery-path__stage--current .delivery-path__info small{color:var(--orange-hover);font-weight:700}@media (max-width:1240px){.project-register-head>span:nth-child(4){display:none}}@media (max-width:1100px){.project-record .project-register-cell--identity>div{width:100%}.project-record .project-register-cell--identity a strong{font-size:var(--fs-body-lg)}}@media (max-width:900px){.delivery-path__info strong{font-size:var(--fs-label)}}@media (max-width:640px){.project-control-header__facts>div{flex:42%}}.technical-record-heading .design-detail-identity h2{overflow-wrap:anywhere;font-size:clamp(1.05rem,1.8vw,1.45rem);line-height:1.4}.technical-record-heading .section-kicker{font-size:var(--fs-caption);text-transform:none}.technical-file-panel .workspace-panel__title a{color:var(--white);background:0 0;border-color:#ffffff40}.technical-file-panel .workspace-panel__title a:hover{background:#ffffff24}.technical-file-panel .file-preview--pdf iframe{height:clamp(340px,58vh,650px)}.review-file-meta>div{border-inline-end:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);gap:.12rem;min-width:0;padding:.5rem .85rem;display:grid}.review-file-meta dt{color:var(--muted);font-size:var(--fs-caption)}.review-file-meta dd{color:var(--navy);font-size:var(--fs-caption);overflow-wrap:anywhere;margin:0;font-weight:700}.technical-control-sidebar .revision-list>button{border:0;border-bottom:1px solid var(--border-soft);background:var(--white);border-inline-start:3px solid #0000;border-radius:0;margin:0;padding:.55rem .65rem}.technical-control-sidebar .revision-list>button.active{border-inline-start-color:var(--orange);background:var(--surface-soft)}.technical-control-sidebar .revision-card time{font-family:inherit}.review-conversation>.workspace-panel__title bdi{color:var(--muted);font-size:var(--fs-caption);margin-inline-start:auto}.review-comment__header strong{color:var(--navy)}.review-comment__header span,.review-comment__header time{color:var(--muted)}.review-comment__header time{margin-inline-start:auto}.review-comment__body p{font-size:var(--fs-label);white-space:pre-wrap;overflow-wrap:anywhere;margin:.25rem 0 0;line-height:1.7}.review-conversation__composer textarea{resize:vertical;width:100%;min-height:76px}.document-control-register__identity strong{color:var(--navy);font-size:var(--fs-label);overflow-wrap:anywhere;line-height:1.4;display:block}.document-control-register__identity a:hover{color:var(--orange-hover)}.field-activity .site-media-thumbnail img,.field-activity .site-media-thumbnail video{object-fit:cover;display:block}.boq-register--qs .finance-register__head span.num{text-align:end}.boq-register--qs .finance-register__identity strong{font-size:var(--fs-caption);line-height:1.35}.chat-channel-header{background:var(--white);border-bottom:1px solid var(--border);min-height:54px;padding:.55rem .9rem}.chat-channel-header .chat-context-bar__info{gap:.05rem;display:grid}.chat-channel-header .chat-context-bar__info strong{font-size:var(--fs-body-sm)}.chat-channel-header .chat-context-bar__info span{color:var(--muted);font-size:var(--fs-caption)}.chat-channel-header .chat-context-bar__tag{font-size:var(--fs-caption)}.chat-page .chat-message-list{background:var(--surface-soft);gap:.2rem;min-height:0;padding:.75rem 1rem}.chat-page .chat-date-separator{font-size:var(--fs-caption);background:0 0;border:0;margin:.65rem auto}.chat-page .chat-bubble{max-width:min(520px,72%);box-shadow:none;border-radius:6px;padding:.45rem .65rem}.chat-page .chat-bubble--own{background:#e9eff8;border-color:#cad7eb}.chat-page .chat-bubble__meta{flex-wrap:wrap;align-items:center;row-gap:.1rem;margin-bottom:.1rem}.chat-page .chat-bubble__role{text-transform:none}.chat-page .chat-bubble__text{margin:.1rem 0;line-height:1.6}.chat-page .chat-composer__input{resize:vertical;min-width:0;max-height:140px}.chat-page .chat-composer__mic,.chat-page .chat-composer__send{min-height:42px}@media (max-width:700px){.technical-file-panel .workspace-panel__title a{margin-inline-start:0}.chat-page .chat-bubble{max-width:89%}.chat-page .chat-message-list{padding:.6rem}}.finance-scope-bar__toggle bdi{font-family:var(--font-mono)}.finance-scope-pick input{accent-color:var(--navy)}.finance-scope-pick__body strong{font-size:var(--fs-caption);color:var(--navy)}.finance-scope-pick__body span{font-size:var(--fs-caption);color:var(--muted)}.finance-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.6rem;display:grid}.finance-kpi{padding-inline-start:.9rem;position:relative}.finance-kpi:before{content:"";inset-inline-start:0;background:var(--border);border-radius:2px;width:3px;position:absolute;top:18%;bottom:18%}.finance-kpi--accent:before{background:var(--orange)}.finance-kpi__label{color:var(--muted);font-size:var(--fs-caption);font-weight:700}.finance-register__money strong{color:var(--navy);font-size:var(--fs-label)}.finance-filters{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);flex-wrap:wrap;align-items:flex-end;gap:.55rem;padding:.7rem .85rem;display:flex}.finance-filters label{gap:.2rem;display:grid}.finance-filters--grid label{flex:130px;min-width:130px}.finance-filters__label{font-size:var(--fs-caption);color:var(--muted);font-weight:700}.finance-filters select,.finance-filters input{border:1px solid var(--border);background:var(--white);min-height:34px;color:var(--navy);font-size:var(--fs-caption);border-radius:4px;padding:0 .6rem;font-family:inherit}.finance-filters__reset{margin-inline-start:auto}.finance-ledger__main strong{font-size:var(--fs-caption);color:var(--navy)}.reports-center__tabs{margin-bottom:.4rem}.finance-builder__chip input{accent-color:var(--navy)}.finance-builder__dates input{border:1px solid var(--border);background:var(--white);min-height:36px;color:var(--navy);font-size:var(--fs-caption);border-radius:4px;padding:0 .6rem;font-family:inherit}.finance-report-project__head>div{flex-wrap:wrap;align-items:baseline;gap:.45rem;display:flex}.finance-report-project__head strong{font-size:var(--fs-body-sm);color:var(--navy)}.finance-report-project__head .mono{color:var(--muted);font-size:var(--fs-caption)}.finance-report-block>h3{font-size:var(--fs-caption);color:var(--navy);margin:0 0 .55rem;font-weight:800}.report-empty-note{color:var(--muted);font-size:var(--fs-caption);margin:0}.report-section-picker{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);flex-wrap:wrap;align-items:center;gap:.45rem;padding:.55rem .75rem;display:flex}.report-section-picker__label{font-size:var(--fs-caption);color:var(--muted);margin-inline-end:.35rem;font-weight:800}.report-section-chip{border:1px solid var(--border);background:var(--white);color:var(--muted);font-size:var(--fs-caption);cursor:pointer;border-radius:999px;padding:.32rem .7rem;font-weight:700}.report-section-chip--on{border-color:var(--navy);background:var(--navy);color:var(--white)}.forced-change{background:var(--surface-soft);place-items:center;min-height:100dvh;padding:1.5rem 1rem;display:grid}.forced-change__card{border:1px solid var(--border);border-radius:var(--radius-md,8px);background:var(--white);width:min(430px,100%);box-shadow:var(--shadow-md,0 10px 30px #0f203b1f);gap:.9rem;padding:1.6rem 1.4rem;display:grid}.forced-change__logo{width:150px;height:auto;margin-inline:auto}.forced-change__title{font-size:var(--fs-body-lg);color:var(--navy);text-align:center;margin:0}.forced-change__lead{font-size:var(--fs-caption);color:var(--muted);text-align:center;margin:0;line-height:1.7}.forced-change__locked{color:#8a5a16;font-size:var(--fs-caption);text-align:center;background:#fdf3e7;border:1px solid #f2ddc0;border-radius:4px;padding:.55rem .75rem;font-weight:700}.forced-change__form{gap:.8rem;display:grid}.forced-change__submit{justify-content:center}.change-note{font-size:var(--fs-caption);color:var(--muted);text-align:center;margin:0}@media (max-width:1100px){.finance-filters{flex-direction:column;align-items:stretch}.finance-filters label,.finance-filters--grid label{min-width:0}.finance-filters__reset{margin-inline-start:0}}@media (max-width:700px){.finance-builder__dates input{flex:120px}.report-section-picker{flex-direction:column;align-items:flex-start}}.finance-portfolio-table .report-table th,.finance-portfolio-table .report-table td,.finance-ledger .report-table th,.finance-ledger .report-table td{overflow-wrap:normal}.finance-portfolio-table .report-table .num,.finance-ledger .report-table .num,.finance-report-block .report-table .num{white-space:nowrap}.finance-ledger-filters select,.finance-ledger-filters input{border:1px solid var(--border);background:var(--white);min-height:34px;color:var(--navy);font-size:var(--fs-caption);border-radius:4px;padding:0 .6rem;font-family:inherit}.finance-table-project strong{color:var(--navy)}.finance-table-project .mono{color:var(--muted);font-size:var(--fs-caption)}.section-kicker{width:fit-content;color:var(--orange);font-size:var(--fs-caption);text-transform:uppercase;align-items:center;gap:.4rem;font-weight:800;display:inline-flex}.section-kicker:before{content:"";background:currentColor;width:16px;height:2px}.ops-header h1{color:var(--navy);margin:0;font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.25}.ops-header p{max-width:760px;color:var(--muted);font-size:var(--fs-label);margin:0;line-height:1.65}.ops-toolbar{border-bottom:1px solid var(--border);background:var(--surface-soft);flex-wrap:wrap;align-items:center;gap:.55rem;padding:.7rem .85rem;display:flex}.ops-register__cell--identity strong{color:var(--navy);font-size:var(--fs-body-sm);overflow-wrap:anywhere;line-height:1.45;display:block}.ops-register__cell--identity .mono,.ops-register__cell--identity bdi{color:var(--muted);font-size:var(--fs-caption)}.ops-meta-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.55rem;margin:0;display:grid}.ops-meta-row div{border-inline-start:2px solid var(--border);gap:.1rem;padding-inline-start:.55rem;display:grid}.ops-meta-row dt{color:var(--muted);font-size:var(--fs-caption);font-weight:800}.ops-meta-row dd{color:var(--navy);font-size:var(--fs-caption);margin:0;font-weight:800}.ops-progress-cell{grid-template-columns:minmax(64px,1fr) auto;align-items:center;gap:.45rem;width:100%;min-width:104px;display:grid}.ops-panel__head h2{color:var(--navy);font-size:var(--fs-body-lg);margin:.1rem 0 0;line-height:1.3}.ops-panel__head p{max-width:68ch;color:var(--muted);font-size:var(--fs-caption);margin:.2rem 0 0;line-height:1.55}.ops-metric span{color:var(--muted);font-size:var(--fs-caption);font-weight:800}.ops-metric strong{color:var(--navy);font-size:var(--fs-title-sm);font-variant-numeric:tabular-nums}.ops-metric small{color:var(--muted);font-size:var(--fs-caption);line-height:1.4}.ops-timeline{display:grid}.ops-timeline__item{grid-template-columns:28px minmax(0,1fr);gap:.55rem;padding:.65rem .75rem;display:grid;position:relative}.ops-timeline__item+.ops-timeline__item{border-top:1px solid var(--border-soft)}.ops-timeline__marker{border:1px solid var(--border);background:var(--surface-soft);width:24px;height:24px;color:var(--navy);font-size:var(--fs-caption);border-radius:999px;place-items:center;font-weight:850;display:grid}.ops-timeline__body{min-width:0}.ops-timeline__title{flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;display:flex}.ops-timeline__title strong{color:var(--navy);font-size:var(--fs-label)}.ops-timeline__title span,.ops-timeline__body time,.ops-timeline__body small{color:var(--muted);font-size:var(--fs-caption)}.ops-timeline__body p{color:var(--text);font-size:var(--fs-caption);margin:.25rem 0 0;line-height:1.55}.ops-stage-path__copy strong{color:var(--navy);font-size:var(--fs-caption);line-height:1.35}.ops-stage-path__copy small{color:var(--muted);font-size:var(--fs-caption)}.ops-stage-path__item--current .ops-stage-path__copy small{color:#9a4b13;font-weight:850}.ops-form-section{border:1px solid var(--border);border-radius:4px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem .85rem;min-width:0;margin:0;padding:.85rem;display:grid}.ops-form-section legend{color:var(--navy);gap:.12rem;padding-inline:.35rem;font-weight:850;display:grid}.ops-form-section legend small{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.app-global-search input{min-height:34px}.ui-card,.project-setup-checklist,.site-operations-panel,.chat-shell{box-shadow:none;border-radius:4px}.users-kpi-strip{gap:.65rem}.design-search{background:var(--white);border-radius:3px;flex:300px;min-width:min(100%,320px)}.filter-select,.search-input{border-radius:3px;min-height:36px}.project-control-header__facts div{border:1px solid var(--border-soft);background:#fbfcfe;min-height:48px;padding:.45rem .55rem}.project-control-nav a,.finance-module-tabs button{border-radius:3px;min-height:34px}.overview-module-grid{gap:.65rem}.overview-module-card,.technical-register{box-shadow:none;border-radius:4px}.finance-summary-primary{grid-template-columns:minmax(220px,1.2fr) minmax(180px,.9fr) minmax(220px,1fr)}.num{font-variant-numeric:tabular-nums;text-align:end}.document-control-register__identity strong,.design-register__identity strong{font-size:var(--fs-label)}.chat-page .chat-shell{border:1px solid var(--border);background:var(--white)}.chat-page .chat-message-list{background:linear-gradient(180deg, #16234b09, transparent 140px), var(--surface-soft)}.chat-page .chat-bubble{border-radius:4px}.chat-page .chat-bubble--own{background:#eaf0f8}.chat-page .chat-composer__input{border-radius:3px}.client-create-next-step{border-radius:4px}.client-account-ledger,.team-account-ledger,.reports-category-workspace{margin-bottom:.85rem}.project-context-bar__facts div{border:1px solid var(--border-soft);background:#fbfcfe;border-radius:3px;gap:.08rem;min-width:0;padding:.34rem .45rem;display:grid}.project-context-bar__facts dt{color:var(--muted);font-size:var(--fs-caption);font-weight:850}.project-context-bar__facts dd{color:var(--navy);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:800;overflow:hidden}.dataops-workflow-path .ops-stage-path__copy strong,.finance-builder__steps .ops-stage-path__copy strong{font-size:var(--fs-caption)}@media (max-width:768px){.ops-header__actions a{justify-content:center;width:100%}.ops-toolbar{flex-direction:column;align-items:stretch}.project-context-bar__facts dd{white-space:normal}.admin-command-strip__actions>*{flex:auto}.finance-summary-primary{grid-template-columns:minmax(0,1fr)}}@media (max-width:420px){.app-bottom-nav a,.app-bottom-nav button{font-size:var(--fs-caption)}}}
