/* ANNEXOR · עיצוב משותף לפורטל ולכלים */
/* גופנים מקומיים (אותם קבצים של vendor/fonts ב-v3.95.10, @fontsource 5.3.0). אין טעינה מהרשת. */
@font-face{font-family:Heebo;font-style:normal;font-weight:400;font-display:swap;src:url(../vendor/fonts/heebo/heebo-hebrew-400-normal.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:Heebo;font-style:normal;font-weight:400;font-display:swap;src:url(../vendor/fonts/heebo/heebo-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:Heebo;font-style:normal;font-weight:500;font-display:swap;src:url(../vendor/fonts/heebo/heebo-hebrew-500-normal.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:Heebo;font-style:normal;font-weight:500;font-display:swap;src:url(../vendor/fonts/heebo/heebo-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:Heebo;font-style:normal;font-weight:700;font-display:swap;src:url(../vendor/fonts/heebo/heebo-hebrew-700-normal.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:Heebo;font-style:normal;font-weight:700;font-display:swap;src:url(../vendor/fonts/heebo/heebo-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(../vendor/fonts/rubik/rubik-hebrew-500-normal.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:Rubik;font-style:normal;font-weight:500;font-display:swap;src:url(../vendor/fonts/rubik/rubik-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:Rubik;font-style:normal;font-weight:600 900;font-display:swap;src:url(../vendor/fonts/rubik/rubik-hebrew-600-normal.woff2) format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F}
@font-face{font-family:Rubik;font-style:normal;font-weight:600 900;font-display:swap;src:url(../vendor/fonts/rubik/rubik-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  --bg:#081326; --panel:#0e1f38; --card:#0b1a30; --line:#1f3a5e; --text:#eaf1fb; --muted:#8ea3c2;
  --live:#22c55e; --build:#f59e0b; --split:#38bdf8; --tables:#a3e635; --citizen:#c084fc; --bad:#ef4444;
  --r-lg:22px; --r-md:14px; --r-sm:10px;
}
*{box-sizing:border-box}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html,body{margin:0}
body{font-family:Heebo,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;
}
h1,h2,h3{font-family:Rubik,Heebo,sans-serif;margin:0}
a{color:inherit}
.tool{text-decoration:none;color:inherit}
button,input{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--split);outline-offset:2px}
.wrap{max-width:1240px;margin:0 auto;padding:118px 18px 70px}
.preview-note{font-size:13px;color:var(--muted);text-align:center;margin:-6px 0 14px}

/* ===== PORTAL ===== */
.hero{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 24px;display:grid;grid-template-columns:1fr;gap:18px}
.logo{width:122px;height:122px;border-radius:18px;background:#f4ead8;border:3px solid #7b3b2a;display:grid;place-items:center;grid-row:span 2}
.logo,.sp-logo{background:none!important;border:none!important;padding:0}
.logoimg{width:100%;height:100%;object-fit:contain;display:block;border-radius:18px}
.hero h1{font-size:clamp(26px,3.4vw,40px);font-weight:800;letter-spacing:.2px}
.hero p{margin:6px 0 0;color:#c7d3e6;font-size:16px}
.stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.stat{border:1px solid var(--line);border-radius:var(--r-md);padding:12px 16px;background:rgba(8,19,38,.55)}
.stat small{display:block;color:var(--muted);font-size:14px}
.stat b{display:block;text-align:left;font-family:Rubik;font-size:30px;font-weight:700}
.search{grid-column:1/-1;display:flex;gap:12px}
.search input{flex:1;background:rgba(8,19,38,.55);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 20px;font-size:20px}
.search input::placeholder{color:#7085a6}
.groups{margin-top:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.group{display:flex;flex-direction:column;gap:12px}
.ghead{border:1px solid var(--line);border-inline-start:5px solid var(--c);border-radius:var(--r-md);padding:12px 16px;background:rgba(8,19,38,.45)}
.ghead h2{font-size:19px;color:var(--c)}
.ghead p{margin:4px 0 0;color:var(--muted);font-size:14px}
.tool{border:1px solid var(--line);border-radius:var(--r-md);padding:16px;background:linear-gradient(180deg,rgba(34,197,94,.06),transparent 60%),var(--card);
  display:flex;flex-direction:column;gap:8px;cursor:pointer;text-align:right;width:100%}
.tool[data-state=full]{background:var(--card)}
.tool:hover{border-color:var(--c)}
.tool .row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tool h3{font-size:19px}
.badge{font-size:13px;font-weight:700;padding:3px 11px;border-radius:999px;white-space:nowrap}
.badge.live{background:rgba(34,197,94,.16);color:var(--live)}
.badge.full{background:rgba(142,163,194,.14);color:var(--muted)}
.tool .desc{color:#c7d3e6;font-size:15px;line-height:1.5}
.tool .path{font-family:Consolas,"Courier New",monospace;font-size:13px;color:var(--muted);direction:ltr;text-align:right}
.empty{grid-column:1/-1;color:var(--muted);padding:18px;text-align:center}

/* ===== SPLITTER (סגנון "לוח ניווט") ===== */
#splitter{--sbg:#141a2c;--sc:#1c2438;--gold:#fbbf24;--green:#22c55e;--blue:#3b82f6;--purple:#8b5cf6;--red:#ef4444;--cyan:#22d3ee}
body.split-on{background:#141a2c}
.sp-top{display:flex;justify-content:center;align-items:center;position:relative;min-height:120px}
.sp-logo{position:absolute;inset-inline-end:0;top:0;width:116px;height:116px;border-radius:18px;background:#f4ead8;border:3px solid #7b3b2a;display:grid;place-items:center}

.sp-title{font-family:Rubik,Heebo,sans-serif;font-weight:800;font-size:clamp(28px,4vw,44px);margin:0;
  background:linear-gradient(90deg,#8b5cf6,#3b82f6 45%,#22c55e);-webkit-background-clip:text;background-clip:text;color:transparent}
.sp-title .ico{-webkit-text-fill-color:initial}
.sp-sub{text-align:center;color:#8a94b3;margin:4px 0 22px}
.box{background:var(--sc);border:3px solid var(--c);border-radius:22px;padding:20px 22px;position:relative}
.box h2{text-align:center;font-family:Rubik;font-size:22px;color:var(--c);margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #2d3650}
.pill{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:#141a2c;color:var(--gold);font-family:Rubik;font-weight:800;font-size:15px;padding:2px 16px;border-radius:999px;letter-spacing:.5px}
.king{--c:var(--gold);max-width:560px;margin:10px auto 0;background:linear-gradient(180deg,#2a2618,#1f1d18);text-align:center;padding:30px 22px 22px}
.king .doc{font-size:64px;line-height:1}
.king h3{font-family:Rubik;font-size:28px;margin:10px 0 4px}
.king .fname{color:#e8dcb8;font-size:16px;word-break:break-word}
.king .facts{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:14px 0 4px}
.chip{background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.35);color:#fde68a;border-radius:999px;padding:4px 12px;font-size:14px}
.acts{display:flex;gap:8px;margin-top:14px}
.acts button{flex:1;border:1px solid #33406a;background:#222c49;border-radius:12px;padding:9px 8px;cursor:pointer;font-size:14px;color:#e6ebf5}
.acts button:hover{border-color:var(--c)}
.acts button.sm{flex:0 0 46px}
.tbl{--c:var(--blue);max-width:860px;margin:26px auto 0}
.tbl table{width:100%;border-collapse:collapse;font-size:15px}
.tbl th{background:#233a66;color:#bcd2ff;font-weight:700;padding:11px 12px;text-align:right}
.tbl td{padding:10px 12px;border-bottom:1px solid #2d3650}
.tbl td.n{color:var(--blue);font-family:Rubik;font-weight:700;white-space:nowrap}
.tbl tr[data-go]{cursor:pointer} .tbl tr[data-go]:hover td{background:rgba(59,130,246,.08)}
.tbl .none{text-align:center;color:var(--gold);font-weight:700;padding:18px}
.annexes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.ann{--c:var(--green);display:flex;flex-direction:column}
.ann:nth-child(3n+2){--c:var(--cyan)} .ann:nth-child(3n){--c:var(--purple)}
.ann h2{font-size:19px;text-align:right}
.ann h2 .no{display:block;font-size:14px;color:#8a94b3;font-weight:500;margin-bottom:2px}
.ann .row{display:flex;justify-content:space-between;color:#aeb8d4;font-size:14px;padding:4px 0}
.ann .row b{color:#e6ebf5;font-weight:500}
.ann .acts{margin-top:auto;padding-top:12px}
.sp-drop{--c:var(--purple);max-width:720px;margin:18px auto 0;text-align:center;border-style:dashed;cursor:pointer}
.sp-drop.over{background:#23294a}
.sp-drop b{display:block;font-family:Rubik;font-size:21px;margin-bottom:4px}
.sp-drop span{color:#8a94b3}
.demo{margin-top:10px;text-align:center}
.demo button{background:none;border:none;color:#7dd3fc;text-decoration:underline;cursor:pointer;font-size:15px}
.sp-msg{max-width:860px;margin:18px auto 0;text-align:center;padding:12px 16px;border-radius:14px;border:2px solid #33406a}
.sp-msg.ok{border-color:var(--green);color:#bbf7d0} .sp-msg.warn{border-color:var(--gold);color:#fde68a} .sp-msg.bad{border-color:var(--red);background:rgba(239,68,68,.12);color:#fecaca}
.remerge{display:block;margin:34px auto 6px;font-family:Rubik;font-weight:800;font-size:20px;color:#fff;border:none;border-radius:999px;padding:16px 46px;cursor:pointer;
  background:linear-gradient(90deg,#22c55e,#3b82f6,#8b5cf6);box-shadow:0 8px 28px rgba(59,130,246,.35)}
.remerge:disabled{opacity:.45;cursor:not-allowed}
.fab{position:fixed;width:64px;height:64px;border-radius:50%;border:3px solid rgba(255,255,255,.55);display:grid;place-items:center;font-size:26px;cursor:pointer;box-shadow:0 0 22px var(--g)}
.fab.up{--g:rgba(99,102,241,.7);background:#4f46e5;inset-inline-start:24px;bottom:28px}
.fab.home{--g:rgba(239,68,68,.6);background:#dc2626;inset-inline-end:24px;bottom:28px;color:#fff;font-size:30px}
.sp-hint{text-align:center;color:#6b7593;font-size:14px;margin-top:10px}
@media (max-width:900px){.annexes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.annexes{grid-template-columns:1fr}.sp-logo{position:static;margin-bottom:10px}.sp-top{flex-direction:column}.fab{width:54px;height:54px}}
.credits{margin:38px auto 0;max-width:980px;text-align:center;border-top:1px solid #26314d;padding-top:18px}
.credits h4{margin:0 0 10px;font-family:Rubik;font-size:17px;color:#c7d3e6;font-weight:700}
.credits .who{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.credits .m{border:1px solid #2d3a5c;border-radius:12px;padding:8px 14px;background:rgba(255,255,255,.03);font-size:14px;color:#aeb8d4}
.credits .m b{color:#e6ebf5;font-weight:700}
.credits p{margin:12px 0 0;color:#7c88a6;font-size:13px}
.hidden{display:none!important}
.toast{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);background:#12264a;border:1px solid var(--line);padding:12px 18px;border-radius:12px;max-width:90vw}
@media (max-width:980px){.groups{grid-template-columns:1fr}}
@media (max-width:640px){.hero{grid-template-columns:1fr}.logo{grid-row:auto;width:96px;height:80px}.stats,.s-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.groups{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
