.stip-quick-switch{position:fixed!important;z-index:980;left:50%!important;right:auto!important;bottom:max(10px,env(safe-area-inset-bottom))!important;transform:translateX(-50%)!important;width:min(210px,calc(100% - 32px))!important;height:58px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;display:grid!important;grid-template-columns:repeat(2,1fr)!important;align-items:center!important;justify-items:center!important;pointer-events:none!important}.stip-quick-switch button,.stip-quick-switch a{pointer-events:auto!important;position:relative!important;width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;padding:0!important;border:1px solid rgba(16,66,82,.12)!important;border-radius:50%!important;background:rgba(255,255,255,.97)!important;color:#17586a!important;box-shadow:0 6px 18px rgba(17,55,70,.14)!important;display:grid!important;place-items:center!important;text-decoration:none!important;transition:transform .14s ease,background .16s ease,color .16s ease,box-shadow .16s ease!important}.stip-quick-switch button:active,.stip-quick-switch a:active{transform:scale(.94)!important}.stip-quick-switch .qs-icon{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;color:inherit!important}.stip-quick-switch .qs-icon svg{width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important}.stip-quick-switch [data-qs="favorites"] .qs-icon svg,.stip-quick-switch [data-u="favorites"] .qs-icon svg{fill:rgba(21,152,170,.08)!important}.stip-quick-switch small,.stip-quick-switch strong{display:none!important}.stip-quick-switch button.is-current,.stip-quick-switch a.is-current{background:#0b4169!important;color:#fff!important;box-shadow:0 8px 22px rgba(11,65,105,.24)!important}.stip-quick-switch button:disabled,.stip-quick-switch a[aria-disabled="true"]{opacity:.3!important;pointer-events:none!important}
body.stip-quick-connected{--stip-quick-clearance:calc(72px + env(safe-area-inset-bottom));box-sizing:border-box!important}.stip-quick-connected>main,.stip-quick-in-app #appView,.stip-public-preview .login-screen,.login-screen{padding-bottom:var(--stip-quick-clearance,calc(72px + env(safe-area-inset-bottom)))!important}.stip-has-dock .stip-context-dock{bottom:calc(72px + env(safe-area-inset-bottom))!important}.stip-has-dock #appView{padding-bottom:calc(178px + env(safe-area-inset-bottom))!important}.existing-access-visible .code-form{grid-template-columns:1fr!important}.existing-access-visible .code-form button[type="submit"]{width:100%!important;min-height:58px!important;font-size:.92rem!important;font-weight:950!important}.existing-access-visible .stip-code-wrap #accessCode.stip-code-visible{min-height:64px!important;padding:10px 68px 10px 16px!important;text-align:center!important;font-size:1.45rem!important;line-height:1!important;font-weight:950!important;letter-spacing:.08em!important;color:#124654!important}.existing-access-visible .stip-code-wrap #accessCode.stip-code-visible::placeholder{font-size:1rem!important;font-weight:800!important;letter-spacing:0!important}.stip-public-preview .existing-access-visible{outline:2px solid rgba(17,152,173,.12)}
.stip-favorites-open{overflow:hidden!important}.stip-favorites-panel{position:fixed;inset:0;z-index:970;display:grid;align-items:end}.stip-fav-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;border-radius:0!important;background:rgba(7,33,45,.42)!important;box-shadow:none!important}.stip-fav-sheet{position:relative;z-index:1;width:min(560px,100%);max-height:min(76vh,680px);overflow:auto;margin:0 auto;padding:10px 16px calc(90px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0;background:#f8fcfd;box-shadow:0 -20px 55px rgba(7,33,45,.22);color:#123f50}.stip-fav-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 12px}.stip-fav-sheet header small{display:block;font-size:.58rem;font-weight:950;letter-spacing:.12em;color:#1598aa}.stip-fav-sheet header h2{margin:3px 0 0;font-size:1.15rem}.stip-fav-close{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border:0!important;border-radius:50%!important;background:#e8f2f4!important;color:#194757!important;box-shadow:none!important;font-size:1.35rem!important}.stip-fav-sheet section{margin:0 0 12px}.stip-fav-sheet h3{margin:0 0 6px 3px;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#658089}.stip-fav-row{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:7px;margin:6px 0}.stip-fav-open,.stip-fav-pin{position:static!important;width:auto!important;height:auto!important;min-width:0!important;min-height:48px!important;border-radius:14px!important;box-shadow:none!important}.stip-fav-open{border:1px solid #d8e7ea!important;background:#fff!important;color:#153f4f!important;padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;text-align:left!important;font-weight:850!important}.stip-fav-open b{font-size:1.15rem;color:#7c979f}.stip-fav-pin{border:1px solid #d8e7ea!important;background:#fff!important;color:#1598aa!important;font-size:1.35rem!important}.stip-fav-pin.is-pinned{background:#e7f7f9!important}.stip-fav-empty{margin:4px 2px 10px;padding:12px;border:1px dashed #cddfe3;border-radius:14px;color:#6f878f;background:#fff;font-size:.78rem}.stip-fav-sheet details{border-top:1px solid #dbe7ea;padding-top:9px}.stip-fav-sheet summary{cursor:pointer;list-style:none;padding:9px 3px;font-size:.78rem;font-weight:850;color:#315a68}.stip-fav-sheet summary::-webkit-details-marker{display:none}.stip-fav-all{padding-top:3px}
@media(max-width:370px){.stip-quick-switch{width:min(190px,calc(100% - 24px))!important;height:52px!important}.stip-quick-switch button,.stip-quick-switch a{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important}.stip-quick-switch .qs-icon svg{width:23px!important;height:23px!important}.stip-fav-sheet{padding-left:12px;padding-right:12px}}

/* quick-artwork-restore-20260919 */
.stip-quick-switch{height:68px!important}
.stip-quick-switch button,.stip-quick-switch a{overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important}
.stip-quick-switch [data-qs="favorites"],.stip-quick-switch [data-u="favorites"]{width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important}
.stip-quick-switch .qs-icon{overflow:hidden!important;border-radius:50%!important;filter:drop-shadow(0 7px 14px rgba(18,55,70,.14))}
.stip-quick-switch .qs-icon img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit!important}
.stip-quick-switch .qs-icon svg{display:none!important}
.stip-quick-switch button.is-current,.stip-quick-switch a.is-current{background:transparent!important;color:inherit!important;box-shadow:none!important}
.stip-quick-switch button.is-current .qs-icon,.stip-quick-switch a.is-current .qs-icon{filter:drop-shadow(0 8px 16px rgba(11,65,105,.28));transform:translateY(-1px)}
@media(max-width:370px){
  .stip-quick-switch [data-qs="favorites"],.stip-quick-switch [data-u="favorites"]{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important}
  }

/* Final connected quick navigation: only Home + Favorites. */
.stip-quick-switch{grid-template-columns:1fr!important;width:74px!important}
.stip-fav-first>.stip-fav-empty{margin-bottom:12px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--stip-muted)!important;font-size:.86rem!important;line-height:1.4!important}
.stip-fav-first details{border-top:0!important;padding-top:0!important}
.stip-fav-first summary{min-height:50px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:14px!important;background:var(--stip-accent)!important;color:#fff!important;font-weight:950!important;box-shadow:var(--stip-shadow)!important}
.stip-fav-sheet details:not([open]) summary{border:1px solid var(--stip-line)!important;background:var(--stip-surface)!important;color:var(--stip-ink)!important;box-shadow:var(--stip-shadow-soft)!important}
.stip-fav-pin{transition:transform var(--stip-motion),background var(--stip-motion),color var(--stip-motion)!important}
.stip-fav-pin:active{transform:scale(.94)!important}

.stip-fav-feedback{
  margin:0 0 10px;
  padding:9px 11px;
  border:1px solid var(--stip-line);
  border-radius:12px;
  background:var(--stip-accent-soft);
  color:var(--stip-ink);
  font-size:.78rem;
  font-weight:900;
  text-align:center;
}

/* Navigation basse finale : favoris uniquement. */
.stip-quick-switch{grid-template-columns:1fr!important;width:74px!important;justify-items:center!important}

/* quick-switch-no-content-cover-20260920 */
.stip-quick-switch{
 left:auto!important;
 right:10px!important;
 bottom:max(10px,env(safe-area-inset-bottom))!important;
 transform:none!important;
 width:58px!important;
 grid-template-columns:1fr!important;
}

/* favorites-panel-wide-card-20260920 */
.stip-fav-sheet{
  width:min(620px,calc(100% - 24px))!important;
  max-height:min(72%,680px)!important;
  left:50%!important;
  right:auto!important;
  bottom:12px!important;
  transform:translateX(-50%)!important;
  border-radius:24px!important;
  padding:16px!important;
}
.stip-fav-sheet header{padding:2px 2px 12px!important}
.stip-fav-sheet header small{font-size:.68rem!important}
.stip-fav-sheet header h2{font-size:1.45rem!important}
.stip-fav-sheet h3{font-size:.76rem!important;margin-bottom:8px!important}
.stip-fav-row{grid-template-columns:minmax(0,1fr) 52px!important;gap:8px!important;margin:7px 0!important}
.stip-fav-open,.stip-fav-pin{min-height:54px!important}
.stip-fav-open{font-size:1rem!important;font-weight:900!important}
.stip-fav-sheet summary{min-height:48px!important;font-size:.9rem!important}
@media(max-width:430px){
 .stip-fav-sheet{width:calc(100% - 16px)!important;bottom:8px!important;padding:14px!important;border-radius:22px!important}
}

/* STIP application library — personal screen + internal store */
.stip-app-empty-state{min-height:46vh;display:grid;place-items:center;align-content:center;gap:12px;padding:28px 18px;text-align:center;color:#123f50}
.stip-empty-orb{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;background:#e9f7f9;color:#0798b5;font-size:2.2rem;font-weight:500}
.stip-app-empty-state h2,.stip-my-apps h2,.stip-app-store h2{margin:0;color:#0d4257;font-size:clamp(1.65rem,6vw,2.25rem);letter-spacing:-.035em}
.stip-app-empty-state p{max-width:390px;margin:0;color:#6f858e;line-height:1.45;font-size:.9rem}
.stip-store-browse{min-height:48px!important;padding:0 18px!important;border:0!important;border-radius:15px!important;background:#0798b5!important;color:#fff!important;font-weight:950!important;box-shadow:0 9px 20px rgba(7,152,181,.18)!important}
.stip-my-apps,.stip-app-store{padding:4px 2px 20px;color:#123f50}
.stip-my-apps>header,.stip-app-store>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.stip-my-apps header small,.stip-app-store header small,.stip-store-feature small,.stip-store-card small{display:block;color:#0798b5;font-size:.64rem;font-weight:950;letter-spacing:.1em}
.stip-my-app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.stip-my-app{min-width:0!important;min-height:128px!important;padding:12px 8px!important;border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:0 8px 24px rgba(15,65,82,.08)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:9px!important;color:#123f50!important}
.stip-my-app strong{font-size:.78rem;line-height:1.15;text-align:center}
.stip-store-icon{width:62px;height:62px;flex:0 0 62px;border-radius:18px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#10a8c3,#0c6ea5);color:#fff;font-size:1.05rem;font-weight:950;letter-spacing:-.04em;box-shadow:0 8px 18px rgba(13,91,122,.18)}
.stip-store-icon>img{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}
.stip-store-icon>svg{display:block;width:46%;height:46%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.stip-store-icon-personal,.stip-store-icon-tomorrow,.stip-store-icon-team,.stip-store-icon-dates,.stip-store-icon-places,.stip-store-icon-newagent,.stip-store-icon-access,.stip-store-icon-admin{background:transparent;box-shadow:none}
.stip-store-icon-contacts{background:linear-gradient(145deg,#5a9ff0,#4965d5)}
.stip-store-icon-admin{background-color:#314b5b}
.stip-store-icon-places{background-color:transparent}
.stip-store-icon-assistant{background:linear-gradient(145deg,#13b4cb,#0a8ab7)}
.stip-store-icon-activity{background:linear-gradient(145deg,#ff6d72,#e24d5f)}
.stip-store-icon-responsable{background:linear-gradient(145deg,#5b7c93,#314a5d)}
.stip-store-icon-resp_tracking{background:linear-gradient(145deg,#55d45d,#29a947)}
.stip-store-icon-resp_evaluation{background:linear-gradient(145deg,#2a96e2,#6558db)}
.stip-store-icon-resp_official{background:linear-gradient(145deg,#397fdc,#5d55d8)}
.stip-store-icon-resp_requests{background:linear-gradient(145deg,#9b78ee,#7755dd)}
.stip-store-icon-resp_directory{background:linear-gradient(145deg,#f2a04a,#de772b)}
.stip-store-icon-resp_agenda{background:linear-gradient(145deg,#1da8c6,#0b8fa7)}
.stip-store-icon-newagent{background-color:transparent}
.stip-store-back{width:44px!important;height:44px!important;min-width:44px!important;border:0!important;border-radius:14px!important;background:#edf5f6!important;color:#0d4257!important;font-size:1.65rem!important}
.stip-app-store>header{justify-content:flex-start}.stip-app-store>header p{margin:4px 0 0;color:#72858c;font-size:.78rem}
.stip-store-feature{margin:0 0 18px;padding:20px;border-radius:22px;background:linear-gradient(135deg,#e9f8fb,#f7fbfc);border:1px solid #d5eaee}
.stip-store-feature strong{display:block;margin-top:5px;color:#0d4257;font-size:1.25rem}.stip-store-feature p{margin:5px 0 0;color:#657c85;font-size:.82rem}
.stip-store-list{display:grid;gap:10px}.stip-store-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid #dce9ec;border-radius:20px;background:#fff}
.stip-store-main{min-width:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;text-align:left!important;color:#123f50!important}
.stip-store-card strong{display:block;margin:2px 0;font-size:.93rem}.stip-store-card em{display:block;color:#72858c;font-size:.7rem;line-height:1.25;font-style:normal}
.stip-store-add{min-width:76px!important;min-height:36px!important;padding:0 11px!important;border:0!important;border-radius:999px!important;background:#e8f7f9!important;color:#087f94!important;font-size:.72rem!important;font-weight:950!important}
.stip-store-add.is-added{background:#eef2f3!important;color:#6b7d84!important}
@media(max-width:430px){.stip-my-app-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.stip-my-app{min-height:116px!important}.stip-store-icon{width:56px;height:56px;flex-basis:56px}.stip-store-main{grid-template-columns:56px minmax(0,1fr)!important}.stip-store-card{gap:6px;padding:9px}.stip-store-add{min-width:68px!important;padding:0 8px!important}}

/* Store selection controls: immediate add/remove affordance */
.stip-store-add{min-width:82px!important;min-height:44px!important;padding:0 10px!important;display:grid!important;grid-template-columns:24px auto!important;align-items:center!important;justify-content:center!important;gap:4px!important;background:#e9f8ef!important;color:#16864b!important;border:1px solid #bfe8cf!important}
.stip-store-add>span{font-size:1.65rem!important;line-height:1!important;font-weight:700!important}
.stip-store-add>strong{font-size:.69rem!important;font-weight:950!important}
.stip-store-add.is-added{background:#fff0f0!important;color:#c74343!important;border-color:#f1caca!important}
.stip-store-card.is-selected{border-color:#dce6e8!important}
@media(max-width:430px){.stip-store-add{min-width:72px!important;grid-template-columns:1fr!important;gap:0!important}.stip-store-add>span{font-size:1.8rem!important}.stip-store-add>strong{display:none!important}}

.stip-code-mask{position:absolute;z-index:2;left:16px;right:68px;top:50%;transform:translateY(-50%);pointer-events:none;text-align:center;color:#124654;font-size:1.42rem;font-weight:950;line-height:1;letter-spacing:.18em;white-space:nowrap}.existing-access-visible .stip-code-wrap #accessCode.stip-code-masked{color:transparent!important;-webkit-text-fill-color:transparent!important;caret-color:#124654!important;text-shadow:none!important}.existing-access-visible .stip-code-wrap #accessCode.stip-code-revealed{color:#124654!important;-webkit-text-fill-color:#124654!important}.existing-access-visible .stip-code-wrap #accessCode.stip-code-masked::placeholder{color:#91a1a7!important;-webkit-text-fill-color:#91a1a7!important}.existing-access-visible .stip-code-wrap #accessCode{min-height:64px!important;padding:10px 68px 10px 16px!important;text-align:center!important;font-size:1.45rem!important;line-height:1!important;font-weight:950!important;letter-spacing:.08em!important}.existing-access-visible .stip-code-wrap #accessCode::placeholder{font-size:1rem!important;font-weight:800!important;letter-spacing:0!important}

/* Login code caret: native caret is based on the hidden password glyphs, so keep it invisible and draw the caret after the visible star mask. */
.existing-access-visible .stip-code-wrap #accessCode.stip-code-masked{caret-color:transparent!important}
.existing-access-visible .stip-code-wrap #accessCode.stip-code-masked:focus + .stip-code-mask::after{content:"";display:inline-block;width:2px;height:1.05em;margin-left:.09em;vertical-align:-.10em;background:#124654;border-radius:2px;animation:stipCodeCaretBlink 1s steps(1,end) infinite}
@keyframes stipCodeCaretBlink{0%,48%{opacity:1}49%,100%{opacity:0}}


/* APPLICATIONS — ADD CONTROL + RESPONSABLE ART — FINAL 2026-09-22 */
.stip-my-apps>header{align-items:flex-end!important;}
.stip-store-browse-add{
  min-width:0!important;
  min-height:52px!important;
  padding:6px 12px 6px 7px!important;
  border:1px solid #128ca3!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#16a5bd 0%,#078ca8 100%)!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  box-shadow:0 8px 18px rgba(7,129,153,.16),inset 0 1px 0 rgba(255,255,255,.25)!important;
  -webkit-tap-highlight-color:transparent!important;
}
.stip-store-browse-add:active{
  transform:translateY(1px)!important;
  box-shadow:0 4px 11px rgba(7,129,153,.14),inset 0 1px 0 rgba(255,255,255,.2)!important;
}
.stip-store-browse-plus{
  position:relative!important;
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.16)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.30)!important;
}
.stip-store-browse-plus::before,
.stip-store-browse-plus::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  border-radius:999px!important;
  background:#fff!important;
  transform:translate(-50%,-50%)!important;
}
.stip-store-browse-plus::before{width:17px!important;height:3px!important;}
.stip-store-browse-plus::after{width:3px!important;height:17px!important;}
.stip-store-browse-add>strong{
  margin:0!important;
  font-size:.88rem!important;
  line-height:1!important;
  font-weight:950!important;
}
.stip-store-icon-responsable{
  background:transparent!important;
  box-shadow:none!important;
}
.stip-store-icon-responsable>img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
@media(max-width:370px){
  .stip-store-browse-add{min-height:48px!important;padding-right:9px!important;gap:7px!important;}
  .stip-store-browse-plus{width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:11px!important;}
  .stip-store-browse-add>strong{font-size:.82rem!important;}
}
