
/* שפת עיצוב: המשך ישיר לגרסה הקודמת (Geist): ניטרלי, צפוף, צבע = משמעות */
:root{--bg:#fff;--bg2:#fafafa;--bg3:#f2f2f2;--line:#eaeaea;--fg:#000;--fg2:#171717;--dim:#666;--dim2:#8f8f8f;
--ok:#0f7b45;--ok-bg:#edfbf3;--ok-line:#b7e9cd;--time:#a45c00;--time-bg:#fff7e6;--time-line:#f5d9a6;
--brief:#a02a78;--brief-bg:#fdf0f8;--brief-line:#f2c6e2;--link:#0070f3;--r:8px;--r2:6px}
:root[data-theme=dark]{--bg:#0a0a0a;--bg2:#111;--bg3:#1a1a1a;--line:#242424;--fg:#ededed;--fg2:#e0e0e0;--dim:#a1a1a1;--dim2:#787878;
--ok:#6ee7a8;--ok-bg:#0c2318;--ok-line:#1f4c33;--time:#f0c878;--time-bg:#251c0b;--time-line:#4a3818;
--brief:#f9a8d4;--brief-bg:#2a1520;--brief-line:#55283c;--link:#52a8ff}
*{box-sizing:border-box}html,body{margin:0}
body{background:var(--bg);color:var(--fg);font:14px/1.55 Assistant,Inter,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}
h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}
.app{display:flex;min-height:100vh}
aside{flex:0 0 212px;border-inline-end:1px solid var(--line);position:sticky;top:0;height:100vh;padding:14px 10px;display:flex;flex-direction:column;gap:2px}
.brand{display:flex;align-items:center;gap:8px;padding:4px 8px 14px;font-weight:600}
.mark{width:18px;height:18px;border-radius:50%;background:conic-gradient(from 210deg,#f5a623,#45c787 40%,#d6409f 75%,#f5a623)}
.tab{display:flex;align-items:center;gap:8px;height:30px;padding:0 8px;border-radius:var(--r2);color:var(--dim);font-weight:500}
.tab:hover{background:var(--bg3);color:var(--fg)}.tab.on{background:var(--fg);color:var(--bg);font-weight:600}
.tab .c{margin-inline-start:auto;font-size:11px;opacity:.6}
.foot{margin-top:auto;padding:10px 8px 0;border-top:1px solid var(--line);font-size:12px;color:var(--dim2);display:flex;justify-content:space-between;align-items:center}
.tgl{border:1px solid var(--line);background:none;border-radius:var(--r2);padding:2px 8px;font-size:12px;color:var(--dim)}
main{flex:1;min-width:0;padding:28px 24px 100px}
.wrap{max-width:900px;margin-inline-end:auto}
.page-h{margin-bottom:20px}.page-h h1{font-size:20px}.page-h p{margin:2px 0 0;color:var(--dim)}
.crumb{font-size:12px;color:var(--dim2);margin-bottom:8px}.crumb a:hover{color:var(--fg)}
.sec{font-size:12px;font-weight:600;color:var(--dim2);letter-spacing:.03em;margin:26px 0 8px}
.card{border:1px solid var(--line);border-radius:var(--r);background:var(--bg)}
.pad{padding:12px 14px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.stat{padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.stat .l{font-size:12px;color:var(--dim2)}.stat .v{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat .s{font-size:12px;color:var(--dim)}
.stat a.go{margin-top:8px;align-self:flex-start}
.chip{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:99px;border:1px solid var(--line);font-size:11.5px;color:var(--dim);background:var(--bg);white-space:nowrap}
.chip.ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}.chip.time{background:var(--time-bg);color:var(--time);border-color:var(--time-line)}.chip.br{background:var(--brief-bg);color:var(--brief);border-color:var(--brief-line)}
/* סוגי כפתורים: ראשי (מילוי כהה) · משני (מסגרת ורקע) · קישור (טקסט כחול) · צ'יפ סינון */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--r2);border:1px solid #d4d4d4;background:var(--bg2);font-size:13px;font-weight:500;box-shadow:0 1px 0 rgba(0,0,0,.04);transition:.12s}
:root[data-theme=dark] .btn{border-color:#3a3a3a}
.btn:hover{background:#e6e6e6;border-color:#8f8f8f;box-shadow:0 1px 4px rgba(0,0,0,.12)}.btn:active{transform:translateY(1px)}
:root[data-theme=dark] .btn:hover{background:#2a2a2a;border-color:#777}
.btn.pri{background:var(--fg);color:var(--bg);border-color:var(--fg)}.btn.pri:hover{background:#3a3a3a;border-color:#3a3a3a;box-shadow:0 2px 8px rgba(0,0,0,.25)}
:root[data-theme=dark] .btn.pri:hover{background:#cfcfcf;border-color:#cfcfcf}
/* טבלת שיעורים */
.lt{display:grid;grid-template-columns:30px minmax(0,1fr) 96px 64px;align-items:center;column-gap:12px;padding:0 14px;min-height:42px;border-bottom:1px solid var(--line);position:relative}
.lt:last-child{border:0}.lt.h{min-height:30px;font-size:11.5px;color:var(--dim2);background:var(--bg2);font-weight:500;border-radius:var(--r) var(--r) 0 0}
.lt .n{width:22px;height:22px;border-radius:50%;background:var(--bg3);display:grid;place-items:center;font-size:11.5px;font-weight:600}
.lt .dt{font-size:12.5px;color:var(--dim);font-variant-numeric:tabular-nums;white-space:nowrap}
.lt .st{justify-self:end}.lt .st .chip{min-width:52px;justify-content:center}
a.lt:hover{background:var(--bg3)}a.lt:hover::before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:var(--fg)}
a.lt:hover .t{text-decoration:underline;text-underline-offset:3px}
.lt.lock{color:var(--dim2)}.lt.lock .n{background:var(--bg2)}
.chip.cur{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.stat{transition:.12s}a.stat:hover{border-color:var(--dim2)}
.ref a{}
.lnk{color:var(--link);font-size:13px;font-weight:500}.lnk:hover{text-decoration:underline}
.task{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border-bottom:1px solid var(--line)}.task:last-child{border:0}
.task input{margin-top:3px;accent-color:var(--fg)}.task .t{flex:1;min-width:0}.task .t b{font-weight:600}.task .t small{display:block;color:var(--dim);font-size:12.5px}
.task.done .t b{text-decoration:line-through;color:var(--dim2)}
.row{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--line)}.row:last-child{border:0}
.row .n{width:22px;height:22px;border-radius:50%;background:var(--bg3);display:grid;place-items:center;font-size:11.5px;font-weight:600;flex:none}
.row .t{flex:1;min-width:0}.row .d{color:var(--dim2);font-size:12.5px}.row.lock{color:var(--dim2)}a.row:hover{background:var(--bg2)}
.lg{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:24px;align-items:start}
.rail{position:sticky;top:20px}
.ref{padding:11px 13px;border-bottom:1px solid var(--line)}.ref:last-child{border:0}
.ref b{display:block;font-size:13.5px;font-weight:600;line-height:1.35}.ref .by{font-size:12px;color:var(--dim2)}
.ref p{margin:6px 0 0;font-size:12.5px;color:var(--dim)}
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.rc{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--bg);transition:.12s}
.rc:hover{border-color:var(--dim2);box-shadow:0 2px 8px rgba(0,0,0,.08);transform:translateY(-1px)}
.rc .th2{position:relative;aspect-ratio:16/9;display:grid;place-items:center;color:#fff;font-size:22px}
.rc .src{position:absolute;top:6px;inset-inline-start:6px;background:rgba(0,0,0,.65);color:#fff;font-size:10.5px;border-radius:4px;padding:1px 6px}
.rc .dur{position:absolute;bottom:6px;inset-inline-end:6px;background:rgba(0,0,0,.75);color:#fff;font-size:10.5px;border-radius:4px;padding:1px 6px}
.rc .bd{padding:9px 11px}.rc b{display:block;font-size:13px;font-weight:600;line-height:1.35}.rc .by{font-size:11.5px;color:var(--dim2)}.rc p{margin:5px 0 0;font-size:12px;color:var(--dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.snav{position:sticky;top:0;z-index:10;display:flex;gap:4px;background:var(--bg);border-bottom:1px solid var(--line);margin:0 0 4px;padding:8px 0}
.snav a{height:26px;padding:0 10px;border-radius:99px;font-size:12.5px;color:var(--dim);display:inline-flex;align-items:center}.snav a:hover{background:var(--bg3);color:var(--fg)}
.sum li{margin-bottom:3px}.sum{margin:0;padding-inline-start:18px}
/* מציג המצגת */
.deck{overflow:hidden}.stage-w{background:var(--bg3);padding:14px}
.slide{aspect-ratio:16/9;border-radius:6px;background:#15151c;color:#f3f3f3;display:grid;place-items:center;text-align:center;font-weight:600;font-size:clamp(16px,2.6vw,28px);padding:20px;border:1px solid var(--line)}
.slide.lite{background:#fff;color:#111}
.bar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line);flex-wrap:wrap}
.bar .sp{flex:1}.cnt{font-variant-numeric:tabular-nums;color:var(--dim);font-size:12.5px;min-width:44px;text-align:center}
.thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 12px;border-top:1px solid var(--line);background:var(--bg2)}
.th{flex:0 0 96px;cursor:pointer;opacity:.6}.th.on,.th:hover{opacity:1}.th.on .slide{outline:2px solid var(--fg);outline-offset:1px}.th .slide{font-size:8px;padding:4px}
.th small{display:block;font-size:10.5px;color:var(--dim2);margin-top:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:14px;background:var(--bg3)}.grid .slide{font-size:12px;padding:8px}
.grid>div{cursor:pointer}.grid small{display:block;font-size:11px;color:var(--dim2);margin-top:3px}
.note{padding:8px 12px;border:1px solid var(--time-line);background:var(--time-bg);color:var(--time);border-radius:var(--r2);font-size:12.5px;margin-bottom:16px}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.fc{height:26px;padding:0 10px;border-radius:99px;border:1px solid var(--line);background:var(--bg);font-size:12px;color:var(--dim)}.fc.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}

@media(max-width:820px){.app{flex-direction:column}aside{position:static;height:auto;flex:none;flex-direction:row;flex-wrap:wrap;padding:8px;border:0;border-bottom:1px solid var(--line)}.brand,.foot{display:none}.stats{grid-template-columns:1fr}.lg{grid-template-columns:1fr}.rail{position:static}}

/* login + states */
.login{min-height:100vh;display:grid;place-items:center;padding:20px}
.login form{width:min(360px,100%)}.login h1{font-size:20px;margin-bottom:4px}.login p{color:var(--dim);margin:0 0 20px}
.login label{display:block;font-size:12px;color:var(--dim);margin:12px 0 4px;font-weight:500}
.login input{width:100%;height:36px;border:1px solid #d4d4d4;border-radius:var(--r2);padding:0 10px;font:inherit;background:var(--bg);color:var(--fg)}
.login input:focus{outline:none;border-color:var(--fg);box-shadow:0 0 0 1px var(--fg)}
.login .btn{width:100%;margin-top:18px;height:36px}.err{color:#b4232a;font-size:13px;margin-top:10px;min-height:20px}
.empty{padding:14px;color:var(--dim)}
.slide img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;display:block}
.slide.img{padding:0;background:#000}.slide.img img{width:100%;height:100%}

.slide.img{position:relative;overflow:hidden}
.slide .clip{position:absolute;object-fit:cover;pointer-events:none;background:#000}

/* slide navigation: hidden in the page, shown in full screen */
.fsb,.fscnt{display:none}
#deck:fullscreen{display:flex;flex-direction:column;background:#000;border:0;border-radius:0;position:relative}
#deck:fullscreen .stage-w{flex:1;display:grid;place-items:center;background:#000;padding:0;cursor:pointer}
#deck:fullscreen .slide{width:min(100vw,177.78vh);border:0;border-radius:0}
#deck:fullscreen .bar,#deck:fullscreen .thumbs{display:none}
#deck:fullscreen .fsb{display:grid;place-items:center;position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:22px;cursor:pointer;opacity:0;transition:.15s;z-index:3}
#deck:fullscreen:hover .fsb{opacity:.7}#deck:fullscreen .fsb:hover{opacity:1;background:rgba(255,255,255,.28)}
#deck:fullscreen .fsp{inset-inline-start:18px}#deck:fullscreen .fsn{inset-inline-end:18px}
#deck:fullscreen .fscnt{display:block;position:absolute;bottom:14px;left:0;right:0;text-align:center;color:rgba(255,255,255,.55);font-size:13px;font-variant-numeric:tabular-nums;pointer-events:none}
