:root{--app-dock-height:82px}.app-icon{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;margin-inline-end:6px;pointer-events:none}
/* בעלים 7.10: בעברית האייקון אחרי הטקסט — הרווח בצד ההתחלה (ימין), לא בסוף */html:not([lang=en]) button>.app-icon:last-child,html:not([lang=en]) a>.app-icon:last-child{margin-inline-end:0;margin-inline-start:6px}.app-shell{padding-bottom:calc(var(--app-dock-height) + env(safe-area-inset-bottom))!important}.app-shell #mainMenuBtn,.app-shell .simple-page-heading>button,.app-shell>header .clock,.app-shell .app>header .clock,.app-shell #demoTag{display:none!important}.app-shell>header,.app-shell .app>header{padding:10px 16px!important;min-height:54px!important;position:sticky!important;top:0;z-index:100}/* בעלים 7.10: השם והתפקיד צמודים ללוגו — בעברית מימין, באנגלית משמאל (לא בקצה הנגדי של המסך) */.app-shell>header .brand,.app-shell .app>header .brand{width:100%;justify-content:flex-start;gap:14px;flex-wrap:wrap}.app-shell .sesschip{border:0;background:none;padding:0;font-size:.75rem}/* בעלים 6.10: שום תווית לא נחתכת ל-"…" — ברוחב מחשב יש מקום לשם, לתפקיד ולהיקף; התקרה נשארת רק בטלפון (שם מוצגת התווית הקצרה) */@media (max-width:760px){.app-shell #sessName{max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.app-shell #logoutBtn{font-size:.7rem;padding:5px}.app-shell .simple-home{margin-block:16px;padding:20px}.app-shell .simple-home>p{display:none}.app-shell .simple-page-heading{margin:16px 0}.app-pane-off{display:none!important}.app-pane-group{display:block!important}.app-help{border:0;margin:8px 0;color:var(--muted,#aaa);font-size:.8rem}.app-help>summary{cursor:pointer;min-height:32px;padding:6px 0}.app-shell .simple-disclosure{margin:0;border:0;background:none}.app-shell .simple-disclosure>summary{display:none}.app-shell .simple-disclosure>.panel>h3:first-child,.app-shell .simple-disclosure>.pcard>h5:first-child{display:block}.app-shell .view{padding-bottom:20px}.app-shell .panel{border-radius:20px}.app-shell .view>h2,.app-shell .view>.whatis{display:none}.app-shell .simple-home-actions button .app-icon{display:block;margin:0 auto 8px}.app-shell .simple-page-heading h1{font-size:1.25rem}
#appDock{position:fixed;inset-inline:0;bottom:0;z-index:11000;display:flex;justify-content:center;gap:4px;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));height:calc(var(--app-dock-height) + env(safe-area-inset-bottom));box-sizing:border-box;background:var(--panel-a,#18181B)}#appDock[hidden]{display:none}
/* בעלים 14.10: סרגל שממתין לתשובה הראשונה של הדף (app-shell.js) — הרקע במקומו, קבוע למטה; הכפתורים (visibility — נמדדים כרגיל) מופיעים פעם אחת */
#appDock[data-dock-wait]{visibility:hidden}#appDock[data-dock-wait]::after{content:"";position:absolute;inset:0;background:inherit;visibility:visible;pointer-events:none}#appDock button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:1;max-width:150px;min-width:0;min-height:56px;padding:5px 3px;border:0;border-radius:14px;background:none;color:var(--muted,#b6ada0);font:inherit;font-size:.78rem;line-height:1.2;cursor:pointer}#appDock .app-icon{width:24px;height:24px;margin:0;flex-basis:24px}#appDock button[aria-current=page]{color:var(--accent,#c9a468)}@media(hover:hover) and (pointer:fine){#appDock button:not([aria-current]):hover{color:var(--ink,#f4f0e8)}}#appDock button:focus-visible{outline:2px solid var(--accent,#c9a468);outline-offset:-2px}
#appSheet{--x-pad:16px;width:min(600px,calc(100vw - 16px));max-height:82dvh;box-sizing:border-box;border:1px solid var(--line,var(--mf-border-subtle,#45413a));border-radius:24px;background:var(--panel-a,#18181B);color:var(--ink,#f4f0e8);padding:16px;overflow:auto}#appSheet::backdrop{background:#0009;backdrop-filter:blur(3px)}#appSheet>header{position:static;display:flex;flex-direction:row!important;justify-content:space-between;align-items:center;gap:12px;border:0;box-shadow:none;background:none;margin-bottom:12px;padding:0}#appSheet h2{font-size:1.2rem;margin:0}#appSheet>header button{width:44px;height:44px;border:1px solid var(--line,var(--mf-border-subtle,#45413a));border-radius:12px;background:none;color:inherit;font-size:1.6rem}.app-sheet-body{display:grid;gap:8px}.app-sheet-body>button{display:flex;align-items:center;gap:12px;min-height:56px;border:1px solid var(--line,var(--mf-border-subtle,#45413a));border-radius:14px;background:none;color:inherit;font:inherit;text-align:start;padding:12px}.app-sheet-body>.app-menu-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;position:static!important;margin:0!important;width:100%!important;gap:8px!important;overflow:visible!important}.app-menu-grid>button,.app-menu-grid>a{display:flex!important;flex-direction:column;min-height:86px!important;padding:12px!important;gap:8px!important;min-width:0!important;background:var(--bg,#0E0E10)!important;color:var(--ink,#f4f0e8)!important;flex:none!important}.app-menu-grid>[hidden],.app-menu-grid>[style*="display: none"]{display:none!important}.app-menu-grid .menu-icon,.app-menu-grid small{display:none!important}.app-menu-grid .app-icon{margin:0;color:var(--accent,#c9a468)}.app-menu-grid strong{font-size:.9rem!important}.app-menu-grid a{text-decoration:none}.app-shell .boardhead .counters{display:none}.app-shell #daySchedule{height:calc(100dvh - var(--app-dock-height) - env(safe-area-inset-bottom));bottom:calc(var(--app-dock-height) + env(safe-area-inset-bottom))}.app-shell #daySchedule .day-top>button{display:none}.app-shell #daySchedule .day-top{min-height:30px}.app-shell #daySchedule .day-top h1{text-align:start}.app-shell #daySchedule .day-summary{font-size:.7rem}
.app-guard nav .app-icon{display:block;margin:0 auto 4px;width:24px;height:24px}.app-guard nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:58px}.app-guard{padding-bottom:calc(90px + env(safe-area-inset-bottom))}.app-guard nav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.app-shell #previous,.app-shell #current,.app-shell #next{display:none}.app-shell #mainMenu [style*="display:none"]{display:none!important}@media(min-width:900px){#appSheet{margin:auto}.app-shell>.wrap,.app-shell>main{max-width:1100px;margin-inline:auto}}@media(max-width:380px){#appDock button{font-size:.7rem}.app-shell #sessName{max-width:135px}.app-shell>header .brand,.app-shell .app>header .brand{gap:5px}}

