:root{--ink:#17211f;--muted:#6d7774;--green:#0f5c4d;--green2:#0b745e;--mint:#e9f5f1;--sand:#f4f0e8;--line:#e6e9e7;--paper:#fff;--bg:#f7f8f6;--orange:#c9762b;--blue:#3d6f9d;--shadow:0 14px 35px rgba(29,48,43,.09)}
*{box-sizing:border-box}html{font-family:"IBM Plex Sans Arabic",Tahoma,sans-serif;background:var(--bg);color:var(--ink)}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.eyebrow{color:var(--green2);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.muted{color:var(--muted)}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.login-brand{position:relative;overflow:hidden;padding:70px 8vw;color:#fff;background:linear-gradient(145deg,#123a34,#0a5d4d 65%,#08725a)}.login-brand:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-90px;bottom:-110px;box-shadow:0 0 0 60px rgba(255,255,255,.035),0 0 0 120px rgba(255,255,255,.025)}.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--green);display:grid;place-items:center;color:#fff;font-weight:700;font-size:20px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}.brand-mark.large{background:#fff;color:var(--green);width:54px;height:54px;border-radius:16px;margin-bottom:75px}.eyebrow.light{color:#a9d4c8}.login-brand h1{font-size:54px;line-height:1.32;margin:12px 0 22px;letter-spacing:-.03em}.login-brand h1 span{color:#f5bb73}.login-brand>p{font-size:18px;line-height:2;color:#d6ebe5;max-width:570px}.login-metrics{display:flex;gap:50px;margin-top:70px}.login-metrics div{display:grid}.login-metrics b{font-size:22px}.login-metrics span{font-size:12px;color:#a8c9c0;margin-top:6px}.grid-art{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;pointer-events:none}.login-panel{display:grid;place-items:center;padding:40px}.login-card{width:min(440px,100%)}.mobile-logo{display:none}.login-card h2{font-size:34px;margin:8px 0 4px}.login-card form{margin-top:34px;display:grid;gap:20px}.login-card label,.modal label{display:grid;gap:8px;font-size:13px;font-weight:600}.login-card input,.modal input,.modal select{border:1px solid #dfe4e1;border-radius:11px;padding:14px 16px;outline:none;background:#fff;transition:.2s}.login-card input:focus,.modal input:focus{border-color:var(--green2);box-shadow:0 0 0 3px rgba(11,116,94,.1)}.password-wrap{position:relative}.password-wrap input{width:100%;padding-left:45px}.password-wrap button{position:absolute;left:12px;top:50%;transform:translateY(-50%);border:0;background:none;color:#8b9491}.form-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.form-row a{color:var(--green2);text-decoration:none}.check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:7px!important;font-weight:400!important}.check input{accent-color:var(--green)}.primary{border:0;border-radius:10px;background:var(--green);color:#fff;padding:11px 17px;font-weight:600;box-shadow:0 4px 12px rgba(15,92,77,.17)}.primary:hover{background:#0b4e42}.primary.full{padding:14px;display:flex;justify-content:center;gap:14px}.demo-note{margin-top:26px;background:var(--mint);border-radius:12px;padding:14px;display:flex;gap:12px;color:var(--green)}.demo-note>span{font-size:20px}.demo-note div{display:grid}.demo-note small{color:#688079;margin-top:3px}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:fixed;right:0;top:0;width:260px;height:100vh;background:#102f2a;color:#d9e6e2;padding:24px 16px 14px;z-index:20;display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:11px;padding:0 8px 25px;border-bottom:1px solid rgba(255,255,255,.08)}.logo .brand-mark{background:#fff;color:var(--green)}.logo div:last-child{display:grid}.logo strong{font-size:19px}.logo small{color:#7ea49a;font-size:11px}.sidebar nav{display:grid;gap:4px;padding-top:19px;overflow:auto}.sidebar nav a{color:#b6ccc6;text-decoration:none;padding:10px 12px;border-radius:9px;display:flex;align-items:center;gap:11px;font-size:13px;transition:.15s}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}.sidebar nav a.active{box-shadow:inset -3px 0 #f0b96c}.sidebar nav a>span{font-size:17px;width:20px;text-align:center}.sidebar nav em{font-style:normal;margin-right:auto;background:rgba(255,255,255,.1);border-radius:99px;min-width:23px;text-align:center;font-size:10px;padding:2px}.nav-label{color:#64877e;font-size:10px;font-weight:700;padding:18px 12px 5px}.sidebar-help{margin-top:auto;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.04));padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:13px}.sidebar-help>span{color:#f1b86d}.sidebar-help b{font-size:13px;margin-right:6px}.sidebar-help p{color:#8dafA6;font-size:11px;margin:7px 0 10px}.sidebar-help button{width:100%;border:0;border-radius:8px;background:#fff;color:var(--green);font-size:11px;padding:7px;font-weight:700}.user-card{display:flex;align-items:center;gap:9px;padding:13px 5px 0;margin-top:8px;border-top:1px solid rgba(255,255,255,.08)}.avatar{width:33px;height:33px;border-radius:9px;background:#dca35a;color:#fff;display:grid;place-items:center;font-size:11px}.user-card>div:nth-child(2){display:grid}.user-card b{font-size:11px}.user-card small{font-size:9px;color:#78988f}.user-card button{margin-right:auto;border:0;background:transparent;color:#9ab6ae}.app>main{grid-column:2;min-width:0}.topbar{height:67px;position:sticky;top:0;z-index:12;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.crumb{display:flex;gap:11px;font-size:12px}.crumb span{color:#909895}.crumb b{color:#ccd1cf}.header-actions{display:flex;gap:9px;align-items:center}.icon-btn,.outline,.more,.stage-menu,.chevron{border:1px solid var(--line);background:#fff;color:#52605c;border-radius:9px;padding:9px 13px}.icon-btn{width:37px;height:37px;padding:0}.notification{position:relative}.notification i{position:absolute;width:6px;height:6px;border-radius:50%;background:#e66b55;right:8px;top:7px}.outline{font-weight:600;color:#344641}.menu{display:none}.workspace{padding:28px clamp(20px,3vw,44px) 60px;max-width:1450px;margin:auto}.template-head{display:flex;justify-content:space-between;align-items:flex-start}.title-row{display:flex;gap:18px}.template-icon{width:62px;height:62px;border-radius:17px;background:#e6f2ee;color:var(--green);display:grid;place-items:center;font-size:28px}.meta-row{display:flex;gap:8px}.status,.code{font-size:10px;border-radius:99px;padding:4px 9px;background:#e9f4ee;color:#37815b;font-weight:600}.status i{display:inline-block;width:5px;height:5px;background:#4a9e68;border-radius:50%;margin-left:4px}.code{background:#eef0ef;color:#717b78;direction:ltr}.template-head h1{font-size:27px;margin:9px 0 3px}.template-head p{margin:0;color:var(--muted);font-size:13px}.more{letter-spacing:2px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:25px 0}.stats-grid article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px;display:flex;align-items:center;gap:13px}.stat-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;font-size:19px}.stat-icon.blue{background:#edf4fa;color:var(--blue)}.stat-icon.purple{background:#f2eef9;color:#7561a0}.stat-icon.orange{background:#fcf1e7;color:var(--orange)}.stat-icon.green{background:#e9f5f1;color:var(--green2)}.stats-grid article>div:last-child{display:grid}.stats-grid small{color:#7e8784;font-size:10px}.stats-grid b{font-size:20px}.stats-grid b span{font-size:10px;color:#909895;font-weight:500}.smart-strip{display:flex;align-items:center;gap:13px;background:linear-gradient(95deg,#f1f8f5,#f8fbfa);border:1px solid #d9ebe5;border-radius:13px;padding:13px 16px;margin-bottom:24px}.spark{width:34px;height:34px;border-radius:10px;background:#0d6b57;color:#fff;display:grid;place-items:center}.smart-strip>div:nth-child(2){flex:1}.smart-strip b{font-size:11px;color:var(--green2)}.smart-strip p{margin:2px 0 0;font-size:12px;color:#61706b}.accept,.dismiss{border:0;background:transparent;font-size:11px;font-weight:700;color:var(--green2)}.accept{background:#fff;border:1px solid #cae1da;border-radius:8px;padding:8px 11px}.dismiss{color:#858d8a}.floors-panel{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.section-top{padding:22px 24px 16px;display:flex;justify-content:space-between;align-items:center}.section-top h2{font-size:18px;margin:4px 0}.floor-tabs{padding:0 24px;border-bottom:1px solid var(--line);display:flex;gap:3px}.floor-tabs button{border:0;background:transparent;padding:10px 23px 13px;display:grid;color:#89908e;border-bottom:2px solid transparent}.floor-tabs button span{font-size:13px;font-weight:600}.floor-tabs button small{font-size:9px;margin-top:3px}.floor-tabs button.active{color:var(--green);border-bottom-color:var(--green)}.floor-content{position:relative;padding:22px 24px 27px}.timeline-line{position:absolute;right:45px;top:52px;bottom:51px;border-right:1px dashed #ced6d2}.stage{position:relative;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fff}.stage.expanded{border-color:#bcd9d1;box-shadow:0 7px 20px rgba(22,74,63,.06)}.stage-head{min-height:77px;display:grid;grid-template-columns:44px minmax(270px,1fr) 180px 30px 28px;gap:12px;align-items:center;padding:11px 16px}.stage-index{width:33px;height:33px;border:2px solid #d6ddda;border-radius:50%;background:#fff;display:grid;place-items:center;z-index:2;color:#808987;font-size:12px;font-weight:700}.stage-index.done{background:var(--green);border-color:var(--green);color:#fff}.stage-title>div{display:flex;align-items:center;gap:8px}.stage-title h3{font-size:14px;margin:0}.stage-title p{font-size:10px;color:#8b9491;margin:4px 0}.required{background:#f3eee5;color:#98672d;border-radius:99px;padding:2px 7px;font-size:8px}.stage-progress{display:grid;grid-template-columns:1fr auto;gap:4px 8px}.stage-progress span,.stage-progress b{font-size:9px;color:#7e8884}.stage-progress div{grid-column:1/3;height:4px;border-radius:99px;background:#edf0ee;overflow:hidden}.stage-progress i{height:100%;display:block;background:var(--green2);border-radius:99px}.stage-menu,.chevron{border:0;background:transparent;padding:5px}.stage-body{display:none;border-top:1px solid var(--line);padding:0 14px 14px}.stage.expanded .stage-body{display:block}.task-table-head,.task-row{display:grid;grid-template-columns:2.2fr .55fr .85fr 1.25fr .8fr 18px;gap:10px;align-items:center}.task-table-head{color:#969e9b;font-size:9px;padding:10px 8px}.task-row{width:100%;border:1px solid transparent;background:#fff;padding:10px 8px;border-radius:8px;color:#58635f;text-align:right;font-size:10px}.task-row:hover,.task-row.selected{border-color:#dbe9e5;background:#f7fbfa}.task-name{display:flex!important;align-items:center;gap:10px;color:var(--ink)}.task-name>i{font-style:normal;background:#edf1ef;border-radius:7px;padding:6px;color:#71807b}.task-name>span{display:grid}.task-name small,.task-row small{font-size:8px;color:#939b98}.mini-stack{display:inline-flex;direction:ltr;margin-left:5px}.mini-stack i{font-style:normal;width:20px;height:20px;border:2px solid #fff;border-radius:50%;background:#dae8e4;color:#426d62;display:grid;place-items:center;margin-left:-5px;font-size:8px}.company-dot{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#f4e3c9;color:#9a642b;margin-left:5px}.company-dot.teal{background:#dceee9;color:#337462}.check-count{display:block;color:#45935f}.check-count.warn{color:#d38236}.add-task{width:100%;border:1px dashed #cbd6d2;background:#fbfcfb;color:var(--green2);border-radius:8px;padding:9px;margin-top:6px;font-size:10px;font-weight:600}.empty-stage{padding:15px;color:#7b8682;font-size:11px}.add-stage{width:100%;border:1px dashed #b9cbc5;background:#f8fbfa;border-radius:10px;padding:12px;color:var(--green);font-weight:600;font-size:11px}.task-drawer{position:fixed;top:0;left:0;width:min(470px,100vw);height:100vh;background:#fff;z-index:50;box-shadow:18px 0 50px rgba(12,34,29,.18);transform:translateX(-105%);transition:.28s ease;display:flex;flex-direction:column}.task-drawer.open{transform:translateX(0)}.drawer-overlay{position:fixed;inset:0;background:rgba(10,31,27,.25);z-index:40;opacity:0;pointer-events:none;transition:.25s}.drawer-overlay.show{opacity:1;pointer-events:auto}.drawer-head{padding:22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.drawer-head small{color:#8b9491}.drawer-head h2{font-size:20px;margin:4px 0}.drawer-head button,.modal-close{border:0;background:#f0f2f1;border-radius:9px;width:34px;height:34px;font-size:22px}.drawer-body{padding:18px 22px;overflow:auto;flex:1}.drawer-code{display:grid;grid-template-columns:44px 1fr 1fr;align-items:center;background:#f6f8f7;border-radius:11px;padding:11px;gap:12px}.drawer-code>span{background:var(--green);color:#fff;border-radius:8px;padding:8px;text-align:center;font-size:11px}.drawer-code div{display:grid;border-right:1px solid #e1e5e3;padding-right:12px}.drawer-code small,.material small,.contractor small{font-size:9px;color:#86908c}.drawer-code b{font-size:11px}.info-block{padding:18px 0;border-bottom:1px solid var(--line)}.block-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.block-head h3{font-size:13px;margin:0}.block-head h3 span{font-size:8px;color:#8e6b37;background:#f7f0e5;border-radius:99px;padding:3px 6px}.block-head button{border:0;background:transparent;color:var(--green2);font-size:10px}.block-head>b{font-size:10px;color:#4e9b69}.material{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;padding:8px 0}.mat-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center}.mat-icon.steel{background:#e9f0f3;color:#527184}.mat-icon.concrete{background:#efeeea;color:#78766f}.mat-icon.wood{background:#f6eadd;color:#95693c}.material div{display:grid}.material b{font-size:11px}.material em{font-style:normal;color:#65736e;font-size:8px;background:#f4f6f5;padding:4px 7px;border-radius:5px}.contractor{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px}.company-logo{width:39px;height:39px;border-radius:10px;background:#e8be83;color:#70451c;display:grid;place-items:center;font-weight:700}.contractor div:nth-child(2){display:grid}.contractor b{font-size:11px}.contractor>span{font-size:8px;color:#3d8960}.checklist{display:grid;gap:6px}.checklist label{display:grid;grid-template-columns:0 20px 1fr;gap:8px;align-items:start;padding:7px;border-radius:8px}.checklist label:hover{background:#f7f9f8}.checklist input{opacity:0}.checklist label>span{width:17px;height:17px;border-radius:5px;background:var(--green);position:relative}.checklist label>span:after{content:"✓";color:#fff;position:absolute;font-size:10px;right:4px;top:0}.checklist label>div{display:grid}.checklist b{font-size:10px}.checklist small{font-size:8px;color:#89928f}.show-all{border:0;background:transparent;color:var(--green2);font-size:9px;margin-top:8px}.drawer-footer{padding:13px 22px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.modal-overlay{position:fixed;inset:0;background:rgba(9,29,25,.48);z-index:70;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:.2s}.modal-overlay.show{opacity:1;pointer-events:auto}.modal{background:#fff;border-radius:18px;width:min(530px,100%);padding:28px;position:relative;box-shadow:var(--shadow)}.modal-close{position:absolute;left:20px;top:20px}.modal-icon{width:45px;height:45px;border-radius:12px;background:var(--mint);color:var(--green);display:grid;place-items:center;font-size:20px;margin-bottom:15px}.modal h2{font-size:24px;margin:5px 0}.modal>p{color:var(--muted);font-size:12px;margin-bottom:22px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.modal-summary{display:flex;justify-content:space-between;background:#f5f8f7;border-radius:10px;margin-top:16px;padding:12px;font-size:10px}.modal-summary span{display:grid}.modal-summary b{font-size:12px;margin-top:3px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.toast{position:fixed;left:25px;bottom:25px;background:#183b34;color:#fff;border-radius:12px;padding:13px 17px;z-index:90;display:flex;gap:11px;align-items:center;box-shadow:var(--shadow);transform:translateY(130px);transition:.3s}.toast.show{transform:translateY(0)}.toast>span{width:28px;height:28px;border-radius:50%;background:#49a172;display:grid;place-items:center}.toast div{display:grid}.toast b{font-size:11px}.toast small{font-size:9px;color:#a9c0ba}
@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.stage-head{grid-template-columns:44px 1fr 130px 28px}.stage-menu{display:none}.task-table-head,.task-row{grid-template-columns:1.7fr .6fr 1fr .9fr 18px}.task-table-head span:nth-child(3),.task-row>span:nth-child(3){display:none}}
@media(max-width:780px){.login-shell{grid-template-columns:1fr}.login-brand{display:none}.login-panel{padding:26px}.mobile-logo{display:flex;align-items:center;gap:10px;margin-bottom:55px}.app{display:block}.sidebar{transform:translateX(105%);transition:.25s}.sidebar.open{transform:translateX(0)}.app>main{width:100%}.menu{display:inline-grid;place-items:center}.crumb{display:none}.header-actions .icon-btn,.header-actions .outline{display:none}.topbar{padding:0 16px}.workspace{padding:20px 13px 45px}.template-icon{width:48px;height:48px}.template-head h1{font-size:21px}.template-head p{font-size:11px}.stats-grid{gap:8px}.stats-grid article{padding:12px}.smart-strip{align-items:flex-start;flex-wrap:wrap}.smart-strip>div:nth-child(2){min-width:calc(100% - 52px)}.floor-tabs{overflow:auto;padding:0 12px}.floor-tabs button{min-width:140px}.section-top,.floor-content{padding-right:14px;padding-left:14px}.stage-head{grid-template-columns:38px 1fr 25px;padding:9px}.stage-progress,.stage-menu{display:none}.task-table-head{display:none}.task-row{grid-template-columns:1fr auto 18px;padding:11px 5px}.task-row>span:nth-child(2),.task-row>span:nth-child(3),.task-row>span:nth-child(4){display:none}.task-row>span:nth-child(5){display:block}.timeline-line{right:32px}.modal-grid{grid-template-columns:1fr}.login-card h2{font-size:29px}}
@media(max-width:430px){.stats-grid{grid-template-columns:1fr 1fr}.stat-icon{width:34px;height:34px}.stats-grid b{font-size:16px}.template-head .more{display:none}.title-row{gap:11px}.header-actions .primary{padding:9px 11px;font-size:11px}}

/* Task scheduling dependencies */
.dependency-list{display:grid;gap:7px}.empty-dependency{padding:12px;text-align:center;border:1px dashed #cddad6;border-radius:8px;color:#7c8985;font-size:9px}
.task-table-head,.task-row{grid-template-columns:1.95fr .48fr .7fr .78fr 1.08fr .7fr 18px}
.dependency-pill{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;min-width:34px;padding:3px 7px;border-radius:6px;font-size:8px;direction:ltr;letter-spacing:.04em}.dependency-pill.fs{background:#e7f2ee;color:#176451}.dependency-pill.ss{background:#edf0fa;color:#5264a1}
.dependency-block{background:linear-gradient(145deg,#fbfdfc,#f5faf8);margin:14px -8px 0;padding:16px 12px!important;border:1px solid #dcebe6!important;border-radius:12px}.dependency-chain{display:grid;grid-template-columns:1fr 62px 1fr 24px;align-items:center;gap:8px}.dep-task{display:grid;border:1px solid #dde6e3;border-radius:9px;background:#fff;padding:9px}.dep-task.current{border-color:#9fc8bd;background:#eff8f5}.dep-task small{font-size:8px;color:#8a9490}.dep-task b{font-size:10px;margin-top:2px}.dep-arrow{display:grid;text-align:center;position:relative;color:var(--green)}.dep-arrow:before,.dep-arrow:after{content:"";position:absolute;top:9px;width:17px;border-top:1px solid #9abbb2}.dep-arrow:before{right:0}.dep-arrow:after{left:0}.dep-arrow b{position:relative;z-index:1;margin:auto;background:#dceee9;border-radius:5px;padding:2px 5px;font-size:8px;direction:ltr}.dep-arrow span{font-size:7px;color:#8a9490;margin-top:3px}.remove-dep{border:0;background:#f1f3f2;color:#9a6a62;border-radius:6px;width:23px;height:23px}
.dependency-builder{display:none;margin-top:12px;border-top:1px dashed #c8d8d3;padding-top:13px}.dependency-builder.open{display:block}.dependency-builder label{display:grid;gap:6px;font-size:9px;color:#68756f;font-weight:600}.dependency-builder select,.dependency-builder input{width:100%;border:1px solid #d8e2df;border-radius:8px;background:#fff;padding:9px;color:#263d36;outline:none;font-size:10px}.relation-types{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0}.relation-types button{border:1px solid #dce4e1;background:#fff;border-radius:8px;padding:7px 4px;display:grid;color:#6f7d78}.relation-types button.active{border-color:var(--green);background:#eaf5f1;color:var(--green)}.relation-types b{font-size:11px;direction:ltr}.relation-types small{font-size:7px;margin-top:2px}.dependency-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.lag-input{position:relative}.lag-input input{padding-left:35px}.lag-input span{position:absolute;left:9px;top:8px;font-size:8px;color:#7c8984}.relation-help{display:grid;background:#f0f4f3;border-radius:8px;padding:9px;margin-top:10px}.relation-help b{font-size:9px}.relation-help span{font-size:8px;color:#74807c;margin-top:2px}.save-dependency{width:100%;margin-top:10px;padding:9px;font-size:10px}.dependency-guide{border:0;background:transparent;color:var(--green2);font-size:8px;padding:8px 0 0;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1050px){.task-table-head,.task-row{grid-template-columns:1.65fr .55fr .78fr 1fr .8fr 18px}.task-table-head span:nth-child(3),.task-row>span:nth-child(3){display:block}.task-table-head span:nth-child(4),.task-row>span:nth-child(4){display:none}}
@media(max-width:780px){.task-row{grid-template-columns:1fr auto auto 18px}.task-row>span:nth-child(3){display:block}.task-row>span:nth-child(4),.task-row>span:nth-child(5){display:none}.dependency-chain{grid-template-columns:1fr 50px 1fr}.remove-dep{display:none}.relation-types{grid-template-columns:1fr 1fr}}

/* Saudi-code inspection cards and contractual scope */
.floor-content{transition:opacity .18s ease}.task-drawer{width:min(560px,100vw)}
.responsibility-chip,.scope-chip{display:inline-block;border-radius:6px;padding:4px 7px;font-size:8px;white-space:nowrap}.responsibility-chip{background:#f7ecdc;color:#8b5b25}.scope-chip{background:#eef4f2;color:#497067}
.scope-badge{font-size:8px;font-weight:700;color:#186653;background:#e5f3ee;border-radius:99px;padding:4px 8px}.supply-scope{background:#f8fbfa;margin:12px -8px 0;padding:16px 12px!important;border:1px solid #dcebe6!important;border-radius:12px}.supply-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.supply-columns>div{display:grid;align-content:start;gap:6px;background:#fff;border:1px solid #e2e9e6;border-radius:10px;padding:11px}.supply-columns small{font-size:8px;color:#70817b;font-weight:700}.supply-columns b{font-size:10px;line-height:1.6}.supply-columns em{display:block;font-style:normal;font-size:8px;color:#0b745e;font-weight:500}
.code-notice{display:grid;gap:3px;background:#fff8ea;border:1px solid #efd9aa;border-radius:9px;padding:10px;margin-bottom:10px}.code-notice b{font-size:9px;color:#885d1f}.code-notice span{font-size:8px;line-height:1.7;color:#766548}.checklist.detailed{display:grid;gap:9px}.check-card{border:1px solid #e2e8e5;border-radius:11px;background:#fff;overflow:hidden}.check-card.critical{border-color:#e9c0ae;box-shadow:inset -3px 0 #c97045}.check-main{display:grid;grid-template-columns:18px 1fr;gap:9px;padding:11px}.check-main>input{position:absolute;opacity:0;pointer-events:none}.check-box{width:18px;height:18px;border:1.5px solid #b7c6c1;border-radius:5px;cursor:pointer;position:relative;margin-top:1px}.check-main>input:checked+.check-box{background:var(--green);border-color:var(--green)}.check-main>input:checked+.check-box:after{content:'✓';position:absolute;color:#fff;font-size:11px;right:3px;top:-1px}.check-body{display:grid;gap:4px}.check-title{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.check-title b{font-size:11px}.critical-badge{font-size:7px;color:#a44d2e;background:#fff0ea;padding:3px 6px;border-radius:99px;font-weight:700}.code-ref{direction:ltr;text-align:right;width:max-content;max-width:100%;font-size:8px;color:#246f5e;background:#eaf5f1;border-radius:5px;padding:3px 6px}.check-simple{font-size:9px;line-height:1.7;color:#66736f;margin:2px 0 0}.check-controls{border-top:1px solid #edf0ef;background:#fafcfb}.check-controls summary{list-style:none;padding:8px 11px;color:#176753;font-size:8px;font-weight:700;cursor:pointer}.check-controls summary:after{content:'＋';float:left}.check-controls[open] summary:after{content:'−'}.inspection-method,.acceptance{display:grid;gap:3px;padding:8px 11px;border-top:1px dashed #e2e8e5}.inspection-method b,.acceptance b{font-size:8px}.inspection-method span,.acceptance span{font-size:8px;line-height:1.75;color:#66736f}.acceptance{background:#f2f8f5}.acceptance b{color:#176753}
@media(max-width:780px){.supply-columns{grid-template-columns:1fr}.task-drawer{width:100vw}.check-card{border-radius:9px}}

/* Supplier resource directory */
.directory-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.directory-head h1{font-size:30px;margin:6px 0 3px}.directory-head p{margin:0;color:var(--muted);font-size:12px}.directory-actions{display:flex;gap:9px}.supplier-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:24px 0 14px}.supplier-stats article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px;display:flex;align-items:center;gap:12px}.supplier-stats article>div:last-child{display:grid}.supplier-stats small{color:#7e8784;font-size:9px}.supplier-stats b{font-size:22px;line-height:1.25}.supplier-stats article>div:last-child>span{font-size:8px;color:#919a97}.supplier-alert{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;background:#fff8eb;border:1px solid #efddb7;border-radius:12px;padding:12px 15px;margin-bottom:16px}.alert-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#f6dca8;color:#8c5c16;font-weight:700}.supplier-alert div:nth-child(2){display:grid}.supplier-alert b{font-size:11px}.supplier-alert p{margin:2px 0 0;color:#806e4f;font-size:9px}.supplier-alert button{border:1px solid #e5c98e;background:#fff;border-radius:8px;padding:7px 10px;color:#8b621e;font-size:9px;font-weight:700}.directory-panel{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.directory-toolbar{display:grid;grid-template-columns:minmax(270px,1.5fr) repeat(3,minmax(130px,.7fr)) auto;gap:9px;padding:16px;border-bottom:1px solid var(--line)}.supplier-search{position:relative}.supplier-search span{position:absolute;right:12px;top:9px;color:#75817d}.supplier-search input,.directory-toolbar select{width:100%;height:38px;border:1px solid #dfe5e2;border-radius:9px;background:#fff;color:#34443f;padding:0 12px;font-size:10px;outline:none}.supplier-search input{padding-right:36px}.supplier-search input:focus,.directory-toolbar select:focus{border-color:#79ad9f;box-shadow:0 0 0 3px rgba(11,116,94,.08)}.clear-filters{border:0;background:transparent;color:var(--green2);font-size:9px;font-weight:700}.directory-result{display:flex;justify-content:space-between;align-items:center;padding:13px 17px;border-bottom:1px solid #eef1f0}.directory-result b{font-size:11px}.directory-result span{font-size:8px;color:#8a9390}.supplier-table-wrap{overflow:auto}.supplier-table-head,.supplier-row{display:grid;grid-template-columns:1.45fr 1.35fr .55fr .52fr .7fr .72fr 20px;gap:12px;align-items:center;min-width:900px}.supplier-table-head{padding:10px 16px;color:#909996;font-size:8px;background:#fafbfa}.supplier-row{width:100%;border:0;border-top:1px solid #eff1f0;background:#fff;padding:12px 16px;text-align:right;color:#44524e;transition:.15s}.supplier-row:hover{background:#f7fbfa}.supplier-identity{display:flex;align-items:center;gap:10px}.supplier-logo{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#e5f1ed;color:#145e4e;font-size:11px;font-weight:700;flex:0 0 auto}.supplier-identity>span{display:grid}.supplier-identity b{font-size:11px;color:var(--ink)}.supplier-identity small,.supplier-category small,.supplier-row>span small{font-size:8px;color:#919a97}.supplier-category{display:grid}.supplier-category b{font-size:9px}.supplier-category small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.rating-cell{display:flex;align-items:center;gap:4px;direction:ltr;justify-content:flex-end;font-size:10px}.rating-cell i{font-style:normal;color:#dda149}.status-badge,.doc-badge{display:inline-flex;align-items:center;width:max-content;border-radius:99px;padding:4px 8px;font-size:8px;font-weight:700}.status-qualified{background:#e8f5ef;color:#2d7a59}.status-conditional{background:#fff3df;color:#946323}.status-review{background:#edf2f8;color:#506f91}.status-suspended{background:#faeaea;color:#a34f4f}.doc-note{display:block;font-size:7px;color:#b07228;margin-top:3px}.supplier-empty{padding:55px;display:grid;justify-items:center;gap:6px;color:#8b9491}.supplier-empty>span{font-size:28px}.supplier-empty b{font-size:12px}.supplier-empty small{font-size:9px}.directory-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--line);font-size:8px;color:#909895}.directory-footer div{display:flex;align-items:center;gap:7px}.directory-footer button,.directory-footer b{border:1px solid #e0e5e3;background:#fff;border-radius:6px;padding:5px 8px;color:#7b8581}.directory-footer b{background:var(--green);color:#fff;border-color:var(--green)}
.supplier-drawer{position:fixed;top:0;left:0;width:min(570px,100vw);height:100vh;background:#fff;z-index:50;box-shadow:18px 0 50px rgba(12,34,29,.18);transform:translateX(-105%);transition:.28s ease;display:flex;flex-direction:column}.supplier-drawer.open{transform:translateX(0)}.supplier-drawer-body{padding:18px 22px;overflow:auto;flex:1}.supplier-profile{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.supplier-profile .supplier-logo{width:56px;height:56px;border-radius:15px;font-size:15px}.supplier-profile>div:nth-child(2){display:grid}.supplier-profile h3{font-size:16px;margin:0}.supplier-profile p{font-size:9px;color:#7c8884;margin:4px 0}.supplier-profile .status-badge{justify-self:end}.supplier-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.supplier-kpis>div{background:#f6f9f8;border-radius:9px;padding:10px;display:grid}.supplier-kpis small{font-size:7px;color:#84908c}.supplier-kpis b{font-size:11px;margin-top:3px}.supplier-section{padding:15px 0;border-top:1px solid var(--line)}.supplier-section:first-of-type{border-top:0}.supplier-section h4{font-size:11px;margin:0 0 10px}.contact-grid,.qualification-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.contact-grid>div,.qualification-grid>div{border:1px solid #e4e9e7;border-radius:9px;padding:9px;display:grid}.contact-grid small,.qualification-grid small{font-size:7px;color:#8b9591}.contact-grid b,.qualification-grid b{font-size:9px;margin-top:2px}.material-tags{display:flex;flex-wrap:wrap;gap:6px}.material-tags span{font-size:8px;background:#eef5f2;color:#376c5f;padding:5px 8px;border-radius:6px}.performance-bars{display:grid;gap:10px}.performance-line{display:grid;grid-template-columns:90px 1fr 34px;align-items:center;gap:8px;font-size:8px}.performance-line>div{height:5px;background:#edf0ef;border-radius:99px;overflow:hidden}.performance-line i{display:block;height:100%;background:var(--green2)}.performance-line b{text-align:left;font-size:8px}.supplier-timeline{display:grid;gap:8px}.supplier-timeline div{display:grid;grid-template-columns:10px 1fr;gap:8px}.supplier-timeline i{width:7px;height:7px;border-radius:50%;background:#6eaa98;margin-top:5px}.supplier-timeline span{font-size:8px;line-height:1.65;color:#697671}.full-label{margin-top:12px}.supplier-modal{width:min(650px,100%)}
@media(max-width:1100px){.supplier-stats{grid-template-columns:repeat(2,1fr)}.directory-toolbar{grid-template-columns:1fr 1fr 1fr}.supplier-search{grid-column:1/4}.clear-filters{justify-self:start}}
@media(max-width:780px){.directory-head{align-items:flex-start}.directory-actions .outline{display:none}.supplier-stats{gap:8px}.supplier-alert{grid-template-columns:34px 1fr}.supplier-alert button{grid-column:2}.directory-toolbar{grid-template-columns:1fr 1fr}.supplier-search{grid-column:1/3}.directory-result span{display:none}.supplier-drawer{width:100vw}.supplier-profile{grid-template-columns:50px 1fr}.supplier-profile .supplier-logo{width:48px;height:48px}.supplier-profile .status-badge{grid-column:2}.supplier-kpis{grid-template-columns:1fr 1fr}}

/* Configurable supplier activities */
.activity-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:3px}.activity-tags span,.activity-chip{font-size:7px;background:#e9f4f0;color:#276758;padding:4px 7px;border-radius:99px;font-weight:600}.activity-tags span.inactive,.activity-chip.inactive{background:#f0f1f1;color:#7e8885;text-decoration:line-through}.activity-picker-field{border:1px solid #dfe5e2;border-radius:11px;margin:16px 0 0;padding:12px}.activity-picker-field legend{font-size:10px;font-weight:700;padding:0 6px}.activity-picker-field legend span{font-size:7px;color:#64736e;background:#eef2f0;border-radius:99px;padding:3px 6px;margin-right:5px}.activity-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:190px;overflow:auto}.activity-option{display:grid!important;grid-template-columns:18px 1fr;align-items:center!important;gap:7px!important;border:1px solid #e4e9e7;border-radius:8px;padding:8px!important;font-weight:500!important}.activity-option:has(input:checked){background:#edf7f3;border-color:#8ebfaf}.activity-option input{width:15px;height:15px;accent-color:var(--green)}.activity-option span{display:grid}.activity-option b{font-size:9px}.activity-option small{font-size:7px;color:#87928e}.field-error{display:block;margin-top:8px;color:#ad4c43;font-size:8px}.settings-layout{display:grid;grid-template-columns:210px 1fr;gap:16px;margin-top:24px}.settings-menu,.settings-content{background:#fff;border:1px solid var(--line);border-radius:14px}.settings-menu{padding:15px;height:max-content;display:grid;gap:4px}.settings-menu>b{font-size:11px;padding:5px 8px 12px}.settings-menu button{border:0;background:transparent;border-radius:8px;padding:10px;text-align:right;font-size:10px;color:#63706c;display:flex;justify-content:space-between}.settings-menu button.active{background:#eaf5f1;color:var(--green);font-weight:700}.settings-menu button span{background:#fff;border-radius:99px;padding:1px 6px;font-size:8px}.settings-content{overflow:hidden}.activity-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px;border-bottom:1px solid var(--line)}.activity-summary article{background:#f6f9f8;border-radius:10px;padding:12px;display:grid}.activity-summary small{font-size:8px;color:#7f8b87}.activity-summary b{font-size:20px;margin-top:2px}.activity-note{margin:14px 16px 0;border:1px solid #cfe4dd;background:#f0f8f5;border-radius:10px;padding:10px;display:grid;grid-template-columns:25px 1fr;gap:8px}.activity-note>span{width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:10px}.activity-note p{margin:0;font-size:8px;line-height:1.7;color:#5d6f69}.activity-note b{color:#215f50}.activity-toolbar{display:grid;grid-template-columns:1fr 180px 150px;gap:9px;padding:14px 16px}.activity-toolbar select{border:1px solid #dfe5e2;border-radius:9px;background:#fff;padding:0 10px;font-size:9px}.activity-table{border-top:1px solid var(--line)}.activity-table-head,.activity-row{display:grid;grid-template-columns:1.5fr 1fr .45fr .55fr 26px;gap:12px;align-items:center}.activity-table-head{background:#fafbfa;padding:9px 16px;font-size:8px;color:#909996}.activity-row{width:100%;border:0;border-top:1px solid #eff1f0;background:#fff;padding:11px 16px;text-align:right}.activity-row:hover{background:#f8fbfa}.activity-name{display:flex;align-items:center;gap:9px}.activity-name>i{font-style:normal;color:#a4ada9}.activity-name>span{display:grid}.activity-name b{font-size:10px}.activity-name small,.activity-row>span{font-size:8px;color:#7b8883}.activity-linked{font-size:9px!important;color:#354640!important}.activity-toggle{display:flex;align-items:center;gap:6px}.toggle-control{width:30px;height:17px;border-radius:99px;background:#ccd4d1;position:relative}.toggle-control:after{content:'';position:absolute;width:13px;height:13px;border-radius:50%;background:#fff;top:2px;right:2px;transition:.2s}.activity-toggle.active .toggle-control{background:#4a9a7d}.activity-toggle.active .toggle-control:after{right:15px}.activity-toggle small{font-size:7px}.activity-more{border:0;background:transparent;color:#78837f}.supplier-activity-section{background:#f8fbfa;border:1px solid #e1ebe7;border-radius:10px;padding:11px!important;margin-top:12px}.supplier-activity-section h4{display:flex;justify-content:space-between}.supplier-activity-section h4 span{font-size:7px;color:#467568;background:#fff;border-radius:99px;padding:3px 6px}
@media(max-width:900px){.settings-layout{grid-template-columns:1fr}.settings-menu{display:flex;overflow:auto}.settings-menu>b{display:none}.settings-menu button{white-space:nowrap}.activity-toolbar{grid-template-columns:1fr 1fr}.activity-toolbar .supplier-search{grid-column:1/3}}
@media(max-width:600px){.activity-picker{grid-template-columns:1fr}.activity-summary{grid-template-columns:1fr 1fr 1fr}.activity-table-head,.activity-row{grid-template-columns:1.3fr .7fr .5fr 24px}.activity-table-head span:nth-child(2),.activity-row>span:nth-child(2){display:none}}

/* Materials library and centralized measurement units */
.materials-workspace{max-width:1450px}.material-stats{margin:22px 0}.material-toolbar{grid-template-columns:minmax(280px,1fr) 210px 210px}.material-price-note{display:flex;gap:11px;align-items:center;margin:0 20px 16px;padding:12px 14px;border:1px solid #dbeae5;background:#f3f9f7;border-radius:11px;color:#557068}.material-price-note>span{width:24px;height:24px;border-radius:50%;background:#2f7362;color:#fff;display:grid;place-items:center;font-size:11px;flex:0 0 auto}.material-price-note p{margin:0;font-size:10px}.material-groups{display:grid;gap:14px;padding:0 20px 22px}.material-group-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.material-group-card>header{display:grid;grid-template-columns:48px minmax(220px,1fr) 70px auto;align-items:center;gap:13px;padding:17px 18px;background:linear-gradient(90deg,#fbfdfc,#f5faf8);border-bottom:1px solid var(--line)}.material-group-icon{width:44px;height:44px;border-radius:12px;background:#dfeee9;color:var(--green);display:grid;place-items:center;font-size:11px;font-weight:700}.material-group-card header>div:nth-child(2){display:grid}.material-group-card header span{font-size:8px;color:#6d8a82}.material-group-card h2{font-size:15px;margin:2px 0}.material-group-card header p{font-size:9px;color:#7d8985;margin:0}.material-group-count{display:grid;text-align:center;border-right:1px solid #dfe7e4}.material-group-count b{font-size:18px}.material-group-count small{font-size:8px;color:#88928f}.material-item-head,.material-item-row{display:grid;grid-template-columns:minmax(250px,1.7fr) .7fr .8fr .9fr .6fr;gap:14px;align-items:center}.material-item-head{padding:10px 18px;color:#8f9895;font-size:8px;background:#fbfcfc}.material-item-row{padding:12px 18px;border-top:1px solid #edf0ef;font-size:10px}.material-item-row>span:first-child{display:grid}.material-item-row small{font-size:8px;color:#8b9491;margin-top:2px}.item-code{direction:ltr;text-align:right;color:#60736d;font-weight:600}.unit-pill{display:flex;align-items:center;gap:6px}.unit-pill b{font-size:10px}.unit-pill small{background:#eef3f1;border-radius:5px;padding:3px 5px;margin:0}.unit-price{display:grid}.unit-price b{font-size:13px;color:#185e4e}.item-state{color:#8a918f}.item-state:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#aaa;margin-left:5px}.item-state.active{color:#36825f}.item-state.active:before{background:#48a36f}.unit-table .activity-table-head,.unit-table .activity-row{grid-template-columns:1.5fr .65fr .8fr .65fr .8fr}.unit-symbol{font-weight:700;color:#315f54}
@media(max-width:900px){.material-toolbar{grid-template-columns:1fr 1fr}.material-toolbar .supplier-search{grid-column:1/3}.material-item-head{display:none}.material-item-row{grid-template-columns:1.4fr .7fr .8fr}.material-item-row .item-code,.material-item-row .item-state{display:none}.material-group-card>header{grid-template-columns:45px 1fr auto}.material-group-count{display:none}.material-group-card>header .outline{grid-column:2/4;justify-self:start}.unit-table .activity-table-head,.unit-table .activity-row{grid-template-columns:1.4fr .6fr .8fr}.unit-table .activity-row>span:nth-child(4),.unit-table .activity-table-head>span:nth-child(4){display:none}}
@media(max-width:600px){.material-toolbar{grid-template-columns:1fr}.material-toolbar .supplier-search{grid-column:auto}.material-item-row{grid-template-columns:1.4fr .8fr}.material-item-row .unit-pill{display:none}.material-group-card>header{grid-template-columns:40px 1fr}.material-group-card>header .outline{grid-column:1/3}.material-price-note{align-items:flex-start}.unit-table .activity-table-head,.unit-table .activity-row{grid-template-columns:1.4fr .7fr}.unit-table .activity-row>span:nth-child(3),.unit-table .activity-table-head>span:nth-child(3){display:none}}

.price-at-supplier{width:max-content;background:#f6efe4;color:#8a622f;border-radius:99px;padding:4px 8px;font-size:8px;font-weight:700}.supplier-prices .block-head{margin-bottom:9px}.supplier-prices .block-head h4{margin:0}.supplier-prices .block-head button{border:0;background:#eaf5f1;color:var(--green);border-radius:7px;padding:6px 8px;font-size:8px;font-weight:700}.supplier-price-list{display:grid;border:1px solid #e3e9e6;border-radius:10px;overflow:hidden}.supplier-price-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px}.supplier-price-row+.supplier-price-row{border-top:1px solid #edf0ef}.supplier-price-row>span{display:grid}.supplier-price-row b{font-size:9px}.supplier-price-row>span:last-child{text-align:left}.supplier-price-row>span:last-child b{color:#145f4f;font-size:11px}.supplier-price-row small{font-size:7px;color:#87918e;margin-top:2px}.empty-prices{padding:15px;text-align:center;color:#87918e;font-size:8px;background:#fafcfb}

/* Subcontractor directory and configurable contract types */
.contractors-workspace{max-width:1450px}.contractor-toolbar{grid-template-columns:minmax(280px,1.45fr) repeat(3,minmax(150px,.7fr))}.contractor-table-head,.contractor-row{display:grid;grid-template-columns:1.35fr 1.45fr .62fr .42fr .48fr .72fr 20px;gap:12px;align-items:center;min-width:980px}.contractor-table-head{padding:10px 16px;color:#909996;font-size:8px;background:#fafbfa}.contractor-row{width:100%;border:0;border-top:1px solid #eff1f0;background:#fff;padding:12px 16px;text-align:right;color:#44524e;transition:.15s}.contractor-row:hover{background:#f6fbf9}.contractor-row>span{display:grid}.contractor-row>span small{font-size:8px;color:#919a97}.contractor-logo{background:linear-gradient(135deg,#e2f1ec,#d6e9e3);color:#105d4c;box-shadow:inset 0 0 0 1px #cce0d9}.scope-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.scope-list span{border:1px solid #e1e9e6;background:#f8fbfa;color:#45665d;border-radius:8px;padding:8px 10px;font-size:8px}.contractor-row .status-badge{margin-bottom:2px}
.contractor-rate b{color:#176450;font-size:11px}.contractor-rate-list{display:grid;gap:8px}.contractor-rate-list article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid #dfe9e5;border-radius:10px;padding:10px}.contractor-rate-list article>div,.contractor-rate-list article>span{display:grid}.contractor-rate-list article small{font-size:7px;color:#7f8c88;margin-top:3px}.contractor-rate-list article>span{text-align:left}.contractor-rate-list article>span>b{font-size:12px;color:#176450}.contractor-rate-editor{margin-top:12px;border:1px solid #cfe4dc;background:#f7fbfa;border-radius:11px;padding:12px}.rate-editor-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}.rate-editor-head b{font-size:10px}.rate-editor-head small{font-size:7px;color:#75837f}.contractor-rate-editor>div:last-child{display:grid;gap:7px}.contractor-rate-editor label{display:grid;grid-template-columns:1fr 150px;gap:12px;align-items:center;background:#fff;border:1px solid #e1e8e5;border-radius:8px;padding:8px}.contractor-rate-editor label>span:first-child{display:grid}.contractor-rate-editor label b{font-size:9px}.contractor-rate-editor label small{font-size:7px;color:#7e8b87}.rate-input{position:relative}.rate-input input{width:100%;height:34px;border:1px solid #dce5e1;border-radius:7px;padding:0 9px 0 36px}.rate-input i{position:absolute;left:9px;top:9px;font-style:normal;font-size:8px;color:#698078}.contractor-type-table .activity-table-head,.contractor-type-table .activity-row{grid-template-columns:1.65fr .75fr .65fr .5fr .58fr 26px}.contractor-type-table .activity-name em{font-style:normal;font-size:7px;color:#4f7c70;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;margin-top:2px}.contractor-type-table .unit-symbol small{background:#eef3f1;border-radius:5px;padding:2px 5px;margin-right:4px}.service-picker{max-height:230px}
@media(max-width:1100px){.contractor-toolbar{grid-template-columns:1fr 1fr}.contractor-toolbar .supplier-search{grid-column:1/3}}
@media(max-width:600px){.contractor-toolbar{grid-template-columns:1fr}.contractor-toolbar .supplier-search{grid-column:auto}.scope-list{grid-template-columns:1fr}.contractor-rate-editor label{grid-template-columns:1fr}.rate-editor-head{display:grid}.contractor-type-table .activity-table-head,.contractor-type-table .activity-row{grid-template-columns:1.4fr .7fr .65fr 24px}.contractor-type-table .activity-table-head span:nth-child(2),.contractor-type-table .activity-row>span:nth-child(2),.contractor-type-table .activity-table-head span:nth-child(4),.contractor-type-table .activity-row>span:nth-child(4){display:none}}
.supplier-activity-table .activity-table-head,.supplier-activity-table .activity-row{grid-template-columns:1.45fr .9fr .55fr .55fr .65fr 26px}.activity-materials-drawer{width:min(610px,94vw)}.activity-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.activity-overview>div{background:#f5f8f7;border:1px solid #e5ebe8;border-radius:10px;padding:10px;display:grid}.activity-overview small{font-size:7px;color:#788681}.activity-overview b{font-size:11px;margin-top:3px}.activity-material-card{border:1px solid #dfe7e4;border-radius:12px;overflow:hidden;margin-top:10px}.activity-material-card>header{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#f6faf8;padding:12px}.activity-material-card h4{margin:0;font-size:11px}.activity-material-card header small{font-size:7px;color:#7a8984}.activity-material-card header button{font-size:8px;padding:7px 9px}.activity-material-items{display:grid}.activity-material-item{display:grid;grid-template-columns:1fr .55fr .45fr .7fr;gap:8px;align-items:center;padding:10px 12px;border-top:1px solid #edf1ef}.activity-material-item:first-child{border-top:0}.activity-material-item>span{display:grid;font-size:8px}.activity-material-item b{font-size:9px}.activity-material-item small{font-size:7px;color:#84908c}.activity-material-price{color:#31705f!important}.activity-material-empty{text-align:center;padding:30px 15px;border:1px dashed #cbd9d4;border-radius:12px;background:#fafcfb}.activity-material-empty span{font-size:24px;color:#6f9d8f}.activity-material-empty b,.activity-material-empty small{display:block;margin-top:6px}.activity-material-empty small{font-size:8px;color:#7c8985}
@media(max-width:600px){.supplier-activity-table .activity-table-head,.supplier-activity-table .activity-row{grid-template-columns:1.35fr .55fr .65fr 24px}.supplier-activity-table .activity-table-head span:nth-child(2),.supplier-activity-table .activity-row>span:nth-child(2),.supplier-activity-table .activity-table-head span:nth-child(4),.supplier-activity-table .activity-row>span:nth-child(4){display:none}.activity-overview{grid-template-columns:1fr 1fr}.activity-material-item{grid-template-columns:1fr .55fr}.activity-material-item>span:nth-child(2),.activity-material-item>span:nth-child(4){display:none}}
.contractor-type-scope{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.contractor-type-scope span{display:flex;align-items:center;gap:6px;background:#edf7f3;color:#286a59;border:1px solid #d8ebe4;border-radius:9px;padding:9px 11px;font-size:9px;font-weight:700}.contractor-type-scope span:before{content:'✓';width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#3b8b70;color:#fff;font-size:8px}.contractor-type-rates{display:grid;gap:8px;margin-top:10px}.contractor-type-rate{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border:1px solid #e1e8e5;border-radius:10px;padding:11px;background:#fff}.contractor-type-rate>span{display:grid}.contractor-type-rate b{font-size:10px}.contractor-type-rate small{font-size:7px;color:#7d8985;margin-top:2px}.contractor-type-rate .rate-value{text-align:left;color:#176450}.contractor-type-rate .rate-value b{font-size:13px}.contractor-type-rate .open-contractor{font-size:8px;padding:7px 9px}.contractor-type-empty{padding:18px;text-align:center;border:1px dashed #cedbd6;border-radius:10px;color:#798681;font-size:9px}
@media(max-width:600px){.contractor-type-rate{grid-template-columns:1fr auto}.contractor-type-rate .open-contractor{grid-column:1/3;justify-self:stretch}.contractor-type-scope span{width:100%}}
.scope-editor-intro{margin:0 0 12px;color:#65766f;font-size:9px;line-height:1.8}.contractor-work-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.contractor-work-option{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:8px;border:1px solid #dfe7e4;border-radius:10px;padding:11px;background:#fff;cursor:pointer}.contractor-work-option:has(input:checked){border-color:#72aa98;background:#eef8f4}.contractor-work-option input{width:16px;height:16px;accent-color:var(--green)}.contractor-work-option span{display:grid}.contractor-work-option b{font-size:9px}.contractor-work-option small{font-size:7px;color:#85918d;margin-top:2px}.custom-work-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e6ebe9}.custom-work-row input{height:39px;border:1px solid #dce5e1;border-radius:9px;padding:0 11px;font-size:9px}.scope-selection-count{display:inline-flex;margin-top:10px;background:#f0f5f3;border-radius:99px;padding:5px 9px;font-size:8px;color:#527168}.scope-helper{background:#f7faf9;border:1px solid #e2e9e6;border-radius:10px;padding:11px;margin-top:12px;font-size:8px;color:#6f7e79;line-height:1.8}
@media(max-width:600px){.contractor-work-picker{grid-template-columns:1fr}.custom-work-row{grid-template-columns:1fr}.custom-work-row button{width:100%}}
.pricing-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.pricing-mode-switch label{display:grid!important;grid-template-columns:18px 1fr!important;gap:8px!important;align-items:center!important;padding:10px!important;cursor:pointer}.pricing-mode-switch label:has(input:checked){border-color:#69a58f;background:#eaf6f1}.pricing-mode-switch input{width:15px;height:15px;accent-color:var(--green)}.pricing-mode-switch span{display:grid}.pricing-mode-switch b{font-size:9px}.pricing-mode-switch small{font-size:7px;color:#7c8985}.service-price-list{display:grid;gap:8px}.service-price-row{display:grid;grid-template-columns:minmax(150px,1fr) 135px 120px;gap:8px;align-items:end;background:#fff;border:1px solid #dfe7e4;border-radius:9px;padding:9px}.service-price-row>span{display:grid;align-self:center}.service-price-row b{font-size:9px}.service-price-row small{font-size:7px;color:#7b8984;margin-top:2px}.service-price-row label{font-size:7px!important;gap:4px!important}.service-price-row select,.service-price-row input,.bundle-builder-grid select,.bundle-builder-grid input{height:36px;border:1px solid #dce5e1;border-radius:7px;padding:0 8px;background:#fff}.bundle-picker{margin:0 0 10px}.bundle-builder-grid{display:grid;grid-template-columns:1fr 130px 120px auto;gap:8px;align-items:end}.bundle-builder-grid label{display:grid;gap:5px;font-size:8px}.bundle-builder-grid button{height:36px}.pricing-bundle-list{display:grid;gap:8px;margin-top:11px}.pricing-bundle-card{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:#fff;border:1px solid #dce7e3;border-radius:9px;padding:10px}.pricing-bundle-card>span{display:grid}.pricing-bundle-card b{font-size:9px}.pricing-bundle-card small{font-size:7px;color:#7c8a85;margin-top:2px}.pricing-bundle-card strong{font-size:11px;color:#176450}.remove-pricing-bundle{border:0;background:#f7e9e7;color:#984a41;border-radius:7px;width:28px;height:28px}.pricing-method-badge{font-size:7px!important;background:#eaf5f1;color:#2f715f;border-radius:99px;padding:3px 7px;margin-right:5px}.contractor-package-list{display:grid;gap:8px}.contractor-package-list article{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #dfe8e4;border-radius:10px;padding:10px;background:#fff}.contractor-package-list article>span{display:grid}.contractor-package-list b{font-size:10px}.contractor-package-list small{font-size:7px;color:#7c8985;margin-top:2px}.contractor-package-list strong{font-size:12px;color:#176450;text-align:left}
@media(max-width:700px){.pricing-mode-switch{grid-template-columns:1fr}.service-price-row{grid-template-columns:1fr 1fr}.service-price-row>span{grid-column:1/3}.bundle-builder-grid{grid-template-columns:1fr 1fr}.bundle-builder-grid label:first-child{grid-column:1/3}.pricing-bundle-card{grid-template-columns:1fr auto}.pricing-bundle-card .remove-pricing-bundle{grid-column:1/3;justify-self:end}}
.contractor-drawer-actions{grid-template-columns:1.2fr 1fr 1fr}.contractor-drawer-actions button{padding-inline:8px;font-size:9px}.drawer-edit-panel{border:1px solid #cfe3dc;background:#f5faf8;border-radius:12px;padding:13px;margin-bottom:14px}.drawer-edit-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:11px}.drawer-edit-heading b{font-size:11px;color:#194f42}.drawer-edit-heading small{font-size:7px;color:#75857f}.drawer-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.drawer-edit-grid label{display:grid;gap:6px;font-size:8px;font-weight:700;color:#586a64}.drawer-edit-grid input,.drawer-edit-grid select{height:40px;border:1px solid #d9e4e0;border-radius:9px;background:#fff;padding:0 10px;font:inherit;color:#263d36;outline:none}.drawer-edit-grid input:focus,.drawer-edit-grid select:focus{border-color:#5b9c87;box-shadow:0 0 0 3px rgba(36,119,95,.08)}.unit-row .activity-name small{color:#4d7d70}
@media(max-width:600px){.contractor-drawer-actions{grid-template-columns:1fr 1fr}.contractor-drawer-actions #editContractor{grid-column:1/3}.drawer-edit-grid{grid-template-columns:1fr}.drawer-edit-heading{display:grid}}
.task-drawer{width:min(680px,100vw)}.task-resources-block{padding-top:16px}.resource-source-note{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start;border:1px solid #cfe5dd;background:#f0f8f5;border-radius:10px;padding:10px;margin-bottom:12px}.resource-source-note>span{width:24px;height:24px;border-radius:7px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:11px}.resource-source-note p{margin:0;color:#587068;font-size:8px;line-height:1.7}.task-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.task-resource-grid>section{border:1px solid #dfe7e4;border-radius:12px;overflow:hidden;background:#fafcfb}.task-resource-grid>section>header{display:flex;align-items:center;gap:9px;padding:10px 11px;background:#f3f8f6;border-bottom:1px solid #e3ebe8}.task-resource-grid>section>header>span{width:27px;height:27px;border-radius:8px;background:#dceee8;color:#246854;display:grid;place-items:center;font-size:8px;font-weight:800}.task-resource-grid>section>header>div{display:grid}.task-resource-grid>section>header b{font-size:10px}.task-resource-grid>section>header small{font-size:7px;color:#7b8a85;margin-top:2px}.task-resource-picker{display:grid;gap:6px;padding:9px;max-height:230px;overflow:auto}.task-resource-picker label{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:center;border:1px solid #e2e9e6;background:#fff;border-radius:9px;padding:9px;cursor:pointer}.task-resource-picker label:has(input:checked){border-color:#68a48f;background:#eaf6f1;box-shadow:inset 0 0 0 1px rgba(50,130,104,.08)}.task-resource-picker input{width:15px;height:15px;accent-color:var(--green)}.task-resource-picker label>span{display:grid}.task-resource-picker b{font-size:8px}.task-resource-picker small{font-size:7px;color:#82908b;margin-top:2px}.task-contractor-assignment{display:grid;grid-template-columns:1fr 1.1fr;gap:12px;align-items:center;border:1px solid #d9e7e2;border-radius:11px;padding:11px;margin-top:10px;background:#fff}.task-contractor-assignment>div{display:flex;align-items:center;gap:9px}.task-contractor-assignment>div>span:last-child{display:grid}.task-contractor-assignment b{font-size:9px}.task-contractor-assignment small{font-size:7px;color:#7d8a86;margin-top:2px}.task-contractor-assignment select{height:40px;border:1px solid #d8e3df;border-radius:9px;background:#fff;padding:0 9px;font-size:8px}.task-resource-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.task-resource-summary>div{display:grid;border-radius:9px;padding:9px 10px;background:#f7faf9}.task-resource-summary small{font-size:7px;color:#77857f}.task-resource-summary b{font-size:8px;color:#245f50;margin-top:3px;line-height:1.6}.responsibility-chip{max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scope-chip{white-space:nowrap}
@media(max-width:650px){.task-resource-grid,.task-resource-summary{grid-template-columns:1fr}.task-contractor-assignment{grid-template-columns:1fr}.task-resource-picker{max-height:190px}}
.template-library{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:22px}.template-card{position:relative;border:1px solid #dfe6e3;background:#fff;border-radius:13px;overflow:hidden;transition:.18s}.template-card.active{border-color:#6da693;background:linear-gradient(145deg,#eff8f5,#fff);box-shadow:0 6px 18px rgba(20,91,72,.08)}.template-select{width:100%;border:0;background:transparent;border-radius:0;padding:13px 15px 13px 50px;display:grid;grid-template-columns:auto 1fr;gap:3px 10px;text-align:right;color:#5e6b67}.template-select>span{grid-row:1/3;align-self:center;direction:ltr;background:#eef2f0;border-radius:8px;padding:8px;font-size:9px;font-weight:800}.template-select b{font-size:11px;color:#263d36}.template-select small{font-size:8px;color:#88938f}.template-card.active .template-select>span{background:var(--green);color:#fff}.template-delete{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:8px;background:#f8ecea;color:#a54b43;display:grid;place-items:center;opacity:0;transition:.18s}.template-card:hover .template-delete,.template-delete:focus-visible{opacity:1}.template-delete:hover{background:#a54b43;color:#fff}.delete-template-modal{width:min(470px,100%)}.danger-icon{background:#f9e9e7;color:#a24740}.danger-text{color:#a24740}.delete-template-modal p strong{color:#17211f}.delete-template-warning{border:1px solid #f0d4d0;background:#fdf7f6;color:#8b4d47;border-radius:10px;padding:11px 13px;font-size:11px}.danger-button{border:0;border-radius:10px;background:#a24740;color:#fff;padding:11px 17px;font-weight:700}.danger-button:hover{background:#873b35}.dependency-overview{margin:0 24px 14px;border:1px solid #d6e7e1;background:linear-gradient(100deg,#f4faf8,#fbfdfc);border-radius:12px;padding:13px 15px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 18px}.dependency-overview>div:first-child{display:grid}.dependency-overview>div:first-child span{font-size:8px;color:#628077}.dependency-overview>div:first-child b{font-size:13px;margin-top:2px}.dependency-overview>div:first-child small{font-size:8px;color:#7c8d87;margin-top:3px}.dependency-overview>p{grid-column:1/3;margin:0;padding-top:8px;border-top:1px solid #e0ebe7;color:#6f7e79;font-size:8px}.relation-metrics{display:flex;gap:6px;direction:ltr}.relation-metrics span{min-width:49px;border-radius:8px;padding:7px 8px;text-align:center;font-size:8px;font-weight:800;background:#fff;border:1px solid #e1e8e5}.relation-metrics b{display:block;font-size:12px}.relation-metrics .fs{color:#24775f}.relation-metrics .ss{color:#3c6e9d}.relation-metrics .ff{color:#8a6535}.relation-metrics .sf{color:#89548c}.floor-tabs{overflow-x:auto}.floor-tabs button{min-width:max-content}.dependency-list{display:grid;gap:8px}
@media(max-width:700px){.template-library{grid-template-columns:1fr}.dependency-overview{grid-template-columns:1fr;margin-inline:12px}.dependency-overview>p{grid-column:1}.relation-metrics{justify-content:space-between}.relation-metrics span{flex:1}.template-select{padding:11px 13px 11px 48px}.template-delete{opacity:1}}
.template-select{padding:13px 15px}.template-actions{position:relative;display:flex;align-items:center;justify-content:flex-end}.template-actions-toggle{min-width:148px;border:1px solid #cbdad5;background:#fff;color:#25483f;border-radius:11px;padding:10px 12px;display:flex;align-items:center;gap:8px;box-shadow:0 4px 13px rgba(20,70,58,.06)}.template-actions-toggle>span{width:25px;height:25px;border-radius:7px;background:#e7f2ee;color:var(--green);display:grid;place-items:center}.template-actions-toggle>b{font-size:11px}.template-actions-toggle>i{font-style:normal;margin-right:auto;color:#82908b;transition:.18s}.template-actions-toggle[aria-expanded="true"]>i{transform:rotate(180deg)}.template-actions-menu{position:absolute;top:calc(100% + 8px);left:0;width:300px;background:#fff;border:1px solid #dce5e2;border-radius:14px;padding:8px;box-shadow:0 18px 45px rgba(15,54,45,.18);z-index:25;opacity:0;transform:translateY(-6px) scale(.98);transform-origin:top left;pointer-events:none;transition:.16s}.template-actions-menu.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.actions-menu-head{display:flex;align-items:center;justify-content:space-between;padding:7px 8px 10px;border-bottom:1px solid #edf1ef;margin-bottom:5px}.actions-menu-head b{font-size:10px;color:#365049}.actions-menu-head small{direction:ltr;background:#edf2f0;color:#6d7b77;border-radius:6px;padding:3px 7px;font-size:8px;font-weight:800}.template-actions-menu>button{width:100%;border:0;background:transparent;border-radius:9px;padding:9px 8px;display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center;text-align:right;color:#30443e}.template-actions-menu>button:hover,.template-actions-menu>button:focus-visible{background:#f2f7f5;outline:none}.template-actions-menu>button>span:last-child{display:grid}.template-actions-menu>button b{font-size:10px}.template-actions-menu>button small{font-size:7px;color:#84908c;margin-top:2px}.action-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-size:13px}.action-icon.edit{background:#e7f2ee;color:#246d59}.action-icon.import{background:#edf3f8;color:#426e92}.action-icon.export{background:#f8f1e7;color:#946b38}.action-icon.delete{background:#f9e9e7;color:#a24740}.actions-menu-separator{height:1px;background:#edf1ef;margin:5px 7px}.template-actions-menu .danger-action b{color:#9d463f}.template-actions-menu .danger-action:hover{background:#fdf5f4}.edit-template-modal{width:min(560px,100%)}.edit-icon{background:#e6f3ee;color:#236d58}.edit-template-modal textarea{width:100%;border:1px solid #dfe4e1;border-radius:11px;padding:13px 15px;resize:vertical;outline:none;font:inherit;line-height:1.7}.edit-template-modal textarea:focus{border-color:var(--green2);box-shadow:0 0 0 3px rgba(11,116,94,.1)}.edit-template-modal input[readonly]{background:#f4f6f5;color:#78837f}.edit-code-note{margin-top:12px;border:1px solid #d9e7e2;background:#f3f8f6;color:#60736c;border-radius:9px;padding:10px 12px;font-size:9px;line-height:1.7}
@media(max-width:780px){.template-head{display:grid;gap:14px}.template-actions{justify-content:flex-start;margin-right:66px}.template-actions-menu{right:0;left:auto;transform-origin:top right}.template-actions-toggle{width:100%;justify-content:flex-start}.template-actions-toggle>i{margin-right:auto}}
@media(max-width:480px){.template-actions{margin-right:0}.template-actions-menu{width:min(300px,calc(100vw - 40px))}.modal-grid{grid-template-columns:1fr}}
.projects-workspace{display:grid;gap:20px}.projects-workspace.hidden{display:none}.projects-hero{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:8px 0}.projects-hero h1{font-size:25px;margin:4px 0}.projects-hero p{margin:0;color:#74817d;font-size:10px}.project-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.project-kpis article{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e2e8e5;border-radius:13px;padding:15px}.project-kpis article>span{width:40px;height:40px;border-radius:11px;background:#eaf4f0;color:#28725d;display:grid;place-items:center;font-size:11px;font-weight:800}.project-kpis article>div{display:grid}.project-kpis small{color:#7e8b86;font-size:8px}.project-kpis b{font-size:17px;margin-top:2px}.projects-panel{background:#fff;border:1px solid #e1e8e5;border-radius:15px;overflow:hidden}.projects-list{padding:0 22px 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.project-card{border:1px solid #dfe7e4;border-radius:13px;padding:15px;background:linear-gradient(145deg,#fff,#f8fbfa)}.project-card header{display:flex;justify-content:space-between;align-items:center}.project-card header span{direction:ltr;font-size:8px;font-weight:800;color:#5d756d}.project-card header i{font-style:normal;background:#e6f5ed;color:#247255;border-radius:99px;padding:4px 8px;font-size:7px}.project-card h3{font-size:13px;margin:12px 0 4px}.project-card p{font-size:8px;color:#7a8984;margin:0}.project-card>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.project-card>div span{display:grid;background:#f2f6f4;border-radius:8px;padding:8px}.project-card small{font-size:7px;color:#84908c}.project-card b{font-size:9px;margin-top:2px}.projects-empty{grid-column:1/-1;text-align:center;padding:55px 20px;border:1px dashed #ccd9d5;border-radius:13px;background:#fafcfb}.projects-empty>span{font-size:34px;color:#6b998a}.projects-empty h3{margin:9px 0 3px}.projects-empty p{font-size:9px;color:#75837e;margin:0 0 14px}
.project-wizard-overlay{padding:24px}.project-wizard{width:min(1180px,96vw);height:min(850px,94vh);background:#f5f8f7;border-radius:18px;box-shadow:0 28px 80px rgba(14,49,41,.28);display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden}.wizard-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 14px;background:#fff;border-bottom:1px solid #e6ebe9}.wizard-header h2{font-size:19px;margin:3px 0 0}.wizard-header .modal-close{position:static}.wizard-progress{display:grid;grid-template-columns:repeat(4,1fr);padding:14px 24px;background:#fff;border-bottom:1px solid #e6ebe9}.wizard-progress div{display:flex;align-items:center;gap:8px;position:relative;color:#8a9692}.wizard-progress div:not(:last-child):after{content:'';position:absolute;right:34px;left:8px;top:14px;height:1px;background:#dce5e1}.wizard-progress span{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf1ef;font-size:9px;font-weight:800}.wizard-progress b{position:relative;z-index:1;background:#fff;padding-left:8px;font-size:9px}.wizard-progress .active,.wizard-progress .done{color:#1f7259}.wizard-progress .active span,.wizard-progress .done span{background:#277b61;color:#fff}.wizard-body{padding:20px 24px;overflow:auto}.wizard-footer{display:flex;align-items:center;justify-content:space-between;background:#fff;border-top:1px solid #dfe6e3;padding:13px 24px}.wizard-footer>div{display:flex;gap:8px}.wizard-intro{display:flex;gap:12px;align-items:center;margin-bottom:16px}.wizard-intro>span{width:40px;height:40px;display:grid;place-items:center;background:#deeee8;color:#236d58;border-radius:11px;font-size:10px;font-weight:800}.wizard-intro h3{font-size:15px;margin:0}.wizard-intro p{font-size:8px;color:#71807b;margin:3px 0 0}.project-form-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px}.project-form-grid label{display:grid;gap:6px;font-size:8px;font-weight:700}.project-form-grid input,.project-form-grid select{height:43px;border:1px solid #d9e3df;border-radius:9px;background:#fff;padding:0 11px;font:inherit}.template-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px}.project-template-choice{display:grid;grid-template-columns:auto 1fr auto;gap:3px 11px;align-items:center;text-align:right;border:1px solid #dae4e0;border-radius:12px;background:#fff;padding:13px}.project-template-choice>span{grid-row:1/3;direction:ltr;background:#edf2f0;border-radius:8px;padding:9px;font-size:9px;font-weight:800}.project-template-choice>b{font-size:10px}.project-template-choice>small{font-size:7px;color:#81908b}.project-template-choice>i{grid-row:1/3;grid-column:3;font-style:normal;font-size:8px;color:#6d7b77}.project-template-choice.active{border-color:#65a48e;background:#eef8f4}.project-template-choice.active>span{background:#287a61;color:#fff}.project-template-choice.active>i{color:#26745c;font-weight:800}.selected-elements{margin-top:14px;border:1px solid #dbe7e2;background:#fff;border-radius:12px;padding:13px}.selected-elements>b{font-size:9px}.selected-elements>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.selected-elements span{background:#eaf4f0;color:#2f715f;border-radius:99px;padding:6px 9px;font-size:8px}
.element-pricing-table{border:1px solid #dfe6e3;border-radius:12px;overflow:hidden;background:#fff}.element-pricing-head,.element-pricing-row{display:grid;grid-template-columns:1.3fr 1fr .55fr;gap:12px;align-items:center;padding:10px 14px}.element-pricing-head{background:#eef3f1;color:#75827e;font-size:8px;font-weight:700}.element-pricing-row{border-top:1px solid #edf1ef}.element-pricing-row>span:first-child{display:flex;align-items:center;gap:10px}.element-pricing-row>span:first-child i{font-style:normal;width:28px;height:28px;border-radius:8px;background:#edf5f2;color:#377763;display:grid;place-items:center;font-size:8px}.element-pricing-row b{font-size:10px}.element-pricing-row em{font-style:normal;font-size:7px;color:#788680}.money-input{position:relative;display:block}.money-input input{width:100%;height:40px;border:1px solid #d8e2de;border-radius:9px;padding:0 10px 0 72px;font-weight:700}.money-input i{position:absolute;left:9px;top:50%;transform:translateY(-50%);font-style:normal;font-size:7px;color:#6f7d78}.area-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.area-entry-grid>label{display:grid;grid-template-columns:1fr 150px 110px;gap:10px;align-items:center;background:#fff;border:1px solid #dfe7e4;border-radius:11px;padding:11px}.area-entry-grid label>span{display:grid}.area-entry-grid b{font-size:10px}.area-entry-grid small{font-size:7px;color:#7e8c87;margin-top:2px}.area-entry-grid strong{text-align:left;font-size:10px;color:#286e5a}.area-total{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.area-total span{display:grid;min-width:180px;background:#eaf4f0;border-radius:10px;padding:10px;color:#687a73;font-size:7px}.area-total b{font-size:13px;color:#205f4d;margin-top:2px}
.boq-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.boq-elements{display:grid;gap:9px}.boq-element{border:1px solid #dce5e1;background:#fff;border-radius:12px;overflow:hidden}.boq-element-head{width:100%;border:0;background:#fff;display:grid;grid-template-columns:1fr auto 20px;align-items:center;padding:12px 14px;text-align:right}.boq-element-head>span{display:grid;grid-template-columns:32px 1fr;gap:2px 9px;align-items:center}.boq-element-head span i{grid-row:1/3;width:30px;height:30px;border-radius:8px;background:#e9f3ef;color:#2e735f;display:grid;place-items:center;font-style:normal;font-size:8px}.boq-element-head span b{font-size:11px}.boq-element-head span small{font-size:7px;color:#83908c}.boq-element-head>strong{font-size:11px;color:#286c58}.boq-element-head>em{font-style:normal;transition:.18s}.boq-element.open .boq-element-head>em{transform:rotate(180deg)}.boq-element-body{display:none;border-top:1px solid #e7ecea}.boq-element.open .boq-element-body{display:block}.boq-resource-row,.boq-contractor-row{width:100%;border:0;border-top:1px solid #edf1ef;background:#fff;display:grid;grid-template-columns:34px 1.3fr .6fr 1fr .55fr 18px;gap:9px;align-items:center;padding:10px 13px;text-align:right}.boq-resource-row:first-child{border-top:0}.boq-resource-row:hover{background:#f5faf8}.boq-resource-row>span,.boq-contractor-row>span{display:grid}.boq-resource-row b,.boq-contractor-row b{font-size:8px}.boq-resource-row small,.boq-contractor-row small{font-size:7px;color:#82908b}.boq-resource-row>strong,.boq-contractor-row>strong{font-size:9px;color:#26705a}.boq-icon{width:30px;height:30px;border-radius:8px;background:#edf5f2;color:#286c58;display:grid!important;place-items:center;font-size:9px;font-weight:800}.boq-icon.contractor{background:#f4ede4;color:#8b6234}.boq-contractor-row{grid-template-columns:34px 1.3fr .6fr 1fr .55fr;background:#fcfbf8}.project-financial{position:sticky;top:0;background:#fff;border:1px solid #d7e4df;border-radius:13px;padding:14px;box-shadow:0 8px 24px rgba(24,74,61,.07)}.financial-head{display:flex;align-items:center;gap:9px;padding-bottom:12px;border-bottom:1px solid #e5ebe8}.financial-head>span{width:33px;height:33px;border-radius:9px;background:#26775e;color:#fff;display:grid;place-items:center}.financial-head>div{display:grid}.financial-head b{font-size:10px}.financial-head small{font-size:7px;color:#7d8985}.financial-lines{display:grid;padding:9px 0}.financial-lines span{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:8px;color:#65756f}.financial-lines b{font-size:9px;color:#263c35}.financial-lines .direct{border-top:1px solid #e6ebe9;margin-top:3px}.financial-lines .risk{color:#9a6731}.financial-lines .our-cost{background:#f1f6f4;margin:5px -6px 0;padding:9px 6px;border-radius:7px;font-weight:700}.client-value{display:grid;background:#1f6955;color:#fff;border-radius:10px;padding:12px}.client-value small{font-size:7px;opacity:.8}.client-value b{font-size:18px;margin-top:2px}.margin-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.margin-grid span{display:grid;background:#edf7f2;border-radius:8px;padding:8px}.margin-grid small{font-size:6px;color:#5f746c}.margin-grid b{font-size:10px;color:#1d7457;margin-top:3px}.margin-grid .negative{background:#fbefed}.margin-grid .negative b{color:#a3453d}.project-financial>p{font-size:7px;color:#7c8985;line-height:1.6;margin:10px 0 0}
.boq-material-modal{width:min(760px,96vw);max-height:88vh;overflow:auto}.boq-item-editor{border:1px solid #dfe7e4;border-radius:11px;overflow:hidden}.boq-editor-head,.boq-item-editor>label{display:grid;grid-template-columns:26px 1fr 135px 50px;gap:9px;align-items:center;padding:9px 11px}.boq-editor-head{grid-template-columns:26px 1fr 135px 50px;background:#f0f5f3;color:#788680;font-size:8px}.boq-editor-head span:first-child{grid-column:1/3}.boq-item-editor>label{border-top:1px solid #edf1ef}.boq-item-editor>label>span{display:grid}.boq-item-editor b{font-size:9px}.boq-item-editor small{font-size:7px;color:#7e8b87}.boq-item-editor input[type=checkbox]{width:16px;height:16px;accent-color:#27785f}.boq-item-qty{height:36px;border:1px solid #d9e3df;border-radius:8px;padding:0 8px}.boq-item-editor em{font-style:normal;font-size:8px}.supplier-comparison{margin-top:14px;display:grid;gap:7px}.comparison-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:3px}.comparison-head>div{display:grid}.comparison-head b{font-size:10px}.comparison-head small,.comparison-head>span{font-size:7px;color:#7b8984}.supplier-offer{display:grid;grid-template-columns:18px 26px 1fr auto 110px;gap:9px;align-items:center;border:1px solid #dfe7e4;border-radius:10px;padding:10px;cursor:pointer}.supplier-offer.selected{border-color:#5c9d87;background:#edf7f3}.supplier-offer input{accent-color:#28785f}.offer-rank{width:24px;height:24px;border-radius:7px;background:#eef3f1;display:grid;place-items:center;font-size:8px;font-weight:800}.supplier-offer>span:nth-child(3){display:grid}.supplier-offer b{font-size:9px}.supplier-offer small{font-size:7px;color:#7d8a86}.supplier-offer i{font-style:normal;background:#dff1e8;color:#286f5a;border-radius:99px;padding:4px 7px;font-size:7px}.supplier-offer strong{text-align:left;font-size:10px;color:#236b55}.no-offers{border:1px dashed #d9b5a5;background:#fff8f5;color:#8b5b47;border-radius:10px;padding:16px;text-align:center;font-size:8px}
@media(max-width:900px){.project-kpis{grid-template-columns:1fr 1fr}.projects-list{grid-template-columns:1fr 1fr}.project-form-grid{grid-template-columns:1fr 1fr}.project-form-grid label:first-child{grid-column:1/3}.boq-layout{grid-template-columns:1fr}.project-financial{position:static}.area-entry-grid{grid-template-columns:1fr}.wizard-progress b{display:none}.boq-resource-row,.boq-contractor-row{grid-template-columns:34px 1fr .7fr .7fr 18px}.boq-resource-row>span:nth-child(4),.boq-contractor-row>span:nth-child(4){display:none}}
@media(max-width:600px){.projects-hero{display:grid}.project-kpis,.projects-list,.template-choice-grid{grid-template-columns:1fr}.project-wizard-overlay{padding:0}.project-wizard{width:100vw;height:100vh;border-radius:0}.wizard-header,.wizard-body,.wizard-footer{padding-inline:14px}.project-form-grid{grid-template-columns:1fr}.project-form-grid label:first-child{grid-column:auto}.element-pricing-head,.element-pricing-row{grid-template-columns:1fr 1fr}.element-pricing-head span:last-child,.element-pricing-row>em{display:none}.area-entry-grid>label{grid-template-columns:1fr 115px}.area-entry-grid strong{grid-column:1/3}.area-total{display:grid}.boq-resource-row,.boq-contractor-row{grid-template-columns:30px 1fr auto 15px}.boq-resource-row>span:nth-child(3),.boq-resource-row>span:nth-child(4),.boq-contractor-row>span:nth-child(3),.boq-contractor-row>span:nth-child(4){display:none}.supplier-offer{grid-template-columns:18px 26px 1fr 85px}.supplier-offer i{display:none}.boq-editor-head,.boq-item-editor>label{grid-template-columns:22px 1fr 100px 36px}}
.project-card-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:13px;padding-top:12px;border-top:1px solid #e5ebe8}.project-card-actions button{height:36px;border-radius:9px;font-size:8px;font-weight:700}.project-card-actions .delete-project{border:1px solid #ecd4d0;background:#fdf6f5;color:#a14941;padding:0 13px}.project-card-actions .delete-project:hover{background:#a14941;color:#fff}.project-card-actions .edit-project{color:#286d59;border-color:#bfd6ce;background:#f8fbfa}@media(max-width:430px){.project-card-actions{grid-template-columns:1fr}.project-card-actions .delete-project{width:100%}}
.boq-contractor-picker{cursor:pointer;color:inherit;font:inherit}.boq-contractor-picker:hover{background:#f8f5ef}.boq-contractor-picker>i{font-style:normal;color:#8b6234}.contractor-choice-modal{width:min(820px,96vw)}.contractor-comparison-head{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#f2f7f5;border:1px solid #dce7e3;border-radius:10px;padding:10px 12px;margin:12px 0}.contractor-comparison-head span{font-size:8px;color:#6e7e78}.contractor-comparison-head b{color:#266d58}.contractor-offers{display:grid;gap:8px}.contractor-offer-card{display:grid;grid-template-columns:18px 38px minmax(180px,1fr) auto 120px 110px;gap:10px;align-items:center;border:1px solid #dce5e1;background:#fff;border-radius:11px;padding:11px;cursor:pointer}.contractor-offer-card.selected{border-color:#5b9d86;background:#edf7f3;box-shadow:inset 0 0 0 1px rgba(46,119,94,.08)}.contractor-offer-card>input{accent-color:#28785f}.contractor-offer-card .contractor-logo{width:36px;height:36px}.contractor-offer-main{display:grid}.contractor-offer-main>b{font-size:10px}.contractor-offer-main>small{font-size:7px;color:#7e8b87;margin-top:2px}.contractor-offer-main>em{font-style:normal;font-size:7px;color:#4e7569;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contractor-offer-card>i{font-style:normal;background:#e5f2ed;color:#2a715b;border-radius:99px;padding:4px 7px;font-size:7px;text-align:center}.contractor-offer-card .contractor-rate{display:grid}.contractor-rate small{font-size:7px;color:#7a8984}.contractor-rate b{font-size:9px;margin-top:2px}.contractor-offer-card>strong{text-align:left;font-size:11px;color:#226b55}.contractor-choice-modal>p{font-size:9px;color:#71807b}@media(max-width:700px){.contractor-offer-card{grid-template-columns:18px 35px 1fr auto}.contractor-offer-card>i{display:none}.contractor-offer-card .contractor-rate{grid-column:3}.contractor-offer-card>strong{grid-column:4;grid-row:2}.contractor-comparison-head{display:grid}}

/* Keep the long subcontractor editor usable on short desktop and mobile viewports. */
#contractorModalOverlay{overflow-y:auto;overscroll-behavior:contain;align-items:start}
#contractorModalOverlay .supplier-modal{max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
#contractorModalOverlay .supplier-modal::-webkit-scrollbar{width:8px}
#contractorModalOverlay .supplier-modal::-webkit-scrollbar-track{background:#f2f5f4;border-radius:99px}
#contractorModalOverlay .supplier-modal::-webkit-scrollbar-thumb{background:#b8cbc5;border-radius:99px}
#contractorModalOverlay .modal-actions{position:sticky;bottom:-28px;z-index:6;margin:20px -28px -28px;padding:14px 28px;background:rgba(255,255,255,.98);border-top:1px solid var(--line);box-shadow:0 -10px 24px rgba(23,55,47,.07);backdrop-filter:blur(8px)}
@media(max-width:600px){#contractorModalOverlay{padding:0;align-items:stretch}#contractorModalOverlay .supplier-modal{width:100%;max-height:100vh;max-height:100dvh;border-radius:0;padding:22px 16px}#contractorModalOverlay .modal-actions{bottom:-22px;margin:16px -16px -22px;padding:12px 16px}}

/* Customers — unified identity, organizations, agencies and account record. */
.customers-workspace{display:grid;gap:18px}.customers-workspace.hidden{display:none}.customers-hero{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:7px 0}.customers-hero h1{font-size:27px;margin:3px 0}.customers-hero p{margin:0;color:#73817c;font-size:10px}.customer-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.customer-kpis article{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e0e8e5;border-radius:14px;padding:15px;box-shadow:0 5px 18px rgba(25,66,55,.035)}.customer-kpis article>span{width:42px;height:42px;border-radius:12px;background:#e8f3ef;color:#236f58;display:grid;place-items:center;font-size:15px;font-weight:800}.customer-kpis article:nth-child(2)>span{background:#edf0f7;color:#526a91}.customer-kpis article:nth-child(3)>span{background:#f6efe5;color:#956a35}.customer-kpis article.attention>span{background:#fae9e5;color:#a14e43}.customer-kpis article>div{display:grid}.customer-kpis small{font-size:8px;color:#7b8984}.customer-kpis b{font-size:19px;margin:1px 0}.customer-kpis em{font-style:normal;font-size:7px;color:#8a9692}.customer-attention{display:flex;align-items:center;gap:12px;border:1px solid #ead7bd;background:#fffaf2;border-radius:13px;padding:12px 15px}.customer-attention>span{width:34px;height:34px;border-radius:10px;background:#f6e8d4;color:#9b682f;display:grid;place-items:center;font-weight:900}.customer-attention>div{display:grid;flex:1}.customer-attention b{font-size:9px}.customer-attention p{font-size:8px;color:#816f58;margin:3px 0 0}.customer-attention button{border:0;background:transparent;color:#95652f;font-weight:700;font-size:8px}.customer-directory{background:#fff;border:1px solid #dfe7e4;border-radius:15px;overflow:hidden}.customer-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 135px 145px 135px auto;gap:8px;padding:15px 18px;border-bottom:1px solid #e7ecea}.customer-toolbar select,.customer-search{height:40px;border:1px solid #dbe4e0;border-radius:9px;background:#fff}.customer-toolbar select{padding:0 10px;font:inherit;font-size:8px}.customer-search{display:flex;align-items:center;gap:8px;padding:0 11px}.customer-search span{color:#73837d}.customer-search input{border:0;outline:0;width:100%;font:inherit;font-size:8px}.customer-result{display:flex;justify-content:space-between;padding:10px 18px;color:#83908c;font-size:7px}.customer-result b{font-size:8px;color:#31453e}.customer-table-head,.customer-row{display:grid;grid-template-columns:1.35fr 1.05fr 1.05fr .65fr .55fr .72fr 18px;gap:10px;align-items:center;padding:11px 18px}.customer-table-head{background:#f2f6f4;color:#7c8a85;font-size:7px;font-weight:700}.customer-row{width:100%;border:0;border-top:1px solid #edf1ef;background:#fff;text-align:right;color:inherit}.customer-row:hover{background:#f7fbf9}.customer-row>span{display:grid;min-width:0}.customer-row b{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-row small{font-size:7px;color:#83908b;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-name{display:grid!important;grid-template-columns:38px 1fr;gap:9px;align-items:center}.customer-name>i{width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,#23745b,#3e9477);color:#fff;font-style:normal;display:grid;place-items:center;font-size:9px;font-weight:800}.customer-name>span{display:grid;min-width:0}.customer-category,.customer-status{display:inline-flex!important;width:max-content;align-items:center;gap:4px;border-radius:99px;padding:5px 8px;font-size:7px;font-weight:700}.customer-category.silver{background:#edf0ef;color:#63716c}.customer-category.gold{background:#fbf1dc;color:#956a25}.customer-category.diamond{background:#e8f1fa;color:#3a6f9b}.customer-category.vip{background:#eee8f8;color:#6b4f91}.customer-status{background:#edf2f0;color:#61716b}.customer-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.customer-status.active{background:#e5f3ec;color:#237154}.customer-status.blocked{background:#fae8e5;color:#a24c43}.customer-status.archived{background:#ecebea;color:#6f6c68}.customer-attention-note{color:#a46b31!important}.customer-empty,.customer-tab-empty{text-align:center;padding:45px 20px}.customer-empty>span,.customer-tab-empty>span{font-size:30px;color:#78a193}.customer-empty b,.customer-tab-empty b{display:block;font-size:11px;margin-top:8px}.customer-empty small,.customer-tab-empty p{font-size:8px;color:#7b8884;margin:4px 0 12px}
.customer-drawer{position:fixed;z-index:42;top:0;left:0;width:min(760px,94vw);height:100vh;height:100dvh;background:#f6f8f7;box-shadow:18px 0 52px rgba(12,45,36,.24);transform:translateX(-105%);transition:.25s ease;display:grid;grid-template-rows:auto auto 1fr auto}.customer-drawer.open{transform:translateX(0)}.customer-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;background:#fff;border-bottom:1px solid #e3e9e6}.customer-drawer-head>button{border:0;background:#eef2f0;width:34px;height:34px;border-radius:9px;font-size:18px}.customer-drawer-identity{display:flex;align-items:center;gap:12px}.customer-drawer-identity>span{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#1f6d55,#47987c);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.customer-drawer-identity>div{display:grid}.customer-drawer-identity small{font-size:7px;color:#7d8985}.customer-drawer-identity h2{font-size:16px;margin:2px 0}.customer-drawer-identity p{display:flex;align-items:center;gap:5px;margin:0;color:#63736d;font-size:7px}.customer-drawer-identity p .customer-category,.customer-drawer-identity p .customer-status{padding:3px 6px}.customer-tabs{display:flex;gap:3px;padding:8px 16px;background:#fff;border-bottom:1px solid #e2e8e5;overflow-x:auto}.customer-tabs button{white-space:nowrap;border:0;background:transparent;border-radius:8px;padding:8px 10px;color:#75827e;font-size:8px;font-weight:700}.customer-tabs button.active{background:#e8f3ef;color:#246e58}.customer-drawer-body{overflow-y:auto;padding:16px 20px}.customer-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.customer-summary>div{display:grid;background:#fff;border:1px solid #e0e7e4;border-radius:10px;padding:10px}.customer-summary small{font-size:7px;color:#7d8a86}.customer-summary b{font-size:10px;margin-top:3px}.customer-summary .customer-category{margin-top:4px}.customer-profile-block{background:#fff;border:1px solid #e0e7e4;border-radius:12px;padding:14px;margin-top:10px}.customer-profile-block header,.customer-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.customer-profile-block h3,.customer-section-head h3{font-size:10px;margin:0}.customer-profile-block header>span{font-size:7px;background:#edf4f1;color:#547067;border-radius:99px;padding:4px 8px}.customer-details{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin-top:14px}.customer-details>div{display:grid}.customer-details small{font-size:7px;color:#83908c}.customer-details b{font-size:9px;margin-top:3px}.representative-card{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;margin-top:13px}.representative-card>span{width:36px;height:36px;border-radius:10px;background:#e8f2ee;color:#28715c;display:grid;place-items:center;font-weight:800}.representative-card>div{display:grid}.representative-card b{font-size:9px}.representative-card small{font-size:7px;color:#7b8984}.representative-card i{font-style:normal;font-size:7px;background:#e3f2ea;color:#277055;border-radius:99px;padding:5px 8px}.customer-note,.customer-financial-note{border:1px solid #e7dcc5;background:#fffaf2;border-radius:10px;padding:11px 13px;margin-top:10px}.customer-note b{font-size:8px}.customer-note p{font-size:8px;color:#776b56;margin:4px 0 0}.customer-record-list,.document-list,.relation-list,.agency-list{display:grid;gap:8px}.customer-record-list article,.document-list article{display:grid;grid-template-columns:38px 1fr auto auto;gap:11px;align-items:center;background:#fff;border:1px solid #dfe7e4;border-radius:11px;padding:11px}.record-icon{width:36px;height:36px;border-radius:10px;background:#e9f3ef;color:#27705a;display:grid!important;place-items:center;font-size:11px}.record-icon.contract{background:#f5eee4;color:#8c6338}.customer-record-list article>div,.document-list article>div{display:grid}.customer-record-list b,.document-list b{font-size:9px}.customer-record-list small,.document-list small{font-size:7px;color:#7d8a86}.customer-record-list button{border:1px solid #c9dad4;background:#fff;color:#2d715e;border-radius:8px;padding:7px 9px;font-size:7px}.record-progress{min-width:110px}.record-progress>span{width:100%;height:5px;background:#e7edeb;border-radius:99px;overflow:hidden}.record-progress i{height:100%;display:block;background:#2d8065}.record-progress>b{text-align:left;color:#2a755e}.contract-state,.document-status{border-radius:99px;padding:5px 8px;background:#e7f3ed;color:#2b715a;font-size:7px;font-weight:700}.document-status.expiring{background:#fbefd9;color:#96662e}.document-status.expired{background:#f8e6e3;color:#9f4941}.customer-tab-empty{background:#fff;border:1px dashed #ccdad5;border-radius:12px}.customer-tab-empty .primary{margin:auto}.account-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#1d6752,#37866b);color:#fff;border-radius:13px;padding:18px}.account-hero>div{display:grid}.account-hero small{font-size:7px;opacity:.75}.account-hero b{font-size:22px;margin-top:3px}.account-hero>span{font-size:7px;opacity:.75}.account-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:10px}.account-cards article{display:grid;background:#fff;border:1px solid #dfe7e4;border-radius:11px;padding:13px}.account-cards small{font-size:7px;color:#7b8984}.account-cards b{font-size:12px;margin:4px 0}.account-cards i{font-style:normal;font-size:7px;color:#2d775f}.account-cards i.due{color:#9b6232}.customer-financial-note{font-size:8px;color:#796b53}.customer-section-head{margin-bottom:11px}.customer-section-head p{font-size:7px;color:#7b8984;margin:3px 0 0}.relation-list article{display:grid;grid-template-columns:35px 1fr auto;gap:10px;align-items:center;background:#fff;border:1px solid #dfe7e4;border-radius:10px;padding:10px}.relation-list article>span{width:32px;height:32px;border-radius:9px;background:#e8f3ef;color:#26705a;display:grid;place-items:center}.relation-list article>div{display:grid}.relation-list b{font-size:9px}.relation-list small{font-size:7px;color:#7d8a86}.relation-list em{font-style:normal;font-size:7px;color:#6c7d77}.agency-list{margin-top:10px}.agency-list article{background:#fff;border:1px solid #dfe7e4;border-radius:11px;padding:12px}.agency-list header{display:flex;justify-content:space-between}.agency-list header>span{font-size:9px;font-weight:800}.agency-list header>b{font-size:7px;color:#277156;background:#e5f3ec;border-radius:99px;padding:4px 8px}.agency-list header>b.expired{color:#9f4941;background:#f8e6e3}.agency-list p{font-size:8px;color:#61726c}.agency-list article>div{display:grid;grid-template-columns:1fr 1fr 130px;gap:8px}.agency-list article>div>span{display:grid;background:#f3f6f5;border-radius:8px;padding:8px}.agency-list small{font-size:7px;color:#82908b}.agency-list b{font-size:8px;margin-top:2px}.agency-list footer{border-top:1px solid #edf1ef;margin-top:10px;padding-top:9px;font-size:7px;color:#65776f}.customer-timeline{display:grid}.customer-timeline article{display:grid;grid-template-columns:16px 1fr;gap:9px;position:relative;padding-bottom:18px}.customer-timeline article:not(:last-child):before{content:'';position:absolute;right:5px;top:12px;bottom:0;width:1px;background:#cfdcd7}.customer-timeline i{width:11px;height:11px;border:3px solid #dfeee8;background:#2b7a60;border-radius:50%;z-index:1}.customer-timeline div{background:#fff;border:1px solid #dfe7e4;border-radius:10px;padding:11px}.customer-timeline b{font-size:9px}.customer-timeline small{display:block;font-size:7px;color:#7d8a86;margin-top:2px}.customer-timeline p{font-size:8px;color:#60716b;margin:7px 0 0}.customer-drawer-actions{grid-template-columns:auto 1fr 1fr!important}
.customer-modal-overlay{overflow-y:auto;overscroll-behavior:contain;align-items:flex-start}.customer-modal{width:min(820px,96vw);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;scrollbar-gutter:stable}.customer-modal.compact{width:min(680px,96vw)}.customer-type-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.customer-type-switch label{cursor:pointer}.customer-type-switch input{position:absolute;opacity:0}.customer-type-switch span{display:grid;border:1px solid #dce5e1;border-radius:10px;padding:11px}.customer-type-switch b{font-size:9px}.customer-type-switch small{font-size:7px;color:#7c8985;margin-top:2px}.customer-type-switch label.active span{border-color:#66a48f;background:#edf7f3;color:#246d58}.customer-form-grid label{display:grid;gap:6px;font-size:8px;font-weight:700}.customer-form-grid input,.customer-form-grid select,.customer-form-grid textarea,#customerArchiveReason{width:100%;border:1px solid #dbe4e0;border-radius:9px;padding:10px 11px;font:inherit;outline:none;background:#fff}.customer-form-grid input,.customer-form-grid select{height:41px}.customer-form-grid input:focus,.customer-form-grid select:focus,.customer-form-grid textarea:focus,#customerArchiveReason:focus{border-color:#4d957d;box-shadow:0 0 0 3px rgba(42,121,95,.1)}.customer-form-grid .wide-field{grid-column:1/-1}.customer-form-section{border-top:1px solid #e4eae7;margin-top:14px;padding-top:14px}.customer-form-section>b{display:block;font-size:9px;margin-bottom:10px}.duplicate-warning{border:1px solid #e8c3bb;background:#fff5f3;color:#934b42;border-radius:9px;padding:10px 12px;font-size:8px;margin-top:12px}.customer-modal .modal-actions{position:sticky;bottom:-28px;z-index:5;margin:18px -28px -28px;padding:13px 28px;background:rgba(255,255,255,.98);border-top:1px solid #e1e7e4;box-shadow:0 -9px 22px rgba(26,65,55,.06)}#customerDeleteModal label{display:grid;gap:6px;font-size:8px;font-weight:700;margin-top:12px}
@media(max-width:1050px){.customer-kpis{grid-template-columns:1fr 1fr}.customer-toolbar{grid-template-columns:1fr 1fr 1fr}.customer-search{grid-column:1/-1}.customer-table-head,.customer-row{grid-template-columns:1.4fr 1fr .8fr .6fr 18px}.customer-table-head>span:nth-child(3),.customer-row>span:nth-child(3),.customer-table-head>span:nth-child(5),.customer-row>span:nth-child(5){display:none}}
@media(max-width:700px){.customers-hero{display:grid}.customer-kpis{grid-template-columns:1fr 1fr}.customer-toolbar{grid-template-columns:1fr 1fr}.customer-search{grid-column:1/-1}.customer-table-head{display:none}.customer-row{grid-template-columns:1fr auto 18px;padding:13px}.customer-row>span:nth-child(2),.customer-row>span:nth-child(3),.customer-row>span:nth-child(5){display:none}.customer-row>span:nth-child(4){grid-column:1}.customer-row>span:nth-child(6){grid-column:2;grid-row:1}.customer-row>span:last-child{grid-column:3;grid-row:1}.customer-attention{align-items:flex-start}.customer-attention button{align-self:center}.customer-drawer{width:100vw}.customer-drawer-head{padding:14px}.customer-drawer-identity h2{font-size:13px}.customer-summary{grid-template-columns:1fr 1fr}.customer-details,.account-cards{grid-template-columns:1fr}.customer-record-list article,.document-list article{grid-template-columns:36px 1fr}.customer-record-list article>:nth-child(n+3),.document-list article>:nth-child(n+3){grid-column:2}.agency-list article>div{grid-template-columns:1fr}.customer-drawer-actions{grid-template-columns:1fr!important}.customer-modal-overlay{padding:0}.customer-modal{width:100%;max-height:100vh;max-height:100dvh;border-radius:0;padding:22px 16px}.customer-modal .modal-actions{bottom:-22px;margin:16px -16px -22px;padding:12px 16px}.customer-form-grid{grid-template-columns:1fr}.customer-form-grid .wide-field{grid-column:auto}}

/* Project ↔ customer linking */
.project-customer-section{margin:14px 0;border:1px solid #d9e5e0;background:#fff;border-radius:13px;padding:13px}.project-customer-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-customer-head>div{display:grid}.project-customer-head b{font-size:9px}.project-customer-head b>span{background:#f8e9e5;color:#9c4d43;border-radius:99px;padding:3px 6px;font-size:6px;margin-right:4px}.project-customer-head small{font-size:7px;color:#778681;margin-top:3px}.linked-customer-ok,.linked-customer-required{font-size:7px;font-weight:700;border-radius:99px;padding:5px 8px}.linked-customer-ok{background:#e3f3eb;color:#247055}.linked-customer-required{background:#fae9e6;color:#9f4b42}.project-customer-search{display:flex;align-items:center;gap:8px;border:1px solid #dbe4e0;border-radius:9px;height:40px;padding:0 11px;margin-top:11px}.project-customer-search span{color:#658078}.project-customer-search input{border:0;outline:0;width:100%;font:inherit;font-size:8px}.project-customer-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px;max-height:170px;overflow:auto}.project-customer-option{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;border:1px solid #dfe7e4;background:#fff;border-radius:10px;padding:9px;text-align:right;color:inherit}.project-customer-option:hover{background:#f6faf8}.project-customer-option.selected{border-color:#5e9f89;background:#edf7f3;box-shadow:inset 0 0 0 1px rgba(42,118,93,.06)}.project-customer-option>i{width:32px;height:32px;border-radius:9px;background:#e7f1ed;color:#277159;display:grid;place-items:center;font-style:normal;font-size:8px;font-weight:800}.project-customer-option>span{display:grid;min-width:0}.project-customer-option b{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-customer-option small{font-size:7px;color:#7c8a85;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-customer-option em{font-style:normal;font-size:7px;color:#6d7e78}.project-customer-option.selected em{color:#247058;font-weight:700}.project-customer-empty{grid-column:1/-1;text-align:center;border:1px dashed #d5dfdb;border-radius:9px;padding:15px;color:#7d8a86;font-size:8px}.project-customer-link{width:100%;border:1px solid #dbe7e2;background:#f3f8f6;border-radius:10px;margin-top:12px;padding:9px;display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:center;text-align:right;color:inherit}.project-customer-link:hover{border-color:#89b7a7;background:#edf7f3}.project-customer-link>i{width:30px;height:30px;border-radius:8px;background:#28785f;color:#fff;display:grid;place-items:center;font-style:normal;font-size:7px;font-weight:800}.project-customer-link>span{display:grid}.project-customer-link small{font-size:6px;color:#7a8984}.project-customer-link b{font-size:8px}.project-customer-link em{font-style:normal;font-size:6px;color:#687a73}.project-customer-link>strong{font-size:7px;color:#29725c}.project-customer-missing{border:1px solid #e9c6be;background:#fff5f3;color:#954d43;border-radius:9px;padding:9px;margin-top:11px;font-size:7px}.project-card:has(.project-customer-link)>.project-card-metrics{margin-top:10px}
@media(max-width:700px){.project-customer-options{grid-template-columns:1fr}.project-customer-head{align-items:flex-start}.project-customer-link{grid-template-columns:30px 1fr}.project-customer-link>strong{grid-column:2}}

/* Contract management — records, reusable templates and hierarchical articles. */
.contracts-workspace,.contract-templates-workspace,.contract-materials-workspace{display:grid;gap:18px}.contracts-workspace.hidden,.contract-templates-workspace.hidden,.contract-materials-workspace.hidden{display:none}.contract-module-hero{display:flex;justify-content:space-between;align-items:end;gap:22px;padding:7px 0}.contract-module-hero h1{font-size:27px;margin:3px 0}.contract-module-hero p{margin:0;color:#73817c;font-size:10px;max-width:680px}.contract-module-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.contract-module-kpis article{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e0e8e5;border-radius:14px;padding:15px;box-shadow:0 5px 18px rgba(25,66,55,.035)}.contract-module-kpis article>span{width:42px;height:42px;border-radius:12px;background:#e8f3ef;color:#236f58;display:grid;place-items:center;font-size:14px;font-weight:800}.contract-module-kpis article:nth-child(2)>span{background:#edf0f7;color:#526a91}.contract-module-kpis article:nth-child(3)>span{background:#f6efe5;color:#956a35}.contract-module-kpis article:nth-child(4)>span{background:#eeeaf6;color:#715a91}.contract-module-kpis article>div{display:grid}.contract-module-kpis small{font-size:8px;color:#7b8984}.contract-module-kpis b{font-size:19px;margin:1px 0}.contract-module-kpis em{font-style:normal;font-size:7px;color:#8a9692}.contract-module-panel{background:#fff;border:1px solid #dfe7e4;border-radius:15px;padding:16px}.contract-module-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 190px;gap:9px;margin-bottom:14px}.contract-search{height:42px;border:1px solid #dbe4e0;border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 12px}.contract-search span{color:#698079}.contract-search input{border:0;outline:0;width:100%;font:inherit;font-size:8px}.contract-module-toolbar select{border:1px solid #dbe4e0;border-radius:10px;background:#fff;padding:0 11px;font:inherit;font-size:8px}.contract-hierarchy-guide{display:flex;align-items:center;gap:12px;border:1px solid #d8e4df;background:linear-gradient(120deg,#f2f8f5,#fff);border-radius:13px;padding:13px 15px}.contract-hierarchy-guide>span{width:38px;height:38px;border-radius:11px;background:#26775e;color:#fff;display:grid;place-items:center;font-size:16px}.contract-hierarchy-guide>div{display:grid}.contract-hierarchy-guide b{font-size:9px}.contract-hierarchy-guide p{font-size:8px;color:#6f7f79;margin:3px 0 0}.contract-materials-grid,.contract-templates-grid,.contracts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.contract-material-card,.contract-template-card,.contract-record-card{background:#fff;border:1px solid #dce5e1;border-radius:14px;padding:14px;box-shadow:0 6px 20px rgba(30,68,57,.035);min-width:0}.contract-material-card header,.contract-template-card header,.contract-record-card header{display:flex;justify-content:space-between;align-items:center}.contract-material-card header>span,.contract-template-card header>span,.contract-record-card header>span{font-size:7px;color:#5f756d;background:#edf4f1;border-radius:99px;padding:5px 8px;direction:ltr}.contract-material-card header>i,.contract-template-card header>i,.contract-record-card header>i{font-style:normal;font-size:7px;color:#7b6b54;background:#f7efe4;border-radius:99px;padding:5px 8px}.contract-material-card h3,.contract-template-card h3,.contract-record-card h3{font-size:12px;line-height:1.65;margin:12px 0 5px}.contract-material-card>p,.contract-template-card>p{font-size:8px;line-height:1.8;color:#77847f;margin:0;min-height:44px}.contract-material-card>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.contract-material-card>div>span{display:grid;background:#f4f7f6;border-radius:8px;padding:8px}.contract-material-card small{font-size:6px;color:#81908b}.contract-material-card b{font-size:9px;margin-top:2px}.contract-material-card footer,.contract-template-card footer,.contract-record-card footer{display:flex;align-items:center;gap:7px;border-top:1px solid #edf1ef;margin-top:12px;padding-top:11px}.contract-material-card footer button{flex:1}.contract-empty{grid-column:1/-1;text-align:center;border:1px dashed #ccd9d5;border-radius:13px;padding:45px 20px;background:#fbfcfc}.contract-empty>span{font-size:28px;color:#6f9d8d}.contract-empty h3{font-size:11px;margin:8px 0 3px}.contract-empty p{font-size:8px;color:#7d8a86;margin:0}.contract-template-icon{width:42px;height:42px;border-radius:12px;background:#e7f2ee;color:#267159;display:grid;place-items:center;font-size:16px;margin-top:12px}.contract-template-type{display:inline-flex;margin-top:10px;border-radius:7px;padding:5px 8px;background:#f7f0e6;color:#896039;font-size:7px;font-weight:700}.contract-template-card ol{padding:0 19px 0 0;margin:12px 0;min-height:87px}.contract-template-card li{font-size:7px;color:#63736d;padding:3px 2px}.contract-template-card footer{justify-content:space-between}.contract-template-card footer>span{font-size:7px;color:#7c8a85}.contract-record-card{display:grid}.contract-record-card header>i.contract-status-draft{background:#eef0ef;color:#6d7774}.contract-record-card header>i.contract-status-review{background:#fff2dd;color:#96662e}.contract-record-card header>i.contract-status-approved,.contract-record-card header>i.contract-status-signed,.contract-record-card header>i.contract-status-active{background:#e3f3eb;color:#246f54}.contract-party{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;background:#f5f8f7;border-radius:10px;padding:9px;margin-top:8px}.contract-party>span{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,#24745b,#45987b);color:#fff;display:grid;place-items:center;font-size:8px;font-weight:800}.contract-party>div{display:grid}.contract-party small,.contract-record-meta small{font-size:6px;color:#84908c}.contract-party b{font-size:9px}.contract-party em{font-size:6px;color:#74827d;font-style:normal}.contract-record-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.contract-record-meta>span{display:grid;border:1px solid #e5ebe8;border-radius:8px;padding:8px;min-width:0}.contract-record-meta b{font-size:8px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-record-card footer{justify-content:flex-end}.contract-record-card footer>span{font-size:7px;color:#7f8c87;margin-left:auto}.contract-editor-overlay{overflow-y:auto;overscroll-behavior:contain;align-items:flex-start}.contract-material-modal{width:min(1120px,97vw);max-height:calc(100vh - 34px);max-height:calc(100dvh - 34px);overflow:auto;scrollbar-gutter:stable}.contract-template-modal,.contract-record-modal{width:min(850px,96vw);max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow:auto}.contract-basic-fields label{display:grid;gap:6px;font-size:8px;font-weight:700}.contract-basic-fields input,.contract-basic-fields select,.contract-basic-fields textarea{width:100%;border:1px solid #dbe4e0;border-radius:9px;padding:10px 11px;font:inherit;outline:none;background:#fff}.contract-basic-fields input,.contract-basic-fields select{height:41px}.contract-basic-fields .wide-field{grid-column:1/-1}.contract-tree-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:14px;margin-top:16px}.contract-tree-layout>section,.contract-tree-layout>aside{border:1px solid #dfe7e4;border-radius:12px;background:#f8faf9;padding:12px;min-width:0}.contract-tree-layout>aside{background:#f1f0eb}.contract-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.contract-section-head>div{display:grid}.contract-section-head b{font-size:9px}.contract-section-head small{font-size:7px;color:#7b8984;margin-top:2px}.contract-clause-editor{display:grid;gap:7px;max-height:440px;overflow:auto;padding-left:4px}.contract-clause-branch{display:grid;gap:6px}.contract-clause-row{display:grid;grid-template-columns:31px 1fr auto;align-items:start;gap:8px;background:#fff;border:1px solid #dfe7e4;border-radius:10px;padding:8px;margin-right:calc(var(--clause-depth) * 22px)}.contract-clause-row>span{width:29px;height:29px;border-radius:8px;background:#e7f2ee;color:#267159;display:grid;place-items:center;font-size:8px;font-weight:800}.contract-clause-row textarea{border:0;resize:vertical;outline:none;font:inherit;font-size:8px;line-height:1.7;min-height:46px;padding:4px}.contract-clause-row>div{display:grid;gap:4px}.contract-clause-row>div button{border:0;background:#edf5f2;color:#2c735e;border-radius:6px;padding:5px 7px;font-size:6px;white-space:nowrap}.contract-clause-row>div .danger-link{background:#fff0ed;color:#9a4c43}.contract-document-preview{background:#fff;border:1px solid #deddd7;border-radius:8px;min-height:400px;padding:24px 22px;box-shadow:0 10px 28px rgba(50,47,39,.07)}.contract-preview-title{text-align:center;border-bottom:2px solid #253d35;padding-bottom:12px;margin-bottom:14px}.contract-preview-title small{font-size:7px;color:#728079}.contract-preview-title h3{font-size:13px;margin:4px 0 0}.contract-preview-intro,.contract-document-intro{font-size:8px;line-height:1.9;color:#586a64}.contract-preview-clauses{display:grid;gap:7px}.contract-preview-clause{display:grid;grid-template-columns:28px 1fr;gap:5px;align-items:start}.contract-preview-clause>span{font-size:8px;font-weight:800;padding-top:2px}.contract-preview-clause p{font-size:8px;line-height:1.9;margin:0}.contract-preview-clause .contract-preview-clauses{margin-top:6px}.contract-preview-placeholder{font-size:8px;color:#8b9692;text-align:center;padding:30px}.contract-material-modal .modal-actions,.contract-template-modal .modal-actions,.contract-record-modal .modal-actions{position:sticky;bottom:-28px;z-index:5;margin:18px -28px -28px;padding:13px 28px;background:rgba(255,255,255,.98);border-top:1px solid #e1e7e4;box-shadow:0 -9px 22px rgba(26,65,55,.06)}.selectable-head{margin-top:16px}.selectable-head>span{font-size:7px;background:#e5f3ec;color:#277055;border-radius:99px;padding:5px 8px;font-weight:700}.contract-material-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:330px;overflow:auto}.contract-material-picker label{cursor:pointer}.contract-material-picker input{position:absolute;opacity:0}.contract-material-picker label>span{display:grid;grid-template-columns:32px 1fr;gap:9px;align-items:center;border:1px solid #dfe7e4;border-radius:10px;padding:9px}.contract-material-picker label.selected>span{background:#edf7f3;border-color:#72aa96}.contract-material-picker i{width:30px;height:30px;border-radius:8px;background:#eef3f1;color:#59716a;display:grid;place-items:center;font-style:normal;font-size:8px;font-weight:800}.contract-material-picker label.selected i{background:#28775e;color:#fff}.contract-material-picker label span span{display:grid}.contract-material-picker b{font-size:8px}.contract-material-picker small{font-size:7px;color:#7b8984;margin-top:2px}.contract-snapshot-note{display:flex;gap:10px;align-items:center;border:1px solid #d8e4df;background:#f2f8f5;border-radius:11px;padding:11px;margin-top:14px}.contract-snapshot-note>span{width:34px;height:34px;border-radius:9px;background:#27745c;color:#fff;display:grid;place-items:center}.contract-snapshot-note>div{display:grid}.contract-snapshot-note b{font-size:8px}.contract-snapshot-note p{font-size:7px;color:#6d7e78;margin:3px 0 0}.contract-preview-overlay{overflow:auto;align-items:flex-start}.contract-preview-modal{width:min(900px,96vw);max-height:none;margin:18px auto;padding:0;background:#e9ecea;overflow:visible}.contract-preview-actions{position:sticky;top:0;z-index:5;display:flex;justify-content:flex-end;gap:7px;padding:12px 48px 12px 18px;background:rgba(240,243,241,.96);border-bottom:1px solid #d7dfdc}.contract-document{width:min(760px,calc(100% - 42px));margin:22px auto;background:#fff;box-shadow:0 12px 35px rgba(32,54,47,.12);padding:42px 48px;color:#243a33}.contract-document>header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #274b3f;padding-bottom:16px}.contract-document>header>div:last-child{display:grid;text-align:left}.contract-document>header small{font-size:7px;color:#778680}.contract-document>header b{font-size:10px;margin-top:3px}.contract-document-brand{display:flex;align-items:center;gap:9px}.contract-document-brand>span{width:39px;height:39px;border-radius:11px;background:#1f6c54;color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800}.contract-document-brand>div{display:grid}.contract-document-brand b{font-size:10px}.contract-document-brand small{font-size:7px}.contract-document-heading{text-align:center;padding:26px 0 18px}.contract-document-heading>span{display:inline-flex;border-radius:99px;background:#e7f3ed;color:#287159;padding:5px 9px;font-size:7px;font-weight:700}.contract-document-heading h1{font-size:20px;margin:9px 0 4px}.contract-document-heading p{font-size:8px;color:#71807a}.contract-document-parties{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px}.contract-document-parties>div{display:grid;border:1px solid #dfe6e3;border-radius:9px;padding:10px}.contract-document-parties small{font-size:7px;color:#7b8984}.contract-document-parties b{font-size:9px;margin:3px 0}.contract-document-parties span{font-size:7px;color:#697b74}.contract-document-material{border-top:1px solid #cfd9d5;padding:18px 0}.contract-document-material h3{display:grid;grid-template-columns:85px 1fr;gap:8px;align-items:center;font-size:11px;margin:0 0 13px}.contract-document-material h3 span{font-size:7px;border-radius:7px;background:#e8f2ee;color:#2a705b;padding:6px 8px;text-align:center}.contract-document-material .contract-preview-clause p{font-size:8.5px}.contract-document-signatures{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:2px solid #274b3f;margin-top:18px;padding-top:22px}.contract-document-signatures>div{display:grid}.contract-document-signatures small{font-size:7px;color:#7b8984}.contract-document-signatures b{font-size:9px;margin:4px 0 24px}.contract-document-signatures span{font-size:8px}.contract-preview-modal>.modal-close{top:10px;right:12px;z-index:8}
.project-first-field{border:1px solid #80ae9e;background:#f0f8f5;border-radius:10px;padding:10px!important}.project-first-field>span{font-size:6px;background:#28765e;color:#fff;border-radius:99px;padding:3px 6px;width:max-content}.project-first-field select{border-color:#b8d2c9}.contract-basic-fields input[readonly]{background:#f2f5f4;color:#344b43}.contract-project-derived{border:1px solid #d8e5e0;background:linear-gradient(135deg,#edf7f3,#fff);border-radius:12px;margin-top:14px;overflow:hidden}.contract-project-derived>header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #dfe9e5}.contract-project-derived>header>div{display:flex;align-items:center;gap:10px}.contract-project-derived>header>div>span{width:35px;height:35px;border-radius:10px;background:#27765e;color:#fff;display:grid;place-items:center}.contract-project-derived>header>div>div{display:grid}.contract-project-derived small{font-size:6px;color:#7b8984}.contract-project-derived b{font-size:9px}.contract-project-derived em{font-size:6px;color:#6c7e77;font-style:normal}.contract-project-derived>header>i{font-style:normal;font-size:6px;background:#e2f1e9;color:#247054;border-radius:99px;padding:5px 8px}.contract-project-derived>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dfe9e5}.contract-project-derived>div>span{display:grid;background:#fff;padding:10px 12px}.contract-project-derived>div b{font-size:9px;margin-top:3px}.contract-project-empty{border:1px dashed #d6dfdc;background:#fafbfb;border-radius:10px;padding:16px;text-align:center;font-size:8px;color:#75827e}.contract-project-tasks{margin-top:10px}.contract-project-tasks details{border:1px solid #dce5e2;border-radius:11px;background:#fff;overflow:hidden}.contract-project-tasks summary{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;padding:11px 13px;cursor:pointer;list-style:none}.contract-project-tasks summary::-webkit-details-marker{display:none}.contract-project-tasks summary>span{width:32px;height:32px;border-radius:9px;background:#eef3f1;color:#477067;display:grid;place-items:center}.contract-project-tasks summary>div{display:grid}.contract-project-tasks summary b{font-size:8px}.contract-project-tasks summary small{font-size:6px;color:#7b8984}.contract-project-tasks summary>i{font-style:normal;color:#64766f}.contract-task-groups{max-height:300px;overflow:auto;padding:0 11px 11px;display:grid;gap:8px}.contract-task-groups>section{border:1px solid #e4eae7;border-radius:9px;overflow:hidden}.contract-task-groups section>header{display:flex;justify-content:space-between;align-items:center;background:#f3f7f5;padding:8px 10px}.contract-task-groups section>header>div{display:grid}.contract-task-groups section>header b{font-size:7px}.contract-task-groups section>header small{font-size:6px;color:#7c8985}.contract-task-groups section>header>span{font-size:6px;color:#5f746d}.contract-task-groups article{display:grid;grid-template-columns:65px 1fr 48px;gap:8px;padding:7px 10px;border-top:1px solid #edf1ef}.contract-task-groups article span,.contract-task-groups article em{font-size:6px;color:#7b8984;font-style:normal}.contract-task-groups article b{font-size:7px}.contract-task-appendix{border-top:2px solid #274b3f;margin-top:20px;padding-top:20px}.contract-task-appendix>header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.contract-task-appendix>header>span{border-radius:7px;background:#274b3f;color:#fff;padding:7px 10px;font-size:7px}.contract-task-appendix>header h2{font-size:13px;margin:0}.contract-task-appendix>header p{font-size:7px;color:#74827d;margin:2px 0 0}.contract-task-appendix>section{break-inside:avoid;margin-top:13px}.contract-task-appendix>section h3{font-size:9px;background:#edf3f1;border-right:3px solid #2b765f;margin:0;padding:7px 9px}.contract-task-appendix table{width:100%;border-collapse:collapse}.contract-task-appendix th,.contract-task-appendix td{border-bottom:1px solid #e3e9e6;padding:6px 8px;text-align:right;font-size:7px}.contract-task-appendix th{color:#708079;background:#fafbfb}.contract-task-appendix th:first-child,.contract-task-appendix td:first-child{width:75px;direction:ltr}.contract-task-appendix th:last-child,.contract-task-appendix td:last-child{width:55px}
@media(max-width:1100px){.contract-materials-grid,.contract-templates-grid,.contracts-grid{grid-template-columns:1fr 1fr}.contract-tree-layout{grid-template-columns:1fr}.contract-module-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.contract-module-hero{display:grid}.contract-module-kpis{grid-template-columns:1fr 1fr}.contract-module-toolbar{grid-template-columns:1fr}.contract-materials-grid,.contract-templates-grid,.contracts-grid{grid-template-columns:1fr}.contract-editor-overlay{padding:0}.contract-material-modal,.contract-template-modal,.contract-record-modal{width:100%;max-height:100vh;max-height:100dvh;border-radius:0;padding:22px 16px}.contract-basic-fields{grid-template-columns:1fr}.contract-basic-fields .wide-field{grid-column:auto}.contract-material-picker{grid-template-columns:1fr}.contract-clause-row{grid-template-columns:28px 1fr;margin-right:calc(var(--clause-depth) * 12px)}.contract-clause-row>div{grid-column:2;display:flex}.contract-material-modal .modal-actions,.contract-template-modal .modal-actions,.contract-record-modal .modal-actions{bottom:-22px;margin:16px -16px -22px;padding:12px 16px}.contract-project-derived>div{grid-template-columns:1fr 1fr}.contract-project-derived>header{align-items:flex-start}.contract-project-derived>header>i{display:none}.contract-task-groups article{grid-template-columns:50px 1fr}.contract-task-groups article em{grid-column:2}.contract-document{width:100%;margin:0;padding:32px 20px;box-shadow:none}.contract-document-parties,.contract-document-signatures{grid-template-columns:1fr}.contract-preview-modal{width:100%;margin:0;border-radius:0}.contract-preview-actions{padding-right:48px}.contract-record-card footer{flex-wrap:wrap}.contract-record-card footer>span{width:100%;margin:0}.contract-module-hero .primary{width:100%}}
@media print{body>*{display:none!important}#app{display:block!important}.sidebar,.topbar,.app>main>.workspace,.drawer-overlay,.toast{display:none!important}#contractPreviewModal{display:block!important;position:static!important;background:#fff!important;padding:0!important}.contract-preview-modal{width:100%!important;margin:0!important;background:#fff!important;box-shadow:none!important}.contract-preview-actions,.contract-preview-modal>.modal-close{display:none!important}.contract-document{width:100%!important;margin:0!important;box-shadow:none!important;padding:18mm 16mm!important}.contract-document-material{break-inside:avoid}}

/* Organization settings */
.organization-settings-panel{padding:0!important;background:transparent!important;border:0!important}.organization-settings-panel form{display:grid;gap:14px}.organization-profile-hero{display:grid;grid-template-columns:72px 1fr 260px;gap:16px;align-items:center;background:linear-gradient(135deg,#123f36,#0b6b57);color:#fff;border-radius:17px;padding:20px;overflow:hidden;position:relative}.organization-profile-hero:after{content:"";position:absolute;width:230px;height:230px;border:1px solid rgba(255,255,255,.12);border-radius:50%;left:-70px;top:-120px;box-shadow:0 0 0 40px rgba(255,255,255,.03)}.organization-logo-preview{width:66px;height:66px;border-radius:18px;display:grid;place-items:center;background:#0d5c50;color:#fff;border:1px solid rgba(255,255,255,.3);font-size:26px;font-weight:800;box-shadow:0 10px 24px rgba(0,0,0,.15)}.organization-profile-copy{display:grid;justify-items:start}.organization-profile-copy .status-badge{background:rgba(255,255,255,.14);color:#d6f5e9}.organization-profile-copy h2{font-size:20px;margin:7px 0 1px}.organization-profile-copy p{font-size:9px;color:#b8d6ce;margin:0}.organization-completion{display:grid;grid-template-columns:1fr auto;gap:5px 8px}.organization-completion>span,.organization-completion>b{font-size:9px}.organization-completion>div{grid-column:1/-1;background:rgba(255,255,255,.15);height:6px;border-radius:99px;overflow:hidden}.organization-completion i{display:block;height:100%;background:#f0bd72;border-radius:99px;transition:.25s}.organization-completion small{grid-column:1/-1;color:#accac2;font-size:7px;line-height:1.6}.organization-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.organization-setting-card{background:#fff;border:1px solid #e0e7e4;border-radius:15px;padding:17px;min-width:0}.organization-card-wide{grid-column:1/-1}.organization-setting-card>header{display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid #edf1ef;padding-bottom:12px;margin-bottom:14px}.organization-setting-card>header>span{width:31px;height:31px;border-radius:9px;background:#e8f3ef;color:#277159;display:grid;place-items:center;font-size:7px;font-weight:800}.organization-setting-card>header h3{font-size:11px;margin:0}.organization-setting-card>header p{font-size:7px;color:#7b8884;margin:3px 0 0}.organization-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.organization-card-wide .organization-form-grid{grid-template-columns:repeat(4,1fr)}.organization-form-grid label{display:grid;gap:5px;font-size:8px;font-weight:700;color:#4f5f5a}.organization-form-grid input,.organization-form-grid select,.organization-form-grid textarea{width:100%;border:1px solid #dce4e1;background:#fbfcfc;border-radius:9px;padding:9px 10px;min-height:39px;font:inherit;outline:none;resize:vertical}.organization-form-grid input:focus,.organization-form-grid select:focus,.organization-form-grid textarea:focus{border-color:#6ca891;box-shadow:0 0 0 3px rgba(42,121,94,.08);background:#fff}.organization-form-grid .field-wide{grid-column:span 2}.organization-assets{display:grid;gap:7px}.organization-assets label{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px dashed #c9d8d2;border-radius:10px;padding:10px;cursor:pointer}.organization-assets input{position:absolute;opacity:0;pointer-events:none}.organization-assets span{font-size:8px;font-weight:700}.organization-assets b{font-size:7px;color:#277159;background:#e8f3ef;border-radius:7px;padding:5px 8px;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.organization-color-field{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:9px;margin-top:10px;font-size:8px;font-weight:700}.organization-color-field input{width:38px;height:30px;border:0;background:transparent;padding:0}.organization-color-field span{font-size:8px;direction:ltr}.organization-privacy-note{margin-top:11px;border-radius:9px;background:#f1f6f4;color:#5d716a;padding:9px;font-size:7px;line-height:1.7}.organization-settings-actions{position:sticky;bottom:12px;z-index:8;display:flex;align-items:center;justify-content:flex-end;gap:9px;background:rgba(255,255,255,.96);border:1px solid #dce5e2;border-radius:13px;padding:11px 13px;box-shadow:0 9px 28px rgba(22,60,50,.12);backdrop-filter:blur(8px)}.organization-settings-actions>div{display:grid;margin-left:auto}.organization-settings-actions b{font-size:9px}.organization-settings-actions span{font-size:7px;color:#7c8985}.contract-document-org-footer{display:grid;gap:3px;text-align:center;border-top:1px solid #dce4e1;margin-top:20px;padding-top:10px;color:#7a8782;font-size:6px}
@media(max-width:1150px){.organization-card-wide .organization-form-grid{grid-template-columns:1fr 1fr}.organization-profile-hero{grid-template-columns:62px 1fr}.organization-completion{grid-column:1/-1}}
@media(max-width:800px){.settings-layout{grid-template-columns:1fr!important}.settings-menu{display:flex!important;overflow:auto}.settings-menu>b{display:none}.settings-menu button{min-width:max-content}.organization-settings-grid{grid-template-columns:1fr}.organization-card-wide{grid-column:auto}.organization-profile-hero{grid-template-columns:52px 1fr;padding:15px}.organization-logo-preview{width:50px;height:50px;border-radius:14px}.organization-form-grid,.organization-card-wide .organization-form-grid{grid-template-columns:1fr}.organization-form-grid .field-wide{grid-column:auto}.organization-settings-actions{flex-wrap:wrap}.organization-settings-actions>div{width:100%;margin:0}.organization-settings-actions button{flex:1}}

/* Diyar organization identity and persistent asset upload */
.organization-brand-logo{display:block;object-fit:contain}.login-organization-logo{width:220px;height:92px;object-position:right center;margin-bottom:45px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}.mobile-logo .organization-brand-logo{width:150px;height:62px;object-position:right center}.organization-sidebar-brand{display:grid!important;justify-items:center;gap:7px!important;padding-bottom:17px!important}.organization-sidebar-brand .organization-brand-logo{width:170px;height:68px}.organization-sidebar-brand small{color:#88aaa1!important;font-size:8px!important}.organization-profile-hero{grid-template-columns:150px 1fr 260px}.organization-logo-preview{background:rgba(255,255,255,.96)!important;width:145px!important;height:66px!important;padding:7px 9px;border-color:rgba(255,255,255,.5)!important}.organization-logo-preview img{width:100%;height:100%;object-fit:contain}.organization-logo-uploader{display:grid;grid-template-columns:145px 1fr;gap:13px;align-items:center;border:1px solid #dce7e3;background:#f7faf9;border-radius:12px;padding:11px;margin-bottom:10px}.organization-logo-canvas{height:76px;border-radius:9px;background:linear-gradient(45deg,#edf0ef 25%,transparent 25%),linear-gradient(-45deg,#edf0ef 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#edf0ef 75%),linear-gradient(-45deg,transparent 75%,#edf0ef 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0;display:grid;place-items:center;padding:8px}.organization-logo-canvas img{width:100%;height:100%;object-fit:contain}.organization-logo-uploader>div:last-child{display:grid;justify-items:start;gap:3px}.organization-logo-uploader b{font-size:9px}.organization-logo-uploader small{font-size:7px;color:#75837e}.organization-upload-button{display:inline-flex!important;background:#276f5a;color:#fff!important;border:0!important;border-radius:7px!important;padding:6px 9px!important;margin-top:5px;font-size:7px!important;cursor:pointer}.organization-upload-button input{position:absolute;opacity:0}.organization-logo-uploader button{border:0;background:transparent;color:#6e7d78;font-size:6px;padding:4px 0}.organization-upload-status{display:flex;gap:8px;align-items:center;background:#edf7f3;border:1px solid #d1e8df;border-radius:9px;padding:8px;margin-top:10px}.organization-upload-status>span{width:24px;height:24px;border-radius:7px;background:#2f8064;color:#fff;display:grid;place-items:center;font-size:8px}.organization-upload-status>div{display:grid}.organization-upload-status b{font-size:7px}.organization-upload-status small{font-size:6px;color:#6f817a}.organization-upload-status.is-new{background:#fff8e9;border-color:#eed8a6}.organization-upload-status.is-new>span{background:#d59a35}.contract-document-brand>img{width:116px;height:48px;object-fit:contain;object-position:right center}.contract-document-brand>span{display:none}
@media(max-width:1150px){.organization-profile-hero{grid-template-columns:145px 1fr}.organization-completion{grid-column:1/-1}}
@media(max-width:800px){.organization-profile-hero{grid-template-columns:110px 1fr}.organization-logo-preview{width:105px!important;height:54px!important;border-radius:12px}.organization-logo-uploader{grid-template-columns:1fr}}

/* Project-first contract customer autofill */
.contract-customer-auto{border:1px solid #d9e5e0;background:linear-gradient(135deg,#f5faf8,#fff);border-radius:12px;margin-top:14px;overflow:hidden}.contract-customer-auto>header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #e2ebe7}.contract-customer-auto>header>div{display:flex;align-items:center;gap:10px}.contract-customer-auto>header>div>span{width:35px;height:35px;border-radius:10px;background:#e9b966;color:#503913;display:grid;place-items:center;font-size:14px}.contract-customer-auto>header>div>div{display:grid}.contract-customer-auto small{font-size:6px;color:#7c8985}.contract-customer-auto b{font-size:9px}.contract-customer-auto em{font-size:6px;color:#6c7e77;font-style:normal}.contract-customer-auto>header>i{font-style:normal;font-size:6px;background:#e2f1e9;color:#247054;border-radius:99px;padding:5px 8px}.contract-customer-details{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e2ebe7}.contract-customer-details>span{display:grid;background:#fff;padding:10px 12px;min-width:0}.contract-customer-details b{margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-customer-details .customer-address{grid-column:span 2}.contract-customer-missing{border:1px dashed #e3b7aa;background:#fff7f4;color:#92574a;border-radius:10px;padding:13px;text-align:center;font-size:8px}.contract-basic-fields>#contractCustomerName{display:none}
@media(max-width:700px){.contract-customer-details{grid-template-columns:1fr 1fr}.contract-customer-details .customer-address{grid-column:span 2}.contract-customer-auto>header>i{display:none}}

/* Imported Diyar contract library */
.contract-material-source{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:0 0 7px;padding:4px 7px;border-radius:99px;background:#f0edfa;color:#655492!important;font-size:6px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Smart Diyar contract document */
.contract-readiness{display:flex;align-items:center;gap:8px;margin-left:auto;margin-right:0}.contract-readiness>span{width:29px;height:29px;border-radius:9px;background:#dff3ea;color:#17704f;display:grid;place-items:center;font-weight:900}.contract-readiness>div{display:grid;min-width:190px}.contract-readiness b{font-size:8px;color:#28473d}.contract-readiness small{font-size:6px;color:#70817b;margin-top:2px}.contract-readiness.needs-attention>span{background:#fff0d8;color:#966227}.contract-preview-actions{align-items:center}.contract-document{padding:0;overflow:hidden;background:#fff}.contract-cover{position:relative;min-height:980px;padding:48px 54px 38px;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fff 78%,#f8fbfa 100%)}.contract-cover:before{content:"";position:absolute;inset:0 0 0 auto;width:8px;background:linear-gradient(#34286f 0 72%,#2eb9ae 72%)}.contract-cover:after{content:"D";position:absolute;left:-18px;bottom:70px;color:#2eb9ae0b;font-size:240px;font-weight:900;line-height:1}.contract-cover-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid #dce3e1;position:relative;z-index:1}.contract-cover-brand img{width:145px;height:72px;object-fit:contain;object-position:right center}.contract-cover-reference{display:grid;border-right:2px solid #36b5a8;padding-right:14px;gap:4px;text-align:right}.contract-cover-reference small{font-size:8px;color:#5f6e69}.contract-cover-reference b{font-size:10px;color:#312a63;letter-spacing:.4px}.contract-cover-title{margin-top:78px;display:grid;justify-items:start;position:relative;z-index:1}.contract-cover-title>span{font-size:8px;font-weight:800;color:#1f988f;display:flex;align-items:center;gap:8px}.contract-cover-title>span:before{content:"";width:22px;height:2px;background:#27b7ac}.contract-cover-title h1{font-size:31px;line-height:1.45;margin:14px 0 0;color:#2f2865;letter-spacing:-.5px}.contract-cover-title strong{font-size:27px;color:#2aa79e;margin-top:-3px}.contract-cover-title p{font-size:8px;line-height:1.8;color:#687873;max-width:600px;margin:10px 0 0}.contract-cover-project{margin-top:42px;border:1px solid #e0e5e4;border-right:4px solid #33276c;border-radius:12px;padding:14px 17px;display:grid;box-shadow:0 8px 24px rgba(43,38,91,.05);position:relative;z-index:1}.contract-cover-project small,.contract-cover-parties small{font-size:7px;color:#168f86;font-weight:800}.contract-cover-project>b{font-size:17px;color:#302963;margin-top:2px}.contract-cover-project strong{font-size:9px;color:#354942;margin-top:4px}.contract-cover-project span{font-size:7px;color:#71807b;margin-top:3px}.contract-cover-parties{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;position:relative;z-index:1}.contract-cover-parties article{display:grid;background:#f7f7fa;border-radius:11px;padding:14px 16px;border:1px solid #ececf1}.contract-cover-parties b{font-size:10px;color:#27243d;margin:4px 0}.contract-cover-parties span{font-size:7px;color:#737a77}.contract-cover-facts{display:grid;grid-template-columns:repeat(3,1fr);background:#31286c;color:#fff;border-radius:11px;margin-top:13px;overflow:hidden;position:relative;z-index:1}.contract-cover-facts>div{display:grid;text-align:center;padding:13px 10px;border-left:1px solid rgba(255,255,255,.15)}.contract-cover-facts>div:last-child{border-left:0}.contract-cover-facts small{font-size:7px;color:#b9b5d1}.contract-cover-facts b{font-size:10px;margin-top:3px}.contract-cover-footer{display:flex;justify-content:space-between;align-items:end;margin-top:auto;border-top:1px solid #dce3e1;padding-top:18px;position:relative;z-index:1}.contract-cover-footer>div{display:grid}.contract-cover-footer b{font-size:8px}.contract-cover-footer span{font-size:6px;color:#7b8884;margin-top:2px}.contract-cover-footer em{font-size:7px;font-style:normal;color:#54736a;border:1px solid #b9ddd4;border-radius:8px;padding:7px 9px}.contract-cover-footer em strong{color:#158c82}.contract-body{padding:36px 48px 42px}.contract-body-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #31286c;padding-bottom:12px}.contract-body-header>div:last-child{display:grid;text-align:left}.contract-body-header small{font-size:6px;color:#7a8782}.contract-body-header b{font-size:8px;margin-top:2px}.contract-document-brand img{width:82px;height:40px;object-fit:contain;object-position:right center}.contract-document-brand>div{display:grid}.contract-agreement-intro{padding:22px 0 18px;display:grid;gap:8px}.contract-agreement-intro>div:first-child{display:grid;grid-template-columns:130px 1fr;align-items:start;border-bottom:1px solid #e1e7e5;padding-bottom:11px}.contract-agreement-intro>div:first-child small{font-size:7px;color:#168f86;font-weight:800}.contract-agreement-intro p{font-size:8px;line-height:1.9;margin:0;color:#40524c}.contract-agreement-intro>article{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;border:1px solid #dfe5e3;border-radius:10px;padding:11px}.contract-agreement-intro>article>i{width:30px;height:30px;border-radius:9px;background:#342b70;color:#fff;display:grid;place-items:center;font-style:normal;font-size:9px;font-weight:800}.contract-agreement-intro article div{display:grid}.contract-agreement-intro article small{font-size:7px;color:#168f86;font-weight:800}.contract-agreement-intro article b{font-size:10px;margin:3px 0}.contract-agreement-intro article p{font-size:7.5px;color:#65736f}.contract-smart-summary{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;border:1px solid #cde2dc;background:#f1f8f5;border-radius:10px;padding:10px 12px;margin-bottom:15px}.contract-smart-summary>span{width:32px;height:32px;border-radius:9px;background:#208b72;color:#fff;display:grid;place-items:center}.contract-smart-summary>div{display:grid}.contract-smart-summary small{font-size:6px;color:#6d8179}.contract-smart-summary b{font-size:9px;margin:2px 0}.contract-smart-summary p{font-size:7px;color:#526a62;margin:0}.contract-document-signatures>div:first-child{order:0}.contract-document-signatures>div:last-child{order:1}
@media(max-width:700px){.contract-readiness{display:none}.contract-cover{min-height:860px;padding:32px 20px}.contract-cover-title{margin-top:48px}.contract-cover-title h1{font-size:25px}.contract-cover-title strong{font-size:21px}.contract-cover-brand img{width:120px}.contract-cover-parties{grid-template-columns:1fr}.contract-cover-facts{grid-template-columns:1fr}.contract-cover-facts>div{border-left:0;border-bottom:1px solid rgba(255,255,255,.15)}.contract-cover-footer{display:grid;gap:12px}.contract-body{padding:28px 20px}.contract-agreement-intro>div:first-child{grid-template-columns:1fr;gap:5px}}
@media print{.contract-cover{min-height:257mm;page-break-after:always;break-after:page;padding:10mm 10mm 8mm}.contract-cover-title{margin-top:22mm}.contract-cover-title h1{font-size:28pt}.contract-cover-title strong{font-size:23pt}.contract-body{padding:0}.contract-body-header{break-after:avoid}.contract-agreement-intro{break-inside:avoid}.contract-document{padding:0!important;overflow:visible}.contract-document-material{break-inside:avoid;page-break-inside:avoid}.contract-task-appendix{page-break-before:always}}

/* Contract intelligence v2 — refined Diyar document experience */
.contract-preview-modal{background:#edf1f0}.contract-preview-actions{position:sticky;top:0;z-index:12;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid #dce4e1;box-shadow:0 8px 28px rgba(33,47,44,.08)}
.contract-readiness>span{border-radius:50%;box-shadow:0 0 0 4px #edf8f3}.contract-readiness>div{min-width:220px}.contract-readiness b{font-size:9px}.contract-readiness small{font-size:7px}
.contract-document{width:min(860px,100%);margin:24px auto 42px;box-shadow:0 22px 60px rgba(31,45,42,.13);border-radius:3px}
.contract-cover{min-height:1080px;padding:48px 58px 34px;background:radial-gradient(circle at 4% 88%,rgba(44,183,172,.08),transparent 28%),linear-gradient(180deg,#fff 0%,#fff 76%,#f7faf9 100%)}
.contract-cover:before{width:10px;background:linear-gradient(180deg,#312766 0 68%,#2db3a8 68% 91%,#d9ae63 91%)}
.contract-cover:after{content:"";width:330px;height:330px;left:-150px;bottom:-110px;border:1px solid rgba(45,179,168,.1);border-radius:50%;box-shadow:0 0 0 38px rgba(45,179,168,.035),0 0 0 78px rgba(49,39,102,.025)}
.contract-cover-header{padding-bottom:20px}.contract-cover-brand{display:grid;justify-items:start}.contract-cover-brand img{width:158px;height:74px}.contract-cover-brand span{font-size:6px;color:#86918e;margin-top:-7px;padding-right:6px;letter-spacing:.15px}.contract-cover-reference{border-right:0;border-left:2px solid #31b4a8;padding:0 0 0 16px;justify-items:end;direction:rtl}.contract-cover-reference small{font-size:7px;letter-spacing:.2px}.contract-cover-reference b{font-size:12px;direction:ltr}.contract-cover-reference em{font-size:6px;font-style:normal;color:#fff;background:#312766;border-radius:99px;padding:4px 9px}
.contract-cover-control{position:relative;z-index:1;display:flex;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0ef}.contract-cover-control span{font-size:6px;color:#6d7a76;padding-left:8px;border-left:1px solid #dce3e1}.contract-cover-control span:last-child{border:0;color:#8b6a31;background:#fbf3e4;border-radius:99px;padding:4px 8px;margin-right:auto}
.contract-cover-title{margin-top:57px}.contract-cover-title>span{font-size:8px;letter-spacing:.2px}.contract-cover-title h1{font-size:33px;line-height:1.38;margin-top:16px;max-width:690px}.contract-cover-title strong{font-size:24px;line-height:1.45;margin-top:3px}.contract-cover-title p{font-size:8px;max-width:560px;line-height:1.9;margin-top:12px}
.contract-cover-project{margin-top:31px;grid-template-columns:105px 1fr auto;gap:15px;align-items:center;padding:15px 17px;background:rgba(255,255,255,.92);border-right-width:5px;box-shadow:0 10px 30px rgba(44,36,92,.065)}.contract-cover-project>div{display:grid}.contract-cover-project>div:first-child{border-left:1px solid #e2e6e5}.contract-cover-project>div:first-child b{font-size:16px;color:#302963;margin-top:2px}.contract-cover-project strong{font-size:10px}.contract-cover-project i{font-style:normal;font-size:6px;font-weight:700;color:#1e8268;background:#e7f5ef;border-radius:99px;padding:6px 9px}
.contract-cover-parties{gap:12px}.contract-cover-parties article{grid-template-columns:34px 1fr;gap:11px;align-items:center;padding:13px 14px;background:linear-gradient(145deg,#fafafb,#f5f6f8);border-color:#e7e7ed}.contract-cover-parties article>i{width:32px;height:32px;border-radius:10px;background:#342a6c;color:#fff;display:grid;place-items:center;font-style:normal;font-size:9px;font-weight:800;box-shadow:0 6px 15px rgba(52,42,108,.18)}.contract-cover-parties article:nth-child(2)>i{background:#27998e}.contract-cover-parties article>div{display:grid;min-width:0}.contract-cover-parties b{font-size:9px}.contract-cover-parties span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.contract-cover-facts{box-shadow:0 12px 25px rgba(47,38,101,.16)}.contract-cover-facts>div{grid-template-columns:26px 1fr;grid-template-rows:auto auto;text-align:right;column-gap:7px;padding:12px 14px}.contract-cover-facts>div>span{grid-row:1/3;width:25px;height:25px;border-radius:8px;background:rgba(255,255,255,.11);display:grid;place-items:center;font-size:7px;color:#79d6ce}.contract-cover-facts small{font-size:6px}.contract-cover-facts b{font-size:9px;margin-top:1px}
.contract-cover-assurance{position:relative;z-index:1;display:flex;align-items:center;gap:9px;border:1px solid #d0e5de;background:#f1f8f5;border-radius:10px;padding:9px 11px;margin-top:13px}.contract-cover-assurance>span{width:27px;height:27px;border-radius:50%;background:#238267;color:#fff;display:grid;place-items:center;font-size:9px}.contract-cover-assurance>div{display:grid}.contract-cover-assurance b{font-size:8px;color:#264a40}.contract-cover-assurance small{font-size:6px;color:#6c817a;margin-top:2px}
.contract-cover-footer{padding-top:14px}.contract-cover-footer em{background:#fff}.contract-body{background:#fff}.contract-body-header{position:sticky;top:72px;background:#fff;z-index:4;padding-top:8px}
.contract-agreement-intro>article{border-right:4px solid #342b70;box-shadow:0 5px 18px rgba(34,48,44,.035)}.contract-agreement-intro>article:nth-of-type(2){border-right-color:#28998e}.contract-agreement-intro>article:nth-of-type(2)>i{background:#28998e}
.contract-smart-summary{border:0;border-right:4px solid #24856d;background:linear-gradient(90deg,#f8fbfa,#edf7f3);box-shadow:0 5px 16px rgba(40,92,75,.05)}
.contract-intelligence{border:1px solid #dce4e1;border-radius:14px;margin:0 0 22px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(35,56,50,.055)}.contract-intelligence>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 16px;background:linear-gradient(135deg,#f7faf9,#eef5f2);border-bottom:1px solid #dfe7e4}.contract-intelligence>header>div{display:flex;align-items:center;gap:11px}.contract-intelligence>header>div>span{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#302666,#51488a);color:#fff;display:grid;place-items:center;font-size:13px;box-shadow:0 7px 16px rgba(49,39,102,.2)}.contract-intelligence>header>div>div{display:grid}.contract-intelligence h2{font-size:11px;margin:2px 0}.contract-intelligence header small{font-size:6px;color:#25816a;font-weight:800}.contract-intelligence header p{font-size:7px;color:#6c7b76;margin:0}.contract-intelligence header aside{min-width:105px;display:grid;text-align:center;border-radius:11px;padding:9px 12px;color:#1f765d;background:#e6f4ee}.contract-intelligence header aside b{font-size:17px;line-height:1.2}.contract-intelligence header aside em{font-style:normal;font-size:6px}.contract-intelligence header aside.risk-medium{color:#8b6328;background:#fff1d9}.contract-intelligence header aside.risk-high{color:#9a453e;background:#fde9e6}.contract-audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e7ecea}.contract-audit-grid article{display:grid;grid-template-columns:25px 1fr;align-items:center;gap:8px;background:#fff;padding:10px 12px}.contract-audit-grid article>span{width:23px;height:23px;border-radius:7px;display:grid;place-items:center;font-size:8px;font-weight:900}.contract-audit-grid article>div{display:grid}.contract-audit-grid b{font-size:8px}.contract-audit-grid small{font-size:6px;color:#788681;margin-top:2px}.contract-audit-grid .audit-pass>span{background:#e6f4ee;color:#217659}.contract-audit-grid .audit-warning>span{background:#fff0db;color:#9a6828}.contract-intelligence>footer{display:flex;justify-content:space-between;gap:18px;padding:10px 13px;background:#fbfcfc}.contract-intelligence>footer span{font-size:7px;font-weight:700;color:#4e655d}.contract-intelligence>footer small{font-size:6px;color:#8a9491;text-align:left}
@media(max-width:700px){.contract-document{margin:0}.contract-cover{min-height:940px;padding:28px 20px}.contract-cover-control{overflow:auto}.contract-cover-title{margin-top:38px}.contract-cover-title h1{font-size:24px}.contract-cover-title strong{font-size:18px}.contract-cover-project{grid-template-columns:78px 1fr}.contract-cover-project i{display:none}.contract-cover-parties{grid-template-columns:1fr}.contract-cover-facts{grid-template-columns:1fr}.contract-cover-facts>div{border-left:0;border-bottom:1px solid rgba(255,255,255,.15)}.contract-cover-assurance{margin-top:10px}.contract-audit-grid{grid-template-columns:1fr}.contract-intelligence>header{align-items:flex-start}.contract-intelligence>header aside{min-width:82px}.contract-intelligence>footer{display:grid}.contract-intelligence>footer small{text-align:right}}
@media print{.contract-document{margin:0!important;border-radius:0!important}.contract-cover{min-height:277mm!important;padding:11mm 13mm 9mm!important}.contract-cover-title{margin-top:14mm!important}.contract-cover-title h1{font-size:25pt!important}.contract-cover-title strong{font-size:18pt!important}.contract-cover-project{margin-top:9mm!important}.contract-body-header{position:static}.contract-intelligence{break-inside:avoid;page-break-inside:avoid}.contract-intelligence>header{print-color-adjust:exact;-webkit-print-color-adjust:exact}.contract-audit-grid article,.contract-cover-facts,.contract-cover-assurance{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Smart party signatures */
.contract-signature-section{margin-top:28px;border:1px solid #d9e2df;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(38,54,49,.06)}.contract-signature-section>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;background:linear-gradient(135deg,#302666,#453a7d);color:#fff}.contract-signature-section>header>div{display:flex;align-items:center;gap:11px}.contract-signature-section>header>div>span{width:39px;height:39px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:15px;border:1px solid rgba(255,255,255,.16)}.contract-signature-section>header>div>div{display:grid}.contract-signature-section>header small{font-size:6px;color:#85d8cf;font-weight:800}.contract-signature-section>header h2{font-size:12px;margin:2px 0}.contract-signature-section>header p{font-size:7px;color:#d5d2e2;margin:0}.contract-signature-section>header aside{display:grid;text-align:left;border-right:1px solid rgba(255,255,255,.18);padding-right:16px}.contract-signature-section>header aside b{font-size:8px;margin-top:3px;letter-spacing:.6px}
.contract-signature-flow{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:8px;padding:12px 20px;background:#f6f8f7;border-bottom:1px solid #e2e8e5}.contract-signature-flow>span{display:flex;align-items:center;gap:6px;font-size:7px;color:#8a9591;white-space:nowrap}.contract-signature-flow>span i{width:19px;height:19px;border-radius:50%;border:1px solid #cad5d1;background:#fff;display:grid;place-items:center;font-style:normal;font-size:6px}.contract-signature-flow>b{height:1px;background:#d8e1de}.contract-signature-flow>span.done{color:#23745a;font-weight:800}.contract-signature-flow>span.done i{background:#277b60;border-color:#277b60;color:#fff}.contract-signature-flow>span.current{color:#775921;font-weight:800}.contract-signature-flow>span.current i{background:#f2c46f;border-color:#f2c46f;color:#513b17}.contract-signature-flow>span.done+b{background:#69a991}
.contract-document-signatures.smart-signatures{border-top:0;margin:0;padding:15px;gap:12px;background:#fafbfb}.smart-signatures>article{border:1px solid #dce4e1;border-radius:12px;background:#fff;overflow:hidden;min-width:0}.smart-signatures>article>header{display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:center;padding:12px;border-bottom:1px solid #e7ecea;background:linear-gradient(180deg,#fff,#fafbfb)}.smart-signatures>article>header>i{width:30px;height:30px;border-radius:9px;background:#342a6c;color:#fff;display:grid;place-items:center;font-style:normal;font-size:9px;font-weight:900}.smart-signatures>article:nth-child(2)>header>i{background:#27998e}.smart-signatures>article>header>div{display:grid;min-width:0}.smart-signatures>article>header small{font-size:6px;color:#27826d;font-weight:800}.smart-signatures>article>header b{font-size:9px;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.smart-signatures>article>header em{font-style:normal;font-size:6px;border-radius:99px;padding:5px 7px;white-space:nowrap}.smart-signatures>article>header em.is-ready{background:#e4f3ec;color:#237256}.smart-signatures>article>header em.needs-data{background:#fdeae6;color:#9a4b42}
.smart-signatures dl{display:grid;gap:0;margin:0;padding:6px 12px}.smart-signatures dl>div{display:grid;grid-template-columns:86px 1fr;gap:8px;padding:7px 0;border-bottom:1px dashed #e1e7e4}.smart-signatures dl>div:last-child{border:0}.smart-signatures dt{font-size:6px;color:#7c8984}.smart-signatures dd{font-size:7px;font-weight:700;margin:0;color:#344740;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.signature-canvas{display:grid;grid-template-columns:1fr 85px;gap:10px;padding:8px 12px 12px}.signature-canvas>div:first-child{height:88px;border:1px dashed #bfcfca;border-radius:10px;position:relative;padding:9px;background:linear-gradient(145deg,#fff,#fbfcfc)}.signature-canvas>div:first-child small{position:absolute;top:8px;right:9px;font-size:6px;color:#7f8c87}.signature-canvas>div:first-child span{position:absolute;right:18px;left:18px;bottom:27px;border-bottom:1px solid #aebfba}.signature-canvas>div:first-child b{position:absolute;bottom:9px;left:0;right:0;text-align:center;font-size:6px;color:#93a09b;font-weight:600}.stamp-area,.fingerprint-area{height:88px;border:1px dashed #bfcfca;border-radius:10px;display:grid;place-items:center;align-content:center;text-align:center;gap:6px;background:#fbfcfc}.stamp-area small,.fingerprint-area small{font-size:6px;color:#7d8a86}.stamp-area span{width:53px;height:53px;border:1px solid #d4dfdb;border-radius:50%;display:grid;place-items:center;font-size:6px;color:#a1aaa7;transform:rotate(-7deg)}.fingerprint-area span{width:33px;height:45px;border:1px solid #d3ddda;border-radius:50% 50% 45% 45%;background:repeating-radial-gradient(ellipse at center,#fff 0 3px,#dfe7e4 4px 5px)}
.signature-canvas.signature-only{grid-template-columns:1fr}.signature-canvas.signature-only>div:first-child{height:88px}.customer-stamp span{border-style:double;border-width:3px;color:#8f9996}
.smart-signatures>article>footer{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e4eae8;border-top:1px solid #e1e7e4}.smart-signatures>article>footer>span{display:grid;background:#f6f8f7;padding:8px 10px}.smart-signatures>article>footer small{font-size:5.5px;color:#7d8985}.smart-signatures>article>footer b{font-size:7px;margin-top:2px;color:#384943}
.contract-signature-verification{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;padding:11px 15px;background:#eef7f3;border-top:1px solid #d4e6df}.contract-signature-verification>span{width:29px;height:29px;border-radius:9px;background:#287b61;color:#fff;display:grid;place-items:center;font-size:8px}.contract-signature-verification>div{display:grid}.contract-signature-verification b{font-size:8px;color:#2b4b41}.contract-signature-verification small{font-size:6px;color:#6c7f78;margin-top:2px}.contract-signature-verification em{font-style:normal;font-size:6px;font-weight:800;color:#805d24;background:#fff0d5;border-radius:99px;padding:5px 8px}
@media(max-width:700px){.contract-signature-section>header{align-items:flex-start}.contract-signature-section>header aside{display:none}.contract-signature-flow{grid-template-columns:auto 1fr auto}.contract-signature-flow>span:last-child,.contract-signature-flow>b:nth-of-type(2){display:none}.contract-document-signatures.smart-signatures{grid-template-columns:1fr}.contract-signature-verification{grid-template-columns:28px 1fr}.contract-signature-verification em{grid-column:2;width:max-content}.signature-canvas{grid-template-columns:1fr 75px}}
@media print{.contract-signature-section{break-before:page;page-break-before:always;break-inside:avoid;page-break-inside:avoid;margin-top:0;box-shadow:none}.contract-signature-section>header,.contract-signature-flow,.smart-signatures>article>header,.contract-signature-verification{print-color-adjust:exact;-webkit-print-color-adjust:exact}.signature-canvas>div:first-child{height:34mm}.stamp-area,.fingerprint-area{height:34mm}}

/* Smart contract materials and hierarchical clauses */
.contract-material-index{margin:22px 0 28px;border:1px solid #d9e2df;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(37,54,49,.055)}
.contract-material-index>header{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:17px 18px;background:linear-gradient(135deg,#302666,#453a7d);color:#fff}
.contract-material-index>header>div{display:flex;align-items:center;gap:11px}.contract-material-index>header>div>span{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);font-size:15px}
.contract-material-index>header>div>div{display:grid}.contract-material-index>header small{font-size:6px;color:#84d8ce;font-weight:800}.contract-material-index h2{font-size:12px;margin:2px 0}.contract-material-index header p{font-size:7px;color:#d8d5e5;margin:0}
.contract-material-index>header aside{display:grid;grid-template-columns:repeat(3,auto auto);gap:3px 7px;align-items:baseline;padding-right:16px;border-right:1px solid rgba(255,255,255,.18)}.contract-material-index>header aside b{font-size:14px}.contract-material-index>header aside small{font-size:5.5px;color:#cfccdf}
.contract-material-index nav{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e6ebe9}.contract-material-index nav a{--material-color:#5d6e68;--material-soft:#f1f4f3;display:grid;grid-template-columns:29px minmax(0,1fr) 34px;gap:9px;align-items:center;padding:10px 12px;background:#fff;color:#344640;text-decoration:none;transition:.16s}.contract-material-index nav a:hover{background:var(--material-soft)}
.contract-material-index nav a>i{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:var(--material-soft);color:var(--material-color);font-style:normal;font-size:8px;font-weight:900}.contract-material-index nav a>span{display:grid;min-width:0}.contract-material-index nav a small{font-size:5.5px;color:var(--material-color);font-weight:800}.contract-material-index nav a b{font-size:7.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-material-index nav a>em.contract-index-page{width:30px;height:30px;border-radius:50%;display:grid;grid-template-columns:auto auto;gap:2px;align-content:center;justify-content:center;border:1px solid color-mix(in srgb,var(--material-color) 28%,#fff);background:var(--material-soft);color:var(--material-color);font-style:normal;white-space:nowrap}.contract-material-index nav a>em.contract-index-page small{font-size:5px;line-height:1;color:inherit}.contract-material-index nav a>em.contract-index-page b{margin:0;font-size:7.5px;line-height:1;color:inherit;overflow:visible}
.contract-material-index>footer{display:flex;align-items:center;gap:8px;padding:9px 13px;background:#f8faf9;border-top:1px solid #e1e7e4}.contract-material-index>footer span{width:21px;height:21px;border-radius:7px;background:#e7f4ef;color:#23755c;display:grid;place-items:center;font-size:7px}.contract-material-index>footer p{font-size:6.5px;color:#63756e;margin:0}
.contract-materials-document{display:grid;gap:17px;margin-top:5px}.contract-document-material{--material-color:#596c65;--material-soft:#f1f4f3;border:1px solid #dae3e0;border-top:1px solid #dae3e0;border-radius:14px;padding:0;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(35,53,48,.05);scroll-margin-top:95px}
.tone-financial{--material-color:#9a6927!important;--material-soft:#fbf1df!important}.tone-schedule{--material-color:#326d96!important;--material-soft:#eaf3f9!important}.tone-quality{--material-color:#287659!important;--material-soft:#e8f5ef!important}.tone-risk{--material-color:#a44f45!important;--material-soft:#fbece9!important}.tone-scope{--material-color:#376f7c!important;--material-soft:#eaf4f6!important}.tone-obligation{--material-color:#5b4e91!important;--material-soft:#efedf8!important}.tone-general{--material-color:#596c65!important;--material-soft:#f1f4f3!important}
.contract-document-material>header{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;padding:14px 15px;background:linear-gradient(90deg,#fff,var(--material-soft));border-bottom:1px solid color-mix(in srgb,var(--material-color) 16%,#e8eceb);border-right:5px solid var(--material-color)}
.contract-material-number{width:48px;height:48px;border-radius:12px;display:grid;align-content:center;justify-items:center;background:var(--material-color);color:#fff;box-shadow:0 7px 15px color-mix(in srgb,var(--material-color) 20%,transparent)}.contract-material-number small{font-size:5.5px;opacity:.8}.contract-material-number b{font-size:15px;line-height:1.1}
.contract-material-title{display:grid}.contract-material-title>span{font-size:6px;color:var(--material-color);font-weight:900}.contract-material-title h3{display:block;font-size:12px;line-height:1.5;margin:2px 0;color:#283b35}.contract-material-title>small{font-size:6px;color:#7b8883}.contract-document-material>header>em{font-style:normal;font-size:6px;font-weight:900;color:var(--material-color);background:#fff;border:1px solid color-mix(in srgb,var(--material-color) 25%,#fff);border-radius:99px;padding:5px 8px}
.contract-document-intro{position:relative;margin:12px 15px 0!important;padding:10px 12px!important;border:1px solid color-mix(in srgb,var(--material-color) 18%,#e5eae8);border-right:3px solid var(--material-color);border-radius:9px;background:var(--material-soft);font-size:7.5px!important;line-height:1.9!important;color:#4f615a!important}
.contract-material-clauses{padding:8px 15px 13px}.contract-material-clauses>.contract-preview-clauses{display:grid;gap:0}.contract-material-clauses .contract-preview-clause{display:grid;grid-template-columns:27px 1fr;gap:9px;align-items:start;padding:9px 0;border-bottom:1px dashed #dfe6e3}.contract-material-clauses>.contract-preview-clauses>.contract-preview-clause:last-child{border-bottom:0}.contract-material-clauses .contract-preview-clause>span{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:var(--material-soft);color:var(--material-color);font-size:7px;font-weight:900;line-height:1}.contract-material-clauses .contract-preview-clause>div{min-width:0}.contract-material-clauses .contract-preview-clause p{font-size:8px!important;line-height:1.9!important;color:#34463f;margin:2px 0!important}
.contract-material-clauses .contract-preview-clauses .contract-preview-clauses{position:relative;margin:7px 3px 0 0;padding-right:13px;border-right:2px solid color-mix(in srgb,var(--material-color) 24%,#edf0ef)}.contract-material-clauses .depth-1>.contract-preview-clause,.contract-material-clauses .depth-2>.contract-preview-clause,.contract-material-clauses .depth-3>.contract-preview-clause{padding:7px 0;border-bottom:0}.contract-material-clauses .depth-1>.contract-preview-clause>span{background:#fff;border:1px solid color-mix(in srgb,var(--material-color) 25%,#dce3e0)}.contract-material-clauses .depth-2>.contract-preview-clause>span,.contract-material-clauses .depth-3>.contract-preview-clause>span{width:22px;height:22px;border-radius:50%;background:#fff;border:1px dashed color-mix(in srgb,var(--material-color) 35%,#dce3e0);font-size:6px}.contract-material-clauses .depth-1 p,.contract-material-clauses .depth-2 p,.contract-material-clauses .depth-3 p{font-size:7.5px!important;color:#53635d}
.contract-document-material>footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;background:#fafbfb;border-top:1px solid #e5eae8}.contract-document-material>footer span,.contract-document-material>footer em{font-size:5.5px;color:#82908b;font-style:normal}.contract-document-material>footer b{color:var(--material-color);font-size:6px;margin-right:4px}.contract-document-material>footer em{font-weight:800;color:#596b65}
@media(max-width:700px){.contract-material-index>header{grid-template-columns:1fr}.contract-material-index>header aside{border-right:0;padding-right:0;border-top:1px solid rgba(255,255,255,.16);padding-top:10px;justify-content:start}.contract-material-index nav{grid-template-columns:1fr}.contract-document-material>header{grid-template-columns:45px 1fr}.contract-material-number{width:42px;height:42px}.contract-document-material>header>em{grid-column:2;width:max-content}.contract-document-intro{padding:10px 12px!important}.contract-material-clauses{padding-inline:11px}.contract-material-clauses .contract-preview-clauses .contract-preview-clauses{padding-right:8px}}
@media print{.contract-material-index{break-after:page;page-break-after:always;box-shadow:none}.contract-material-index>header,.contract-material-index nav a,.contract-document-material>header,.contract-material-number,.contract-document-intro{print-color-adjust:exact;-webkit-print-color-adjust:exact}.contract-materials-document{gap:7mm}.contract-document-material{break-inside:auto!important;page-break-inside:auto!important;box-shadow:none}.contract-document-material>header,.contract-document-intro,.contract-material-clauses .contract-preview-clause{break-inside:avoid;page-break-inside:avoid}.contract-document-material>header{break-after:avoid;page-break-after:avoid}.contract-document-material>footer{break-before:avoid;page-break-before:avoid}}

/* A4 contract pages and repeated legal footer */
.contract-document{width:min(210mm,calc(100% - 34px));box-sizing:border-box}.contract-a4-footer{display:none}.contract-preview-actions:after{content:"A4 · " attr(data-page-count) " صفحات";margin-left:auto;align-self:center;border:1px solid #d6e2de;background:#f3f8f6;color:#376d5d;border-radius:99px;padding:5px 9px;font-size:6px;font-weight:800}
.contract-paged-preview{display:grid;gap:22px;width:210mm;max-width:calc(100% - 34px);margin:24px auto 42px}.contract-document.contract-pagination-source{display:none}.contract-a4-sheet{position:relative;width:210mm;height:297mm;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;background:#fff;color:#243a33;padding:10mm 12mm 17mm;box-shadow:0 18px 48px rgba(31,45,42,.14);border-radius:2px}.contract-a4-sheet>.contract-body-header{position:static;flex:0 0 auto;padding:0 0 5mm;margin-bottom:4mm}.contract-a4-page-content{flex:1 1 auto;min-height:0;overflow:hidden}.contract-a4-cover-sheet{padding:0 0 17mm}.contract-a4-cover-sheet .contract-a4-page-content{overflow:hidden}.contract-a4-cover-sheet .contract-cover{height:280mm;min-height:280mm;box-sizing:border-box;padding:12mm 14mm 10mm}.contract-a4-sheet .contract-a4-footer{position:absolute;right:12mm;left:12mm;bottom:5mm;height:9mm;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:6mm;border-top:1px solid #cddbd6;padding-top:2mm;color:#62736d}.contract-a4-sheet .contract-a4-footer>div{display:flex;align-items:center;gap:2mm;min-width:0}.contract-a4-sheet .contract-a4-footer img{width:14mm;height:5mm;object-fit:contain}.contract-a4-sheet .contract-a4-footer>div>span,.contract-a4-sheet .contract-a4-reference{display:grid}.contract-a4-sheet .contract-a4-footer b{font-size:6px;color:#2d463e}.contract-a4-sheet .contract-a4-footer small{font-size:5px;color:#7d8985}.contract-a4-sheet .contract-a4-reference{padding-right:5mm;border-right:1px solid #dce4e1;text-align:center}.contract-a4-sheet .contract-a4-page-number{min-width:24mm;text-align:left;font-size:6.5px;font-weight:900;color:#302766}.contract-a4-sheet .contract-material-index{margin:0;box-shadow:none}.contract-a4-sheet .contract-materials-document{display:contents}.contract-a4-sheet .contract-document-material{margin-bottom:4mm;box-shadow:none}.contract-a4-sheet .contract-document-material.is-continuation>header{padding-block:9px}.contract-a4-sheet .contract-document-material.is-continuation .contract-material-number{width:12mm;height:12mm;min-width:12mm;min-height:12mm;max-width:12mm;max-height:12mm;aspect-ratio:1}.contract-a4-sheet .contract-material-title h3 small,.contract-a4-sheet .contract-task-appendix h2 small{font-size:6px;color:#788781}.contract-a4-sheet .contract-task-appendix{margin:0;padding:0;border:0}.contract-a4-sheet .contract-task-appendix>section{margin-top:3mm}.contract-a4-sheet .contract-signature-section{margin:0;box-shadow:none}.contract-a4-sheet .contract-document-org-footer{display:none}
.contract-document-brand-mark img{width:33mm;height:auto;max-height:none;object-fit:contain;object-position:right center}.contract-a4-sheet .contract-document-brand-mark img{width:33mm;height:auto;max-height:none}

/* Diyar contract art direction v3 — premium legal document */
.contract-paged-preview{--diyar-ink:#292356;--diyar-purple:#352b72;--diyar-teal:#26a99f;--diyar-gold:#c69b55;--diyar-paper:#fff;--diyar-mist:#f4f8f7}
.contract-a4-sheet{border:1px solid rgba(39,53,49,.08);box-shadow:0 22px 65px rgba(25,39,35,.16),0 2px 8px rgba(25,39,35,.06)}
.contract-a4-body-sheet:before{content:"";position:absolute;z-index:2;top:0;right:0;left:0;height:1.5mm;background:linear-gradient(90deg,var(--diyar-purple) 0 72%,var(--diyar-teal) 72% 94%,var(--diyar-gold) 94%)}
.contract-a4-sheet>.contract-body-header{position:static;top:auto;padding:2mm 0 4.5mm;margin-bottom:4.5mm;border-bottom:0}
.contract-a4-sheet>.contract-body-header:after{content:"";position:absolute;right:0;left:0;bottom:0;height:.55mm;background:linear-gradient(90deg,var(--diyar-purple) 0 82%,var(--diyar-teal) 82%)}
.contract-a4-sheet>.contract-body-header>div:last-child{display:flex;align-items:center;gap:2.5mm;text-align:right;border:1px solid #e0e7e4;background:#f8faf9;border-radius:99px;padding:1.5mm 3mm}
.contract-a4-sheet>.contract-body-header>div:last-child small{font-size:5.5px;color:#71807b}
.contract-a4-sheet>.contract-body-header>div:last-child b{font-size:7px;color:var(--diyar-ink);margin:0;letter-spacing:.25px}

.contract-a4-cover-sheet{background:#f7faf9}
.contract-a4-cover-sheet .contract-cover{position:relative;background:linear-gradient(180deg,#fff 0%,#fff 74%,#f5faf8 100%)}
.contract-a4-cover-sheet .contract-cover:before{width:3mm;background:linear-gradient(180deg,var(--diyar-purple) 0 68%,var(--diyar-teal) 68% 91%,var(--diyar-gold) 91%)}
.contract-a4-cover-sheet .contract-cover:after{width:88mm;height:88mm;left:-45mm;bottom:-30mm;border:1px solid rgba(38,169,159,.13);box-shadow:0 0 0 11mm rgba(38,169,159,.035),0 0 0 23mm rgba(53,43,114,.023)}
.contract-a4-cover-sheet .contract-cover-header{border-bottom-color:#e1e7e5;padding-bottom:5mm}
.contract-a4-cover-sheet .contract-cover-brand img{width:43mm;height:20mm}
.contract-a4-cover-sheet .contract-cover-brand span{margin-top:-2mm;color:#7a8883;letter-spacing:.15px}
.contract-a4-cover-sheet .contract-cover-reference{min-width:43mm;border-left:.7mm solid var(--diyar-teal);padding-left:4mm}
.contract-a4-cover-sheet .contract-cover-reference b{font-size:11px;color:var(--diyar-ink)}
.contract-a4-cover-sheet .contract-cover-reference em{background:linear-gradient(135deg,var(--diyar-purple),#4b4084);box-shadow:0 2mm 5mm rgba(53,43,114,.16)}
.contract-a4-cover-sheet .contract-cover-control{padding:2.5mm 0;border-bottom-color:#edf1ef}
.contract-a4-cover-sheet .contract-cover-control span:last-child{color:#85622b;background:#fbf3e5;border:1px solid #f0e0c4}
.contract-a4-cover-sheet .contract-cover-title{margin-top:15mm;padding-right:5mm;border-right:1.1mm solid var(--diyar-teal)}
.contract-a4-cover-sheet .contract-cover-title>span:before{display:none}
.contract-a4-cover-sheet .contract-cover-title>span{color:#218f87;letter-spacing:.25px}
.contract-a4-cover-sheet .contract-cover-title h1{font-size:31px;line-height:1.42;color:var(--diyar-ink);letter-spacing:-.65px;margin-top:3.5mm}
.contract-a4-cover-sheet .contract-cover-title strong{font-size:21px;color:#289e96;margin-top:1mm}
.contract-a4-cover-sheet .contract-cover-title p{max-width:145mm;color:#667771;margin-top:2.5mm}
.contract-a4-cover-sheet .contract-cover-project{margin-top:9mm;border:0;border-right:1.3mm solid var(--diyar-purple);background:#fff;box-shadow:0 3mm 10mm rgba(45,38,94,.08);outline:1px solid #e2e7e5}
.contract-a4-cover-sheet .contract-cover-project i{background:#e8f5f1;color:#19765f;border:1px solid #cce8de}
.contract-a4-cover-sheet .contract-cover-parties article{border:0;background:#fff;box-shadow:0 1.5mm 5mm rgba(30,45,41,.055);outline:1px solid #e5e9e8}
.contract-a4-cover-sheet .contract-cover-parties article>i{border-radius:50%;background:linear-gradient(145deg,var(--diyar-purple),#51458c)}
.contract-a4-cover-sheet .contract-cover-parties article:nth-child(2)>i{background:linear-gradient(145deg,#248e85,#32b6ac)}
.contract-a4-cover-sheet .contract-cover-facts{background:linear-gradient(105deg,#2d255f,#3d327b);box-shadow:0 3mm 8mm rgba(45,37,95,.18)}
.contract-a4-cover-sheet .contract-cover-facts>div>span{color:#8be0d8;border:1px solid rgba(255,255,255,.1)}
.contract-a4-cover-sheet .contract-cover-assurance{border:0;border-right:1mm solid #21836a;background:linear-gradient(90deg,#f7fbf9,#edf7f3);box-shadow:0 1.5mm 5mm rgba(37,91,75,.055)}
.contract-a4-cover-sheet .contract-cover-footer{border-top-color:#d9e3df}

.contract-a4-sheet .contract-agreement-intro{gap:2.5mm;padding-top:2mm}
.contract-a4-sheet .contract-agreement-intro>div:first-child{grid-template-columns:35mm 1fr;padding:3mm 0;border-bottom:1px solid #e2e9e6}
.contract-a4-sheet .contract-agreement-intro>article{border:0;border-right:1mm solid var(--diyar-purple);border-radius:2.5mm;padding:3.2mm;background:#fff;box-shadow:0 1.5mm 5mm rgba(33,49,44,.055);outline:1px solid #e2e8e6}
.contract-a4-sheet .contract-agreement-intro>article:nth-of-type(2){border-right-color:var(--diyar-teal)}
.contract-a4-sheet .contract-agreement-intro>article>i{border-radius:50%;background:linear-gradient(145deg,var(--diyar-purple),#4c4188)}
.contract-a4-sheet .contract-smart-summary{border-right:1mm solid #27866f;border-radius:2.5mm;background:linear-gradient(90deg,#f9fcfb,#edf7f3);box-shadow:none}
.contract-a4-sheet .contract-intelligence,.contract-a4-sheet .contract-material-index,.contract-a4-sheet .contract-document-material,.contract-a4-sheet .contract-signature-section{border-color:#dce5e2;border-radius:3mm}
.contract-a4-sheet .contract-intelligence>header,.contract-a4-sheet .contract-material-index>header,.contract-a4-sheet .contract-signature-section>header{background:linear-gradient(110deg,#2d255f,#43377e 72%,#2e8f88);color:#fff}
.contract-a4-sheet .contract-intelligence>header h2{color:#fff}
.contract-a4-sheet .contract-intelligence>header small{color:#7fe0d5}
.contract-a4-sheet .contract-intelligence>header p{color:#ddd9ec}
.contract-a4-sheet .contract-intelligence>header aside{background:rgba(235,249,244,.96);color:#1c745d;box-shadow:0 1.5mm 5mm rgba(24,42,37,.1)}
.contract-a4-sheet .contract-intelligence>header aside.risk-medium{background:#fff2da;color:#80591f}
.contract-a4-sheet .contract-intelligence>header aside.risk-high{background:#fde9e6;color:#913e38}
.contract-a4-sheet .contract-signature-section{min-height:0;display:block}
.contract-a4-sheet .contract-document-signatures.smart-signatures{padding:4mm;gap:3mm;background:linear-gradient(180deg,#fafcfb,#f5f8f7)}
.contract-a4-sheet .smart-signatures>article{display:grid;border-radius:3mm;box-shadow:0 1.5mm 5mm rgba(31,48,43,.05)}
.contract-a4-sheet .smart-signatures>article>header{background:linear-gradient(180deg,#fff,#f8faf9)}
.contract-a4-sheet .signature-canvas{padding:3mm}
.contract-a4-sheet .signature-canvas>div:first-child,.contract-a4-sheet .stamp-area{height:34mm;min-height:0}
.contract-a4-sheet .smart-signatures>article>footer{margin-top:0}

.contract-a4-sheet .contract-document-material{overflow:hidden;background:#fff;box-shadow:0 1mm 4mm rgba(33,49,44,.035)}
.contract-a4-sheet .contract-document-material>header{grid-template-columns:13mm 1fr auto;gap:3mm;padding:3.2mm 3.5mm;background:linear-gradient(90deg,#fff 35%,var(--material-soft));border-right:1.2mm solid var(--material-color)}
.contract-a4-sheet .contract-material-number{width:12mm;height:12mm;min-width:12mm;min-height:12mm;max-width:12mm;max-height:12mm;aspect-ratio:1;border-radius:50%;box-sizing:border-box;align-self:center;justify-self:center;box-shadow:0 1.5mm 4mm color-mix(in srgb,var(--material-color) 18%,transparent)}
.contract-a4-sheet .contract-material-title h3{font-size:11px;letter-spacing:-.1px}
.contract-a4-sheet .contract-document-intro{margin:2.5mm 3.5mm 0!important;padding:2.5mm 3mm!important;border:0;border-right:.7mm solid var(--material-color);background:color-mix(in srgb,var(--material-soft) 72%,#fff)}
.contract-a4-sheet .contract-material-clauses{padding:1.2mm 3.7mm 2.5mm}
.contract-a4-sheet .contract-material-clauses .contract-preview-clause{grid-template-columns:7mm 1fr;gap:2.5mm;padding:2.4mm 0;border-bottom:1px solid #e8edeb}
.contract-a4-sheet .contract-material-clauses .contract-preview-clause>span{width:6.5mm;height:6.5mm;border-radius:50%;background:color-mix(in srgb,var(--material-soft) 82%,#fff);border:1px solid color-mix(in srgb,var(--material-color) 18%,#e7ecea)}
.contract-a4-sheet .contract-material-clauses .contract-preview-clause p{line-height:1.95!important;color:#31423c}
.contract-a4-sheet .contract-material-clauses .contract-preview-clauses .contract-preview-clauses{border-right:1px solid color-mix(in srgb,var(--material-color) 25%,#e7ecea);margin-top:1.5mm}
.contract-a4-sheet .contract-document-material>footer{padding:2mm 3.5mm;background:#fbfcfc}

.contract-a4-sheet .contract-a4-footer{right:12mm;left:12mm;bottom:4.5mm;height:9.5mm;border-top:0;padding-top:0;background:linear-gradient(90deg,#f7faf9,#fff);border-radius:2.5mm;box-shadow:inset 0 0 0 1px #e2e9e6;overflow:hidden}
.contract-a4-sheet .contract-a4-footer:before{content:"";position:absolute;top:0;right:0;bottom:0;width:1mm;background:linear-gradient(var(--diyar-purple),var(--diyar-teal))}
.contract-a4-sheet .contract-a4-footer>div{padding-right:2.5mm}
.contract-a4-sheet .contract-a4-reference{border-right:1px solid #dce5e2;padding:0 5mm 0 0}
.contract-a4-sheet .contract-a4-page-number{display:grid;place-items:center;min-width:27mm;height:7mm;margin-left:1.2mm;border-radius:99px;background:var(--diyar-purple);color:#fff;text-align:center;box-shadow:0 1mm 3mm rgba(53,43,114,.14)}
.contract-a4-cover-sheet .contract-a4-footer{grid-template-columns:1fr auto}
.contract-a4-cover-sheet .contract-a4-page-number{display:none!important}

@media print{
  .contract-a4-sheet,.contract-a4-sheet .contract-document-material,.contract-a4-sheet .contract-agreement-intro>article{box-shadow:none!important}
  .contract-a4-sheet .contract-a4-footer,.contract-a4-sheet .contract-a4-page-number,.contract-a4-body-sheet:before{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
}

/* Supplier invoice gate inside the approval centre */
.approval-invoice-requirement{margin:0 24px 18px;padding:16px 18px;border:1px solid #d9e5e1;border-radius:18px;display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#f8fbfa,#fff);box-shadow:0 8px 24px rgba(18,64,55,.05)}
.approval-invoice-requirement.missing{border-color:#eed7bd;background:linear-gradient(135deg,#fffaf2,#fff)}
.approval-invoice-requirement.ready{border-color:#b9ddd2;background:linear-gradient(135deg,#eef9f5,#fff)}
.approval-invoice-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;background:#fff1de;color:#9a5a13;font-size:20px;font-weight:900}
.approval-invoice-requirement.ready .approval-invoice-icon{background:#dff3eb;color:#0d745d}
.approval-invoice-requirement>div{display:grid;gap:3px;min-width:0;margin-inline-end:auto}
.approval-invoice-requirement small{color:#6e817b;font-size:12px}
.approval-invoice-requirement b{color:#173d35;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.approval-invoice-requirement em{font-style:normal;color:#85948f;font-size:12px}
.approval-invoice-upload,.approval-invoice-replace,.approval-invoice-requirement button{border:0;border-radius:12px;padding:11px 16px;font-family:inherit;font-weight:800;cursor:pointer;white-space:nowrap}
.approval-invoice-upload{background:#1b6d5c;color:#fff;box-shadow:0 7px 16px rgba(27,109,92,.18)}
.approval-invoice-replace{background:#eef4f2;color:#47645d}
.approval-invoice-requirement button{background:#fff;color:#1b6d5c;border:1px solid #bcd8d0}
.approval-approve:disabled{opacity:.58;cursor:not-allowed!important;box-shadow:none!important;background:#aebbb7!important;color:#fff!important}
@media(max-width:760px){.approval-invoice-requirement{margin:0 14px 14px;align-items:flex-start;flex-wrap:wrap}.approval-invoice-requirement>div{width:calc(100% - 62px)}.approval-invoice-upload,.approval-invoice-replace,.approval-invoice-requirement button{flex:1;text-align:center}}
@media(max-width:860px){.contract-paged-preview{width:100%;max-width:none;overflow-x:auto;padding:0 12px}.contract-a4-sheet{flex:0 0 210mm;transform-origin:top right}.contract-preview-modal{overflow-x:auto}}
@page{size:A4 portrait;margin:0}
@media print{
  html,body{width:210mm!important;background:#fff!important}
  .contract-document{width:auto!important;min-width:0!important;margin:0!important;padding:0!important;box-shadow:none!important;overflow:visible!important}
  .contract-document.contract-pagination-source{display:block!important}.contract-paged-preview{display:none!important}
  .contract-cover{height:267mm!important;min-height:267mm!important;box-sizing:border-box!important;margin:0!important;padding:10mm 10mm 8mm!important}
  .contract-body{padding:0!important}
  .contract-document-org-footer{display:none!important}
  .contract-a4-footer{position:fixed;z-index:999;right:0;left:0;bottom:-13mm;height:9mm;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:7mm;border-top:.35mm solid #2d7561;background:#fff;color:#53665f;padding:1.8mm 0 0;box-sizing:border-box}
  .contract-a4-footer>div{display:flex;align-items:center;gap:2.2mm;min-width:0}.contract-a4-footer img{width:15mm;height:6mm;object-fit:contain;object-position:right center}.contract-a4-footer>div>span{display:grid;min-width:0}.contract-a4-footer b{font-size:6.5pt;color:#263f37}.contract-a4-footer small{font-size:5.5pt;color:#77847f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .contract-a4-reference{display:grid;text-align:center;border-right:.25mm solid #d7dfdc;padding-right:5mm}.contract-a4-reference b{font-size:6.5pt;letter-spacing:.2pt}.contract-a4-reference small{font-size:5pt}
  .contract-a4-page-number{min-width:23mm;text-align:left;font-size:6.5pt;font-weight:900;color:#302766}.contract-a4-page-number:after{content:none!important;display:none!important}
  .contract-cover,.contract-cover-header,.contract-cover-facts,.contract-cover-assurance,.contract-document-material>header,.contract-material-number,.contract-signature-section>header{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
}

/* Print the exact paginated A4 preview, edge to edge with internal safe areas */
@media print{
  html,body,#app,#contractPreviewModal,.contract-preview-modal{width:210mm!important;min-width:210mm!important;margin:0!important;padding:0!important;background:#fff!important}
  #contractPreviewContent{width:210mm!important;margin:0!important;padding:0!important}
  .contract-document.contract-pagination-source{display:none!important}
  .contract-paged-preview{display:block!important;width:210mm!important;max-width:none!important;margin:0!important;padding:0!important}
  .contract-a4-sheet{display:flex!important;width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important;margin:0!important;padding:10mm 12mm 17mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important;break-after:page!important;page-break-after:always!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
  .contract-a4-sheet:last-child{break-after:auto!important;page-break-after:auto!important}
  .contract-a4-cover-sheet{padding:0 0 17mm!important}
  .contract-a4-cover-sheet .contract-cover{height:280mm!important;min-height:280mm!important;padding:12mm 14mm 10mm!important}
  .contract-a4-sheet .contract-a4-footer{position:absolute!important;right:12mm!important;left:12mm!important;bottom:4.5mm!important;height:9.5mm!important}
}

/* Ordered materials in contract templates */
.contract-material-order{display:grid;gap:7px;border:1px solid #dce5e1;border-radius:12px;padding:9px;background:linear-gradient(135deg,#f7faf9,#f2f7f5);max-height:285px;overflow:auto}.contract-material-order-row{display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;background:#fff;border:1px solid #dfe7e4;border-radius:10px;padding:8px 9px;box-shadow:0 3px 10px rgba(31,66,55,.035)}.contract-order-number{width:43px;height:43px;border-radius:10px;background:linear-gradient(145deg,#302666,#4b407e);color:#fff;display:grid;align-content:center;justify-items:center}.contract-order-number small{font-size:5px;color:#cfcce1}.contract-order-number b{font-size:13px;line-height:1.15}.contract-material-order-row>div:nth-child(2){display:grid;min-width:0}.contract-material-order-row>div:nth-child(2)>small{font-size:6px;color:#23816a;font-weight:800}.contract-material-order-row>div:nth-child(2)>b{font-size:8.5px;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-material-order-row>div:nth-child(2)>em{font-style:normal;font-size:6px;color:#83908c}.contract-order-actions{display:flex;gap:4px}.contract-order-actions button{width:28px;height:28px;border:1px solid #dbe4e0;border-radius:7px;background:#fff;color:#476159;font-size:10px;font-weight:800}.contract-order-actions button:hover:not(:disabled){background:#e9f4ef;color:#246f57;border-color:#a9cdbf}.contract-order-actions button:disabled{opacity:.3;cursor:not-allowed}.contract-order-actions button.danger-link{color:#a64e45;background:#fff7f5}.contract-material-order-empty{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px}.contract-material-order-empty>span{width:34px;height:34px;border-radius:10px;background:#e8efed;color:#668078;display:grid;place-items:center;font-size:14px}.contract-material-order-empty>div{display:grid}.contract-material-order-empty b{font-size:8px}.contract-material-order-empty small{font-size:7px;color:#7d8a86;margin-top:3px}.contract-library-head{margin:15px 0 9px;padding-top:13px;border-top:1px solid #e4eae7}.contract-material-picker label>span{grid-template-columns:32px 1fr auto}.contract-material-picker label>span>em{font-style:normal;font-size:6px;font-weight:800;color:#237258;background:#e2f2eb;border-radius:99px;padding:4px 7px}
@media(max-width:700px){.contract-material-order-row{grid-template-columns:42px 1fr}.contract-order-actions{grid-column:2}.contract-material-order{max-height:340px}}

/* Contract template modal: one scroll surface, no trailing phantom space */
#contractTemplateModal{overflow-y:auto;align-items:flex-start;overscroll-behavior:contain}
#contractTemplateModal .contract-template-modal{max-height:none;overflow:visible;margin:0 auto}
#contractTemplateModal .contract-material-order,#contractTemplateModal .contract-material-picker{contain:layout paint;overscroll-behavior:contain}
#contractTemplateModal .contract-template-modal .modal-actions{bottom:0}

/* The cover is a complete, unnumbered A4 page with its own document footer */
.contract-a4-cover-sheet{padding:0}
.contract-a4-cover-sheet .contract-cover{height:297mm;min-height:297mm}
.contract-a4-cover-sheet .contract-a4-footer{display:none!important}
@media print{
  .contract-a4-cover-sheet{padding:0!important}
  .contract-a4-cover-sheet .contract-cover{height:297mm!important;min-height:297mm!important;padding:12mm 14mm 10mm!important}
}

/* Project-template payment milestones */
.template-payments-panel{margin:0 0 24px;background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 7px 24px rgba(22,55,47,.045)}
.template-payments-panel>header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 22px;background:linear-gradient(120deg,#fbfcfc,#f1f8f5);border-bottom:1px solid #dfe8e4}
.template-payments-panel>header>div{display:flex;align-items:center;gap:13px}.template-payments-panel h2{font-size:18px;margin:3px 0}.template-payments-panel header p{font-size:10px;color:#6f7e79;margin:0}.payment-panel-icon{width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,#2f2768,#4a3d83);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;box-shadow:0 7px 17px rgba(47,39,104,.18)}
.template-payment-summary{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:1px;background:#e2e9e6;border-bottom:1px solid #e0e7e4}.template-payment-summary>div{display:grid;background:#fff;padding:13px 16px}.template-payment-summary small{font-size:8px;color:#82908b}.template-payment-summary b{font-size:14px;margin-top:3px}.template-payment-summary .payment-progress-card{background:linear-gradient(120deg,#f5faf8,#fff)}.payment-progress-line{height:6px;border-radius:99px;background:#e6ece9;margin-top:7px;overflow:hidden}.payment-progress-line i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#238068,#2ca89d);transition:.25s}.payment-progress-line i.over{background:#c25b4f}.payment-summary-valid b{color:#23745a}.payment-summary-warning b{color:#9a6729}.payment-summary-invalid b{color:#a34840}
.template-payments-list{padding:13px;display:grid;gap:8px}.template-payment-row{display:grid;grid-template-columns:42px minmax(180px,1.25fr) minmax(230px,1.7fr) 120px 135px auto;gap:11px;align-items:center;padding:11px 12px;border:1px solid #e0e7e4;border-radius:11px;background:#fff}.template-payment-row.blocking{border-right:4px solid #2d8d76}.template-payment-order{width:38px;height:38px;border-radius:11px;background:#eeeaf7;color:#493d7e;display:grid;place-items:center;font-weight:900;font-size:12px}.template-payment-row>div{display:grid;min-width:0}.template-payment-row small{font-size:7px;color:#82908b}.template-payment-row b{font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-payment-trigger{display:flex!important;align-items:center;gap:8px}.template-payment-trigger>i{width:29px;height:29px;border-radius:9px;background:#e7f4ef;color:#27765f;display:grid;place-items:center;font-style:normal;font-size:10px}.template-payment-trigger em{font-style:normal;font-size:7px;color:#90652b;background:#fbf1df;border-radius:99px;padding:4px 7px;width:max-content;margin-top:3px}.template-payment-value{justify-items:start}.template-payment-value b{font-size:14px;color:#302867}.template-payment-value span{font-size:7px;color:#7d8985}.template-payment-state{display:flex!important;align-items:center;gap:6px;color:#2a795f;font-size:8px;font-weight:800}.template-payment-state:before{content:"";width:7px;height:7px;border-radius:50%;background:#39a078}.template-payment-actions{display:flex!important;gap:5px}.template-payment-actions button{width:31px;height:31px;border:1px solid #dce4e1;border-radius:8px;background:#fff;color:#456159;font-weight:900}.template-payment-actions button:last-child{color:#a64a42;background:#fff7f5}.template-payment-empty{display:flex;align-items:center;justify-content:center;gap:12px;padding:25px;border:1px dashed #ccd9d4;border-radius:11px;background:#fafcfb}.template-payment-empty>span{width:39px;height:39px;border-radius:11px;background:#e8f3ef;color:#25745d;display:grid;place-items:center}.template-payment-empty>div{display:grid}.template-payment-empty b{font-size:10px}.template-payment-empty small{font-size:8px;color:#7d8b86;margin-top:3px}
.task-payment-gate{display:inline-flex!important;align-items:center;width:max-content;margin-top:3px;padding:3px 6px;border-radius:99px;background:#fff0d7;color:#8b5e21;font-size:7px!important;font-style:normal;font-weight:800}.task-payment-gate:before{content:"◆";font-size:5px;margin-left:4px}
.template-payment-modal{width:min(650px,100%)}.payment-icon{background:#eeeaf7;color:#443879;font-size:10px;font-weight:900}.payment-value-input{display:grid;grid-template-columns:1fr 45px}.payment-value-input input{border-radius:0 11px 11px 0!important}.payment-value-input span{display:grid;place-items:center;background:#f0f4f2;border:1px solid #dfe4e1;border-right:0;border-radius:11px 0 0 11px;font-size:10px;color:#52665f;font-weight:800}.payment-blocking-control{display:flex;align-items:center;gap:9px;min-height:48px;padding:8px 10px;border:1px solid #dfe5e3;border-radius:11px;background:#f7faf9}.payment-blocking-control input{width:17px;height:17px;accent-color:var(--green);padding:0}.payment-blocking-control span{display:grid}.payment-blocking-control b{font-size:9px}.payment-blocking-control small{font-size:7px;color:#7d8985;margin-top:2px}.template-payment-balance{margin-top:13px;padding:11px 13px;border-radius:10px;background:#f1f8f5;color:#285e4e;font-size:9px}.template-payment-balance.warning{background:#fff4df;color:#835d25}.template-payment-balance.invalid{background:#fdecea;color:#923f38}
@media(max-width:980px){.template-payment-row{grid-template-columns:38px 1fr 1.4fr 100px auto}.template-payment-state{display:none!important}.template-payment-summary{grid-template-columns:1fr 1fr}.template-payments-panel header p{display:none}}
@media(max-width:700px){.template-payments-panel>header{align-items:flex-start}.template-payment-row{grid-template-columns:36px 1fr auto}.template-payment-trigger,.template-payment-value{grid-column:2}.template-payment-state{display:flex!important;grid-column:2}.template-payment-actions{grid-column:3;grid-row:1/3}.template-payment-summary{grid-template-columns:1fr 1fr}.template-payment-modal .modal-grid{grid-template-columns:1fr}}

/* Project cards: immutable snapshot of the selected template payment plan */
.project-payment-snapshot{display:flex;align-items:center;gap:10px;margin:12px 0;padding:10px 12px;border:1px solid #d9e7e1;border-right:4px solid #2e8971;border-radius:10px;background:linear-gradient(110deg,#f8fcfa,#eff7f4)}
.project-payment-snapshot>span{width:31px;height:31px;border-radius:9px;background:#e5f2ed;color:#27765f;display:grid;place-items:center;font-size:9px}
.project-payment-snapshot>div{display:grid;min-width:0;flex:1}.project-payment-snapshot small{font-size:7px;color:#788984}.project-payment-snapshot b{font-size:9px;color:#29473e;margin-top:2px}.project-payment-snapshot>em{font-style:normal;font-size:7px;font-weight:800;color:#8a6228;background:#fff2dc;border-radius:99px;padding:5px 8px;white-space:nowrap}
.project-payment-details{margin:-6px 0 12px;border:1px solid #dde7e3;border-radius:0 0 10px 10px;background:#fbfcfc;overflow:hidden}.project-payment-details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;cursor:pointer;list-style:none;color:#31584b}.project-payment-details>summary::-webkit-details-marker{display:none}.project-payment-details>summary span{font-size:8px;font-weight:900}.project-payment-details>summary b{font-size:7px;color:#74837e}.project-payment-details>div{padding:0 8px 8px;display:grid;gap:5px}.project-payment-item{display:grid;grid-template-columns:25px 1fr auto auto;align-items:center;gap:8px;padding:7px 8px;border:1px solid #e3e9e7;border-radius:8px;background:#fff}.project-payment-item>span{width:23px;height:23px;border-radius:7px;background:#eeeaf7;color:#45397b;display:grid;place-items:center;font-size:8px;font-weight:900}.project-payment-item>div{display:grid;min-width:0}.project-payment-item b{font-size:8px}.project-payment-item small{font-size:6px;color:#7c8985;margin-top:2px}.project-payment-item>strong{font-size:8px;color:#302867;white-space:nowrap}.project-payment-item>button{border:1px solid #cfe1da;border-radius:7px;background:#eaf5f0;color:#28735c;padding:6px 8px;font-size:7px;font-weight:900;white-space:nowrap}.project-payment-item.paid{opacity:.72;background:#f3f8f5}.project-payment-item.paid>span{background:#ddefe7;color:#267159}.project-payment-item.paid>button{background:#2d8068;color:#fff;border-color:#2d8068}
@media(max-width:620px){.project-payment-snapshot{align-items:flex-start}.project-payment-snapshot>em{display:none}.project-payment-item{grid-template-columns:25px 1fr auto}.project-payment-item>strong{grid-column:2}.project-payment-item>button{grid-column:3;grid-row:1/3}}

/* Locked, project-driven payment material in the contract library and document */
.contract-material-card.system-contract-material{border-color:#c9ddd5;background:linear-gradient(145deg,#fff,#f3faf7);box-shadow:0 8px 26px rgba(34,103,80,.08)}.system-contract-material header>span{background:#302766;color:#fff}.system-contract-material h3:before{content:"◆";display:inline-grid;place-items:center;width:22px;height:22px;margin-left:7px;border-radius:7px;background:#e8f4ef;color:#25745c;font-size:7px;vertical-align:middle}.system-material-lock{flex:1;display:grid;place-items:center;border:1px solid #d7e2de;border-radius:8px;background:#f3f6f5;color:#6d7e78;font-size:7px;font-weight:900}.contract-order-lock{width:28px;height:28px;border-radius:7px;background:#edf2f0;color:#60736c;display:grid;place-items:center;font-size:9px}.contract-material-picker label.system-picker-material>span{border-color:#c5dbd2;background:linear-gradient(120deg,#eff8f4,#fff)}.contract-material-picker label.system-picker-material{cursor:default}.contract-material-picker label.system-picker-material i{background:#302766;color:#fff}.contract-material-modal.is-system-material .contract-basic-fields input:disabled,.contract-material-modal.is-system-material .contract-basic-fields select:disabled,.contract-material-modal.is-system-material .contract-basic-fields textarea:disabled{opacity:1;color:#435750;background:#f2f5f4}.contract-material-modal.is-system-material .contract-clause-row{background:#f5f8f7}.contract-material-modal.is-system-material .contract-clause-row textarea:disabled{color:#465952;background:transparent}.contract-material-modal.is-system-material #addRootContractClause{display:none}
.system-payment-material{--material-color:#2b7c65;--material-soft:#edf8f3}.contract-payment-rows{gap:6px}.contract-payment-clause{grid-template-columns:30px 1fr!important;align-items:stretch!important;padding:0!important;border:1px solid #e1e9e6!important;border-radius:10px;overflow:hidden;background:#fff}.contract-payment-clause>span{width:auto!important;height:auto!important;min-height:48px;border:0!important;border-radius:0!important;background:linear-gradient(145deg,#302766,#473a7c)!important;color:#fff!important;display:grid!important;place-items:center!important;padding:0!important}.contract-payment-clause-body{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:9px 11px}.contract-payment-clause-body>div{display:grid}.contract-payment-clause-body b{font-size:8.5px;color:#293f37}.contract-payment-clause-body small{font-size:6.5px;color:#71817b;margin-top:2px}.contract-payment-clause-body em{width:max-content;margin-top:4px;padding:3px 6px;border-radius:99px;background:#fff0d8;color:#895c20;font-size:5.5px;font-style:normal;font-weight:900}.contract-payment-clause-body aside{display:grid;text-align:left}.contract-payment-clause-body aside strong{font-size:9px;color:#302766}.contract-payment-clause-body aside small{font-size:6px;color:#77857f;margin-top:2px}.system-payment-material>footer>strong{font-size:7px;color:#236b55;background:#e8f4ef;border-radius:99px;padding:4px 8px}
@media(max-width:700px){.contract-payment-clause-body{grid-template-columns:1fr}.contract-payment-clause-body aside{text-align:right}}

/* Premium financial layout for the project-driven payment article */
.system-payment-material{border-color:#d7d2e5!important;background:linear-gradient(180deg,#fff,#fdfcfe)}.system-payment-material>header{background:linear-gradient(105deg,#fff 36%,#f3f0fa)!important;border-right-color:#3b3075!important}.system-payment-material .contract-document-intro{border-right-color:#c69245!important;background:linear-gradient(90deg,#fffaf1,#fff)!important;color:#5b5345!important}.contract-payment-rows{gap:7px!important}.contract-payment-overview{display:grid!important;grid-template-columns:36px 1fr!important;padding:0!important;border:0!important;border-radius:11px;overflow:hidden;background:linear-gradient(110deg,#302766,#44377d 68%,#2e8f87);color:#fff}.contract-payment-overview>span{width:auto!important;height:auto!important;min-height:55px;border:0!important;border-radius:0!important;background:rgba(255,255,255,.1)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:7px!important}.contract-payment-overview>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:9px 12px}.contract-payment-overview section{display:grid}.contract-payment-overview section small{font-size:5.5px;color:#8ce2d9}.contract-payment-overview section b{font-size:8.5px;margin-top:2px}.contract-payment-overview aside{display:flex;align-items:stretch;gap:1px;background:rgba(255,255,255,.14);border-radius:8px;overflow:hidden}.contract-payment-overview aside>span{display:grid;min-width:62px;padding:6px 8px;background:rgba(255,255,255,.08);text-align:center}.contract-payment-overview aside small{font-size:5px;color:#d5d2e6}.contract-payment-overview aside b{font-size:7px;margin-top:2px;color:#fff}.contract-payment-clause{border-color:#e0e6e4!important;box-shadow:0 2px 7px rgba(39,53,49,.025)}.contract-payment-clause:nth-of-type(odd){background:#fbfcfc}.contract-payment-clause>span{background:linear-gradient(160deg,#302766,#4c4087)!important;font-size:8px!important}.contract-payment-clause-body{min-height:49px}.contract-payment-clause-body>div>small:first-child{font-size:5.3px;color:#a07a3f;font-weight:800}.contract-payment-clause-body b{font-size:8.2px!important;margin-top:1px}.contract-payment-clause-body p{font-size:6.2px!important;color:#697a74!important;line-height:1.55!important;margin:2px 0 0!important}.contract-payment-clause-body em{background:#fff3df!important;color:#865a1f!important}.contract-payment-clause-body em.non-blocking{background:#edf5f2!important;color:#34715e!important}.contract-payment-clause-body aside{min-width:92px;padding-right:10px;border-right:1px solid #e4e9e7}.contract-payment-clause-body aside strong{font-size:9.5px!important;color:#302766}.contract-payment-clause-body aside strong small{font-size:5.5px;color:#716a8f}.contract-payment-total{display:grid!important;grid-template-columns:36px 1fr!important;padding:0!important;border:1px solid #bfdbd0!important;border-radius:11px;overflow:hidden;background:linear-gradient(100deg,#eff8f4,#fff 70%)}.contract-payment-total>span{width:auto!important;height:auto!important;min-height:64px;border:0!important;border-radius:0!important;background:linear-gradient(160deg,#21745d,#2b9a7b)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:9px!important}.contract-payment-total-body{display:grid!important;grid-template-columns:1fr auto!important;align-items:center;gap:4px 14px;padding:9px 12px}.contract-payment-total-body>div{display:grid}.contract-payment-total-body small{font-size:5.5px;color:#608076}.contract-payment-total-body b{font-size:10px;color:#205d4b;margin-top:2px}.contract-payment-total-body p{grid-column:1/-1;margin:2px 0 0!important;padding-top:5px;border-top:1px dashed #cbded7;font-size:7px!important;line-height:1.8!important;color:#2f463e!important;font-weight:800}.contract-payment-total-body>em{grid-column:2;grid-row:1;font-style:normal;font-size:5.5px;color:#74592d;background:#fbf1de;border-radius:99px;padding:4px 7px;white-space:nowrap}.system-payment-material>footer>strong{background:#edeaf6;color:#4a3e7e}
@media(max-width:700px){.contract-payment-overview>div{grid-template-columns:1fr}.contract-payment-overview aside{justify-self:stretch}.contract-payment-overview aside>span{flex:1}.contract-payment-total-body{grid-template-columns:1fr!important}.contract-payment-total-body>em{grid-column:1;grid-row:auto;width:max-content}.contract-payment-clause-body aside{border-right:0;padding-right:0}}
@media print{.contract-payment-overview,.contract-payment-clause>span,.contract-payment-total>span,.contract-payment-total{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}

/* Contract payment schedule — formal financial table */
.system-payment-material .contract-payment-rows{gap:0!important;border:1px solid #d9e1df;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 7px 18px rgba(41,51,48,.045)}
.system-payment-material .contract-payment-overview{border-radius:0!important;grid-template-columns:40px 1fr!important;background:linear-gradient(112deg,#2f286a 0%,#41387b 64%,#238b82 100%)!important}
.system-payment-material .contract-payment-overview>span{min-height:54px!important;background:rgba(255,255,255,.09)!important;border-left:1px solid rgba(255,255,255,.16)!important}
.system-payment-material .contract-payment-overview>div{padding:9px 12px!important}
.system-payment-material .contract-payment-overview aside{background:transparent!important;border:1px solid rgba(255,255,255,.15)!important}
.system-payment-material .contract-payment-overview aside>span{min-width:86px!important;background:rgba(255,255,255,.07)!important}
.contract-payment-table-head,.contract-payment-clause{display:grid!important;grid-template-columns:30px minmax(112px,1.05fr) minmax(160px,1.55fr) 55px 86px!important;align-items:stretch!important;gap:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.contract-payment-table-head{min-height:28px;background:#f1f3f6!important;border-top:1px solid #d9e1df!important;border-bottom:1px solid #cfd8d5!important;color:#43534e}
.contract-payment-table-head.is-repeat{border-top:0!important}
.contract-payment-table-head>span,.contract-payment-table-head>b{display:flex;align-items:center;justify-content:center;padding:6px 8px;border-left:1px solid #d9e1df;font-size:5.8px;font-weight:900}
.contract-payment-table-head>b:nth-child(2),.contract-payment-table-head>b:nth-child(3){justify-content:flex-start;text-align:right}
.contract-payment-table-head>b:last-child{border-left:0}
.system-payment-material .contract-payment-clause{min-height:42px!important;background:#fff!important;border-bottom:1px solid #e2e8e6!important}
.system-payment-material .contract-payment-clause:nth-of-type(odd){background:#fbfcfd!important}
.system-payment-material .contract-payment-clause>span{display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:auto!important;min-height:42px!important;padding:0!important;border:0!important;border-left:1px solid #dfe6e4!important;border-radius:0!important;background:transparent!important;color:#3d3478!important;font-size:7px!important;font-weight:950}
.contract-payment-name,.system-payment-material .contract-payment-clause>p,.system-payment-material .contract-payment-clause>strong,.system-payment-material .contract-payment-clause>aside{display:flex;align-items:center;padding:7px 9px;border-left:1px solid #e1e7e5}
.contract-payment-name{flex-direction:column;align-items:flex-start;justify-content:center}
.contract-payment-name small{color:#978045;font-size:5px;font-weight:850}
.contract-payment-name b{margin-top:1px;color:#263b35;font-size:7px}
.system-payment-material .contract-payment-clause>p{margin:0!important;color:#5d6e68!important;font-size:6.2px!important;line-height:1.55!important}
.system-payment-material .contract-payment-clause>strong{justify-content:center;color:#2b7462;font-size:7.2px;font-weight:950}
.system-payment-material .contract-payment-clause>aside{flex-direction:column;align-items:flex-end;justify-content:center;border-left:0;text-align:left}
.system-payment-material .contract-payment-clause>aside b{color:#302766;font-size:8px;font-variant-numeric:tabular-nums}
.system-payment-material .contract-payment-clause>aside small{margin-top:1px;color:#84918d;font-size:4.8px}
.system-payment-material .contract-payment-total{display:grid!important;grid-template-columns:30px minmax(150px,1.35fr) 55px minmax(210px,1.65fr)!important;align-items:stretch!important;gap:0!important;min-height:55px;border:0!important;border-radius:0!important;background:linear-gradient(100deg,#eef8f4,#fff)!important}
.system-payment-material .contract-payment-total>span{min-height:55px!important;border-left:1px solid #cfe0da!important;border-radius:0!important;background:#21846c!important}
.contract-payment-total-label,.system-payment-material .contract-payment-total>strong,.system-payment-material .contract-payment-total>p{display:flex;align-items:center;padding:8px 10px;border-left:1px solid #d4e3de}
.contract-payment-total-label{flex-direction:column;align-items:flex-start;justify-content:center}
.contract-payment-total-label small{color:#5f7d73;font-size:5px}
.contract-payment-total-label b{margin-top:2px;color:#205e4d;font-size:8.3px}
.system-payment-material .contract-payment-total>strong{justify-content:center;color:#23745f;font-size:7.6px}
.system-payment-material .contract-payment-total>p{margin:0!important;border-top:0!important;border-left:0!important;color:#324a42!important;font-size:6.4px!important;font-weight:850;line-height:1.65!important}
@media(max-width:700px){.contract-payment-table-head,.contract-payment-clause{grid-template-columns:26px minmax(92px,1fr) minmax(130px,1.35fr) 46px 74px!important}.system-payment-material .contract-payment-total{grid-template-columns:26px minmax(130px,1.2fr) 46px minmax(170px,1.45fr)!important}}
@media print{.contract-payment-table-head,.system-payment-material .contract-payment-clause,.system-payment-material .contract-payment-total{break-inside:avoid;page-break-inside:avoid;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}

/* Refined payment ledger */
.system-payment-material .contract-payment-rows{position:relative;border:0!important;border-radius:14px!important;box-shadow:0 0 0 1px #d9e1df,0 10px 24px rgba(34,45,42,.07)!important}
.system-payment-material .contract-payment-rows:before{content:"";position:absolute;inset:0 0 auto;height:3px;z-index:2;background:linear-gradient(90deg,#342a75 0 67%,#2ba99c 67% 91%,#c79a50 91%)}
.system-payment-material .contract-payment-overview{grid-template-columns:42px 1fr!important;background:linear-gradient(118deg,#302667,#3e3477 63%,#247f79 100%)!important}
.system-payment-material .contract-payment-overview>div{padding:11px 14px!important}
.system-payment-material .contract-payment-overview section small{letter-spacing:.15px;color:#9ce2dc!important}
.system-payment-material .contract-payment-overview section b{font-size:9px!important}
.system-payment-material .contract-payment-overview aside>span{padding:7px 10px!important}
.system-payment-material .contract-payment-overview aside b{font-size:7.5px!important}
.contract-payment-table-head{min-height:31px!important;background:linear-gradient(90deg,#f1f0f8,#eef7f5)!important;border-top:0!important;border-bottom:1px solid #d1dad7!important;color:#3d3a65!important}
.contract-payment-table-head>span,.contract-payment-table-head>b{padding:7px 9px!important;border-left-color:#d7dfdd!important;font-size:6px!important}
.system-payment-material .contract-payment-clause{min-height:47px!important;transition:none;background:#fff!important}
.system-payment-material .contract-payment-clause:nth-of-type(even){background:#fafbfc!important}
.system-payment-material .contract-payment-clause>span{position:relative;min-height:47px!important;background:linear-gradient(180deg,rgba(52,42,117,.035),rgba(52,42,117,.075))!important}
.system-payment-material .contract-payment-clause>span>i{display:grid;place-items:center;width:18px;height:18px;border:1px solid #d7d2e8;border-radius:50%;background:#fff;color:#3b3177;font-size:6.5px;font-style:normal;font-weight:950;box-shadow:0 2px 5px rgba(52,42,117,.08)}
.contract-payment-name{padding:8px 10px!important}
.contract-payment-name small{color:#a17a3e!important;font-size:5.2px!important}
.contract-payment-name b{font-size:7.2px!important;color:#243a34!important}
.system-payment-material .contract-payment-clause>p{display:flex!important;gap:5px;color:#556761!important;padding:8px 10px!important}
.system-payment-material .contract-payment-clause>p>i{display:grid;place-items:center;width:15px;height:15px;flex:0 0 15px;border-radius:50%;background:#edf5f3;color:#2b7867;font-size:6px;font-style:normal}
.system-payment-material .contract-payment-ratio{display:flex!important;flex-direction:column;gap:4px;padding:8px 9px!important}
.system-payment-material .contract-payment-ratio>b{color:#2b7564;font-size:7px}
.system-payment-material .contract-payment-ratio>i{display:block;width:28px;height:3px;overflow:hidden;border-radius:99px;background:#dce9e5}
.system-payment-material .contract-payment-ratio>i>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2b8d77,#43b4a7)}
.system-payment-material .contract-payment-clause>aside{position:relative;padding:8px 10px!important;background:linear-gradient(90deg,rgba(48,38,103,.015),rgba(48,38,103,.045))}
.system-payment-material .contract-payment-clause>aside:before{content:"";position:absolute;inset:9px 0 9px auto;width:2px;border-radius:2px;background:#c89a4e}
.system-payment-material .contract-payment-clause>aside b{font-size:8.4px!important;color:#2f2867!important}
.system-payment-material .contract-payment-total{min-height:62px!important;background:linear-gradient(100deg,#e9f7f1,#fff 62%,#f9f7fc)!important;border-top:1px solid #c8ddd6!important}
.system-payment-material .contract-payment-total>span{min-height:62px!important;background:linear-gradient(160deg,#1f745d,#2a9a7c)!important;font-size:10px!important}
.contract-payment-total-label b{font-size:9px!important}
.system-payment-material .contract-payment-total>strong{background:rgba(38,132,105,.045);font-size:8px!important}
.system-payment-material .contract-payment-total>p{padding:10px 12px!important;color:#2d423b!important;font-size:6.6px!important}
.system-payment-material>footer{padding-top:7px!important}

/* Soft contract geometry: no utility corner cell */
.system-payment-material .contract-payment-rows{isolation:isolate;clip-path:inset(0 round 14px)}
.system-payment-material .contract-payment-rows:before{border-radius:14px 14px 0 0}
.system-payment-material .contract-payment-overview{display:block!important;border-radius:14px 14px 0 0!important;overflow:hidden!important}
.system-payment-material .contract-payment-overview>div{width:100%;border-radius:14px 14px 0 0}
.system-payment-material .contract-payment-total{border-radius:0 0 14px 14px!important;overflow:hidden!important}
.system-payment-material .contract-payment-total>span{border-radius:0 0 14px 0!important}

/* Official Saudi Riyal sign — stable SVG rendering for screen and print */
.riyal-symbol{display:inline-block!important;flex:0 0 auto;width:.74em;height:.84em;background:currentColor!important;-webkit-mask:url("assets/saudi-riyal-symbol.svg") center/contain no-repeat;mask:url("assets/saudi-riyal-symbol.svg") center/contain no-repeat;font-size:1em!important;line-height:1;vertical-align:-.08em;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.money-with-riyal{display:inline-flex!important;align-items:center;justify-content:flex-start;gap:3px;direction:rtl;white-space:nowrap}
.contract-payment-overview .money-with-riyal{justify-content:center}
.contract-payment-clause>aside .riyal-symbol{color:#2f2867;width:.78em;height:.9em}
.contract-payment-total-label .riyal-symbol{color:#20705b;width:.78em;height:.9em}

/* Project execution room */
.project-card-actions{grid-template-columns:1fr 1fr auto}.project-card-actions .open-project{border:0;background:#0d6756;color:#fff}.project-card-actions .open-project:hover{background:#084d41}.project-detail-workspace{padding:24px 28px 60px;background:#f4f7f6;min-height:calc(100vh - 74px);direction:rtl}.project-control-hero{position:relative;overflow:hidden;padding:24px 26px 0;border-radius:24px;background:linear-gradient(128deg,#073d34 0%,#0a5b4d 58%,#176f60 100%);color:#fff;box-shadow:0 16px 42px rgba(7,61,52,.16)}.project-control-hero:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(255,255,255,.1);border-radius:50%;left:-120px;top:-190px;box-shadow:0 0 0 52px rgba(255,255,255,.035),0 0 0 104px rgba(255,255,255,.02)}.project-control-top,.project-control-title,.project-control-meta{position:relative;z-index:1}.project-control-top{display:flex;align-items:center;gap:10px}.project-control-top button{margin-left:auto;height:36px;padding:0 15px;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff}.project-control-top>span{font:800 11px/1 system-ui;direction:ltr;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.1)}.project-control-top>em{font-style:normal;font-size:10px;font-weight:800;color:#174f42;background:#dff4e9;padding:8px 12px;border-radius:999px}.project-control-title{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0 20px}.project-control-title small,.project-control-heading small{display:block;color:#7ee0cc;font-size:10px;font-weight:800;margin-bottom:6px}.project-control-title h1{font-size:28px;margin:0 0 8px}.project-control-title p{margin:0;color:rgba(255,255,255,.7);font-size:11px}.project-progress-ring{--value:calc(var(--project-progress) * 1%);position:relative;display:grid;place-content:center;text-align:center;width:104px;height:104px;flex:0 0 104px;border-radius:50%;background:conic-gradient(#d9b46f var(--value),rgba(255,255,255,.13) 0);box-shadow:inset 0 0 0 9px rgba(4,49,42,.82)}.project-progress-ring:after{content:"";position:absolute;inset:15px;border-radius:50%;background:#0a5548}.project-progress-ring b,.project-progress-ring small{position:relative;z-index:1}.project-progress-ring b{font-size:21px}.project-progress-ring small{font-size:8px;color:#a7d9ce}.project-control-meta{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr;border-top:1px solid rgba(255,255,255,.13)}.project-control-meta>span{display:flex;flex-direction:column;gap:5px;padding:16px 15px;border-left:1px solid rgba(255,255,255,.1)}.project-control-meta>span:last-child{border-left:0}.project-control-meta small{font-size:8px;color:#9fd0c5}.project-control-meta b{font-size:11px}.project-control-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.project-control-kpis article{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #dce7e3;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(34,61,53,.045)}.project-control-kpis article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#eaf5f1;color:#0b6b58;font-size:17px}.project-control-kpis article.alert>span{background:#fff1e6;color:#b96a2c}.project-control-kpis div{display:flex;flex-direction:column}.project-control-kpis small{font-size:8px;color:#71817b}.project-control-kpis b{font-size:14px;color:#163e34;margin:3px 0}.project-control-kpis em{font-style:normal;font-size:8px;color:#87958f}.project-stage-navigator{padding:18px 20px;border:1px solid #dae6e2;border-radius:18px;background:#fff}.project-stage-navigator>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.project-stage-navigator h2,.project-control-heading h2{margin:2px 0 0;font-size:17px;color:#173b32}.project-stage-navigator header small,.project-control-heading small{color:#23816c}.project-state-legend{display:flex;gap:7px}.project-state-legend span{font-size:8px;padding:6px 9px;border-radius:99px;background:#f1f4f3;color:#71807b}.project-state-legend .done{background:#e3f4ec;color:#176a54}.project-state-legend .current{background:#e9e7f5;color:#3d3377}.project-state-legend .payment{background:#fff2dd;color:#9b6a25}.project-stage-navigator>div{display:flex;gap:9px;overflow-x:auto;padding-bottom:3px}.project-stage-card{appearance:none;display:grid;grid-template-columns:34px minmax(125px,1fr) auto;align-items:center;gap:9px;min-width:235px;padding:11px;border:1px solid #dde7e3;border-radius:14px;background:#fbfcfc;cursor:pointer;text-align:right}.project-stage-card>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#edf2f0;color:#6e7c77;font-weight:900}.project-stage-card div{display:flex;flex-direction:column;min-width:0}.project-stage-card small,.project-stage-card em{font-size:7px;color:#83918c;font-style:normal}.project-stage-card b{font-size:10px;color:#28483f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.project-stage-card>strong{font-size:9px;color:#70817b}.project-stage-card.current{border-color:#3c3680;background:#f5f4fb;box-shadow:inset 0 -3px #3c3680}.project-stage-card.current>span{background:#3c3680;color:#fff}.project-stage-card.done{border-color:#9ed4c5;background:#f3fbf8}.project-stage-card.done>span{background:#18765f;color:#fff}.project-control-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:15px;margin-top:15px;align-items:start}.project-control-layout>main{min-width:0}.project-control-heading{display:flex;align-items:end;justify-content:space-between;padding:6px 2px 12px}.project-control-heading p{margin:0;font-size:9px;color:#71817b}.project-stage-section{margin-bottom:10px;border:1px solid #dbe6e2;border-radius:17px;background:#fff;overflow:hidden}.project-stage-section.current{border-color:#b7b3d7;box-shadow:0 7px 24px rgba(52,42,117,.07)}.project-stage-section.done{border-color:#b9ddd3}.project-stage-head{display:grid;grid-template-columns:42px 1fr 155px 20px;align-items:center;gap:12px;width:100%;padding:14px 16px;border:0;background:#fff;text-align:right;cursor:pointer}.project-stage-head>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#eef3f1;color:#63746e;font-weight:900}.project-stage-section.current .project-stage-head>span{background:#40367c;color:#fff}.project-stage-section.done .project-stage-head>span{background:#1a765f;color:#fff}.project-stage-head small{font-size:8px;color:#7a8a84}.project-stage-head h3{font-size:13px;color:#1d4137;margin:3px 0}.project-stage-head p{font-size:8px;color:#84928d;margin:0}.project-stage-head>strong{font-size:16px;color:#788781;transition:.2s}.project-stage-section.open .project-stage-head>strong{transform:rotate(180deg)}.project-stage-progress{display:grid;grid-template-columns:auto 75px auto;align-items:center;gap:7px}.project-stage-progress b{font-size:10px;color:#31584d}.project-stage-progress>span{height:5px;border-radius:99px;background:#e6ecea;overflow:hidden}.project-stage-progress i{display:block;height:100%;background:#21846d}.project-stage-progress em{font-size:7px;font-style:normal;color:#71817b}.project-stage-body{display:none;border-top:1px solid #e3ebe8}.project-stage-section.open .project-stage-body{display:block}.project-task-columns,.project-task-row{display:grid;grid-template-columns:minmax(270px,1fr) 230px 115px;align-items:center}.project-task-columns{padding:8px 55px 8px 15px;background:#f7f9f8;color:#7a8984;font-size:7px}.project-task-row{position:relative;min-height:68px;padding:10px 15px 10px 55px;border-top:1px solid #edf1f0}.project-task-row:first-of-type{border-top:0}.project-task-row.active{background:#f7f6fc}.project-task-row.blocked{background:#fffaf4}.project-task-row.done{background:#fbfdfc}.project-task-state{position:absolute;right:15px;display:grid;place-items:center;width:27px;height:27px;border:1px solid #d8e2df;border-radius:50%;color:#89958f}.project-task-row.active .project-task-state{border-color:#40367c;background:#40367c;color:#fff}.project-task-row.blocked .project-task-state{border-color:#d5a154;background:#fff1db;color:#9c651c}.project-task-row.done .project-task-state{border-color:#19745d;background:#19745d;color:#fff}.project-task-main>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-task-main b{font-size:7px;color:#857f9f}.project-task-main h4{font-size:10px;color:#233f37;margin:0}.project-task-main>small{font-size:7px;color:#84918d}.project-task-payment{padding:4px 7px;border-radius:99px;background:#fff0d7;color:#99651f;font-size:7px;font-style:normal;font-weight:800}.project-task-payment.paid{background:#e6f5ef;color:#1a745d}.project-task-links{display:flex;gap:5px;flex-wrap:wrap}.project-task-links>span{display:flex;align-items:center;gap:4px;padding:5px 6px;border-radius:8px;background:#edf5f3}.project-task-links b{font-size:7px;color:#1d705e}.project-task-links small{font-size:6px;color:#71817b}.project-task-links .relation-ss{background:#f0eef9}.project-task-links .relation-ss b{color:#534691}.project-task-links .relation-ff{background:#edf3fa}.project-task-links .relation-ff b{color:#376b98}.project-task-links .relation-sf{background:#fff0ec}.project-task-links .relation-sf b{color:#a85946}.project-task-links .relation-start{background:#f3f5f4}.project-task-action{text-align:left}.project-task-action button,.project-now-card button{border:0;border-radius:9px;background:#0d6c58;color:#fff;padding:8px 10px;font-size:8px;font-weight:800;cursor:pointer}.project-task-row.blocked .project-task-action button,.project-now-card.blocked button{background:#aa6d28}.project-task-action span{font-size:8px;color:#83918c}.project-now-panel{position:sticky;top:88px;display:flex;flex-direction:column;gap:10px}.project-now-panel>section{padding:17px;border:1px solid #dce6e3;border-radius:17px;background:#fff}.project-now-card>span{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#e9f5f1;color:#0d735e;font-size:17px;margin-bottom:12px}.project-now-card.blocked>span{background:#fff0dc;color:#a66821}.project-now-card small,.next-stage-card small{font-size:8px;font-weight:800;color:#29806c}.project-now-card h3{font-size:14px;color:#1f4138;margin:4px 0 7px}.project-now-card p,.next-stage-card p{font-size:9px;line-height:1.8;color:#74837e}.project-now-card button{width:100%;margin-top:7px}.relation-guide h3{font-size:11px;color:#24483e;margin:0 0 10px}.relation-guide div{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid #edf1f0}.relation-guide b{display:grid;place-items:center;width:28px;height:22px;border-radius:7px;background:#eef3f2;color:#2e6f60;font-size:7px}.relation-guide span{font-size:8px;color:#677a73}.next-stage-card{background:linear-gradient(145deg,#302866,#473b88)!important;border:0!important;color:#fff}.next-stage-card small{color:#9fe0d1}.next-stage-card b{display:block;font-size:12px;margin:6px 0}.next-stage-card p{color:rgba(255,255,255,.65);margin-bottom:0}
@media(max-width:1100px){.project-control-kpis{grid-template-columns:repeat(2,1fr)}.project-control-layout{grid-template-columns:1fr}.project-now-panel{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.project-task-columns,.project-task-row{grid-template-columns:minmax(220px,1fr) 180px 105px}}
@media(max-width:720px){.project-detail-workspace{padding:14px}.project-control-title{align-items:flex-start}.project-control-title h1{font-size:21px}.project-progress-ring{width:82px;height:82px;flex-basis:82px}.project-control-meta{grid-template-columns:1fr 1fr}.project-control-kpis{grid-template-columns:1fr}.project-state-legend{display:none}.project-stage-head{grid-template-columns:38px 1fr 20px}.project-stage-progress{display:none}.project-task-columns{display:none}.project-task-row{grid-template-columns:1fr;gap:9px;padding:12px 50px 12px 12px}.project-task-action{text-align:right}.project-now-panel{grid-template-columns:1fr}.project-card-actions{grid-template-columns:1fr 1fr}.project-card-actions .open-project{grid-column:1/-1}}

/* Project page tabs and stage schedule */
.project-detail-tabs{display:flex;align-items:flex-end;gap:8px;margin-top:18px;padding:0 7px;border-bottom:1px solid #d4e0dc}.project-detail-tabs button{position:relative;display:flex;align-items:center;gap:9px;min-width:185px;height:52px;padding:0 18px;border:1px solid transparent;border-bottom:0;border-radius:15px 15px 0 0;background:transparent;color:#71817b;cursor:pointer}.project-detail-tabs button.active{top:1px;border-color:#d4e0dc;background:#fff;color:#174d40;box-shadow:0 -7px 20px rgba(31,73,61,.05)}.project-detail-tabs button>span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#e8f4f0;color:#176e59}.project-detail-tabs button>b{font-size:11px}.project-detail-tabs button>em{margin-right:auto;display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:#0e6a56;color:#fff;font-size:8px;font-style:normal}.project-tab-panel{display:none}.project-tab-panel.active{display:block;padding-top:15px}.project-stages-tab-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;margin-bottom:12px;border:1px solid #dbe6e2;border-radius:18px;background:#fff}.project-stages-tab-head small{font-size:8px;color:#21806a;font-weight:800}.project-stages-tab-head h2{font-size:20px;color:#183e34;margin:4px 0}.project-stages-tab-head p{margin:0;font-size:9px;color:#71817b}.project-stages-tab-head>span{display:flex;flex-direction:column;gap:4px;min-width:220px;padding:11px 14px;border-radius:12px;background:#f1f0f8;color:#3b3277;font-size:11px;font-weight:900}.project-stages-tab-head>span small{color:#70698f}.project-control-kpis article.late>span{background:#fdebea;color:#b04f47}.project-control-kpis article.late b{color:#a84d45}.project-state-legend .late{background:#fdebea;color:#aa4d46}.project-stage-card{min-width:282px}.project-stage-card footer{display:flex;gap:5px;margin-top:5px}.project-stage-card footer i{padding:3px 6px;border-radius:99px;background:#fff1d9;color:#96661f;font-size:6px;font-style:normal;font-weight:800}.project-stage-card footer i.late{background:#fde8e6;color:#aa4c45}.project-stage-card.delayed{border-color:#e4b4af;background:#fff8f7;box-shadow:inset 0 -3px #c66057}.project-stage-card.delayed>span{background:#c35a52;color:#fff}.project-stage-section.delayed{border-color:#e4b4af}.project-stage-section.delayed .project-stage-head>span{background:#c35a52;color:#fff}.project-stage-section.delayed .project-stage-progress em{color:#b34f47;font-weight:800}.project-stage-section.current.delayed,.project-stage-card.current.delayed{border-color:#ad6d68;box-shadow:inset 0 -3px #c66057,0 7px 24px rgba(185,79,71,.09)}
@media(max-width:720px){.project-detail-tabs{overflow-x:auto}.project-detail-tabs button{min-width:170px}.project-stages-tab-head{align-items:flex-start;gap:12px}.project-stages-tab-head>span{min-width:145px}.project-stage-card{min-width:255px}}

/* Hierarchical project roadmap: project element > stage > task */
.project-stage-navigator>.project-roadmap-list{display:block;overflow:visible}.project-floor-roadmap{margin-top:12px;border:1px solid #dce6e3;border-radius:16px;background:#fbfcfc;overflow:hidden}.project-floor-roadmap:first-child{margin-top:0}.project-floor-roadmap>header{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:13px 15px;border-bottom:1px solid #e1e9e6;background:linear-gradient(90deg,#f3f8f6,#fff)}.project-floor-roadmap.current>header{background:linear-gradient(90deg,#eeecf8,#fff)}.project-floor-roadmap>header>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#0f6c58;color:#fff;font-weight:900}.project-floor-roadmap.current>header>span{background:#40367c}.project-floor-roadmap>header div{display:flex;flex-direction:column}.project-floor-roadmap>header small{font-size:7px;color:#31806d}.project-floor-roadmap>header h3{margin:2px 0;font-size:12px;color:#1e4439}.project-floor-roadmap>header p{margin:0;font-size:7px;color:#76857f}.project-floor-roadmap>header>strong{display:flex;flex-direction:column;align-items:center;font-size:13px;color:#236b59}.project-floor-roadmap>header>strong small{color:#85928e;font-size:6px}.project-floor-stage-track{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:20px;padding:14px}.project-floor-stage-track:before{content:"";position:absolute;top:50%;right:25px;left:25px;height:2px;background:#dce6e3}.project-floor-stage-track .project-stage-card{position:relative;z-index:1;min-width:0;background:#fff}.project-floor-stage-track .project-stage-card:not(:last-child):after{content:"←";position:absolute;left:-17px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#fff;color:#8ba098;font-size:8px}.project-stage-card footer i.running{background:#ebe8f7;color:#463a83}.project-floor-detail-head{display:grid;grid-template-columns:37px 1fr auto;align-items:center;gap:10px;margin:18px 0 9px;padding:11px 13px;border-right:4px solid #126d59;border-radius:12px;background:#eaf4f1}.project-floor-detail-head:first-of-type{margin-top:0}.project-floor-detail-head>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#126d59;color:#fff;font-weight:900}.project-floor-detail-head small{font-size:7px;color:#368270}.project-floor-detail-head h3{margin:2px 0 0;font-size:12px;color:#1c4539}.project-floor-detail-head>strong{padding:6px 9px;border-radius:99px;background:#fff;color:#527067;font-size:7px}.project-task-links>span{max-width:210px}.project-task-links small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:720px){.project-floor-stage-track{grid-template-columns:1fr;gap:9px}.project-floor-stage-track:before,.project-floor-stage-track .project-stage-card:after{display:none}.project-floor-roadmap>header{grid-template-columns:35px 1fr}.project-floor-roadmap>header>strong{display:none}}

/* Sequential execution locks */
.project-stage-card.locked{cursor:not-allowed;background:#f7f8f8;border-style:dashed;box-shadow:none;opacity:.72}.project-stage-card.locked>span{background:#e7ecea;color:#74827d}.project-stage-card footer i.locked{background:#eef1f0;color:#687771}.project-stage-card.locked:hover{transform:none}.project-stage-section.locked{background:#f9fafa;border-style:dashed}.project-stage-section.locked .project-stage-head{cursor:not-allowed;background:#f8faf9}.project-stage-section.locked .project-stage-head>span{background:#e8edeb;color:#74827d}.project-stage-section.locked .project-stage-progress em{color:#77857f}.project-stage-section.locked .project-stage-body{display:none!important}.project-task-row.locked{background:#fafbfb;color:#77857f}.project-task-row.locked .project-task-state{background:#f0f3f2;color:#77857f}.project-task-row.locked .project-task-main h4{color:#64736e}.project-task-row.locked .project-task-links{opacity:.65}.project-task-row.locked .project-task-action span{display:inline-flex;align-items:center;padding:5px 7px;border-radius:8px;background:#eef1f0;color:#65746f;font-weight:800}

/* Collapsible project elements and readable locked stages */
.project-floor-roadmap-head{display:grid;grid-template-columns:38px 1fr auto 24px;align-items:center;gap:11px;width:100%;padding:13px 15px;border:0;border-bottom:1px solid #e1e9e6;background:linear-gradient(90deg,#f3f8f6,#fff);text-align:right;cursor:pointer}.project-floor-roadmap.current .project-floor-roadmap-head{background:linear-gradient(90deg,#eeecf8,#fff)}.project-floor-roadmap-head>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#0f6c58;color:#fff;font-weight:900}.project-floor-roadmap.current .project-floor-roadmap-head>span{background:#40367c}.project-floor-roadmap-head div{display:flex;flex-direction:column}.project-floor-roadmap-head small{font-size:7px;color:#31806d}.project-floor-roadmap-head h3{margin:2px 0;font-size:12px;color:#1e4439}.project-floor-roadmap-head p{margin:0;font-size:7px;color:#76857f}.project-floor-roadmap-head>strong{display:flex;flex-direction:column;align-items:center;font-size:13px;color:#236b59}.project-floor-roadmap-head>strong small{color:#85928e;font-size:6px}.project-floor-roadmap-head>i,.project-floor-detail-head>i{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#e8f2ef;color:#176b59;font-size:11px;font-style:normal;transition:.2s}.project-floor-roadmap.collapsed .project-floor-stage-track{display:none}.project-floor-roadmap.collapsed .project-floor-roadmap-head{border-bottom:0}.project-floor-roadmap.collapsed .project-floor-roadmap-head>i,.project-floor-detail-head.collapsed>i{transform:rotate(180deg)}.project-floor-detail-head{grid-template-columns:37px 1fr auto 24px;width:100%;border-top:0;border-bottom:0;border-left:0;text-align:right;cursor:pointer}.project-stage-section.floor-hidden{display:none}.project-stage-card.locked{cursor:pointer}.project-stage-section.locked .project-stage-head{cursor:pointer}.project-stage-section.locked.open .project-stage-body{display:block!important}.project-stage-section.locked.open{border-color:#cddbd7;background:#fff}.project-stage-section.locked.open .project-stage-head{background:#f6faf8}
@media(max-width:720px){.project-floor-roadmap-head{grid-template-columns:35px 1fr 24px}.project-floor-roadmap-head>strong{display:none}.project-floor-detail-head{grid-template-columns:34px 1fr 24px}.project-floor-detail-head>strong{display:none}}

/* Smart task requirements: acceptance clauses, supplies and assigned works */
.project-task-row{transition:background .2s,border-color .2s}.project-task-main{min-width:0}.project-task-scope-summary{display:flex!important;align-items:center!important;gap:5px!important;margin-top:6px}.project-task-scope-summary span{padding:4px 7px;border-radius:99px;background:#edf5f2;color:#28715f;font-size:6px;font-weight:800}.project-task-scope-summary span:nth-child(2){background:#fff4e2;color:#986921}.project-task-scope-summary span:nth-child(3){background:#efedf8;color:#504582}.project-task-action{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.project-task-action .project-task-detail-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:6px 8px!important;border:1px solid #d7e3df!important;border-radius:9px!important;background:#f7faf9!important;color:#36675a!important;white-space:nowrap}.project-task-detail-toggle b{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:6px;background:#e3f0ec;color:#146c57;font-size:7px}.project-task-detail-toggle i{font-style:normal;margin-right:auto;transition:.2s}.project-task-row.details-open .project-task-detail-toggle i{transform:rotate(180deg)}.project-task-requirements{display:none;grid-column:1/-1;margin-top:3px;padding:13px;border:1px solid #dbe6e2;border-radius:15px;background:linear-gradient(145deg,#f8fbfa,#fff);box-shadow:0 9px 24px rgba(24,67,55,.05);text-align:right}.project-task-row.details-open{background:#f8fbfa}.project-task-row.details-open .project-task-requirements{display:block}.project-task-requirements>header{display:flex;align-items:center;justify-content:space-between;padding:1px 2px 11px;border-bottom:1px solid #e4ece9}.project-task-requirements>header div{display:flex;flex-direction:column}.project-task-requirements>header small{font-size:6px;font-weight:800;color:#26806a}.project-task-requirements>header h5{margin:2px 0 0;font-size:11px;color:#193f35}.project-task-requirements>header>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#126d59;color:#fff;font-size:15px}.project-task-requirement-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.85fr);gap:11px;padding-top:11px}.project-task-requirement-grid>section{min-width:0;border:1px solid #e0e9e6;border-radius:13px;background:#fff;overflow:hidden}.project-task-panel-title{display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:8px;padding:10px 11px;background:#f3f8f6;border-bottom:1px solid #e2ebe8}.project-task-panel-title>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#dff0ea;color:#13705a;font-weight:900}.project-task-resources .project-task-panel-title>span{background:#fff0d8;color:#9c6a1f}.project-task-panel-title div{display:flex;flex-direction:column}.project-task-panel-title b{font-size:9px;color:#244a40}.project-task-panel-title small{font-size:6px;color:#7e8d88}.project-task-panel-title>strong{display:grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border-radius:8px;background:#fff;color:#1e6f5c;font-size:8px}.project-task-inspection ol{list-style:none;margin:0;padding:0}.project-task-inspection li{position:relative;display:grid;grid-template-columns:25px 1fr;gap:8px;padding:10px 11px;border-top:1px solid #edf2f0}.project-task-inspection li:first-child{border-top:0}.project-task-inspection li>span{display:grid;place-items:center;width:23px;height:23px;border:1px solid #cfe0db;border-radius:8px;color:#367665;font-size:7px;font-weight:900}.project-task-inspection li.critical>span{border-color:#e5c994;background:#fff6e7;color:#9a651a}.project-task-inspection li>div{display:grid;grid-template-columns:1fr auto;gap:3px 7px}.project-task-inspection li b{font-size:8px;color:#263f38}.project-task-inspection li em{padding:3px 5px;border-radius:99px;background:#fff0dc;color:#a16b1d;font-size:5px;font-style:normal;font-weight:900}.project-task-inspection li small{grid-column:1/-1;color:#2a806b;font-size:6px;font-weight:800;direction:ltr;text-align:right}.project-task-inspection li p{grid-column:1/-1;margin:1px 0;color:#687972;font-size:7px;line-height:1.6}.project-task-inspection li strong{grid-column:1/-1;padding:6px 7px;border-radius:7px;background:#f5f8f7;color:#49675f;font-size:6px;line-height:1.55}.project-task-inspection li.empty{grid-template-columns:1fr}.project-task-supply-list{display:grid;gap:7px;padding:10px}.project-task-supply-list article{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #e4ebe9;border-radius:10px;background:#fbfcfc}.project-task-supply-list article>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#fff1dc;color:#98661e;font-size:10px;font-weight:900}.project-task-supply-list article div{display:flex;flex-direction:column}.project-task-supply-list b{font-size:8px;color:#30483f}.project-task-supply-list small{font-size:6px;color:#83908c}.project-task-work-block{padding:0 10px 10px}.project-task-work-block>small{display:block;margin-bottom:6px;color:#7c8a85;font-size:6px;font-weight:800}.project-task-work-block>div{display:flex;flex-wrap:wrap;gap:5px}.project-task-work-block i{padding:5px 7px;border-radius:8px;background:#efedf8;color:#514681;font-size:6px;font-style:normal;font-weight:800}.project-task-resources>footer{display:flex;align-items:center;gap:8px;padding:9px 10px;border-top:1px solid #e3ebe8;background:#f7faf9}.project-task-resources>footer>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e2f0ec;color:#196f5b}.project-task-resources>footer div{display:flex;flex-direction:column}.project-task-resources>footer small{font-size:6px;color:#7f8c87}.project-task-resources>footer b{font-size:8px;color:#25473e}.project-task-empty-resource{margin:4px 0;padding:8px;border:1px dashed #d8e2df;border-radius:9px;color:#82908b;font-size:7px;text-align:center}
@media(max-width:900px){.project-task-requirement-grid{grid-template-columns:1fr}.project-task-action{align-items:stretch}}
@media(max-width:720px){.project-task-scope-summary{flex-wrap:wrap}.project-task-requirements{margin-right:-38px;padding:9px}.project-task-panel-title{grid-template-columns:29px 1fr auto}}

/* Project task procurement and subcontractor assignments */
.project-task-resource-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px;background:linear-gradient(180deg,#f7faf9,#fff);border-bottom:1px solid #e3ebe8}.project-task-resource-actions button{display:grid;grid-template-columns:30px 1fr;column-gap:9px;align-items:center;padding:9px 10px;border:1px solid #cfe2dc;border-radius:11px;background:#fff;color:#23584b;text-align:right;cursor:pointer;transition:.18s}.project-task-resource-actions button:hover{border-color:#19806a;background:#f0f8f5;transform:translateY(-1px);box-shadow:0 6px 15px rgba(22,102,83,.08)}.project-task-resource-actions button>span{grid-row:1/3;display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#e5f3ee;color:#0e715c;font-size:15px}.project-task-resource-actions button>b{font-size:8px}.project-task-resource-actions button>small{font-size:6px;color:#7d8c87}.project-task-resource-actions button:last-child>span{background:#efedf9;color:#4b4086}.project-added-supply{border-color:#b9ddd2!important;background:#f4fbf8!important}.project-added-supply>span{background:#dff2eb!important;color:#14705b!important}.project-added-supply>em,.project-task-contractor-list article>em{margin-right:auto;padding:4px 6px;border-radius:7px;background:#fff4df;color:#9d6a20;font-size:6px;font-style:normal;font-weight:900;white-space:nowrap}.project-task-contractor-list{display:grid;gap:7px;padding:0 10px 10px}.project-task-contractor-list>small{font-size:6px;color:#7c8a85;font-weight:800}.project-task-contractor-list article{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #dcd9ee;border-radius:10px;background:#f8f7fc}.project-task-contractor-list article>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#4b4086;color:#fff;font-size:7px;font-weight:900}.project-task-contractor-list article>div{display:flex;flex-direction:column}.project-task-contractor-list article b{font-size:8px;color:#343052}.project-task-contractor-list article small{font-size:6px;color:#7f7a98}
.project-task-resource-overlay{background:rgba(6,40,34,.62);backdrop-filter:blur(4px);padding:18px}.project-task-resource-modal{width:min(760px,96vw);max-height:calc(100vh - 36px);overflow:auto;padding:0;border-radius:22px;box-shadow:0 25px 70px rgba(7,45,37,.25)}.project-task-resource-modal>.modal-close{top:16px;left:16px;z-index:3}.project-task-resource-header{display:flex;align-items:center;gap:13px;padding:23px 25px 17px;background:linear-gradient(135deg,#073f35,#0d6b59);color:#fff}.project-task-resource-header>span{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;background:rgba(255,255,255,.13);font-size:21px}.project-task-resource-header small{display:block;color:#8bd6c7;font-size:8px;font-weight:800}.project-task-resource-header h2{margin:3px 0 4px;font-size:19px}.project-task-resource-header p{margin:0;color:rgba(255,255,255,.7);font-size:8px}.project-task-resource-identity{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e0e9e6;background:#f8faf9}.project-task-resource-identity>div{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:12px 24px;border-left:1px solid #e0e9e6}.project-task-resource-identity>div:last-child{border-left:0}.project-task-resource-identity small{grid-column:1/-1;font-size:7px;color:#74837e}.project-task-resource-identity b{font-size:9px;color:#24473e}.project-task-resource-identity span{font-size:7px;color:#647770;direction:ltr}.project-task-resource-tabs{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:13px 24px 0}.project-task-resource-tabs button{display:grid;grid-template-columns:35px 1fr;column-gap:10px;align-items:center;padding:10px 12px;border:1px solid #dbe6e2;border-radius:12px;background:#fff;text-align:right;color:#38574f;cursor:pointer}.project-task-resource-tabs button>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eef4f2;font-size:15px}.project-task-resource-tabs b{font-size:9px}.project-task-resource-tabs small{font-size:6px;color:#7d8b86}.project-task-resource-tabs button.active{border-color:#16745f;background:#eff8f4;box-shadow:inset 0 0 0 1px rgba(22,116,95,.08)}.project-task-resource-tabs button.active>span{background:#16745f;color:#fff}.project-task-resource-form-panel{display:none;padding:15px 24px}.project-task-resource-form-panel.active{display:block}.project-resource-grid{gap:11px}.project-resource-grid label{font-size:8px;font-weight:800;color:#35554d}.project-resource-grid input,.project-resource-grid select,.project-resource-grid textarea{margin-top:6px}.project-resource-grid input[readonly]{background:#f2f5f4;color:#566a63}.project-resource-hint{display:block;margin:5px 2px 0;color:#7e8c87;font-size:6px;font-weight:500}.project-resource-smart-note{display:flex;gap:10px;align-items:start;margin-top:12px;padding:11px 12px;border:1px solid #cbe3da;border-radius:12px;background:#f1f9f6}.project-resource-smart-note>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:#d9efe7;color:#15705c}.project-resource-smart-note b{font-size:8px;color:#22574a}.project-resource-smart-note p{margin:3px 0 0;font-size:7px;line-height:1.6;color:#62766f}.project-task-resource-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 24px;border-top:1px solid #dfe8e5;background:rgba(255,255,255,.96);backdrop-filter:blur(7px)}.project-task-resource-footer p{display:flex;align-items:center;gap:7px;margin:0;font-size:7px;color:#5d746d}.project-task-resource-footer p>span{display:grid;place-items:center;width:21px;height:21px;border-radius:7px;background:#e2f2ec;color:#14705b}.project-task-resource-footer>div{display:flex;gap:8px}.project-task-resource-footer button{height:38px}
@media(max-width:650px){.project-task-resource-actions,.project-task-resource-tabs,.project-task-resource-identity{grid-template-columns:1fr}.project-task-resource-identity>div{border-left:0;border-bottom:1px solid #e0e9e6}.project-task-resource-footer{align-items:stretch;flex-direction:column}.project-task-resource-footer>div{display:grid;grid-template-columns:1fr 1fr}.project-task-resource-overlay{padding:0}.project-task-resource-modal{width:100vw;max-height:100vh;border-radius:0}.project-task-resource-header,.project-task-resource-tabs,.project-task-resource-form-panel,.project-task-resource-footer{padding-left:16px;padding-right:16px}}

/* Procurement approvals workflow */
.project-task-procurement-due{padding:4px 7px;border-radius:99px;background:#fff2dd;color:#93621e;font-size:7px;font-style:normal;font-weight:900}.project-task-action .project-task-due-order{background:#bd7a2d;color:#fff}.project-task-action .project-task-due-order:hover{background:#9a5e1d}.project-added-supply.approved{border-color:#9dd3c3!important}.project-added-supply.approved>em{background:#e2f3ed;color:#176e58}.project-added-supply.exception{border-color:#e4c389!important;background:#fffaf0!important}.project-added-supply.exception>em{background:#fff0d5;color:#9b641c}.project-added-supply.rejected{opacity:.64;border-color:#e1c3be!important}.project-procurement-guard{margin-top:11px;border:1px solid #e3c88f;border-radius:13px;background:#fffaf0;overflow:hidden}.project-procurement-guard>header{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(180,124,35,.14)}.project-procurement-guard>header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#f4d99f;color:#865817;font-weight:900}.project-procurement-guard>header div{display:grid}.project-procurement-guard>header b{font-size:8px;color:#704d1d}.project-procurement-guard>header small{font-size:6px;color:#8d764e}.project-procurement-guard>div{display:grid;grid-template-columns:1fr 1fr}.project-procurement-guard article{display:grid;padding:10px 12px;border-left:1px solid rgba(180,124,35,.12)}.project-procurement-guard article:last-child{border-left:0}.project-procurement-guard article small{font-size:6px;color:#83745d}.project-procurement-guard article b{font-size:8px;margin:3px 0}.project-procurement-guard article span{font-size:6px;font-weight:800}.project-procurement-guard article.ok span{color:#16715b}.project-procurement-guard article.fail span{color:#a05c29}.project-procurement-guard.within{border-color:#b8ddd2;background:#f2faf7}.project-procurement-guard.within>header{border-color:#d5eae3}.project-procurement-guard.within>header>span{background:#d9eee7;color:#176e59}.project-procurement-guard.within>header b{color:#235d4e}
.approvals-workspace{padding:28px clamp(20px,3vw,44px) 60px;background:#f4f7f6;min-height:calc(100vh - 67px);max-width:none}.approvals-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 28px;border-radius:21px;background:linear-gradient(125deg,#073d34,#0b6755);color:#fff;box-shadow:0 15px 38px rgba(8,61,51,.14)}.approvals-hero:after{content:"✓";position:absolute;left:70px;top:-62px;color:rgba(255,255,255,.035);font-size:210px;font-weight:900}.approvals-hero .eyebrow{color:#8ad7c7}.approvals-hero h1{font-size:27px;margin:5px 0}.approvals-hero p{margin:0;color:#b7d7cf;font-size:11px}.approvals-hero aside{position:relative;z-index:1;display:grid;min-width:210px;padding:13px 15px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(255,255,255,.08)}.approvals-hero aside small{font-size:7px;color:#91c6ba}.approvals-hero aside b{font-size:11px;margin:3px 0}.approvals-hero aside span{font-size:7px;color:#c2dbd5}.approval-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:14px 0}.approval-kpis article{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid #dce7e3;border-radius:15px;background:#fff}.approval-kpis article>span{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#eaf4f0;color:#176e59;font-size:13px;font-weight:900}.approval-kpis article.exception>span{background:#fff1da;color:#a3681a}.approval-kpis article.approved>span{background:#e1f2ec;color:#14705a}.approval-kpis article div{display:grid}.approval-kpis small{font-size:7px;color:#778680}.approval-kpis b{font-size:15px;color:#25483f;margin:2px 0}.approval-kpis em{font-size:6px;color:#8a9692;font-style:normal}.approvals-panel{border:1px solid #dbe6e2;border-radius:18px;background:#fff;overflow:hidden}.approvals-panel>header{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid #e2e9e7}.approvals-panel>header small{font-size:7px;color:#1b7a65;font-weight:800}.approvals-panel h2{margin:2px 0 0;font-size:17px}.approval-filters{display:flex;gap:5px;flex-wrap:wrap}.approval-filters button{border:1px solid #dce4e1;border-radius:9px;background:#fff;color:#677871;padding:7px 9px;font-size:7px;font-weight:800;cursor:pointer}.approval-filters button.active{border-color:#196f5c;background:#196f5c;color:#fff}.approval-list{display:grid;gap:10px;padding:14px;background:#f8faf9}.approval-card{border:1px solid #dde7e3;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(35,65,56,.035)}.approval-card.exception{border-color:#e7c991}.approval-card.approved{border-color:#b7dacf}.approval-card.rejected{opacity:.75}.approval-card>header{display:grid;grid-template-columns:130px 1fr auto;gap:15px;align-items:center;padding:13px 15px;border-bottom:1px solid #e7ecea}.approval-code{display:grid;gap:5px}.approval-code span{font:800 8px/1 system-ui;direction:ltr;color:#435a52}.approval-code em{width:max-content;padding:4px 7px;border-radius:99px;background:#fff0d7;color:#9a651e;font-size:6px;font-style:normal;font-weight:900}.approval-card.approved .approval-code em{background:#e2f2ec;color:#17715b}.approval-card.rejected .approval-code em{background:#f7e7e4;color:#9b5447}.approval-card>header>div:nth-child(2) small{font-size:6px;color:#7a8984}.approval-card h3{font-size:10px;margin:2px 0;color:#26483f}.approval-card>header p{margin:0;font-size:7px;color:#7d8b86}.approval-card>header>strong{display:grid;text-align:left;font-size:12px;color:#1e4c40}.approval-card>header>strong small{font-size:6px;color:#81908b}.approval-details{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr}.approval-details>div{display:grid;padding:11px 14px;border-left:1px solid #e8edeb}.approval-details>div:last-child{border-left:0}.approval-details small{font-size:6px;color:#82908b}.approval-details b{font-size:8px;color:#2c4b42;margin:3px 0}.approval-details span{font-size:6px;color:#7b8984}.approval-card>footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 14px;background:#fbfcfc;border-top:1px solid #e7ecea}.approval-control-state{display:flex;gap:7px}.approval-control-state span{padding:5px 7px;border-radius:8px;font-size:6px;font-weight:900}.approval-control-state .ok{background:#e5f3ee;color:#16705a}.approval-control-state .fail{background:#fff0dc;color:#9b651d}.approval-actions{display:flex;gap:7px}.approval-actions button{border:0;border-radius:8px;padding:8px 12px;font-size:7px;font-weight:900;cursor:pointer}.approval-approve{background:#126d59;color:#fff}.approval-reject{background:#f7e8e5;color:#a04e43}.approval-decision{display:flex;align-items:center;gap:8px}.approval-decision>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#e2f2ec;color:#176e59}.approval-decision div{display:grid}.approval-decision small,.approval-decision em{font-size:6px;color:#7c8a85;font-style:normal}.approval-decision b{font-size:7px}.approval-empty{display:grid;place-items:center;text-align:center;padding:50px 20px}.approval-empty>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e6f3ef;color:#16715c;font-size:19px}.approval-empty b{font-size:11px;margin:9px 0 3px}.approval-empty p{margin:0;color:#7b8984;font-size:8px}.finance-approved-ledger{margin-top:13px;border:1px solid #dce7e3;border-radius:14px;background:#fff;overflow:hidden}.finance-approved-ledger>header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f4f8f6;border-bottom:1px solid #e0e8e5}.finance-approved-ledger header small{font-size:6px;color:#1b7b65}.finance-approved-ledger h3{font-size:10px;margin:2px 0}.finance-approved-ledger header>span{font-size:7px;color:#536c64}.finance-approved-expense{display:grid;grid-template-columns:29px 1fr 90px 120px;align-items:center;gap:10px;padding:10px 13px;border-top:1px solid #edf1ef}.finance-approved-expense:first-of-type{border-top:0}.finance-approved-expense>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#e2f2ec;color:#17705a}.finance-approved-expense div{display:grid}.finance-approved-expense b{font-size:8px}.finance-approved-expense small,.finance-approved-expense em{font-size:6px;color:#7c8985;font-style:normal}.finance-approved-expense strong{text-align:left;font-size:9px;color:#275448}
@media(max-width:850px){.approval-kpis{grid-template-columns:1fr 1fr}.approval-card>header{grid-template-columns:1fr auto}.approval-code{grid-column:1/-1;display:flex;align-items:center}.approval-details{grid-template-columns:1fr 1fr}.approvals-panel>header{align-items:stretch;flex-direction:column}.finance-approved-expense{grid-template-columns:29px 1fr auto}.finance-approved-expense>em{display:none}}
@media(max-width:600px){.approvals-hero{align-items:stretch;flex-direction:column}.approval-kpis{grid-template-columns:1fr}.approval-card>header{grid-template-columns:1fr}.approval-card>header>strong{text-align:right}.approval-details{grid-template-columns:1fr}.approval-details>div{border-left:0;border-bottom:1px solid #e8edeb}.approval-card>footer{align-items:stretch;flex-direction:column}.approval-actions{display:grid;grid-template-columns:1fr 1fr}.project-procurement-guard>div{grid-template-columns:1fr}.project-procurement-guard article{border-left:0;border-bottom:1px solid rgba(180,124,35,.12)}}

/* Project accounts: payments, revenue and expenses */
.project-accounts-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:20px;background:linear-gradient(125deg,#153f36,#0d6b58);color:#fff;box-shadow:0 12px 30px rgba(11,78,65,.13)}.project-accounts-head>div:first-child small{color:#8edccb;font-size:8px;font-weight:800}.project-accounts-head h2{margin:4px 0 5px;font-size:21px}.project-accounts-head p{margin:0;color:rgba(255,255,255,.68);font-size:9px}.project-accounts-head>div:last-child{display:flex;flex-direction:column;align-items:flex-end;min-width:210px;padding:12px 15px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.08)}.project-accounts-head>div:last-child>span,.project-accounts-head>div:last-child>small{font-size:7px;color:#a7d8cd}.project-accounts-head>div:last-child>b{font-size:18px;margin:3px 0}.project-finance-tabs{display:flex;gap:8px;margin:13px 0;padding:6px;border:1px solid #dce6e3;border-radius:15px;background:#fff}.project-finance-tabs button{display:flex;align-items:center;gap:8px;min-width:155px;padding:10px 13px;border:0;border-radius:11px;background:transparent;color:#6f817a;cursor:pointer;text-align:right}.project-finance-tabs button>span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#edf4f2;color:#267361}.project-finance-tabs button>b{font-size:9px}.project-finance-tabs button>em{display:grid;place-items:center;min-width:20px;height:20px;margin-right:auto;padding:0 5px;border-radius:99px;background:#eef2f1;color:#708079;font-size:7px;font-style:normal}.project-finance-tabs button.active{background:#eaf4f1;color:#155d4d;box-shadow:inset 0 0 0 1px #cfe3dd}.project-finance-tabs button.active>span{background:#126d59;color:#fff}.project-finance-tabs button.active>em{background:#fff;color:#126d59}.project-finance-panel{display:none}.project-finance-panel.active{display:block}.finance-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.finance-summary-grid article{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid #dce6e3;border-radius:15px;background:#fff}.finance-summary-grid article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#edf3f1;color:#526f66;font-size:14px;font-weight:900}.finance-summary-grid article>div{display:flex;flex-direction:column}.finance-summary-grid small{font-size:7px;color:#7b8984}.finance-summary-grid b{margin:3px 0;font-size:13px;color:#203f37}.finance-summary-grid em{font-size:6px;font-style:normal;color:#8a9692}.finance-summary-grid article.paid>span{background:#e2f3ec;color:#167058}.finance-summary-grid article.due>span{background:#fff0dc;color:#a26920}.finance-summary-grid article.upcoming>span{background:#efedf8;color:#514681}.finance-collection-progress{margin-top:10px;padding:13px 15px;border:1px solid #dde7e4;border-radius:14px;background:#fff}.finance-collection-progress header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.finance-collection-progress header div{display:flex;flex-direction:column}.finance-collection-progress small{font-size:7px;color:#768781}.finance-collection-progress b{font-size:10px;color:#23463c}.finance-collection-progress header>span{font-size:8px;color:#27705f}.finance-collection-progress>div{height:8px;border-radius:99px;background:#e7eeec;overflow:hidden}.finance-collection-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0c6b57,#34aa8d)}.finance-payment-ledger{margin-top:11px;border:1px solid #dce6e3;border-radius:17px;background:#fff;overflow:hidden}.finance-payment-ledger>header{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #e2eae7}.finance-payment-ledger>header small{font-size:7px;color:#23806a}.finance-payment-ledger h3{margin:2px 0 0;font-size:13px;color:#1d4237}.finance-ledger-legend{display:flex;gap:5px}.finance-ledger-legend span{padding:5px 8px;border-radius:99px;font-size:6px;font-weight:800}.finance-ledger-legend .paid{background:#e3f3ed;color:#176b55}.finance-ledger-legend .due{background:#fff0dc;color:#9d681e}.finance-ledger-legend .upcoming{background:#eeedf7;color:#554a84}.finance-payment-row{display:grid;grid-template-columns:34px minmax(220px,1fr) 70px 130px 85px 115px;align-items:center;gap:10px;min-height:70px;padding:10px 15px;border-top:1px solid #edf1f0}.finance-payment-ledger>article:nth-of-type(1){border-top:0}.finance-payment-row.due{background:#fffbf5}.finance-payment-row.paid{background:#fbfdfc}.finance-payment-index{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#eef3f1;color:#64746e;font-size:8px;font-weight:900}.finance-payment-row.paid .finance-payment-index{background:#dff1e9;color:#176c56}.finance-payment-row.due .finance-payment-index{background:#fff0da;color:#9b651b}.finance-payment-name{display:flex;flex-direction:column;min-width:0}.finance-payment-name small{font-size:6px;color:#8a9692}.finance-payment-name b{margin:2px 0;font-size:9px;color:#29483f}.finance-payment-name p{margin:0;font-size:6px;color:#74847e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-payment-percent{justify-self:start;padding:5px 7px;border-radius:8px;background:#f1f4f3;color:#506a62;font-size:7px;font-weight:900}.finance-payment-row>strong{display:flex;flex-direction:column;align-items:flex-start;color:#23483e;font-size:10px}.finance-payment-row>strong small{font-size:6px;color:#8a9692;font-weight:500}.finance-payment-row>em{justify-self:start;padding:6px 8px;border-radius:99px;background:#eeedf7;color:#554a83;font-size:6px;font-style:normal;font-weight:900}.finance-payment-row.paid>em{background:#e2f3ec;color:#176c56}.finance-payment-row.due>em{background:#fff0db;color:#9c671d}.finance-payment-row>div:last-child{text-align:left}.finance-payment-row button{border:0;border-radius:9px;background:#a66c24;color:#fff;padding:8px 10px;font-size:7px;font-weight:900;cursor:pointer}.finance-payment-receipt,.finance-payment-wait{font-size:6px;color:#22715d}.finance-payment-wait{color:#7d8c86}.finance-revenue-hero{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-radius:18px;background:linear-gradient(135deg,#e7f5ef,#fff);border:1px solid #cfe6de}.finance-revenue-hero small{font-size:8px;color:#377968}.finance-revenue-hero b{display:block;margin:5px 0;font-size:24px;color:#155f4d}.finance-revenue-hero p{margin:0;font-size:8px;color:#71837c}.finance-revenue-hero>span{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#126d59;color:#fff;font-size:24px}.finance-revenue-list{display:grid;gap:8px;margin-top:10px}.finance-revenue-list>article{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:13px 15px;border:1px solid #dce6e3;border-radius:13px;background:#fff}.finance-revenue-list article>span{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#e3f3ed;color:#176c56}.finance-revenue-list article div{display:flex;flex-direction:column}.finance-revenue-list article b{font-size:9px;color:#29483f}.finance-revenue-list article small{font-size:7px;color:#7b8b85}.finance-revenue-list article>strong{font-size:11px;color:#176c56}.finance-expense-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.finance-expense-summary article{display:flex;align-items:center;gap:11px;padding:18px;border:1px solid #dce6e3;border-radius:16px;background:#fff}.finance-expense-summary article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#fff1df;color:#96631d;font-size:16px}.finance-expense-summary article:nth-child(2)>span{background:#e8f2ef;color:#1a6e5a}.finance-expense-summary article.risk>span{background:#eeedf8;color:#51457f}.finance-expense-summary article div{display:flex;flex-direction:column}.finance-expense-summary small{font-size:7px;color:#7b8984}.finance-expense-summary b{margin:4px 0;font-size:14px;color:#23453b}.finance-expense-summary em{font-size:6px;font-style:normal;color:#899691}.finance-expense-total{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:10px;border:1px solid #d9e4e0;border-radius:16px;background:#d9e4e0;overflow:hidden}.finance-expense-total>div{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:#fff}.finance-expense-total small{font-size:8px;color:#6f817a}.finance-expense-total b{font-size:15px;color:#174f42}.finance-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:170px;padding:25px;text-align:center}.finance-empty>span{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#edf4f2;color:#28715f;font-size:17px}.finance-empty b{margin:8px 0 3px;font-size:11px;color:#29483f}.finance-empty p{margin:0;font-size:8px;color:#84918c}.project-accounts-head .riyal-symbol,.finance-revenue-hero .riyal-symbol{color:currentColor}
@media(max-width:1100px){.finance-summary-grid{grid-template-columns:repeat(2,1fr)}.finance-payment-row{grid-template-columns:32px minmax(180px,1fr) 65px 115px 80px}.finance-payment-row>div:last-child{grid-column:2/-1;text-align:right}.finance-expense-summary{grid-template-columns:1fr}}
@media(max-width:720px){.project-accounts-head{align-items:flex-start;padding:17px}.project-accounts-head>div:last-child{min-width:150px}.project-finance-tabs{overflow-x:auto}.project-finance-tabs button{min-width:135px}.finance-summary-grid{grid-template-columns:1fr}.finance-payment-row{grid-template-columns:32px 1fr auto;padding:10px}.finance-payment-percent,.finance-payment-row>em{grid-column:2}.finance-payment-row>strong{grid-column:3;grid-row:1/3}.finance-payment-row>div:last-child{grid-column:2/-1}.finance-expense-total{grid-template-columns:1fr}}
.finance-payment-row.change-order-payment{box-shadow:inset -3px 0 #4f4382}.finance-payment-source{display:inline-flex;align-items:center;margin-right:5px;padding:2px 5px;border-radius:99px;background:#eeebf8;color:#514681;font-size:5.4px;font-weight:900}
.finance-expense-summary{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.finance-expense-summary article.direct>span{background:#e9f0f8;color:#3d628a}

/* Task acceptance record with mandatory checklist and photo evidence */
.project-acceptance-overlay{overflow-y:auto;overscroll-behavior:contain;align-items:flex-start;padding:22px}.project-acceptance-modal{width:min(1080px,96vw);max-height:calc(100vh - 44px);max-height:calc(100dvh - 44px);overflow:auto;padding:0;border-radius:22px;scrollbar-gutter:stable}.project-acceptance-header{display:flex;align-items:center;gap:14px;padding:22px 24px;background:linear-gradient(128deg,#093f35,#0e6c58);color:#fff}.project-acceptance-header>span{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);font-size:19px}.project-acceptance-header>div{display:flex;flex-direction:column}.project-acceptance-header small{font-size:7px;color:#8edccb;font-weight:800}.project-acceptance-header h2{margin:3px 0 4px;font-size:20px}.project-acceptance-header p{margin:0;color:rgba(255,255,255,.7);font-size:8px}.project-acceptance-modal>.modal-close{top:16px;left:18px;right:auto;z-index:3;background:rgba(255,255,255,.12);color:#fff}.project-acceptance-identity{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:1px;margin:0;background:#dce7e3;border-bottom:1px solid #dce7e3}.project-acceptance-identity>span{display:flex;flex-direction:column;padding:12px 18px;background:#fff}.project-acceptance-identity small{font-size:6px;color:#75857f}.project-acceptance-identity b{margin:3px 0;font-size:9px;color:#24453b}.project-acceptance-identity em{font-size:6px;color:#86938e;font-style:normal}.project-acceptance-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:13px;padding:16px 18px;background:#f6f8f7}.project-acceptance-layout>section,.project-acceptance-layout>aside{min-width:0;border:1px solid #dce6e3;border-radius:15px;background:#fff;overflow:hidden}.project-acceptance-section-title{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e2eae7;background:#fbfcfc}.project-acceptance-section-title>div{display:flex;flex-direction:column}.project-acceptance-section-title b{font-size:9px;color:#27493f}.project-acceptance-section-title small{font-size:6px;color:#84918c}.project-acceptance-section-title>strong{padding:6px 8px;border-radius:8px;background:#e8f3ef;color:#176b56;font-size:7px}.project-acceptance-checklist{display:grid;max-height:460px;overflow:auto}.project-acceptance-check{position:relative;display:grid;grid-template-columns:30px 1fr;align-items:start;gap:9px;padding:11px 13px;border-top:1px solid #edf2f0;cursor:pointer}.project-acceptance-check:first-child{border-top:0}.project-acceptance-check input{position:absolute;opacity:0}.project-acceptance-box{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cddbd6;border-radius:9px;background:#fff;color:transparent;font-weight:900;transition:.15s}.project-acceptance-check input:checked+.project-acceptance-box{border-color:#13705a;background:#13705a;color:#fff}.project-acceptance-check:has(input:checked){background:#f7fbf9}.project-acceptance-check>div{display:flex;flex-direction:column}.project-acceptance-check header{display:flex;align-items:center;gap:6px}.project-acceptance-check header b{font-size:8px;color:#29473f}.project-acceptance-check header em{padding:3px 5px;border-radius:99px;background:#fff0dc;color:#a16a1e;font-size:5px;font-style:normal;font-weight:900}.project-acceptance-check small{margin-top:2px;color:#287862;font-size:6px;font-weight:800;direction:ltr;text-align:right}.project-acceptance-check p{margin:3px 0;color:#687a73;font-size:7px;line-height:1.55}.project-acceptance-check strong{padding:6px 7px;border-radius:7px;background:#f4f7f6;color:#4f6c63;font-size:6px;line-height:1.5}.project-acceptance-check.critical{border-right:3px solid #d39a47}.project-acceptance-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:128px;margin:12px;border:1.5px dashed #b9d2ca;border-radius:13px;background:#f5faf8;cursor:pointer;text-align:center}.project-acceptance-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.project-acceptance-drop>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#dff0ea;color:#13705a;font-size:19px}.project-acceptance-drop>b{margin:7px 0 3px;font-size:8px;color:#285047}.project-acceptance-drop>small{font-size:6px;color:#82918c}.project-acceptance-drop.loading{opacity:.6;pointer-events:none}.project-acceptance-previews{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:0 12px}.project-acceptance-previews article{position:relative;aspect-ratio:1.2;border-radius:10px;overflow:hidden;background:#e9efed}.project-acceptance-previews img{width:100%;height:100%;object-fit:cover}.project-acceptance-previews button{position:absolute;top:5px;left:5px;display:grid;place-items:center;width:21px;height:21px;border:0;border-radius:7px;background:rgba(18,36,31,.72);color:#fff;cursor:pointer}.project-acceptance-previews article>span{position:absolute;right:5px;bottom:5px;display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:rgba(255,255,255,.9);color:#1d6654;font-size:7px;font-weight:900}.project-acceptance-notes{display:grid;gap:5px;margin:12px;font-size:7px;font-weight:800;color:#4d655e}.project-acceptance-notes textarea{width:100%;resize:vertical;border:1px solid #d9e3df;border-radius:10px;padding:9px;font:inherit;font-size:7px;outline:none}.project-acceptance-notes textarea:focus{border-color:#4d957d;box-shadow:0 0 0 3px rgba(42,121,95,.1)}.project-acceptance-footer{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px;border-top:1px solid #dce5e2;background:rgba(255,255,255,.97);box-shadow:0 -8px 20px rgba(22,60,50,.05)}.project-acceptance-footer>div:first-child{display:flex;align-items:center;gap:8px}.project-acceptance-footer>div:first-child span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#fff0dc;color:#a36b21;font-weight:900}.project-acceptance-footer>div:first-child p{margin:0;font-size:7px;color:#657871}.project-acceptance-footer>div:first-child.ready span{background:#e2f3ec;color:#176c56}.project-acceptance-footer>div:last-child{display:flex;gap:7px}.project-acceptance-footer button{min-width:125px}.project-acceptance-footer button:disabled{opacity:.45;cursor:not-allowed}.project-acceptance-empty{padding:40px 20px;text-align:center;color:#7f8d88;font-size:8px}
@media(max-width:760px){.project-acceptance-overlay{padding:0}.project-acceptance-modal{width:100%;max-height:100vh;max-height:100dvh;border-radius:0}.project-acceptance-header{padding:18px 16px}.project-acceptance-identity{grid-template-columns:1fr}.project-acceptance-layout{grid-template-columns:1fr;padding:10px}.project-acceptance-checklist{max-height:none}.project-acceptance-footer{align-items:flex-start;flex-direction:column}.project-acceptance-footer>div:last-child{width:100%}.project-acceptance-footer button{flex:1;min-width:0}}

/* Evidence is recorded against each checklist item, not only against the task. */
.project-acceptance-check{display:block;padding:0;cursor:default;background:#fff}.project-acceptance-check-main{position:relative;display:grid;grid-template-columns:30px 1fr;align-items:start;gap:9px;padding:11px 13px;cursor:pointer}.project-acceptance-check-main input{position:absolute;opacity:0}.project-acceptance-check-main>div{display:flex;flex-direction:column}.project-acceptance-check-main header{display:flex;align-items:center;gap:6px}.project-acceptance-check-main header b{font-size:8px;color:#29473f}.project-acceptance-check-main header em{padding:3px 5px;border-radius:99px;background:#fff0dc;color:#a16a1e;font-size:5px;font-style:normal;font-weight:900}.project-acceptance-check-main small{margin-top:2px;color:#287862;font-size:6px;font-weight:800;direction:ltr;text-align:right}.project-acceptance-check-main p{margin:3px 0;color:#687a73;font-size:7px;line-height:1.55}.project-acceptance-check-main strong{padding:6px 7px;border-radius:7px;background:#f4f7f6;color:#4f6c63;font-size:6px;line-height:1.5}.project-acceptance-check:has(.project-acceptance-check-main input:checked){background:#f7fbf9}.project-check-evidence{margin:0 13px 12px;padding:10px;border:1px solid #dde8e4;border-radius:11px;background:#fbfdfc}.project-check-evidence>header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.project-check-evidence>header>div{display:flex;flex-direction:column}.project-check-evidence>header b{font-size:7px;color:#31564b}.project-check-evidence>header small{font-size:5.5px;color:#88958f}.project-check-evidence>header em{padding:4px 6px;border-radius:7px;background:#fff0dc;color:#a36b21;font-size:5.5px;font-style:normal;font-weight:900}.project-acceptance-check.has-evidence .project-check-evidence>header em{background:#e1f3eb;color:#176d57}.project-check-evidence-controls{display:grid;grid-template-columns:126px 1fr;gap:8px}.project-check-photo-add{position:relative;display:flex;align-items:center;gap:7px;min-height:62px;padding:8px;border:1px dashed #b8d2c9;border-radius:9px;background:#f1f8f5;cursor:pointer}.project-check-photo-add input{position:absolute;inset:0;opacity:0;cursor:pointer}.project-check-photo-add>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:8px;background:#dcefe7;color:#116c55;font-size:15px}.project-check-photo-add>div{display:flex;flex-direction:column}.project-check-photo-add b{font-size:6.5px;color:#31594e}.project-check-photo-add small{font-size:5.5px;color:#87938e}.project-check-photo-add.loading{opacity:.55;pointer-events:none}.project-check-note{display:grid;gap:4px;color:#516b62;font-size:6px;font-weight:800}.project-check-note textarea{width:100%;min-height:62px;resize:vertical;padding:8px;border:1px solid #d9e4e0;border-radius:9px;background:#fff;font:inherit;font-size:6.5px;outline:none}.project-check-note textarea:focus{border-color:#4d957d;box-shadow:0 0 0 3px rgba(42,121,95,.09)}.project-check-previews{grid-template-columns:repeat(4,minmax(0,1fr));padding:8px 0 0}.project-check-previews article{aspect-ratio:1.45}.project-acceptance-check.has-evidence{box-shadow:inset -3px 0 #1b8066}
@media(max-width:760px){.project-check-evidence-controls{grid-template-columns:1fr}.project-check-previews{grid-template-columns:repeat(3,minmax(0,1fr))}}

.project-acceptance-report-button{border-color:#b9d9cf!important;background:#edf8f4!important;color:#126b55!important;font-weight:900!important}.project-acceptance-report-button:hover{background:#dff1ea!important;transform:translateY(-1px)}
.project-acceptance-report-overlay{align-items:flex-start;overflow-y:auto;padding:22px;background:rgba(9,31,27,.72);backdrop-filter:blur(8px)}.project-acceptance-report-modal{width:min(1060px,96vw);max-height:none;padding:0;border-radius:24px;background:#e9efed;overflow:hidden}.project-acceptance-report-modal>.modal-close{top:15px;left:16px;right:auto;z-index:5;background:#fff;color:#345a50;box-shadow:0 5px 18px rgba(15,48,40,.12)}.project-acceptance-report-actions{position:sticky;top:0;z-index:4;display:flex;justify-content:flex-end;gap:8px;padding:12px 66px 12px 18px;border-bottom:1px solid #d7e2de;background:rgba(255,255,255,.95);backdrop-filter:blur(12px)}.project-acceptance-report-actions button{min-width:130px}.project-acceptance-report{width:min(930px,calc(100% - 36px));margin:18px auto 28px;border:1px solid #dce7e3;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(16,52,43,.1);overflow:hidden;color:#29483f}.acceptance-report-cover{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 30px;background:linear-gradient(130deg,#073d34 0%,#0f6f5a 72%,#16927a 100%);color:#fff}.acceptance-report-brand{display:flex;align-items:center;gap:17px}.acceptance-report-brand img{width:118px;height:60px;object-fit:contain;object-position:center;background:#fff;border-radius:13px;padding:7px}.acceptance-report-brand>div{display:flex;flex-direction:column}.acceptance-report-brand small{color:#9ee1d2;font-size:8px;font-weight:800}.acceptance-report-brand h2{margin:4px 0 0;font-size:24px}.acceptance-report-status{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid rgba(255,255,255,.18);border-radius:13px;background:rgba(255,255,255,.1)}.acceptance-report-status>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;color:#0f765e;font-weight:900}.acceptance-report-status>div{display:flex;flex-direction:column}.acceptance-report-status small{font-size:7px;color:#a9ded3}.acceptance-report-status b{font-size:10px}.acceptance-report-reference{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #dfe8e5;background:#f7faf9}.acceptance-report-reference>div{display:flex;flex-direction:column;gap:3px;padding:12px 22px;border-left:1px solid #e0e9e6}.acceptance-report-reference>div:last-child{border-left:0}.acceptance-report-reference small,.acceptance-report-title small{font-size:7px;color:#7c8f88}.acceptance-report-reference b{font-size:9px;color:#244b40}.acceptance-report-title{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px 30px}.acceptance-report-title h1{margin:4px 0;font-size:24px;color:#173d33}.acceptance-report-title p{margin:0;color:#748780;font-size:8px}.acceptance-report-title>span{padding:7px 10px;border-radius:99px;background:#e4f3ee;color:#176d57;font-size:8px;font-weight:900}.acceptance-report-context{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 30px 24px}.acceptance-report-context article{display:flex;align-items:center;gap:9px;min-width:0;padding:12px;border:1px solid #dfe8e5;border-radius:12px;background:#fbfcfc}.acceptance-report-context article>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:#e4f2ed;color:#176e57}.acceptance-report-context article>div{display:flex;min-width:0;flex-direction:column}.acceptance-report-context small{font-size:6px;color:#82918c}.acceptance-report-context b{overflow:hidden;margin-top:3px;color:#2a4b42;font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.acceptance-report-intelligence{margin:0 30px 25px;border-radius:16px;background:linear-gradient(120deg,#32266f,#2a7f82);color:#fff;overflow:hidden}.acceptance-report-intelligence>header{display:flex;align-items:center;gap:13px;padding:18px 20px}.acceptance-report-intelligence>header>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.13);font-size:17px}.acceptance-report-intelligence>header>div{display:flex;flex-direction:column}.acceptance-report-intelligence header small{font-size:7px;color:#72d6c5;font-weight:800}.acceptance-report-intelligence h3{margin:3px 0;font-size:15px}.acceptance-report-intelligence p{margin:0;color:rgba(255,255,255,.65);font-size:7.5px}.acceptance-report-intelligence>div{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.12)}.acceptance-report-intelligence>div>span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px;border-left:1px solid rgba(255,255,255,.12)}.acceptance-report-intelligence>div>span:last-child{border-left:0}.acceptance-report-intelligence>div b{font-size:15px}.acceptance-report-intelligence>div small{font-size:6px;color:rgba(255,255,255,.65)}.acceptance-report-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 30px 12px;padding-bottom:9px;border-bottom:2px solid #153f34}.acceptance-report-section-head>div{display:flex;flex-direction:column}.acceptance-report-section-head small{font-size:6px;color:#1c8066;font-weight:900}.acceptance-report-section-head h2{margin:3px 0 0;color:#1b4036;font-size:15px}.acceptance-report-section-head>span{padding:6px 8px;border-radius:8px;background:#e5f2ed;color:#176f58;font-size:7px;font-weight:900}.acceptance-report-checks{display:grid;gap:12px;padding:0 30px 25px}.acceptance-report-check{border:1px solid #dce6e2;border-radius:14px;background:#fff;overflow:hidden;break-inside:avoid}.acceptance-report-check>header{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:13px 15px;background:#f7faf9;border-bottom:1px solid #e3eae8}.acceptance-report-check>header>span{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#176f58;color:#fff;font-size:12px;font-weight:900}.acceptance-report-check>header>div{display:flex;flex-direction:column}.acceptance-report-check>header small{font-size:6px;color:#25806a;font-weight:800;direction:ltr;text-align:right}.acceptance-report-check h3{margin:3px 0 0;font-size:11px;color:#24473e}.acceptance-report-check>header>em{padding:6px 8px;border-radius:99px;background:#dff2ea;color:#176d57;font-size:6px;font-style:normal;font-weight:900}.acceptance-report-check-body{display:grid;grid-template-columns:1fr 95px;gap:12px;padding:12px 15px}.acceptance-report-observation{display:flex;flex-direction:column;padding:9px 11px;border-radius:10px;background:#f6f8f7}.acceptance-report-observation small{font-size:6px;color:#778981}.acceptance-report-observation p{margin:4px 0 0;font-size:7.5px;line-height:1.7;color:#3f5d54}.acceptance-report-photo-count{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;background:#edf6f2;color:#176c56}.acceptance-report-photo-count b{font-size:17px}.acceptance-report-photo-count span{font-size:6px}.acceptance-report-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 15px 14px}.acceptance-report-gallery figure{position:relative;aspect-ratio:1.55;margin:0;border-radius:10px;background:#e9efed;overflow:hidden}.acceptance-report-gallery img{width:100%;height:100%;object-fit:cover}.acceptance-report-gallery figcaption{position:absolute;right:6px;bottom:6px;padding:4px 6px;border-radius:6px;background:rgba(7,40,33,.78);color:#fff;font-size:5.5px}.acceptance-report-no-photo{margin:0 15px 14px;padding:10px;border:1px dashed #d7e1de;border-radius:9px;text-align:center;color:#8a9792;font-size:6.5px}.acceptance-report-general{margin:0 30px 25px;padding:15px;border:1px solid #dce6e2;border-radius:14px;background:#fbfcfc}.acceptance-report-general>div:first-child{display:flex;flex-direction:column}.acceptance-report-general small{font-size:6px;color:#7b8d86}.acceptance-report-general p{margin:4px 0 12px;font-size:8px;color:#3d5b52;line-height:1.7}.acceptance-report-general .acceptance-report-gallery{padding:0}.acceptance-report-signoff{display:flex;align-items:center;justify-content:space-between;margin:0 30px 24px;padding:18px 20px;border:1px solid #cfe0da;border-radius:15px;background:linear-gradient(135deg,#f5faf8,#fff)}.acceptance-report-signoff>div:first-child{display:flex;flex-direction:column}.acceptance-report-signoff small{font-size:6px;color:#748880}.acceptance-report-signoff b{margin:4px 0;font-size:11px;color:#20463b}.acceptance-report-signoff>div:first-child span{font-size:6px;color:#7e9089}.acceptance-report-seal{display:grid!important;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:9px 12px;border:1px solid #a8d0c3;border-radius:11px;color:#176d57}.acceptance-report-seal>span{grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#176f58;color:#fff}.acceptance-report-seal b{margin:0!important;font-size:8px!important}.acceptance-report-seal small{font-size:5px}.acceptance-report-footer{display:flex;align-items:center;justify-content:space-between;padding:11px 30px;background:#123f34;color:#d6ebe4;font-size:6px}.acceptance-report-footer b{color:#fff}.acceptance-report-empty{padding:35px;text-align:center;color:#85938e;font-size:8px}
@media(max-width:760px){.project-acceptance-report-overlay{padding:0}.project-acceptance-report-modal{width:100%;border-radius:0}.project-acceptance-report{width:100%;margin:0;border:0;border-radius:0}.project-acceptance-report-actions{padding:10px 58px 10px 10px}.acceptance-report-cover,.acceptance-report-title{align-items:flex-start;flex-direction:column}.acceptance-report-reference{grid-template-columns:1fr}.acceptance-report-reference>div{border-bottom:1px solid #e0e9e6;border-left:0}.acceptance-report-context{grid-template-columns:1fr 1fr;padding-inline:15px}.acceptance-report-intelligence{margin-inline:15px}.acceptance-report-intelligence>div{grid-template-columns:1fr 1fr}.acceptance-report-section-head,.acceptance-report-signoff{margin-inline:15px}.acceptance-report-checks{padding-inline:15px}.acceptance-report-check>header{grid-template-columns:38px 1fr}.acceptance-report-check>header>em{grid-column:2}.acceptance-report-check-body{grid-template-columns:1fr}.acceptance-report-gallery{grid-template-columns:1fr 1fr}.acceptance-report-general{margin-inline:15px}.acceptance-report-signoff{align-items:flex-start;flex-direction:column;gap:14px}}
@media print{@page{size:A4;margin:10mm}body.print-project-acceptance-report{background:#fff!important}body.print-project-acceptance-report .app>*{display:none!important}body.print-project-acceptance-report .app>#projectAcceptanceReportModal{position:static!important;display:block!important;padding:0!important;background:#fff!important}body.print-project-acceptance-report .project-acceptance-report-modal{display:block!important;width:100%!important;max-width:none!important;overflow:visible!important;background:#fff!important}body.print-project-acceptance-report .project-acceptance-report-actions,body.print-project-acceptance-report .project-acceptance-report-modal>.modal-close{display:none!important}body.print-project-acceptance-report .project-acceptance-report{width:100%!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}.acceptance-report-check,.acceptance-report-signoff,.acceptance-report-intelligence{break-inside:avoid}.acceptance-report-cover{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Premium acceptance certificate — Diyar purple, teal and gold identity. */
.project-acceptance-report{position:relative;background:linear-gradient(180deg,#fff 0,#fff 70%,#fbfcfc 100%);box-shadow:0 28px 90px rgba(19,43,37,.18)}.project-acceptance-report:before{content:"";position:absolute;inset:0 0 auto;height:7px;z-index:2;background:linear-gradient(90deg,#3b2c78 0 58%,#20a897 58% 88%,#c99b4c 88%)}.project-acceptance-report:after{content:"✓";position:absolute;left:-45px;top:420px;width:240px;height:240px;border:28px solid rgba(22,111,88,.025);border-radius:50%;color:rgba(22,111,88,.025);font-size:120px;font-weight:900;line-height:180px;text-align:center;pointer-events:none}.acceptance-report-cover{position:relative;padding:34px 34px 25px;background:#fff;color:#2e2a68;border-bottom:1px solid #e7ebe9}.acceptance-report-cover:after{content:"";position:absolute;left:34px;bottom:-1px;width:116px;height:3px;border-radius:4px;background:#20a897}.acceptance-report-brand{gap:20px}.acceptance-report-brand img{width:148px;height:72px;padding:0;background:transparent;border-radius:0}.acceptance-report-brand small{color:#1b8d7b;font-size:7.5px;letter-spacing:.2px}.acceptance-report-brand h2{margin-top:6px;color:#322a72;font-size:25px;letter-spacing:-.4px}.acceptance-report-status{padding:11px 14px;border:1px solid #cde5dc;background:#f0f8f5;color:#185f4d}.acceptance-report-status>span{width:38px;height:38px;background:#16745c;color:#fff;box-shadow:0 7px 18px rgba(22,116,92,.2)}.acceptance-report-status small{color:#719087}.acceptance-report-status b{color:#185747}.acceptance-report-reference{margin:0;background:#322a72;color:#fff;border:0}.acceptance-report-reference>div{padding:13px 24px;border-color:rgba(255,255,255,.12)}.acceptance-report-reference small{color:#a9a4ce}.acceptance-report-reference b{color:#fff;font-size:8.5px}.acceptance-report-title{position:relative;padding:32px 34px 25px;background:linear-gradient(135deg,#fff,#fbfdfc)}.acceptance-report-title:before{content:"";position:absolute;right:0;top:30px;width:5px;height:58px;border-radius:4px 0 0 4px;background:#20a897}.acceptance-report-title small{color:#198471;font-weight:900}.acceptance-report-title h1{margin:7px 0 6px;color:#28245f;font-size:27px;letter-spacing:-.6px}.acceptance-report-title p{font-size:7.5px}.acceptance-report-title>span{padding:8px 12px;border:1px solid #c9e3da;background:#eff8f5;color:#166b56}.acceptance-report-context{gap:10px;padding:0 34px 28px}.acceptance-report-context article{padding:13px 12px;border-color:#e3e8e6;background:#fff;box-shadow:0 6px 20px rgba(28,61,52,.045)}.acceptance-report-context article>span{background:linear-gradient(145deg,#eaf5f1,#dceee8);color:#176d58}.acceptance-report-context small{color:#81918b}.acceptance-report-context b{color:#334f47}.acceptance-report-intelligence{position:relative;margin:0 34px 30px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(118deg,#32276f 0%,#3e317d 43%,#198c82 100%);box-shadow:0 16px 38px rgba(50,39,111,.18)}.acceptance-report-intelligence:before{content:"";position:absolute;left:20px;top:18px;width:72px;height:72px;border:1px solid rgba(255,255,255,.12);border-radius:50%}.acceptance-report-intelligence>header{padding:21px 22px}.acceptance-report-intelligence>header>span{width:46px;height:46px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.11)}.acceptance-report-intelligence header small{color:#82e4d3}.acceptance-report-intelligence h3{margin:4px 0;font-size:14px}.acceptance-report-intelligence p{max-width:570px;line-height:1.65}.acceptance-report-intelligence>div{background:rgba(7,25,48,.12)}.acceptance-report-intelligence>div>span{padding:13px}.acceptance-report-intelligence>div b{font-size:16px}.acceptance-report-intelligence .acceptance-report-score{position:relative;background:rgba(255,255,255,.1)}.acceptance-report-intelligence .acceptance-report-score b{color:#d9bd78}.acceptance-report-section-head{margin-inline:34px;padding-bottom:10px;border-bottom:1px solid #d9e3df}.acceptance-report-section-head:after{content:"";position:absolute}.acceptance-report-section-head small{color:#1c8973;letter-spacing:.15px}.acceptance-report-section-head h2{color:#29265f;font-size:16px}.acceptance-report-section-head>span{border:1px solid #cae2da;background:#f2f8f6;color:#176b56}.acceptance-report-checks{gap:14px;padding:0 34px 30px}.acceptance-report-check{border-color:#dce5e2;border-radius:16px;box-shadow:0 8px 25px rgba(23,60,50,.055)}.acceptance-report-check>header{grid-template-columns:42px 1fr auto;padding:15px 17px;border-bottom-color:#e4eae8;background:linear-gradient(90deg,#f8faf9,#fff)}.acceptance-report-check>header>span{width:39px;height:39px;border-radius:12px;background:linear-gradient(145deg,#176f58,#23927a);box-shadow:0 7px 17px rgba(23,111,88,.2)}.acceptance-report-check>header small{color:#1b866f}.acceptance-report-check h3{font-size:11.5px;color:#2b465f}.acceptance-report-check>header>em{border:1px solid #c8e2d9;background:#eff8f5}.acceptance-report-check-body{grid-template-columns:1fr 105px;padding:14px 17px}.acceptance-report-observation{padding:11px 13px;border-right:3px solid #d9bd78;background:#faf8f2}.acceptance-report-observation small{color:#9a7b3d;font-weight:900}.acceptance-report-observation p{color:#425c55}.acceptance-report-photo-count{border:1px solid #d4e6e0;background:#eff7f4}.acceptance-report-photo-count b{color:#322a72}.acceptance-report-gallery{gap:10px;padding:0 17px 16px}.acceptance-report-gallery figure{border:1px solid #dfe7e4;border-radius:12px;box-shadow:0 7px 18px rgba(20,55,46,.08)}.acceptance-report-gallery figure:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);pointer-events:none}.acceptance-report-gallery figcaption{right:8px;bottom:8px;background:rgba(42,35,96,.84);backdrop-filter:blur(6px)}.acceptance-report-general{margin-inline:34px;border-color:#dde6e3;background:linear-gradient(135deg,#fbfcfc,#f7faf9)}.acceptance-report-signoff{position:relative;margin-inline:34px;padding:20px 22px;border-color:#cbded7;background:linear-gradient(135deg,#f7fbf9,#fff);overflow:hidden}.acceptance-report-signoff:before{content:"اعتماد إلكتروني";position:absolute;left:120px;top:17px;color:rgba(31,123,99,.055);font-size:34px;font-weight:900;transform:rotate(-7deg)}.acceptance-report-seal{position:relative;background:#fff;box-shadow:0 6px 18px rgba(24,80,64,.07)}.acceptance-report-footer{padding:12px 34px;background:#29245f;border-top:4px solid #20a897}.acceptance-report-footer b{color:#d9bd78;letter-spacing:.2px}
@media(max-width:760px){.acceptance-report-cover{padding:28px 20px 20px}.acceptance-report-brand img{width:120px;height:58px}.acceptance-report-title{padding:25px 20px}.acceptance-report-title h1{font-size:22px}.acceptance-report-context,.acceptance-report-checks{padding-inline:20px}.acceptance-report-intelligence,.acceptance-report-section-head,.acceptance-report-general,.acceptance-report-signoff{margin-inline:20px}.acceptance-report-check-body{grid-template-columns:1fr}.acceptance-report-reference>div{padding-inline:20px}}
/* Unified approvals center */
.approval-filter-stack{display:grid;gap:6px;justify-items:end}
.approval-type-filters{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.approval-type-filters button{border:1px solid #dce4e1;border-radius:9px;background:#f4f7f6;color:#677871;padding:7px 9px;font-size:7px;font-weight:800;cursor:pointer}
.approval-type-filters button.active{border-color:#392d77;background:#392d77;color:#fff}
.approval-card.type-task{border-right:4px solid #218d79}
.approval-card.type-stage{border-right:4px solid #3b2d7b}
.approval-card.type-contractor{border-right:4px solid #bc8a3f}
.approval-type-mark{display:grid!important;justify-items:center!important;gap:4px;text-align:center!important}
.approval-type-mark>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e7f3ef;color:#176d59;font-size:16px}
.approval-report-link{border:1px solid #b9d8cf;border-radius:8px;background:#eef7f4;color:#176d59;padding:7px 10px;font-size:7px;font-weight:900;cursor:pointer}
.project-stage-approval-wait{display:inline-flex;align-items:center;padding:7px 9px;border-radius:9px;background:#eeeaf8;color:#493b83;font-size:7px;font-weight:900}
.project-acceptance-report-button.pending{background:#fff5df!important;color:#93621d!important;border-color:#e8d3a6!important}
.acceptance-report-status.pending{background:#fff5df!important;color:#93621d!important}
@media(max-width:900px){.approvals-panel>header{align-items:stretch;flex-direction:column}.approval-filter-stack{justify-items:start}.approval-type-filters,.approval-filters{justify-content:flex-start}}

/* Smart construction visual library */
.visual-scene-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.visual-scene-summary article{display:flex;flex-direction:column;padding:14px 16px;border:1px solid #dce6e2;border-radius:14px;background:linear-gradient(145deg,#fff,#f5f9f7)}.visual-scene-summary small{font-size:7px;color:#7b8c86}.visual-scene-summary b{margin-top:4px;font-size:19px;color:#2e286d}.visual-scene-toolbar{display:grid;grid-template-columns:1fr 190px 170px;gap:9px;margin:12px 0}.visual-scene-toolbar select{border:1px solid #dce5e2;border-radius:11px;background:#fff;padding:10px;font:inherit;font-size:8px;color:#4d625b}.visual-scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.visual-scene-setting-card{display:grid;grid-template-columns:155px 1fr 20px;align-items:center;gap:14px;min-height:132px;padding:0;border:1px solid #dce6e2;border-radius:17px;background:#fff;overflow:hidden;text-align:right;cursor:pointer;transition:.18s}.visual-scene-setting-card:hover{transform:translateY(-2px);border-color:#a8ccc0;box-shadow:0 12px 30px rgba(24,78,62,.08)}.visual-scene-thumb{position:relative;align-self:stretch;display:grid;place-items:center;min-height:132px;background:radial-gradient(circle at 45% 62%,#d6eee6,#eef7f3 48%,#f8faf9 76%);overflow:hidden}.visual-scene-thumb img{width:100%;height:100%;object-fit:cover}.visual-scene-thumb>span{font-size:31px;color:#24927b}.visual-scene-thumb>small{position:absolute;bottom:30px;font-size:6px;color:#769087}.visual-scene-thumb em{position:absolute;top:8px;right:8px;padding:4px 7px;border-radius:99px;background:rgba(255,255,255,.9);color:#216a58;font-size:6px;font-style:normal;font-weight:900}.visual-scene-copy{min-width:0}.visual-scene-copy>small{font-size:6px;color:#249078;font-weight:900}.visual-scene-copy h3{margin:5px 0;font-size:11px;color:#2f4c44}.visual-scene-copy p{margin:0;color:#7a8984;font-size:6.5px}.visual-scene-copy footer{display:flex;gap:5px;margin-top:10px}.visual-scene-copy footer span{padding:5px 7px;border-radius:7px;background:#f0f6f4;color:#557067;font-size:6px}.visual-scene-setting-card>i{font-size:18px;color:#8ba49b;font-style:normal}.visual-scene-modal{width:min(940px,94vw);max-height:90vh;overflow:auto}.visual-scene-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.visual-scene-form-grid label{display:grid;gap:5px;font-size:7px;font-weight:900;color:#4c625b}.visual-scene-form-grid .wide{grid-column:1/-1}.visual-scene-form-grid input,.visual-scene-form-grid select{border:1px solid #d9e4e0;border-radius:10px;padding:10px;font:inherit;font-size:8px;outline:none}.visual-scene-upload{position:relative;padding:12px;border:1px dashed #acd0c4;border-radius:12px;background:#f3f9f7}.visual-scene-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.visual-scene-upload span{font-size:7px;color:#397663}.visual-scene-link-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.visual-scene-link-grid fieldset{min-width:0;padding:12px;border:1px solid #dce6e2;border-radius:13px}.visual-scene-link-grid fieldset.wide{grid-column:1/-1}.visual-scene-link-grid legend{padding:0 6px;font-size:7px;font-weight:900;color:#36594f}.visual-scene-link-grid legend span{color:#84938e;font-weight:600}.visual-scene-picker{display:flex;gap:7px;flex-wrap:wrap}.visual-scene-picker label{position:relative}.visual-scene-picker input{position:absolute;opacity:0}.visual-scene-picker label span{display:block;padding:7px 9px;border:1px solid #dce6e2;border-radius:9px;background:#fff;color:#64766f;font-size:7px;cursor:pointer}.visual-scene-picker label:has(input:checked) span{border-color:#278c75;background:#e8f4f0;color:#176853;font-weight:900}.visual-scene-task-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:230px;margin-top:8px;overflow:auto}.visual-scene-task-picker label{position:relative;display:block}.visual-scene-task-picker input{position:absolute;opacity:0}.visual-scene-task-picker span{display:flex;flex-direction:column;padding:9px;border:1px solid #e0e8e5;border-radius:9px;background:#fff;cursor:pointer}.visual-scene-task-picker b{font-size:7px;color:#3d5850}.visual-scene-task-picker small{font-size:5.5px;color:#85938f}.visual-scene-task-picker label:has(input:checked) span{border-color:#249078;background:#edf7f4}.task-visual-scene-block{overflow:hidden}.task-visual-scene-card{display:grid;grid-template-columns:125px 1fr;gap:12px;margin-top:10px;border:1px solid #dce6e2;border-radius:13px;overflow:hidden;background:#fbfdfc}.task-visual-scene-card>img,.task-scene-placeholder{width:125px;height:112px;object-fit:cover}.task-scene-placeholder{display:grid;place-items:center;align-content:center;gap:5px;background:radial-gradient(circle,#d8eee7,#f4f9f7)}.task-scene-placeholder span{font-size:22px;color:#208873}.task-scene-placeholder b{font-size:5.5px;color:#6d817a}.task-visual-scene-card>div:last-child{padding:12px 12px 10px 0}.task-visual-scene-card small{font-size:6px;color:#1e8b73;font-weight:900}.task-visual-scene-card h4{margin:4px 0;font-size:10px;color:#304e45}.task-visual-scene-card p{margin:0 0 8px;font-size:6px;color:#7c8b86}.task-visual-scene-card select{width:100%;border:1px solid #d7e3df;border-radius:8px;padding:7px;background:#fff;font:inherit;font-size:6.5px}.task-visual-scene-block>footer{display:flex;align-items:center;justify-content:space-between;margin-top:9px;color:#758781;font-size:6px}.task-visual-scene-block>footer button{border:0;background:none;color:#247a65;font:inherit;font-size:6px;font-weight:900;cursor:pointer}
@media(max-width:850px){.visual-scene-grid{grid-template-columns:1fr}.visual-scene-toolbar{grid-template-columns:1fr}.visual-scene-summary{grid-template-columns:1fr 1fr}.visual-scene-form-grid,.visual-scene-link-grid{grid-template-columns:1fr}.visual-scene-link-grid fieldset.wide,.visual-scene-form-grid .wide{grid-column:auto}.visual-scene-task-picker{grid-template-columns:1fr}}
.project-portal-visual-setting{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;margin:14px 0;border:1px solid #d9e8e2;border-radius:15px;background:linear-gradient(135deg,#f3faf7,#fff)}.project-portal-visual-setting>div{display:flex;align-items:center;gap:12px}.project-portal-visual-setting>div>span{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#dff1ea;color:#14725b}.project-portal-visual-setting b,.project-portal-visual-setting small{display:block}.project-portal-visual-setting b{font-size:12px}.project-portal-visual-setting small{font-size:9px;color:#6e8079;margin-top:3px}.project-portal-visual-setting select{min-width:290px;height:44px;border:1px solid #cfddd8;border-radius:11px;background:#fff;padding:0 12px;color:#274a40;font-weight:700}@media(max-width:720px){.project-portal-visual-setting{display:grid}.project-portal-visual-setting select{width:100%;min-width:0}}

/* Manager quotation override */
.approval-override-overlay{z-index:120;backdrop-filter:blur(7px)}
.approval-override-modal{width:min(650px,94vw);padding:0;overflow:hidden;border:1px solid #ead5ad;box-shadow:0 30px 90px rgba(47,38,19,.24)}
.approval-override-modal>.modal-close{z-index:2;background:rgba(255,255,255,.86)}
.approval-override-head{display:grid;grid-template-columns:64px 1fr;gap:17px;padding:30px;background:linear-gradient(135deg,#fffaf1,#fff 70%);border-bottom:1px solid #eee3ce}
.approval-override-head>span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#aa6e28;color:#fff;font-size:28px;font-weight:900;box-shadow:0 10px 24px rgba(170,110,40,.2)}
.approval-override-head small{font-size:8px;color:#a76b26;font-weight:900}.approval-override-head h2{margin:4px 0 6px;font-size:23px;color:#263f38}.approval-override-head p{margin:0;max-width:470px;color:#71807b;font-size:9px;line-height:1.8}
.approval-override-request{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin:20px 30px;background:#e3e8e6;border:1px solid #e3e8e6;border-radius:13px;overflow:hidden}
.approval-override-request>div{display:grid;gap:4px;padding:13px 15px;background:#f8faf9}.approval-override-request small{font-size:7px;color:#87928e}.approval-override-request b{font-size:9px;color:#2d4b42}
.approval-override-reason{display:grid;gap:7px;margin:0 30px;color:#344e46;font-size:9px;font-weight:900}.approval-override-reason>span{margin-right:5px;padding:3px 6px;border-radius:99px;background:#fff0db;color:#9d6220;font-size:6px}.approval-override-reason textarea{width:100%;resize:vertical;border:1px solid #d8dfdc;border-radius:12px;padding:13px 14px;font:inherit;font-size:9px;line-height:1.8;outline:none}.approval-override-reason textarea:focus{border-color:#b77a32;box-shadow:0 0 0 4px rgba(183,122,50,.1)}.approval-override-reason small{color:#86918d;font-size:7px;font-weight:500}
.approval-override-confirm{display:grid!important;grid-template-columns:22px 1fr;align-items:center;gap:10px!important;margin:16px 30px 0;padding:12px 14px;border:1px solid #dce5e2;border-radius:12px;background:#f8faf9;cursor:pointer}.approval-override-confirm input{position:absolute;opacity:0}.approval-override-confirm>span{width:20px;height:20px;border:1px solid #b9c9c3;border-radius:6px;background:#fff}.approval-override-confirm input:checked+span{display:grid;place-items:center;border-color:#16715a;background:#16715a}.approval-override-confirm input:checked+span:after{content:"✓";color:#fff;font-size:11px}.approval-override-confirm b,.approval-override-confirm small{display:block}.approval-override-confirm b{font-size:8px;color:#304e45}.approval-override-confirm small{margin-top:3px;font-size:6.5px;color:#7f8e89}
.approval-override-modal>.modal-actions{margin:20px 0 0;padding:15px 30px;border-top:1px solid #e8edeb;background:#fbfcfc}.approval-override-submit{border:0;border-radius:10px;background:linear-gradient(135deg,#99601f,#b87c32);color:#fff;padding:11px 16px;font:inherit;font-size:8px;font-weight:900;cursor:pointer;box-shadow:0 8px 19px rgba(162,103,35,.2)}
@media(max-width:620px){.approval-override-head{grid-template-columns:48px 1fr;padding:24px 18px}.approval-override-head>span{width:44px;height:44px;border-radius:14px}.approval-override-request{grid-template-columns:1fr;margin:16px 18px}.approval-override-reason,.approval-override-confirm{margin-inline:18px}.approval-override-modal>.modal-actions{padding-inline:18px;flex-wrap:wrap}.approval-override-submit{flex:1}}

/* One approval card per accountant payment batch */
.approval-card.type-payment_batch{border:1px solid #cfc8e7;border-right:5px solid #3b2d78;background:linear-gradient(135deg,#fff,#fdfcff)}
.payment-batch-card>header{background:linear-gradient(100deg,#f8f6ff,#fff 72%)}.payment-batch-card .approval-code em{background:#eeeafb;color:#4b3b86}
.payment-batch-card-summary{display:grid;grid-template-columns:.55fr 1.2fr 1fr;padding:0 18px}.payment-batch-card-summary article{display:grid;gap:3px;padding:15px;border-left:1px solid #e7e3f1}.payment-batch-card-summary article:last-child{border-left:0}.payment-batch-card-summary small{font-size:7px;color:#7d8794}.payment-batch-card-summary b{font-size:10px;color:#2e3f4c}.payment-batch-card-summary em{font-size:6.5px;color:#8d969c;font-style:normal}.payment-batch-open{border:0;border-radius:10px;background:#3b2d78;color:#fff;padding:9px 14px;font:inherit;font-size:8px;font-weight:900;cursor:pointer;box-shadow:0 7px 18px rgba(59,45,120,.18)}
.payment-batch-review-overlay{z-index:125;align-items:flex-start;overflow-y:auto;padding-block:28px;backdrop-filter:blur(8px)}.payment-batch-review-modal{width:min(1080px,96vw);padding:0;overflow:hidden;border:1px solid #d8d2eb;box-shadow:0 35px 100px rgba(36,29,75,.23)}.payment-batch-review-modal>.modal-close{z-index:3;background:rgba(255,255,255,.88)}
.payment-batch-review-head{position:relative;display:grid;grid-template-columns:64px 1fr;gap:17px;padding:28px 32px;background:linear-gradient(118deg,#302468,#443786 56%,#168578);color:#fff;overflow:hidden}.payment-batch-review-head:after{content:"";position:absolute;left:70px;top:-85px;width:210px;height:210px;border:1px solid rgba(255,255,255,.1);border-radius:50%}.payment-batch-review-head>span{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.13);font-size:25px}.payment-batch-review-head small{color:#7de0d0;font-size:8px;font-weight:900}.payment-batch-review-head h2{margin:4px 0 5px;color:#fff;font-size:23px}.payment-batch-review-head p{margin:0;color:#c6d5e2;font-size:9px}
.payment-batch-review-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:18px 24px;border:1px solid #e2e5eb;border-radius:14px;overflow:hidden}.payment-batch-review-summary article{display:grid;gap:4px;padding:13px 15px;border-left:1px solid #e5e7ec;background:#fafbfc}.payment-batch-review-summary article:last-child{border-left:0}.payment-batch-review-summary small{font-size:7px;color:#828b91}.payment-batch-review-summary b{font-size:9px;color:#2e4740}
.payment-batch-review-table{margin:0 24px 18px;border:1px solid #dde4e2;border-radius:15px;overflow:hidden}.payment-batch-review-table>header,.payment-batch-review-row{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(120px,.7fr) 130px minmax(210px,.9fr);align-items:center;gap:12px}.payment-batch-review-table>header{padding:10px 54px 10px 16px;background:#f1f4f3;color:#78857f;font-size:7px;font-weight:900}.payment-batch-review-row{position:relative;min-height:88px;padding:12px 16px 12px 54px;border-top:1px solid #e7ecea;background:#fff}.payment-batch-review-row:first-child{border-top:0}.payment-batch-item-index{position:absolute;right:14px;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#eeeafa;color:#493b83;font-size:8px;font-weight:900}.payment-batch-item-main{display:grid;min-width:0}.payment-batch-item-main small{font-size:6.5px;color:#21806c}.payment-batch-item-main b{margin:3px 0;font-size:9px;color:#293f39}.payment-batch-item-main em{font-size:6.5px;color:#7f8c87;font-style:normal}.payment-batch-item-main button{width:max-content;margin-top:6px;border:1px solid #c9ddd7;border-radius:7px;background:#eff7f4;color:#176a57;padding:5px 7px;font:inherit;font-size:6px;font-weight:900;cursor:pointer}.payment-batch-project{display:grid}.payment-batch-project small{font-size:6px;color:#89948f}.payment-batch-project b{margin-top:3px;font-size:8px;color:#40594f}.payment-batch-review-row>strong{font-size:10px;color:#234f43}.payment-batch-item-decision{display:grid;grid-template-columns:115px 1fr;gap:7px}.payment-batch-item-decision select,.payment-batch-item-decision input{min-width:0;border:1px solid #d7dfdc;border-radius:9px;background:#fff;padding:8px 9px;font:inherit;font-size:7px;outline:none}.payment-batch-item-decision select{color:#176c58;font-weight:900}.payment-batch-item-decision input.required{border-color:#d88b7c;background:#fff8f6}
.payment-batch-review-footer{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 24px;border-top:1px solid #e2e8e5;background:rgba(255,255,255,.97);box-shadow:0 -10px 28px rgba(24,51,43,.07)}.payment-batch-review-footer>div{display:flex;align-items:center;gap:15px}.payment-batch-review-footer>div:first-child span{display:grid;gap:2px}.payment-batch-review-footer small{font-size:6.5px;color:#7c8984}.payment-batch-review-footer b{font-size:8px;color:#295046}.payment-batch-review-footer .returned b{color:#a05a4b}
@media(max-width:820px){.payment-batch-card-summary{grid-template-columns:1fr}.payment-batch-card-summary article{border-left:0;border-bottom:1px solid #e7e3f1}.payment-batch-review-overlay{padding:0}.payment-batch-review-modal{width:100%;min-height:100dvh;border-radius:0}.payment-batch-review-summary{grid-template-columns:1fr 1fr;margin-inline:14px}.payment-batch-review-table{margin-inline:14px}.payment-batch-review-table>header{display:none}.payment-batch-review-row{grid-template-columns:1fr auto;padding:14px 50px 14px 14px}.payment-batch-project{grid-column:1}.payment-batch-item-decision{grid-column:1/-1}.payment-batch-review-row>strong{grid-column:2;grid-row:1}.payment-batch-review-footer{align-items:stretch;flex-direction:column}.payment-batch-review-footer>div{justify-content:space-between}.payment-batch-review-head{padding:24px 18px}}

/* Visual construction-stage workflow */
.visual-scene-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-scenes-note{border-color:#b9dcd2;background:linear-gradient(135deg,#eef9f5,#f7f5ff)}
.visual-source-strip{display:flex;align-items:center;gap:11px;margin-top:14px;padding:11px 13px;border:1px solid #c9ded8;border-radius:14px;background:linear-gradient(135deg,#f0faf6,#f7f5ff)}.visual-source-strip>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#332a73;color:#fff;font-size:15px;font-weight:900}.visual-source-strip>div{display:grid;gap:3px}.visual-source-strip b{font-size:8px;color:#2d4d44}.visual-source-strip small{font-size:6px;color:#70847d}.visual-source-strip em{margin-right:auto;padding:5px 8px;border-radius:99px;background:#dff3ec;color:#17705b;font-size:6px;font-style:normal;font-weight:900}.visual-scene-prompt textarea{resize:vertical;border:1px solid #d9e4e0;border-radius:10px;padding:10px;font:inherit;font-size:8px;line-height:1.8;outline:none}.visual-scene-generate{display:inline-flex;align-items:center;gap:7px;margin-left:auto;border:0;border-radius:10px;background:linear-gradient(135deg,#332a73,#218c78);color:#fff;padding:10px 14px;font:inherit;font-size:7px;font-weight:900;cursor:pointer;box-shadow:0 8px 20px rgba(50,42,115,.16)}
@media(max-width:850px){.visual-scene-summary{grid-template-columns:1fr 1fr}.visual-source-strip{align-items:flex-start;flex-wrap:wrap}.visual-source-strip em{margin-right:0}.visual-scene-modal .modal-actions{flex-wrap:wrap}.visual-scene-generate{width:100%;justify-content:center;margin:0}}
.supplier-unified-record{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#eff9f6,#f7f5ff);border:1px solid #cfe5df!important}
.supplier-unified-record h4{margin:4px 0 6px}.supplier-unified-record p{margin:0;color:#64756f;line-height:1.7}.supplier-unified-record>div>small{color:#087866;font-weight:800}.supplier-unified-record button{white-space:nowrap}
@media(max-width:700px){.supplier-unified-record{align-items:stretch;flex-direction:column}.supplier-unified-record button{width:100%}}
.supplier-receipts>h4{display:flex;justify-content:space-between;align-items:center}.supplier-receipts>h4 span{min-width:28px;height:28px;border-radius:9px;background:#e8f4ef;color:#12624f;display:grid;place-items:center;font-size:11px}.supplier-receipts .supplier-timeline>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:9px}.supplier-receipts .supplier-timeline span{display:grid}.supplier-receipts .supplier-timeline small{display:block;color:#71827c;font-size:10px;margin-top:3px}.supplier-receipts button{border:0;border-radius:9px;background:#173f36;color:#fff;padding:7px 10px;font:800 10px inherit;cursor:pointer}
.project-detail-workspace [data-add-project-supply]{display:none!important}
.project-added-supply.engineer-modified{border-color:#cfc4ee!important;background:#faf8ff!important}.project-added-supply.engineer-modified i{display:block;margin-top:4px;color:#51448c;font-size:9px;font-style:normal;font-weight:800}
.project-task-resource-actions:before{content:"◇ طلب التوريد ينشئه مهندس المشروع من حسابه، وتظهر تعديلاته قبل التعميد";display:flex;align-items:center;padding:12px 14px;border:1px solid #d8d0f0;border-radius:13px;background:#f8f6ff;color:#443680;font-size:11px;font-weight:800}
.approval-engineer-adjustment{margin:0 24px 16px;padding:15px;border:1px solid #d6cdf0;border-radius:16px;background:linear-gradient(115deg,#f9f7ff,#fff);display:grid;grid-template-columns:44px 1fr 1.5fr;gap:13px;align-items:center}.approval-engineer-adjustment>span{width:42px;height:42px;border-radius:13px;background:#e7e1f8;color:#443680;display:grid;place-items:center;font-size:20px}.approval-engineer-adjustment>div{display:grid}.approval-engineer-adjustment small{font-size:9px;color:#776a9c}.approval-engineer-adjustment b{font-size:12px}.approval-engineer-adjustment em{font-size:9px;color:#687a74;font-style:normal;margin-top:3px}.approval-engineer-adjustment dl{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.approval-engineer-adjustment dl>div{border:1px solid #e5e0f4;border-radius:11px;padding:9px;background:#fff}.approval-engineer-adjustment dt{font-size:8px;color:#7b718f}.approval-engineer-adjustment dd{margin:4px 0 0;display:grid}.approval-engineer-adjustment del{font-size:8px;color:#ad6b62}.approval-engineer-adjustment dd b{font-size:10px;color:#33286f}
@media(max-width:800px){.project-task-resource-actions:before{grid-column:1/-1}.approval-engineer-adjustment{grid-template-columns:38px 1fr;margin:0 12px 12px}.approval-engineer-adjustment dl{grid-column:1/3;grid-template-columns:1fr}}
.approval-empty-finance{margin-top:13px;border:0;border-radius:10px;background:#352979;color:#fff;padding:9px 14px;font:800 8px inherit;cursor:pointer}.approval-card.finance-stage{border-color:#cfc5ed;background:linear-gradient(100deg,#fff,#fbf9ff)}.approval-card.finance-stage .approval-code em{background:#eee9fb;color:#493b85}.approval-filters [data-approval-filter="finance"]{border-color:#d6cef0;color:#4a3c83}.approval-filters [data-approval-filter="finance"].active{background:#3d317c;border-color:#3d317c;color:#fff}
.accounting-tab-count{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:#e7f4f0;color:#176b5a;font-size:7px;font-style:normal;font-weight:900;margin-inline-start:5px}.accounting-tabbar button.active .accounting-tab-count{background:rgba(255,255,255,.2);color:#fff}
.approval-conditional{background:#fff0cf!important;color:#8b5e12!important}.project-schedule-command{margin:16px 0;border:1px solid #d8e5e1;border-radius:18px;background:linear-gradient(135deg,#fff,#f4faf8);overflow:hidden;box-shadow:0 12px 30px rgba(25,83,69,.06)}.project-schedule-command>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #e0e9e6}.project-schedule-command header small{color:#16806a;font-size:8px;font-weight:800}.project-schedule-command h2{margin:3px 0 0;font-size:17px}.project-schedule-actions{display:flex;gap:7px}.project-schedule-actions button{border:1px solid #ceddd8;border-radius:10px;background:#fff;color:#315b50;padding:8px 11px;font:800 8px inherit}.project-schedule-actions .suspend{border-color:#efc8bd;color:#a65242}.project-schedule-actions .resume{border-color:#a8d3c5;background:#e8f6f1;color:#166c58}.project-schedule-comparison{display:grid;grid-template-columns:1fr auto 1fr 1fr 1fr;align-items:center;gap:10px;padding:14px 18px}.project-schedule-comparison article{display:grid;padding:11px 13px;border:1px solid #e0e8e5;border-radius:12px;background:#fff}.project-schedule-comparison article.changed{border-color:#ead19c;background:#fffbf3}.project-schedule-comparison small{font-size:7px;color:#788984}.project-schedule-comparison b{margin:4px 0;font-size:11px;color:#173f35}.project-schedule-comparison em{font-size:7px;font-style:normal;color:#84918d}.project-smart-alerts{display:flex;gap:7px;flex-wrap:wrap;padding:0 18px 14px}.project-smart-alerts span{padding:6px 9px;border-radius:999px;background:#eef4f2;color:#50665f;font-size:7px;font-weight:800}.project-smart-alerts .late,.project-smart-alerts .gate{background:#fff0dc;color:#96601b}.project-smart-alerts .conditional{background:#efeafb;color:#514284}.project-smart-alerts.clear span{background:#e7f4ef;color:#176d59}.project-smart-gate{display:grid;gap:5px;padding:9px;border:1px solid #edcf9a;border-radius:11px;background:#fffaf0}.project-smart-gate b{font-size:8px;color:#8f5c16}.project-smart-gate small{font-size:6px;color:#866f4d}.project-smart-gate button{padding:6px!important}.project-task-assignment{display:flex;align-items:center;gap:7px;margin-top:6px}.project-task-assignment span{font-size:7px;color:#647a73}.project-task-assignment button{border:1px solid #c7ddd6;border-radius:7px;background:#f0f8f5;color:#176c59;padding:4px 7px;font:800 6px inherit}.schedule-settings-hero{display:flex;align-items:center;justify-content:space-between;padding:22px;border-radius:18px;background:linear-gradient(125deg,#0a4036,#13705d);color:#fff}.schedule-settings-hero small{color:#95d7c8}.schedule-settings-hero h2{margin:4px 0;font-size:22px}.schedule-settings-hero p{margin:0;color:#c1ddd6;font-size:9px}.schedule-settings-hero>span{font-size:48px;color:#82c8b8}.project-schedule-settings form{display:grid;gap:13px;margin-top:14px}.schedule-setting-card{border:1px solid #dbe6e2;border-radius:16px;background:#fff;padding:17px}.schedule-setting-card>header{display:flex;gap:11px;align-items:center;margin-bottom:14px}.schedule-setting-card>header>span{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:#e7f3ef;color:#176e5a;font-weight:900}.schedule-setting-card h3{margin:0;font-size:13px}.schedule-setting-card p{margin:3px 0 0;color:#7b8985;font-size:8px}.schedule-day-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.schedule-day-picker input{display:none}.schedule-day-picker span{display:block;text-align:center;padding:10px;border:1px solid #dce5e2;border-radius:10px;color:#788681;font-size:8px;font-weight:800}.schedule-day-picker input:checked+span{background:#146f5b;border-color:#146f5b;color:#fff}.schedule-holidays{display:grid;gap:6px;margin-top:14px;font-size:8px;font-weight:800}.schedule-holidays small{color:#8a9692}.schedule-holidays textarea{border:1px solid #dce5e2;border-radius:10px;padding:10px;font:9px inherit}.schedule-alert-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.schedule-alert-grid label{display:grid;gap:5px;padding:12px;border:1px solid #e0e8e5;border-radius:11px;font-size:8px;font-weight:800}.schedule-alert-grid input{border:0;border-bottom:2px solid #dce6e2;padding:7px;font-size:15px;font-weight:900;color:#176d59}.schedule-alert-grid small{color:#8b9692;font-size:7px}.schedule-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.schedule-rules span{padding:10px;border-radius:10px;background:#eaf5f1;color:#176d59;font-size:7px;font-weight:800}.project-schedule-settings form>footer{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #dce6e2}.project-schedule-settings footer div{display:grid}.project-schedule-settings footer b{font-size:9px}.project-schedule-settings footer small{font-size:7px;color:#7d8b86}.project-schedule-settings footer button{border:0;border-radius:10px;background:#146f5b;color:#fff;padding:10px 16px;font:900 8px inherit}@media(max-width:900px){.project-schedule-comparison{grid-template-columns:1fr 1fr}.project-schedule-comparison>span{display:none}.schedule-day-picker{grid-template-columns:repeat(4,1fr)}.schedule-alert-grid,.schedule-rules{grid-template-columns:1fr 1fr}}
