/* ===== בוטילה - שכבת עיצוב. לחזרה: למחוק את שורת theme.css ב-portal.js ===== */
:root{
  --bg:#0A0D12;--surface:#11161D;--surface-2:#161D26;--inset:#0C1117;
  --line:#1E2630;--line-strong:#2A3441;--raised:#1A222C;
  --text:#E8EDF3;--text-2:#CED6E0;--soft:#A9B4C2;--muted:#8592A3;--faint:#4B5A6B;
  --accent:#34D399;--on-accent:#03271A;--accent-soft:rgba(52,211,153,.12);--accent-ring:rgba(52,211,153,.28);
  --ok:#4ADE80;--warn:#FBBF24;--err:#F87171;--info:#60A5FA;
  --danger-bg:#3B1519;--danger-fg:#FCA5A5;
  --r:12px;--r-lg:18px;
  --shadow:inset 0 1px 0 rgba(255,255,255,.04),0 1px 2px rgba(0,0,0,.35),0 12px 32px -18px rgba(0,0,0,.7);
  --ease:cubic-bezier(.2,.8,.2,1);
  color-scheme:dark;
}
html{-webkit-text-size-adjust:100%}
body{background:radial-gradient(900px 420px at 50% -200px,rgba(52,211,153,.09),transparent 70%) no-repeat,var(--bg);color:var(--text);font-family:'Heebo',system-ui,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;line-height:1.5}
::selection{background:var(--accent-ring)}
.wrap{max-width:560px}
a{color:var(--accent)}
code{background:var(--inset);color:var(--accent);border:1px solid var(--line)}
.err{color:var(--err)}.ok{color:var(--ok)}

/* ---- כרטיסים וכותרות ---- */
.card{background:linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,0) 140px),var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;margin-bottom:12px;box-shadow:var(--shadow)}
h1{font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.25}
h2{font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0 0 12px}
h2.hasIco,h3.hasIco{display:flex;align-items:center;gap:10px}
.ico{flex:none;width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--line-strong);font-size:16px;line-height:1;color:var(--text)}
.ico svg{width:17px;height:17px}

/* ---- שדות ---- */
input,select,textarea{background:var(--inset);border:1px solid var(--line-strong);color:var(--text);border-radius:var(--r);padding:12px 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}
input[type=color]{padding:3px;height:44px}
select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238592A3' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 14px center;padding-left:38px}
label{padding:12px 0;font-size:14.5px;gap:12px;border-bottom:1px solid var(--line)}

/* ---- תיבת סימון (רשימות) ---- */
input[type=checkbox]{-webkit-appearance:none;appearance:none;width:22px;min-width:22px;height:22px;padding:0;margin:0;border-radius:7px;border:1.5px solid var(--line-strong);background:var(--inset);display:inline-grid;place-content:center;cursor:pointer;box-shadow:none;transition:background .18s var(--ease),border-color .18s var(--ease)}
input[type=checkbox]::before{content:"";width:12px;height:12px;background:var(--on-accent);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);transform:scale(0);transition:transform .16s var(--ease)}
input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}
input[type=checkbox]:checked::before{transform:scale(1)}
/* ---- מתג (הגדרות) ---- */
input[type=checkbox].sw{width:46px;min-width:46px;height:28px;border-radius:999px;border:none;background:var(--raised);box-shadow:inset 0 0 0 1px var(--line-strong);display:inline-block;position:relative;flex:none}
input[type=checkbox].sw::before{position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:50%;background:#C9D2DC;clip-path:none;transform:none;box-shadow:0 1px 3px rgba(0,0,0,.45);transition:right .22s var(--ease),background .2s}
input[type=checkbox].sw:checked{background:var(--accent);box-shadow:none}
input[type=checkbox].sw:checked::before{right:21px;background:#fff}
input:disabled{opacity:.45;cursor:not-allowed}
label.hasSw{justify-content:space-between}
label.hasSw>.sw{order:9;margin-inline-start:auto}

/* ---- כפתורים ---- */
.btn{min-height:48px;border-radius:var(--r);padding:12px 18px;font-size:15px;font-weight:600;letter-spacing:-.005em;transition:transform .12s var(--ease),filter .15s,box-shadow .2s,background .2s;-webkit-user-select:none;user-select:none}
button{transition:transform .12s var(--ease),filter .15s}
button:active{transform:scale(.98)}
.g{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 1px rgba(52,211,153,.35),0 10px 28px -12px rgba(52,211,153,.55)}
.g:hover{filter:brightness(1.06)}
.gr{background:var(--raised);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-strong)}
.gr:hover{background:#212B36}
button:disabled{opacity:.5;cursor:not-allowed;transform:none}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* ---- לשוניות: שורה דביקה עם טשטוש ---- */
#tabs.tabsBar{position:sticky;top:0;z-index:60;display:flex;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin:0 -16px 14px;padding:10px 16px;background:rgba(10,13,18,.74);-webkit-backdrop-filter:saturate(160%) blur(16px);backdrop-filter:saturate(160%) blur(16px);border-bottom:1px solid rgba(255,255,255,.06);scroll-snap-type:x proximity}
#tabs.tabsBar::-webkit-scrollbar{display:none}
.tabBtn{flex:none;display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 15px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--soft);font-family:inherit;font-size:14px;font-weight:500;line-height:1;cursor:pointer;white-space:nowrap;scroll-snap-align:center;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .12s var(--ease)}
.tabBtn svg{width:16px;height:16px;flex:none}
.tabBtn:hover{color:var(--text);border-color:var(--line-strong)}
.tabBtn.on{background:var(--accent);border-color:transparent;color:var(--on-accent);box-shadow:0 4px 14px -6px rgba(52,211,153,.5)}
.tabpane{animation:paneIn .28s var(--ease)}
@keyframes paneIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---- סעיפים מתקפלים (סטטוסים) ---- */
details.stSec{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);margin-bottom:10px;overflow:hidden}
details.stSec>summary{list-style:none;display:flex;align-items:center;cursor:pointer;padding:15px 18px;font-size:15.5px;font-weight:600;background:transparent;gap:12px}
details.stSec>summary::-webkit-details-marker{display:none}
details.stSec>summary.hasIco{justify-content:flex-start}
details.stSec>summary::after{content:"";width:8px;height:8px;margin-inline-start:auto;border-left:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg) translateY(-2px);transition:transform .25s var(--ease)}
details.stSec[open]>summary::after{transform:rotate(135deg) translateY(-2px)}
details.stSec[open]>summary{border-bottom:1px solid var(--line)}
details.stSec>div{padding:8px 10px 10px}

