@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&display=swap');
:root{--navy:#0f2748;--navy2:#17375f;--blue:#1677ff;--blue2:#0d63df;--bg:#f4f7fb;--card:#fff;--text:#1b2b45;--muted:#7e8ca5;--border:#e4ebf4;--green:#16a36a;--amber:#e99a22;--red:#e4515c;--purple:#7657d5;--shadow:0 10px 28px rgba(25,52,88,.08)}
*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);font-family:'Cairo',Tahoma,Arial,sans-serif;color:var(--text)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.muted{color:var(--muted)}.block{display:block}.center{text-align:center}.full{width:100%}
.app{display:flex;min-height:100vh}.sidebar{width:250px;background:linear-gradient(180deg,#0d2341,#102b4f);color:#fff;position:fixed;inset-block:0;right:0;z-index:30;display:flex;flex-direction:column}.ltr .sidebar{right:auto;left:0}.brand{display:flex;align-items:center;gap:10px}.brand.big{padding:24px}.brand b{letter-spacing:.4px}.brand small{display:block;color:#91acd0;font-size:11px}.logo-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#fff,#7fb9ff);color:#124a92;font-weight:800;box-shadow:inset 0 0 0 5px rgba(18,74,146,.08)}
.side-user{display:flex;align-items:center;gap:10px;padding:8px 18px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e9f2ff;color:#155fb8;font-weight:800}.side-user small{display:block;color:#9ab0cb}.nav{padding:15px 10px;overflow:auto}.nav a{display:flex;align-items:center;gap:12px;padding:10px 13px;border-radius:9px;margin:2px 0;color:#dce8f8;font-size:13px}.nav a:hover,.nav a.active{background:#1e4f84;color:white}.nav .ico{width:24px;text-align:center;font-size:16px}.side-foot{margin-top:auto;padding:14px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;color:#87a3c4}
.main{margin-right:250px;width:calc(100% - 250px);min-height:100vh}.ltr .main{margin-right:0;margin-left:250px}.topbar{height:68px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:20}.search{display:flex;align-items:center;gap:8px;background:#f4f7fb;border:1px solid var(--border);padding:8px 12px;border-radius:10px;min-width:300px}.search input{border:0;background:transparent;outline:0;width:100%}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn{border:1px solid var(--border);background:white;border-radius:10px;padding:8px 10px;cursor:pointer}.lang-btn{font-size:12px;color:var(--blue);font-weight:700}.content{padding:22px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:18px}.page-head h1{margin:0;font-size:25px}.page-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.actions-row{display:flex;gap:8px;flex-wrap:wrap}
.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(5,1fr)}.stat{background:white;border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--shadow)}.stat .row{display:flex;align-items:center;justify-content:space-between}.stat .icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#e9f3ff;color:var(--blue);font-weight:800}.stat.amber .icon{background:#fff4df;color:var(--amber)}.stat.red .icon{background:#ffe9ec;color:var(--red)}.stat.green .icon{background:#e7f8f1;color:var(--green)}.stat.purple .icon{background:#f0ebff;color:var(--purple)}.stat small{color:var(--muted);font-size:11px}.stat strong{display:block;font-size:23px;margin-top:7px}.stat .delta{font-size:11px;color:var(--green)}
.card{background:white;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.card-head{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.card-head h3{margin:0;font-size:15px}.card-body{padding:16px}.dash-main{grid-template-columns:1.6fr 1fr 1fr;margin-top:14px}.dash-lower{grid-template-columns:1.2fr 1.1fr 1fr;margin-top:14px}.chart{height:250px;display:flex;align-items:flex-end;gap:18px;padding:20px 10px 8px;border-bottom:1px solid var(--border);position:relative}.chart:before{content:'';position:absolute;inset:20px 0 30px;background:repeating-linear-gradient(to top,transparent 0,transparent 48px,#eef2f7 49px,#eef2f7 50px);pointer-events:none}.bar-group{height:100%;display:flex;align-items:flex-end;gap:4px;flex:1;position:relative;z-index:1}.bar{border-radius:5px 5px 0 0;min-width:11px}.bar.a{background:#1f7ae0}.bar.b{background:#3ab879}.bar.c{background:#f1a63b}.bar.d{background:#8a72dd}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-bottom:8px}.dot{width:8px;height:8px;border-radius:2px;display:inline-block;margin-inline-end:5px}.donut{width:180px;height:180px;border-radius:50%;margin:10px auto;background:conic-gradient(#2378df 0 28%,#39b87b 28% 62%,#f4aa32 62% 74%,#835fd0 74% 82%,#687b93 82% 94%,#55c5b1 94%);position:relative}.donut:after{content:attr(data-total);position:absolute;inset:34px;border-radius:50%;background:white;display:grid;place-items:center;font-weight:800;text-align:center;white-space:pre-line;font-size:14px}.alert-list{display:flex;flex-direction:column;gap:8px}.alert-item{display:flex;gap:10px;align-items:flex-start;border-radius:10px;padding:10px;background:#f8fafc;border:1px solid var(--border)}.sev{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none;font-weight:800}.sev.high,.sev.critical{background:#ffe7ea;color:var(--red)}.sev.medium{background:#fff1da;color:var(--amber)}.sev.low{background:#e8f5ff;color:var(--blue)}.alert-item b{font-size:12px}.alert-item p{font-size:11px;margin:2px 0;color:var(--muted)}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:760px}.table th,.table td{padding:11px 12px;border-bottom:1px solid var(--border);text-align:start;font-size:12px;white-space:nowrap}.table th{background:#f8fafc;color:#63728a;font-weight:700;position:sticky;top:0}.table tr:hover td{background:#fbfdff}.badge{display:inline-block;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700}.badge.green{background:#e8f7f0;color:#168257}.badge.amber{background:#fff3dd;color:#b66d00}.badge.red{background:#ffe8eb;color:#c83f4b}.badge.blue{background:#e8f2ff;color:#1766bc}.badge.gray{background:#eef1f5;color:#68778c}
.btn{border:0;border-radius:9px;padding:9px 14px;cursor:pointer;font-weight:700;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn.primary{background:linear-gradient(135deg,#1b7bf2,#0c62d8);color:white}.btn.soft{background:#eaf3ff;color:#1564bd}.btn.danger{background:#ffe9ec;color:#c23d49}.btn.success{background:#e6f7ee;color:#14805a}.btn.dark{background:#152f52;color:#fff}.btn.outline{background:#fff;border:1px solid var(--border);color:#40536f}.btn.sm{padding:6px 9px;font-size:10px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .span-2{grid-column:span 2}label{display:block;font-size:12px;font-weight:700;color:#52627a;margin-bottom:10px}input,select,textarea{width:100%;border:1px solid #dce5f0;background:white;border-radius:9px;padding:10px 11px;margin-top:5px;outline:none;color:var(--text)}input:focus,select:focus,textarea:focus{border-color:#75adf5;box-shadow:0 0 0 3px rgba(22,119,255,.08)}textarea{min-height:90px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;margin:0}
.modal{position:fixed;inset:0;background:rgba(6,20,40,.5);display:none;align-items:center;justify-content:center;padding:20px;z-index:99}.modal.show{display:flex}.modal-box{background:white;border-radius:16px;box-shadow:0 25px 70px rgba(0,0,0,.25);width:min(720px,96vw);max-height:92vh;overflow:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--border)}.modal-body{padding:18px}.modal-close{border:0;background:#f1f4f8;border-radius:8px;width:32px;height:32px;cursor:pointer}
.alert{padding:10px 12px;border-radius:10px;margin-bottom:10px;font-size:12px}.alert.success{background:#e6f7ee;color:#137451;border:1px solid #cceedd}.alert.danger{background:#ffe9ec;color:#a93640;border:1px solid #f6cdd1}.alert.info{background:#eaf4ff;color:#175f9f;border:1px solid #d5eaff}.alert.warning{background:#fff3df;color:#9b620b;border:1px solid #f4e1bf}
.auth-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#eef6ff 0,#f5f8fc 45%,#eaf0f8 100%)}.login-shell{width:min(1020px,94vw);display:grid;grid-template-columns:1.2fr .8fr;background:white;border-radius:24px;overflow:hidden;box-shadow:0 30px 80px rgba(30,58,95,.16)}.login-visual{background:linear-gradient(135deg,#0b2444,#125091);position:relative;overflow:hidden;color:white;padding:70px 54px;min-height:560px;display:flex;flex-direction:column;justify-content:center}.login-visual h1{font-size:38px;line-height:1.5;margin:18px 0}.login-visual h1 span{color:#90c6ff}.hero-badge{align-self:flex-start;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:7px 12px;border-radius:999px;font-size:11px}.mini-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.mini-pills span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:7px 10px;border-radius:8px;font-size:11px}.login-card{padding:34px}.login-card h2{margin:30px 0 0}.install-card{width:min(700px,94vw);background:white;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);padding:24px}
.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mini-kpi{background:#f8fbff;border:1px solid var(--border);border-radius:11px;padding:12px}.mini-kpi small{color:var(--muted)}.mini-kpi b{display:block;margin-top:4px;font-size:17px}.progress{height:8px;background:#edf1f6;border-radius:99px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,#1b76df,#45b77d);border-radius:99px}.metric-up{color:var(--green)}.metric-down{color:var(--red)}
.ai-hero{background:linear-gradient(135deg,#f1ecff,#e8f5ff);border:1px solid #dcd5ff;border-radius:16px;padding:18px;display:grid;grid-template-columns:1.4fr .6fr;align-items:center}.ai-orb{width:130px;height:130px;border-radius:50%;margin:auto;background:radial-gradient(circle at 35% 30%,#fff 0 10%,#7b5ee0 11% 45%,#2d7be2 46% 72%,#153d84 73%);box-shadow:0 0 50px rgba(91,80,208,.35)}.score{font-size:34px;font-weight:800}.timeline{position:relative;padding-inline-start:22px}.timeline:before{content:'';position:absolute;top:6px;bottom:6px;inset-inline-start:7px;width:2px;background:#e3e9f1}.timeline-item{position:relative;margin-bottom:12px}.timeline-item:before{content:'';position:absolute;inset-inline-start:-20px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--blue)}
@media(max-width:1200px){.stats{grid-template-columns:repeat(3,1fr)}.dash-main,.dash-lower{grid-template-columns:1fr 1fr}.dash-main>.card:first-child{grid-column:span 2}}
@media(max-width:860px){.sidebar{transform:translateX(110%);transition:.2s}.ltr .sidebar{transform:translateX(-110%)}.sidebar.open{transform:none}.main,.ltr .main{margin:0;width:100%}.stats{grid-template-columns:1fr 1fr}.dash-main,.dash-lower{grid-template-columns:1fr}.dash-main>.card:first-child{grid-column:auto}.topbar{padding:0 12px}.search{min-width:0;flex:1}.content{padding:12px}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.login-shell{grid-template-columns:1fr}.login-visual{display:none}.kpi-row{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start;flex-direction:column}.ai-hero{grid-template-columns:1fr}.table{min-width:680px}}
@media(max-width:520px){.stats{grid-template-columns:1fr}.kpi-row{grid-template-columns:1fr}.stat strong{font-size:20px}.page-head h1{font-size:20px}.top-actions .hide-mobile{display:none}}

.login-visual:before{content:'';position:absolute;inset:-20%;background:linear-gradient(30deg,transparent 48%,rgba(255,255,255,.06) 49%,rgba(255,255,255,.06) 51%,transparent 52%),linear-gradient(120deg,transparent 48%,rgba(255,255,255,.04) 49%,rgba(255,255,255,.04) 51%,transparent 52%);background-size:80px 80px;transform:rotate(-7deg)}.login-visual>*{position:relative;z-index:1}

/* ===== Code One ERP V2 Production UI ===== */
.ico-svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none}.ico-svg.sm{width:16px;height:16px}.ico-svg.lg{width:28px;height:28px}
.top-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.menu-btn{display:none}.search{position:relative;max-width:560px;width:min(46vw,560px)}.search>.ico-svg{color:#8b9bb2}.search-results{display:none;position:absolute;top:calc(100% + 8px);inset-inline:0;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 20px 55px rgba(18,42,76,.18);max-height:420px;overflow:auto;z-index:80}.search-results.show{display:block;animation:dropIn .18s ease}.search-result{display:flex;align-items:center;gap:11px;padding:11px 13px;border-bottom:1px solid #eef2f7}.search-result:last-child{border-bottom:0}.search-result:hover{background:#f6f9fd}.search-result .sicon{width:34px;height:34px;border-radius:10px;background:#edf5ff;color:var(--blue);display:grid;place-items:center}.search-result b{display:block;font-size:12px}.search-result small{display:block;color:var(--muted);font-size:10px}.search-group{padding:7px 13px;background:#f7f9fc;color:#8090a6;font-size:10px;font-weight:800;text-transform:uppercase}
.notification-wrap{position:relative}.bell-btn{position:relative}.notif-count,.nav-count{display:grid;place-items:center;min-width:18px;height:18px;border-radius:999px;background:#ee4f5a;color:#fff;font-size:9px;font-style:normal;font-weight:800}.notif-count{position:absolute;top:-6px;inset-inline-end:-6px;border:2px solid #fff}.nav-count{margin-inline-start:auto;padding:0 5px}.notification-panel{display:none;position:absolute;top:calc(100% + 10px);inset-inline-end:0;width:min(390px,90vw);background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 65px rgba(20,45,78,.2);overflow:hidden;z-index:90}.notification-panel.show{display:block;animation:dropIn .18s ease}.notification-head{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-bottom:1px solid var(--border)}.link-btn{border:0;background:none;color:var(--blue);cursor:pointer;font-size:10px;font-weight:800}.notification-list{max-height:470px;overflow:auto}.notification-item{display:flex;gap:10px;padding:12px 14px;border-bottom:1px solid #eef2f7;transition:.18s}.notification-item:hover{background:#f8fbff}.notification-item.unread{background:#f2f7ff}.notification-item b{font-size:11px;display:block}.notification-item p{font-size:10px;color:#68788f;margin:3px 0;line-height:1.6}.notification-item small{color:#9aa8ba;font-size:9px}.notif-dot{width:9px;height:9px;border-radius:50%;margin-top:6px;background:#7da8df;flex:none}.notif-dot.high,.notif-dot.critical{background:var(--red)}.notif-dot.medium{background:var(--amber)}.notif-dot.low{background:var(--blue)}
.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#42d59b;box-shadow:0 0 0 4px rgba(66,213,155,.12);animation:pulseDot 2s infinite}.side-foot{line-height:1.7}.nav a{transition:transform .15s,background .15s}.nav a:hover{transform:translateX(-2px)}.ltr .nav a:hover{transform:translateX(2px)}
.eyebrow{font-size:10px;color:var(--blue);font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px}.stats.six{grid-template-columns:repeat(6,1fr)}.grid.four{grid-template-columns:repeat(4,1fr)}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.compact th,.compact td{padding:8px 10px}.table-link{color:var(--blue);font-weight:800}.table-link:hover{text-decoration:underline}.empty-state{padding:25px;text-align:center;color:var(--muted);font-size:12px}.inline-form{display:inline-flex;align-items:center;gap:6px;margin-top:7px}.inline-form input,.inline-form select{margin:0;padding:6px 8px;font-size:10px}.actions-stack{display:flex;flex-direction:column;gap:9px}.actions-stack .btn{width:100%}.json-preview{white-space:pre-wrap;max-width:500px;font-size:10px;background:#101c2c;color:#dbe8f7;border-radius:10px;padding:12px;direction:ltr;text-align:left;overflow:auto}.chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;background:#edf4ff;color:#2868ae;font-size:10px;font-weight:700}.ownership-list p{display:flex;align-items:center;gap:8px;margin:8px 0}.ownership-list p .ico-svg{color:var(--green)}
.health-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,#0f2c51,#175eac);color:#fff;border-radius:18px;padding:18px 22px;box-shadow:0 16px 40px rgba(21,73,133,.18);margin-bottom:14px;position:relative;overflow:hidden}.health-strip:after{content:'';position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.05);inset-inline-end:-70px;top:-120px}.health-score{display:flex;align-items:center;gap:15px;position:relative;z-index:1}.health-score b{display:block;font-size:15px}.health-score small{display:block;color:#bdd6f4;margin-top:3px}.ring{--score:80;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#4dd6a0 calc(var(--score)*1%),rgba(255,255,255,.15) 0);position:relative;flex:none}.ring:after{content:'';position:absolute;inset:7px;background:#123860;border-radius:50%}.ring span{position:relative;z-index:1;font-size:14px;font-weight:800}.attention-summary{display:flex;gap:12px;flex-wrap:wrap;position:relative;z-index:1}.attention-summary span{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);padding:8px 10px;border-radius:10px;font-size:10px}.attention-summary .ico-svg{width:15px;height:15px}
.metric-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed #e7edf5}.metric-line:last-child{border-bottom:0}.metric-line b{font-size:11px;display:block}.metric-line small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.metric-value{font-weight:800;font-size:12px;white-space:nowrap}.metric-value.metric-up{color:var(--green)}.metric-value.metric-down{color:var(--red)}
.stat{position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}.stat:after{content:'';position:absolute;width:75px;height:75px;border-radius:50%;background:rgba(40,119,220,.045);top:-25px;inset-inline-end:-20px}.stat:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(25,52,88,.12);border-color:#cbdcf1}.stat .icon .ico-svg{width:20px;height:20px}.card{transition:transform .18s,box-shadow .18s}.card:hover{box-shadow:0 15px 36px rgba(25,52,88,.1)}
.integration-card{padding:18px;display:flex;gap:14px;align-items:flex-start}.integration-card h3{margin:0 0 5px;font-size:14px}.integration-card p{margin:0 0 10px;color:var(--muted);font-size:11px;line-height:1.8}.integration-card small{font-size:9px;color:#8290a4;direction:ltr}.integration-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-weight:900;background:#edf4ff;color:#176cc9;flex:none}.integration-icon.whatsapp{background:#e9fbf3;color:#17a563}.integration-icon.excel{background:#eaf7ef;color:#238654}.integration-icon.api{background:#f2edff;color:#6b4bc3}
.ai-score{display:flex;align-items:center;gap:14px}.ai-summary-box{white-space:pre-wrap;line-height:1.9;background:linear-gradient(135deg,#f8f5ff,#f1f8ff);border:1px solid #e1dcf8;padding:16px;border-radius:12px;min-height:90px;font-size:12px}.ai-summary-box.loading{opacity:.65;position:relative}.ai-feedback-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.decision-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.decision-form textarea{min-width:180px;min-height:40px;margin:0}.decision-form select,.decision-form input{width:auto;margin:0}.alert-title-row{display:flex;justify-content:space-between;gap:8px}.alert-copy{min-width:0;flex:1}.alert-copy p{white-space:normal}
.flash-toast{position:fixed;top:82px;inset-inline-end:20px;width:min(390px,calc(100vw - 40px));z-index:150;box-shadow:0 16px 40px rgba(20,43,74,.18);animation:toastIn .3s ease}.flash-toast.toast-out{animation:toastOut .28s ease forwards}.bell-btn.has-unread .ico-svg{animation:bellWiggle 2.5s infinite}
.reveal{opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s ease}.reveal.visible{opacity:1;transform:none}
.progress>span{transition:width .6s ease}.status-pulse{position:relative;padding-inline-start:12px}.status-pulse:before{content:'';position:absolute;inset-inline-start:0;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:currentColor;animation:pulseDot 2s infinite}
.material-flow{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;align-items:center}.flow-step{background:#f7faff;border:1px solid #e1e9f4;border-radius:10px;padding:9px;text-align:center;font-size:10px;position:relative}.flow-step:not(:last-child):after{content:'→';position:absolute;inset-inline-end:-10px;top:50%;transform:translateY(-50%);color:#93a4ba}.rtl .flow-step:not(:last-child):after{content:'←'}.flow-step b{display:block;font-size:12px;margin-top:2px}.permission-matrix{overflow:auto}.permission-matrix table{min-width:760px}.permission-matrix input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--blue)}.permission-matrix td:not(:first-child),.permission-matrix th:not(:first-child){text-align:center}
.modal-box{animation:modalIn .2s ease}.modal.show{backdrop-filter:blur(3px)}.btn{transition:transform .12s,filter .12s,box-shadow .12s}.btn:hover{filter:brightness(.98);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary:hover{box-shadow:0 8px 20px rgba(22,119,255,.2)}
@keyframes dropIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes modalIn{from{opacity:0;transform:scale(.985) translateY(7px)}to{opacity:1;transform:none}}@keyframes toastIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translateY(-10px)}}@keyframes pulseDot{0%,100%{box-shadow:0 0 0 0 rgba(61,209,154,.4)}50%{box-shadow:0 0 0 6px rgba(61,209,154,0)}}@keyframes bellWiggle{0%,88%,100%{transform:rotate(0)}90%{transform:rotate(8deg)}92%{transform:rotate(-8deg)}94%{transform:rotate(6deg)}96%{transform:rotate(-4deg)}}
@media(max-width:1280px){.stats.six{grid-template-columns:repeat(3,1fr)}.grid.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.menu-btn{display:inline-flex}.health-strip{align-items:flex-start;flex-direction:column}.stats.six{grid-template-columns:1fr 1fr}.grid.four{grid-template-columns:1fr}.span-2,.span-3{grid-column:auto}.search{width:auto;max-width:none}.top-left{width:calc(100% - 120px)}.notification-panel{position:fixed;top:70px;inset-inline-end:10px}.material-flow{grid-template-columns:repeat(2,1fr)}.flow-step:after{display:none}}
@media(max-width:520px){.stats.six{grid-template-columns:1fr}.search input{font-size:11px}.health-score{align-items:flex-start}.attention-summary{display:grid;grid-template-columns:1fr}.integration-card{padding:13px}.flash-toast{top:74px;inset-inline:10px;width:auto}.top-actions{gap:4px}.lang-btn{padding:8px}.content{padding-bottom:80px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* V2.1 — Document Intelligence & Go-Live Readiness */
.readiness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.readiness-item{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:var(--shadow);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.readiness-item:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.readiness-item.ok{border-inline-start:4px solid #16a34a}.readiness-item.pending{border-inline-start:4px solid #f59e0b}.readiness-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--soft);flex:0 0 auto}.readiness-item.ok .readiness-icon{color:#16a34a;background:#dcfce7}.readiness-item.pending .readiness-icon{color:#d97706;background:#fef3c7;animation:c1Pulse 1.8s ease-in-out infinite}.readiness-item p{margin:5px 0;color:var(--muted);font-size:13px}.readiness-item small{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.provider-test-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.page-head form.actions-row select,.page-head form.actions-row input[type=file]{max-width:210px}.json-preview{max-height:280px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#081a31;color:#dbeafe;padding:12px;border-radius:12px;font-size:12px}.document-confidence{font-variant-numeric:tabular-nums}@keyframes c1Pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(245,158,11,.18)}50%{transform:scale(1.05);box-shadow:0 0 0 8px rgba(245,158,11,0)}}
@media(max-width:1100px){.readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.readiness-grid,.provider-test-grid{grid-template-columns:1fr}.page-head form.actions-row{width:100%;display:grid;grid-template-columns:1fr}.page-head form.actions-row select,.page-head form.actions-row input[type=file]{max-width:none;width:100%}}

/* V2.2 — OpenRouter unified AI provider */
.openrouter-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #d9e7ff;background:linear-gradient(135deg,#f6f9ff,#f5f0ff);border-radius:14px;margin:4px 0}.openrouter-head b{display:flex;align-items:center;gap:8px;font-size:14px}.openrouter-head small{display:block;color:var(--muted);margin-top:4px;line-height:1.6}.openrouter-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.provider-inline-status{font-size:11px;color:var(--muted);font-weight:700}.provider-inline-status.ok{color:#15803d}.provider-inline-status.bad{color:#b91c1c}.openrouter-usage{margin-top:14px}.stats.four{grid-template-columns:repeat(4,minmax(0,1fr))}.compact-stats .stat{padding:12px}.compact-stats .stat span{font-size:10px;color:var(--muted);display:block}.compact-stats .stat b{font-size:18px;display:block;margin-top:5px}.form-grid textarea{width:100%;resize:vertical}
@media(max-width:860px){.openrouter-head{align-items:flex-start;flex-direction:column}.stats.four{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.stats.four{grid-template-columns:1fr}.openrouter-actions .btn{width:100%}}

/* V2.3 — enterprise controls, Ask AI and mobile */
.ask-ai-messages{height:430px;overflow:auto;padding:14px;background:linear-gradient(180deg,#f8fbff,#f5f7fb);border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;gap:10px}.ai-chat-msg{max-width:86%;padding:11px 13px;border-radius:14px;white-space:pre-wrap;line-height:1.8;font-size:12px;box-shadow:0 4px 16px rgba(20,43,74,.05)}.ai-chat-msg.user{align-self:flex-start;background:#17375f;color:white;border-bottom-inline-start-radius:4px}.ai-chat-msg.assistant{align-self:flex-end;background:#fff;border:1px solid #dfe8f3;border-bottom-inline-end-radius:4px}.ask-ai-compose{display:grid;grid-template-columns:210px 1fr auto;gap:10px;margin-top:12px;align-items:end}.ask-ai-compose textarea{min-height:76px}.ask-ai-compose small{grid-column:1/-1}.wide-card{width:min(720px,calc(100vw - 30px))}.badge.purple{background:#f0ebff;color:#6844c7}.btn.success{background:#159d68;color:#fff}.enterprise-callout{border:1px solid #dce8f6;background:linear-gradient(135deg,#f7fbff,#fbf8ff);border-radius:16px;padding:14px}.native-source-card code{direction:ltr;display:block}.qa-pass{color:var(--green);font-weight:800}.qa-fail{color:var(--red);font-weight:800}
@media(max-width:760px){.ask-ai-compose{grid-template-columns:1fr}.ask-ai-compose small{grid-column:auto}.ask-ai-messages{height:52vh}.ai-chat-msg{max-width:95%}}

/* V2.3.3 Branding settings */
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:12px;background:#fff;padding:3px;box-shadow:0 6px 16px rgba(4,22,44,.18)}
.branding-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #dbe6f5;border-radius:16px;background:linear-gradient(135deg,#f7fbff,#f5f3ff)}
.branding-head small{display:block;color:#708096;margin-top:2px}
.branding-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.branding-upload{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fbfdff}
.branding-preview{display:flex;align-items:center;justify-content:center;height:112px;border:1px dashed #c7d5e7;border-radius:14px;background:linear-gradient(135deg,#fff,#f3f7fc);margin-bottom:12px;overflow:hidden}
.branding-preview .brand-preview-img{max-width:240px;max-height:82px;width:auto;height:auto;object-fit:contain;border-radius:12px}
.branding-preview .logo-mark{width:62px;height:62px;font-size:18px}
.favicon-preview img{width:64px;height:64px;object-fit:contain;border-radius:14px;box-shadow:0 8px 22px rgba(15,39,72,.12)}
.branding-upload input[type=file]{padding:9px;background:#fff}
@media(max-width:760px){.branding-grid{grid-template-columns:1fr}.branding-head{align-items:flex-start;flex-direction:column}}

/* V2.4 Ultimate */
.notice{padding:14px 16px;border-radius:14px;background:#fff8e8;border:1px solid #f1d69a;margin-bottom:16px}.chip{display:inline-flex;padding:4px 9px;border-radius:999px;background:#eef3fa;margin:2px}.timeline-item{padding:12px 0;border-bottom:1px solid var(--line,#e6ebf3)} code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}


/* V2.4.1 — Professional login contact & demo experience */
.login-shell-pro{width:min(1120px,95vw);grid-template-columns:1.12fr .88fr}
.login-visual-pro{min-height:680px;padding:62px 52px;justify-content:space-between;background:radial-gradient(circle at 20% 10%,rgba(56,139,255,.32),transparent 28%),linear-gradient(145deg,#071b34 0%,#0d3a6d 54%,#0d5c80 100%)}
.login-visual-inner{position:relative;z-index:2;margin:auto 0}.login-visual-pro h1{font-size:42px;line-height:1.45;margin:18px 0 10px}.login-visual-pro>*,.login-visual-inner>*{position:relative;z-index:2}.login-visual-pro:after{content:'';position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.09);border-radius:50%;inset-inline-end:-160px;bottom:-150px;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018)}
.login-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:28px}.login-feature-grid>div{padding:14px 12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:14px;backdrop-filter:blur(6px)}.login-feature-grid b{font-size:17px;color:#9ed2ff;display:block}.login-feature-grid span{font-size:10px;color:#d5e6fa;display:block;margin-top:2px}
.login-trust{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;color:#c8d9ee;font-size:10px}.codeone-demo-panel{position:relative;z-index:2;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:rgba(5,25,49,.34);backdrop-filter:blur(12px)}.codeone-demo-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#fff,#8bd3ff);color:#0a4678;font-weight:900;box-shadow:0 8px 25px rgba(0,0,0,.18)}.codeone-demo-copy b{display:block;font-size:13px}.codeone-demo-copy span{display:block;color:#c5d9ed;font-size:10px;margin-top:2px}.codeone-demo-cta{padding:9px 12px;border-radius:10px;background:#fff;color:#0d4f87;font-weight:800;font-size:10px;white-space:nowrap;transition:.2s}.codeone-demo-cta:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.16)}
.login-card-pro{padding:34px 38px;display:flex;flex-direction:column;justify-content:center;min-width:0}.login-brand{padding:0;margin-bottom:24px}.login-heading h2{margin:4px 0 2px;font-size:27px}.login-heading p{margin:0 0 18px}.login-welcome{font-size:9px;font-weight:900;letter-spacing:.16em;color:#5f8fc2}.login-form-pro label{margin-bottom:12px}.login-form-pro input{padding:12px 13px;border-radius:11px;background:#fbfdff}.login-submit{padding:12px 15px;border-radius:11px;font-size:13px}.login-submit span{font-size:17px}.login-links{display:flex;align-items:center;justify-content:center;gap:8px;margin:13px 0 18px;font-size:10px;color:#4b75a4}.login-links a:hover{text-decoration:underline}
.login-contact-box{border:1px solid #dfe8f4;border-radius:17px;background:linear-gradient(180deg,#fbfdff,#f7faff);padding:14px}.login-contact-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.login-contact-head b{font-size:12px;display:block}.login-contact-head span:not(.support-live-dot){font-size:9px;color:var(--muted);display:block;margin-top:1px}.support-live-dot{display:inline-flex!important;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;background:#e9f9f1;color:#188256!important;font-size:8px!important;font-weight:900}.support-live-dot:before{content:'';width:6px;height:6px;border-radius:50%;background:#1aac70;box-shadow:0 0 0 4px rgba(26,172,112,.1)}
.login-contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.login-contact-btn{display:flex;align-items:center;gap:9px;padding:10px;border-radius:12px;border:1px solid #e0e8f3;background:#fff;transition:.18s}.login-contact-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(16,47,84,.08)}.login-contact-btn .contact-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;font-size:9px;font-weight:900}.login-contact-btn.whatsapp .contact-icon{background:#e7f9ef;color:#138a59}.login-contact-btn.email .contact-icon{background:#eaf3ff;color:#176cc9}.login-contact-btn b{font-size:10px;display:block}.login-contact-btn small{font-size:8px;color:#708096;direction:ltr;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:135px}
.login-demo-wide{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-top:9px;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,#163e6d,#196cc6);color:#fff;box-shadow:0 8px 22px rgba(23,100,184,.16);transition:.18s}.login-demo-wide:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(23,100,184,.23)}.login-demo-wide b{font-size:10px;display:block}.login-demo-wide small{font-size:8px;color:#d6e9ff;display:block}.login-demo-wide .arrow{font-size:16px}.codeone-site-line{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:9px;font-size:8px;color:#8391a5}.codeone-site-line a{direction:ltr;color:#2d6eb4;font-weight:800}.login-security-note{margin-top:13px;font-size:8px}.support-settings-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #dbe6f5;border-radius:16px;background:linear-gradient(135deg,#f7fbff,#eff8ff)}.support-settings-head small{display:block;color:#708096;margin-top:2px}
@media(max-width:860px){.login-shell-pro{grid-template-columns:1fr}.login-visual-pro{display:none}.login-card-pro{padding:28px 26px}.login-contact-actions{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.login-card-pro{padding:23px 18px}.login-contact-actions{grid-template-columns:1fr}.login-contact-btn small{max-width:220px}.codeone-site-line{align-items:flex-start;flex-direction:column}.login-heading h2{font-size:24px}.support-settings-head{align-items:flex-start;flex-direction:column}}
