:root{color-scheme:light;--font-brand: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--bg: #f1f5f9;--surface: #ffffff;--accent: #2563eb;--accent-soft: rgba(37, 99, 235, .14);--text: #0f172a;--text-muted: #64748b;--border-subtle: color-mix(in srgb, var(--text) 12%, transparent);--border-cool: color-mix(in srgb, var(--text) 14%, transparent);--safe-top: env(safe-area-inset-top, 0);--safe-bottom: env(safe-area-inset-bottom, 0);--safe-left: env(safe-area-inset-left, 0);--safe-right: env(safe-area-inset-right, 0);--nav-fixed-slab: 3.2rem;--notif-accent: #f87171;--notif-badge-bg: linear-gradient(160deg, #ef4444 0%, #dc2626 100%)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer;border:none;background:var(--accent);color:#fff;padding:.6rem 1rem;border-radius:8px;min-height:44px}button.secondary{background:var(--surface);color:var(--text);border:1px solid color-mix(in srgb,var(--text) 15%,transparent)}input,select,textarea{background:var(--surface);color:var(--text);border:1px solid color-mix(in srgb,var(--text) 20%,transparent);border-radius:8px;padding:.6rem .8rem;width:100%;min-height:44px}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23aaa' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}input::placeholder,textarea::placeholder{color:var(--text-muted)}label{display:block;margin-bottom:.25rem;color:var(--text-muted);font-size:.9rem}a{color:var(--accent)}.app{height:100%;min-height:100vh;min-height:100dvh;max-height:100dvh;max-height:100vh;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);max-width:480px;margin:0 auto;display:flex;flex-direction:column;overflow:hidden}.app:has(>.nav){padding-top:calc(var(--safe-top) + var(--nav-fixed-slab))}.nav{display:grid;grid-template-columns:48px 1fr minmax(40px,auto);align-items:center;gap:0;background:color-mix(in srgb,var(--surface) 92%,var(--bg));border-bottom:1px solid var(--border-subtle, var(--border-cool));padding:.2rem .35rem .25rem;flex-shrink:0;min-height:0}.app:has(>.nav)>.nav{position:fixed;top:0;left:0;right:0;width:100%;max-width:480px;margin:0 auto;z-index:300;box-sizing:border-box;padding:calc(.28rem + var(--safe-top)) max(.35rem,var(--safe-left)) .3rem max(.35rem,var(--safe-right))}.nav-leading{display:flex;align-items:center;justify-content:flex-start}.nav-leading--spacer{width:48px;min-width:48px;pointer-events:none}.nav-tab-label{min-width:0}.nav-tab-lock-icon{width:.88rem;height:.88rem;flex-shrink:0;opacity:.72}.nav-tabs button.active .nav-tab-lock-icon{opacity:.95;color:var(--accent)}.nav-tabs button.nav-tab--need-google:not(.active) .nav-tab-lock-icon{opacity:.88}.nono-page-brand{flex-shrink:0;width:100%}.nono-page-brand-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.45rem .85rem;text-align:center}.nono-page-brand-titleblock{display:inline-flex;align-items:center;gap:.75rem}.nono-page-brand-mark{display:inline-flex;align-items:baseline;font-family:var(--font-brand);font-size:1.26rem;font-weight:800;letter-spacing:-.04em;line-height:1.2}.nono-page-brand-nono{color:var(--text)}.nono-page-brand-split{color:var(--accent)}.nono-page-brand-sep{flex-shrink:0;width:1px;height:1.05em;align-self:center;background:linear-gradient(to bottom,transparent 0%,color-mix(in srgb,var(--text) 18%,transparent) 35%,color-mix(in srgb,var(--text) 18%,transparent) 65%,transparent 100%);border-radius:1px}.nono-page-brand-ig{display:inline-flex;align-items:center;justify-content:center;padding:.38rem;margin:0;border-radius:999px;text-decoration:none;color:var(--text-muted);transition:color .2s ease,background .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:color-mix(in srgb,var(--accent) 12%,transparent)}.nono-page-brand-ig:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.nono-page-brand-ig:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nono-page-brand-ig-icon{width:1.2rem;height:1.2rem;flex-shrink:0;color:var(--accent);opacity:.95;transition:opacity .2s ease,transform .2s ease}.nono-page-brand-ig:hover .nono-page-brand-ig-icon{opacity:1;transform:scale(1.06)}.page--agenda .nono-page-brand{margin:0 0 .85rem;padding-bottom:.55rem;border-bottom:1px solid var(--border-subtle, color-mix(in srgb, var(--text) 10%, transparent))}.page--sondages>.nono-page-brand{padding:.5rem 1rem .45rem;border-bottom:1px solid var(--border-subtle, color-mix(in srgb, var(--text) 10%, transparent));background:color-mix(in srgb,var(--surface) 96%,var(--bg));max-width:28rem;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}.nav-tabs .nono-tab-badge{flex-shrink:0;min-width:1.05rem;height:1.05rem;padding:0 .32rem;border-radius:999px;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;background:var(--notif-badge-bg);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,#fff 20%,transparent)}.nav-notifications-btn{position:relative;flex:0 0 auto;width:44px;min-width:44px;min-height:38px;height:auto;padding:.12rem;margin:0;background:transparent;color:var(--text-muted);border:none;border-radius:10px;display:flex;align-items:center;justify-content:center}.nav-notifications-btn:hover,.nav-notifications-btn:focus{color:var(--text);background:color-mix(in srgb,var(--text) 6%,transparent);outline:none}.nav-notifications-btn.active{color:var(--accent)}.nav-notifications-icon{width:22px;height:22px;flex-shrink:0;display:block}.nav-notifications-btn--unread-pending:not(.active) .nav-notifications-icon{color:color-mix(in srgb,var(--notif-accent) 55%,var(--text-muted))}.nav-notifications-badge{position:absolute;top:1px;right:1px;min-width:1rem;height:1rem;padding:0 .28rem;border-radius:999px;font-size:.6rem;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.nav-notifications-badge--action{background:var(--notif-badge-bg);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,#fff 22%,transparent)}.nav-tabs-wrapper{display:flex;justify-content:center;align-items:center;min-width:0}.nav-tabs{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center;justify-content:center}.nav-tabs button{min-height:36px;padding:.32rem .45rem;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:.3rem;border-radius:8px;transition:color .2s ease,background .2s ease}.nav-tabs button.active{color:var(--accent);background:var(--accent-soft)}.nav-tabs button.nav-tab--need-google:not(.active){opacity:.88}.nav-tabs button.nav-tab--groupe-locked:not(.active){opacity:.82}.nono-groupe-gate{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:1rem 1rem 1.5rem;box-sizing:border-box;width:100%;max-width:28rem;margin-left:auto;margin-right:auto}.nono-groupe-gate-card{width:100%;max-width:22rem;padding:1.15rem 1.1rem 1.2rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border-subtle, transparent));background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 10%,var(--surface)) 0%,var(--surface) 55%);box-shadow:0 4px 20px color-mix(in srgb,var(--text) 7%,transparent)}.nono-groupe-gate-title{margin:0 0 .65rem;font-size:1.05rem;font-weight:800;letter-spacing:-.02em;color:var(--text);text-align:center}.nono-groupe-gate-text{margin:0 0 .75rem;font-size:.88rem;line-height:1.45;color:var(--text-muted);text-align:center}.nono-groupe-gate-hint{margin:0 0 1rem;font-size:.78rem;line-height:1.4;color:var(--text-muted);text-align:left}.nono-groupe-gate-hint code{font-size:.74em;padding:.08rem .2rem;border-radius:4px;background:color-mix(in srgb,var(--text) 6%,transparent)}.nono-groupe-gate-google{display:block;width:100%;margin:0 0 .85rem;padding:.62rem 1rem;text-align:center;text-decoration:none;font-size:.9rem;font-weight:700;border-radius:10px;background:var(--accent);color:#fff;box-shadow:0 2px 10px color-mix(in srgb,var(--accent) 35%,transparent);transition:filter .15s ease,transform .15s ease}.nono-groupe-gate-google:hover{filter:brightness(1.05)}.nono-groupe-gate-google:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nono-groupe-gate-back{width:100%;margin:0;min-height:44px}.nono-login-flash{padding:.5rem 1rem;background:color-mix(in srgb,var(--accent-soft) 85%,var(--bg));color:var(--text);font-size:.88rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}.nono-login-flash-dismiss{flex-shrink:0;padding:.3rem .55rem;font-size:.82rem;font-weight:600;border-radius:6px;background:var(--surface);color:var(--text);border:1px solid color-mix(in srgb,var(--text) 12%,transparent)}.nono-groupe-account{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.55rem;max-width:28rem;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}.page--sondages>.nono-groupe-account{padding:.38rem .85rem .42rem;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,var(--accent)),color-mix(in srgb,var(--surface) 97%,var(--bg)))}.nono-groupe-account-main{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.nono-groupe-account-avatar{flex-shrink:0;width:36px;height:36px;border-radius:10px;object-fit:cover;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:-.03em;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.nono-groupe-account-avatar--img{display:block}.nono-groupe-account-text{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.06rem;min-width:0}.nono-groupe-account-name{font-size:.82rem;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nono-groupe-account-email{font-size:.7rem;font-weight:500;color:var(--text-muted);line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nono-groupe-signout{flex-shrink:0;margin:0;padding:.32rem .7rem;min-height:34px;font-size:.72rem;font-weight:700;letter-spacing:-.01em;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 88%,var(--bg));border:1px solid color-mix(in srgb,var(--text) 11%,transparent);border-radius:999px;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 6%,transparent);transition:color .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.nono-groupe-signout:hover,.nono-groupe-signout:focus{color:var(--text);background:var(--surface);border-color:color-mix(in srgb,var(--accent) 35%,var(--text));outline:none}.nono-groupe-signout:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 65%,#fff);outline-offset:2px}.nav-trailing-spacer{width:44px;min-width:44px;pointer-events:none}.page--with-nav{padding-bottom:calc(64px + 1rem + var(--safe-bottom))}.page-swipeable{touch-action:pan-y}.page--under-notifications-curtain{pointer-events:none;-webkit-user-select:none;user-select:none}@keyframes notifications-curtain-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes notifications-curtain-out{0%{transform:translate(0)}to{transform:translate(-100%)}}.notifications-curtain{position:fixed;top:calc(var(--safe-top) + var(--nav-fixed-slab));left:0;right:0;width:100%;max-width:480px;margin:0 auto;bottom:max(0px,calc(var(--safe-bottom)));box-sizing:border-box;z-index:280;padding:.75rem 1rem calc(1rem + var(--safe-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--bg);box-shadow:8px 0 28px #00000059;will-change:transform}.notifications-curtain--entering{animation:notifications-curtain-in .38s cubic-bezier(.33,1,.28,1) both}.notifications-curtain--closing{animation:notifications-curtain-out .38s cubic-bezier(.33,1,.28,1) forwards}@media (prefers-reduced-motion: reduce){.notifications-curtain--entering,.notifications-curtain--closing{animation-duration:.01ms}}.notifications-page-inner{max-width:36rem;margin-left:auto;margin-right:auto}.notifications-page-title{margin:0 0 .35rem;font-size:1.25rem;font-weight:700}.notifications-page-lead{margin:0 0 1rem;font-size:.88rem;line-height:1.45;color:var(--text-muted)}.notifications-open-polls-hint{margin:-.35rem 0 .85rem;padding:.55rem .65rem;font-size:.86rem;line-height:1.4;color:var(--text);background:var(--accent-soft);border-radius:8px;border-left:3px solid var(--accent)}.notifications-clear-btn{margin-bottom:1rem;width:100%;max-width:20rem}.notifications-empty{margin-top:.5rem;color:var(--text-muted)}.notifications-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.notifications-item{padding:.75rem .85rem;border-radius:10px;background:var(--surface);border:1px solid rgba(255,255,255,.1)}button.notifications-item{display:block;width:100%;margin:0;box-sizing:border-box;text-align:left;font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button.notifications-item:focus-visible{outline:2px solid var(--accent, #34d399);outline-offset:2px}.notifications-item--read{opacity:.74}.notifications-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .65rem;margin-bottom:.35rem}.notifications-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .45rem;border-radius:6px;background:#ffffff14;color:var(--text-muted)}.notifications-badge--nono-concert{background:color-mix(in srgb,var(--accent) 22%,transparent);color:color-mix(in srgb,var(--accent) 82%,#fff);border:1px solid color-mix(in srgb,var(--accent) 42%,transparent)}.notifications-badge--nono-sondage{background:#34d3992e;color:#6ee7b7;border:1px solid rgba(52,211,153,.35)}.notifications-badge--nono-indispo{background:#fbbf242e;color:#fcd34d;border:1px solid rgba(251,191,36,.35)}.notifications-item-action{font-size:.78rem;color:var(--text-muted)}.notifications-item-title{margin:0 0 .25rem;font-size:.95rem;font-weight:600;line-height:1.35}.notifications-item-detail{margin:0 0 .4rem;font-size:.82rem;line-height:1.4;color:var(--text-muted)}.notifications-item-time{font-size:.75rem;color:var(--text-muted)}.page-enter-from-right{animation:page-slide-in-from-right .28s ease-out forwards}.page-enter-from-left{animation:page-slide-in-from-left .28s ease-out forwards}@keyframes page-slide-in-from-right{0%{transform:translate(100%);opacity:.92}to{transform:translate(0);opacity:1}}@keyframes page-slide-in-from-left{0%{transform:translate(-100%);opacity:.92}to{transform:translate(0);opacity:1}}.page{padding:1rem 1rem 2rem}.page--agenda{flex:1;min-height:0;display:flex;flex-direction:column;padding:1rem;padding-bottom:calc(56px + var(--safe-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.page--agenda.page--with-nav{padding-bottom:calc(72px + 1rem + var(--safe-bottom))}.agenda-public-empty{margin-top:.35rem}.agenda-upcoming-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.agenda-upcoming-list li{margin:0}.gig-card--readonly{cursor:default}.agenda-upcoming-list .gig-card{margin-bottom:0}.agenda-upcoming-list .gig-card--upcoming{display:flex;flex-direction:column;gap:.5rem;padding:.75rem .85rem .85rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle, transparent));background:linear-gradient(165deg,color-mix(in srgb,var(--accent) 12%,var(--surface)) 0%,var(--surface) 55%);box-shadow:0 2px 12px color-mix(in srgb,var(--text) 6%,transparent)}.gig-card-next-pill{margin:0 0 .15rem;align-self:flex-start;padding:.18rem .5rem;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.gig-card-when-block{margin:0}.gig-card-when{display:flex;flex-direction:column;align-items:flex-start;gap:.08rem}.gig-card-when-dow{font-size:.72rem;font-weight:700;text-transform:capitalize;color:var(--accent);letter-spacing:.02em}.gig-card-when-date{font-size:1.18rem;font-weight:800;line-height:1.15;letter-spacing:-.03em;color:var(--text)}.gig-card-when-time{margin-top:.12rem;font-size:.88rem;font-weight:700;color:color-mix(in srgb,var(--text) 82%,var(--accent))}.gig-card-where-block{margin:0;padding-top:.35rem;border-top:1px dashed color-mix(in srgb,var(--text) 12%,transparent)}.gig-card-venue-title{margin:0 0 .2rem;font-size:1.02rem;font-weight:800;line-height:1.25;letter-spacing:-.02em;color:color-mix(in srgb,var(--text) 92%,var(--accent))}.agenda-upcoming-list .gig-card-notes.meta{margin-top:.15rem}.agenda-upcoming-list .gig-card-address-wrap{margin:.4rem 0 .15rem}.agenda-upcoming-list .gig-card-address-label{margin:0 0 .28rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.agenda-upcoming-list .gig-card-address-text{padding:.5rem .65rem;border-radius:8px;background:color-mix(in srgb,var(--surface) 85%,var(--bg));border:1px solid var(--border-subtle, color-mix(in srgb, var(--text) 10%, transparent))}.agenda-upcoming-list .gig-card-address-line{display:block;font-size:.86rem;line-height:1.45;color:var(--text)}.agenda-upcoming-list .gig-card-address-line+.gig-card-address-line{margin-top:.15rem}.agenda-upcoming-list .gig-card-maps-cta{display:inline-flex;align-items:center;gap:.4rem;margin-top:.45rem;padding:.38rem 0;font-size:.88rem;font-weight:600;color:var(--accent);text-decoration:none;border:none;background:none;cursor:pointer;-webkit-tap-highlight-color:color-mix(in srgb,var(--accent) 20%,transparent)}.agenda-upcoming-list .gig-card-maps-cta:hover,.agenda-upcoming-list .gig-card-maps-cta:focus{text-decoration:underline;text-underline-offset:.18em}.agenda-upcoming-list .gig-card-maps-cta:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.agenda-upcoming-list .gig-card-maps-cta:visited{color:var(--accent)}.agenda-upcoming-list .gig-card-maps-cta-icon{width:1.1rem;height:1.1rem;flex-shrink:0}.groupe-concerts-root{display:flex;flex-direction:column;align-items:stretch;width:100%}.groupe-concerts-root .calendar-swipe{flex-shrink:0;display:flex;flex-direction:column}.groupe-concerts-root .calendar-today-btn{flex-shrink:0;align-self:stretch;width:100%;box-sizing:border-box;margin-top:.5rem;margin-bottom:0;font-size:.85rem;padding:.4rem .75rem;min-height:36px}.groupe-concerts-root .calendar-slide{display:flex;flex-direction:column}.groupe-concerts-root .calendar-month-section{flex-shrink:0}.calendar-month-section--collapsed .calendar-day-header{margin-bottom:.2rem}.groupe-concerts-root .calendar-day-header{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-bottom:.5rem;flex-wrap:nowrap}.groupe-concerts-root .calendar-day-header .calendar-month-nav-btn{flex:0 0 auto}.groupe-concerts-root .calendar-day-header button.calendar-month-nav-btn{min-height:38px;padding:.28rem .5rem}.calendar-month-title-toggle{flex:1 1 auto;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;margin:0;padding:.35rem .5rem;min-height:44px;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.calendar-month-title-toggle:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.calendar-month-title-toggle:focus{outline:none}.calendar-month-title-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 75%,#fff);outline-offset:2px}.groupe-concerts-root .calendar-month-title-toggle .calendar-day-title{margin:0;text-align:center;font-size:1.05rem;font-weight:700}.calendar-month-collapse-chevron{flex-shrink:0;opacity:.75;transition:transform .2s ease}.calendar-month-section--collapsed .calendar-month-collapse-chevron{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.calendar-month-collapse-chevron{transition:none}}.groupe-concerts-root .calendar-grid{height:320px;margin-bottom:0;grid-template-rows:auto repeat(6,1fr)}.groupe-concerts-root .calendar-grid[hidden]{display:none!important;margin-bottom:0!important;height:0;min-height:0}.page h1{margin:0 0 1rem;font-size:1.5rem;font-weight:700}.next-gig{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.15rem;margin-bottom:1rem;min-height:4.5rem;background:linear-gradient(to right,var(--accent-soft) 0%,var(--surface) 20%);border-radius:10px;border-left:5px solid var(--accent)}.next-gig-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);display:flex;align-items:center;gap:.5rem}.next-gig-today{display:inline-block;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .4rem;background:var(--accent);color:#fff;border-radius:4px;font-weight:600;animation:next-gig-today-pulse 1.5s ease-in-out infinite}@keyframes next-gig-today-pulse{0%,to{opacity:1}50%{opacity:.65}}.next-gig-venue{font-size:1.05rem;font-weight:700;color:var(--text);line-height:1.3}.next-gig-meta{font-size:.8rem;color:var(--text-muted);line-height:1.35}.next-gig-clickable{display:flex;flex-direction:column;gap:.35rem;width:100%;text-align:left;cursor:pointer;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit}.next-gig-clickable:hover .next-gig-venue{color:var(--accent)}.next-gig-content{display:flex;flex-direction:column;gap:.35rem;width:100%;text-align:left;padding:0;margin:0;font:inherit;color:inherit}.next-gig-value{font-size:1rem;font-weight:500;color:var(--text-muted)}.next-gig-musicians{font-size:.8rem;color:var(--text);margin-top:.25rem}.next-gig-musicians span{display:inline-block;background:color-mix(in srgb,var(--text) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--text) 16%,transparent);color:var(--text);padding:.15rem .4rem;border-radius:6px;margin-right:.25rem;margin-bottom:.2rem;font-size:.75rem}.next-gig-musicians-empty{color:var(--text-muted);font-size:.8rem}.calendar-swipe{touch-action:pan-y;-webkit-user-select:none;user-select:none;overflow:hidden}.calendar-slide-next{animation:calendar-slide-from-right .28s ease-out}.calendar-slide-prev{animation:calendar-slide-from-left .28s ease-out}.calendar-slide-next-y{animation:calendar-slide-from-bottom .28s ease-out}.calendar-slide-prev-y{animation:calendar-slide-from-top .28s ease-out}@keyframes calendar-slide-from-right{0%{transform:translate(100%);opacity:.85}to{transform:translate(0);opacity:1}}@keyframes calendar-slide-from-left{0%{transform:translate(-100%);opacity:.85}to{transform:translate(0);opacity:1}}@keyframes calendar-slide-from-bottom{0%{transform:translateY(100%);opacity:.85}to{transform:translateY(0);opacity:1}}@keyframes calendar-slide-from-top{0%{transform:translateY(-100%);opacity:.85}to{transform:translateY(0);opacity:1}}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.calendar-header h2{margin:0;font-size:1.2rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:1rem}.groupe-concerts-root .calendar-day{aspect-ratio:unset;min-height:0;font-size:.9rem}.groupe-concerts-root .gigs-on-day{flex:0 0 auto;margin-top:.35rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.08)}.groupe-concerts-root .gigs-on-day h3{font-size:.9rem;margin-bottom:.35rem;text-align:center}.groupe-concerts-root .gig-card{padding:.6rem .75rem;margin-bottom:.5rem;border-left:3px solid color-mix(in srgb,var(--accent) 55%,transparent)}.groupe-concerts-root .gig-card--clickable{display:block;width:100%;text-align:left;cursor:pointer}.groupe-concerts-root .gig-card--coord .gig-card-when-block{margin-bottom:.35rem}.groupe-concerts-root .gig-card--coord .gig-card-when{display:flex;flex-direction:column;align-items:flex-start;gap:.06rem}.groupe-concerts-root .gig-card--coord .gig-card-when-dow{font-size:.68rem;font-weight:700;text-transform:capitalize;color:var(--accent)}.groupe-concerts-root .gig-card--coord .gig-card-when-date{font-size:.95rem;font-weight:800;line-height:1.2;color:var(--text)}.groupe-concerts-root .gig-card--coord .gig-card-when-time{font-size:.78rem;font-weight:700;color:var(--text-muted)}.groupe-concerts-root .gig-card--coord .gig-card-where-block{margin-bottom:.25rem}.groupe-concerts-root .gig-card--coord .gig-card-venue-title{display:block;font-size:.92rem;font-weight:800;line-height:1.25;color:color-mix(in srgb,var(--text) 90%,var(--accent))}.groupe-concerts-root .gig-card .meta,.groupe-concerts-root .gig-card .musicians{font-size:.8rem}.groupe-concerts-root .gig-card .musicians span{padding:.15rem .4rem;font-size:.75rem}.groupe-concerts-root .absences-block-title{text-align:center}.gigs-on-day-empty{margin:0;color:var(--text-muted);font-size:.85rem}.calendar-weekday{text-align:center;font-size:.7rem;color:var(--text-muted);padding:.25rem 0}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:.9rem;background:var(--surface);color:var(--text);min-height:44px}.calendar-day.other-month{opacity:.4}.calendar-day.has-gig{background:var(--accent-soft);color:var(--accent);font-weight:600}.calendar-day.selected{outline:2px solid var(--accent);outline-offset:2px}.calendar-day:active{background:var(--accent);color:#fff}.calendar-day.return-to-today{animation:return-to-today-pulse .6s ease-out}@keyframes return-to-today-pulse{0%{transform:scale(1)}35%{transform:scale(1.15)}to{transform:scale(1)}}.page--sondages{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0}.page--sondages.page--with-nav{padding-bottom:0}.sondages-groupe-subtabs{flex-shrink:0;width:100%;max-width:28rem;margin:0 auto;padding:0 1rem .55rem;box-sizing:border-box;border-bottom:1px solid var(--border-subtle, color-mix(in srgb, var(--text) 10%, transparent));background:color-mix(in srgb,var(--surface) 96%,var(--bg))}.sondages-groupe-subtabs .sondages-segmented{max-width:none;width:100%;margin:0}.sondages-page-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:1rem;padding-bottom:calc(5.5rem + var(--safe-bottom));box-sizing:border-box;max-width:28rem;margin-left:auto;margin-right:auto;width:100%}.sondages-segmented{display:flex;width:100%;max-width:22rem;margin:0 auto 1.1rem;padding:.22rem;border-radius:11px;background:color-mix(in srgb,var(--surface) 92%,var(--bg));border:1px solid var(--border-subtle, color-mix(in srgb, var(--text) 12%, transparent));gap:.22rem;box-sizing:border-box}.sondages-segmented.sondages-segmented--header .sondages-segmented-btn{min-height:44px}.sondages-segmented--triple{max-width:100%}.sondages-segmented--triple .sondages-segmented-btn{font-size:.78rem;padding:.38rem .32rem;min-width:0}.sondages-segmented-btn{flex:1;min-height:40px;padding:.38rem .55rem;border:none;border-radius:9px;background:transparent;color:var(--text-muted);font-size:.86rem;font-weight:600;font-family:inherit;cursor:pointer;transition:color .15s ease,background .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;justify-content:center;gap:.28rem;flex-wrap:wrap}.sondages-segmented-label{min-width:0}.sondages-segmented-btn .nono-tab-badge{flex-shrink:0;min-width:1rem;height:1rem;padding:0 .28rem;border-radius:999px;font-size:.58rem;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;background:var(--notif-badge-bg);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,#fff 18%,transparent)}.sondages-segmented-btn--active .nono-tab-badge{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.sondages-segmented-btn:hover{color:var(--text)}.sondages-segmented-btn:focus{outline:none}.sondages-segmented-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 75%,#fff);outline-offset:2px}.sondages-segmented-btn--active{background:var(--surface);color:var(--text);box-shadow:0 1px 5px color-mix(in srgb,var(--text) 12%,transparent)}.page--sondages [role=tabpanel][hidden]{display:none!important}.coord-absences-panel{padding-top:.15rem}.coord-indispos-stack{display:flex;flex-direction:column;gap:1.35rem}.indispos-add-card{padding:1rem 1.05rem 1.15rem;background:linear-gradient(160deg,color-mix(in srgb,var(--surface) 88%,var(--accent)) 0%,var(--surface) 50%);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 4px 22px #00000029}.indispos-section-title{margin:0 0 .35rem;font-size:1rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.indispos-section-title--list{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.55rem}.indispos-section-lead{margin:0 0 1rem;font-size:.86rem;line-height:1.45;color:var(--text-muted)}.page--sondages .indispos-section-title,.page--sondages .indispos-section-title--list,.page--sondages .indispos-section-lead{text-align:center}.indispos-dates-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}@media (max-width: 380px){.indispos-dates-row{grid-template-columns:1fr}}.indispos-dates-row .indispos-field{margin-bottom:0}.indispos-field{margin-bottom:.75rem}.indispos-field>label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.4rem}.indispos-field input,.indispos-field select{width:100%;max-width:none;min-height:44px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:color-mix(in srgb,var(--bg) 55%,var(--surface))}.indispos-field input:focus,.indispos-field select:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 3px var(--accent-soft)}.indispos-submit-btn{width:100%;margin-top:.35rem;font-weight:600;border-radius:12px;box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 32%,transparent)}.indispos-list-section{padding-top:.1rem}.indispos-empty{padding:1.35rem 1rem;text-align:center;background:color-mix(in srgb,var(--surface) 35%,transparent);border-radius:14px;border:1px dashed rgba(255,255,255,.12);font-size:.9rem}.page--indispos{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:0 1rem 1rem}.page--indispos .page-title{font-size:1.25rem;margin:0 0 .25rem}.page-description{font-size:.9rem;color:var(--text-muted);margin:0 0 1rem}.indispos-form{display:flex;flex-direction:column;gap:0;margin-bottom:0}.indispos-ranges-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.indispos-range-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:var(--surface);border-radius:14px;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 12px #0000001a}.indispos-range-musician{font-weight:600;min-width:0;flex:1}.indispos-range-dates{font-size:.9rem;color:var(--text-muted);white-space:nowrap}.indispos-range-remove{flex-shrink:0;width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);border-radius:50%;cursor:pointer}.indispos-range-remove:hover,.indispos-range-remove:focus{color:#e88;outline:none}.indispos-range-remove svg{width:18px;height:18px}.sondages-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.sondage-card{display:block;width:100%;text-align:left;background:var(--surface);border-radius:10px;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:border-color .15s}.sondage-card:hover,.sondage-card:focus{border-color:var(--accent);outline:none}.sondage-card-title{font-weight:600;margin-bottom:.25rem}.sondage-card-meta{font-size:.85rem;color:var(--text-muted);margin-bottom:.35rem}.sondage-badge{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .4rem;border-radius:4px;font-weight:600}.sondage-badge--open{background:var(--accent-soft);color:var(--accent)}.sondage-badge--closed{background:#ffffff1a;color:var(--text-muted)}.sondage-badge--indispo{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text-muted)}.indispos-cards-list{padding-bottom:.25rem}.indispo-card{display:flex;align-items:flex-start;gap:.65rem;width:100%;text-align:left;background:var(--surface);border-radius:10px;padding:.9rem .65rem .9rem 1rem;border:1px solid rgba(255,255,255,.08);transition:border-color .15s}.indispo-card:focus-within{border-color:var(--accent)}.indispo-card-text{flex:1;min-width:0}.indispo-card-remove{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-.2rem -.15rem -.2rem 0;padding:0;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s}.indispo-card-remove:hover,.indispo-card-remove:focus{color:var(--text);background:#ffffff0f;outline:none}.indispo-card-remove:focus-visible{box-shadow:0 0 0 2px var(--accent)}.indispo-card-remove svg{width:18px;height:18px}.page--poll-form h1,.page--poll-detail h1{font-size:1.25rem;margin:0 0 1rem}.form-row-with-remove{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.form-row-with-remove input{flex:1;min-width:0}.remove-btn{flex-shrink:0;min-width:44px}.poll-detail-venue{color:var(--text-muted);font-size:.92rem;margin:0 0 .85rem;padding:.55rem .75rem;background:color-mix(in srgb,var(--surface) 55%,transparent);border-radius:10px;border:1px solid rgba(255,255,255,.08)}.poll-detail-dates{list-style:none;padding:0;margin:0 0 1.15rem;display:flex;flex-direction:column;gap:.45rem}.poll-detail-dates li{padding:0;border:none}.poll-detail-actions{display:flex;flex-direction:column;gap:.85rem}.poll-detail-actions .form-field{margin-bottom:0}.poll-detail-cancel-btn{width:100%;border-radius:12px;font-weight:600}.poll-detail-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;margin:1.1rem 0 .55rem;color:var(--text-muted)}.poll-detail-section-title--first{margin-top:.35rem}.poll-detail-date-row{display:flex;flex-direction:column;gap:.15rem;padding:.65rem .85rem;background:var(--surface);border-radius:12px;border:1px solid rgba(255,255,255,.09);box-shadow:0 2px 10px #00000014}.poll-detail-date-main{display:flex;flex-wrap:wrap;gap:.25rem;align-items:baseline}.poll-detail-date-indispos{font-size:.85rem;color:var(--text-muted);margin-left:.25rem}.poll-detail-date-label{min-width:10rem}.poll-detail-voters{font-size:.9rem;color:var(--text)}.poll-detail-voters--none{color:var(--text-muted);font-style:italic}.poll-detail-vote-form{margin-top:.85rem;padding:.85rem .65rem 1rem;border-radius:14px;background:color-mix(in srgb,var(--surface) 40%,transparent);border:1px solid rgba(255,255,255,.08)}.poll-detail-vote-hint{font-size:.9rem;color:var(--text-muted);margin:0 0 .75rem}.poll-vote-grid-wrapper{overflow-x:auto;margin-bottom:.35rem;-webkit-overflow-scrolling:touch;border-radius:12px;background:var(--surface);border:1px solid rgba(255,255,255,.08)}.poll-vote-grid{width:100%;border-collapse:collapse;font-size:.88rem}.poll-vote-grid th,.poll-vote-grid td{padding:.55rem .45rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.07)}.poll-vote-grid tbody tr:last-child td{border-bottom:none}.poll-vote-grid th{font-weight:700;color:var(--text-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.poll-vote-grid-musician{text-align:left!important;min-width:120px;max-width:180px}.poll-vote-grid-date{white-space:nowrap}.poll-vote-grid-cell{min-width:44px}.poll-vote-grid-cell input[type=checkbox]{width:20px;height:20px;margin:0;cursor:pointer;accent-color:var(--accent)}.poll-detail-closed{color:var(--text-muted);font-size:.9rem;margin:0 0 .5rem}.poll-detail-closed-actions{margin-top:1rem}.poll-detail-delete-btn{margin-top:.5rem}.gigs-on-day{margin-top:1rem}.gigs-on-day h3{font-size:1rem;color:var(--text-muted);margin-bottom:.5rem}.gig-card{background:var(--surface);border-radius:10px;padding:1rem;margin-bottom:.75rem;border-left:4px solid var(--accent);color:var(--text)}.gig-card .venue{font-weight:600;margin-bottom:.25rem}.gig-card .meta{font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem}.gig-card .musicians{font-size:.85rem;color:var(--text)}.absences-block{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.absences-block-title{font-size:1rem;color:var(--text-muted);margin:0 0 .5rem}.absences-block-empty{font-size:.9rem;color:var(--text-muted);margin:0 0 .5rem}.absences-list{list-style:none;padding:0;margin:0 0 .5rem}.absences-list-item{display:flex;align-items:center;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.9rem}.absences-list-item:last-child{border-bottom:none}.absences-remove-btn{flex-shrink:0;width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);border-radius:50%;cursor:pointer}.absences-remove-btn:hover,.absences-remove-btn:focus{color:#e88;outline:none}.absences-remove-btn svg{width:18px;height:18px}.absences-add-btn{margin-top:.25rem}.absences-form{margin-top:.5rem}.absences-form .form-group{margin-bottom:.5rem}.absences-form .form-group select{min-height:36px;padding:.4rem .6rem;max-width:280px}.absences-form-actions{display:flex;gap:.5rem;margin-top:.5rem}.gig-card .musicians span{display:inline-block;background:color-mix(in srgb,var(--text) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--text) 16%,transparent);color:var(--text);padding:.2rem .5rem;border-radius:6px;margin-right:.25rem;margin-bottom:.25rem}.gig-card .musicians span.musicians-placeholder{background:none;border:none;padding:0;margin-right:0;margin-bottom:0;color:var(--text-muted)}.form-group{margin-bottom:1rem}.form-sheet-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:320;overflow:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:var(--safe-top) var(--safe-right) max(1.25rem,calc(.75rem + var(--safe-bottom))) var(--safe-left);box-sizing:border-box;background:radial-gradient(120% 80% at 50% -20%,color-mix(in srgb,var(--accent) 18%,transparent) 0%,transparent 55%),var(--bg)}.form-sheet-inner{max-width:28rem;margin:0 auto;width:100%;padding:.35rem 1rem 1.5rem;box-sizing:border-box}.form-sheet-panel .admin-panel-handle{display:block;width:40px;height:4px;margin:.35rem auto .5rem;border-radius:999px;background:#ffffff47;flex-shrink:0}.form-sheet-header{display:flex;justify-content:space-between;align-items:center;gap:.65rem;margin:0 -.25rem .85rem;padding:.4rem .25rem .75rem;position:sticky;top:0;z-index:8;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07)}.form-sheet-title{margin:0;font-size:1.12rem;font-weight:700;letter-spacing:-.02em;flex:1;min-width:0;line-height:1.25}.form-sheet-lead{margin:0 0 1rem;font-size:.88rem;line-height:1.45;color:var(--text-muted)}.form-sheet-empty{padding:2rem .5rem}.form-sheet-save-btn{flex-shrink:0;width:46px;height:46px;min-width:46px;min-height:46px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 92%,#fff) 0%,var(--accent) 100%);color:#fff;border-radius:50%;border:none;cursor:pointer;box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 45%,transparent)}.form-sheet-save-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.form-sheet-save-btn svg{width:24px;height:24px}.form-sheet-close-btn{flex-shrink:0;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted);border:none;border-radius:50%;cursor:pointer}.form-sheet-close-btn:hover,.form-sheet-close-btn:focus{color:var(--text);background:color-mix(in srgb,var(--text) 12%,transparent);outline:none}.form-sheet-close-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,#fff);outline-offset:2px}.form-sheet-close-btn svg{width:22px;height:22px}.form-sheet-delete-btn{flex-shrink:0;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,#e88 14%,transparent);color:#f9a8a8;border:none;border-radius:50%;cursor:pointer}.form-sheet-delete-btn:hover,.form-sheet-delete-btn:focus{color:#fecaca;background:color-mix(in srgb,#e88 22%,transparent);outline:none}.form-sheet-delete-btn svg{width:22px;height:22px}.form-sheet-header-spacer{flex-shrink:0;width:44px;min-width:44px}.form-sheet-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.15rem}@media (max-width: 360px){.form-sheet-grid-2{grid-template-columns:1fr}}.form-sheet-panel .form-field{margin-bottom:.75rem;padding:.85rem 1rem;background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:14px;box-shadow:0 2px 12px #0000001f}.form-sheet-panel .form-field>label{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.45rem}.form-sheet-panel .form-field input,.form-sheet-panel .form-field select,.form-sheet-panel .form-field textarea{width:100%;max-width:none;min-height:44px;padding:.55rem .75rem;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:color-mix(in srgb,var(--bg) 65%,var(--surface));transition:border-color .15s ease,box-shadow .15s ease}.form-sheet-panel .form-field input:focus,.form-sheet-panel .form-field select:focus,.form-sheet-panel .form-field textarea:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,transparent);box-shadow:0 0 0 3px var(--accent-soft)}.form-sheet-panel .form-field textarea{min-height:4.5rem;resize:vertical;line-height:1.4}.form-sheet-panel .form-field--gig-notes-single textarea{min-height:44px}.form-sheet-panel .form-field--compact{padding:.75rem .9rem}.form-sheet-panel .form-field--dates .form-add-chip{margin-top:.65rem}.form-sheet-panel .form-field--lineup{padding:.65rem .85rem .85rem}.form-sheet-panel .form-field--lineup>label{margin-bottom:.5rem}.form-sheet-panel .form-field--lineup .checkbox-list li{border:none;padding:.45rem .55rem;margin-bottom:.35rem;border-radius:10px;background:color-mix(in srgb,var(--bg) 50%,transparent);border:1px solid rgba(255,255,255,.06)}.form-sheet-panel .form-field--lineup .checkbox-list li:last-child{margin-bottom:0}.form-lineup-label{margin-bottom:0;flex:1;font-size:.92rem;font-weight:500;color:var(--text)}.form-row-with-remove{display:flex;gap:.5rem;align-items:center;margin-bottom:.45rem}.form-row-with-remove:last-of-type{margin-bottom:0}.form-row-with-remove input[type=date]{flex:1;min-width:0}.form-remove-date-btn{flex-shrink:0;width:44px;height:44px;min-width:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-muted);border:1px solid rgba(255,255,255,.1);font-size:1.35rem;line-height:1;cursor:pointer}.form-remove-date-btn:hover,.form-remove-date-btn:focus{color:#f9a8a8;border-color:color-mix(in srgb,#e88 35%,transparent);outline:none}.form-add-chip{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:.15rem;padding:.5rem .85rem;min-height:44px;font-size:.88rem;font-weight:600;color:var(--accent);background:var(--accent-soft);border:1px dashed color-mix(in srgb,var(--accent) 45%,transparent);border-radius:12px;cursor:pointer}.form-add-chip:hover,.form-add-chip:focus{background:color-mix(in srgb,var(--accent) 18%,transparent);outline:none}.form-actions{display:flex;gap:.5rem;margin-top:1.5rem}.form-actions button{flex:1}.checkbox-list{list-style:none;padding:0;margin:0}.checkbox-list li{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.08);min-height:44px}.checkbox-list input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--accent)}.musicians-list{list-style:none;padding:0;margin:0}.musicians-list li{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.08);gap:.5rem}.musicians-list .name{font-weight:500}.musicians-list .instrument{font-size:.85rem;color:var(--text-muted)}.musicians-list button{padding:.4rem .6rem;min-height:36px;font-size:.85rem}.empty-state{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-size:.95rem}.back-link{display:inline-flex;align-items:center;gap:.25rem;margin-bottom:1rem;color:var(--text-muted);text-decoration:none;font-size:.9rem}.back-link:hover{color:var(--accent)}.page--gig-detail .back-link{margin-bottom:1rem;color:var(--text)}.page--gig-detail .back-link:hover{color:var(--accent)}.gig-detail-card{background:var(--surface);border-radius:10px;padding:1.25rem;border-left:4px solid var(--accent)}.gig-detail-venue{margin:0 0 .35rem;font-size:1.25rem;font-weight:600}.gig-detail-date{font-size:.9rem;color:var(--text-muted);margin-bottom:.75rem}.gig-detail-notes{font-size:.9rem;color:var(--text);margin-bottom:.75rem}.gig-detail-musicians{font-size:.9rem;margin-bottom:1.25rem}.gig-detail-musicians span{display:inline-block;background:color-mix(in srgb,var(--text) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--text) 16%,transparent);color:var(--text);padding:.2rem .5rem;border-radius:6px;margin-right:.25rem;margin-bottom:.25rem}.gig-detail-musicians-empty{color:var(--text-muted)}.gig-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap}.gig-detail-delete{background:transparent;color:var(--accent);border:1px solid var(--accent)}.gig-detail-delete:hover{background:var(--accent);color:#fff}.add-fab{position:fixed;right:1rem;bottom:calc(1rem + var(--safe-bottom));width:64px;height:64px;padding:0;min-height:0;border-radius:50%;font-size:1.75rem;font-weight:300;line-height:1;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:none;box-shadow:0 4px 16px #00000059,0 0 0 1px color-mix(in srgb,#fff 18%,transparent) inset;z-index:60;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.add-fab:hover{transform:translateY(-2px);box-shadow:0 8px 22px #00000061,0 0 0 1px color-mix(in srgb,#fff 22%,transparent) inset}.add-fab:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 85%,#fff);outline-offset:3px}@media (prefers-reduced-motion: reduce){.add-fab{transition:none}.add-fab:hover{transform:none}}@media (min-width: 481px){.add-fab{right:calc(50% - 240px + 1rem)}}@media (orientation: landscape) and (max-height: 520px){:root{--nav-fixed-slab: 2.55rem}.app{max-width:none;width:100%;margin:0;padding-left:max(.5rem,var(--safe-left));padding-right:max(.5rem,var(--safe-right));padding-bottom:max(0px,calc(var(--safe-bottom) - .45rem))}.app:has(>.nav)>.nav{max-width:none;padding:calc(.18rem + var(--safe-top)) max(.35rem,var(--safe-left)) .22rem max(.35rem,var(--safe-right))}.nav{grid-template-columns:40px 1fr 40px}.nav-tabs button{min-height:30px;font-size:.76rem;padding:.2rem .3rem}.nav-notifications-btn{min-height:30px;width:36px;min-width:36px;padding:.06rem}.nav-notifications-icon{width:20px;height:20px}.nav-notifications-badge{top:0;right:0;min-width:.9rem;height:.9rem;font-size:.55rem;padding:0 .22rem}.nav-trailing-spacer{width:40px;min-width:40px}.notifications-curtain{max-width:none}.page{padding-left:max(.55rem,var(--safe-left));padding-right:max(.55rem,var(--safe-right))}.page--agenda{padding-top:.5rem}.add-fab{right:max(1rem,var(--safe-right))}.sondages-groupe-subtabs{max-width:none;padding-left:max(1rem,var(--safe-left));padding-right:max(1rem,var(--safe-right))}}
