:root{--ofeq-blue: #2E95CC;--ofeq-blue-deep: #1C6D99;--ofeq-blue-darker: #155271;--ofeq-blue-light: #5FB3DE;--ofeq-blue-pale: #E7F3FA;--ofeq-navy: #1F3A5F;--ofeq-orange: #F7941E;--ofeq-orange-dark: #DE7F0C;--ofeq-orange-pale: #FEF1DF;--ofeq-blue-dark: #1F3A5F;--bg: #F4F8FB;--surface: #ffffff;--border: #d9dfea;--border-strong: #b9c3d6;--text: #1F3A5F;--text-muted: #5A6B82;--text-faint: #8695A8;--ok: #11835a;--ok-pale: #e5f6ee;--warn: #b07400;--warn-pale: #fff6e0;--danger: #c62828;--danger-dark: #a21d1d;--danger-pale: #fdeaea;--radius: 10px;--radius-sm: 7px;--shadow: 0 1px 2px rgba(18, 40, 74, .06), 0 4px 16px rgba(18, 40, 74, .07);--shadow-lg: 0 10px 40px rgba(18, 40, 74, .22);--tap: 44px;--header-h: 60px;--font: "Heebo", "Assistant", "Segoe UI", "Arial Hebrew", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-text-size-adjust:100%}h1,h2,h3,h4{margin:0 0 .5rem;line-height:1.25;font-weight:700}h1{font-size:1.3rem}h2{font-size:1.12rem}h3{font-size:1rem}p{margin:0 0 .75rem}a{color:var(--ofeq-blue-deep)}.app{min-height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:12px;min-height:var(--header-h);padding:8px 16px;background:#fff;color:var(--ofeq-navy);border-bottom:1px solid var(--border);box-shadow:var(--shadow);position:sticky;top:0;z-index:30}.topbar img.logo{height:38px;width:auto;display:block}.topbar .title{font-weight:700;font-size:1.05rem;color:var(--ofeq-navy)}.topbar .sub{color:var(--text-muted);font-size:.82rem}.topbar .grow{flex:1 1 auto}.topbar .divider{width:1px;align-self:stretch;margin:6px 2px;background:var(--border)}.tabs{display:flex;gap:2px;padding:0 12px;background:var(--ofeq-blue-pale);border-bottom:1px solid var(--border);overflow-x:auto;position:sticky;top:var(--header-h);z-index:29}.tabs button{appearance:none;border:0;background:transparent;color:var(--ofeq-blue-deep);font:inherit;font-weight:600;padding:0 18px;min-height:var(--tap);cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}.tabs button:hover{color:var(--ofeq-navy);background:#ffffff8c}.tabs button[aria-selected=true]{color:var(--ofeq-navy);background:#fff;border-bottom-color:var(--ofeq-orange)}.tabs button .tag{margin-inline-start:7px;vertical-align:middle;font-size:.7rem}.page{flex:1 1 auto;padding:16px;max-width:1500px;width:100%;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:16px}.card>h2:first-child,.card>h3:first-child{margin-top:0}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.row.mid{align-items:center}.grow,.spacer{flex:1 1 auto}.stack{display:flex;flex-direction:column;gap:12px}label.field{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--text-muted);font-weight:600}input[type=text],input[type=password],input[type=number],input[type=search],select,textarea{font:inherit;color:var(--text);background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:0 10px;min-height:var(--tap);min-width:0}textarea{padding:8px 10px;min-height:72px;resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--ofeq-orange);outline-offset:1px}input:disabled,select:disabled,button:disabled{opacity:.55;cursor:not-allowed}.btn{appearance:none;font:inherit;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:#fff;color:var(--text);min-height:var(--tap);padding:0 16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.btn:hover:not(:disabled){background:var(--ofeq-blue-pale)}.btn.primary{background:var(--ofeq-blue-deep);border-color:var(--ofeq-blue-deep);color:#fff}.btn.primary:hover:not(:disabled){background:var(--ofeq-blue-darker)}.btn.accent{background:var(--ofeq-orange);border-color:var(--ofeq-orange-dark);color:var(--ofeq-navy)}.btn.accent:hover:not(:disabled){background:var(--ofeq-orange-dark);color:var(--ofeq-navy)}.btn.accent .spinner{border-color:#1f3a5f40;border-top-color:var(--ofeq-navy)}.btn.danger{background:var(--danger);border-color:var(--danger-dark);color:#fff}.btn.danger:hover:not(:disabled){background:var(--danger-dark)}.btn.ghost{background:transparent;border-color:transparent;color:var(--ofeq-blue-deep)}.btn.ghost:hover:not(:disabled){background:var(--ofeq-blue-pale)}.btn.sm{min-height:34px;padding:0 10px;font-size:.85rem}.check{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);cursor:pointer;font-weight:600}.check input{width:20px;height:20px;accent-color:var(--ofeq-blue-deep)}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.table-wrap.tall{max-height:60vh}table.grid{width:100%;border-collapse:collapse;font-size:.9rem}table.grid th,table.grid td{padding:8px 10px;text-align:right;border-bottom:1px solid var(--border)}table.grid thead th{position:sticky;top:0;background:var(--ofeq-blue-pale);color:var(--ofeq-blue-dark);font-weight:700;white-space:nowrap;z-index:1}table.grid tbody tr:hover{background:#fafbfe}table.grid tbody tr.selected{background:var(--ofeq-orange-pale)}table.grid td.num,table.grid th.num{text-align:left;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}table.grid tr.clickable{cursor:pointer}table.grid tfoot td{font-weight:700;background:var(--ofeq-blue-pale)}.tag{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.78rem;font-weight:700;white-space:nowrap}.tag.ok{background:var(--ok-pale);color:var(--ok)}.tag.busy{background:var(--warn-pale);color:var(--warn)}.tag.bad{background:var(--danger-pale);color:var(--danger)}.tag.info{background:var(--ofeq-blue-pale);color:var(--ofeq-blue-deep)}.tag.muted{background:#eef1f6;color:var(--text-muted)}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.small{font-size:.85rem}.nowrap{white-space:nowrap}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;unicode-bidi:isolate}.ltr{direction:ltr;unicode-bidi:isolate}bdi.ltr,span.ltr{display:inline}table.grid td.ltr,table.grid th.ltr{text-align:right}.stats{display:flex;flex-wrap:wrap;gap:10px}.stat{flex:1 1 130px;border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;background:#fff}.stat .v{font-size:1.45rem;font-weight:700;font-variant-numeric:tabular-nums}.stat .k{font-size:.8rem;color:var(--text-muted);font-weight:600}.stat.new .v{color:var(--ok)}.stat.chg .v{color:var(--warn)}.stat.del .v{color:var(--danger)}.stat.same .v{color:var(--text-muted)}.banner{border-radius:var(--radius-sm);padding:10px 12px;border:1px solid;font-weight:600}.banner.err{background:var(--danger-pale);border-color:#f0bcbc;color:var(--danger-dark)}.banner.ok{background:var(--ok-pale);border-color:#b6e3cf;color:var(--ok)}.banner.warn{background:var(--warn-pale);border-color:#efdca8;color:var(--warn)}.banner.info{background:var(--ofeq-blue-pale);border-color:#bbdcf0;color:var(--ofeq-blue-deep)}.empty{padding:28px 12px;text-align:center;color:var(--text-muted)}.spinner{width:18px;height:18px;border:2.5px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.spinner.dark{border-color:#1f3a5f33;border-top-color:var(--ofeq-blue-deep)}@keyframes spin{to{transform:rotate(360deg)}}.login-wrap{min-height:100%;display:grid;place-items:center;padding:24px}.login{width:100%;max-width:380px;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);padding:28px 24px;text-align:center}.login img.logo{width:200px;max-width:78%;height:auto;margin-bottom:14px}.login h1{font-size:1.25rem}.login form{display:flex;flex-direction:column;gap:12px;margin-top:16px;text-align:right}.backdrop{position:fixed;inset:0;background:#0f1e36b8;display:grid;place-items:center;padding:16px;z-index:100}.modal{background:var(--surface);border-radius:14px;box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column}.modal.wide{max-width:1100px}.modal header{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}.modal header h2{margin:0;flex:1 1 auto}.modal .body{padding:18px;overflow:auto}.modal footer{padding:12px 18px;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-start;background:#fbfcfe;border-radius:0 0 14px 14px}.modal .close{font-size:1.3rem;line-height:1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid .wide{grid-column:1 / -1}.toasts{position:fixed;inset-block-end:16px;inset-inline-start:16px;display:flex;flex-direction:column;gap:8px;z-index:200;max-width:min(420px,calc(100vw - 32px))}.toast{background:var(--ofeq-blue-dark);color:#fff;border-radius:var(--radius-sm);padding:11px 14px;box-shadow:var(--shadow-lg);font-weight:600;display:flex;gap:10px;align-items:flex-start;animation:toast-in .18s ease-out}.toast.ok{background:#0f6d4c}.toast.err{background:var(--danger-dark)}.toast.warn{background:#8a5a00}.toast button{appearance:none;background:none;border:0;color:#fff9;font:inherit;cursor:pointer}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.drop{border:2px dashed var(--border-strong);border-radius:var(--radius);background:#fbfcfe;padding:22px;text-align:center;color:var(--text-muted)}.drop.over{border-color:var(--ofeq-orange);background:var(--ofeq-orange-pale);color:var(--ofeq-orange-dark)}.drop strong{color:var(--text)}.diff-old{color:var(--text-muted);text-decoration:line-through}.diff-new{color:var(--ok);font-weight:600}@media(max-width:900px){.page,.card{padding:12px}.form-grid{grid-template-columns:1fr}.topbar .sub{display:none}table.grid{font-size:.86rem}table.grid th,table.grid td{padding:7px 8px}}:root{--ph-tap: 48px}.ph-app{min-height:100%;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.ph-header{display:flex;align-items:center;gap:10px;padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top));background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.ph-header .logo{height:30px;width:auto;flex:0 0 auto}.ph-id{min-width:0;line-height:1.25}.ph-id-main{font-weight:700;font-size:.95rem;display:flex;gap:5px;align-items:baseline}.ph-id-main .co{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ph-id-main .sep{color:var(--text-faint)}.ph-id-sub{font-size:.8rem;color:var(--text-muted)}.ph-net{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;white-space:nowrap}.ph-net .dot{width:9px;height:9px;border-radius:50%;background:var(--ok)}.ph-net.on{color:var(--ok)}.ph-net.off{color:var(--danger)}.ph-net.off .dot{background:var(--danger)}.ph-center{min-height:100%;min-height:100dvh;display:grid;place-items:center;padding:20px 16px calc(20px + env(safe-area-inset-bottom));background:var(--bg)}.ph-card{width:100%;max-width:380px;background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);padding:24px 20px;display:flex;flex-direction:column;gap:14px;text-align:center}.ph-card .logo{width:200px;max-width:78%;height:auto;margin:0 auto 4px;display:block}.ph-card h1{font-size:1.3rem;margin:0}.ph-card>p{margin:0}.ph-field{display:flex;flex-direction:column;gap:5px;text-align:right;font-size:.85rem;font-weight:600;color:var(--text-muted)}.ph-input{font:inherit;width:100%;min-height:var(--ph-tap);padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff;color:var(--text)}.ph-input::placeholder{color:var(--text-faint);opacity:.75;font-weight:400;font-size:.95rem;letter-spacing:normal}.ph-input.ltr::placeholder{direction:rtl;text-align:right}.ph-input.big{font-size:1.25rem;font-weight:600;min-height:54px;letter-spacing:.02em}.ph-big-btn{min-height:54px;font-size:1.05rem;width:100%}.ph-hint{margin:0}.ph-why{margin:0;color:var(--warn);font-weight:600}.ph-main{flex:1 1 auto;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px}.ph-sect{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;gap:10px}.ph-sect-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ph-sect-head h2{margin:0;font-size:1rem;flex:1 1 auto}.ph-row-btn{width:100%;min-height:var(--ph-tap)}.ph-footer-actions{flex-direction:row;gap:10px;background:transparent;border:0;padding:0}.ph-footer-actions .btn{flex:1 1 0;min-height:var(--ph-tap)}.ph-progress{display:flex;flex-direction:column;gap:6px}.ph-progress .label{font-size:.85rem;color:var(--text-muted);font-weight:600}.ph-progress .bar{height:10px;background:var(--ofeq-blue-pale);border-radius:999px;overflow:hidden}.ph-progress .fill{height:100%;background:var(--ofeq-blue);transition:width .2s ease}.ph-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ph-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff}.ph-item-main{flex:1 1 auto;min-width:0}.ph-item-title{font-weight:700;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.ph-item-sub{margin-top:2px}.ph-item-actions{display:flex;gap:6px;flex:0 0 auto}.ph-entry{position:sticky;top:0;z-index:15;background:var(--ofeq-blue-pale);border-bottom:1px solid var(--border);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.ph-entry-row{display:flex;gap:8px;align-items:stretch}.ph-entry-row .grow{flex:1 1 auto;min-width:0}.ph-icon-btn{flex:0 0 auto;width:var(--ph-tap);min-height:var(--ph-tap);padding:0;font-size:1.1rem;font-weight:700}.ph-add{flex:0 0 auto;min-height:54px;padding:0 20px;font-size:1.05rem}.ph-found{background:#fff;border:1px solid var(--ofeq-blue-light);border-radius:var(--radius-sm);padding:8px 10px;text-align:right}.ph-found .name{font-weight:700;font-size:1.02rem}.ph-found .meta{font-size:.82rem;color:var(--text-muted);margin-top:2px}.ph-found.unknown{border-color:var(--danger);background:var(--danger-pale)}.ph-found.unknown .name{color:var(--danger-dark)}.ph-grid-wrap{flex:1 1 auto;overflow:auto;-webkit-overflow-scrolling:touch}.ph-grid{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff}.ph-grid th,.ph-grid td{padding:9px 8px;text-align:right;border-bottom:1px solid var(--border)}.ph-grid thead th{position:sticky;top:0;background:#fff;border-bottom:2px solid var(--border-strong);font-size:.78rem;color:var(--text-muted);white-space:nowrap;z-index:1}.ph-grid td.n,.ph-grid th.n{text-align:left;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}.ph-grid td.strong{font-weight:700;font-size:1rem}.ph-grid tbody tr{cursor:pointer}.ph-grid tbody tr:active{background:var(--ofeq-blue-pale)}.ph-grid tbody tr.unknown{background:var(--danger-pale)}.ph-grid tbody tr.unknown td{color:var(--danger-dark)}.ph-grid tbody tr.editing{outline:2px solid var(--ofeq-orange);outline-offset:-2px}.ph-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--border);padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px;z-index:15}.ph-totals{display:flex;gap:12px;align-items:center;font-weight:700;font-size:.9rem;flex-wrap:wrap}.ph-footer-btns{display:flex;gap:8px}.ph-footer-btns .btn{min-height:52px}.ph-footer-btns .grow{flex:1 1 auto}.ph-scan{position:fixed;inset:0;z-index:300;background:#000;display:flex;flex-direction:column}.ph-scan-video{flex:1 1 auto;width:100%;height:100%;object-fit:cover}.ph-scan-frame{position:absolute;inset-inline:10%;top:30%;height:24%;border:3px solid var(--ofeq-orange);border-radius:12px;box-shadow:0 0 0 100vmax #00000059;pointer-events:none}.ph-scan-bar{position:relative;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:#000c;color:#fff;display:flex;flex-direction:column;gap:10px;align-items:stretch;text-align:center}.ph-scan-close{min-height:var(--ph-tap)}.ph-scan-err{text-align:right}.ph-update{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}@media(min-width:700px){.ph-main{max-width:760px;margin:0 auto;width:100%}.ph-entry{padding:12px 16px}.ph-grid{font-size:.95rem}.ph-footer>*{max-width:760px;width:100%;margin:0 auto}}
