@font-face{font-family:Cairo Local;src:url(/fonts/Cairo-Variable.ttf)format("truetype");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono Local;src:url(/fonts/IBMPlexMono-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono Local;src:url(/fonts/IBMPlexMono-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}:root{--red:#e30613;--red-700:#b70510;--red-50:#feecee;--gray:#58595b;--ink:#15181c;--ink-2:#3a3f46;--muted:#6b7280;--muted-2:#9aa1ac;--bg:#f5f6f8;--surface:#fff;--surface-2:#fbfbfc;--border:#e6e9ed;--border-2:#eff1f4;--green:#15803d;--green-50:#ecfdf3;--amber:#b45309;--amber-50:#fef6e7;--blue:#1d4ed8;--blue-50:#eef3ff;--purple:#6d28d9;--purple-50:#f4eefe;--teal:#0e7490;--teal-50:#e8f7fa;--shadow-sm:0 1px 2px #14181c0f;--shadow:0 4px 16px #14181c14;--shadow-lg:0 18px 50px #14181c2e;--r:10px;--r-lg:14px;--sidebar:248px;--font-body:"Cairo Local";--font:"Cairo Local", system-ui, sans-serif;--font-mono:"IBM Plex Mono Local";--mono:"IBM Plex Mono Local", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}body{font-family:var(--font-body), system-ui, sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55;overflow-x:hidden}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit;font-size:14px}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#cdd2d9;border-radius:20px}::-webkit-scrollbar-track{background:0 0}#app{min-height:100vh;display:flex;overflow-x:clip}.sidebar{width:var(--sidebar);background:var(--surface);border-left:1px solid var(--border);z-index:40;flex-direction:column;transition:transform .25s;display:flex;position:fixed;inset-block:0;inset-inline-start:0}.brand{border-bottom:1px solid var(--border-2);align-items:center;gap:10px;padding:18px 20px 16px;display:flex}.brand .logo{background:var(--red);color:#fff;border-radius:9px;place-items:center;width:34px;height:34px;font-size:17px;font-weight:700;display:grid;box-shadow:0 4px 12px #e306134d}.brand b{letter-spacing:-.2px;font-size:16px;font-weight:700}.brand small{color:var(--muted);margin-top:-2px;font-size:11px;font-weight:500;display:block}.nav{flex:1;padding:10px 12px;overflow-y:auto}.nav-group{margin-bottom:6px}.nav-label,.erp-divider-lbl{color:var(--muted-2);letter-spacing:.5px;text-transform:uppercase;padding:12px 10px 5px;font-size:10.5px;font-weight:700}.nav a,.nav-link{color:var(--ink-2);border-radius:9px;align-items:center;gap:11px;margin-bottom:1px;padding:8.5px 11px;font-size:13.5px;font-weight:500;transition:all .12s;display:flex;position:relative}.nav a:hover{background:var(--surface-2);color:var(--ink)}.nav a.active{background:var(--red-50);color:var(--red-700);font-weight:600}.nav a.active:before{content:"";background:var(--red);border-radius:3px 0 0 3px;width:3px;position:absolute;inset-block:8px;inset-inline-end:-12px}.nav a svg,.nav-link svg,.sys-chip svg,.icon-btn svg,.btn svg,.chip svg{flex-shrink:0;width:18px;height:18px}.badge{background:var(--red);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;margin-inline-start:auto;padding:0 5px;font-size:10.5px;font-weight:700;display:grid}.badge.soon{color:var(--gray);background:#f0f2f5}.sales-shell{--sidebar:300px}.sidebar-sales .nav{padding:14px 16px 20px}.sales-sidebar-nav{gap:16px;display:grid}.sales-module-card{background:linear-gradient(#e306130f,#e306131a),#fff;border:1.5px solid #e3061333;border-radius:24px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px 18px;display:grid;box-shadow:0 14px 34px #e3061314}.sales-module-toggle{width:22px;height:22px;color:var(--red);place-items:center;display:grid}.sales-module-toggle svg{width:16px;height:16px;transform:rotate(180deg)}.sales-module-copy{text-align:right;line-height:1.05}.sales-module-copy b{color:var(--red);font-size:18px;font-weight:800;display:block}.sales-module-copy small{color:#95a0ae;justify-content:flex-end;align-items:center;gap:5px;margin-top:4px;font-size:11.5px;font-weight:700;display:flex}.sales-module-icon{background:linear-gradient(180deg, #ff2635, var(--red));color:#fff;border-radius:16px;place-items:center;width:54px;height:54px;display:grid;box-shadow:0 12px 22px #e3061347}.sales-module-icon svg{width:28px;height:28px}.sales-menu-list{gap:10px;padding-inline-end:14px;display:grid;position:relative}.sales-menu-list:after{content:"";background:linear-gradient(180deg, #e6e9ed00, var(--border), #e6e9ed00);width:1px;position:absolute;inset-block:0;inset-inline-end:3px}.sales-menu-item{color:#434852;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;transition:all .16s;display:flex;position:relative}.sales-menu-item:hover:not(.disabled){background:#f5f6f8d1}.sales-menu-item.active{background:var(--red-50);color:var(--red)}.nav .sales-menu-item.active:before{content:none;display:none}.sales-menu-item.disabled{cursor:default}.sales-menu-copy{text-align:right;flex:1;line-height:1;display:grid}.sales-menu-copy strong{letter-spacing:-.2px;font-size:16px;font-weight:800}.sales-menu-copy small{color:#9ca3af;margin-top:5px;font-size:11.5px;font-weight:500}.sales-menu-item.active .sales-menu-copy small{color:#ff5a5a}.sales-menu-icon{color:currentColor;justify-content:center;align-items:center;display:inline-flex}.sales-menu-icon svg{stroke-width:1.9px;width:28px;height:28px}.nav-link.disabled{background:var(--surface-2);color:var(--muted);cursor:default}.sidebar-foot{border-top:1px solid var(--border-2);padding:12px}.main{flex-direction:column;flex:1;min-width:0;margin-inline-start:var(--sidebar);display:flex}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:30;background:#ffffffd9;align-items:center;gap:14px;height:60px;padding:0 24px;display:flex;position:sticky;top:0}.menu-btn{display:none}.sys-chip{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.sc-mod{align-items:center;gap:7px;display:inline-flex}.sc-sep{color:var(--muted-2);font-size:15px}.page-title{letter-spacing:-.2px;font-size:16px;font-weight:700;line-height:1.15}.page-title-en{color:var(--muted-2);letter-spacing:.1px;margin-top:1px;font-size:10px;font-weight:400}.search-box{flex:1;max-width:380px;position:relative}.search-box input{border:1px solid var(--border);background:var(--surface-2);border-radius:9px;width:100%;padding:8.5px 38px 8.5px 14px;transition:all .15s}.search-box input:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);background:#fff;outline:none}.search-box svg{inset-inline-start:12px;width:16px;height:16px;color:var(--muted-2);position:absolute;top:50%;transform:translateY(-50%)}.topbar-actions{align-items:center;gap:8px;margin-inline-start:auto;display:flex}.topbar-user{align-items:center;gap:8px;display:flex}.icon-btn{width:38px;height:38px;color:var(--ink-2);border-radius:9px;place-items:center;transition:all .12s;display:grid;position:relative}.icon-btn:hover{background:var(--surface-2)}.icon-btn .dot{top:8px;background:var(--red);border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;inset-inline-end:8px}.role-switch{border:1px solid var(--border);background:#fff;border-radius:30px;align-items:center;gap:9px;padding:5px 6px 5px 12px;display:flex}.role-switch-side{width:100%}.role-switch .av{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:600;display:grid}.role-switch .ri{text-align:start;line-height:1.15}.role-switch .ri b{font-size:12.5px;display:block}.role-switch .ri small{color:var(--muted);font-size:10.5px}.content{flex:1;padding:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:18px}.row{gap:16px;display:flex}.grid,.panel-grid{gap:16px;display:grid}.between{justify-content:space-between;align-items:center;gap:12px;display:flex}.flex{align-items:center;gap:10px;display:flex}.wrap{flex-wrap:wrap}.stack{gap:14px;display:grid}.muted{color:var(--muted)}.sec-head,.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.sec-head h2,.section-head h2{font-size:16px;font-weight:700}.sec-head .sub{color:var(--muted);margin-top:1px;font-size:12.5px}.btn{white-space:nowrap;border:1px solid #0000;border-radius:9px;align-items:center;gap:7px;padding:8.5px 15px;font-size:13px;font-weight:600;transition:all .13s;display:inline-flex}.btn-primary{background:var(--red);color:#fff;box-shadow:0 2px 8px #e3061340}.btn-primary:hover{background:var(--red-700)}.btn-ghost{border-color:var(--border);color:var(--ink-2);background:#fff}.btn-ghost:hover{border-color:var(--muted-2);background:var(--surface-2)}.btn-secondary{background:var(--surface-2);border-color:var(--border);color:var(--ink-2)}.btn-secondary:hover{background:var(--red-50);color:var(--red-700);border-color:#f0b6bd}.btn-sm{padding:6px 11px;font-size:12px}.button-row{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border);border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.tag,.pill{border-radius:7px;align-items:center;gap:5px;padding:2.5px 9px;font-size:11px;font-weight:600;display:inline-flex}.pill{background:var(--blue-50);color:var(--blue)}.pill-danger{background:var(--red-50);color:var(--red-700)}.t-green{background:var(--green-50);color:var(--green)}.t-amber{background:var(--amber-50);color:var(--amber)}.t-red{background:var(--red-50);color:var(--red-700)}.field{margin-bottom:14px}.field label{color:var(--ink-2);margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}.field input,.field select,.field textarea{border:1px solid var(--border);background:#fff;border-radius:9px;width:100%;padding:9px 12px;transition:all .13s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-50);outline:none}.field textarea{resize:vertical;min-height:120px}.field-row,.two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}.settings-grid{grid-template-columns:210px 1fr;align-items:start;gap:14px;display:grid}.settings-side{padding:8px}.settings-side .btn{justify-content:flex-start;width:100%;margin-bottom:4px}.table-wrap{border-radius:var(--r-lg);overflow:auto}table{border-collapse:collapse;width:100%}th{text-align:start;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--border);background:var(--surface-2);padding:11px 14px;font-size:11px;font-weight:700;position:sticky;top:0}td{border-bottom:1px solid var(--border-2);padding:12px 14px;font-size:13px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-2)}.kpis{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:16px}.kpi .val{letter-spacing:-.5px;font-size:26px;font-weight:700;line-height:1}.kpi .lbl{color:var(--muted);margin-top:5px;font-size:12px;font-weight:500}.code{font-family:var(--mono);direction:ltr;unicode-bidi:plaintext}.status-note{text-align:center;margin-top:8px;font-size:11px}.error{color:var(--red-700);font-size:12px}.success{color:var(--green);font-size:12px}.auth-layout{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{grid-template-columns:1fr 420px;width:min(980px,100%);display:grid;overflow:hidden}.auth-story{background:linear-gradient(135deg, var(--red), var(--red-700));color:#fff;padding:42px}.auth-story h1{margin-bottom:14px;font-size:40px;line-height:1.05}.auth-story p{color:#ffffffdb;max-width:34rem}.auth-story-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px;display:grid}.story-chip{background:#ffffff1a;border:1px solid #ffffff1f;border-radius:12px;padding:14px}.story-chip b{margin-bottom:4px;display:block}.auth-form-wrap{background:var(--surface);padding:34px}.auth-form-wrap h2{margin-bottom:8px;font-size:24px}.editor-card,.table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:18px}hr{border:none;border-top:1px solid var(--border)}@media (max-width:980px){.sidebar{transform:translate(100%)}.sidebar.open{transform:translate(0)}.main{margin-inline-start:0}.menu-btn{display:grid}.search-box,.sys-chip{display:none}.topbar{padding:0 16px}.content{padding:16px}.settings-grid,.field-row,.two-col,.auth-panel{grid-template-columns:1fr}}.phase-page{gap:16px;display:grid}.phase-hero{background:radial-gradient(circle at 100% 0,#e3061317,#0000 32%),linear-gradient(#fff,#fbfbfc)}.phase-hero h2{margin:6px 0;font-size:24px;line-height:1.2}.phase-eyebrow{color:var(--red-700);letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:800}.phase-kpis .kpi{position:relative;overflow:hidden}.phase-toolbar-card{padding-block:14px}.phase-toolbar{gap:14px;display:grid}.phase-search{margin-bottom:0}.phase-filter-group{gap:8px;display:grid}.phase-filter-label{color:var(--muted);font-size:11px;font-weight:700}.phase-filter-btn{border:1px solid var(--border);color:var(--ink-2);background:#fff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600;transition:all .15s}.phase-filter-btn:hover{border-color:var(--muted-2);background:var(--surface-2)}.phase-filter-btn.active{background:var(--red-50);color:var(--red-700);border-color:#f4c2c7}.phase-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.95fr);align-items:start;gap:16px;display:grid}.phase-main,.phase-side{min-width:0}.phase-side{gap:16px;display:grid}.phase-side-card{gap:14px;display:grid}.phase-table-wrap table{min-width:1080px}.phase-row-active{background:var(--red-50)}.phase-cell-title{margin-bottom:3px;font-weight:700}.phase-progress-meta{align-items:center;gap:4px;margin-bottom:6px;font-size:12px;font-weight:700;display:flex}.phase-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.phase-info-box{background:var(--surface-2);border:1px solid var(--border-2);border-radius:12px;gap:4px;padding:12px;display:grid}.phase-info-box span{color:var(--muted);font-size:11px;font-weight:700}.phase-info-box strong{font-size:14px}.phase-info-box small{color:var(--muted)}.phase-note{color:var(--ink-2);background:linear-gradient(#fff6f7,#fff);border:1px solid #f6d3d7;border-radius:12px;padding:12px 14px;font-size:12.5px;line-height:1.7}.phase-note.soft{border-color:var(--border);background:var(--surface-2)}.phase-stat-list,.phase-line-list,.phase-doc-list,.phase-installments,.phase-audit-list{gap:10px;display:grid}.phase-stat-row,.phase-audit-row{border-bottom:1px solid var(--border-2);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.phase-stat-row:last-child,.phase-audit-row:last-child{border-bottom:none}.phase-stat-row span{color:var(--muted)}.timeline{gap:12px;padding-inline-start:24px;display:grid;position:relative}.timeline:before{content:"";background:var(--border);width:2px;position:absolute;inset-block:8px;inset-inline-start:8px}.tl-item{position:relative}.tl-item:before{content:"";inset-inline-start:-24px;border:2px solid var(--border);background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:10px}.tl-item.done:before{border-color:var(--green);background:var(--green-50)}.tl-item.current:before{border-color:var(--amber);background:var(--amber-50)}.tl-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:8px;padding:12px;display:grid}.tl-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.tl-meta,.phase-line-meta,.phase-installment-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:11px;display:flex}.phase-doc-card,.phase-line-card,.phase-installment-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:8px;padding:12px;display:grid}.phase-tag-purple{background:var(--purple-50);color:var(--purple)}.phase-tag-teal{background:var(--teal-50);color:var(--teal)}.phase-tag-gray{color:var(--gray);background:#f0f2f5}.phase-form-card,.phase-section-block{gap:14px;display:grid}.phase-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.phase-form-grid-span{grid-column:1/-1}.phase-draft-lines,.phase-action-list,.phase-attachment-list{gap:12px;display:grid}.phase-draft-line{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(0,1fr)) minmax(120px,.8fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.phase-line-item{min-width:0}.phase-line-stock{border:1px dashed var(--border);background:var(--surface-2);border-radius:12px;gap:2px;min-height:48px;padding:10px 12px;display:grid}.phase-line-stock span,.phase-line-stock small{color:var(--muted);font-size:11px}.phase-remove-btn{color:var(--red-700);background:#fff7f8;border:1px solid #f4c2c7;border-radius:12px;padding:10px 12px;font-size:12px;font-weight:700}.phase-form-summary{gap:12px;display:grid}.phase-upload-btn{cursor:pointer}.phase-checkbox{color:var(--ink-2);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.signature-pad-wrap{gap:10px;display:grid}.signature-pad{border:1px dashed var(--border);touch-action:none;background:#fff;border-radius:14px;width:100%;min-height:180px}.public-sign-page{gap:16px;max-width:1180px;margin:0 auto;padding:32px 16px 48px;display:grid}.public-sign-card h1{margin:6px 0;font-size:28px}.public-sign-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.9fr);gap:16px;display:grid}@media (max-width:1180px){.phase-grid,.phase-form-grid,.phase-draft-line,.public-sign-grid{grid-template-columns:1fr}}@media (max-width:720px){.phase-hero h2{font-size:20px}.phase-info-grid{grid-template-columns:1fr}.public-sign-card h1{font-size:22px}}
