:root{color-scheme:light;--primary: #4bbedb;--success: #6dc746;--warning: #ff7726;--danger: #fc0404;--dark: #1a1a1a;--bg: #f5f7f8;--surface: #ffffff;--text: #1a1a1a;--text-muted: #6b7280;--border: #e2e6e9;--font-family-base: "Poppins", system-ui, sans-serif;--font-size-base: 14px;--border-radius-round: 4px;--radius-card: 14px;--shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 2px 8px rgba(16, 24, 40, .06);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px}:root[data-theme=dark]{color-scheme:dark;--bg: #0f1216;--surface: #1a1f26;--text: #e7e9ec;--text-muted: #9aa4b0;--border: #2b323b;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 8px rgba(0, 0, 0, .45)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0f1216;--surface: #1a1f26;--text: #e7e9ec;--text-muted: #9aa4b0;--border: #2b323b;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 8px rgba(0, 0, 0, .45)}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-family-base);font-size:var(--font-size-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;border-radius:var(--border-radius-round);padding:var(--space-2) var(--space-4);background:var(--primary);color:#fff;font-weight:500}button.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}button.danger{background:var(--danger);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;font-size:20px;line-height:1;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--border-radius-round)}.icon-btn:hover{background:var(--bg)}.menu-popover{position:absolute;top:calc(100% + 4px);right:0;z-index:60;min-width:220px;background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-round);box-shadow:0 8px 24px #0000001f;padding:4px}.menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:none;background:none;color:var(--text);border-radius:var(--border-radius-round);text-align:left;font-size:14px;font-weight:400}.menu-item:hover{background:var(--bg)}.menu-item.sub{padding-left:var(--space-6);font-size:13px}.menu-item.danger{color:var(--danger);background:none}.menu-item.danger:hover{background:var(--bg)}.menu-icon{width:18px;text-align:center;flex:0 0 18px}input:not([type=checkbox]):not([type=radio]),textarea,select{font-family:inherit;font-size:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--border-radius-round);width:100%}textarea{resize:vertical}input[type=checkbox],input[type=radio]{width:auto;flex:none;margin:0;accent-color:var(--primary)}label{display:block;margin-bottom:var(--space-1);color:var(--text-muted);font-size:12px;font-weight:500}.field{margin-bottom:var(--space-4)}.card{background:var(--surface);border:1px solid color-mix(in srgb,var(--border) 55%,var(--surface));border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-6)}.home-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.home-section-head h3{margin:0}.featured-carousel-wrap{position:relative}.featured-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:none;background:#00000080;color:#fff;font-size:24px;line-height:1;cursor:pointer;z-index:2;display:none;align-items:center;justify-content:center}.featured-arrow.prev{left:8px}.featured-arrow.next{right:8px}.featured-arrow:disabled{opacity:.35;cursor:default}@media(hover:hover)and (pointer:fine){.featured-carousel-wrap:hover .featured-arrow{display:inline-flex}}.featured-carousel{display:flex;gap:var(--space-3);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none}.featured-carousel::-webkit-scrollbar{display:none}.featured-card{position:relative;flex:0 0 100%;width:100%;scroll-snap-align:start;scroll-snap-stop:always;aspect-ratio:16 / 10;max-height:280px;border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);color:#fff}.featured-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:52px}.featured-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.15) 45%,transparent 68%)}.featured-badge{position:absolute;top:10px;right:10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:4px 10px;border-radius:999px;color:#fff}.featured-info{position:absolute;left:14px;right:96px;bottom:12px;text-shadow:0 1px 3px rgba(0,0,0,.55)}.featured-title{display:block;font-size:18px;line-height:1.2}.featured-meta{font-size:13px;opacity:.95;text-transform:capitalize}.featured-count{position:absolute;right:14px;bottom:14px;font-size:12px;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.55)}.featured-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}.featured-dot{width:7px;height:7px;padding:0;border:none;border-radius:999px;background:var(--border);cursor:pointer;transition:width .2s,background .2s}.featured-dot.active{width:20px;background:var(--primary)}.announcement-card{display:flex;gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-2)}.announcement-icon{font-size:26px;line-height:1;flex-shrink:0}.announcement-body{font-size:14px;margin-top:2px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.announcement-time{color:var(--text-muted);font-size:12px;margin-top:var(--space-2)}.home-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.shortcut-tile{background:var(--surface);border:1px solid color-mix(in srgb,var(--border) 55%,var(--surface));border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;color:var(--text);min-height:92px;justify-content:center}.shortcut-tile:hover{border-color:var(--primary)}.shortcut-icon{font-size:30px;line-height:1}.shortcut-label{font-size:13px;line-height:1.2}.shortcut-ext{color:var(--text-muted);font-size:11px}.home-minors{display:flex;gap:var(--space-2);padding:var(--space-3)}.home-minor{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;color:var(--text)}.home-minor-name{font-size:13px;line-height:1.15;max-width:100%}.home-minor-sub{font-size:11px;color:var(--text-muted);line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.error-banner{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);padding:var(--space-3);border-radius:var(--border-radius-round);margin-bottom:var(--space-4);font-size:13px}.print-table{width:100%;border-collapse:collapse;margin-top:var(--space-3)}.print-table th,.print-table td{border:1px solid #999;padding:6px 8px;text-align:left;font-size:13px}.print-table th{background:var(--bg)}.print-grid-table{font-size:11px}.print-grid-table th,.print-grid-table td{padding:3px 5px}.print-grid-table .pg-name{text-align:left;white-space:nowrap;position:sticky;left:0;background:var(--surface)}.print-grid-table th.pg-name{background:var(--bg)}.print-grid-table .pg-date,.print-grid-table .pg-total{text-align:center;white-space:nowrap}.print-grid{overflow-x:auto}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--surface);border-top:1px solid var(--border);padding:2px 0 4px;z-index:50}.bottom-nav a,.bottom-nav .nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:48px;font-size:11px;line-height:1;color:var(--text-muted);text-decoration:none;background:none;border:none}.bottom-nav a.active{color:var(--primary)}.bottom-nav .nav-item.disabled{opacity:.4}.top-nav{display:none;gap:var(--space-3);align-items:center}.top-nav a{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:14px}.top-nav a.active{color:var(--primary);font-weight:600}.top-nav .nav-item.disabled{color:var(--text-muted);opacity:.5}@media(min-width:700px){.bottom-nav{display:none}.top-nav{display:flex}}.app-main{position:relative;padding:var(--space-4);padding-bottom:calc(68px + env(safe-area-inset-bottom))}.ptr{position:absolute;top:2px;left:50%;margin-left:-15px;z-index:5;pointer-events:none}.ptr-spinner{display:block;width:26px;height:26px;border-radius:50%;border:2.5px solid var(--border);border-top-color:var(--primary)}.ptr-spinner.spin{animation:ptr-spin .7s linear infinite}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media(min-width:700px){.app-main{padding-bottom:var(--space-4)}.app-shell>header{position:sticky;top:0;z-index:30}}@media(max-width:1023px){.disc-list-pane,.disc-conv-pane{max-width:640px;margin:0 auto}.disc-list-pane.has-active{display:none}.disc-conv-pane:not(.has-active){display:none}}@media(min-width:1024px){.disc-layout{display:flex;gap:var(--space-4);height:calc(100vh - 96px);height:calc(100dvh - 96px);max-width:1240px;margin:0 auto}.disc-list-pane{flex:0 0 400px;min-height:0;overflow-y:auto;overflow-x:hidden}.disc-conv-pane{flex:1 1 auto;min-width:0;min-height:0}.disc-conv-pane .channel-view{height:100%}.disc-conv-pane .disc-back{display:none}.disc-empty{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-muted);padding:var(--space-4)}}.channel-view{display:flex;flex-direction:column;height:calc(100vh - 96px);height:calc(100dvh - 96px)}@media(max-width:699px){.channel-view{height:100%}.app-main--chat{padding:0;overflow:hidden;display:flex;flex-direction:column}.app-main--chat .disc-layout{flex:1;min-height:0;display:flex;flex-direction:column}.app-main--chat .disc-list-pane:not(.has-active),.app-main--chat .disc-conv-pane.has-active{flex:1;min-height:0;display:flex;flex-direction:column;width:100%;padding:var(--space-3) var(--space-3) 0}.app-main--chat .disc-conv-pane.has-active .channel-view{flex:1;min-height:0;height:auto}.app-main--chat .disc-channel-list{flex:1 1 0;min-height:0;overflow-y:auto}}@media(max-width:699px){html,body{overflow:hidden}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;height:var(--app-height, 100dvh)}.app-main{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-4)}.bottom-nav{position:static;flex-shrink:0}}.app-main h1{font-size:1.3rem;line-height:1.2;margin:0 0 var(--space-3)}@media(max-width:400px){.brand-logo{height:26px}.club-logo{height:22px}}.brand-logo--light{display:block}.brand-logo--dark{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-logo--light{display:none}:root:not([data-theme=light]) .brand-logo--dark{display:block}}:root[data-theme=dark] .brand-logo--light{display:none}:root[data-theme=dark] .brand-logo--dark{display:block}:root[data-theme=light] .brand-logo--light{display:block}:root[data-theme=light] .brand-logo--dark{display:none}.lock-notice{background:color-mix(in srgb,var(--warning) 12%,var(--surface));color:var(--warning);padding:var(--space-3);border-radius:var(--border-radius-round);margin-bottom:var(--space-4);font-size:13px;font-weight:500}.state-badge{display:inline-flex;align-items:center;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;line-height:1.4}.state-badge.draft{background:color-mix(in srgb,var(--text-muted) 18%,var(--surface));color:var(--text-muted)}.state-badge.locked{background:color-mix(in srgb,var(--warning) 18%,var(--surface));color:var(--warning)}.tag-chip{display:inline-flex;align-items:center;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:12px}.header-bell{position:relative;display:inline-flex;align-items:center;font-size:20px;line-height:1;text-decoration:none}.club-switcher{width:auto;max-width:32vw;margin:0;padding:4px 26px 4px 10px;font-size:13px;font-weight:600;border-radius:999px}@media(min-width:720px){.club-switcher{max-width:180px}}.bell-badge{position:absolute;top:-6px;right:-8px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;border-radius:999px;min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.nav-icon{position:relative;display:inline-flex}.nav-count{position:absolute;top:-5px;right:-7px;display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 3px;background:var(--danger);color:#fff;border:1.5px solid var(--surface);border-radius:999px;font-size:8px;font-weight:700;line-height:1;box-sizing:border-box}.menu-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);border-bottom:1px solid var(--border);color:var(--text);font-size:15px}.menu-row:last-child{border-bottom:none}.menu-row:hover{background:var(--bg)}.menu-usercard{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);color:var(--text)}.menu-usercard:hover{background:var(--bg)}.menu-avatar{width:46px;height:46px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;flex-shrink:0}.menu-section-label{padding:var(--space-3) var(--space-3) var(--space-1);color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3)}.menu-tile{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;padding:var(--space-3) var(--space-2);border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);text-align:center;font-size:12px;line-height:1.2}.menu-tile:hover{background:var(--bg);border-color:var(--primary)}.menu-tile-icon{font-size:22px;line-height:1}.chat-header{display:flex;align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);margin-bottom:var(--space-2)}.chat-title{display:block;font-size:16px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-sub{font-size:12px;color:var(--text-muted)}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:var(--space-2) 0}.chat-load-older{align-self:center;flex-shrink:0;margin:4px auto 8px;padding:3px 12px;font-size:12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-muted);cursor:pointer}.chat-daysep{align-self:center;background:var(--bg);color:var(--text-muted);font-size:11px;padding:2px 10px;border-radius:999px;margin:var(--space-2) 0}.msg{display:flex;gap:8px;align-items:flex-start}.msg.group-end{margin-bottom:var(--space-3)}.msg.mine{justify-content:flex-end}.msg-gutter{width:30px;flex-shrink:0}.msg-col{display:flex;flex-direction:column;max-width:78%;min-width:0}.msg.mine .msg-col{align-items:flex-end}.msg-author{font-size:11px;font-weight:700;margin:0 0 2px 6px}.msg-bubble-row{display:flex;align-items:center;gap:6px}.msg.mine .msg-bubble-row{flex-direction:row-reverse}.msg-bubble{padding:7px 11px;border-radius:14px;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.35}.msg.other .msg-bubble{background:#f2f4f5;color:#17232f}.msg.mine .msg-bubble{background:var(--primary);color:#fff}.msg-bubble.deleted{background:transparent;color:var(--text-muted);font-style:italic;font-size:13px;padding:2px 4px}.msg-del{background:none;border:none;padding:0;cursor:pointer;color:var(--text-muted);font-size:12px;opacity:.5}.msg-time{font-size:10px;color:var(--text-muted);margin:2px 6px 0}.react-picker{position:relative;z-index:20;display:flex;flex-wrap:wrap;gap:4px;align-self:flex-start;max-width:280px;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-card);padding:5px 8px;margin:3px 0}.msg.mine .react-picker{align-self:flex-end}.react-picker button{background:none;border:none;font-size:19px;line-height:1;padding:2px;cursor:pointer}.react-picker .picker-action{order:1;flex-basis:100%;text-align:left;font-size:13px;padding:4px 2px 1px;color:var(--text);border-top:1px solid var(--border);margin-top:3px}.msg-quote{display:block;width:100%;text-align:left;background:#7f7f7f2e;border:none;border-left:3px solid currentColor;border-radius:6px;padding:4px 7px;margin-bottom:4px;font-size:12.5px;line-height:1.3;color:inherit;opacity:.85;cursor:pointer}.msg-edited{font-size:10px;opacity:.6;font-style:italic}.msg-quote-author{display:block;font-weight:600}.msg-quote-text{display:block;white-space:pre-wrap;overflow-wrap:anywhere;max-height:2.6em;overflow:hidden}@keyframes msg-flash{0%,60%{box-shadow:0 0 0 2px var(--primary)}to{box-shadow:none}}.msg-flash .msg-bubble{animation:msg-flash 1.2s ease-out}.msg-forwarded{font-size:11.5px;font-style:italic;opacity:.75;margin-bottom:3px}.msg-photos{display:grid;gap:3px;margin-bottom:4px;width:220px;max-width:100%;border-radius:10px;overflow:hidden}.msg-photos.n1{width:auto}.msg-photos.n2,.msg-photos.n4,.msg-photos.n3{grid-template-columns:1fr 1fr}.msg-photos.n3 .msg-photo-cell:first-child{grid-row:span 2;aspect-ratio:auto}.msg-photo-cell{position:relative;display:block;overflow:hidden;cursor:pointer}.msg-photos:not(.n1) .msg-photo-cell{aspect-ratio:1}.msg-photo{display:block;width:100%;height:100%;object-fit:cover}.msg-photos.n1 .msg-photo{width:auto;height:auto;max-width:220px;max-height:260px;border-radius:10px}.msg-photos.n1 span.msg-photo{width:160px;height:120px}.msg-photo-more{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000073;color:#fff;font-size:18px;font-weight:600}.photo-strip{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.photo-chip-wrap{position:relative;display:block;flex-shrink:0}.photo-chip{display:block;width:34px;height:34px;border-radius:6px;object-fit:cover}.photo-chip-x{position:absolute;top:-5px;right:-5px;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:var(--text);color:var(--surface);font-size:10px;line-height:1;cursor:pointer}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:var(--space-3);background:#000000d9}.lightbox-strip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.lightbox-strip::-webkit-scrollbar{display:none}.lightbox-cell{flex:0 0 100%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-3);box-sizing:border-box;scroll-snap-align:center;scroll-snap-stop:always}.lightbox-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:none;border-radius:50%;background:#00000073;color:#fff;font-size:28px;line-height:1;cursor:pointer}.lightbox-nav.prev{left:var(--space-2)}.lightbox-nav.next{right:var(--space-2)}.lightbox-count{position:absolute;top:var(--space-3);left:50%;transform:translate(-50%);color:#fff;font-size:13px;opacity:.85}.reply-banner{display:flex;align-items:center;gap:8px;margin-top:var(--space-2);padding:5px 8px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-left:3px solid var(--primary);border-radius:6px;font-size:12.5px}.reply-banner-author{font-weight:600;color:var(--primary)}.reply-banner-text{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-banner button{margin-left:auto;flex-shrink:0;background:none;border:none;padding:2px 4px;font-size:15px;color:var(--text-muted);cursor:pointer}.msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin:3px 4px 0}.msg.mine .msg-reactions{justify-content:flex-end}.msg-react{display:inline-flex;align-items:center;gap:3px;font-size:12px;padding:1px 7px;border-radius:999px;background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer}.msg-react.reacted{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface))}.poll-choice{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--border);cursor:pointer;font-size:14px}.poll-choice:last-of-type{border-bottom:none}.poll-badge{font-size:11px;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:1px 8px}.link-btn{background:none;border:none;padding:0;color:var(--primary);cursor:pointer;font-size:12px}.chat-input{display:flex;align-items:flex-end;gap:8px;padding-top:var(--space-2);position:relative}.chat-input textarea{flex:1;border-radius:19px;resize:none;overflow-y:auto;max-height:120px;line-height:1.35}.chat-readonly{flex-shrink:0;text-align:center;color:var(--text-muted);font-size:13px;padding:var(--space-3);border-top:1px solid var(--border)}.chat-plus,.chat-send{width:38px;height:38px;flex-shrink:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:20px;line-height:1;padding:0}.chat-plus{background:var(--bg);color:var(--text);border:1px solid var(--border)}.chat-sheet{position:absolute;bottom:50px;left:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:4px;z-index:20;min-width:190px;display:flex;flex-direction:column}.filter-menu{display:flex;flex-direction:column;gap:2px}.filter-row{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border:none;background:none;color:var(--text);border-radius:var(--border-radius-round);text-align:left;font-size:14px;font-weight:400}.filter-row:hover{background:var(--bg)}.filter-row.on{font-weight:600}.fm-check{width:16px;color:var(--primary);flex:0 0 16px}.fm-dot{width:10px;height:10px;border-radius:3px;flex:0 0 10px}.account-tabs button{display:inline-flex;align-items:center;gap:6px}.myact-super-badge{font-size:11px;font-weight:600;white-space:nowrap;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-radius:999px;padding:1px 8px}.disc-title{flex:1;min-width:0;font-size:20px;font-weight:700}.myact-toolbar{gap:8px}.myact-tabs{display:flex;gap:6px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.myact-tabs::-webkit-scrollbar{display:none}.myact-tabs button{flex-shrink:0;white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:5px 12px;font-size:13px;background:var(--surface);color:var(--text)}.myact-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}.myact-count{opacity:.7;font-size:11px;margin-left:2px}.myact-tabs button.active .myact-count{opacity:.85}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--surface)}.segmented button{border:none;border-radius:0;background:transparent;color:var(--text);padding:6px 12px;font-size:13px;font-weight:500}.segmented button.active{background:var(--primary);color:#fff}.tab-bar{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:var(--space-4)}.tab-pill{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:500;cursor:pointer}.tab-pill.active{background:var(--primary);color:#fff;border-color:var(--primary)}@media(max-width:560px){.tab-pill{flex:1 1 30%;text-align:center;padding:6px 8px}}.cal-weekdays,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.cal-weekdays{margin-bottom:4px}.cal-weekdays span{text-align:center;font-size:11px;color:var(--text-muted);text-transform:capitalize;padding:2px 0}.cal-grid{gap:2px}.cal-cell{position:relative;aspect-ratio:1 / 1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:3px 2px;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:13px;cursor:pointer}.cal-cell:hover{background:var(--bg)}.cal-cell.out{color:var(--text-muted);opacity:.4}.cal-cell.selected{background:color-mix(in srgb,var(--primary) 14%,var(--surface))}.cal-daynum{line-height:1.2}.cal-cell.today .cal-daynum{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:50%;background:var(--primary);color:#fff;font-weight:700}.cal-dots{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;align-content:flex-start;min-height:8px}.cal-dot{width:6px;height:6px;border-radius:50%}.cal-ic{font-size:11px;line-height:1}.cal-more{font-size:9px;color:var(--text-muted);line-height:1}.cal-bar{display:block;height:13px;margin-bottom:2px;padding:0 4px;font-size:10px;line-height:13px;color:#fff;border-radius:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:auto}.cal-bar:hover{filter:brightness(.94)}.print-roster{width:100%;border-collapse:collapse;font-size:12px}.print-roster th,.print-roster td{border:1px solid #bbb;padding:4px 7px;text-align:left;vertical-align:top}.print-roster thead th{background:#f0f0f0;font-size:11px;text-transform:uppercase;letter-spacing:.02em}@media print{.no-print{display:none!important}html,body{overflow:visible}.app-shell{display:block;height:auto}.app-main{overflow:visible;height:auto;min-height:0}body{background:#fff}.card{border:1px solid #ccc;box-shadow:none}a{color:#000;text-decoration:none}@page{margin:12mm}@page grid{size:A4 landscape;margin:8mm}.print-grid{page:grid;overflow:visible}.print-grid-table{font-size:9px}.print-grid-table th,.print-grid-table td{padding:2px 3px}.print-grid-table .pg-name{position:static;background:transparent}.print-sortie{font-size:12px;line-height:1.32}.print-sortie h1{font-size:17px;margin:0 0 2px}.print-sortie>p{margin:0 0 5px}.print-sortie h3{font-size:13px;margin:0 0 4px!important}.print-sortie .card{padding:7px 10px;margin-bottom:7px!important;border:1px solid #bbb;border-radius:4px;break-inside:avoid}.print-sortie dl{font-size:11.5px;gap:1px 10px!important}.print-sortie .card h3{margin-bottom:3px!important}.print-sortie .print-roster{font-size:11px}.print-sortie .print-roster thead{display:table-header-group}.print-sortie .print-roster tr{break-inside:avoid}}.members-page{width:100%;max-width:1320px;margin:0 auto}.members-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.members-hero h1{margin-bottom:var(--space-1)}.eyebrow{margin:0 0 2px;color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.members-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.members-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-4)}.member-stat{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:var(--space-3)}.member-stat span{display:block;color:var(--text-muted);font-size:12px}.member-stat strong{display:block;margin-top:2px;font-size:24px;line-height:1}.member-stat.success strong{color:var(--success)}.member-stat.warning strong{color:var(--warning)}.members-toolbar{display:grid;grid-template-columns:1fr auto;gap:var(--space-2);align-items:end;margin-bottom:var(--space-4);padding:var(--space-3)}.members-toolbar .field{margin-bottom:0}.search-field,.search-field input{min-width:0}.members-filter-toggle{min-height:38px;white-space:nowrap}.members-filter-fields{grid-column:1 / -1;display:none;grid-template-columns:1fr;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.members-filter-fields.is-open{display:grid}.check-filter-field{min-width:0}.check-filter{position:relative}.check-filter summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;min-height:38px;padding:var(--space-2) var(--space-3);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--border-radius-round);cursor:pointer;list-style:none}.check-filter summary::-webkit-details-marker{display:none}.check-filter summary span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.check-filter[open] summary{border-color:color-mix(in srgb,var(--primary) 50%,var(--border))}.check-filter-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:80;width:min(320px,88vw);max-height:340px;overflow:auto;padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 50px #1a1a1a24}.check-option{display:flex;align-items:center;gap:var(--space-2);margin:0;padding:8px 10px;color:var(--text);font-size:13px;border-radius:10px;cursor:pointer}.check-option:hover{background:var(--bg)}.check-option input{width:auto;margin:0;accent-color:var(--primary)}.check-filter-empty{margin:var(--space-2);color:var(--text-muted);font-size:13px}.check-filter-clear{width:100%;margin-top:var(--space-2);color:var(--text-muted);background:var(--bg)}.members-list{display:grid;gap:var(--space-3)}.member-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 16px;gap:var(--space-3);align-items:flex-start;padding:var(--space-4);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:0 8px 26px #1a1a1a0a;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.member-card:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:0 12px 34px #1a1a1a14;transform:translateY(-1px)}.member-avatar{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:color-mix(in srgb,var(--primary) 70%,var(--dark));font-weight:800;letter-spacing:.04em}.member-avatar.minor{background:color-mix(in srgb,var(--warning) 16%,var(--surface));color:color-mix(in srgb,var(--warning) 70%,var(--dark))}.member-main{min-width:0}.member-title-row{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.member-name{display:block;font-size:16px;line-height:1.15}.member-subline{margin-top:2px;color:var(--text-muted);font-size:12px}.member-statuses,.member-chip-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.member-pill{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;line-height:1.2}.member-pill.success{background:color-mix(in srgb,var(--success) 16%,var(--surface));color:color-mix(in srgb,var(--success) 65%,var(--dark))}.member-pill.warning{background:color-mix(in srgb,var(--warning) 16%,var(--surface));color:color-mix(in srgb,var(--warning) 65%,var(--dark))}.member-pill.muted{background:var(--bg);color:var(--text-muted)}.member-chip{display:inline-flex;align-items:center;max-width:100%;border:1px solid var(--border);border-radius:999px;padding:3px 9px;color:var(--text-muted);background:var(--bg);font-size:12px;line-height:1.2}.member-chip.role{color:var(--dark);background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:color-mix(in srgb,var(--primary) 26%,var(--border))}.member-chip.activity{color:color-mix(in srgb,var(--primary) 65%,var(--dark));background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.member-meta-grid{display:grid;grid-template-columns:1fr;gap:var(--space-2);margin-top:var(--space-3)}.member-meta{min-width:0;padding-top:var(--space-2);border-top:1px solid var(--border)}.member-meta span{display:block;margin-bottom:2px;color:var(--text-muted);font-size:11px}.member-meta strong,.member-meta a{display:block;overflow:hidden;color:var(--text);font-size:13px;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.member-meta a{color:var(--primary)}.member-meta strong.muted{color:var(--warning)}.member-open{align-self:center;color:var(--text-muted);font-size:24px}.empty-state p{margin-bottom:0;color:var(--text-muted)}.mobile-only-inline{display:inline-flex}.mobile-only-block{display:block}.desktop-only-inline,.desktop-only-block,.calendar-main-nav{display:none}.collapsible{border:1px solid var(--border);border-radius:10px;margin:var(--space-3) 0;overflow:hidden}.collapsible__head{width:100%;display:flex;align-items:center;gap:8px;padding:var(--space-3);background:color-mix(in srgb,var(--text) 3%,var(--surface));border:none;color:var(--text);font-weight:600;font-size:14px;cursor:pointer;text-align:left}.collapsible__head:hover{background:color-mix(in srgb,var(--text) 6%,var(--surface))}.collapsible__chevron{color:var(--text-muted);font-size:12px;width:12px;flex-shrink:0}.collapsible__title{flex:1;min-width:0}.collapsible__hint{font-size:12px;font-weight:400;color:var(--text-muted)}.collapsible__body{padding:var(--space-3);border-top:1px solid var(--border)}.calendar-page{width:100%}.calendar-toolbar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:6px;flex-wrap:nowrap;position:sticky;top:0;z-index:20;background:var(--bg);margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-3);padding:var(--space-3) var(--space-4)}.calendar-filters-btn{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:6px 10px;font-size:12px;flex-shrink:0}.calendar-filters-btn.is-active{border-color:var(--primary);color:var(--primary)}.calendar-filters-badge{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--primary);color:#fff;font-size:11px;font-weight:600}.calendar-nav{display:flex;align-items:center;justify-content:center;gap:2px;flex:1 1 auto;min-width:0}.calendar-nav .calendar-period-label{min-width:0;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-toolbar__actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.calendar-menu-btn{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.calendar-menu-icon,.calendar-menu-icon:before,.calendar-menu-icon:after{display:block;width:16px;height:2px;border-radius:2px;background:currentColor}.calendar-menu-icon{position:relative}.calendar-menu-icon:before,.calendar-menu-icon:after{content:"";position:absolute;left:0}.calendar-menu-icon:before{top:-5px}.calendar-menu-icon:after{top:5px}.calendar-view-menu{position:relative}.calendar-menu-sheet{position:absolute;top:calc(100% + 6px);right:0;z-index:30;min-width:160px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-card);padding:4px}.menu-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29}.calendar-filters-menu{position:relative;flex-shrink:0}.calendar-filters-sheet{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:min(92vw,340px);max-height:min(70vh,480px);overflow-y:auto;overscroll-behavior:contain}.calendar-filters-sheet .calendar-filters-panel{margin:0;box-shadow:var(--shadow-card)}.calendar-fab-cluster{position:fixed;right:18px;bottom:84px;z-index:25;display:flex;align-items:center;gap:10px}.calendar-fab{width:52px;height:52px;border-radius:50%;background:var(--primary);color:#fff;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #0000004d;text-decoration:none;flex-shrink:0}.calendar-fab--search{width:44px;height:44px;font-size:18px;background:var(--surface);color:var(--text);border:1px solid var(--border)}.calendar-fab-cluster input.calendar-search-field{width:min(52vw,240px);height:44px;border-radius:999px;border:1px solid var(--border);background:var(--surface);padding:0 16px;box-shadow:0 4px 14px #0000002e}.calendar-toolbar__left,.calendar-toolbar__right,.calendar-toolbar__period{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.calendar-toolbar__period{justify-content:space-between}.calendar-period-label{flex:1;min-width:140px;text-align:center;text-transform:capitalize}.calendar-period-label--week{display:flex;flex-direction:column;line-height:1.15}.calendar-period-label--week strong{font-size:15px}.calendar-period-sub{font-size:12px;font-weight:400;color:var(--text-muted);text-transform:none}.calendar-today-pill{border-radius:999px;font-size:12px;padding:5px 10px;white-space:nowrap;flex-shrink:0}.calendar-nav-arrow{width:28px;height:30px;padding:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.wk{--wk-gutter: 26px;border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden;background:var(--surface)}@keyframes wk-slide-next{0%{transform:translate(24px);opacity:.35}to{transform:none;opacity:1}}@keyframes wk-slide-prev{0%{transform:translate(-24px);opacity:.35}to{transform:none;opacity:1}}.wk-anim.is-next{animation:wk-slide-next .22s ease}.wk-anim.is-prev{animation:wk-slide-prev .22s ease}.wk-head,.wk-allday{display:grid;grid-template-columns:var(--wk-gutter) repeat(7,1fr)}.wk-allday{row-gap:2px;padding:2px 0;align-items:stretch}.wk-allday-col{border-left:1px solid var(--border)}.wk-allday-bar{margin:0 2px;align-self:center;position:relative;z-index:1}.wk-allday-bar.no-l{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.wk-allday-bar.no-r{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.wk-head{background:var(--surface);border-bottom:1px solid var(--border)}.wk-corner{border-right:1px solid var(--border)}.wk-weeknum{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-muted);line-height:1.1}.wk-dots{display:flex;gap:3px;height:8px;align-items:center}.wk-dot{width:5px;height:5px;border-radius:50%}.wk-dayhead{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border-left:1px solid var(--border)}.wk-dow{font-size:11px;color:var(--text-muted);text-transform:capitalize}.wk-daynum{font-size:15px;font-weight:600;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.wk-dayhead.is-today .wk-dow{color:var(--primary)}.wk-dayhead.is-today .wk-daynum{background:var(--primary);color:#fff}.wk-allday{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--text) 3%,var(--surface))}.wk-allday-label{font-size:10px;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.wk-allday-cell{border-left:1px solid var(--border);padding:3px;display:flex;flex-direction:column;gap:2px;min-width:0}.wk-chip{display:block;font-size:11px;line-height:1.2;padding:2px 5px;border-radius:4px;border-left:3px solid var(--primary);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wk-scroll{overflow-y:auto;overflow-x:hidden;max-height:calc(100dvh - 250px);overscroll-behavior:contain}.wk-body{position:relative;display:grid;grid-template-columns:var(--wk-gutter) repeat(7,1fr);grid-template-rows:1fr}.wk-gutter{position:relative;border-right:1px solid var(--border)}.wk-hour{position:absolute;right:3px;transform:translateY(-50%);font-size:9px;color:var(--text-muted);white-space:nowrap}.wk-col{position:relative;border-left:1px solid var(--border);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--wk-hour-h) - 1px),var(--border) calc(var(--wk-hour-h) - 1px),var(--border) var(--wk-hour-h))}.wk-ev{position:absolute;overflow:hidden;border-radius:5px;border-left:3px solid var(--primary);padding:2px 4px;font-size:8px;line-height:1.15;color:var(--text);display:flex;flex-direction:column;gap:1px}.wk-ev-title{font-weight:600;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.wk-ev-line{color:var(--text-muted);overflow-wrap:anywhere}.wk-ev-line--time{white-space:nowrap}@media(min-width:700px){.wk-ev{font-size:11px;line-height:1.25;padding:3px 6px}}.wk-ev.is-cancelled{opacity:.5}.wk-ev.is-cancelled .wk-ev-title{text-decoration:line-through}.wk-now{position:absolute;left:0;right:0;height:0;border-top:2px solid var(--danger);z-index:2}.wk-now-dot{position:absolute;left:-3px;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--danger)}.calendar-layout{display:block}.calendar-main{min-width:0}.calendar-sidebar{display:none}.calendar-filters-panel{padding:var(--space-4);margin-bottom:var(--space-4)}.calendar-filters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.calendar-filter-dot{color:var(--primary);font-size:14px;line-height:1}.calendar-filter-block{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.calendar-filter-block:first-of-type{margin-top:var(--space-3)}.calendar-filter-title{font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.03em}.calendar-filter-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;background:none;border:none;padding:var(--space-1) 0;cursor:pointer;color:inherit}.calendar-filter-toggle__caret{color:var(--text-muted);font-size:11px;width:12px}.calendar-filter-count{margin-left:auto;background:var(--primary);color:#fff;border-radius:999px;font-size:11px;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}.calendar-legend-list{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.calendar-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.calendar-month-wrap{margin-bottom:var(--space-4)}.cal-cell{min-height:74px;aspect-ratio:auto;align-items:stretch;gap:4px;padding:6px 5px;border:1px solid transparent}.cal-cell.selected{border-color:color-mix(in srgb,var(--primary) 30%,var(--surface))}.cal-cell__head{display:flex;justify-content:center}.cal-items{display:none}.cal-item-chip{display:block;width:100%;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--text);border-radius:4px;padding:1px 4px;font-size:10px;line-height:1.35;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cal-item-chip.more{background:transparent;color:var(--text-muted);padding-left:0}.calendar-bar-overlay{position:absolute;top:22px;left:0;right:0;display:grid;grid-template-columns:repeat(7,1fr);gap:4px;pointer-events:none}.calendar-day-section{margin-bottom:var(--space-4)}.calendar-day-title{margin:0 0 var(--space-2);font-size:14px;text-transform:capitalize}.calendar-selected-block{margin-top:var(--space-4)}.calendar-selected-panel{padding:var(--space-4)}.calendar-selected-panel .calendar-day-section{margin-bottom:0}.calendar-event-card{display:block;padding:var(--space-4);margin-bottom:var(--space-2);border-left:4px solid var(--primary);color:var(--text);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.calendar-event-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0000000f}.calendar-event-card.is-cancelled{opacity:.6}.calendar-event-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.calendar-event-card__title{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.calendar-event-card__time{color:var(--text-muted);font-size:13px;white-space:nowrap;font-weight:600}.calendar-event-card__meta{color:var(--text-muted);font-size:12px;margin-top:4px}.calendar-event-card__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;margin-top:6px;color:var(--text-muted);font-size:12px;font-weight:500}.calendar-agenda .calendar-day-section{background:transparent}@media(max-width:1099px){.calendar-toolbar__right{display:none}}@media(max-width:699px){.calendar-toolbar{gap:var(--space-2)}.calendar-toolbar__left{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.calendar-toolbar__period{flex-wrap:nowrap;width:100%;gap:6px}.calendar-toolbar__period button{padding:8px 10px;white-space:nowrap}.calendar-toolbar__period a button{padding-left:10px;padding-right:10px}.calendar-period-label{min-width:0;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.segmented{flex:0 0 auto}.segmented button{padding:6px 10px}.calendar-filters-panel.mobile-only-block{display:block!important}.calendar-filters-panel .filter-menu{display:flex;flex-direction:column}}@media(min-width:700px){.members-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.members-toolbar{grid-template-columns:minmax(260px,1.45fr) minmax(130px,.75fr) minmax(150px,.8fr) minmax(190px,1fr) minmax(220px,1.15fr);align-items:end}.members-filter-toggle{display:none}.members-filter-fields{display:contents}.member-card{grid-template-columns:56px minmax(0,1fr) 20px;padding:var(--space-4) var(--space-6)}.member-avatar{width:56px;height:56px;border-radius:18px}.member-title-row{flex-direction:row;align-items:flex-start;justify-content:space-between}.member-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.calendar-toolbar{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-4)}.calendar-toolbar__left,.calendar-toolbar__right{flex:0 0 auto}.calendar-toolbar__period{flex:1;justify-content:center}.calendar-layout{display:block}.calendar-sidebar{display:none}.calendar-filters-panel{margin-bottom:0}.cal-grid{gap:6px}.cal-cell{min-height:108px;border-radius:10px;padding:8px 6px;border-color:var(--border);background:var(--surface);align-items:stretch}.cal-cell.out{background:color-mix(in srgb,var(--bg) 85%,var(--surface));opacity:.65}.cal-cell:hover{background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.cal-items{display:flex;flex-direction:column;gap:3px;min-height:28px}.cal-dots{justify-content:flex-start;margin-top:auto}.calendar-month-wrap{margin-bottom:0}}@media(min-width:1100px){.mobile-only-inline,.mobile-only-block{display:none!important}.desktop-only-inline{display:inline-flex!important}.desktop-only-block{display:block!important}.calendar-toolbar__right{display:flex}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--space-4);align-items:start}.calendar-sidebar{display:flex!important;flex-direction:column;gap:var(--space-4);position:sticky;top:calc(var(--space-4) + 56px);max-height:calc(100vh - 88px);overflow-y:auto;padding-right:2px}.calendar-sidebar .calendar-filters-panel{padding:var(--space-3)}.calendar-sidebar .filter-row{font-size:13px;padding:6px var(--space-2)}.calendar-sidebar .calendar-filter-block{margin-top:var(--space-3);padding-top:var(--space-3)}.calendar-selected-panel{order:-1}.calendar-selected-panel .calendar-event-card{padding:var(--space-3)}.calendar-selected-panel .calendar-event-card__header{flex-direction:column;gap:3px}.calendar-selected-panel .calendar-event-card__time{font-size:12px}.calendar-selected-panel .calendar-event-card__footer{font-size:11px}}@media(min-width:1280px){.calendar-layout{grid-template-columns:minmax(0,1fr) 320px}.cal-cell{min-height:116px}}.calendar-top-filters{margin-bottom:var(--space-4)}.calendar-top-filters .calendar-filters-panel{margin-bottom:0}.calendar-filter-sections{display:flex;flex-direction:column;gap:var(--space-3)}.calendar-events-grid{display:grid;grid-template-columns:1fr;gap:var(--space-2)}@media(max-width:699px){.calendar-filters-panel .calendar-filter-sections,.calendar-filter-sections .filter-menu{display:flex;flex-direction:column}.calendar-toolbar{gap:var(--space-2)}.calendar-toolbar__period{flex-wrap:nowrap;gap:var(--space-1)}.calendar-toolbar__period button,.calendar-toolbar__period a button{padding-left:10px;padding-right:10px;white-space:nowrap}.calendar-period-label{min-width:0;font-size:13px}}@media(min-width:700px){.calendar-layout,.calendar-layout.is-month{display:block}.calendar-main{width:100%}.calendar-sidebar{display:none!important}.calendar-filters-panel{padding:var(--space-4)}.calendar-filters-panel .calendar-filters-header{margin-bottom:var(--space-3)}.calendar-filters-panel .calendar-filter-sections{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.3fr) minmax(220px,.9fr);gap:var(--space-4);align-items:start}.calendar-filters-panel .calendar-filter-block{margin:0;padding:0;border-top:none;min-width:0}.calendar-filters-panel .filter-menu,.calendar-filters-panel .calendar-legend-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-2)}.calendar-filters-panel .filter-row{width:auto;min-height:32px;padding:6px 10px;border:1px solid var(--border);background:var(--surface)}.calendar-filters-panel .filter-row.on{border-color:color-mix(in srgb,var(--primary) 45%,var(--surface));background:color-mix(in srgb,var(--primary) 9%,var(--surface))}.calendar-legend-item{padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.calendar-selected-block{margin-top:var(--space-6)}.calendar-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1180px){.calendar-events-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.calendar-page--compact-agenda .calendar-toolbar{margin-bottom:var(--space-4)}.calendar-agenda-layout{display:grid;grid-template-columns:1fr;gap:var(--space-4);align-items:start}.calendar-agenda-rail{display:none}.calendar-agenda-main{min-width:0}.calendar-compact-card{padding:var(--space-4);margin-bottom:var(--space-4)}.calendar-compact-card__head{display:flex;justify-content:space-between;gap:var(--space-2);align-items:baseline;margin-bottom:var(--space-3);text-transform:capitalize}.calendar-compact-card__hint{font-size:12px;color:var(--text-muted);white-space:nowrap}.cal-weekdays.compact{margin-bottom:var(--space-1)}.cal-compact-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-compact-card.is-condensed .cal-compact-grid{gap:2px}.calendar-compact-card.is-condensed .cal-compact-cell{min-height:34px;padding:2px}.cal-compact-cell{min-height:42px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 2px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:12px}.cal-compact-cell:hover{background:var(--bg)}.cal-compact-cell.out{color:var(--text-muted);opacity:.4}.cal-compact-cell.selected{background:color-mix(in srgb,var(--primary) 14%,var(--surface));border-color:color-mix(in srgb,var(--primary) 28%,var(--surface))}.cal-compact-dots{min-height:9px;display:flex;align-items:center;justify-content:center;gap:2px}.cal-daybars{display:flex;flex-direction:column;gap:2px;width:auto;align-self:stretch;margin:1px -4px 0}.cal-daybar{height:4px;width:100%}.calendar-events-list{display:grid;grid-template-columns:1fr;gap:var(--space-2)}.calendar-page--compact-agenda .calendar-event-card{margin-bottom:0}.calendar-page--compact-agenda .calendar-filters-panel{padding:var(--space-4)}.calendar-page--compact-agenda .calendar-filter-sections,.calendar-page--compact-agenda .calendar-filters-panel .calendar-filter-sections{display:flex;flex-direction:column;gap:var(--space-3)}.calendar-page--compact-agenda .calendar-filter-block,.calendar-page--compact-agenda .calendar-filters-panel .calendar-filter-block{margin-top:0;padding-top:var(--space-3);border-top:1px solid var(--border)}.calendar-page--compact-agenda .calendar-filter-block:first-child,.calendar-page--compact-agenda .calendar-filters-panel .calendar-filter-block:first-child{padding-top:0;border-top:none}.calendar-page--compact-agenda .filter-row{width:100%}@media(max-width:699px){.calendar-page--compact-agenda .calendar-toolbar__period{flex-wrap:nowrap;gap:var(--space-1)}.calendar-page--compact-agenda .calendar-toolbar__period button,.calendar-page--compact-agenda .calendar-toolbar__period a button{padding-left:10px;padding-right:10px;white-space:nowrap}.calendar-page--compact-agenda .calendar-period-label{min-width:0;font-size:13px}}@media(min-width:700px){.calendar-page--compact-agenda .mobile-only-block{display:none!important}.calendar-page .calendar-filters-menu{display:none}.calendar-page--compact-agenda{display:flex;flex-direction:column;height:calc(100dvh - var(--cal-desktop-offset, 92px));min-height:460px}.calendar-page--compact-agenda .calendar-toolbar{position:static;margin:0 0 var(--space-3);flex-shrink:0;justify-content:flex-end}.calendar-page--compact-agenda .calendar-toolbar .calendar-nav{display:none}.calendar-agenda-layout{grid-template-columns:320px minmax(0,1fr);gap:var(--space-6);flex:1 1 auto;min-height:0}.calendar-agenda-rail{display:flex;flex-direction:column;gap:var(--space-4);min-height:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain}.calendar-agenda-main{min-height:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain}.calendar-main-nav{display:flex;align-items:center;justify-content:center;gap:6px;position:sticky;top:0;z-index:5;background:var(--bg);padding:2px 0 var(--space-2)}.calendar-agenda-rail .calendar-compact-card{margin-bottom:0}.calendar-compact-card__head{align-items:center}.calendar-compact-card__head .calendar-nav-arrow{flex-shrink:0}.calendar-page--compact-agenda .calendar-day-title{font-size:18px;margin-bottom:var(--space-3)}.calendar-events-list{gap:var(--space-3)}.calendar-page--compact-agenda .calendar-event-card{padding:var(--space-4) var(--space-6)}}@media(min-width:1180px){.calendar-agenda-layout{grid-template-columns:340px minmax(0,860px);justify-content:center}}.calendar-page--compact-agenda .calendar-toolbar__left{min-width:0}.calendar-page--compact-agenda .calendar-mine-button{white-space:nowrap}.calendar-page--compact-agenda .calendar-compact-card__head{align-items:center}.calendar-page--compact-agenda .calendar-compact-card__head strong{display:block;min-width:0;text-transform:capitalize;white-space:nowrap}.calendar-page--compact-agenda .calendar-compact-card__hint{margin-left:var(--space-2)}.calendar-page--compact-agenda .cal-compact-cell{background:var(--surface)!important;color:var(--text)!important;border:1px solid transparent!important;box-shadow:none!important}.calendar-page--compact-agenda .cal-compact-cell:hover{background:var(--bg)!important}.calendar-page--compact-agenda .cal-compact-cell.out{color:var(--text-muted)!important;background:transparent!important;opacity:.38}.calendar-page--compact-agenda .cal-compact-cell.selected{background:color-mix(in srgb,var(--primary) 14%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 32%,var(--surface))!important}.calendar-page--compact-agenda .cal-compact-cell.today .cal-daynum{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:var(--primary);color:#fff;font-weight:700}@media(max-width:699px){.members-page{margin-top:0}.members-hero{flex-direction:row;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.members-hero>div:first-child{min-width:0;flex:1}.members-hero .eyebrow{display:none}.members-hero h1{margin:0}.members-actions{flex:0 0 auto;width:auto;justify-content:flex-end}.members-import-action{display:none}.members-new-action button{padding-inline:var(--space-3);white-space:nowrap}.hero-add{width:40px;padding-inline:0;font-size:20px;line-height:1;text-align:center}.hero-add-label,.members-stats{display:none}.members-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);padding:var(--space-3)}.members-filter-toggle{align-self:end}.member-card{padding:var(--space-3);border-radius:16px}.calendar-page--compact-agenda .calendar-toolbar{gap:var(--space-2)}.calendar-page--compact-agenda .calendar-toolbar__left{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.calendar-page--compact-agenda .calendar-toolbar__left::-webkit-scrollbar{display:none}.calendar-page--compact-agenda .segmented{flex:0 0 auto}.calendar-page--compact-agenda .segmented button{padding:6px 10px;font-size:13px}.calendar-page--compact-agenda .calendar-toolbar__left>button{flex:0 0 auto}.calendar-page--compact-agenda .calendar-toolbar__period{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;width:100%;gap:var(--space-1)}.calendar-page--compact-agenda .calendar-toolbar__period button,.calendar-page--compact-agenda .calendar-toolbar__period a button{padding:8px 10px}.calendar-page--compact-agenda .calendar-toolbar__period a{display:inline-flex;min-width:0}.calendar-page--compact-agenda .calendar-toolbar__period a button{white-space:nowrap}.calendar-page--compact-agenda .calendar-period-label{text-align:center;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.calendar-page--compact-agenda .calendar-agenda-rail{display:none!important}.calendar-page--compact-agenda .calendar-agenda-main>.calendar-compact-card{display:block!important}.calendar-page--compact-agenda .calendar-compact-card{padding:var(--space-3)}.calendar-page--compact-agenda .cal-compact-grid{gap:3px}.calendar-page--compact-agenda .cal-compact-cell{min-height:36px;padding:3px 1px;font-size:12px}}@media(min-width:700px){.calendar-page--compact-agenda .calendar-toolbar__right{display:flex}}.home-dashboard{max-width:1120px;margin:0 auto}@media(min-width:900px){.home-grid{column-count:2;column-gap:var(--space-4)}.home-grid>*{break-inside:avoid}.home-grid>.home-span{column-span:all}}.myact-page{max-width:640px;margin:0 auto}.myact-day-head{font-weight:700;font-size:13px;text-transform:capitalize;color:var(--text);margin:var(--space-3) 0 6px}@media(min-width:900px){.myact-page{max-width:1040px}.myact-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);align-items:start}.myact-day-grid>*{margin-bottom:0!important}}.myact-when{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--text);margin-bottom:6px}.myact-daycount{align-self:flex-start;font-size:12px;font-weight:600;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);border-radius:999px;padding:1px 8px;margin-top:2px}.myact-side{display:none}@media(min-width:900px){.myact-layout{display:flex;gap:var(--space-4);align-items:flex-start}.myact-side{display:block;flex:0 0 260px;position:sticky;top:var(--space-3)}.myact-side-filters{margin-top:var(--space-3)}.myact-main{flex:1 1 auto;min-width:0}.myact-main .calendar-filters-menu{display:none}}.mini-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mini-cal-wd{text-align:center;font-size:10px;text-transform:uppercase;color:var(--text-muted);padding-bottom:2px}.mini-cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:8px;background:none;color:var(--text);font-size:12px}.mini-cal-day:disabled{color:var(--text-muted);opacity:.5;cursor:default}.mini-cal-day.has{background:color-mix(in srgb,var(--primary) 16%,transparent);color:var(--primary);font-weight:700;cursor:pointer}.mini-cal-day.today{outline:2px solid var(--primary);outline-offset:-2px}.detail-page{max-width:1180px;margin:0 auto}.detail-banner{position:relative;display:flex;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.db-cover{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;border-radius:inherit;overflow:hidden}.db-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#000000b8,#00000080 55%,#00000052)}.detail-banner.has-cover>.db-main,.detail-banner.has-cover>.db-actions{position:relative;z-index:1}.detail-banner.has-cover h1,.detail-banner.has-cover .db-facts,.detail-banner.has-cover .db-supervisors{color:#fff}.detail-banner.has-cover .db-facts span{color:#fff!important}.detail-banner .db-main{flex:1;min-width:0}.detail-banner .db-facts{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-top:8px;font-size:14px;color:var(--text)}.detail-banner .db-supervisors{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-top:10px}.detail-banner .db-sup{display:inline-flex;align-items:center;gap:6px;font-size:13px}.detail-banner .db-actions{flex-shrink:0}@media(max-width:899px){.detail-banner--event .db-facts,.detail-banner--event .db-supervisors{display:none}}.detail-rail{display:flex;justify-content:center;margin-bottom:var(--space-4)}@media(min-width:900px){.detail-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:var(--space-4);align-items:start}.detail-rail{display:block;position:sticky;top:var(--space-3);margin-bottom:0}.detail-rail .detail-tabs{flex-direction:column;width:100%;border-radius:12px}.detail-rail .detail-tabs button{width:100%;text-align:left;justify-content:flex-start;padding:10px 14px;font-size:14px;border-bottom:1px solid var(--border)}.detail-rail .detail-tabs button:last-child{border-bottom:none}.detail-rail .tab-bar{flex-direction:column;align-items:stretch;gap:4px;margin-bottom:0}.detail-rail .tab-pill{width:100%;text-align:left;border-radius:8px;padding:10px 14px;font-size:14px}.detail-main{min-width:0}}.docs-thumb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.docs-thumb{aspect-ratio:1;padding:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text);text-decoration:none}.docs-list{list-style:none;margin:0;padding:0}.docs-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.docs-row:last-child{border-bottom:none}.docs-group{margin-bottom:var(--space-3)}.docs-group-head{font-size:13px;font-weight:700;color:var(--text);margin-bottom:4px}.docs-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docs-actions{display:flex;gap:6px;flex-shrink:0}.doc-viewer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:var(--space-3)}.doc-viewer{background:var(--surface);border-radius:12px;width:min(960px,100%);height:min(90vh,100%);display:flex;flex-direction:column;overflow:hidden}.doc-viewer-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.doc-viewer-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.doc-viewer-body{flex:1;min-height:0;display:flex;padding:var(--space-2);background:var(--bg)}.doc-viewer-body iframe{flex:1;width:100%;height:100%;border:none}.doc-viewer-body img{margin:auto;max-width:100%;max-height:100%;object-fit:contain}.library-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-3);overflow-y:auto;z-index:120}.library-modal{position:relative;width:min(96vw,560px);height:86vh;margin-top:var(--space-4);display:flex;flex-direction:column;padding:0;overflow:hidden}.library-body{flex:1;min-height:0;position:relative;display:flex;flex-direction:column}.library-list{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);min-height:0;flex:1}.library-detail{padding:var(--space-4);overflow-y:auto}.library-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}@media(min-width:860px){.library-modal.has-detail{width:min(96vw,940px)}.library-modal.has-detail .library-body{flex-direction:row}.library-modal.has-detail .library-list{flex:0 0 44%;max-width:44%}.library-modal.has-detail .library-detail{flex:1;min-width:0;border-left:1px solid var(--border)}.library-detail-back{display:none}}@media(max-width:859px){.library-detail{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface);z-index:2}}.library-check{flex-shrink:0;align-self:center;font-size:20px;line-height:1;padding:0 4px 0 0;background:none;border:none;color:var(--primary)}.library-card.selected{background:color-mix(in srgb,var(--primary) 12%,transparent)}.library-tags{display:flex;flex-wrap:wrap;gap:6px}.library-tag{padding:3px 10px;font-size:12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.library-tag.on{background:var(--primary);border-color:var(--primary);color:#fff}.library-chip{padding:2px 8px;font-size:12px;border-radius:999px;border:1px solid var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.library-clear{padding:2px 6px;font-size:12px;background:none;border:none;color:var(--text-muted);text-decoration:underline}.library-card{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.library-card.active{background:color-mix(in srgb,var(--primary) 8%,transparent)}.library-card-main{flex:1;min-width:0;display:flex;gap:var(--space-2);text-align:left;background:none;border:none;color:inherit;padding:0;cursor:pointer}.library-card-icon{font-size:20px;flex-shrink:0}.library-card-name{display:block;font-weight:600}.library-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.library-minitag{font-size:10px;padding:0 6px;border-radius:999px;background:var(--bg);color:var(--text-muted)}.library-card-meta{display:block;font-size:12px;color:var(--text-muted);margin-top:2px}.library-card-comp{display:block;font-size:12px;color:var(--primary);margin-top:2px}.library-chip-comp{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 18%,transparent);font-weight:600}.library-desc{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;color:var(--text-muted);margin-top:2px}.library-card-actions{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.member-fiche{max-width:1180px;margin:0 auto}.app-footer{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:var(--space-6, 32px);padding:var(--space-4) var(--space-3);border-top:1px solid var(--border);font-size:12.5px;color:var(--text-muted)}.app-footer a{color:var(--text-muted);text-decoration:none}.app-footer a:hover{color:var(--text);text-decoration:underline}.member-banner{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center}.member-banner .mb-id{display:flex;align-items:center;gap:var(--space-3);flex:1 1 260px;min-width:0}.member-banner .mb-col{display:flex;flex-direction:column;gap:var(--space-2);padding-left:var(--space-4);border-left:1px solid var(--border)}.member-banner .mb-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-left:auto}.member-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:var(--space-4);align-items:start}.member-layout .col{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.member-layout .col>*{margin-bottom:0!important}@media(max-width:900px){.member-layout{grid-template-columns:1fr}}@media(max-width:680px){.member-banner .mb-col{padding-left:0;border-left:0;flex-direction:row;flex-wrap:wrap}.member-banner .mb-actions{margin-left:0}}.loan-recipient-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:6px var(--space-3);min-height:0}.loan-actionbar{position:sticky;bottom:0;z-index:6;display:flex;gap:var(--space-2);padding:var(--space-2) 0;margin-top:var(--space-3);background:var(--bg);border-top:1px solid var(--border)}.loan-actionbar button{white-space:nowrap}.loan-sheet-overlay{position:fixed;top:0;left:0;right:0;height:var(--app-height, 100dvh);background:#0006;z-index:200;display:flex;align-items:flex-end;justify-content:center}.loan-sheet{width:100%;max-width:640px;background:var(--surface);border-radius:16px 16px 0 0;padding:var(--space-3);box-shadow:0 -4px 24px #00000040}