.app-home-launchers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.app-home-launchers button{min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-radius:20px;border:1px solid var(--line,var(--mf-border-subtle,#45413a));background:var(--panel-a,#18181B);color:var(--ink,#f4f0e8);font:inherit}.app-home-launchers .app-icon{width:30px;height:30px;margin:0;color:var(--accent,#c9a468)}.app-shell>header,.app-shell .app>header{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px!important}.app-shell>header h1,.app-shell .app>header h1{font-size:1.1rem!important;margin:0!important;flex:1}.app-shell>header #home,.app-shell .app>header #home{font-size:.8rem!important;padding:8px!important;background:none!important;border:0!important;color:var(--accent,#c9a468)!important}.app-shell>header #language,.app-shell>header button,.app-shell .app>header #language,.app-shell .app>header button{padding:8px!important;font-size:.75rem!important;min-height:40px}.app-shell #identity{font-size:.8rem;color:var(--muted,#aaa)}

/* Titles and secondary status must occupy distinct lines when space is tight. */
.app-shell .simple-disclosure>.panel>h3:first-child{display:flex;align-items:flex-start;flex-wrap:wrap;gap:10px;line-height:1.5}
.app-shell .panel h3 .dot{flex:0 0 7px;margin-top:.55em}
.app-shell .panel h3 .side{white-space:normal;overflow-wrap:anywhere;line-height:1.5;max-width:100%}
.app-shell .panel h3{line-height:1.5;gap:10px;align-items:flex-start}
.app-shell .sesschip{min-width:0;max-width:100%;gap:8px}.app-shell #sessName{display:inline-block;min-width:0}
#appDock button:disabled{opacity:.35;cursor:default;pointer-events:none}
@media(max-width:600px){.app-shell .panel h3 .side{flex-basis:100%;margin:0}.app-shell .panel h3{font-size:1rem}.app-shell .panel h3 .dot{display:none}.app-shell .panel{padding:18px}.app-shell .formrow,.app-shell .toolbar{gap:12px;flex-wrap:wrap}.app-shell label{line-height:1.5}.app-shell .panel input,.app-shell .panel select{max-width:100%;min-width:0}}

.app-shell .unode{gap:12px;align-items:center}.app-shell .unode .uinfo{flex:1 1 200px;min-width:min(180px,100%)}.app-shell .unode .uinfo b,.app-shell .unode .uinfo small{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.app-shell .unode .rolechip{flex:0 0 auto}.app-shell .unode .uav{flex-shrink:0}.app-shell .unode .mini{flex:0 1 auto;max-width:100%}
@media(max-width:600px){.app-shell .unode .uinfo{flex:1 1 calc(100% - 60px);min-width:0}.app-shell .unode .mini{flex:1 1 130px}}

/* Standalone workflows: an opaque, full-width title row stays readable on iOS. */
body.standalone-workflow>header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px!important;width:100%;max-width:none;background:var(--bg,#0E0E10);border-bottom:1px solid var(--mf-border-subtle,#49413a);padding:12px max(16px,env(safe-area-inset-left))!important;isolation:isolate}
body.standalone-workflow>header #home{display:none!important}
body.standalone-workflow>header h1{min-width:0;max-width:100%;line-height:1.4!important;overflow-wrap:normal;word-break:normal;font-size:1.15rem!important;margin:0!important}
body.standalone-workflow>header #language{min-width:44px;max-width:130px;justify-self:end;white-space:nowrap}
body.standalone-workflow>header .device-push-controls{display:none!important}
body.standalone-workflow main{min-width:0;width:100%}
body.standalone-workflow #dateLabel,body.standalone-workflow #historyLabel{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-block:20px}
body.standalone-workflow #dateLabel>span,body.standalone-workflow #historyLabel>span{display:block;line-height:1.5}
body.standalone-workflow #weekDate,body.standalone-workflow select#history{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0;font-size:1rem;line-height:1.5}
body.standalone-workflow #weekDate{-webkit-appearance:none;appearance:none;min-height:48px}
body.standalone-workflow #weekDate::-webkit-date-and-time-value{text-align:start;min-height:1.5em}
body.standalone-workflow #weekTitle{font-size:clamp(1.15rem,4.5vw,1.4rem);line-height:1.5}
body.standalone-workflow #notice:empty{display:none}
@media(max-width:360px){body.standalone-workflow>header{gap:8px!important}body.standalone-workflow>header h1{font-size:1rem!important}body.standalone-workflow>header #language{padding:8px!important}}

body.standalone-workflow select#history{-webkit-appearance:none;appearance:none;min-height:48px;padding:12px;padding-inline-end:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%23c9a468' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
html[dir=rtl] body.standalone-workflow select#history{background-position:left 12px center}

body.personal-days{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.personal-days>header{flex:0 0 auto}
.personal-days>main{flex:1;min-height:0;padding:12px!important;display:flex;flex-direction:column;overflow:hidden}
.personal-days #identity{display:none}
.personal-days main>section{flex:1;min-height:0;margin:0;padding:12px;display:flex;flex-direction:column;gap:10px}
.personal-days #weekTitle{margin:0;font-size:1rem!important;flex-shrink:0}
.personal-days #empty{margin:0;font-size:.85rem;line-height:1.4}
.personal-days #days{flex:1;min-height:0;display:grid;grid-template-columns:repeat(var(--personal-columns,1),minmax(0,1fr));gap:10px;overflow:hidden}
.personal-days #days .entry{min-width:0;min-height:0;margin:0;padding:16px;overflow:auto;overscroll-behavior:contain}
.personal-days #days h3{font-size:1.1rem;margin:0 0 12px;line-height:1.4}
.personal-days #days p{font-size:1rem;line-height:1.4;margin:8px 0}
.personal-day-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}
.personal-day-nav button{width:48px;height:44px;padding:0;font-size:1.5rem;background:transparent;color:var(--gold)}
.personal-day-nav span{font-size:.85rem}
.personal-days .schedule-week-picker{width:min(520px,calc(100vw - 24px));max-height:80dvh}
@media(max-height:500px){.personal-days main>section{padding:8px;gap:4px}.personal-days #empty{display:none}.personal-days #days .entry{padding:10px}.personal-days #days p{margin:3px 0}.personal-days #days h3{margin-bottom:4px}}

/* Every authorized destination is visible on entry, including Personal last. */
.app-home-launchers button{min-width:0;padding:18px 12px;line-height:1.35;text-align:center;overflow-wrap:normal;word-break:normal;box-shadow:none;cursor:pointer}
.app-home-launchers button span{max-width:100%;hyphens:none}
.app-home-launchers button:focus-visible{border-color:var(--accent,#c9a468);background:var(--bg,#0E0E10)}
@media(hover:hover) and (pointer:fine){.app-home-launchers button:hover{border-color:var(--accent,#c9a468);background:var(--bg,#0E0E10)}}
@media(min-width:760px){.app-home-launchers{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Employee names open the existing private profile drawer. */
#empBody .employee-profile-name{font:inherit;font-weight:700;min-height:44px;text-align:start;white-space:normal;overflow-wrap:anywhere;max-width:100%;color:var(--accent,#c9a468)}

/* מתג השפה יושב רק בדוק התחתון; העותקים שבכותרות מוסתרים (מסך הכניסה, שאין לו דוק, שומר את שלו) */
body.app-shell:not(.app-guard) header #language,body.app-shell:not(.app-guard) header a.langsw,body.app-shell:not(.app-guard) .app header a.langsw{display:none!important}

/* התפריט הראשי נראה רק אחרי שהמעטפת סידרה אותו (בתוך הגיליון) — לא כרשת כפתורים ישנה לרגע */
body:not(.app-shell) #mainMenu{visibility:hidden}

/* בקשת הבעלים (29.9, לילה): הפעמון ו"התנתק" יורדים מהכותרת אל הסרגל התחתון (פעמון) והגיליון (התנתק).
   הכפתורים בכותרת נשארים ב-DOM כמקור האמת ללחיצה; חלון ההתראות נפתח ממורכז ולא צמוד לפעמון שכבר אינו נראה. */
.app-shell #bellBtn,.app-shell #logoutBtn{display:none!important}
/* חלון ההתראות: נפתח מעל כפתור הפעמון בסרגל ונגלל כמו מגילה (scaleY מהתחתית); בטלפון — ממורכז, אותה אנימציה */
.app-shell .inbox{position:fixed!important;top:auto!important;bottom:calc(var(--app-dock-height,66px) + env(safe-area-inset-bottom) + 10px)!important;left:var(--inbox-left,50%)!important;right:auto!important;width:min(94vw,420px)!important;max-width:none!important;z-index:200!important;display:block!important;transform:translateX(-50%) scaleY(0)!important;transform-origin:50% 100%;opacity:0;visibility:hidden;pointer-events:none;transition:transform .34s cubic-bezier(.2,.8,.2,1),opacity .22s ease,visibility 0s .34s}
.app-shell .inbox.show{transform:translateX(-50%) scaleY(1)!important;opacity:1;visibility:visible;pointer-events:auto;transition:transform .34s cubic-bezier(.2,.8,.2,1),opacity .18s ease,visibility 0s 0s}
@media(max-width:699px){.app-shell .inbox{top:50%!important;bottom:auto!important;left:50%!important;transform:translate(-50%,-50%) scaleY(0)!important;transform-origin:50% 100%}.app-shell .inbox.show{transform:translate(-50%,-50%) scaleY(1)!important}}
@media(prefers-reduced-motion:reduce){.app-shell .inbox{transition:none}}
#appDock button{position:relative}
#appDock .app-badge{position:absolute;top:3px;left:50%;margin-left:6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#c9a468;color:#fff;font-size:.66rem;font-weight:700;line-height:18px;text-align:center;display:none;box-shadow:0 0 0 2px var(--panel-a,#18181B)}
#appDock .app-badge.show{display:inline-block}

/* אייקונים חיים: עולם הכסף (העיגול נבנה, הדולר מופיע) והחתמה (מחוגים זזים) — בסרגל ובכפתורי הבית */
.app-icon-live circle,.app-icon-live path{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
/* מהירות (6.10): העיגול נבנה בסיבוב ושקיפות ולא בציור הקו (stroke-dashoffset). ציור הקו רץ על ה-main thread — style+layout
   של כל הדף בכל פריים: 3,600 פריסות ו-2.4 ש׳ מעבד לדקה במסך הבית בטלפון שעומד. transform/opacity רצים ב-compositor, כמו
   הדולר ומחוגי השעון: 60 פריסות ו-0.3 ש׳ לדקה. אותו קצב (4.2 ש׳) ואותו סדר: העיגול, אז הדולר בתוכו, ושניהם נעלמים. */
.app-icon-money .ico-ring{transform-origin:12px 12px;animation:ico-ring 4.2s ease-in-out infinite}
.app-icon-money .ico-dollar{opacity:0;transform-origin:12px 12px;animation:ico-dollar 4.2s ease-in-out infinite}
@keyframes ico-ring{0%{opacity:0;transform:rotate(-150deg) scale(.7)}30%,90%{opacity:1;transform:none}100%{opacity:0;transform:rotate(-150deg) scale(.7)}}
@keyframes ico-dollar{0%,22%{opacity:0;transform:scale(.4)}40%,88%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.4)}}
/* בעלים 8.10: ההחתמה זזה כמו עולם הכסף — השעון נבנה (אותה תנועה של הטבעת), המחוגים מופיעים ומסתובבים, ובסוף הכול נעלם ומתחיל מחדש */
.app-icon-clockin .ico-face{transform-origin:12px 12px;animation:ico-ring 7s ease-in-out infinite}
.app-icon-clockin .ico-hand{transform-origin:12px 12px}
.app-icon-clockin .ico-minute{animation:ico-clock-min 7s ease-in-out infinite}
.app-icon-clockin .ico-hour{animation:ico-clock-hour 7s ease-in-out infinite}
.app-icon-clockin .ico-pin{animation:ico-dollar 7s ease-in-out infinite;transform-origin:12px 12px}
@keyframes ico-clock-min{0%,22%{opacity:0;transform:rotate(-90deg)}34%{opacity:1;transform:rotate(-90deg)}74%,88%{opacity:1;transform:rotate(270deg)}100%{opacity:0;transform:rotate(270deg)}}
@keyframes ico-clock-hour{0%,22%{opacity:0;transform:rotate(0)}34%{opacity:1;transform:rotate(0)}74%,88%{opacity:1;transform:rotate(30deg)}100%{opacity:0;transform:rotate(30deg)}}
/* בעלים 8.10: כספת המפתחות — המפתח נכנס למנעול ומסתובב, והדלת נפתחת על הציר שלה */
.app-icon-keysafe .ico-hole{fill:currentColor;stroke:none}
.app-icon-keysafe .ico-leaf{transform-origin:5px 12px;animation:ico-door 4.2s ease-in-out infinite}
.app-icon-keysafe .ico-key{transform-origin:16.3px 12px;animation:ico-key 4.2s ease-in-out infinite}
@keyframes ico-key{0%{opacity:0;transform:translateX(5px)}12%{opacity:1;transform:translateX(5px)}34%{opacity:1;transform:translateX(0)}48%{opacity:1;transform:translateX(0) rotate(90deg)}58%,100%{opacity:0;transform:translateX(0) rotate(90deg)}}
@keyframes ico-door{0%,50%{transform:scaleX(1)}68%,88%{transform:scaleX(.32)}100%{transform:scaleX(1)}}
.app-icon-clockin .ico-pin{fill:currentColor}
@keyframes ico-spin{to{transform:rotate(360deg)}}
/* בעלים 27.10: חמשת העיקריים חיים (לולאה של 6 ש׳, אותן תנועות compositor): סידור — הלוח נבנה, השורות ו-✓ מופיעים; סיור — המסלול נבנה והנקודות נדלקות בזו אחר זו; נשק — האקדח מופיע ואחריו ✓ ״מאושר״. ההחתמה הואטה ל-7 ש׳ (בעלים: ״רץ מהר מדי״) */
.app-icon-calendar .ico-frame,.app-icon-route .ico-frame,.app-icon-pistol .ico-gun{transform-origin:12px 12px;animation:ico-ring 6s ease-in-out infinite}
.app-icon-calendar .ico-row,.app-icon-calendar .ico-check,.app-icon-pistol .ico-check,.app-icon-route .ico-dot{opacity:0;transform-origin:12px 12px;animation:ico-dollar 6s ease-in-out infinite}
.app-icon-calendar .ico-row2{animation-delay:.25s}.app-icon-calendar .ico-row3{animation-delay:.5s}.app-icon-calendar .ico-check{animation-delay:.9s}
.app-icon-route .ico-dot{fill:currentColor;stroke:none}.app-icon-route .ico-dot2{animation-delay:.35s}.app-icon-route .ico-dot3{animation-delay:.7s}.app-icon-route .ico-dot4{animation-delay:1.05s}
.app-icon-pistol .ico-check{animation-delay:.8s}
/* בעלים 27.10: מצב חי — לב פועם (scale בלבד, compositor); נשק ואימונים — הדמות נבנית ואז היד המורמת מנופפת (ציר בבסיס הזרוע, כמו במסך הכניסה) */
/* בעלים 27.10 (שלישי): מצב חי — הבניין עולה, החלונות נדלקים אחד-אחד ונכבים אחד-אחד (opacity); נשק ואימונים — מטרה: טבעת נבנית (ico-ring), טבעות פנימיות מופיעות, פגיעה בצד, בול במרכז + גל (transform/opacity) */
.app-icon-building .ico-frame{transform-origin:12px 21px;animation:ico-rise 6s ease-in-out infinite}
.app-icon-building .ico-win{fill:currentColor;stroke:none;opacity:0;animation:ico-win 6s ease-in-out infinite}
.app-icon-building .ico-win1{animation-delay:.5s}.app-icon-building .ico-win2{animation-delay:.8s}.app-icon-building .ico-win3{animation-delay:1.1s}.app-icon-building .ico-win4{animation-delay:1.4s}.app-icon-building .ico-win5{animation-delay:1.7s}.app-icon-building .ico-win6{animation-delay:2s}.app-icon-building .ico-win7{animation-delay:2.3s}
@keyframes ico-rise{0%{opacity:0;transform:translateY(3px)}10%,88%{opacity:1;transform:none}100%{opacity:0;transform:translateY(3px)}}
@keyframes ico-win{0%,4%{opacity:0}12%,58%{opacity:1}66%,100%{opacity:0}}
.app-icon-target .ico-frame{transform-origin:12px 12px;animation:ico-rise 6s ease-in-out infinite}
.app-icon-target .ico-hit{fill:currentColor;stroke:none;opacity:0;transform-origin:12px 9px;animation:ico-hit 6s ease-in-out .9s infinite}
.app-icon-target .ico-pulse{opacity:0;transform-origin:12px 9px;animation:ico-pulse 6s ease-out .9s infinite}
@keyframes ico-hit{0%,8%{opacity:0;transform:scale(.3)}16%,80%{opacity:1;transform:scale(1)}90%,100%{opacity:0;transform:scale(.3)}}
@keyframes ico-pulse{0%,8%{opacity:0;transform:scale(.3)}12%{opacity:.9;transform:scale(.5)}30%,100%{opacity:0;transform:scale(1.4)}}
@media(prefers-reduced-motion:reduce){.app-icon-building .ico-frame,.app-icon-building .ico-win,.app-icon-target .ico-frame,.app-icon-target .ico-hit{animation:none;opacity:1;transform:none}.app-icon-target .ico-pulse{animation:none;opacity:0}}
/* בעלים 27.10: מצב חי — הדמות בקו, חיה: הראש נושם (scale), העיניים ממצמצות (opacity), כף היד מנופפת (rotate בבסיס הזרוע) — הכול compositor */
.app-icon-guardian .ico-head{transform-origin:12px 11.2px;animation:ico-breathe 5.6s ease-in-out infinite}
.app-icon-guardian .ico-eyes{stroke-width:2.3;animation:ico-blink 4.4s steps(1,end) 1.1s infinite}
.app-icon-guardian .ico-paw{transform-origin:19.6px 13.2px;animation:ico-wave 6s ease-in-out .6s infinite}
@keyframes ico-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@keyframes ico-blink{0%,93%{opacity:1}94%,98%{opacity:0}99%{opacity:1}}
@media(prefers-reduced-motion:reduce){.app-icon-guardian .ico-head,.app-icon-guardian .ico-eyes,.app-icon-guardian .ico-paw{animation:none;opacity:1;transform:none}}
.app-icon-heart .ico-heart{transform-origin:12px 12px;animation:ico-beat 1.8s ease-in-out infinite}
@keyframes ico-beat{0%,100%{transform:scale(1)}12%{transform:scale(1.16)}24%{transform:scale(1)}36%{transform:scale(1.1)}55%{transform:scale(1)}}
.app-icon-mascot .ico-body{transform-origin:12px 12px;animation:ico-ring 6s ease-in-out infinite}
.app-icon-mascot .ico-arm{opacity:0;transform-origin:5.4px 13.8px;animation:ico-wave 6s ease-in-out infinite}
@keyframes ico-wave{0%,24%{opacity:0;transform:rotate(-25deg)}34%{opacity:1;transform:rotate(0)}44%{transform:rotate(14deg)}54%{transform:rotate(-6deg)}64%,88%{opacity:1;transform:rotate(0)}100%{opacity:0;transform:rotate(-25deg)}}
@media(prefers-reduced-motion:reduce){.app-icon-heart .ico-heart,.app-icon-mascot .ico-body,.app-icon-mascot .ico-arm{animation:none;opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.app-icon-calendar .ico-frame,.app-icon-route .ico-frame,.app-icon-pistol .ico-gun,.app-icon-calendar .ico-row,.app-icon-calendar .ico-check,.app-icon-pistol .ico-check,.app-icon-route .ico-dot{animation:none;opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){.app-icon-money .ico-ring{animation:none;opacity:1;transform:none}.app-icon-money .ico-dollar{animation:none;opacity:1;transform:none}.app-icon-clockin .ico-hand{animation:none}}
@media(prefers-reduced-motion:reduce){.app-icon-clockin .ico-face,.app-icon-clockin .ico-pin,.app-icon-keysafe .ico-leaf{animation:none;opacity:1;transform:none}.app-icon-clockin .ico-minute{animation:none;opacity:1;transform:none}.app-icon-clockin .ico-hour{animation:none;opacity:1;transform:none}.app-icon-keysafe .ico-key{animation:none;opacity:1;transform:none}}
/* בעלים 5.10: בטלפון הכותרת העליונה קבועה למסך (fixed) מקצה לקצה, ברקע הסרגל התחתון, בלי קו ובלי עיגול — לא "יורדת" עם הגלילה.
   index.html מכין לזה (--hdr-h נמדד ב-ResizeObserver, .app מקבל ריפוד עליון); הכלל למעלה ביטל את זה עם sticky!important והשאיר רווח ריק מעל הכותרת */
@media (max-width:620px){.app-shell>header,.app-shell .app>header{position:fixed!important;top:0!important;left:0;right:0;margin:0;border-radius:0;border:0;box-shadow:0 1px 0 rgba(0,0,0,.25);background:var(--panel-a,#18181b)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
/* השם והתפקיד צמודים ללוגו בצד ההתחלה (ימין בעברית, שמאל באנגלית) — לא נדחקים לקצה הנגדי */
.app-shell>header .brand,.app-shell .app>header .brand{justify-content:flex-start;gap:12px}}
/* סבב 2 (7.10, מאבטח/ת): דף עצמאי בטלפון — התוכן מתחיל מתחת לכותרת הקבועה (הגובה נמדד ב-bar-fit.js; 0 כשהכותרת מוסתרת או בזרימה) */
@media (max-width:620px){body.standalone-workflow>header~main{margin-top:var(--fixed-hdr-h,0px)}}
/* CLOSE X 26.10 (CLOSE): בטלפון כותרת הגיליון שומרת את ריפוד הצד (16px) — השוליים השליליים של .x-head מושכים אותה לקצה */
@media (max-width:620px){#appSheet>header.x-head{padding-inline-start:16px}}
