.mobile-navigation{display:none}.mobile-menu{max-height:calc(100dvh - 24px);width:calc(100% - 16px);max-width:480px;margin:auto auto 8px;border:1px solid var(--border);border-radius:24px;color:var(--text);background:var(--surface);overflow-y:auto;padding:0 0 env(safe-area-inset-bottom)}.mobile-menu::backdrop{background:rgb(17 24 39/.42);backdrop-filter:blur(4px)}.mobile-sheet{width:100%;max-width:540px;max-height:calc(100dvh - 16px);margin:auto auto 0;padding:0;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--border);border-bottom:0;border-radius:26px 26px 0 0;color:var(--text);background:var(--surface)}.mobile-sheet::backdrop{background:rgb(17 24 39/.38);backdrop-filter:blur(3px)}.mobile-sheet-content{padding:12px 20px calc(20px + env(safe-area-inset-bottom))}.mobile-sheet-handle{width:32px;height:4px;margin:0 auto 18px;border-radius:4px;background:var(--border-strong)}.mobile-sheet-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.mobile-sheet-heading h2{font-size:23px;line-height:1.3;font-weight:650;letter-spacing:-.035em}.mobile-sheet-heading p{margin-top:5px;color:var(--text-3);font-size:13px}.mobile-sheet-close{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--surface-2)}.mobile-action-section-label{margin:20px 0 8px;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.mobile-action-hint{margin-bottom:8px;border-radius:12px;padding:12px;font-size:13px;line-height:1.5;background:var(--canvas);color:var(--text-2)}.mobile-action-row{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;padding:12px 0;text-align:left;border-radius:12px}.mobile-action-row>span:nth-child(2){min-width:0;flex:1}.mobile-action-row strong{display:block;font-size:14px;font-weight:600;line-height:1.45}.mobile-action-row>span:nth-child(2)>span{display:block;margin-top:3px;font-size:12px;line-height:1.45;color:var(--text-3)}.mobile-action-row>svg{flex-shrink:0;color:var(--text-3)}.mobile-action-row:active:not(:disabled){background:var(--canvas)}.mobile-action-row:disabled{opacity:.5;cursor:not-allowed}.mobile-action-icon{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:13px;color:var(--accent-text);background:var(--accent-soft)}.mobile-action-icon.is-neutral{color:var(--text-2);background:var(--surface-2)}.mobile-action-undo{margin-top:12px;border-top:1px solid var(--border);border-radius:0}.mobile-sharing-action{padding-top:12px;border-top:1px solid var(--border);margin-top:16px}.mobile-sharing-action>button{width:100%;min-height:52px}.mobile-demo-cta{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:12px;border-radius:12px;background:var(--accent-soft);color:var(--accent-text);font-size:14px;font-weight:600}@media (prefers-reduced-motion:no-preference){.mobile-menu[open],.mobile-sheet[open]{animation:mobile-sheet-enter .2s cubic-bezier(.2,.8,.2,1)}.mobile-agenda-cards{animation:mobile-day-enter .16s ease-out}}@keyframes mobile-sheet-enter{0%{opacity:.5;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes mobile-day-enter{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1023px) and (max-height:500px),(max-width:767px){.app-shell{height:auto;min-height:100dvh;overflow:visible;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.app-header{position:sticky;top:0;z-index:30}.app-header nav{display:none}.app-header>div{min-height:64px;flex-wrap:nowrap;gap:8px;padding:6px 12px}.app-header>div>div:first-child{flex-shrink:1}.app-header>div>div:first-child p{max-width:170px}.app-header-actions>button{padding-inline:10px;font-size:12px}.mobile-demo-label{flex-shrink:0;border-radius:5px;background:var(--accent-soft);color:var(--accent-text);padding:3px 5px;font-size:10px;font-weight:650}.demo-banner{gap:8px;flex-wrap:nowrap;padding:2px 12px;min-height:44px}.demo-banner>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.demo-banner a{background:transparent;color:var(--accent-text);padding:0 4px;min-height:44px;font-weight:600}.app-main,.app-view,.app-workspace{display:block;flex:none;overflow:visible}.app-view{outline-offset:-2px}.app-view>div:first-child{max-width:100%}.mobile-planning-header{padding:10px 16px 14px;border-bottom:1px solid var(--border);background:var(--surface)}.mobile-screen-heading{min-width:0}.mobile-screen-heading p{display:flex;align-items:center;gap:8px;max-width:160px;font-size:11px;color:var(--text-3);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mobile-screen-heading h1{font-size:24px;font-weight:650;letter-spacing:-.04em;line-height:1.2}.mobile-actions-trigger{display:flex;min-height:44px;align-items:center;gap:7px;border:1px solid var(--border);border-radius:12px;padding:0 12px;color:var(--text-2);font-size:13px;font-weight:550}.mobile-week-switcher{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:4px 0 10px}.mobile-week-switcher p{font-size:16px;font-weight:550;letter-spacing:-.015em}.mobile-week-switcher>div{display:flex;flex-shrink:0;gap:2px}.mobile-week-switcher button{display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:50%;background:var(--canvas)}.mobile-site-filter{margin-top:10px;min-width:0}.mobile-site-filter-heading{display:flex;align-items:center;justify-content:space-between;min-height:40px;gap:10px;font-size:12px;color:var(--text-2)}.mobile-site-filter-heading>span{font-weight:550}.mobile-site-filter-heading span[role=status]{margin-left:5px;color:var(--text-3);font-weight:400;font-variant-numeric:tabular-nums}.mobile-site-filter-heading button{min-height:44px;padding-inline:4px;color:var(--accent-text);font-size:12px;font-weight:550}.mobile-site-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.mobile-site-chip{position:relative;display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;padding:9px 10px;border:1px solid var(--border);border-radius:12px;background:var(--canvas);color:var(--text-3);cursor:pointer}.mobile-site-chip.is-selected{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.mobile-site-chip:has(:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.mobile-site-chip:active{background:var(--accent-soft)}.mobile-site-chip input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.mobile-site-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%}.mobile-site-name{min-width:0;flex:1;overflow-wrap:anywhere;font-size:12px;line-height:1.4;font-weight:500}.mobile-site-check{display:grid;place-items:center;width:16px;height:16px;flex-shrink:0;border-radius:50%;border:1px solid var(--border-strong)}.mobile-site-chip.is-selected .mobile-site-check{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.mobile-planning-status{display:flex;align-items:center;gap:6px;color:var(--text-2);font-size:12px;line-height:1.5}.mobile-planning-status:not(:empty){margin-top:12px}.app-alerts{position:fixed;inset:0 0 0 auto;height:100dvh;z-index:60;box-shadow:-8px 0 30px rgb(17 24 39/.15)}.app-alerts.pointer-events-none{box-shadow:none}.app-alerts>aside{max-width:100vw;padding-bottom:env(safe-area-inset-bottom)}.mobile-navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;inset:auto 0 0;z-index:40;border-top:1px solid var(--border);background:var(--surface);padding:6px 8px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -5px 22px rgb(23 35 56/.04)}.mobile-nav-item{display:flex;min-height:56px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:12px;color:var(--text-3);font-size:11px;font-weight:500}.mobile-nav-icon{display:grid;width:48px;height:30px;place-items:center;border-radius:11px}.mobile-nav-item.is-current{color:var(--accent-text);font-weight:650}.mobile-nav-item.is-current .mobile-nav-icon{background:var(--accent-soft)}.mobile-agenda{padding:20px 16px 94px}.mobile-agenda-heading{margin-bottom:16px}.mobile-agenda-heading h2{font-size:20px;font-weight:600;letter-spacing:-.025em}.mobile-agenda-heading h2:first-letter{text-transform:uppercase}.mobile-agenda-heading p{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:5px;font-size:12px;color:var(--text-3)}.mobile-day-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.mobile-day{display:flex;min-height:64px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:13px;color:var(--text-2)}.mobile-day>span:first-child{font-size:11px}.mobile-day strong{font-size:18px;font-weight:600}.mobile-day.is-current{color:var(--on-accent);background:var(--accent);box-shadow:0 4px 10px rgb(38 91 217/.18)}.mobile-day-dot{width:4px;height:4px;border-radius:50%;background:currentColor;visibility:hidden}.mobile-day.is-current .mobile-day-dot{visibility:visible}.mobile-site-card{box-shadow:0 2px 5px rgb(17 24 39/.025)}.mobile-site-card-heading{display:flex;align-items:center;gap:10px;padding:14px;border-bottom:1px solid var(--border)}.mobile-site-card-heading>span:last-child{padding:4px 7px;background:var(--canvas);font-size:11px;color:var(--text-3)}.mobile-site-card-icon{display:grid;width:32px;height:36px;flex-shrink:0;place-items:center;border-radius:10px}.mobile-site-card-icon>span{width:8px;height:8px;border-radius:50%;background:currentColor}.mobile-shift{display:flex;align-items:center;gap:10px;width:100%;min-height:82px;padding:14px;text-align:left}.mobile-shift:active:not(:disabled){background:var(--surface-2)}.mobile-shift:disabled{cursor:default}.mobile-person-avatar{display:grid;width:40px;height:40px;flex-shrink:0;place-items:center;border-radius:50%;background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:550}.mobile-shift-hours{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-top:4px;font-size:16px;font-weight:500;font-variant-numeric:tabular-nums}.mobile-shift-hours>span{font-size:12px;font-weight:400;color:var(--text-3)}.mobile-add-shift{display:flex;align-items:center;justify-content:center;gap:8px;position:fixed;bottom:calc(84px + env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right));z-index:35;min-height:52px;padding:0 18px;border:1px solid rgb(255 255 255/.2);border-radius:18px;background:var(--accent);color:var(--on-accent);font-size:14px;font-weight:600;box-shadow:0 4px 18px rgb(22 55 130/.22)}.mobile-add-shift:disabled{opacity:.5}.mobile-shift-form>div.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.mobile-shift-form>div.grid>div:nth-child(-n+3){grid-column:1/-1}.mobile-shift-form>div.grid label{font-size:13px}.mobile-shift-form :is(input,select){min-height:52px!important;border-radius:12px;background:var(--canvas)}.mobile-shift-form>div:last-child{flex-direction:column;margin-top:24px}.mobile-shift-form button[type=submit]{min-height:52px;font-size:15px;border-radius:13px}.mobile-shift-form button[type=button]{min-height:44px;border:0}.mobile-edit-duration{display:flex;align-items:center;gap:8px;padding:10px 0 0;color:var(--text-3);font-size:13px}.mobile-edit-duration strong{margin-left:auto;color:var(--text);font-weight:600}.mobile-remove-shift{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.mobile-remove-shift>button{display:flex;min-height:44px;width:100%;align-items:center;justify-content:center;gap:8px;color:var(--danger);font-size:13px}.mobile-remove-shift p{font-size:14px;font-weight:600}.mobile-remove-shift span{display:block;margin-top:4px;font-size:12px;color:var(--text-3)}.mobile-remove-shift div>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.mobile-remove-shift div>div>button{min-height:48px;padding:8px;border-radius:12px;font-size:13px;font-weight:550}.mobile-remove-shift div>div>button:first-child{background:var(--canvas)}.mobile-remove-shift div>div>button:last-child{background:var(--danger-soft);color:var(--danger)}.mobile-agenda :is(button,summary){scroll-margin-bottom:170px;scroll-margin-top:80px}.mobile-proposal{margin:16px 16px 0;padding:16px;border:1px solid var(--border-strong);border-radius:18px;background:var(--surface)}.mobile-proposal-heading{display:flex;align-items:center;gap:10px;margin-bottom:10px}.mobile-proposal-heading>span{display:grid;width:36px;height:36px;flex-shrink:0;place-items:center;border-radius:11px;background:var(--accent-soft);color:var(--accent-text)}.mobile-proposal h2{font-size:17px;font-weight:600;line-height:1.3}.mobile-proposal>p{margin-top:8px;font-size:13px;line-height:1.5;color:var(--text-2)}.mobile-proposal>p.mobile-proposal-gaps{color:var(--warn)}.mobile-proposal>p.mobile-proposal-help{font-size:12px}.mobile-proposal-actions{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:16px}.mobile-proposal-actions button{display:flex;min-height:48px;align-items:center;justify-content:center;gap:6px;border-radius:12px;padding:10px;font-size:12px;font-weight:600}.mobile-proposal-actions button:first-child{background:var(--canvas);color:var(--text-2)}.mobile-proposal-actions button:last-child{background:var(--accent);color:var(--on-accent)}.hours-metrics>div{padding:12px}.hours-metrics>div>p:nth-child(2){font-size:22px}.inventory-save-bar{bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mobile-summary-metrics>div{min-width:0;padding:12px 8px}.mobile-summary-metrics>div>:first-child{font-size:23px}.mobile-summary-metrics>div>p{font-size:11px;line-height:1.4}.mobile-summary-metrics>div>p:last-child{display:none}.mobile-rule-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mobile-rule-metrics>button{min-width:0;padding:12px 8px}.mobile-rule-metrics>button>span:first-child{min-height:32px;font-size:11px;line-height:1.4;gap:3px}.mobile-rule-metrics>button>span:first-child svg,.mobile-rule-metrics>button>span:last-child{display:none}.shift-time-bounds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.shift-time-bounds>span:nth-child(2){display:none}.shift-time-bounds>span:last-child{grid-column:1/-1;margin:0;justify-self:end}.shift-time-bounds>span:not(:last-child){justify-content:space-between}.shift-time-bounds button{min-width:36px;padding:4px}.shift-time-bounds .nums{min-width:40px;padding:0}body:has(.app-shell) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-width:0;max-width:100%;font-size:16px}body:has(.app-shell) [role=dialog]{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}body:has(.app-shell) [role=dialog] button{min-height:44px}body:has(.app-shell) [role=dialog] button[aria-label=Fermer]{min-width:44px}body:has(.app-shell) [role=dialog] :is(input,select){min-height:44px}}@media (min-width:640px) and (max-width:1023px) and (max-height:500px){.mobile-planning-header{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.mobile-week-switcher{margin:0;grid-column:1/-1}.mobile-day-picker,.mobile-planning-status,.mobile-site-filter{grid-column:1/-1}.mobile-day{min-height:56px}.mobile-site-options{grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-site-filter{display:grid;grid-template-columns:116px 1fr;gap:12px}.mobile-site-filter-heading{align-items:flex-start;flex-direction:column;gap:0}.mobile-site-filter-heading button{min-height:32px}.mobile-sheet{max-height:calc(100dvh - 8px)}.mobile-shift-form>div.grid>div:nth-child(-n+3){grid-column:auto}.mobile-shift-form>div.grid>div:nth-child(3){grid-column:1/-1}}@media (max-width:359px){.mobile-day-picker{gap:0;margin-inline:-6px}.mobile-planning-header{padding-left:6px;padding-right:6px}.mobile-week-switcher{padding-inline:6px}.mobile-site-name{font-size:12px}.mobile-site-chip{padding-inline:8px;gap:6px}.mobile-agenda{padding-left:10px;padding-right:10px}.mobile-sheet-content{padding-inline:16px}}