/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--tracking-tight:-.025em;--leading-tight:1.25;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.flex{display:flex}.inline{display:inline}.table{display:table}.min-h-0{min-height:calc(var(--spacing) * 0)}.w-full{width:100%}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.border{border-style:var(--tw-border-style);border-width:1px}.p-3{padding:calc(var(--spacing) * 3)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-2{padding-block:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"DM Mono", "SF Mono", monospace;--bg:#e8eaff;--bg-surface:#edeffe;--bg-sidebar:#fff;--bg-header:#3d3f8f;--bg-card:#fff;--bg-hover:#f0f2ff;--bg-active:#e4e6ff;--text:#2b2d6e;--text-muted:#8a8dbf;--text-subtle:#b8bad8;--text-header:#fff;--border:#e0e2f5;--border-input:#ced0ec;--border-focus:#6366f1;--accent:#6366f1;--accent-hover:#4f52d8;--accent-light:#eceeff;--accent-coral:#f47b6f;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--shadow-sm:0 2px 8px #6366f114, 0 1px 3px #0000000a;--shadow-card:0 4px 20px #6366f11a, 0 1px 4px #0000000a;--shadow-md:0 8px 30px #6366f124, 0 2px 8px #0000000f;--planning-accent:#6366f1;--planning-secondary:#a78bfa;--planning-success:#34d399;--planning-info:#22d3ee}*,:before,:after{box-sizing:border-box}html,body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:13px;line-height:1.5}#app{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}.app-header{background:var(--bg-header);color:var(--text-header);z-index:100;border-bottom:none;flex-shrink:0;position:sticky;top:0;box-shadow:0 4px 20px #3d3f8f40}.header-nav{background:#ffffff14;border-radius:9px;align-items:center;gap:2px;padding:3px;display:flex}.header-nav-btn{color:#ffffff8c;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:5px 13px;font-size:.8125rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.header-nav-btn:hover{color:#ffffffd9;background:#ffffff1a}.header-nav-btn.active,.header-nav-btn.router-link-active{color:#fff;background:#ffffff2e;font-weight:600}.app-header h1{color:#fff;letter-spacing:-.01em;font-size:14px;font-weight:600}.app-header p{color:#ffffff80;font-size:11px}.app-logo{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.header-title-block{line-height:1.2}.date-range-group{border-radius:var(--radius-md);background:#ffffff1f;border:1px solid #ffffff2e;align-items:center;gap:6px;padding:5px 12px;display:flex}.date-label{color:#ffffff80;font-size:11px;font-weight:500}.date-input{color:#fff;font-size:12px;font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;outline:none;padding:0}.date-input::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer;width:12px;height:12px}.btn-primary{color:#fff;font-size:12px;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;letter-spacing:-.01em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff2e;border:1px solid #ffffff47;align-items:center;gap:5px;padding:6px 14px;transition:background .15s,transform .1s;display:inline-flex}.btn-primary:hover{background:#ffffff42}.btn-primary:active{transform:scale(.97)}.btn-back{color:#ffffffd9;font-size:12px;font-weight:500;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff29;align-items:center;gap:5px;padding:5px 11px;transition:background .15s,color .15s,transform .1s;animation:.18s fadeSlideIn;display:inline-flex}.btn-back:hover{color:#fff;background:#ffffff2e}.btn-back:active{transform:scale(.96)}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.btn-icon{border-radius:var(--radius-sm);color:#ffffffb3;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff2e;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,color .15s;display:flex}.btn-icon:hover{color:#fff;background:#fff3}.btn-icon-sm{width:26px!important;height:26px!important}.btn-dashboard{background:var(--accent);color:#fff;width:100%;font-size:12px;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;letter-spacing:-.01em;border:none;justify-content:center;align-items:center;gap:6px;padding:8px 14px;transition:background .15s,box-shadow .15s,transform .1s;display:flex;box-shadow:0 3px 12px #6366f159}.btn-dashboard:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #6366f173}.btn-dashboard:active{transform:translateY(0)}.app-sidebar{background:var(--bg-sidebar);box-shadow:inset -1px 0 0 var(--border);height:calc(100vh - 52px);position:sticky;top:52px;overflow-y:auto}.sidebar-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);font-size:10px;font-weight:700;display:block}.search-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-subtle);pointer-events:none;flex-shrink:0;position:absolute;left:10px}.search-input{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:12px;font-family:var(--font-sans);color:var(--text);outline:none;padding:7px 10px 7px 30px;transition:border-color .15s,box-shadow .15s}.search-input::placeholder{color:var(--text-subtle)}.search-input:focus{border-color:var(--border-focus);background:#fff;box-shadow:0 0 0 3px #6366f11f}.toggle-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.toggle-track{background:var(--border-input);cursor:pointer;border-radius:999px;flex-shrink:0;width:32px;height:18px;transition:background .2s;position:relative}.toggle-thumb{background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-input:checked+.toggle-track{background:var(--accent)}.toggle-input:checked+.toggle-track .toggle-thumb{transform:translate(14px)}.toggle-text{color:var(--text-muted);-webkit-user-select:none;user-select:none;font-size:11.5px;line-height:1}.sidebar-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text);border:1.5px solid #0000;justify-content:space-between;align-items:center;margin-bottom:1px;padding:6px 9px;font-size:12px;transition:background .12s,color .12s;display:flex}.sidebar-item:hover{background:var(--bg-hover)}.sidebar-item.active{background:var(--accent-light);color:var(--accent);border-color:#6366f12e;font-weight:600}.person-avatar{color:#fff;text-transform:uppercase;letter-spacing:.03em;background:linear-gradient(135deg,#c7c9f5 0%,#a5a8ee 100%);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:8.5px;font-weight:700;line-height:1;display:flex}.sidebar-item.active .person-avatar{background:linear-gradient(135deg, var(--accent) 0%, #8b5cf6 100%)}.color-dot{border-radius:3px;flex-shrink:0;width:8px;height:8px}.sidebar-badge{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);font-weight:500}.sidebar-item.active .sidebar-badge{color:var(--accent)}.cat-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);padding:10px 9px 4px;font-size:10px;font-weight:700;display:block}.content-card{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);border:none;min-height:100px;padding:22px 24px}.content-card h2{color:var(--text);letter-spacing:-.02em;margin-bottom:16px;font-size:15px;font-weight:700}.content-card h3{color:var(--text);letter-spacing:-.01em;margin-top:22px;margin-bottom:10px;font-size:13px;font-weight:600}.content-card table{border-collapse:collapse;width:100%;font-size:12px}.content-card thead th{background:var(--bg);color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;text-align:left;border-bottom:none;padding:8px 12px;font-size:10px;font-weight:700}.content-card thead th:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.content-card thead th:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0;text-align:right}.content-card tbody tr{transition:background .1s}.content-card tbody tr:hover{background:var(--bg-hover)}.content-card tbody td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:7px 12px}.content-card tbody tr:last-child td{border-bottom:none}.content-card tbody td:last-child{text-align:right;font-family:var(--font-mono);color:var(--text-muted);font-size:11.5px;font-weight:500}.content-card table .rank-cell{font-family:var(--font-mono);color:var(--text-subtle);width:32px;font-size:10.5px}.streak-badge{vertical-align:middle;letter-spacing:.02em;border:1px solid;border-radius:4px;align-items:center;margin-right:4px;padding:1px 5px;font-size:10px;font-weight:700;display:inline-flex}.tr-link{cursor:pointer;transition:background .12s,transform .1s}.tr-link:hover{background:var(--bg-active)!important}.tr-link:hover td{color:var(--accent)!important}.tr-link:hover .color-dot{box-shadow:0 0 0 2px #6366f140}.tr-link:active{transform:scaleX(.995)}.tr-link td:last-child:after{content:" →";opacity:0;color:var(--accent);font-size:11px;transition:opacity .15s}.tr-link:hover td:last-child:after{opacity:1}.charts-container{background:0 0;border-bottom:none;padding:12px 12px 0;gap:12px!important}.chart-card{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:16px 20px 12px}.chart-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:10.5px;font-weight:700}.scroll-area{scrollbar-width:thin;scrollbar-color:var(--border) transparent;overflow-y:auto}.scroll-area::-webkit-scrollbar{width:4px}.scroll-area::-webkit-scrollbar-track{background:0 0}.scroll-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.scroll-area::-webkit-scrollbar-thumb:hover{background:var(--text-subtle)}.dark{--bg:#141528;--bg-surface:#1a1c35;--bg-sidebar:#1e2038;--bg-header:#0f1022;--bg-card:#1e2038;--bg-hover:#252745;--bg-active:#252b58;--text:#d8daf8;--text-muted:#7275a8;--text-subtle:#454870;--text-header:#d8daf8;--border:#252745;--border-input:#2e3060;--border-focus:#6366f1;--accent:#7577f5;--accent-hover:#8b8df9;--accent-light:#1e2258;--shadow-sm:0 2px 8px #0000004d;--shadow-card:0 4px 20px #00000059;--shadow-md:0 8px 30px #00000073}.dark .app-header{background:#0c0e1f;box-shadow:0 4px 20px #0006}.dark .app-sidebar{background:var(--bg-sidebar);box-shadow:inset -1px 0 0 var(--border)}.dark .content-card{background:var(--bg-card);box-shadow:var(--shadow-card);border:none}.dark .content-card thead th{background:#141528}.dark .content-card tbody td{border-color:var(--border)}.dark .search-input{background:var(--bg);border-color:var(--border-input);color:var(--text)}.dark .search-input:focus{background:var(--bg-card)}.dark .person-avatar{background:linear-gradient(135deg,#3d3f7a 0%,#2e3068 100%)}.dark .sidebar-item.active .person-avatar{background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%)}.dark .btn-dashboard{box-shadow:0 3px 12px #6366f140}.dark .detail-select{background:var(--bg);border-color:var(--border-input);color:var(--text)}.dark .bottom-sheet{background:var(--bg-card);border-color:var(--border)}.dark .sheet-date-input{background:var(--bg);border-color:var(--border-input);color:var(--text)}.dark input[type=date]{color:var(--text)!important;background-color:#0000!important}.dark input[type=text],.dark input[type=search]{background-color:var(--bg)!important;color:var(--text)!important}.layout-body{flex:1;grid-template-columns:240px 1fr 220px;align-items:start;display:grid}.layout-main{min-width:0}.table-scroll-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.desktop-only{display:flex!important}.mobile-only,.desktop-only-none{display:none!important}.hide-xs{display:block}.header-sep{background:var(--border);width:1px;height:20px;margin:0 4px}@media (width<=1024px){.layout-body{grid-template-columns:1fr}.desktop-only{display:none!important}.mobile-only{display:flex!important}.layout-main{padding-bottom:calc(60px + env(safe-area-inset-bottom,0px));overflow-x:hidden}.sidebar-left{z-index:200;border-right:1px solid var(--border);width:280px;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;top:52px;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #0000001f}.sidebar-left.open{transform:translate(0)}.sidebar-right{z-index:200;border-left:1px solid var(--border);width:260px;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;top:52px;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 24px #0000001f}.sidebar-right.open{transform:translate(0)}.drawer-backdrop{z-index:199;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f112873;animation:.2s backdropIn;display:none;position:fixed;inset:52px 0 0}.drawer-backdrop.open{display:block}.drawer-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px 12px;display:flex!important}.drawer-title{color:var(--text);letter-spacing:-.01em;font-size:13px;font-weight:700}}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}@media (width<=640px){.header-title-block h1{font-size:13px}.hide-xs{display:none!important}.sidebar-left,.sidebar-right{top:52px}.content-card{border-radius:var(--radius-lg);padding:14px;overflow-x:auto}.content-card h2{margin-bottom:12px;font-size:14px}.content-card h3{font-size:12px}.content-card table{min-width:320px}.charts-container{display:none!important}.person-stats-grid{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;flex-direction:row;gap:8px;margin-bottom:0;padding-bottom:4px;display:flex;overflow-x:auto}.person-stat-card{scroll-snap-align:start;flex:0 0 160px}.person-double-grid{grid-template-columns:1fr!important}.table-scroll-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}}.bottom-sheet{background:var(--bg-card);z-index:300;border-top:1px solid var(--border);border-radius:20px 20px 0 0;padding:12px 20px 32px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 30px #6366f11f}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet-handle{background:var(--border-input);border-radius:2px;width:36px;height:4px;margin:0 auto 16px}.bottom-sheet-title{color:var(--text);letter-spacing:-.02em;margin-bottom:16px;font-size:14px;font-weight:700}.sheet-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.sheet-date-input{background:var(--bg);border:1.5px solid var(--border-input);border-radius:var(--radius-md);width:100%;font-size:14px;font-family:var(--font-mono);color:var(--text);outline:none;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.sheet-date-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #6366f11f}.kpi-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;display:grid}.kpi-card{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-lg);align-items:center;gap:12px;padding:14px 16px;transition:box-shadow .15s,transform .15s;display:flex}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.kpi-body{flex-direction:column;gap:1px;min-width:0;display:flex}.kpi-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);white-space:nowrap;font-size:10px;font-weight:700}.kpi-value{color:var(--text);letter-spacing:-.03em;font-size:20px;font-weight:700;line-height:1.1}.kpi-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}@media (width<=1024px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.kpi-grid{grid-template-columns:1fr 1fr;gap:8px}.kpi-card{gap:8px;padding:10px 12px}.kpi-value{font-size:17px}.kpi-icon{border-radius:8px;width:32px;height:32px}}.podium-grid{grid-template-columns:repeat(5,1fr);gap:8px;padding-top:4px;display:grid}.podium-col{flex-direction:column;gap:4px;display:flex}.podium-header{letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:5px;margin-bottom:4px;font-size:10px;font-weight:700;display:flex}.podium-dot{border-radius:2px;flex-shrink:0;width:6px;height:6px}.podium-row{background:var(--bg);border-radius:var(--radius-sm);border-left:2px solid var(--podium-color,var(--accent));align-items:center;gap:5px;padding:5px 7px;transition:background .12s;display:flex}.podium-row:hover{background:var(--bg-active)}.podium-medal{flex-shrink:0;font-size:11px}.podium-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10.5px;font-weight:500;overflow:hidden}.podium-days{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);flex-shrink:0;font-weight:600}.podium-empty{color:var(--text-subtle);text-align:center;padding:6px 7px;font-size:11px}@media (width<=1200px){.podium-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.podium-grid{grid-template-columns:repeat(2,1fr)}}.hcard-grid{grid-template-columns:repeat(5,1fr);gap:8px;padding-top:6px;display:grid}.hcard{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:5px;padding:10px 10px 8px;transition:box-shadow .15s;display:flex}.hcard:hover{box-shadow:var(--shadow-sm)}.hcard-header{align-items:center;gap:5px;margin-bottom:4px;display:flex}.hcard-icon{font-size:13px}.hcard-label{letter-spacing:-.01em;font-size:11px;font-weight:700}.hcard-row{align-items:center;gap:5px;display:flex}.hcard-medal{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:flex}.hcard-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.hcard-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:500;overflow:hidden}.hcard-bar-track{background:var(--border);border-radius:2px;height:3px;overflow:hidden}.hcard-bar-fill{opacity:.75;border-radius:2px;height:100%;transition:width .4s}.hcard-days{font-size:10px;font-family:var(--font-mono);flex-shrink:0;font-weight:600}.hcard-empty{color:var(--text-subtle);text-align:center;padding:8px 0;font-size:11px}@media (width<=1100px){.hcard-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.hcard-grid{grid-template-columns:repeat(2,1fr)}}.repartition-block{flex-direction:column;gap:10px;display:flex}.repartition-row{flex-direction:column;gap:4px;display:flex}.rep-label{color:var(--text-muted);letter-spacing:.02em;font-size:11px;font-weight:700}.rep-right{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.rep-total{font-size:10px;font-family:var(--font-mono);color:var(--text-subtle);text-align:right;font-weight:600;line-height:1}.repartition-bar-track{background:var(--border);border-radius:4px;gap:1px;height:8px;display:flex;overflow:hidden}.repartition-bar-seg{opacity:.85;border-radius:0;height:100%;transition:width .4s}.repartition-bar-seg:first-child{border-radius:4px 0 0 4px}.repartition-bar-seg:last-child{border-radius:0 4px 4px 0}.repartition-bar-seg:only-child{border-radius:4px}.rep-legend{flex-wrap:wrap;gap:6px;display:flex}.rep-legend-item{color:var(--text-muted);align-items:center;gap:3px;font-size:10px;display:flex}.rep-dot{opacity:.85;border-radius:2px;flex-shrink:0;width:6px;height:6px}.rep-val{font-family:var(--font-mono);color:var(--text);font-size:10px;font-weight:600}@keyframes sk-pulse{0%,to{opacity:1}50%{opacity:.45}}.sk-bar{background:var(--border);border-radius:6px;animation:1.4s ease-in-out infinite sk-pulse}.sk-circle{background:var(--border);animation:1.4s ease-in-out infinite sk-pulse}.pd-sk-header{align-items:center;gap:14px;margin-bottom:18px;display:flex}.pd-sk-kpis{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.person-header{align-items:center;gap:14px;margin-bottom:18px;display:flex}.person-avatar-lg{background:linear-gradient(135deg, var(--accent) 0%, #8b5cf6 100%);color:#fff;letter-spacing:.03em;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:15px;font-weight:700;display:flex;box-shadow:0 4px 12px #6366f14d}.person-period{color:var(--text-muted);font-size:11px}.person-stats-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:4px;display:grid}@media (width<=640px){.person-stats-grid{grid-template-columns:repeat(2,1fr)}}.person-stat-card{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:10px;padding:10px 12px;transition:box-shadow .15s,transform .12s;display:flex}.person-stat-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.person-stat-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.person-stat-body{flex-direction:column;gap:1px;min-width:0;display:flex}.person-stat-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);white-space:nowrap;font-size:9.5px;font-weight:700}.person-stat-value{letter-spacing:-.03em;font-size:17px;font-weight:700;line-height:1.1}.person-stat-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.details-filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.detail-select{background:var(--bg);border:1.5px solid var(--border-input);border-radius:var(--radius-md);font-size:12px;font-family:var(--font-sans);color:var(--text);cursor:pointer;outline:none;padding:6px 10px;transition:border-color .15s,box-shadow .15s}.detail-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #6366f11f}.detail-count{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;margin-left:auto}.detail-chips{flex-wrap:wrap;gap:5px;display:flex}.detail-chip{font-size:11px;font-weight:600;font-family:var(--font-sans);color:var(--text-muted);background:var(--bg);border:1.5px solid var(--border-input);cursor:pointer;white-space:nowrap;border-radius:999px;padding:4px 10px;transition:background .12s,color .12s,border-color .12s,box-shadow .12s}.detail-chip:hover{border-color:var(--accent);color:var(--accent)}.detail-chip.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 2px #6366f11f}#loginOverlay{z-index:9999;background:linear-gradient(135deg,#d4d7ff 0%,#c8caff 40%,#ddd5ff 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-card{background:#fff;border-radius:24px;flex-direction:column;align-items:center;width:100%;max-width:380px;padding:40px 36px 36px;animation:.3s cubic-bezier(.34,1.56,.64,1) loginCardIn;display:flex;box-shadow:0 20px 60px #6366f12e,0 4px 16px #0000000f}@keyframes loginCardIn{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.login-logo{background:0 0;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:20px;display:flex}.login-title{color:var(--text);letter-spacing:-.03em;text-align:center;margin-bottom:6px;font-size:18px;font-weight:700}.login-subtitle{color:var(--text-muted);text-align:center;max-width:260px;margin-bottom:28px;font-size:12px;line-height:1.5}.login-form{flex-direction:column;gap:10px;width:100%;display:flex}.login-field{align-items:center;display:flex;position:relative}.login-field-icon{color:var(--text-subtle);pointer-events:none;flex-shrink:0;position:absolute;left:13px}.login-input{background:var(--bg);border:1.5px solid var(--border-input);border-radius:var(--radius-md);width:100%;font-size:13px;font-family:var(--font-sans);color:var(--text);outline:none;padding:11px 14px 11px 36px;transition:border-color .15s,box-shadow .15s}.login-input:focus{border-color:var(--border-focus);background:#fff;box-shadow:0 0 0 3px #6366f11f}.login-pwd-toggle{cursor:pointer;color:var(--text-subtle);background:0 0;border:none;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;right:12px}.login-pwd-toggle:hover{color:var(--text-muted)}.login-error{color:#ef4444;border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;align-items:center;gap:6px;padding:8px 12px;font-size:12px;animation:.3s errorShake;display:flex}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.login-btn{background:var(--accent);color:#fff;width:100%;font-size:13px;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;letter-spacing:-.01em;border:none;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:11px;transition:background .15s,box-shadow .15s,transform .1s;display:flex;box-shadow:0 4px 14px #6366f159}.login-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 18px #6366f173}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.65;cursor:not-allowed}@keyframes spin{to{transform:rotate(360deg)}}.login-spinner{animation:.8s linear infinite spin}.dark #loginOverlay{background:linear-gradient(135deg,#0f1130 0%,#141528 60%,#1a1040 100%)}.dark .login-card{background:var(--bg-card);box-shadow:0 20px 60px #00000080,0 4px 16px #0000004d}.dark .login-input{background:var(--bg);border-color:var(--border-input);color:var(--text)}.dark .login-input:focus{background:var(--bg-card)}.planning-card{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:16px 20px}.planning-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.planning-nav{background:var(--bg-header);color:var(--text-header);border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;padding:8px 12px;display:flex}.planning-period{color:var(--text-header);justify-content:center;align-items:center;gap:8px;min-width:240px;font-size:.875rem;font-weight:600;display:flex}.planning-period-picker{cursor:pointer;border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;padding:4px 10px;transition:background .15s}.planning-period-picker:hover{background:#ffffff1f}.planning-section{margin-bottom:24px}.planning-section-others{border-top:2px solid var(--border);margin-top:32px;padding-top:24px}.planning-section-header{color:var(--planning-accent);text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#6366f114 0%,#a78bfa14 100%);border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:12px 16px;font-size:.8125rem;font-weight:700;display:flex}.btn-favorite{border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text-muted);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:all .2s;display:flex}.btn-favorite:hover{border-color:var(--planning-accent);color:var(--planning-accent);background:#6366f11a;transform:scale(1.1)}.btn-favorite.active{color:#fff;background:linear-gradient(135deg,#fcd34d 0%,#f59e0b 100%);border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b4d}.btn-favorite.active:hover{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);transform:scale(1.15)}.planning-row-favorite{background:linear-gradient(135deg,#fcd34d0d 0%,#f59e0b0d 100%);border-left:3px solid #f59e0b;border-radius:12px;padding-left:8px}.planning-row-favorite:hover{background:linear-gradient(135deg,#fcd34d14 0%,#f59e0b14 100%)}.planning-grid-header{background:var(--bg-card);z-index:10;grid-template-columns:200px repeat(6,1fr);gap:8px;margin-bottom:12px;padding:12px 0;display:grid;position:sticky;top:52px}.planning-name-col{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;align-items:center;padding:0 12px;font-size:.8125rem;font-weight:700;display:flex}.planning-day-col{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:16px;padding:10px 12px;transition:all .2s;box-shadow:0 1px 4px #0000000a}.planning-day-col:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.planning-day-today{border-color:var(--planning-accent);background:linear-gradient(135deg,#6366f11f 0%,#a78bfa1f 100%);box-shadow:0 0 0 1px #6366f140,0 2px 8px #6366f11f}.planning-day-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;font-size:.75rem;font-weight:600}.planning-day-date{color:var(--text);font-size:.875rem;font-weight:700}.planning-grid-body{flex-direction:column;gap:8px;display:flex}.planning-row{border-radius:12px;grid-template-columns:200px repeat(6,1fr);gap:8px;padding:4px 0;transition:all .2s;animation:.3s ease-out backwards slideInPlanning;display:grid}.planning-row:hover{background:var(--bg-hover)}.planning-days-mobile{display:contents}.planning-name-cell{align-items:center;gap:12px;padding:0 12px;display:flex}.planning-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.75rem;font-weight:700;display:flex;box-shadow:0 2px 8px #6366f14d}.planning-person-info{flex:1;min-width:0}.planning-person-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.planning-cell{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:6px;padding:10px;transition:all .2s;display:flex}.planning-cell:hover{box-shadow:0 2px 8px #0000000f}.planning-cell-work,.planning-cell-absence{padding:0;overflow:hidden}.planning-cell-empty{background:var(--bg-surface);border-style:dashed;justify-content:center;align-items:center;display:flex}.planning-location{flex:1;align-items:center;gap:4px;height:100%;padding:8px 10px;font-size:.6875rem;font-weight:500;display:flex}.loc-slot{display:none}.loc-time,.loc-label{display:inline}.loc-icon{font-size:.875rem}.planning-absence-fill{flex:1;justify-content:center;align-items:center;height:100%;display:flex}.planning-absence{font-size:.75rem;font-style:italic}.planning-rest{color:var(--text-subtle);font-size:1rem}@keyframes slideInPlanning{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.planning-row:first-child{animation-delay:20ms}.planning-row:nth-child(2){animation-delay:40ms}.planning-row:nth-child(3){animation-delay:60ms}.planning-row:nth-child(4){animation-delay:80ms}.planning-row:nth-child(5){animation-delay:.1s}.planning-row:nth-child(n+6){animation-delay:.12s}@media (width<=1024px){.planning-grid-header,.planning-row{grid-template-columns:160px repeat(6,1fr)}.planning-days-mobile{display:contents}.planning-name-col{font-size:.75rem}.planning-avatar{width:32px;height:32px;font-size:.6875rem}.planning-person-name{font-size:.75rem}.planning-cell{min-height:70px;padding:8px}}@media (width<=768px){.planning-grid-header{display:none}.planning-header{flex-direction:column;align-items:stretch}.planning-nav{justify-content:center;gap:8px;padding:6px 10px}.planning-period{min-width:0;font-size:.8125rem}.wp-label-full{display:none}.wp-label-short{display:inline}.btn-sort{display:none!important}.planning-row{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:8px;padding:10px;display:flex}.planning-row-favorite{border:2px solid #f59e0b}.planning-name-cell{border-bottom:1px solid var(--border);padding:0 2px 8px}.btn-favorite{margin-left:auto}.planning-days-mobile{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.planning-cell{border-radius:10px;flex-direction:column;gap:0;min-height:56px;padding:0;display:flex;overflow:hidden}.planning-cell:before{content:attr(data-day);color:var(--text-muted);text-transform:uppercase;text-align:center;background:var(--bg-card);letter-spacing:.3px;padding:3px 0 2px;font-size:.5625rem;font-weight:700;display:block}.planning-location{text-align:center;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;margin:0;padding:4px 2px}.loc-icon{font-size:1rem}.loc-slot{font-size:.5625rem;font-weight:700;line-height:1;display:block}.loc-time,.loc-label{display:none}.planning-absence{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px;font-size:.5rem;font-style:normal;overflow:hidden}.planning-absence-fill{border-radius:0 0 10px 10px}.planning-cell-empty:before{background:0 0}.planning-rest{font-size:.875rem}.planning-section-header{padding:10px 12px;font-size:.75rem}}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:500;background:#0006;position:fixed;inset:0}.modal-box{background:var(--bg-card);border-radius:var(--radius-xl);z-index:501;flex-direction:column;width:420px;max-width:92vw;max-height:80vh;animation:.2s ease-out modalIn;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 24px 64px #0003}@keyframes modalIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.95)translateY(8px)}to{opacity:1;transform:translate(-50%,-50%)scale(1)translateY(0)}}.modal-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:20px;display:flex}.modal-person{color:var(--text);font-size:.9375rem;font-weight:700}.modal-date{color:var(--text-muted);text-transform:capitalize;margin-top:2px;font-size:.8125rem}.modal-entries{flex-direction:column;gap:10px;padding:16px 20px;display:flex;overflow-y:auto}.modal-entry{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.modal-entry-bar{border-radius:2px;flex-shrink:0;width:4px;height:36px}.modal-entry-info{flex-direction:column;gap:3px;display:flex}.modal-entry-cat{color:var(--text);font-size:.875rem;font-weight:600}.modal-entry-hours{color:var(--text-muted);font-size:.8125rem;font-family:var(--font-mono)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.drp-wrapper[data-v-beaef242]{align-items:center;display:inline-flex;position:relative}.drp-trigger[data-v-beaef242]{border-radius:var(--radius-sm);color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff2e;align-items:center;gap:7px;height:32px;padding:0 12px;font-size:.8125rem;font-weight:500;transition:background .15s;display:flex}.drp-trigger[data-v-beaef242]:hover{background:#ffffff2e}.drp-dropdown[data-v-beaef242]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:200;width:272px;color:var(--text);padding:14px;position:absolute;top:calc(100% + 10px);right:0}.drp-drop-enter-active[data-v-beaef242],.drp-drop-leave-active[data-v-beaef242]{transition:opacity .15s,transform .15s}.drp-drop-enter-from[data-v-beaef242],.drp-drop-leave-to[data-v-beaef242]{opacity:0;transform:translateY(-6px)}.drp-range-chips[data-v-beaef242]{border-bottom:1px solid var(--border);align-items:center;gap:6px;margin-bottom:12px;padding-bottom:12px;display:flex}.drp-chip[data-v-beaef242]{border:1.5px solid var(--border);background:var(--bg-surface,#f8f9ff);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;flex:1;align-items:flex-start;padding:6px 10px;transition:border-color .15s,background .15s;display:flex}.drp-chip[data-v-beaef242]:hover{border-color:var(--accent);background:var(--accent-light)}.drp-chip-active[data-v-beaef242]{border-color:var(--accent)!important;background:var(--accent-light)!important}.drp-chip-label[data-v-beaef242]{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:2px;font-size:.625rem;font-weight:700;line-height:1}.drp-chip-active .drp-chip-label[data-v-beaef242]{color:var(--accent)}.drp-chip-value[data-v-beaef242]{color:var(--text);white-space:nowrap;font-size:.75rem;font-weight:600}.drp-chip-active .drp-chip-value[data-v-beaef242]{color:var(--accent)}.drp-chip-arrow[data-v-beaef242]{color:var(--text-subtle);flex-shrink:0;font-size:.75rem}.drp-month-nav[data-v-beaef242]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.drp-month-label[data-v-beaef242]{color:var(--text);font-size:.875rem;font-weight:700}.drp-month-label-btn[data-v-beaef242]{color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:3px 8px;font-size:.875rem;font-weight:700;transition:background .12s,color .12s;display:flex}.drp-month-label-btn[data-v-beaef242]:hover{background:var(--bg-hover);color:var(--accent)}.drp-nav-btn[data-v-beaef242]{border:1px solid var(--border);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.drp-nav-btn[data-v-beaef242]:hover{background:var(--bg-hover);color:var(--accent)}.drp-days-header[data-v-beaef242]{text-align:center;color:var(--text-muted);letter-spacing:.03em;grid-template-columns:repeat(7,1fr);margin-bottom:4px;font-size:.6875rem;font-weight:600;display:grid}.drp-grid[data-v-beaef242]{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.drp-cell[data-v-beaef242]{cursor:pointer;height:30px;color:var(--text);border-radius:6px;justify-content:center;align-items:center;font-size:.75rem;transition:background .1s,color .1s;display:flex}.drp-cell[data-v-beaef242]:hover:not(.drp-cell-start):not(.drp-cell-end){background:var(--bg-hover)}.drp-cell-other[data-v-beaef242]{color:var(--text-subtle)}.drp-cell-today[data-v-beaef242]{color:var(--accent);font-weight:700}.drp-cell-in-range[data-v-beaef242]{background:var(--accent-light);color:var(--accent);border-radius:0}.drp-cell-start[data-v-beaef242]{background:var(--accent);border-radius:6px 0 0 6px;color:#fff!important}.drp-cell-end[data-v-beaef242]{background:var(--accent);border-radius:0 6px 6px 0;color:#fff!important}.drp-cell-start.drp-cell-end[data-v-beaef242]{border-radius:6px}.drp-year-grid[data-v-beaef242]{grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:4px;display:grid}.drp-year-btn[data-v-beaef242]{color:var(--text);cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:8px;padding:7px 4px;font-size:.8125rem;font-weight:500;transition:background .12s,color .12s,border-color .12s}.drp-year-btn[data-v-beaef242]:hover{background:var(--bg-hover);color:var(--accent)}.drp-year-current[data-v-beaef242]{color:var(--accent);font-weight:700}.drp-year-active[data-v-beaef242]{border-color:#0000;background:var(--accent)!important;color:#fff!important}.drp-shortcuts[data-v-beaef242]{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:5px;margin-top:10px;padding-top:10px;display:grid}.drp-shortcut-full[data-v-beaef242]{grid-column:1/-1}.drp-shortcut[data-v-beaef242]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;text-align:center;background:0 0;border-radius:7px;padding:5px 6px;font-size:.6875rem;font-weight:600;transition:background .12s,color .12s,border-color .12s}.drp-shortcut[data-v-beaef242]:hover{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.drp-actions[data-v-beaef242]{gap:8px;margin-top:8px;display:flex}.drp-btn-cancel[data-v-beaef242]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;flex:1;padding:7px;font-size:.75rem;font-weight:600;transition:background .12s}.drp-btn-cancel[data-v-beaef242]:hover{background:var(--bg-hover)}.drp-btn-apply[data-v-beaef242]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:2;justify-content:center;align-items:center;gap:5px;padding:7px;font-size:.75rem;font-weight:600;transition:background .12s,opacity .12s;display:flex}.drp-btn-apply[data-v-beaef242]:hover:not(:disabled){background:var(--accent-hover)}.drp-btn-apply[data-v-beaef242]:disabled{opacity:.4;cursor:not-allowed}.notif-wrap[data-v-94a49db4],.notif-btn[data-v-94a49db4]{position:relative}.notif-btn-active[data-v-94a49db4]{background:var(--bg-hover)!important}.notif-badge[data-v-94a49db4]{color:#fff;pointer-events:none;background:#ef4444;border-radius:7px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:.5rem;font-weight:800;line-height:1;display:flex;position:absolute;top:2px;right:2px}.notif-dropdown[data-v-94a49db4]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);width:300px;overflow:hidden;box-shadow:0 8px 28px #00000038}.notif-header[data-v-94a49db4]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px 10px;display:flex}.notif-title[data-v-94a49db4]{color:var(--text);font-size:.8125rem;font-weight:700}.notif-mark-all[data-v-94a49db4]{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.6875rem;font-weight:600}.notif-mark-all[data-v-94a49db4]:hover{text-decoration:underline}.notif-empty[data-v-94a49db4]{color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;padding:28px 16px;font-size:.75rem;display:flex}.notif-list[data-v-94a49db4]{max-height:320px;overflow-y:auto}.notif-item[data-v-94a49db4]{cursor:pointer;border-bottom:1px solid var(--border);align-items:flex-start;gap:10px;padding:10px 14px;transition:background .12s;display:flex}.notif-item[data-v-94a49db4]:last-child{border-bottom:none}.notif-item[data-v-94a49db4]:hover{background:var(--bg-hover)}.notif-dot[data-v-94a49db4]{background:var(--border);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:4px}.notif-dot-unread[data-v-94a49db4]{background:var(--accent)}.notif-content[data-v-94a49db4]{flex:1;min-width:0}.notif-message[data-v-94a49db4]{color:var(--text);font-size:.75rem;line-height:1.4}.notif-item-unread .notif-message[data-v-94a49db4]{font-weight:600}.notif-time[data-v-94a49db4]{color:var(--text-muted);margin-top:2px;font-size:.625rem}.sk-controls[data-v-aa136d22]{border-bottom:1px solid var(--border);padding:10px 12px}.bottom-nav[data-v-02ccb918]{display:none}@media (width<=1024px){.bottom-nav[data-v-02ccb918]{background:var(--bg-card);border-top:1px solid var(--border);z-index:300;height:60px;padding-bottom:env(safe-area-inset-bottom,0px);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #00000014}.bottom-nav-item[data-v-02ccb918]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 4px;font-size:.625rem;font-weight:500;text-decoration:none;transition:color .15s;display:flex}.bottom-nav-item[data-v-02ccb918]:hover{color:var(--text)}.bottom-nav-item.active[data-v-02ccb918]{color:var(--accent)}.bottom-nav-item.active svg[data-v-02ccb918]{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--accent) 50%, transparent))}}.wp-wrapper[data-v-1c20f659]{align-items:center;display:inline-flex;position:relative}.wp-label-short[data-v-1c20f659]{display:none}.wp-dropdown[data-v-1c20f659]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:200;width:260px;color:var(--text);padding:14px;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.wp-drop-enter-active[data-v-1c20f659],.wp-drop-leave-active[data-v-1c20f659]{transition:opacity .15s,transform .15s}.wp-drop-enter-from[data-v-1c20f659],.wp-drop-leave-to[data-v-1c20f659]{opacity:0;transform:translate(-50%)translateY(-6px)}.wp-month-nav[data-v-1c20f659]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.wp-month-label[data-v-1c20f659]{color:var(--text);font-size:.875rem;font-weight:700}.wp-nav-btn[data-v-1c20f659]{border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.wp-nav-btn[data-v-1c20f659]:hover{background:var(--bg-hover);color:var(--accent)}.wp-days-header[data-v-1c20f659]{text-align:center;color:var(--text-muted);letter-spacing:.03em;grid-template-columns:22px repeat(7,1fr);margin-bottom:4px;font-size:.6875rem;font-weight:600;display:grid}.wp-wn-head[data-v-1c20f659]{color:var(--text-subtle);font-size:.5625rem}.wp-grid[data-v-1c20f659]{grid-template-columns:22px repeat(7,1fr);gap:1px;display:grid}.wp-wn[data-v-1c20f659]{color:var(--text-subtle);letter-spacing:0;justify-content:center;align-items:center;height:30px;font-size:.5625rem;font-weight:700;display:flex}.wp-cell[data-v-1c20f659]{cursor:pointer;height:30px;color:var(--text);border-radius:0;justify-content:center;align-items:center;font-size:.75rem;transition:background .1s,color .1s;display:flex}.wp-cell-other[data-v-1c20f659]{color:var(--text-subtle)}.wp-cell-today[data-v-1c20f659]{color:var(--accent);font-weight:700}.wp-cell-hover[data-v-1c20f659]{background:var(--accent-light);border-radius:0}.wp-cell-hover.wp-cell-mon[data-v-1c20f659]{border-radius:8px 0 0 8px}.wp-cell-hover.wp-cell-sun[data-v-1c20f659]{border-radius:0 8px 8px 0}.wp-cell-selected[data-v-1c20f659]{background:var(--accent);border-radius:0;color:#fff!important}.wp-cell-selected.wp-cell-mon[data-v-1c20f659]{border-radius:8px 0 0 8px}.wp-cell-selected.wp-cell-sun[data-v-1c20f659]{border-radius:0 8px 8px 0}.wp-shortcuts[data-v-1c20f659]{border-top:1px solid var(--border);gap:6px;margin-top:12px;padding-top:10px;display:flex}.wp-shortcut[data-v-1c20f659]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:7px;flex:1;padding:5px 4px;font-size:.6875rem;font-weight:600;transition:background .12s,color .12s,border-color .12s}.wp-shortcut[data-v-1c20f659]:hover{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.btn-sort[data-v-b3ae60b2]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-sort[data-v-b3ae60b2]:hover{background:var(--bg-hover);color:var(--text)}.btn-sort-active[data-v-b3ae60b2]{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.gs-spinner[data-v-1bfb8f22]{border:4px solid #6366f1;border-top-color:#0000;border-radius:50%;width:48px;height:48px;animation:1s linear infinite gs-spin-1bfb8f22;display:inline-block}@keyframes gs-spin-1bfb8f22{to{transform:rotate(360deg)}}.gs-th-sortable[data-v-1bfb8f22]{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s}.gs-th-sortable[data-v-1bfb8f22]:hover,.gs-th-active[data-v-1bfb8f22]{color:var(--accent)!important}.gs-sort-icon[data-v-1bfb8f22]{color:currentColor;align-items:center;display:inline-flex}.btn-email[data-v-a0089a30],.btn-ics[data-v-a0089a30]{border-radius:var(--radius-md);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:background .15s,transform .1s;display:inline-flex}.btn-email[data-v-a0089a30]{background:var(--accent);color:#fff;border:none}.btn-email[data-v-a0089a30]:hover{background:var(--accent-hover)}.btn-email[data-v-a0089a30]:active{transform:scale(.97)}.btn-ics[data-v-a0089a30]{background:var(--bg);color:var(--text);border:1.5px solid var(--border)}.btn-ics[data-v-a0089a30]:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.btn-ics[data-v-a0089a30]:active{transform:scale(.97)}.modal-backdrop[data-v-b05a980a]{z-index:200;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-box[data-v-b05a980a]{background:var(--bg-card);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-md);overflow-y:auto}.modal-header[data-v-b05a980a]{justify-content:space-between;align-items:center;padding:20px 20px 0;display:flex}.modal-header h3[data-v-b05a980a]{margin:0;font-size:.9375rem;font-weight:700}.collab-form[data-v-b05a980a]{flex-direction:column;gap:12px;padding:16px 20px 20px;display:flex}.form-row[data-v-b05a980a]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-group[data-v-b05a980a]{flex-direction:column;gap:4px;display:flex}.form-group label[data-v-b05a980a]{color:var(--text-muted);font-size:.75rem;font-weight:600}.form-input[data-v-b05a980a]{border:1px solid var(--border-input);background:var(--bg-surface);color:var(--text);border-radius:8px;outline:none;width:100%;padding:7px 10px;font-size:.8125rem}.form-input[data-v-b05a980a]:focus{border-color:var(--border-focus)}.toggle-row[data-v-b05a980a]{margin-top:4px}.form-error[data-v-b05a980a]{color:#ef4444;background:#ef444414;border-radius:8px;padding:8px 10px;font-size:.75rem}.modal-footer[data-v-b05a980a]{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.btn-ghost[data-v-b05a980a]{border:1px solid var(--border);cursor:pointer;color:var(--text);background:0 0;border-radius:8px;padding:7px 16px;font-size:.8125rem}.btn-ghost[data-v-b05a980a]:hover{background:var(--bg-hover)}.btn-save[data-v-b05a980a]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:5px;padding:7px 18px;font-size:.8125rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.btn-save[data-v-b05a980a]:hover{background:var(--accent-hover)}.btn-save[data-v-b05a980a]:active{transform:scale(.97)}.btn-save[data-v-b05a980a]:disabled{opacity:.5;cursor:default}.btn-close[data-v-b05a980a]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.btn-close[data-v-b05a980a]:hover{background:var(--bg-hover);color:var(--text)}@media (width<=480px){.form-row[data-v-b05a980a]{grid-template-columns:1fr}}.collab-toolbar[data-v-9474427d]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar-right[data-v-9474427d]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.btn-add[data-v-9474427d]{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:6px 14px;font-size:.8125rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.btn-add[data-v-9474427d]:hover{background:var(--accent-hover)}.btn-add[data-v-9474427d]:active{transform:scale(.97)}.table-wrap[data-v-9474427d]{overflow-x:auto}.collab-table[data-v-9474427d]{border-collapse:collapse;width:100%;font-size:.8125rem}.col-extra[data-v-9474427d]{display:table-cell}@media (width<=768px){.col-extra[data-v-9474427d]{display:none}}.collab-name[data-v-9474427d]{white-space:nowrap;font-weight:600}.avatar-active[data-v-9474427d]{background:linear-gradient(135deg, var(--accent) 0%, #8b5cf6 100%)!important;color:#fff!important}.badge-run[data-v-9474427d]{letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 5px;font-size:.5625rem;font-weight:700;display:inline-block}.badge-on-run[data-v-9474427d]{color:#22c55e;background:#22c55e1f}.badge-hors-run[data-v-9474427d]{color:var(--text-muted);background:#b0b0b026}.badge-cap[data-v-9474427d]{letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 5px;font-size:.5625rem;font-weight:700;display:inline-block}.badge-tlt[data-v-9474427d]{color:#c9a77b;background:#d7be9e33}.badge-bo[data-v-9474427d]{color:#b49b14;background:#fde04733}.badge-niveau[data-v-9474427d]{background:var(--bg-surface);color:var(--text-muted);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-block}.row-clickable[data-v-9474427d]{cursor:pointer}.row-clickable:hover td[data-v-9474427d]{background:var(--bg-hover)}.modal-backdrop[data-v-1c3cb370]{z-index:200;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-box[data-v-1c3cb370]{background:var(--bg-card);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-md);overflow-y:auto}.modal-header[data-v-1c3cb370]{justify-content:space-between;align-items:flex-start;padding:20px 20px 12px;display:flex}.modal-header h3[data-v-1c3cb370]{margin:0 0 2px;font-size:.9375rem;font-weight:700}.modal-sub[data-v-1c3cb370]{color:var(--text-muted);margin:0;font-size:.75rem}.timeline-wrap[data-v-1c3cb370]{padding:0 20px 12px}.timeline-labels[data-v-1c3cb370]{color:var(--text-muted);justify-content:space-between;margin-bottom:4px;font-size:.625rem;display:flex}.timeline-bar[data-v-1c3cb370]{border:1px solid var(--border);border-radius:6px;height:20px;display:flex;overflow:hidden}.timeline-slot[data-v-1c3cb370]{flex:1}.blocks-section[data-v-1c3cb370],.add-section[data-v-1c3cb370]{border-top:1px solid var(--border);padding:0 20px 16px}.section-title[data-v-1c3cb370]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:12px 0 8px;font-size:.6875rem;font-weight:700}.empty-hint[data-v-1c3cb370]{color:var(--text-subtle);font-size:.75rem;font-style:italic}.block-row[data-v-1c3cb370]{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 0;font-size:.8125rem;display:flex}.block-row[data-v-1c3cb370]:last-child{border-bottom:none}.block-dot[data-v-1c3cb370]{border-radius:3px;flex-shrink:0;width:10px;height:10px}.block-name[data-v-1c3cb370]{flex:1;font-weight:500}.block-time[data-v-1c3cb370]{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem}.btn-danger-ghost[data-v-1c3cb370]{color:#ef4444!important}.btn-danger-ghost[data-v-1c3cb370]:hover{background:#ef44441a!important}.add-form[data-v-1c3cb370]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-input[data-v-1c3cb370]{border:1px solid var(--border-input);background:var(--bg-surface);color:var(--text);border-radius:8px;outline:none;padding:6px 8px;font-size:.75rem}.form-input[data-v-1c3cb370]:focus{border-color:var(--border-focus)}.form-input-sm[data-v-1c3cb370]{width:90px}.btn-sm[data-v-1c3cb370]{align-items:center;gap:4px;display:flex;padding:6px 12px!important;font-size:.75rem!important}.form-error[data-v-1c3cb370]{color:#ef4444;background:#ef444414;border-radius:8px;margin-top:8px;padding:6px 10px;font-size:.75rem}.modal-footer[data-v-1c3cb370]{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 20px 20px;display:flex}.btn-ghost[data-v-1c3cb370]{border:1px solid var(--border);cursor:pointer;color:var(--text);background:0 0;border-radius:8px;padding:7px 16px;font-size:.8125rem}.btn-ghost[data-v-1c3cb370]:hover{background:var(--bg-hover)}.heures-badge[data-v-1c3cb370]{font-size:.8125rem;font-weight:700;font-family:var(--font-mono);color:var(--accent);background:var(--accent-light);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.btn-close[data-v-1c3cb370]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.btn-close[data-v-1c3cb370]:hover{background:var(--bg-hover);color:var(--text)}.btn-remove[data-v-1c3cb370]{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-subtle);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-remove[data-v-1c3cb370]:hover{color:#ef4444;background:#ef444414;border-color:#ef44444d}.btn-edit-block[data-v-1c3cb370]{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-subtle);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-edit-block[data-v-1c3cb370]:hover{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.btn-edit-confirm[data-v-1c3cb370],.btn-edit-cancel[data-v-1c3cb370]{border-radius:var(--radius-sm);cursor:pointer;border:1px solid;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:background .12s;display:inline-flex}.btn-edit-confirm[data-v-1c3cb370]{color:#059669;background:#34d3991a;border-color:#34d39966}.btn-edit-confirm[data-v-1c3cb370]:hover{background:#34d39933}.btn-edit-cancel[data-v-1c3cb370]{border-color:var(--border);color:var(--text-muted);background:0 0}.btn-edit-cancel[data-v-1c3cb370]:hover{background:var(--bg-hover)}.block-row-editing[data-v-1c3cb370]{background:var(--accent-light);border-radius:var(--radius-sm);flex-wrap:wrap;margin:0 -6px;padding:4px 6px;gap:5px!important}.form-input-edit[data-v-1c3cb370]{width:130px;padding:4px 6px;font-size:.6875rem}.form-input-xs[data-v-1c3cb370]{width:76px;padding:4px 6px;font-size:.6875rem}.btn-preset-xs[data-v-1c3cb370]{color:#d97706;border-radius:var(--radius-sm);cursor:pointer;background:#f59e0b1f;border:1px solid #f59e0b4d;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:background .15s;display:inline-flex}.btn-preset-xs[data-v-1c3cb370]:hover{background:#f59e0b38}.btn-preset[data-v-1c3cb370]{color:#d97706;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:#f59e0b1f;border:1px solid #f59e0b4d;align-items:center;gap:4px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:background .15s;display:inline-flex}.btn-preset[data-v-1c3cb370]:hover{background:#f59e0b38}.btn-add[data-v-1c3cb370]{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:4px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:background .15s;display:inline-flex}.btn-add[data-v-1c3cb370]:hover{background:var(--accent-hover)}.btn-add[data-v-1c3cb370]:disabled{opacity:.4;cursor:default}.btn-save[data-v-1c3cb370]{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:5px;padding:7px 18px;font-size:.8125rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.btn-save[data-v-1c3cb370]:hover{background:var(--accent-hover)}.btn-save[data-v-1c3cb370]:active{transform:scale(.97)}.btn-save[data-v-1c3cb370]:disabled{opacity:.4;cursor:default}.apply-section[data-v-1c3cb370]{border-top:1px solid var(--border);padding:0 20px 16px}.collab-list[data-v-1c3cb370]{flex-direction:column;gap:4px;max-height:180px;margin-top:8px;display:flex;overflow-y:auto}.collab-check[data-v-1c3cb370]{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:5px 6px;font-size:.8125rem;transition:background .12s;display:flex}.collab-check[data-v-1c3cb370]:hover{background:var(--bg-hover)}.collab-check input[data-v-1c3cb370]{cursor:pointer;accent-color:var(--accent)}.quick-actions[data-v-1c3cb370]{gap:6px;margin-top:8px;display:flex}.btn-ghost-xs[data-v-1c3cb370]{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:2px 10px;font-size:.6875rem}.btn-ghost-xs[data-v-1c3cb370]:hover{background:var(--bg-hover);color:var(--text)}.week-check[data-v-1c3cb370]{cursor:pointer;align-items:flex-start;gap:8px;margin-top:8px;font-size:.8125rem;display:flex}.week-check input[data-v-1c3cb370]{cursor:pointer;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.week-hint[data-v-1c3cb370]{color:#d97706;background:#f59e0b14;border-radius:8px;margin-top:8px;padding:6px 10px;font-size:.75rem}.btn-save[data-v-9b251d93]{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:5px;padding:6px 14px;font-size:.8125rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.btn-save[data-v-9b251d93]:hover{background:var(--accent-hover)}.btn-save[data-v-9b251d93]:active{transform:scale(.97)}.btn-save[data-v-9b251d93]:disabled{opacity:.5;cursor:default}.btn-action[data-v-9b251d93]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.heures-badge[data-v-9b251d93]{font-size:.75rem;font-weight:700;font-family:var(--font-mono);color:var(--accent);display:inline-block}.row-clickable[data-v-9b251d93]{cursor:pointer}.row-clickable:hover td[data-v-9b251d93]{background:var(--bg-hover)}.btn-action[data-v-9b251d93]:hover{background:var(--bg-hover);color:var(--text)}.btn-action-danger[data-v-9b251d93]:hover{color:#ef4444;background:#ef444414;border-color:#ef44444d}.btn-action-confirm[data-v-9b251d93]{color:#059669;border-color:#34d39966}.btn-action-confirm[data-v-9b251d93]:hover{color:#059669;background:#34d3991a}.days-grid[data-v-9b251d93]{grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:16px;display:grid}.day-card[data-v-9b251d93]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:6px;min-height:70px;padding:10px;transition:all .15s;display:flex}.day-card[data-v-9b251d93]:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.day-card-active[data-v-9b251d93]{border-color:var(--accent);background:var(--accent-light)}.day-card-today .day-num[data-v-9b251d93]{color:var(--accent);font-weight:700}.day-card-weekend[data-v-9b251d93]{opacity:.7}.day-header[data-v-9b251d93]{justify-content:space-between;align-items:baseline;display:flex}.day-name[data-v-9b251d93]{color:var(--text-muted);text-transform:uppercase;font-size:.6875rem;font-weight:600}.day-num[data-v-9b251d93]{font-size:1rem;font-weight:700}.day-status[data-v-9b251d93]{display:flex}.badge-filled[data-v-9b251d93],.badge-exists[data-v-9b251d93],.badge-new[data-v-9b251d93]{border-radius:999px;align-items:center;gap:3px;padding:2px 6px;font-size:.625rem;font-weight:600;display:inline-flex}.badge-filled[data-v-9b251d93]{color:#059669;background:#34d39926}.badge-exists[data-v-9b251d93]{color:#d97706;background:#f59e0b1f}.badge-new[data-v-9b251d93]{color:var(--accent);background:#6366f11a}.day-editor[data-v-9b251d93]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.day-editor-header[data-v-9b251d93]{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px;display:flex}.day-editor-header h3[data-v-9b251d93]{margin:0;font-size:.875rem;font-weight:700}.table-scroll-wrap[data-v-9b251d93]{-webkit-overflow-scrolling:touch;overflow-x:auto}.mini-timeline[data-v-9b251d93]{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;gap:1px;width:100%;height:24px;display:flex;overflow:hidden}.tl-gap[data-v-9b251d93]{background:0 0;flex-shrink:0}.tl-block[data-v-9b251d93]{border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;min-width:0;display:flex;overflow:hidden}.tl-label[data-v-9b251d93]{white-space:nowrap;text-overflow:ellipsis;pointer-events:none;letter-spacing:.01em;max-width:100%;padding:0 5px;font-size:.625rem;font-weight:700;overflow:hidden}.save-success[data-v-9b251d93]{color:#059669;align-items:center;gap:4px;font-size:.75rem;display:inline-flex}.btn-sort[data-v-9b251d93]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-sort[data-v-9b251d93]:hover{background:var(--bg-hover);color:var(--text)}.btn-sort-active[data-v-9b251d93]{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}@media (width<=768px){.days-grid[data-v-9b251d93]{grid-template-columns:repeat(3,1fr)}}.view-mode-toggle[data-v-9b251d93]{border:1px solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;display:inline-flex;overflow:hidden}.vm-btn[data-v-9b251d93]{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;padding:5px 11px;font-size:.75rem;font-weight:500;transition:background .13s,color .13s;display:inline-flex}.vm-btn[data-v-9b251d93]:hover{background:var(--bg-hover);color:var(--text)}.vm-btn.vm-active[data-v-9b251d93]{background:var(--accent-light);color:var(--accent);font-weight:700}.month-nav-label[data-v-9b251d93]{text-align:center;min-width:130px;font-size:.875rem;font-weight:700}.month-matrix-outer[data-v-9b251d93]{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.month-loading-bar[data-v-9b251d93]{border-bottom:1px solid var(--border);background:var(--bg-surface);padding:8px 16px}.month-matrix-scroll[data-v-9b251d93]{-webkit-overflow-scrolling:touch;overflow-x:auto}.month-matrix-table[data-v-9b251d93]{border-collapse:collapse;font-size:.75rem}.mm-th-name[data-v-9b251d93],.mm-td-name[data-v-9b251d93]{z-index:2;background:var(--bg-card);border-right:1px solid var(--border);white-space:nowrap;padding:6px 10px;position:sticky;left:0}.mm-th-name[data-v-9b251d93]{background:var(--bg-surface);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border);z-index:3;font-size:.6875rem;font-weight:700}.mm-th-day[data-v-9b251d93]{text-align:center;background:var(--bg-surface);border-bottom:2px solid var(--border);border-left:1px solid #0000;min-width:40px;padding:5px 2px}.mm-dow[data-v-9b251d93]{text-transform:uppercase;color:var(--text-muted);font-size:.5625rem;font-weight:700;line-height:1.2}.mm-dow-lun[data-v-9b251d93]{color:var(--accent)}.mm-dm[data-v-9b251d93]{color:var(--text);font-size:.6875rem;font-weight:600}.mm-week-sep[data-v-9b251d93]{border-left:2px solid var(--border)!important}.mm-cell[data-v-9b251d93]{text-align:center;vertical-align:middle;border-bottom:1px solid var(--border);cursor:pointer;border-left:1px solid #0000;width:40px;height:28px;padding:0;transition:filter .1s}.mm-cell[data-v-9b251d93]:hover:not(.mm-inactive):not(.mm-cell-load){filter:brightness(.88)}.mm-inactive[data-v-9b251d93]{cursor:default;background:var(--bg-surface)!important}.mm-cell-load[data-v-9b251d93]{background:var(--bg-surface)}.mm-cell-label[data-v-9b251d93]{letter-spacing:.01em;pointer-events:none;font-size:.5625rem;font-weight:800}.mm-person-name[data-v-9b251d93]{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.mm-td-name[data-v-9b251d93]{border-bottom:1px solid var(--border)}.month-matrix-table tbody tr:nth-child(2n) .mm-td-name[data-v-9b251d93]{background:var(--bg-surface)}.month-matrix-table td[data-v-9b251d93]:last-child,.month-matrix-table th[data-v-9b251d93]:last-child{text-align:center;font-family:inherit;font-size:inherit;color:inherit;font-weight:inherit;padding:0}.mm-th-sam[data-v-9b251d93]{background:color-mix(in srgb, var(--bg-surface) 85%, #94a3b8 15%)}.mm-dow-sam[data-v-9b251d93]{color:#64748b!important}.mm-cell-sam[data-v-9b251d93]:not([style]){background:color-mix(in srgb, var(--bg-card) 80%, #94a3b8 20%)}.mm-th-ferie[data-v-9b251d93]{background:color-mix(in srgb, var(--bg-surface) 80%, #f59e0b 20%)}.mm-th-ferie .mm-dow[data-v-9b251d93],.mm-th-ferie .mm-dm[data-v-9b251d93]{color:#b45309!important}.mm-cell-ferie[data-v-9b251d93]:not([style]){background:color-mix(in srgb, var(--bg-card) 75%, #fbbf24 25%)}.mm-cell-ferie.mm-cell-sam[data-v-9b251d93]:not([style]){background:color-mix(in srgb, var(--bg-card) 70%, #f59e0b 30%)}.btn-test-collection[data-v-9b251d93]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;padding:5px 12px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-test-collection[data-v-9b251d93]:hover{background:var(--bg-hover);color:var(--text)}@media (width<=1024px){.btn-test-collection[data-v-9b251d93]{display:none!important}}.btn-test-active[data-v-9b251d93]{color:#f59e0b!important;background:#f59e0b1a!important;border-color:#f59e0b!important}.test-banner[data-v-9b251d93]{border-radius:var(--radius-sm);color:#b45309;background:#f59e0b1a;border:1px solid #f59e0b;align-items:center;gap:7px;margin-bottom:14px;padding:7px 14px;font-size:.75rem;font-weight:500;display:flex}.drop-zone[data-v-48f14dea]{border:2px dashed var(--border);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;min-height:100px;margin-bottom:16px;padding:28px 20px;transition:border-color .15s,background .15s;display:flex}.drop-zone[data-v-48f14dea]:hover,.drop-zone-over[data-v-48f14dea]{border-color:var(--accent);background:var(--accent-light)}.drop-zone-done[data-v-48f14dea]{border-style:solid;border-color:var(--accent);background:var(--accent-light)}.drop-center[data-v-48f14dea]{flex-direction:column;align-items:center;gap:8px;display:flex}.fc-spinner[data-v-48f14dea],.btn-spinner[data-v-48f14dea]{border-radius:50%;animation:.8s linear infinite spin-48f14dea}.fc-spinner[data-v-48f14dea]{border:3px solid var(--accent);border-top-color:#0000;width:28px;height:28px}.btn-spinner[data-v-48f14dea]{border:2px solid #fff6;border-top-color:#fff;width:13px;height:13px;display:inline-block}@keyframes spin-48f14dea{to{transform:rotate(360deg)}}.fc-file-icon[data-v-48f14dea]{background:var(--accent);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.btn-icon[data-v-48f14dea]{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s;display:flex}.btn-icon[data-v-48f14dea]:hover{background:var(--bg-hover);color:var(--text)}.options-bar[data-v-48f14dea]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;padding:12px 16px;display:flex}.opt-group[data-v-48f14dea]{align-items:center;gap:8px;display:flex}.opt-label[data-v-48f14dea]{color:var(--text-muted);white-space:nowrap;font-size:.75rem;font-weight:600}.stepper[data-v-48f14dea]{border:1px solid var(--border);border-radius:6px;align-items:center;gap:0;display:flex;overflow:hidden}.stepper-btn[data-v-48f14dea]{background:var(--bg-surface);width:26px;height:26px;color:var(--text-muted);cursor:pointer;border:none;font-size:1rem;line-height:1;transition:background .12s,color .12s}.stepper-btn[data-v-48f14dea]:hover{background:var(--bg-hover);color:var(--text)}.stepper-val[data-v-48f14dea]{text-align:center;min-width:26px;color:var(--text);font-size:.8125rem;font-weight:700}.btn-preview[data-v-48f14dea]{border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent-light);color:var(--accent);cursor:pointer;align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.btn-preview[data-v-48f14dea]:disabled{opacity:.6;cursor:not-allowed}.btn-preview[data-v-48f14dea]:not(:disabled):hover{background:var(--accent);color:#fff}.preview-header[data-v-48f14dea]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.toggle[data-v-48f14dea]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex}.toggle input[data-v-48f14dea]{display:none}.toggle-track[data-v-48f14dea]{background:var(--border);border-radius:9px;flex-shrink:0;width:32px;height:17px;transition:background .2s;position:relative}.toggle-track[data-v-48f14dea]:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:transform .2s;position:absolute;top:2px;left:2px}.toggle input:checked+.toggle-track[data-v-48f14dea]{background:var(--accent)}.toggle input:checked+.toggle-track[data-v-48f14dea]:after{transform:translate(15px)}.btn-apply[data-v-48f14dea]{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:none;align-items:center;gap:6px;padding:7px 16px;font-size:.8125rem;font-weight:600;transition:opacity .15s;display:inline-flex}.btn-apply[data-v-48f14dea]:disabled{opacity:.6;cursor:not-allowed}.btn-apply[data-v-48f14dea]:not(:disabled):hover{opacity:.85}.btn-apply-test[data-v-48f14dea]{background:#f59e0b}.toggle-track-test[data-v-48f14dea]{background:#fcd34d!important}.toggle input:checked+.toggle-track-test[data-v-48f14dea]{background:#f59e0b!important}.view-toggle[data-v-48f14dea]{border:1px solid var(--border);border-radius:6px;display:flex;overflow:hidden}.vt-btn[data-v-48f14dea]{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:5px 12px;font-size:.75rem;font-weight:600;transition:background .12s,color .12s}.vt-btn[data-v-48f14dea]:hover{background:var(--bg-hover);color:var(--text)}.vt-btn.active[data-v-48f14dea]{background:var(--accent);color:#fff}.week-nav[data-v-48f14dea]{align-items:center;gap:6px;margin-bottom:10px;display:flex}.week-nav-btn[data-v-48f14dea]{border:1px solid var(--border);background:var(--bg-surface);width:28px;height:28px;color:var(--text-muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.week-nav-btn[data-v-48f14dea]:disabled{opacity:.35;cursor:default}.week-nav-btn[data-v-48f14dea]:not(:disabled):hover{background:var(--bg-hover);color:var(--text)}.week-nav-label[data-v-48f14dea]{color:var(--text);text-align:center;min-width:160px;font-size:.8125rem;font-weight:700}.gen-result[data-v-48f14dea]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:8px 14px;display:flex}.gen-stat[data-v-48f14dea]{align-items:center;gap:5px;font-size:.75rem;font-weight:600;display:flex}.gen-collection-badge[data-v-48f14dea]{color:#818cf8;white-space:nowrap;background:#6366f11f;border:1px solid #6366f140;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.625rem;font-weight:700}.gen-collection-test[data-v-48f14dea]{color:#f59e0b!important;background:#f59e0b1f!important;border-color:#f59e0b59!important}.gen-nav-hint[data-v-48f14dea]{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.625rem;font-style:italic;overflow:hidden}.btn-undo[data-v-48f14dea]{border-radius:var(--radius-sm);color:#ef4444;cursor:pointer;background:#ef444414;border:1px solid #ef4444;align-items:center;gap:5px;padding:5px 12px;font-size:.75rem;font-weight:600;transition:background .15s;display:inline-flex}.btn-undo[data-v-48f14dea]:hover:not(:disabled){background:#ef444426}.btn-undo[data-v-48f14dea]:disabled{opacity:.6;cursor:not-allowed}.split-view[data-v-48f14dea]{grid-template-columns:1fr 260px;align-items:start;gap:16px;display:grid}@media (width<=960px){.split-view[data-v-48f14dea]{grid-template-columns:1fr}}.legend[data-v-48f14dea]{flex-wrap:wrap;gap:5px;margin-bottom:8px;display:flex}.legend-item[data-v-48f14dea]{border-radius:4px;padding:2px 7px;font-size:.625rem;font-weight:700}.matrix-wrap[data-v-48f14dea]{min-width:0}.matrix-scroll[data-v-48f14dea]{border:1px solid var(--border);border-radius:var(--radius-md);max-height:65vh;overflow:auto}.matrix-table[data-v-48f14dea]{border-collapse:collapse;table-layout:fixed;font-size:.6875rem}.matrix-table th[data-v-48f14dea],.matrix-table td[data-v-48f14dea]{border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.matrix-table tr:last-child td[data-v-48f14dea]{border-bottom:none}.th-name[data-v-48f14dea]{z-index:4;background:var(--bg-surface);text-align:left;white-space:nowrap;color:var(--text-muted);width:160px;padding:6px 10px;font-size:.6875rem;font-weight:700;position:sticky;top:0;left:0;border-right:2px solid var(--border)!important;border-bottom:none!important;border-radius:0!important}.th-day[data-v-48f14dea]{z-index:2;background:var(--bg-surface);text-align:center;width:42px;max-width:42px;padding:4px 2px;position:sticky;top:0;overflow:hidden;border-bottom:none!important}.th-lundi[data-v-48f14dea]{border-left:2px solid var(--border)!important}.th-day-inner[data-v-48f14dea]{flex-direction:column;align-items:center;gap:1px;display:flex}.th-dow[data-v-48f14dea]{text-transform:uppercase;font-size:.5rem;font-weight:700}.th-dm[data-v-48f14dea]{color:var(--text-muted);font-size:.5625rem;font-weight:600}.dow-lun[data-v-48f14dea]{color:#22c55e}.dow-sam[data-v-48f14dea]{color:var(--accent)}.th-etp-label[data-v-48f14dea]{z-index:3;background:var(--bg-surface);text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);color:var(--text-muted);letter-spacing:.05em;padding:3px 10px;font-size:.5rem;font-weight:700;position:sticky;top:30px;left:0;border-right:2px solid var(--border)!important;border-radius:0!important}.th-etp[data-v-48f14dea]{z-index:1;text-align:center;border-bottom:1px solid var(--border);width:42px;padding:2px 1px;transition:background .2s;position:sticky;top:30px;border-radius:0!important}.etp-num[data-v-48f14dea]{font-size:.625rem;font-weight:800;line-height:1.2}.etp-sub[data-v-48f14dea]{opacity:.9;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;font-size:.5rem;font-weight:700;line-height:1.2;display:flex}.etp-bo[data-v-48f14dea]{color:#a78bfa;opacity:1}.etp-na[data-v-48f14dea]{color:var(--text-subtle);font-size:.5rem}.td-name[data-v-48f14dea]{z-index:1;background:var(--bg-card);white-space:nowrap;width:160px;padding:5px 10px;font-weight:600;position:sticky;left:0;border-right:2px solid var(--border)!important}.td-cell[data-v-48f14dea]{text-align:center;cursor:pointer;width:42px;max-width:42px;padding:4px 2px;font-size:.625rem;font-weight:700;transition:filter .1s;overflow:hidden}.matrix-table td[data-v-48f14dea]:last-child,.matrix-table th[data-v-48f14dea]:last-child{text-align:center;color:inherit;padding:4px 2px;font-family:inherit;font-size:.625rem;font-weight:700}.td-cell[data-v-48f14dea]:hover{filter:brightness(1.25)}.td-lundi[data-v-48f14dea]{border-left:2px solid var(--border)!important}.td-editing[data-v-48f14dea]{outline:2px solid var(--accent);outline-offset:-2px;z-index:1;position:relative}.td-edited[data-v-48f14dea]{outline:1px dashed var(--accent);outline-offset:-1px}.equity-panel[data-v-48f14dea]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-shrink:0;padding:14px;position:sticky;top:0}.equity-title[data-v-48f14dea]{color:var(--text);align-items:center;gap:6px;margin-bottom:2px;font-size:.8125rem;font-weight:700;display:flex}.equity-subtitle[data-v-48f14dea]{color:var(--text-muted);margin-bottom:12px;font-size:.625rem}.equity-list[data-v-48f14dea]{flex-direction:column;gap:7px;max-height:55vh;display:flex;overflow-y:auto}.equity-row[data-v-48f14dea]{grid-template-columns:1fr auto auto;align-items:center;gap:6px;display:grid}.eq-name[data-v-48f14dea]{white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;font-weight:600;overflow:hidden}.eq-bars[data-v-48f14dea]{flex-direction:column;gap:2px;min-width:80px;display:flex}.eq-bar-wrap[data-v-48f14dea]{align-items:center;gap:3px;display:flex}.eq-bar[data-v-48f14dea]{border-radius:2px;min-width:2px;max-width:60px;height:4px;transition:width .3s}.eq-bar-val[data-v-48f14dea]{color:var(--text-muted);min-width:24px;font-size:.5625rem}.eq-total[data-v-48f14dea]{color:var(--text-subtle);white-space:nowrap;font-size:.5625rem}.eq-bar-agence-wrap[data-v-48f14dea]{border-top:1px solid var(--border);margin-top:3px;padding-top:3px}.eq-bar-agence[data-v-48f14dea]{background:#65a30d;max-width:60px}.eq-bar-agence-val[data-v-48f14dea]{align-items:center;gap:3px;font-weight:700;display:flex;color:#3f6212!important}.eq-agence-detail[data-v-48f14dea]{color:var(--text-muted);white-space:nowrap;font-size:.5rem;font-weight:400}.equity-legend[data-v-48f14dea]{border-top:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:10px;display:flex}.eq-legend-item[data-v-48f14dea]{align-items:center;gap:3px;font-size:.5625rem;font-weight:600;display:flex}.eq-legend-agence[data-v-48f14dea]{color:#3f6212}.eq-dot[data-v-48f14dea]{border-radius:50%;flex-shrink:0;width:7px;height:7px}.cell-popup[data-v-48f14dea]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;padding:10px;box-shadow:0 8px 28px #00000038}.cell-popup-header[data-v-48f14dea]{color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.6875rem;font-weight:700;display:flex}.cell-popup-close[data-v-48f14dea]{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;transition:background .12s;display:flex}.cell-popup-close[data-v-48f14dea]:hover{background:var(--bg-hover);color:var(--text)}.cell-popup-grid[data-v-48f14dea]{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.cell-popup-btn[data-v-48f14dea]{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:4px;padding:5px 2px;font-size:.5625rem;font-weight:800;transition:filter .1s}.cell-popup-btn[data-v-48f14dea]:hover{filter:brightness(1.25)}.cell-popup-active[data-v-48f14dea]{outline-offset:1px;outline:2px solid}.cell-popup-span[data-v-48f14dea]{grid-column:1/-1}.cell-popup-sep[data-v-48f14dea]{background:var(--border);height:1px;margin:7px 0}.cell-popup-empty[data-v-48f14dea]{border:1px dashed var(--border);width:100%;color:var(--text-muted);cursor:pointer;text-align:center;background:0 0;border-radius:4px;padding:5px;font-size:.625rem;font-weight:600;transition:background .12s}.cell-popup-empty[data-v-48f14dea]:hover{background:var(--bg-hover)}.cell-popup-empty.cell-popup-active[data-v-48f14dea]{outline:2px solid var(--border);outline-offset:1px}.admin-head[data-v-3d6762d0]{padding:20px 20px 0}.admin-icon-wrap[data-v-3d6762d0]{background:var(--accent-light);width:36px;height:36px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-tabs[data-v-3d6762d0]{border-bottom:1px solid var(--border);gap:2px;padding:12px 20px 0;display:flex}.admin-tab[data-v-3d6762d0]{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:8px 8px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:8px 14px;font-size:.8125rem;font-weight:500;transition:color .15s,border-color .15s;display:inline-flex}.admin-tab[data-v-3d6762d0]:hover{color:var(--text);background:var(--bg-hover)}.admin-tab.active[data-v-3d6762d0]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.admin-body[data-v-3d6762d0]{padding:20px}@media (width<=1024px){.mobile-hidden[data-v-3d6762d0]{display:none!important}}
