:root{--emerald-950:#033a35;--emerald-900:#064e3b;--emerald-800:#065f46;--emerald-700:#047857;--emerald-600:#059669;--emerald-100:#d1fae5;--ink:#10233f;--muted:#718096;--line:#e6edf2;--bg:#f6f9fb;--danger:#ef4444;--orange:#f59e0b;--blue:#2783df}*{box-sizing:border-box}body{margin:0;font-family:Cairo,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font-family:inherit}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#034b44,#003d38);color:#fff;padding:18px 14px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;gap:12px;align-items:center;padding:4px 6px 20px}.brand-mark{width:45px;height:45px;border-radius:13px;background:linear-gradient(135deg,#0ad6b2,#059669);display:grid;place-items:center;font-size:24px;font-weight:800;box-shadow:0 8px 24px #001f1b}.brand strong,.brand span{display:block}.brand span{font-size:11px;color:#a7d8d1}.side-search{display:flex;align-items:center;border:1px solid #ffffff20;background:#ffffff0c;border-radius:10px;padding:9px 12px;margin-bottom:18px}.side-search input{width:100%;background:none;border:0;outline:0;color:#fff;padding:0 8px}.side-search input::placeholder{color:#b7d5d1}.sidebar nav a{display:flex;gap:12px;align-items:center;color:#d8f0ec;text-decoration:none;padding:11px 12px;border-radius:9px;margin:3px 0;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:linear-gradient(90deg,#0ba88e,#05816f);color:white;box-shadow:0 8px 20px #002b2655}.nav-title{font-size:11px;color:#84bcb4;padding:18px 12px 6px;font-weight:700}.sidebar-help{margin-top:30px;border:1px solid #ffffff1c;border-radius:12px;padding:14px;background:#ffffff0a}.sidebar-help small{color:#9ccdc6}main{min-width:0}.topbar{height:88px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:20}.page-heading h1{font-size:23px;margin:0}.page-heading p{font-size:12px;margin:4px 0 0;color:var(--muted)}.top-actions{display:flex;gap:10px;align-items:center}.global-search{width:300px;border:1px solid var(--line);padding:10px 13px;border-radius:10px;display:flex}.global-search input{border:0;outline:0;width:100%;padding-right:8px}.icon-btn{width:40px;height:40px;border:1px solid var(--line);background:#fff;border-radius:9px;position:relative}.icon-btn b{position:absolute;top:-6px;right:-4px;background:var(--emerald-600);color:white;border-radius:20px;padding:1px 5px;font-size:9px}.user-menu{display:flex;align-items:center;gap:8px;padding-right:8px}.avatar{width:40px;height:40px;border-radius:50%;background:var(--emerald-800);color:white;display:grid;place-items:center;font-weight:800}.user-menu strong,.user-menu small{display:block;font-size:12px}.user-menu small{color:var(--muted)}.user-menu form button{border:0;background:none;cursor:pointer}.content{padding:22px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.btn{border:1px solid var(--line);background:white;border-radius:8px;padding:10px 18px;cursor:pointer;font-weight:700;color:var(--ink);margin-left:6px}.btn.primary{background:linear-gradient(135deg,var(--emerald-700),var(--emerald-600));color:white;border:0}.btn.full{width:100%;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.stat-card,.card{background:white;border:1px solid var(--line);border-radius:13px;box-shadow:0 3px 13px #0f274008}.stat-card{padding:17px;display:flex;align-items:center;gap:12px}.stat-icon{width:48px;height:48px;border-radius:12px;background:#e9f8f4;color:var(--emerald-700);display:grid;place-items:center;font-size:24px}.stat-card span,.stat-card strong,.stat-card small{display:block}.stat-card span{font-size:11px;color:var(--muted)}.stat-card strong{font-size:20px;margin:2px 0}.stat-card small{font-size:10px;color:var(--emerald-700)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.card{padding:17px;min-width:0}.card.wide{grid-column:span 2}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.card-head h3{margin:0;font-size:16px}.card-head a,.card-head span{font-size:11px;color:var(--emerald-700)}.card-head button{border:1px solid var(--line);background:white;border-radius:7px;padding:6px 9px}.fake-chart{height:270px;position:relative;padding:10px 34px 25px}.fake-chart svg{width:100%;height:100%}.y-labels{position:absolute;right:0;top:9px;bottom:27px;display:flex;flex-direction:column;justify-content:space-between;font-size:9px;color:var(--muted)}.x-labels{position:absolute;bottom:0;right:36px;left:0;display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.donut-wrap{display:flex;align-items:center;justify-content:space-around}.donut{width:160px;height:160px;border-radius:50%;background:conic-gradient(var(--emerald-600) 0 39%,var(--blue) 39% 67%,var(--orange) 67% 89%,var(--danger) 89%);position:relative;display:grid;place-items:center}.donut:after{content:'';position:absolute;width:105px;height:105px;background:white;border-radius:50%}.donut b,.donut span{z-index:1;position:absolute}.donut b{font-size:25px;margin-top:-15px}.donut span{font-size:10px;margin-top:25px;color:var(--muted)}.donut-wrap ul{list-style:none;padding:0;margin:0}.donut-wrap li{display:flex;align-items:center;gap:8px;font-size:12px;padding:7px 0}.donut-wrap li b{margin-right:auto}.donut-wrap i{width:8px;height:8px;border-radius:50%}.green{background:var(--emerald-600)}.blue{background:var(--blue)}.orange{background:var(--orange)}.red{background:var(--danger)}.mini-list>div{padding:11px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:4px}.mini-list span{font-size:12px}.mini-list b{font-size:12px}.mini-list em{font-size:9px;font-style:normal;padding:3px 7px;border-radius:10px;width:max-content}.pending{background:#fff2d9;color:#b66c00}.approved{background:#dcf8ed;color:#08785e}.draft{background:#edf1f4;color:#65727c}.progress-list>div{display:grid;grid-template-columns:160px 1fr 42px;align-items:center;gap:12px;padding:10px 0}.progress-list span,.progress-list b{font-size:12px}.progress{height:7px;background:#edf2f4;border-radius:7px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--emerald-600),#0db5a0);border-radius:7px}.alerts-list div{padding:12px;border-bottom:1px solid var(--line);font-size:12px}.table-card{padding:0;overflow:hidden}.table-card .card-head{padding:17px;margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{background:#f8fbfc;font-size:11px;color:#64748b;padding:12px;text-align:right;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:12px;border-bottom:1px solid var(--line);font-size:12px}td strong,td small{display:block}td small{color:var(--muted);font-size:10px}.actions{display:flex;gap:6px}.actions button{width:32px;height:32px;border:1px solid var(--line);background:white;border-radius:7px;cursor:pointer;color:var(--emerald-700)}.actions button.danger{color:var(--danger)}.badge{padding:4px 9px;border-radius:12px;font-size:10px}.badge.approved{background:#dcf8ed;color:#08785e}.badge.draft{background:#eef1f4;color:#65727c}.search-form{display:flex}.search-form input{border:1px solid var(--line);border-radius:8px;padding:9px 12px}.pagination{padding:15px}.modal{position:fixed;inset:0;background:#0b1d2d99;display:none;align-items:center;justify-content:center;z-index:100;padding:20px}.modal.show{display:flex}.modal-dialog{background:white;width:min(760px,96vw);max-height:92vh;overflow:auto;border-radius:15px;box-shadow:0 25px 80px #0004}.modal-dialog.small{width:min(620px,96vw)}.modal-head{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start}.modal-head h3{margin:0}.modal-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.modal-head button{order:2;width:34px;height:34px;border:1px solid var(--line);background:white;border-radius:8px;font-size:23px;cursor:pointer}.modal form{padding:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-size:11px;font-weight:700;color:#44546a}.form-grid input,.form-grid textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:8px;padding:10px;outline:none}.form-grid input:focus,.form-grid textarea:focus{border-color:var(--emerald-600);box-shadow:0 0 0 3px #05966918}.form-grid textarea{min-height:85px}.form-grid .full{grid-column:1/-1}.switch-row{display:flex;align-items:center;gap:8px}.switch-row input{width:auto;margin:0}.modal-actions{display:flex;justify-content:flex-start;gap:8px;padding:16px 20px;border-top:1px solid var(--line)}.details-grid{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.details-grid>div{padding:12px;border:1px solid var(--line);border-radius:9px}.details-grid span,.details-grid b{display:block}.details-grid span{font-size:10px;color:var(--muted)}.details-grid b{font-size:12px;margin-top:5px}.details-grid .full{grid-column:1/-1}.alert{padding:11px 14px;border-radius:8px;margin:10px 0;font-size:12px}.alert.success{background:#dcfce7;color:#166534}.alert.danger{background:#fee2e2;color:#991b1b}.hidden{display:none}.toast{position:fixed;left:25px;bottom:25px;background:#102a29;color:white;padding:12px 18px;border-radius:9px;opacity:0;transform:translateY(20px);transition:.25s;z-index:200}.toast.show{opacity:1;transform:none}.toast.error{background:#991b1b}.empty{text-align:center;padding:45px;color:var(--muted)}footer{text-align:center;color:var(--muted);font-size:10px;padding:25px}.login-body{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:white}.login-visual{background:linear-gradient(135deg,#063f3a,#027a67);color:white;display:grid;place-items:center;padding:60px;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:'';position:absolute;border:1px solid #ffffff20;border-radius:50%;width:500px;height:500px}.login-visual:before{right:-180px;top:-180px}.login-visual:after{left:-200px;bottom:-240px}.login-visual>div{z-index:1;max-width:520px}.login-logo{width:80px;height:80px;background:#0bd4af;border-radius:22px;display:grid;place-items:center;font-size:42px;font-weight:800;box-shadow:0 15px 50px #001f1c}.login-visual h1{font-size:42px;margin:25px 0 10px}.login-visual p{color:#c9eee8;line-height:2}.login-panel{display:grid;place-items:center;padding:40px}.login-card{width:min(420px,100%)}.login-card h2{font-size:28px;margin-bottom:5px}.login-card>p{color:var(--muted);margin-bottom:28px}.login-card label{display:block;font-size:12px;font-weight:700;margin:14px 0}.login-card input[type=email],.login-card input[type=password]{display:block;width:100%;border:1px solid var(--line);padding:13px;border-radius:9px;margin-top:7px}.login-card .check{display:flex;gap:8px;align-items:center}.demo{display:block;text-align:center;margin-top:15px;color:var(--muted)}
@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.card.wide{grid-column:span 2}.global-search{width:220px}}@media(max-width:850px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.topbar{position:relative;height:auto;gap:15px;align-items:flex-start;flex-direction:column;padding:18px}.top-actions{width:100%;flex-wrap:wrap}.global-search{width:100%}.stats-grid,.dashboard-grid{grid-template-columns:1fr}.card.wide{grid-column:auto}.form-grid,.details-grid{grid-template-columns:1fr}.form-grid .full,.details-grid .full{grid-column:auto}.login-body{grid-template-columns:1fr}.login-visual{display:none}}
/* V1.3 design-system fixes */
.brand-logo{width:54px;height:54px;object-fit:contain;border-radius:12px;background:#fff;padding:3px;box-shadow:0 8px 24px #001f1b}.sidebar-nav .single-link{margin-bottom:8px}.nav-group{border-radius:10px;margin:5px 0;overflow:hidden}.nav-group-toggle{width:100%;border:0;background:transparent;color:#d8f0ec;padding:12px;display:flex;justify-content:space-between;align-items:center;font-family:inherit;font-weight:700;cursor:pointer;text-align:right}.nav-group-toggle:hover,.nav-group.open>.nav-group-toggle{background:#ffffff10;color:#fff}.nav-group-toggle i{font-style:normal;transition:.2s}.nav-group.open>.nav-group-toggle i{transform:rotate(180deg)}.nav-group-menu{display:none;padding:3px 8px 8px}.nav-group.open>.nav-group-menu{display:block}.nav-group-menu a{padding:9px 13px!important;margin:2px 0!important;font-size:12px!important;background:#ffffff06}.modal-box{background:#fff;width:min(760px,96vw);max-height:92vh;overflow:auto;border-radius:15px;box-shadow:0 25px 80px #0004;padding:0;position:relative}.modal-box.wide{width:min(980px,96vw)}.modal-box>h3{margin:0;padding:20px 24px;border-bottom:1px solid var(--line)}.modal-box>form{padding:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.modal-box>form>label,.modal-box fieldset{font-size:12px;font-weight:700;color:#44546a}.modal-box input,.modal-box select,.modal-box textarea,.form-grid select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;outline:none}.modal-box textarea{min-height:90px}.modal-box fieldset{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:14px}.modal-box fieldset label{display:inline-flex;align-items:center;gap:6px;margin:5px 10px}.modal-box fieldset input,.modal-box label>input[type=checkbox]{width:auto;display:inline;margin:0}.modal-close{position:absolute;left:18px;top:15px;width:34px;height:34px;border:1px solid var(--line);background:#fff;border-radius:8px;font-size:22px;cursor:pointer;z-index:2}.modal-box>#details{padding:24px}.modal-box>form>.btn{justify-self:start}.items-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px 8px}.items-head h4{margin:0}.item-row{display:grid;grid-template-columns:1.3fr 1.6fr .6fr .7fr .9fr auto;gap:8px;padding:8px 20px}.item-row input{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px}.danger-link{border:0;background:#fee2e2;color:#b91c1c;border-radius:8px;padding:7px 10px;cursor:pointer}.danger-badge{background:#fee2e2;color:#b91c1c}.search-form{gap:8px}.card-head input,.card-head select{border:1px solid var(--line);border-radius:8px;padding:9px 12px}.actions button{font-size:15px}.modal-head button{order:0}.form-grid select{margin-top:6px}.pagination nav{display:flex;justify-content:center}.pagination svg{width:18px}.pagination p{font-size:11px;color:var(--muted)}
@media(max-width:850px){.modal-box>form{grid-template-columns:1fr}.item-row{grid-template-columns:1fr 1fr}.item-row .danger-link{grid-column:1/-1}.brand-logo{width:46px;height:46px}}
.login-logo{background:#fff;padding:5px}.login-logo img{width:100%;height:100%;object-fit:contain;border-radius:17px}
/* V1.4 unified action buttons and table polish */
.actions{display:flex;align-items:center;gap:7px;white-space:nowrap}.actions .action-btn,.table-wrap td>button{width:auto!important;min-width:38px;height:36px;border:1px solid var(--line);border-radius:9px;padding:0 10px;background:#fff;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s}.actions .action-btn span{display:none}.actions .action-btn:hover,.table-wrap td>button:hover{transform:translateY(-1px);box-shadow:0 7px 18px #0f274014}.actions .view{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.actions .edit{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.actions .delete{color:#b91c1c;background:#fff1f2;border-color:#fecdd3}.table-wrap td:last-child{min-width:150px}.table-wrap tr:hover td{background:#fbfefd}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;transition:.18s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f274012}.btn.secondary{background:#f8fafc;border-color:#dbe4ea}.btn.ghost{background:#fff;color:#64748b}.modal-actions{grid-column:1/-1;margin:4px -22px -22px;padding:16px 22px}.modal-box>form>.modal-actions .btn{justify-self:auto}.card-head{gap:12px;flex-wrap:wrap}.card-head .search-form{flex:1;max-width:520px}.card-head .search-form input{flex:1;min-width:220px}.table-card{box-shadow:0 6px 24px #0f27400c}th{height:48px;font-weight:800;color:#475569}td{height:58px}.empty{font-size:13px}
@media(min-width:1450px){.actions .action-btn span{display:inline}.table-wrap td:last-child{min-width:265px}}
@media(max-width:700px){.actions{gap:4px}.actions .action-btn{padding:0 8px;min-width:34px}.table-wrap td:last-child{min-width:125px}.card-head .search-form{max-width:none;width:100%}}
.modal-box.wide{max-width:1180px}.modal-box.wide form{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-box table select,.modal-box table input{min-width:140px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}@media(max-width:900px){.grid-2{grid-template-columns:1fr}.modal-box.wide form{grid-template-columns:1fr}}
/* V1.6 accounting tree and journal modal */
.account-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.account-shell{overflow:visible}.account-toolbar{padding:16px 18px!important}.view-switch{display:flex;gap:6px}.tree-panel{padding:12px 18px 22px}.account-tree{list-style:none;margin:0;padding:0}.account-tree .account-tree{margin-right:28px;border-right:1px dashed #cbd9df;padding-right:14px}.account-tree li{margin:4px 0}.tree-row{display:grid;grid-template-columns:30px 90px minmax(200px,1fr) 90px 75px 120px;align-items:center;gap:10px;min-height:48px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}.tree-row:hover{background:#f8fffd;border-color:#bde9df}.tree-toggle{width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:#f8fafc;cursor:pointer;color:var(--emerald-700);font-weight:800}.tree-spacer{width:28px}.tree-code{font-family:monospace;color:#475569;font-weight:700}.tree-type{font-size:11px;color:#64748b}.tree-actions{display:flex;gap:5px;justify-content:flex-end}.tree-actions .action-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);cursor:pointer}.tree-actions .view{background:#f0f9ff;color:#0369a1}.tree-actions .edit{background:#ecfdf5;color:#047857}.tree-actions .delete{background:#fff1f2;color:#b91c1c}.account-tree li.collapsed>.tree-children{display:none}.form-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-card{display:flex!important;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:12px}.check-card span,.check-card b,.check-card small{display:block}.check-card small{font-weight:400;color:var(--muted)}
.journal-modal{width:min(1120px,96vw);padding:0}.journal-modal-head{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.journal-modal-head h3{margin:0 0 4px}.journal-modal-head p{margin:0;color:var(--muted);font-size:11px}.entry-badge{background:#e8f8f3;color:#047857;border:1px solid #b7eadc;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:700}.journal-form{display:block!important;padding:20px 22px!important}.journal-meta{display:grid;grid-template-columns:1fr 1fr;gap:14px}.journal-meta .full{grid-column:1/-1}.journal-meta label{font-size:11px;font-weight:700;color:#44546a}.journal-meta input,.journal-meta select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}.journal-lines-card{border:1px solid var(--line);border-radius:12px;margin-top:16px;overflow:hidden}.journal-lines-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#fbfdfd}.journal-lines-head h4{margin:0}.journal-lines-head small{color:var(--muted)}.journal-lines-table th,.journal-lines-table td{white-space:nowrap}.journal-lines-table td{height:auto;padding:8px}.journal-lines-table select,.journal-lines-table input{width:100%;min-width:150px;margin:0;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff}.journal-lines-table .line-no{min-width:38px;text-align:center;font-weight:800}.journal-lines-table .money-input{min-width:110px;text-align:left;font-weight:700}.journal-lines-table tfoot th{font-size:12px;background:#f8fbfc}.journal-lines-table tr.balanced th{background:#ecfdf5;color:#047857}.journal-lines-table tr.unbalanced th{background:#fff7ed;color:#c2410c}.line-delete{width:32px;height:32px;border:1px solid #fecdd3;background:#fff1f2;color:#b91c1c;border-radius:8px;cursor:pointer}.journal-form .modal-actions{margin:18px -22px -20px}.journal-form .btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.details-table{padding:0 22px 22px}
@media(max-width:900px){.account-stats{grid-template-columns:1fr}.tree-row{grid-template-columns:28px 75px 1fr}.tree-type,.tree-row>.badge,.tree-actions{grid-column:auto}.journal-meta{grid-template-columns:1fr}.journal-meta .full{grid-column:auto}.form-options{grid-template-columns:1fr}}
/* V1.8 procurement and inventory */
.form-grid select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;outline:none}.form-grid select:focus{border-color:var(--emerald-600);box-shadow:0 0 0 3px #05966918}.items-head{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding:12px 0;border-top:1px solid var(--line)}.items-head h4{margin:0}.item-row{display:grid;grid-template-columns:1.4fr 1.2fr .7fr .8fr auto;gap:8px;margin-bottom:8px;align-items:center}.item-row input,.item-row select{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;min-width:0}.danger-link{border:1px solid #fecdd3;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:9px 12px;cursor:pointer}.po-summary{display:flex;gap:18px;justify-content:flex-end;flex-wrap:wrap;padding:14px;margin-top:12px;border:1px solid #bde9df;background:#f0fdf9;border-radius:10px;font-size:12px}.po-summary b{color:var(--emerald-700)}
@media(max-width:800px){.item-row{grid-template-columns:1fr 1fr}.item-row .danger-link{grid-column:1/-1}.po-summary{justify-content:flex-start}}

.modal-dialog.wide{width:min(1050px,97vw)}
.doc-alert{background:#fff7ed;color:#9a3412;padding:4px 8px;border-radius:10px;font-size:10px}

/* V2.2 tax invoicing */
.modal-dialog.xwide{width:min(1180px,96vw)}.form-section{border:1px solid var(--border,#e5e7eb);border-radius:14px;padding:16px;margin-bottom:16px;background:#fff}.form-section h4{margin:0 0 14px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.invoice-lines input{min-width:90px;padding:9px}.invoice-lines td:first-child input{min-width:220px}.invoice-summary{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}.invoice-summary>div{min-width:140px;padding:12px;border:1px solid var(--border,#e5e7eb);border-radius:12px;display:flex;justify-content:space-between;gap:12px}.invoice-summary .grand{background:#e9fbf4;border-color:#8ed8bb}.stats-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.filter-bar label{display:flex;align-items:center;gap:8px}.action-btn.approve{background:#e8f8ef;color:#087443;border-color:#b7e6cc}@media(max-width:760px){.stats-grid.compact{grid-template-columns:1fr}.invoice-summary>div{width:100%}}

/* V2.7 partners module */
.partner-details{padding:18px 24px}.details-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.details-grid>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fffd}.details-grid span,.details-grid b{display:block}.details-grid span{font-size:11px;color:var(--muted)}.details-grid b{font-size:18px;margin-top:5px;color:var(--emerald-700)}.badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:20px;background:#eef7f4;color:#047857;font-size:11px;font-weight:700}.modal-box textarea{min-height:90px}.modal-box .full{grid-column:1/-1}@media(max-width:850px){.details-grid{grid-template-columns:1fr 1fr}}

/* V2.9 — sidebar identity and nested navigation */
.sidebar{padding:16px 12px;scrollbar-width:thin;scrollbar-color:#19aa91 transparent}.brand{gap:11px;padding:2px 5px 18px;border-bottom:1px solid #ffffff18;margin-bottom:14px}.brand-logo-wrap{width:54px;height:54px;flex:0 0 54px;border-radius:15px;background:#fff;overflow:hidden;display:grid;place-items:center;box-shadow:0 10px 26px #001f1d66;border:1px solid #ffffff40}.brand-logo{width:54px;height:54px;object-fit:cover;transform:scale(1.75);transform-origin:50% 18%}.brand-copy{min-width:0}.brand-copy strong{font-size:20px;line-height:1.2;color:#fff;white-space:nowrap;letter-spacing:.2px}.brand-copy span{font-size:12px;color:#aee5dc;margin-top:5px;font-weight:600}.single-link,.nav-group-toggle{min-height:46px}.nav-group{margin:5px 0;border:1px solid transparent;border-radius:13px;overflow:hidden}.nav-group.open{background:#ffffff08;border-color:#ffffff12}.nav-group-toggle{width:100%;border:0;background:transparent;color:#d9f3ee;display:flex;align-items:center;justify-content:space-between;padding:12px 13px;font:700 14px Cairo;cursor:pointer;border-radius:12px}.nav-group-toggle:hover,.nav-group.open>.nav-group-toggle{background:#ffffff0d;color:#fff}.nav-group-toggle i{font-style:normal;width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:#ffffff0b;transition:.22s}.nav-group.open>.nav-group-toggle i{transform:rotate(180deg);background:#12a88d;color:#fff}.nav-group-menu{display:none;position:relative;padding:3px 9px 10px 5px;margin:0 12px 5px 0;border-right:1px solid #27b39a66}.nav-group.open>.nav-group-menu{display:block}.sidebar .nav-group-menu a{position:relative;margin:4px 0;padding:9px 14px 9px 10px;border-radius:9px;font-size:12.5px;color:#bfe3dd;background:transparent;box-shadow:none}.sidebar .nav-group-menu a:before{content:'';position:absolute;right:-14px;top:50%;width:7px;height:7px;border-radius:50%;background:#4f8f85;border:2px solid #064b44;transform:translateY(-50%)}.sidebar .nav-group-menu a:hover{background:#ffffff0c;color:#fff;transform:translateX(-2px)}.sidebar .nav-group-menu a.active{background:linear-gradient(90deg,#0fb397,#078a77);color:#fff;box-shadow:0 7px 18px #002e2955;font-weight:800}.sidebar .nav-group-menu a.active:before{background:#58f0d1;box-shadow:0 0 0 4px #13a88d55}.workflow-step{display:grid;grid-template-columns:38px 1.4fr 1.2fr .7fr auto auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;margin:8px 0;background:#f9fcfc}.workflow-step input,.workflow-step select{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px}.step-number{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#dff8f1;color:#047857}.approval-timeline{margin-top:18px}.approval-timeline>div{display:flex;gap:12px;position:relative;padding-bottom:18px}.approval-timeline>div:not(:last-child):after{content:'';position:absolute;right:15px;top:32px;bottom:0;border-right:2px dashed #b8ddd5}.approval-timeline b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--emerald-700);color:#fff;z-index:1}.approval-timeline span,.approval-timeline small{display:block}.approval-timeline small{color:var(--muted);margin-top:3px}
@media(max-width:900px){.workflow-step{grid-template-columns:35px 1fr 1fr}.workflow-step label,.workflow-step button{grid-column:auto}.brand-copy strong{font-size:17px}}
.project-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;margin-bottom:18px;border:1px solid #dce8e5;border-radius:18px;background:linear-gradient(135deg,#fff,#f1fbf8)}.project-hero h2{margin:4px 0;font-size:24px}.project-hero p{margin:0;color:#64748b}.eyebrow{font-size:12px;color:#0f8b73;font-weight:800}.project-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.project-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.project-nav{display:flex;gap:8px;overflow:auto;padding:8px;margin:0 0 16px;background:#eef7f5;border:1px solid #dce8e5;border-radius:15px}.project-nav button{border:0;background:transparent;padding:11px 16px;border-radius:10px;font:inherit;font-weight:700;color:#52616f;white-space:nowrap;cursor:pointer}.project-nav button.active{background:#07856f;color:white;box-shadow:0 5px 16px #07856f33}.project-tab{display:none}.project-tab.active{display:block}.dashboard-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.metric-list>div{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #edf2f4}.metric-list>div:last-child{border-bottom:0}.metric-list span{color:#64748b}.metric-list b{font-size:16px}.phase-progress-list>div{margin:16px 0}.phase-line{display:flex;justify-content:space-between;margin-bottom:7px}.progress-track,.mini-progress{height:8px;background:#e7efed;border-radius:20px;overflow:hidden}.progress-track i,.mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#047c68,#12b89a);border-radius:20px}.phase-row{background:#f2faf8}.task-name{padding-right:35px!important}.big-number{font-size:34px;font-weight:900;color:#087c69;margin:22px 0}.big-number small{font-size:14px}.cost-bars>div{display:grid;grid-template-columns:110px 1fr 60px;gap:10px;align-items:center;margin:15px 0}.cost-bars i{height:11px;background:#0d9b82;border-radius:20px}.actions form{display:inline-flex;margin:0}.alert.success{background:#e8faf4;color:#06745f;border:1px solid #bcecdc;padding:12px 15px;border-radius:10px;margin-bottom:15px}.alert.danger{background:#fff0f0;color:#b42318;border:1px solid #ffd0d0;padding:12px 15px;border-radius:10px;margin-bottom:15px}
@media(max-width:1200px){.project-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.project-hero{align-items:flex-start;flex-direction:column}.dashboard-grid.two,.project-kpis{grid-template-columns:1fr}.project-nav{border-radius:10px}.project-hero-actions{width:100%}.project-hero-actions .btn{flex:1}}

/* V3.3 UI refinement */
.brand-copy{min-width:145px;line-height:1.2}.brand-copy strong{font-size:18px;letter-spacing:.2px;white-space:nowrap}.brand-copy span{margin-top:5px;font-size:11px;color:#b9ded8}.brand-logo-wrap{width:54px;height:54px;border-radius:14px;background:#fff;display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 24px #001f1b55}.brand-logo{width:48px;height:48px;object-fit:contain}
.nav-group{margin:6px 0}.nav-group-toggle{width:100%;border:0;background:transparent;color:#e9f8f5;display:flex;align-items:center;justify-content:space-between;padding:12px 13px;border-radius:11px;cursor:pointer;font-weight:800;font-size:13px}.nav-group-toggle:hover,.nav-group.open>.nav-group-toggle{background:#ffffff12}.nav-group-toggle i{font-style:normal;transition:.2s}.nav-group.open>.nav-group-toggle i{transform:rotate(180deg)}.nav-group-menu{max-height:0;overflow:hidden;opacity:.3;transition:max-height .28s ease,opacity .2s ease;padding:0 7px}.nav-group.open>.nav-group-menu{max-height:1200px;opacity:1;padding-top:5px;padding-bottom:5px}.nav-group-menu a{position:relative!important;margin:2px 0!important;padding:9px 13px 9px 10px!important;border-radius:9px!important;background:transparent!important;box-shadow:none!important;color:#c7e4df!important;font-size:12px!important}.nav-group-menu a:before{content:'';width:6px;height:6px;border-radius:50%;background:#77aca5;box-shadow:0 0 0 3px #ffffff0c;flex:0 0 6px}.nav-group-menu a:hover{background:#ffffff0c!important;color:#fff!important;transform:translateX(-2px)}.nav-group-menu a.active{background:linear-gradient(90deg,#0aa58d33,#0ad6b222)!important;color:#fff!important;border:1px solid #2bbaa434}.nav-group-menu a.active:before{background:#3ee0c0;box-shadow:0 0 0 4px #3ee0c022}.single-link{font-weight:800}
.notification-wrap{position:relative}.notification-panel{position:absolute;left:0;top:48px;width:360px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 60px #0a213729;display:none;overflow:hidden;z-index:80}.notification-panel.show{display:block}.notification-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line)}.notification-head button{border:0;background:none;color:var(--emerald-700);font-family:inherit;font-size:11px;cursor:pointer}.notification-list{max-height:420px;overflow:auto}.notification-item{display:flex;gap:10px;padding:13px 15px;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line);background:#fff}.notification-item.unread{background:#f1fbf8}.notification-item:hover{background:#f7fbfc}.notification-item div{min-width:0}.notification-item strong,.notification-item span,.notification-item small{display:block}.notification-item strong{font-size:12px}.notification-item span{font-size:11px;color:var(--muted);margin-top:3px}.notification-item small{font-size:9px;color:#93a2b3;margin-top:4px}.notification-dot{width:8px;height:8px;background:#b8c2cc;border-radius:50%;margin-top:6px;flex:0 0 8px}.notification-item.unread .notification-dot{background:var(--emerald-600)}.notification-empty{padding:28px;text-align:center;color:var(--muted);font-size:12px}
.doc-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}.doc-filter{margin-bottom:14px}.filter-grid{display:grid;grid-template-columns:2fr repeat(3,1fr) auto auto;gap:10px}.filter-grid input,.filter-grid select,.form-grid select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;color:var(--ink);outline:0}.filter-grid .btn{display:flex;align-items:center;justify-content:center;text-decoration:none;margin:0}.doc-modal{width:min(980px,96vw)}.check-label{display:flex!important;gap:8px;align-items:center;padding-top:27px}.check-label input{width:auto!important;margin:0!important}.doc-details{padding:18px}.version-panel{margin:0 18px 20px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.version-panel h4{margin:0;padding:12px 14px;background:#f8fbfc}.form-error{color:var(--danger);font-size:11px}
body.dark{--ink:#e7f0f3;--muted:#9fb0ba;--line:#263d47;--bg:#102028;background:#102028;color:var(--ink)}body.dark main{background:#102028}body.dark .topbar,body.dark .card,body.dark .stat-card,body.dark .modal-dialog,body.dark .notification-panel,body.dark .notification-item,body.dark .icon-btn,body.dark .global-search,body.dark .btn,body.dark input,body.dark select,body.dark textarea{background:#162a33;color:#e7f0f3;border-color:#29424d}body.dark th,body.dark .version-panel h4{background:#1a313a;color:#b7c8cf}body.dark .notification-item.unread{background:#173c39}body.dark .donut:after{background:#162a33}body.dark .modal{background:#041219cc}body.dark .global-search input{background:transparent}body.dark .filter-grid input,body.dark .filter-grid select,body.dark .form-grid select{background:#162a33;color:#e7f0f3;border-color:#29424d}body.dark .notification-item:hover{background:#1d3540}
@media(max-width:1100px){.doc-kpis{grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:1fr 1fr}.global-search{display:none}.notification-panel{left:-80px}}@media(max-width:700px){.doc-kpis{grid-template-columns:1fr}.filter-grid{grid-template-columns:1fr}.notification-panel{position:fixed;top:75px;left:10px;right:10px;width:auto}.brand-copy strong{font-size:15px}}

.nav-group.open>.nav-group-menu{max-height:2200px}.nav-subtitle{margin:10px 8px 5px 0;padding:7px 10px;border-radius:8px;background:#001f1d45;color:#74dfca;font-size:10.5px;font-weight:800;letter-spacing:.1px;border:1px solid #ffffff0a}.nav-subtitle:first-child{margin-top:4px}
.auto-number-field,[data-auto-number="1"]{background:#f1f7f5!important;color:#47716a!important;border-style:dashed!important;font-weight:700}.auto-number-field:focus,[data-auto-number="1"]:focus{box-shadow:none!important;border-color:#9bcfc4!important}body.dark .auto-number-field,body.dark [data-auto-number="1"]{background:#17332f!important;color:#9ed9cc!important}

/* V5.1 — Integrated procurement lifecycle */
.procurement-filter .grow{min-width:240px;flex:1}.procurement-kpis{margin-bottom:18px}.procurement-stage-card{margin-bottom:18px}.procurement-stage-summary{display:grid;grid-template-columns:repeat(8,minmax(90px,1fr));gap:10px;padding:6px 0 2px}.stage-summary-item{display:flex;align-items:center;gap:10px;border:1px solid var(--border,#e6eceb);border-radius:14px;padding:12px;background:var(--card,#fff)}.stage-summary-item>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9f8f3;color:#087c61;font-weight:800}.stage-summary-item div{display:flex;flex-direction:column;gap:2px}.stage-summary-item b{font-size:12px}.stage-summary-item strong{font-size:19px}.stage-summary-item.complete>span{background:#087c61;color:#fff}.procurement-cycle-table td{vertical-align:middle}.procurement-cycle-table td strong,.procurement-cycle-table td small{display:block}.procurement-cycle-table td small{margin-top:3px;color:var(--muted,#71807c)}.mini-cycle{display:flex;direction:ltr;gap:3px;align-items:center;margin-bottom:6px}.mini-cycle span{width:21px;height:21px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:800;background:#eef2f1;color:#80908b;border:1px solid #dce5e2}.mini-cycle span.done{background:#dff5ed;color:#087c61;border-color:#b7e6d6}.mini-cycle span.current{background:#087c61;color:#fff;border-color:#087c61;box-shadow:0 0 0 3px rgba(8,124,97,.1)}.row-delayed{background:rgba(202,50,50,.035)}.btn-sm{padding:7px 10px!important;font-size:12px!important;white-space:nowrap}.muted{color:var(--muted,#71807c);font-size:12px}@media(max-width:1200px){.procurement-stage-summary{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){.procurement-stage-summary{grid-template-columns:repeat(2,1fr)}}

/* V5.4 stabilization — readable procurement/inventory/HR tables */
.table-card{overflow:visible}.table-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.table-wrap table{min-width:900px;width:100%}.table-wrap th,.table-wrap td{white-space:nowrap;vertical-align:middle}.table-wrap td small{display:block;white-space:normal;max-width:320px}.pagination{padding:12px 16px;overflow:auto}.pagination nav>div:first-child{display:none}.pagination nav>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.pagination svg{width:18px;height:18px}.modal .form-grid{align-items:start}.modal label{min-width:0}.modal input,.modal select,.modal textarea{max-width:100%}.modal-dialog{max-height:88vh;overflow:auto}.stat-card.danger strong{color:#c83333}

/* V5.5 — professional modal/layout stabilization */
body.modal-open{overflow:hidden}.modal{padding:18px;overflow:hidden}.modal-box,.modal-dialog{width:min(980px,calc(100vw - 36px));max-width:980px;max-height:calc(100vh - 36px);overflow:auto;overflow-x:hidden;background:#fff;border-radius:16px;box-shadow:0 28px 80px #001f2a45}.modal-box.modal-lg,.modal-dialog.wide{width:min(1060px,calc(100vw - 36px));max-width:1060px}.modal-box>h2,.modal-box>h3{margin:0;padding:20px 24px 14px;border-bottom:1px solid var(--line)}.modal-box>form{padding:20px 24px}.modal-close{position:sticky;top:12px;z-index:5;float:left;margin:12px;width:36px;height:36px;border:1px solid var(--line);background:#fff;border-radius:9px;font-size:22px;cursor:pointer}.modal .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.modal .form-grid label,.modal>label,.modal-box>form>label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#42556d}.modal input,.modal select,.modal textarea{width:100%;min-width:0;border:1px solid #dbe5ea;border-radius:9px;padding:10px 12px;background:#fff}.modal textarea{min-height:90px;resize:vertical}.modal-footer,.modal-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:14px 20px;display:flex;gap:8px;z-index:4}.page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:14px}.page-head h1{margin:0;font-size:20px}.page-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.professional-details{padding:16px 22px}.professional-details>div{background:#f9fbfc}.field-hint{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:3px}.technical-page-card{border-top:3px solid var(--emerald-600)}
@media(max-width:760px){.modal{padding:8px}.modal-box,.modal-dialog,.modal-box.modal-lg,.modal-dialog.wide{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.modal .form-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.page-head .btn{width:100%}}

/* V5.6 — unified professional module design */
.module-shell{display:grid;gap:16px}.module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}.module-toolbar h2{margin:3px 0 4px;font-size:21px}.module-toolbar p,.muted{margin:0;color:var(--muted);font-size:12px}.module-kicker{font-size:11px;font-weight:800;color:var(--emerald-600,#087f6c)}.module-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.module-stats>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 16px}.module-stats span{display:block;color:var(--muted);font-size:11px}.module-stats b{display:block;margin-top:5px;font-size:17px;color:#10233b}.tech-table-card{overflow:hidden}.professional-table th{white-space:nowrap;background:#f7faf9;font-size:11px}.professional-table td{vertical-align:middle}.record-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.record-actions form{display:inline-flex;margin:0}.action-btn{min-height:32px;padding:5px 9px;border-radius:8px;border:1px solid #dce7e4;background:#fff;font-family:inherit;font-size:11px;cursor:pointer;display:inline-flex;gap:5px;align-items:center}.action-btn.view{color:#087f6c}.action-btn.edit{color:#2563eb}.action-btn.delete{color:#dc2626}.action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(15,23,42,.06)}.empty-state{padding:38px;text-align:center;display:grid;gap:5px;color:var(--muted)}.empty-state b{color:#17334d}.professional-modal{width:min(980px,calc(100vw - 32px));max-height:88vh;overflow:auto;padding:0}.professional-modal .modal-title-row{position:sticky;top:0;z-index:4;background:#fff;padding:18px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start}.professional-modal form{padding:18px 22px 0}.professional-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.professional-form label{font-weight:700;font-size:12px;color:#2b4056}.professional-form input,.professional-form select,.professional-form textarea{margin-top:6px}.sticky-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:13px 22px;margin:18px -22px 0;z-index:4}.modal-xl{max-width:980px}.technical-module .pagination{padding:12px 16px}
/* Excel-like tender price sheet */
.excel-workbook{border:1px solid #b7c9c4;border-radius:12px;overflow:hidden;background:#fff}.excel-ribbon{display:flex;align-items:center;gap:8px;padding:8px 10px;background:linear-gradient(#f9fbfb,#eef5f3);border-bottom:1px solid #c8d8d4}.excel-ribbon .sheet-name{font-weight:800;color:#0b6d5f;margin-left:auto}.excel-ribbon button{border:1px solid #cbdad6;background:#fff;border-radius:6px;padding:6px 10px;font-family:inherit;cursor:pointer}.excel-formula{display:grid;grid-template-columns:78px 34px 1fr;border-bottom:1px solid #d5e1de;background:#fff}.excel-formula input{border:0;border-left:1px solid #d5e1de;border-radius:0;height:35px;padding:0 8px;font-family:Consolas,'Courier New',monospace}.excel-formula .fx{display:grid;place-items:center;font-style:italic;font-weight:800;color:#0b6d5f}.excel-grid-wrap{overflow:auto;max-height:520px}.excel-price-sheet{min-width:1500px;border-collapse:separate;border-spacing:0}.excel-price-sheet th{position:sticky;top:0;z-index:3;background:#eaf4f1!important;border-color:#c5d9d3!important}.excel-price-sheet td{padding:0!important;border-color:#d5dfdc!important;background:#fff}.excel-price-sheet td.sheet-selected{outline:2px solid #168f78;outline-offset:-2px}.excel-price-sheet input,.excel-price-sheet select{width:100%;height:38px;border:0!important;border-radius:0!important;background:transparent!important;padding:0 7px!important;box-shadow:none!important;font-size:11px}.excel-price-sheet .ct{font-family:Consolas,monospace;font-weight:800;text-align:left;padding:0 9px!important;background:#f5fbf9}.excel-price-sheet tfoot th{position:sticky;bottom:0;background:#dff2ec!important}.excel-col-letter{font-family:Arial,sans-serif;color:#4b635d;font-weight:700}.sheet-tip{font-size:11px;color:#5e746e}.excel-tabs{display:flex;border-top:1px solid #cad8d5;background:#f7faf9;padding:4px 8px;gap:4px}.excel-tabs span{background:#fff;border:1px solid #cbdad6;border-bottom:2px solid #168f78;padding:5px 12px;font-size:11px}.portal-permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.portal-permission-grid label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#f9fbfb}.portal-permission-grid input{width:auto!important;margin:0!important}
@media(max-width:760px){.module-toolbar{align-items:stretch;flex-direction:column}.module-stats,.professional-form,.portal-permission-grid{grid-template-columns:1fr}.record-actions span{display:none}.professional-modal{width:calc(100vw - 16px)} }
.excel-tabs button{border:0;border-left:1px solid #d2dfdc;background:#f7faf9;padding:6px 14px;font-family:inherit;font-size:11px;cursor:pointer;color:#38534d}.excel-tabs button.active{background:#fff;color:#087f6c;border-bottom:2px solid #168f78;font-weight:800}

/* V6.0 — Technical office modal isolation + workflow polish */
.professional-modal>form{display:block!important;grid-template-columns:none!important;gap:0!important;width:100%}
.professional-modal .modal-title-row{direction:rtl}
.professional-modal .modal-title-row>.modal-close{position:static!important;float:none!important;margin:0!important;flex:0 0 36px;order:2}
.professional-modal .professional-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;width:100%}
.professional-modal .sticky-footer{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;grid-column:auto!important;width:auto!important}
.professional-modal .sticky-footer .btn{width:auto!important;min-width:105px!important;height:42px!important;margin:0!important}
.professional-modal .auto-number-field{background:#f3f8f6!important;color:#667b75!important;border-style:dashed!important}
.workflow-action{min-height:32px;padding:5px 9px;border-radius:8px;border:1px solid #cfe3dd;background:#f3fbf8;color:#087f6c;font-family:inherit;font-size:11px;font-weight:700;cursor:pointer}
.workflow-action.approve{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.workflow-action.reject{background:#fff1f2;border-color:#fecdd3;color:#b91c1c}.workflow-action.close{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
.workflow-status{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:10px;font-weight:800}.workflow-status.review{background:#fff7ed;color:#c2410c}.workflow-status.approved{background:#ecfdf5;color:#047857}.workflow-status.rejected{background:#fff1f2;color:#b91c1c}
@media(max-width:760px){.professional-modal .professional-form{grid-template-columns:1fr!important}.professional-modal .sticky-footer{position:sticky;bottom:0}.professional-modal .sticky-footer .btn{flex:1}}
/* V6.1 — Field quality, HSE and site operations */
.professional-form .full{grid-column:1/-1}.field-ops-module .module-stats .danger{border-color:#fecaca;background:#fff7f7}.field-ops-module .module-stats .danger b{color:#b91c1c}.field-ops-module .filter-grid{grid-template-columns:2fr 1.5fr 1fr auto auto}.field-ops-module .modal-title-row h3{margin:4px 0}.field-ops-module textarea{min-height:86px}@media(max-width:900px){.field-ops-module .filter-grid{grid-template-columns:1fr 1fr}.field-ops-module .filter-grid>*{width:100%}}@media(max-width:620px){.field-ops-module .filter-grid{grid-template-columns:1fr}}