/* ---- הודעות קופצות + כפתור שמירה ---- */
#out>*{display:inline-block;padding:10px 16px;border-radius:999px;background:rgba(17,22,29,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line-strong);box-shadow:0 12px 32px -12px rgba(0,0,0,.8);font-weight:500;animation:toastIn .25s var(--ease)}
@keyframes toastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
#saveBtn>button{background:var(--accent)!important;color:var(--on-accent)!important;box-shadow:0 0 0 1px rgba(52,211,153,.4),0 14px 34px -10px rgba(52,211,153,.6)!important;font-weight:700!important}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* ===== ליטוש סבב 2 ===== */
/* מתג: גודל קבוע גם כשיש עיצוב ישיר על התיבה */
input[type=checkbox].sw{width:46px!important;min-width:46px!important;max-width:46px!important;height:28px!important;min-height:28px!important;padding:0!important;margin:0!important;border:none!important}
/* בתוך סעיף מתקפל: בלי כרטיס בתוך כרטיס */
details.stSec .card{background:transparent;border:0;box-shadow:none;border-radius:0;margin:0;padding:16px 8px;border-bottom:1px solid var(--line)}
details.stSec .card:last-child{border-bottom:0}
/* כפתורי סכנה: מסגרת אדומה דקה, בלי מילוי כבד */
button.tDanger{background:rgba(248,113,113,.06)!important;color:#FCA5A5!important;box-shadow:inset 0 0 0 1px rgba(248,113,113,.32)!important;border-color:transparent!important}
button.tDanger:hover{background:rgba(248,113,113,.12)!important}
/* "חיבור מחדש" - פעולה רגילה */
button.tNeutral{background:var(--raised)!important;color:var(--text)!important;box-shadow:inset 0 0 0 1px var(--line-strong)!important;border-color:transparent!important}
/* פסי גלילה דקים */
*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}
#tabs.tabsBar{scrollbar-width:none}
/* ===== חיפוש בכל ההגדרות ===== */
.tabSearch{padding:0;width:40px;justify-content:center;color:var(--text)}
.tabSearch svg{width:18px;height:18px}
html.qsLock{overflow:hidden}
.qs{position:fixed;inset:0;z-index:200}
.qs[hidden]{display:none}
.qsBack{position:absolute;inset:0;background:rgba(5,7,10,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:qsFade .2s ease}
.qsPanel{position:relative;margin:0 auto;max-width:560px;height:100%;display:flex;flex-direction:column;background:var(--bg);animation:qsUp .26s var(--ease)}
@media (min-width:700px){.qsPanel{height:auto;max-height:76vh;margin-top:10vh;border:1px solid var(--line-strong);border-radius:20px;box-shadow:0 30px 80px -20px rgba(0,0,0,.8);overflow:hidden}}
.qsBar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);color:var(--muted)}
.qsBar>svg{width:20px;height:20px;flex:none}
.qsBar .qsIn{flex:1;min-width:0;margin:0;width:auto;background:transparent;border:0;box-shadow:none;padding:10px 0;font-size:17px;color:var(--text)}
.qsBar .qsIn:focus{box-shadow:none;border:0}
.qsX{flex:none;border:0;background:transparent;color:var(--accent);font:inherit;font-size:15px;font-weight:500;padding:10px 4px;cursor:pointer}
.qsRes{flex:1;overflow-y:auto;padding:6px 8px 28px;-webkit-overflow-scrolling:touch}
.qsGrp{padding:16px 12px 6px;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.02em}
.qsItem{width:100%;min-height:56px;display:flex;align-items:center;gap:12px;padding:8px 12px;border:0;border-radius:12px;background:transparent;color:var(--text);font:inherit;text-align:right;cursor:pointer}
.qsItem:hover,.qsItem:focus-visible{background:var(--surface)}
.qsItem:active{background:var(--surface);transform:none}
.qsIco{flex:none;width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--line-strong);font-size:16px}
.qsIco svg{width:17px;height:17px}
.qsTxt{display:flex;flex-direction:column;gap:2px;min-width:0}
.qsT{font-size:15px;font-weight:500}
.qsSub{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qsItem mark{background:rgba(52,211,153,.18);color:var(--accent);border-radius:3px;padding:0 1px}
.qsEmpty{padding:48px 16px;text-align:center;color:var(--muted)}
.card.qsFlash{animation:qsFlash 1.6s var(--ease)}
@keyframes qsFlash{0%,45%{box-shadow:0 0 0 2px var(--accent),0 0 30px -4px rgba(52,211,153,.5)}100%{box-shadow:var(--shadow)}}
@keyframes qsFade{from{opacity:0}}
@keyframes qsUp{from{opacity:0;transform:translateY(12px)}}
/* ===== סרגל עליון ===== */
.hdrCard{background:transparent!important;border:0!important;box-shadow:none!important;padding:6px 2px 2px!important;margin-bottom:6px!important}
.hdrCard h1{font-size:23px!important;font-weight:700;letter-spacing:-.025em}
a.hdrOut{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 13px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--soft)!important;font-size:13px!important;font-weight:500;transition:background .2s,color .2s}
a.hdrOut:hover{color:var(--text)!important;background:var(--raised)}
a.hdrOut svg{width:15px;height:15px}
#hdr{gap:8px!important;margin-top:10px!important}
.pill{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 11px;border-radius:999px;font-size:12.5px;font-weight:500;border:1px solid var(--line-strong);background:var(--surface);color:var(--soft)}
.pill svg{width:13px;height:13px}
.pill .dot{position:relative;width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.pill.ok{color:var(--ok);background:rgba(74,222,128,.08);border-color:rgba(74,222,128,.24)}
.pill.ok .dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid currentColor;opacity:0;animation:hdrPulse 2.2s ease-out infinite}
@keyframes hdrPulse{0%{transform:scale(.4);opacity:.7}100%{transform:scale(1.5);opacity:0}}
.pill.warn{color:var(--warn);background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.26)}
.pill.err{color:var(--err);background:rgba(248,113,113,.08);border-color:rgba(248,113,113,.26)}
/* ===== אייפון ===== */
@supports (-webkit-touch-callout:none){input:not([type=checkbox]):not([type=color]),select,textarea{font-size:16px!important}}
#saveBtn{bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}
#out{bottom:calc(14px + env(safe-area-inset-bottom,0px))!important}
.qsRes{padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
/* ===== עמודי כניסה והפעלה ===== */
body.authPage .wrap{max-width:420px;min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px);display:flex;flex-direction:column;justify-content:center}
body.authPage .card{padding:30px 22px 26px;border-radius:22px;animation:paneIn .35s var(--ease)}
body.authPage h1{font-size:25px;font-weight:700;letter-spacing:-.025em;margin-bottom:6px}
body.authPage .card a{color:var(--accent)!important;text-decoration:none!important;font-weight:600}
body.authPage .card a:hover{text-decoration:underline!important}
body.authPage .btn{margin-top:4px}
.brand{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;font-size:30px;line-height:1;margin:0 0 18px;background:linear-gradient(145deg,rgba(52,211,153,.2),rgba(52,211,153,.04));border:1px solid rgba(52,211,153,.32);box-shadow:0 12px 32px -14px rgba(52,211,153,.6)}
/* ===== בחירת שיטת חיבור ===== */
.connPick{margin:2px 0 16px;display:flex;flex-direction:column;gap:10px}
.cpHead{display:flex;align-items:center;gap:10px}
.cpTitle{font-size:14.5px;font-weight:600;color:var(--text)}
.cpOpt{width:100%;display:flex;align-items:center;gap:14px;padding:14px;border-radius:16px;border:1px solid var(--line-strong);background:var(--inset);color:var(--text);font:inherit;text-align:right;cursor:pointer;transition:border-color .2s,background .2s,transform .12s var(--ease)}
.cpOpt:hover{border-color:var(--accent);background:var(--accent-soft)}
.cpIco{flex:none;width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);border:1px solid rgba(52,211,153,.28)}
.cpIco svg{width:24px;height:24px}
.cpIco.cpSm{width:34px;height:34px;border-radius:10px}
.cpIco.cpSm svg{width:18px;height:18px}
.cpTxt{display:flex;flex-direction:column;gap:3px;min-width:0}
.cpTxt b{font-size:15.5px;font-weight:600}
.cpTxt span{font-size:12.5px;color:var(--muted);line-height:1.5}
.cpSteps{font-size:13px;line-height:1.9;color:var(--text-2)}
.cpSwitch{align-self:center;border:0;background:transparent;color:var(--accent);font:inherit;font-size:13px;font-weight:500;padding:8px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
