/* Unified design-system layer: former stages 3–13, preserving cascade order. */
body{font-family:var(--font,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);letter-spacing:-.012em}
.app-topbar{background:var(--surface-glass);backdrop-filter:saturate(150%) blur(18px);-webkit-backdrop-filter:saturate(150%) blur(18px);border-bottom:1px solid var(--hairline)}
.app-sidebar{background:color-mix(in srgb,var(--card) 88%,transparent);border:1px solid var(--hairline);box-shadow:var(--shadow-soft)}
.calendar-heading .title{font-weight:700;letter-spacing:-.035em}.calendar-heading .subtitle{max-width:620px;line-height:1.45}
.legend-item{background:color-mix(in srgb,var(--card) 78%,transparent);backdrop-filter:blur(10px);border-color:var(--hairline)}
.calendar-toolbar{position:relative;z-index:1;padding:8px;border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-glass);backdrop-filter:saturate(150%) blur(16px);-webkit-backdrop-filter:saturate(150%) blur(16px);box-shadow:var(--shadow-soft)}
.segmented-control{padding:3px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg) 55%,var(--card));border:1px solid var(--hairline);box-shadow:var(--inset-recess);display:flex;gap:2px;grid-template-columns:unset}
.segmented-control .view-btn{border:0;background:transparent;box-shadow:none;border-radius:calc(var(--radius-md) - 3px);padding:7px 13px;font-size:12px;min-height:var(--tap-min)}.segmented-control .view-btn.active{background:var(--card);color:var(--text);box-shadow:var(--highlight-top),var(--shadow-micro)}
.view-btn,.nav-item,.tool-link,.mini-action,.primary,.secondary,.mobile-bottom-nav button{transition:transform .16s var(--ease-out),box-shadow .16s var(--ease-out),background-color .16s ease,border-color .16s ease,opacity .16s ease}
.view-btn:active,.nav-item:active,.tool-link:active,.secondary:active,.mobile-bottom-nav button:not(.mobile-create):active{transform:scale(.97)}
.primary:active:not(:disabled){transform:scale(.97) translateY(1px);box-shadow:var(--primary-shadow-active)!important}
.mobile-bottom-nav .mobile-create:active{transform:scale(.97) translateY(1px)}
.nav-item:hover,.tool-link:hover{transform:translateX(2px)}
[dir=ltr] .nav-item:hover,[dir=ltr] .tool-link:hover{transform:translateX(-2px)}
.timeline-hit::after{content:"＋";position:absolute;inset-inline-start:50%;top:50%;transform:translate(-50%,-50%) scale(.86);opacity:0;font-size:15px;font-weight:700;color:var(--accent);transition:opacity .12s ease,transform .12s ease}.timeline-hit:hover::after{opacity:.8;transform:translate(-50%,-50%) scale(1)}
.timeline-block{isolation:isolate}.timeline-block::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 45%);pointer-events:none;z-index:-1}
.month-cell:active,.timeline-block:active{transform:scale(.985)}
.modal{border:1px solid var(--hairline);box-shadow:var(--shadow-modal),var(--highlight-top);background:color-mix(in srgb,var(--card) 97%,transparent);backdrop-filter:saturate(120%) blur(12px);-webkit-backdrop-filter:saturate(120%) blur(12px)}
@media(min-width:701px){.modal-bg{background:rgba(38,31,20,.28)!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important}}
.modal h2{letter-spacing:-.03em}.modal-sub{line-height:1.45}
input,select,textarea{background:var(--surface-inset);box-shadow:var(--inset-recess);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}input:focus,select:focus,textarea:focus{outline:none;background:var(--card);border-color:color-mix(in srgb,var(--accent) 68%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-soft) 70%,transparent)}
.ui-context-bar{display:flex;align-items:center;gap:9px;min-height:38px;margin:-3px 0 12px;padding:7px 10px;border:1px solid var(--hairline);border-radius:12px;background:color-mix(in srgb,var(--accent-soft) 31%,var(--card));color:var(--muted);font-size:12px;line-height:1.35;transition:opacity .18s ease,transform .18s var(--ease-out),background-color .18s ease}.ui-context-bar strong{color:var(--text);font-weight:700}.ui-context-bar.is-live{background:color-mix(in srgb,var(--accent-soft) 58%,var(--card));transform:translateY(-1px)}.ui-context-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:var(--radius-sm);background:var(--card);color:var(--accent);font-weight:700;box-shadow:var(--shadow-soft)}
@media(max-width:980px){.calendar-toolbar{top:auto}.ui-context-bar{font-size:11px}}
@media(max-width:560px){.calendar-toolbar{top:auto;border-radius:13px}.ui-context-bar{margin-top:-2px;margin-bottom:9px}.mobile-bottom-nav{background:color-mix(in srgb,var(--card) 84%,transparent);backdrop-filter:saturate(150%) blur(18px);-webkit-backdrop-filter:saturate(150%) blur(18px);border:1px solid var(--hairline);box-shadow:var(--shadow-raised)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.today-btn{white-space:nowrap;min-width:max-content}

/* Former stages 8–13 */
.app-content,.app-sidebar,.calendar-toolbar,.ui-context-bar,.mobile-bottom-nav{border-color:color-mix(in srgb,var(--border) 52%,transparent)}
.modal{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 30%,transparent) transparent}
.modal::-webkit-scrollbar,.check-list::-webkit-scrollbar{width:7px;height:7px}
.modal::-webkit-scrollbar-thumb,.check-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 26%,transparent);border-radius:99px}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:color-mix(in srgb,var(--accent) 62%,var(--border))!important}
button:disabled{cursor:not-allowed;opacity:.48;transform:none!important;box-shadow:none!important}
.primary,.secondary,.danger{min-height:var(--tap-min)}
.primary{background:var(--primary-gradient);box-shadow:var(--primary-shadow-rest)}
.primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 92%,var(--text));box-shadow:var(--primary-shadow-hover)}
.secondary{box-shadow:var(--highlight-top)}
.secondary:hover:not(:disabled){background:var(--accent-soft);box-shadow:var(--highlight-top),var(--shadow-micro)}
.danger{background:linear-gradient(180deg,color-mix(in srgb,var(--danger) 96%,#fff 4%),var(--danger))}
.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,var(--text))}
.modal-bg,.modal{overscroll-behavior:contain}.modal-x{display:grid;place-items:center;float:none;line-height:1;font-size:21px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-width:36px;min-height:36px}
.modal h2{font-size:22px;line-height:1.2}.modal .actions{padding-top:2px}
.modal .field-label{color:var(--text);letter-spacing:-.01em}.modal .hint{line-height:1.55}
.modal input,.modal select,.modal textarea{background:color-mix(in srgb,var(--card) 88%,#fff);border-color:color-mix(in srgb,var(--border) 76%,transparent)}
.modal textarea{min-height:84px;resize:vertical}.repeat-box,.request-card,.privacy-note,.busy-ack,.change-note-box{box-shadow:var(--highlight-top)}
.side-section>h3{font-size:13px;letter-spacing:-.01em;color:var(--muted);margin-bottom:9px}
#loading.loading{width:max-content;max-width:100%;margin:10px auto 14px;padding:9px 13px;padding-inline-start:38px;position:relative;border:1px solid var(--hairline);border-radius:999px;background:var(--surface-glass);color:var(--muted);font-size:12px;font-weight:600;box-shadow:var(--shadow-soft)}
#loading.loading::before{content:"";position:absolute;inset-inline-start:13px;left:auto;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 24%,transparent);border-top-color:var(--accent);animation:cfSpin .72s linear infinite}
@keyframes cfSpin{to{transform:rotate(360deg)}}
.empty{min-height:72px;display:grid;place-items:center;text-align:center;padding:var(--space-4) var(--space-3)!important;border:1px dashed color-mix(in srgb,var(--border) 78%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg) 26%,transparent);line-height:1.5}
.error,.success{border-radius:var(--radius-md);padding:10px 11px;line-height:1.45;font-size:12px;font-weight:600}.error:not(.hidden),.success:not(.hidden){animation:cfStateIn .18s ease-out}@keyframes cfStateIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
@media(max-width:980px){body.modal-open{overflow:hidden;touch-action:none}body.modal-open .modal{touch-action:pan-y}.shell{grid-template-columns:1fr}.side{display:none}.calendar.week-view{grid-template-columns:repeat(2,minmax(145px,1fr))}.header{align-items:flex-start;flex-direction:column}.nav-arrow,.today-btn,.segmented-control .view-btn{min-height:var(--tap-min)}.mobile-bottom-nav button{min-width:var(--tap-min);min-height:48px}.mobile-bottom-nav{padding-bottom:max(6px,env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr)}.calendar-area{min-width:0}.calendar-toolbar{align-items:stretch}.date-nav{flex-wrap:wrap}}
@media(max-width:700px){.modal-bg{place-items:end center;padding:0;background:rgba(38,31,20,.30);align-items:end}.modal-bg .modal,.modal-bg .modal.wide{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:100%;max-width:none;max-height:min(88dvh,760px);margin:0;padding:var(--space-4) var(--space-4) 0;border-radius:var(--sheet-radius) var(--sheet-radius) 0 0;border-inline:0;border-bottom:0;box-shadow:var(--shadow-sheet);animation:cfSheetIn .22s var(--ease-out);display:flex;flex-direction:column;overflow:hidden}.modal-bg .modal::before{content:"";display:block;flex:0 0 auto;width:38px;height:5px;margin:0 auto 9px;border-radius:99px;background:var(--sheet-handle)}@keyframes cfSheetIn{from{transform:translateY(24px);opacity:.55}to{transform:none;opacity:1}}.modal-x{position:absolute;top:15px;inset-inline-start:14px;left:auto;margin:0;background:color-mix(in srgb,var(--card) 88%,transparent);z-index:6}.modal h2{padding-inline-end:42px;padding-left:0;font-size:21px}.modal-sub{padding-inline-end:2px;margin-bottom:13px}.modal>.modal-body{flex:1 1 auto;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:var(--space-3)}.modal>.actions{position:static;flex:0 0 auto;align-self:stretch;width:auto;max-width:none;box-sizing:border-box;z-index:auto;margin-block:0;margin-inline:calc(-1 * var(--space-4));padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid color-mix(in srgb,var(--border) 48%,transparent);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.modal>.actions>*{min-height:var(--tap-min)}.modal input,.modal select,.modal textarea,.login-card input{font-size:16px!important;min-height:44px}.modal textarea{min-height:92px}.check-row,.weekday-options label{min-height:42px}.check-row input,.weekday-options input{min-width:18px;min-height:18px}.app-content{min-height:calc(100dvh - 154px)}.calendar.month-view{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.month-cell{scroll-snap-align:start}}
@media(max-width:560px){.page{padding:14px 10px 28px}.calendar.week-view{grid-template-columns:1fr}.calendar.month-view{grid-template-columns:repeat(7,minmax(76px,1fr));overflow-x:auto}.month-cell{min-height:92px;padding:5px}.month-item{font-size:10px}.timeline-wrap{height:1060px}.day-card{min-height:1140px}.title{font-size:25px}.range-label{order:-1;width:100%}.time-grid{grid-template-columns:1fr 1fr}.top-actions .secondary{padding:9px 10px}.app-topbar{padding-top:env(safe-area-inset-top);height:calc(54px + env(safe-area-inset-top))}.account-area{min-width:0}.badge{max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-heading .subtitle{line-height:1.45}.legend{overflow-x:auto;flex-wrap:nowrap;max-width:100%;padding-bottom:2px;scrollbar-width:none}.legend::-webkit-scrollbar{display:none}.legend-item{flex:0 0 auto}.calendar-toolbar{padding:7px}.date-nav{gap:5px}.date-nav .nav-arrow{width:44px;height:44px}.today-btn{height:44px;padding-inline:12px}.range-label{font-size:11px;min-width:0}.ui-context-bar{padding:8px 9px;min-height:42px}.calendar.week-view{gap:10px}.day-card{border-radius:15px}.timeline-block{min-width:0}.mobile-bottom-nav button small{font-size:10px}}
@media(max-width:380px){.app-brand-copy strong{font-size:14px}.badge:not(.badge-avatar){display:none}.modal-bg .modal,.modal-bg .modal.wide{padding-inline:var(--space-3)}.modal>.actions{margin-inline:calc(-1 * var(--space-3));padding-inline:var(--space-3)}.time-grid{grid-template-columns:1fr!important}}
@media(max-width:370px){.mobile-tools-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#loading.loading::before{animation-duration:1.4s}.modal-bg .modal{animation:none!important}}
.is-empty-container:empty{min-height:58px;display:grid;place-items:center;border:1px dashed color-mix(in srgb,var(--border) 70%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg) 20%,transparent)}.is-empty-container:empty::after{content:"אין פריטים להצגה כרגע";font-size:12px;color:var(--muted);font-weight:600}
.dot.busy{background:var(--busy)}.dot.shared{background:var(--shared)}.dot.pending{background:var(--pending)}.dot.friend{background:var(--friend)}.dot.google{background:var(--accent)}
.mobile-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.mobile-tool-card{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:16px;padding:14px;text-align:right;min-height:108px;display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;column-gap:9px;align-content:center}.mobile-tool-card>span{grid-row:1/3;width:28px;height:28px;border-radius:var(--radius-sm);background:var(--accent-soft);display:grid;place-items:center;font-weight:700}.mobile-tool-card>strong{font-size:14px}.mobile-tool-card>small{font-size:11px;color:var(--muted);line-height:1.35;margin-top:3px}.mobile-tool-primary{background:color-mix(in srgb,var(--accent-soft) 55%,var(--card))}.mobile-more-close{width:100%;margin-top:12px}
.elevation-section{box-shadow:var(--shadow-soft)}
.elevation-interactive{box-shadow:var(--shadow-micro)}
.elevation-floating{box-shadow:var(--shadow-floating)}
.is-selected-depth{background:var(--selected-bg);box-shadow:var(--selected-elevation);transition:background-color .16s ease,box-shadow .16s ease}
.weekday-options label:has(input:checked){box-shadow:var(--inset-selected),var(--highlight-top-subtle)}
