.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;width:100%;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:.9rem clamp(1rem,4vw,3rem);background:#ffffffe6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(148,163,184,.22);box-shadow:0 10px 35px #0f172a14}.navbar-logo{display:flex;align-items:center;flex-shrink:0;width:132px;text-decoration:none}.navbar-logo img{display:block;width:100%;height:auto}.navbar-links{display:flex;align-items:center;justify-content:center;gap:.35rem;flex:1}.navbar-link{position:relative;display:inline-flex;align-items:center;padding:.7rem .9rem;border-radius:999px;color:#475569;font-size:.95rem;font-weight:700;text-decoration:none;transition:color .25s ease,background .25s ease}.navbar-link:hover{color:#1e293b;background:#4f46e514}.navbar-actions{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.navbar-login,.navbar-cta{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.75rem;padding:.75rem 1rem;border-radius:.95rem;font-size:.95rem;font-weight:800;text-decoration:none;white-space:nowrap;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease}.navbar-login{color:#1e293b;background:#ffffffb8;border:1px solid rgba(148,163,184,.25)}.navbar-login:hover{color:#4f46e5;background:#fff;transform:translateY(-1px);box-shadow:0 12px 26px #0f172a14}.navbar-cta{color:#fff;background:linear-gradient(135deg,#4f46e5,#2563eb);box-shadow:0 15px 32px #4f46e540}.navbar-cta:hover{color:#fff;transform:translateY(-1px);box-shadow:0 20px 42px #4f46e557}.navbar-icon{font-size:.9rem}.navbar-hamburger{display:none;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;flex-direction:column;gap:.32rem;border:1px solid rgba(148,163,184,.25);border-radius:.95rem;background:#ffffffbf;cursor:pointer}.hamburger-line{display:block;width:1.25rem;height:2px;border-radius:999px;background:#1e293b;transition:transform .25s ease,opacity .25s ease}.navbar-hamburger.active .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.navbar-hamburger.active .hamburger-line:nth-child(2){opacity:0}.navbar-hamburger.active .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1001;background:#0f172a47;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .25s ease}.mobile-menu-backdrop.active{opacity:1;pointer-events:auto}.mobile-menu{position:fixed;top:0;right:0;bottom:0;z-index:1002;width:min(380px,92vw);padding:1rem;background:#fffffff7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:-30px 0 90px #0f172a38;transform:translate(100%);transition:transform .28s ease}.mobile-menu.active{transform:translate(0)}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.35rem .35rem 1rem;border-bottom:1px solid rgba(226,232,240,.9)}.mobile-menu-header img{width:130px;height:auto}.mobile-close-button{width:2.6rem;height:2.6rem;display:flex;align-items:center;justify-content:center;border:1px solid rgba(148,163,184,.25);border-radius:.95rem;color:#1e293b;background:#fff;cursor:pointer;transition:color .25s ease,background .25s ease,transform .25s ease}.mobile-close-button:hover{color:#4f46e5;background:#eef2ff;transform:translateY(-1px)}.mobile-navbar-links{display:flex;flex-direction:column;gap:.45rem;padding-top:1rem}.mobile-navbar-link{display:flex;align-items:center;min-height:3rem;padding:.85rem 1rem;border-radius:1rem;color:#334155;background:transparent;font-size:1rem;font-weight:800;text-decoration:none;transition:color .25s ease,background .25s ease}.mobile-navbar-link:hover{color:#4f46e5;background:#eef2ff}.mobile-actions{display:grid;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(226,232,240,.9)}.navbar-login.mobile,.navbar-cta.mobile{width:100%}@media(max-width:1024px){.navbar{padding:.85rem 1.25rem}.navbar-links{display:none}.navbar-actions{margin-left:auto}}@media(max-width:768px){.navbar{padding:.75rem 1rem}.navbar-logo{width:118px}.navbar-actions{display:none}.navbar-hamburger{display:flex}}@media(max-width:420px){.mobile-menu{width:100%}}@media(prefers-reduced-motion:reduce){.navbar-link,.navbar-login,.navbar-cta,.navbar-hamburger,.hamburger-line,.mobile-menu,.mobile-menu-backdrop,.mobile-close-button{transition:none}}.home-container{min-height:100vh;background:radial-gradient(circle at top left,rgba(79,70,229,.1),transparent 32rem),radial-gradient(circle at top right,rgba(14,165,233,.12),transparent 30rem),linear-gradient(135deg,#f8fbff,#eef4ff 48%,#f7f3ff);position:relative;overflow:hidden;color:#172033}.decorative-background{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.decorative-blob{position:absolute;width:18rem;height:18rem;border-radius:999px;opacity:.45;filter:blur(75px);animation:blob 10s infinite ease-in-out}.decorative-blob-one{top:7rem;left:3rem;background:#bfdbfe}.decorative-blob-two{top:14rem;right:2rem;background:#c7d2fe;animation-delay:2s}.decorative-blob-three{bottom:14rem;left:50%;background:#e9d5ff;animation-delay:4s}.hero-section{position:relative;max-width:1280px;margin:0 auto;padding:8rem 1.5rem 4rem;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:3rem;align-items:center}.hero-content{text-align:left}.hero-badge,.section-kicker{display:inline-flex;align-items:center;width:fit-content;border:1px solid rgba(79,70,229,.18);background:#ffffffbf;color:#4f46e5;font-weight:700;font-size:.85rem;padding:.5rem .85rem;border-radius:999px;box-shadow:0 10px 30px #4f46e514;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.main-heading{max-width:780px;margin:1.35rem 0 1.25rem;font-size:clamp(2.5rem,5vw,5rem);line-height:.95;font-weight:900;color:#111827}.sub-heading{max-width:780px;margin:0;color:#334155;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.45;font-weight:650}.description-text{max-width:760px;margin:1.25rem 0 0;font-size:1.05rem;color:#64748b;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}.hero-button{position:relative;border:0;border-radius:1rem;padding:1rem 1.35rem;font-size:1rem;font-weight:800;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.hero-button.primary{color:#fff;background:linear-gradient(135deg,#4f46e5,#2563eb);box-shadow:0 22px 45px #4f46e547}.hero-button.secondary{color:#1e293b;background:#ffffffb8;border:1px solid rgba(148,163,184,.25);box-shadow:0 18px 35px #0f172a12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.hero-button:hover{transform:translateY(-2px)}.hero-button.primary:hover{box-shadow:0 28px 60px #4f46e559}.hero-button.secondary:hover{background:#fff}.hero-proof{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}.hero-proof span{color:#475569;background:#ffffff9e;border:1px solid rgba(148,163,184,.2);border-radius:999px;padding:.55rem .8rem;font-size:.9rem}.hero-card{position:relative;background:#ffffffc7;border:1px solid rgba(148,163,184,.22);border-radius:2rem;padding:1.25rem;box-shadow:0 30px 80px #0f172a1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hero-card-header{display:flex;align-items:center;gap:.65rem;padding:.25rem .25rem 1rem;color:#334155;font-weight:800}.hero-card-dot{width:.75rem;height:.75rem;border-radius:999px;background:#22c55e;box-shadow:0 0 0 6px #22c55e1f}.workflow-preview{display:grid;gap:.85rem}.workflow-item{display:grid;grid-template-columns:3.5rem 1fr;gap:.8rem;align-items:center;background:#fff;border:1px solid rgba(226,232,240,.95);border-radius:1.25rem;padding:.95rem;box-shadow:0 12px 24px #0f172a0e}.workflow-number{display:grid;place-items:center;height:2.6rem;border-radius:.9rem;background:#eef2ff;color:#4f46e5;font-weight:900}.workflow-label{color:#1e293b;font-weight:800}.intro-section,.modules-section,.client-section,.final-cta-section{position:relative;max-width:1180px;margin:0 auto;padding:4rem 1.5rem}.section-heading{max-width:780px;margin:0 auto 2rem;text-align:center}.section-heading h2,.client-card h2,.final-cta-card h2{margin:1rem 0 0;font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.045em;color:#111827}.section-heading p,.client-card p,.final-cta-card p{margin:1rem auto 0;color:#64748b;line-height:1.75;font-size:1.02rem}.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.benefit-card,.module-card,.client-card,.final-cta-card{background:#ffffffbf;border:1px solid rgba(148,163,184,.2);border-radius:1.5rem;box-shadow:0 22px 55px #0f172a13;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.benefit-card{padding:1.5rem}.benefit-card h3,.module-card h3{margin:0;color:#111827;font-size:1.15rem}.benefit-card p,.module-card p{margin:.75rem 0 0;color:#64748b;line-height:1.65}.modules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.module-card{padding:1.35rem;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.module-card:hover{transform:translateY(-4px);border-color:#4f46e547;box-shadow:0 28px 65px #4f46e51f}.module-icon{width:2.8rem;height:2.8rem;display:grid;place-items:center;margin-bottom:1rem;border-radius:1rem;background:linear-gradient(135deg,#eef2ff,#dbeafe);color:#4f46e5;font-weight:900}.client-card{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:center;padding:2rem}.client-card p{margin-left:0}.testimonial-box{background:#fff;border:1px solid #e2e8f0;border-radius:1.25rem;padding:1.25rem;box-shadow:inset 0 1px #ffffffe6}.testimonial-box p{margin:0 0 1rem;color:#334155;font-weight:650}.testimonial-box strong{display:block;color:#111827}.testimonial-box span{display:block;margin-top:.2rem;color:#64748b}.final-cta-section{padding-bottom:6rem}.final-cta-card{text-align:center;padding:3rem 1.5rem}.final-cta-card p{max-width:680px;margin-bottom:1.75rem}@keyframes blob{0%{transform:translate(0) scale(1)}33%{transform:translate(28px,-38px) scale(1.08)}66%{transform:translate(-24px,22px) scale(.94)}to{transform:translate(0) scale(1)}}@media(max-width:1024px){.hero-section{grid-template-columns:1fr;padding-top:7rem}.hero-content{text-align:center}.description-text,.sub-heading,.main-heading{margin-left:auto;margin-right:auto}.hero-actions,.hero-proof{justify-content:center}.hero-card{max-width:640px;margin:0 auto}.benefits-grid{grid-template-columns:1fr}.modules-grid{grid-template-columns:repeat(2,1fr)}.client-card{grid-template-columns:1fr}}@media(max-width:640px){.hero-section{padding:6.5rem 1rem 3rem}.intro-section,.modules-section,.client-section,.final-cta-section{padding:3rem 1rem}.main-heading{font-size:2.45rem}.hero-actions{flex-direction:column}.hero-button{width:100%}.hero-proof{align-items:stretch}.hero-proof span{width:100%;text-align:center}.workflow-item{grid-template-columns:3rem 1fr}.modules-grid{grid-template-columns:1fr}.client-card,.final-cta-card{padding:1.4rem}}@media(prefers-reduced-motion:reduce){.decorative-blob,.hero-button,.module-card{animation:none;transition:none}}.pricing-container{padding:4rem 1rem;background:linear-gradient(to bottom right,#f0f9ff,#eef2ff);animation:fadeIn 1s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.pricing-content{max-width:1200px;margin:0 auto;text-align:center;padding:2rem}.pricing-title{font-size:2.5rem;font-weight:700;margin-bottom:2rem;color:#1f2937}.plans-grid{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.plan-card{background:#fff;border-radius:1rem;box-shadow:0 10px 20px #0000001a;padding:2rem;flex:1;min-width:280px;max-width:350px;transition:transform .3s ease,box-shadow .3s ease}.plan-card:hover{transform:translateY(-10px);box-shadow:0 15px 25px #00000026}.plan-name{font-size:1.75rem;margin-bottom:1rem;color:#4f46e5}.plan-price{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.price-period{font-size:1rem;color:#6b7280}.features-list{list-style:none;padding:0;margin:1rem 0;text-align:left}.feature-item{display:flex;align-items:center;margin-bottom:.75rem;font-size:1rem;color:#4b5563}.check-icon{width:1rem;height:1rem;margin-right:.5rem;color:#4f46e5}.plan-buttons{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.plan-button{background:linear-gradient(to right,#4f46e5,#4f46e5);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .3s ease,background .3s ease}.plan-button:hover{transform:scale(1.05);background:linear-gradient(to right,#1d4ed8,#4338ca)}.plan-button-secondary{background:transparent;color:#4f46e5;border:2px solid #4f46e5;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .3s ease,background .3s ease,color .3s ease}.plan-button-secondary:hover{transform:scale(1.05);background:#4f46e5;color:#fff}.testimonials-section{margin-top:4rem;padding:3rem 1rem;background:#fff;border-radius:1rem;box-shadow:0 10px 20px #0000001a;max-width:1200px;margin-left:auto;margin-right:auto;text-align:center}.testimonials-title{font-size:2.25rem;font-weight:700;margin-bottom:2rem;color:#1f2937}.testimonials-grid{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.testimonial-card{background:#f9fafb;border-radius:1rem;padding:1.5rem;max-width:350px;transition:transform .3s ease,box-shadow .3s ease}.testimonial-card:hover{transform:translateY(-5px);box-shadow:0 10px 15px #0000001a}.testimonial-photo{width:60px;height:60px;border-radius:50%;object-fit:cover;margin-bottom:1rem}.testimonial-quote{font-style:italic;color:#4b5563;margin-bottom:1rem}.testimonial-name{font-weight:600;color:#4f46e5}.testimonials-button{margin-top:2rem;background:linear-gradient(to right,#4f46e5,#4f46e5);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;cursor:pointer;transition:transform .3s ease,background .3s ease}.testimonials-button:hover{transform:scale(1.05);background:linear-gradient(to right,#1d4ed8,#4338ca)}@media(max-width:768px){.plans-grid,.testimonials-grid{flex-direction:column;align-items:center}.plan-card,.testimonial-card{max-width:90%}.pricing-title,.testimonials-title{font-size:2rem}}:root{--clr-bg: #f5f7fa;--clr-sidebar: rgba(255, 255, 255, .85);--clr-active: #4f46e5;--clr-hover: #eef2ff;--clr-text: #374151;--transition: .3s ease;--sidebar-width: 18rem;--sidebar-collapsed-width: 6rem}.dashboard-layout{display:flex;width:100%;min-width:0;min-height:100vh;background:var(--clr-bg);position:relative}.mobile-header{display:none}.mobile-burger{background:none;border:none;font-size:1.5rem;color:var(--clr-text);cursor:pointer}.mobile-burger:focus{outline:none}.mobile-title{margin-left:1rem;font-size:1.2rem;font-weight:600;color:var(--clr-text)}@media(max-width:768px){.mobile-header{display:flex;align-items:center;position:fixed;top:0;left:0;right:0;height:3.5rem;min-width:0;background:var(--clr-sidebar);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:0 1rem;box-shadow:0 1px 4px #0000001a;z-index:1200}}.dashboard-sidebar{position:fixed;top:0;left:0;width:16rem;height:100vh;max-height:100vh;padding:5rem 1rem 1rem;background:var(--clr-sidebar);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:2px 0 12px #00000014;display:flex;flex-direction:column;transition:width var(--transition),transform var(--transition);z-index:1000}.sidebar-header{position:absolute;top:0;left:0;right:0;height:4.5rem;display:flex;align-items:center;padding:0 1rem;background:var(--clr-sidebar);box-shadow:0 2px 12px #00000014;z-index:2;overflow:visible}.app-logo{width:2rem;height:2rem;object-fit:contain;margin-left:.2rem;margin-top:0}.app-title{min-width:0;margin-left:.75rem;font-size:1.2rem;font-weight:600;color:var(--clr-text);white-space:nowrap}.sidebar-header .sidebar-toggle{position:absolute;right:-20px;top:50%;z-index:50;transform:translateY(-50%);padding:5px 12px;border:1px solid #bfbfbf;border-radius:999px;background-color:#fff;color:#000;cursor:pointer;transition:background var(--transition)}.sidebar-header .sidebar-toggle:focus{outline:none}.sidebar-header .sidebar-toggle:hover{background:#00000036}.sidebar-nav{flex:1;min-height:0;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;overflow-x:hidden;padding-bottom:1rem;-webkit-overflow-scrolling:touch}.nav-link{display:flex;align-items:center;flex:0 0 auto;min-width:0;padding:.3rem 1rem;border-radius:.5rem;color:var(--clr-text);text-decoration:none;font-weight:500;transition:background var(--transition),color var(--transition),padding-left var(--transition)}.nav-icon{width:1.75rem;flex:0 0 1.75rem;text-align:center;font-size:1.2rem}.nav-link.disabled{opacity:.4;cursor:not-allowed}.nav-link:hover:not(.active):not(.disabled){background:var(--clr-hover);color:var(--clr-active);padding-left:1rem}.nav-link.active{background:var(--clr-active);color:#fff;padding-left:.5rem}.nav-label{min-width:0;margin-left:.75rem;white-space:nowrap;transition:opacity var(--transition),visibility var(--transition)}.logout-button{flex:0 0 auto;margin-top:auto;background:none;border:none;display:flex;align-items:center;color:var(--clr-text)}.logout-button:hover{color:var(--clr-active)}.mobile-overlay{display:none}.dashboard-layout.mobile-open .mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:900}.dashboard-main{flex:0 0 auto;width:calc(100% - var(--sidebar-width));min-width:0;max-width:calc(100% - var(--sidebar-width));margin-left:var(--sidebar-width);padding:4.5rem 2rem 2rem;transition:margin-left var(--transition),width var(--transition),max-width var(--transition)}.dashboard-main>*{min-width:0;max-width:100%}@media(min-width:769px){.dashboard-sidebar{overflow:visible}.dashboard-layout.collapsed .dashboard-sidebar{width:4.5rem}.dashboard-layout.collapsed .nav-label,.dashboard-layout.collapsed .app-title{display:none;opacity:0;visibility:hidden}.dashboard-layout.collapsed .nav-link{justify-content:center;padding-left:0;padding-right:0}.dashboard-layout.collapsed .nav-icon{width:auto;flex-basis:auto}.dashboard-layout.collapsed .dashboard-main{width:calc(100% - var(--sidebar-collapsed-width));max-width:calc(100% - var(--sidebar-collapsed-width));margin-left:var(--sidebar-collapsed-width)}}@media(max-width:768px){.dashboard-sidebar{width:min(18rem,88vw);height:100dvh;max-height:100dvh;padding-top:3.5rem;border-radius:0 0 8px 8px;transform:translateY(-100%);overflow:hidden}.dashboard-layout.mobile-open .dashboard-sidebar{transform:translateY(0)}.sidebar-nav{margin-top:.5rem}.dashboard-layout.mobile-open{height:100dvh;overflow:hidden}.dashboard-main{width:100%;min-width:0;max-width:100%;margin-left:0;padding:4.5rem 1rem 1rem}.sidebar-header{display:none!important}}@media(max-height:710px){.nav-link{padding:.7rem 1rem}.nav-icon{font-size:.9rem}.sidebar-nav{gap:.2rem}}@media(max-height:655px){.nav-link{padding:.7rem 1rem;font-size:.8rem}.nav-icon{font-size:.8rem}}@media(max-height:605px){.nav-link{padding:.5rem 1rem;font-size:.8rem}}@media(max-height:550px){.nav-link{padding:.4rem 1rem;font-size:.8rem}}@media(max-height:480px){.nav-link{padding:.2rem 1rem;font-size:.6rem}.nav-icon{font-size:.6rem}}.spinner-container{display:flex;justify-content:center;align-items:center;height:100px}.spinner{width:50px;height:50px;animation:spin 1s linear infinite;color:#4f46e5}.spinner-circle{opacity:.25;stroke:currentColor}.spinner-path{opacity:.75;fill:currentColor}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background-color:#f8f9fa;text-align:center}.loading-text{margin-top:10px;font-size:16px;color:#555}.auth-input{padding:.75rem 1rem;font-size:1rem;border:1px solid #ccc;border-radius:4px;transition:border-color .2s ease}.signup-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f4f4f4}.signup-box{background:#fff;padding:30px;border-radius:8px;box-shadow:0 4px 10px #0000001a;text-align:center;width:350px}.signup-box h2{margin-bottom:20px;color:#333}.signup-form{display:flex;flex-direction:column}.signup-input{padding:10px;margin-bottom:15px;border:1px solid #ccc;border-radius:5px;font-size:16px}.signup-input:focus{border-color:#4f46e5;outline:none}.signup-button{background-color:#4f46e5;color:#fff;padding:10px;border:none;border-radius:5px;font-size:18px;cursor:pointer;transition:background-color .3s}.signup-button:hover{background-color:#0056b3}.auth-signup-link{color:#4f46e5;text-decoration:none;font-weight:600}.signup-error{color:#e3342f;font-size:.95rem;text-align:center;margin-top:1rem}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724;padding:10px;border-radius:4px;margin-bottom:15px;text-align:center}.page-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.card{background:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;color:#374151}.form-input{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem}.table{width:100%;border-collapse:collapse}.table th{background-color:#f3f4f6;padding:.75rem;text-align:left}.table td{padding:.75rem;border-top:1px solid #e5e7eb}.repair-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.repair-form h2{text-align:center;color:#333}.repair-form .error{color:#e3342f;text-align:center}.repair-form input,.repair-form textarea,.repair-form select{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:1rem}.repair-form textarea{resize:vertical;min-height:80px}.repair-form button{background-color:#4f46e5;color:#fff;border:none;padding:12px;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.repair-form button:hover{background-color:#1d4ed8}.new-client-fields{border:1px dashed #aaa;padding:10px;border-radius:4px;margin-top:10px}.new-client-fields h3{margin-top:0;color:#333;font-size:1.1rem;text-align:center}.edit-repair-form .form-group{margin-bottom:15px;display:flex;flex-direction:column}.edit-repair-form label{margin-bottom:5px;font-weight:600;color:#555}.edit-repair-form input,.edit-repair-form textarea,.edit-repair-form select{padding:8px;border:1px solid #ccc;border-radius:4px;font-size:1rem}.btn-save{background-color:#4f46e5;color:#fff}.btn-save:hover{background-color:#1d4ed8}.btn-cancel{background-color:#6c757d;color:#fff}.btn-cancel:hover{background-color:#5a6268}.repair-form .travaux-label,.edit-repair-form .travaux-label{flex-direction:row}.repair-list-container{width:100%;min-width:0;max-width:100%;margin:1rem 0;padding:20px;overflow-x:auto;overflow-y:hidden;background:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.repair-table{width:auto;min-width:100%;border-collapse:collapse;table-layout:fixed}.repair-table th,.repair-table td{padding:10px;border:1px solid #dddddd;text-align:left;font-size:.9rem}.repair-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repair-table td:last-child,.repair-table .actions-cell{overflow:visible;text-overflow:clip}.repair-table th{background-color:#f4f4f4;white-space:nowrap}.repair-table tr:nth-child(2n){background-color:#f9f9f9}.repair-table button,.btn-action{margin:2px;padding:4px 8px;border:none;border-radius:4px;background-color:#4f46e5;color:#fff;font-size:.8rem;cursor:pointer;transition:background-color .3s ease,opacity .2s ease,transform .15s ease}.repair-table button:hover:not(:disabled),.btn-action:hover:not(:disabled){background-color:#1d4ed8}.icon-button:hover{color:#1d4ed8}.repair-table button:disabled{background-color:#ccc!important;color:#888!important;border-color:#ccc!important;cursor:not-allowed;opacity:.7}.repair-table tr.overdue{background-color:#ffecec;border-left:4px solid #e3342f;color:#a10000;font-weight:700}.repair-table th:last-child,.repair-table td:last-child{white-space:nowrap}.repair-table td:last-child button,.repair-table td:last-child .repair-tracking-button,.repair-table td:last-child .tracking-employe-btn{width:28px;height:28px;min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:2px;border-radius:4px;vertical-align:middle;font-size:.8rem;line-height:1;box-shadow:none}.repair-table td:last-child button svg{width:13px;height:13px;flex-shrink:0}.repair-table td:last-child button:disabled{opacity:.45;cursor:not-allowed}.repair-table td:last-child .repair-tracking-button.tracking-missing{background:#dc2626}.repair-table td:last-child .repair-tracking-button.tracking-open{background:#f59e0b}.repair-table td:last-child .repair-tracking-button.tracking-assigned{background:#4f46e5}.repair-table td:last-child .repair-tracking-button.tracking-running{background:#16a34a}.repair-table td:last-child .repair-tracking-button.tracking-paused{background:#9333ea}.repair-table td:last-child .repair-tracking-button.tracking-finished{background:#64748b}.repair-table td:last-child .repair-tracking-button:hover:not(:disabled){filter:brightness(.92);transform:translateY(-1px)}.repair-table td:last-child button.tracking-employe-btn span,.repair-table td:last-child button.btn-tracking-employe span,.repair-table td:last-child button.repair-tracking-btn span,.repair-table td:last-child button.repair-tracking-button span{display:none}@media(max-width:768px){.repair-list-container{padding:14px}.repair-table th,.repair-table td{padding:8px;font-size:.84rem}.repair-table th:last-child{right:0;z-index:3;background:#f4f4f4;box-shadow:-8px 0 12px -12px #0f172a8c}.repair-table td:last-child{right:0;z-index:2;background:inherit;box-shadow:-8px 0 12px -12px #0f172a8c}}.tracking-manager-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}.tracking-manager-modal{width:min(980px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 80px #0f172a3d;color:#0f172a}.tracking-manager-header{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid #e5e7eb;padding:20px 24px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.tracking-manager-header h2{margin:0;font-size:22px;color:#0f172a}.tracking-manager-header p{margin:6px 0 0;color:#64748b}.tracking-manager-close{border:none;background:#f1f5f9;color:#0f172a;width:36px;height:36px;border-radius:50%;cursor:pointer}.tracking-manager-summary{padding:18px 24px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tracking-summary-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:14px}.tracking-summary-card span{display:block;color:#64748b;font-size:13px;margin-bottom:6px}.tracking-summary-card strong{display:block;color:#0f172a;font-size:16px}.tracking-manager-section{padding:20px 24px 0}.tracking-manager-section h3{margin:0 0 12px;color:#0f172a;font-size:17px}.tracking-assign-row{display:flex;gap:10px;align-items:center}.tracking-assign-row select,.tracking-manager-section textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;font-size:14px;background:#fff;color:#0f172a}.tracking-manager-section textarea{min-height:76px;resize:vertical;margin-bottom:12px}.tracking-actions-row{display:flex;flex-wrap:wrap;gap:10px}.tracking-btn{border:none;border-radius:10px;padding:10px 13px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-weight:600;transition:transform .15s ease,opacity .15s ease}.tracking-btn:hover:not(:disabled){transform:translateY(-1px)}.tracking-btn:disabled{opacity:.45;cursor:not-allowed}.tracking-btn-primary{background:#2563eb;color:#fff;white-space:nowrap}.tracking-btn-start{background:#16a34a;color:#fff}.tracking-btn-pause{background:#f59e0b;color:#fff}.tracking-btn-resume{background:#9333ea;color:#fff}.tracking-btn-finish{background:#0f172a;color:#fff}.tracking-btn-finished,.tracking-btn-finished:disabled{background:#64748b;color:#fff;opacity:.9}.tracking-finished-notice{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#f1f5f9;color:#334155;border:1px solid #cbd5e1;font-size:14px}.tracking-btn-light{background:#f1f5f9;color:#0f172a}.tracking-timeline{display:grid;gap:10px;padding-bottom:10px}.tracking-timeline-item{display:grid;grid-template-columns:160px 1fr;gap:12px;padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.tracking-timeline-date{color:#64748b;font-size:13px}.tracking-timeline-content strong{display:block;color:#0f172a}.tracking-timeline-content span{display:block;margin-top:3px;color:#475569;font-size:13px}.tracking-timeline-content p{margin:8px 0 0;color:#334155}.tracking-empty{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;padding:14px;border-radius:12px}.tracking-manager-footer{padding:20px 24px 24px;display:flex;justify-content:flex-end}.tracking-form-hint{margin:-4px 0 12px;color:#64748b;font-size:13px}@media(max-width:760px){.tracking-manager-overlay{padding:10px;align-items:stretch}.tracking-manager-modal{width:100%;max-height:100%;border-radius:14px}.tracking-manager-summary{grid-template-columns:1fr}.tracking-assign-row{flex-direction:column;align-items:stretch}.tracking-timeline-item{grid-template-columns:1fr}}.tracking-manager-close{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;flex:0 0 36px}.tracking-manager-close svg{display:block;width:16px;height:16px}.tracking-btn-already,.tracking-btn-already:disabled{background:#94a3b8;color:#fff;opacity:.9}.tracking-btn-reopen{background:#0ea5e9;color:#fff}.tracking-history-section{padding-bottom:0}.tracking-history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.tracking-history-header h3{margin-bottom:4px}.tracking-history-header p{margin:0;color:#64748b;font-size:13px}.tracking-history-size{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;color:#475569;font-size:13px}.tracking-history-size select{border:1px solid #cbd5e1;border-radius:8px;padding:7px 9px;background:#fff;color:#0f172a}.tracking-history-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.tracking-history-tab{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:7px 10px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600}.tracking-history-tab:hover{background:#f8fafc}.tracking-history-tab.active{background:#0f172a;color:#fff;border-color:#0f172a}.tracking-history-tab span{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#64748b24;display:inline-flex;align-items:center;justify-content:center;font-size:12px}.tracking-history-tab.active span{background:#ffffff2e}.tracking-timeline-compact{gap:7px;max-height:360px;overflow:auto;padding-right:4px}.tracking-timeline-compact .tracking-timeline-item{grid-template-columns:145px 1fr;padding:9px 10px;border-radius:10px;background:#f8fafc}.tracking-timeline-compact .tracking-timeline-date span{display:block;color:#475569;font-size:12px;line-height:1.3}.tracking-timeline-compact .tracking-timeline-date small{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;background:#e2e8f0;color:#334155;font-size:11px;font-weight:700}.tracking-timeline-compact .tracking-timeline-content strong{font-size:14px}.tracking-timeline-compact .tracking-timeline-content span{font-size:12px}.tracking-timeline-compact .tracking-timeline-content p{margin-top:5px;font-size:12px;line-height:1.35}.tracking-history-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}.tracking-history-pagination span{color:#475569;font-size:13px;min-width:78px;text-align:center}.tracking-history-pagination .tracking-btn{padding:8px 10px;border-radius:8px;font-size:13px}@media(max-width:760px){.tracking-history-header{flex-direction:column}.tracking-history-size{width:100%;justify-content:space-between}.tracking-timeline-compact .tracking-timeline-item{grid-template-columns:1fr}.tracking-history-pagination{justify-content:center}}.resizable-data-table{table-layout:fixed}.resizable-data-table col{min-width:0}.resizable-data-table th,.resizable-data-table td{min-width:0;max-width:none}.resizable-data-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resizable-data-table td>a,.resizable-data-table td>span:not(.column-resize-handle){max-width:100%}.resizable-header-cell{position:relative;overflow:visible!important;-webkit-user-select:none;user-select:none}.resizable-header-label{display:block;min-width:0;padding-right:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-resize-handle{position:absolute;top:0;right:-5px;z-index:10;width:10px;height:100%;cursor:col-resize;touch-action:none}.column-resize-handle:after{content:"";position:absolute;top:18%;bottom:18%;left:4px;width:2px;border-radius:999px;background:transparent;transition:background-color .15s ease}.column-resize-handle:hover:after,.column-resize-handle:focus-visible:after{background:#6366f1}.column-resize-handle:focus-visible{outline:none}.resizable-data-table th:last-child .column-resize-handle{right:0}.resizable-data-table .actions-cell,.resizable-data-table td:last-child{overflow:visible;text-overflow:clip}@media(max-width:768px){.column-resize-handle{width:14px;right:-7px}.column-resize-handle:after{left:6px}}.repairs-page{padding:20px;min-height:80vh;overflow-x:hidden;box-sizing:border-box;color:#0f172a}.add-repair-button{background-color:#4f46e5;color:#fff;border:none;padding:11px 18px;border-radius:7px;cursor:pointer;transition:background-color .25s ease,transform .15s ease,box-shadow .15s ease;font-weight:700;white-space:nowrap;box-shadow:0 8px 18px #4f46e52e}.add-repair-button:hover:not(:disabled){background-color:#4338ca;transform:translateY(-1px)}.add-repair-button:disabled{opacity:.55;cursor:not-allowed}.repairs-tools-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:18px;box-shadow:0 8px 24px #0f172a0a;overflow:hidden}.repairs-tools-header{min-height:54px;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;gap:16px}.repairs-filter-toggle{background:#f4f6ff;color:#3730a3;border:1px solid #dfe4ff;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:.92rem;font-weight:700;box-shadow:none;display:inline-flex;align-items:center;gap:8px}.repairs-filter-toggle:hover{background:#eef2ff}.repairs-filter-toggle strong{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#4f46e5;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.repairs-filter-toggle-chevron{font-size:12px}.repairs-tools-summary{display:inline-flex;align-items:center;justify-content:flex-end;gap:12px;color:#64748b;font-size:.9rem}.repairs-tools-summary strong{color:#0f172a;font-weight:800;font-size:.95rem}.repairs-filter-panel{padding:16px;background:#fff}.repairs-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:10px;margin-bottom:16px}.repairs-filter-grid input,.repairs-filter-grid select{width:100%;height:40px;padding:0 11px;border:1px solid #d6dbe5;border-radius:7px;font-size:.9rem;background:#fff;color:#0f172a;box-sizing:border-box}.repairs-filter-grid input::placeholder{color:#6b7280}.repairs-filter-grid input:focus,.repairs-filter-grid select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.repairs-sort-row{display:grid;grid-template-columns:190px 190px 150px;align-items:end;gap:10px;padding-top:14px;border-top:1px solid #edf0f5}.repairs-sort-row label{min-width:0;width:100%;display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:700;color:#334155}.repairs-sort-row select,.repairs-sort-button,.repairs-reset-button{width:100%;height:40px;border-radius:7px;font-size:.9rem}.repairs-sort-row select{padding:0 11px;border:1px solid #d1d5db;background:#fff;color:#111827}.repairs-sort-button{background:#fff;color:#3730a3;border:1px solid #c7d2fe;font-weight:700;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.repairs-sort-button:hover{background:#eef2ff}.repairs-reset-button{background:#f3f4f6;color:#64748b;border:1px solid #e5e7eb;font-weight:700;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.repairs-reset-button:hover:not(:disabled){background:#e5e7eb}.repairs-reset-button:disabled{opacity:.55;cursor:not-allowed}.repairs-columns-box{margin-top:14px}.repairs-columns-toggle{height:38px;border-radius:7px;background:#fff;color:#1e293b;border:1px solid #cbd5e1;padding:0 12px;font-size:.9rem;font-weight:700;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.repairs-columns-toggle:hover{background:#f8fafc}.column-toggle,.repairs-column-toggle-clean{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.column-toggle .toggle-checkbox,.repairs-column-toggle-clean .toggle-checkbox{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:6px 10px 6px 9px;border-radius:7px;border:1px solid #d6dbe5;background:#fff;color:#475569;font-size:.84rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.column-toggle .toggle-checkbox:hover,.repairs-column-toggle-clean .toggle-checkbox:hover{border-color:#a5b4fc;background:#f5f7ff;color:#312e81}.column-toggle .toggle-checkbox input,.repairs-column-toggle-clean .toggle-checkbox input{position:absolute;opacity:0;pointer-events:none}.column-toggle .checkbox-custom,.repairs-column-toggle-clean .checkbox-custom{display:none}.column-toggle .toggle-checkbox:before,.repairs-column-toggle-clean .toggle-checkbox:before{content:"";width:13px;height:13px;border-radius:4px;border:1px solid #cbd5e1;background:#fff;flex:0 0 13px}.column-toggle .toggle-checkbox:has(input:checked),.repairs-column-toggle-clean .toggle-checkbox:has(input:checked){background:#eef2ff;border-color:#818cf8;color:#312e81}.column-toggle .toggle-checkbox:has(input:checked):before,.repairs-column-toggle-clean .toggle-checkbox:has(input:checked):before{content:"✓";background:#4f46e5;border-color:#4f46e5;color:#fff;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.column-toggle .toggle-checkbox:not(:has(input:checked)),.repairs-column-toggle-clean .toggle-checkbox:not(:has(input:checked)){opacity:.78}.filter-container input,.filter-container select{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.refresh-icon{top:8px;right:8px;width:30px;height:30px;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease;margin-left:20%}@media(max-width:900px){.repairs-page{padding:14px}.page-header{align-items:stretch;flex-direction:column}.add-repair-button{width:100%}.repairs-tools-header{align-items:stretch;flex-direction:column}.repairs-tools-summary{justify-content:flex-start}.repairs-filter-toggle{justify-content:center;width:100%}.repairs-filter-grid,.repairs-sort-row{grid-template-columns:1fr}.repairs-sort-row select,.repairs-sort-button,.repairs-reset-button,.repairs-columns-toggle{width:100%}}.repair-sum-card{margin-bottom:1.5rem;padding:1rem 1.25rem;border-radius:12px;background:var(--surface, #ffffff);box-shadow:0 12px 30px #0f172a0f;border:1px solid var(--border, #e5e7eb);display:flex;flex-direction:column;gap:1rem}.repair-sum-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.repair-sum-header-left{display:flex;flex-direction:column;gap:.25rem}.repair-sum-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--text, #111827)}.repair-sum-subtitle{margin:0;font-size:.85rem;color:var(--text-muted, #6b7280)}.repair-sum-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;font-size:.85rem;color:var(--text-muted, #4b5563)}.repair-sum-global-count{font-weight:500}.repair-sum-global-amount strong{font-weight:600;color:var(--accent, #c8a97d)}.repair-sum-body{margin-top:-1.5rem}.repair-sum-empty{margin:0;font-size:.9rem;color:var(--text-muted, #6b7280)}.repair-sum-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.repair-sum-item{padding:.5rem 0;border-top:1px dashed var(--border, #e5e7eb)}.repair-sum-item:first-child{border-top:none}.repair-sum-shop-main{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.repair-sum-shop-meta{display:flex;align-items:center;gap:.5rem}.repair-sum-shop-dot{width:10px;height:10px;border-radius:999px;background:var(--accent, #c8a97d);box-shadow:0 0 0 4px #c8a97d26}.repair-sum-shop-texts{display:flex;flex-direction:column;gap:.1rem}.repair-sum-shop-name{font-size:.95rem;font-weight:500;color:var(--text, #111827)}.repair-sum-shop-count{font-size:.8rem;color:var(--text-muted, #6b7280)}.repair-sum-shop-amount{font-size:.95rem;font-weight:600;color:var(--text, #111827);white-space:nowrap}.repair-sum-meter{width:100%}.repair-sum-meter-bar{position:relative;width:100%;height:6px;border-radius:999px;background:var(--muted-surface, #f3f4f6);overflow:hidden}.repair-sum-meter-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,var(--accent, #c8a97d),var(--accent-strong, #d4af37));transform-origin:left center}@media(max-width:768px){.repair-sum-header-right{align-items:flex-start}.repair-sum-shop-main{flex-direction:column;align-items:flex-start}.repair-sum-shop-amount{margin-top:.15rem}}.client-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.client-form h2{text-align:center;color:#333}.client-form .error{color:#e3342f;text-align:center}.client-form input{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:1rem}.client-form button{background-color:#4f46e5;color:#fff;border:none;padding:12px;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.client-form button:hover{background-color:#1d4ed8}.client-list-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 10px #0000001a;margin:1rem auto;max-width:100%;overflow-x:auto}.client-table{width:100%;border-collapse:collapse;min-width:800px}.client-table th,.client-table td{padding:10px;border:1px solid #ddd;text-align:left;font-size:.9rem}.client-table th{background-color:#f4f4f4}.client-table tr:nth-child(2n){background-color:#f9f9f9}.client-table button{background-color:#4f46e5;color:#fff;border:none;padding:4px 8px;border-radius:4px;margin:2px;cursor:pointer;transition:background-color .3s;font-size:.8rem}.client-table button:hover{background-color:#1d4ed8;color:#fff}.stars{white-space:nowrap}.star{font-size:18px;color:#c7c7c7}.star.is-active{color:#f2b01e}.sr-only{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.ecm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1100}.ecm-dialog{width:100%;max-width:760px;background:#fff;border-radius:14px;box-shadow:0 20px 60px #00000038;display:flex;flex-direction:column;overflow:hidden;max-height:min(90vh,980px)}.ecm-header{display:flex;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #eef2f7;top:0;background:#fff;z-index:1}.ecm-header-text h2{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a}.ecm-subtitle{margin:6px 0 0;font-size:.9rem;color:#64748b}.ecm-mono{font-family:monospace;background:#f8fafc;border:1px solid #e2e8f0;padding:0 6px;border-radius:6px}.ecm-close{background:transparent;border:none;font-size:26px;color:#64748b;cursor:pointer;border-radius:8px}.ecm-close:hover{background:#f1f5f9;color:#0f172a}.ecm-body{padding:16px 20px 0;overflow-y:auto}.ecm-grid{display:grid;grid-template-columns:1fr;gap:14px}@media(min-width:640px){.ecm-grid{grid-template-columns:repeat(2,1fr);gap:16px}}.ecm-col-span-2{grid-column:span 1}@media(min-width:640px){.ecm-col-span-2{grid-column:span 2}}.ecm-field{display:flex;flex-direction:column}.ecm-field label{font-weight:600;color:#334155;margin-bottom:6px}.ecm-field input,.ecm-field select{padding:10px 12px;border:1px solid #dbe2ea;border-radius:10px;font-size:.97rem}.ecm-field input:focus,.ecm-field select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}.ecm-footer{bottom:0;background:linear-gradient(#fffc,#fff);border-top:1px solid #eef2f7;display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;margin-top:16px}.ecm-btn{border:none;border-radius:10px;padding:10px 14px;cursor:pointer;font-size:.97rem}.ecm-btn-primary{background:#3b82f6;color:#fff}.ecm-btn-primary:hover{background:#2563eb}.ecm-btn-ghost{background:#f3f4f6;border:1px solid #e5e7eb;color:#111827}.ecm-btn-ghost:hover{background:#e5e7eb}.ecm-rating-label{display:block;margin-bottom:6px;font-weight:600}.ecm-rating{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ecm-star{border:1px solid #e6e6e6;background:#fff;border-radius:8px;margin:0;font-size:20px;line-height:34px;text-align:center;cursor:pointer;transition:transform .05s ease,border-color .15s ease,background .15s ease}.ecm-star:hover{transform:translateY(-1px)}.ecm-star.is-active{background:#fff8e6;border-color:#f3d37a}@media(max-width:420px){.ecm-dialog{border-radius:10px}.ecm-header,.ecm-body,.ecm-footer{padding-left:14px;padding-right:14px}}.clients-page{width:100%;min-width:0;max-width:100%;min-height:80vh;padding:20px;color:#0f172a}.clients-page .page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;min-width:0;margin-bottom:20px}.clients-page .page-header>*{min-width:0}.add-client-button{flex:0 0 auto;padding:10px 16px;border:none;border-radius:6px;background-color:#4f46e5;color:#fff;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .15s ease}.add-client-button:hover{background-color:#1d4ed8;transform:translateY(-1px)}.clients-page .filter-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,185px),1fr));gap:10px;min-width:0;margin-bottom:1rem}.clients-page .filter-container>*{min-width:0}.clients-page .filter-container input,.clients-page .filter-container select{width:100%;min-width:0;height:40px;padding:0 11px;border:1px solid #d6dbe5;border-radius:7px;background:#fff;color:#0f172a;font-size:.9rem}.clients-page .filter-container input:focus,.clients-page .filter-container select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto;background:#00000080}.modal-content{position:relative;width:min(600px,100%);min-width:0;max-height:calc(100dvh - 40px);padding:20px;overflow-x:hidden;overflow-y:auto;background:#fff;border-radius:8px}.modal-close{position:absolute;top:10px;right:10px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:transparent;font-size:1.5rem;cursor:pointer}@media(max-width:768px){.clients-page{padding:14px}.clients-page .page-header{align-items:stretch;flex-direction:column}.add-client-button{width:100%}}@media(max-width:600px){.clients-page{padding:10px}.clients-page .filter-container{grid-template-columns:1fr}.modal-overlay{padding:10px}.modal-content{max-height:calc(100dvh - 20px)}}.settings-page{padding:20px;background:#f7f9fc}.settings-container{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.left-panel{flex:10 1 300px}.right-panel{flex:1 1 300px;display:flex;flex-direction:column;gap:20px}.card{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.card .subscription-renew-container{padding:0px 1rem}.form-group{margin-bottom:15px;display:flex;flex-direction:column}.form-label{font-weight:600;margin-bottom:5px;color:#333}.form-input{width:100%;padding:10px;font-size:1rem;border:1px solid #ddd;border-radius:4px;transition:border .3s ease}.form-input.valid{border:2px solid rgb(55,155,55)}.form-input.invalid{border:2px solid rgb(172,16,16)}.submit-button{background-color:#4f46e5;color:#fff;border:none;padding:12px;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.submit-button:hover{background-color:#1d4ed8}.error{color:#e3342f;margin-top:10px;text-align:center}.success{color:#38a169;margin-top:10px;text-align:center}.password-input-container{position:relative;display:flex;align-items:center}.password-input-container .form-input{flex:1;padding-right:2.5rem}.toggle-password-visibility{position:absolute;right:10px;background:transparent;border:none;cursor:pointer;font-size:1.2rem;outline:none}.password-form-container{max-width:600px;width:100%;margin:0 auto;background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box}.password-form-container .form-group{margin-bottom:16px;display:flex;flex-direction:column}.password-form-container .form-label{font-size:1rem;font-weight:600;margin-bottom:8px;color:#333}.password-form-container .form-input{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:1rem;width:100%;box-sizing:border-box;transition:border-color .3s ease}.password-form-container .form-input.valid{border:2px solid rgb(55,155,55)}.password-form-container .form-input.invalid{border:2px solid rgb(172,16,16)}.password-form-container .password-input-container{position:relative;display:flex;align-items:center}.password-form-container .password-input-container .form-input{flex:1;padding-right:2.5rem}.password-form-container .toggle-password-visibility{position:absolute;right:10px;background:transparent;border:none;cursor:pointer;font-size:1.2rem;outline:none}.password-form-container .submit-button{background-color:#4f46e5;color:#fff;border:none;padding:12px;border-radius:4px;font-size:1rem;cursor:pointer;width:100%;transition:background-color .3s ease;margin-top:8px}.password-form-container .submit-button:hover{background-color:#1d4ed8}.password-form-container .error,.password-form-container .success{text-align:center;margin-top:10px;font-size:.95rem}.password-form-container .error{color:#e3342f}.password-form-container .success{color:#38a169}@media(max-width:600px){.password-form-container{padding:16px;margin:0 10px}.password-form-container .form-label,.password-form-container .form-input,.password-form-container .submit-button{font-size:.95rem}}.subscription-status{padding:1.5rem;border-radius:8px;text-align:center;margin:1rem auto}.subscription-status h2{color:#333;margin-bottom:1rem}.subscription-status p{font-size:1.1rem;color:#555}.subscription-renew-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.subscription-renew-container h1{font-size:2rem;margin-bottom:1rem;color:#333}.subscription-renew-container p{font-size:1rem;margin-bottom:1rem;color:#666;max-width:600px}.renew-button{background:#4f46e5;color:#fff;border:none;padding:.8rem 1.5rem;font-size:1.1rem;border-radius:5px;cursor:pointer;margin-bottom:1rem;transition:background .3s}.renew-button:hover{background:#036}.back-button{background:transparent;border:2px solid #4f46e5;color:#4f46e5;padding:.6rem 1.3rem;font-size:1rem;border-radius:5px;cursor:pointer;transition:background .3s,color .3s}.back-button:hover{background:#036;border-color:#036;color:#fff}.tw2-card{background:#fff;border:1px solid rgba(15,23,42,.1);border-radius:16px;padding:14px;box-shadow:0 10px 30px #0206170f;margin:30px auto;max-width:900px}.tw2-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid rgba(15,23,42,.06)}.tw2-head-left{min-width:0}.tw2-title-row{display:flex;align-items:center;gap:10px}.tw2-emoji{font-size:18px;line-height:1}.tw2-title{margin:0;font-size:14px;font-weight:900;color:#0f172a;letter-spacing:.2px}.tw2-count{display:inline-flex;align-items:center;justify-content:center;height:20px;min-width:20px;padding:0 7px;border-radius:999px;font-size:12px;font-weight:800;color:#0f172a;background:#0f172a0f;border:1px solid rgba(15,23,42,.08)}.tw2-sub{margin:6px 0 0;color:#64748b;font-size:12px}.tw2-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tw2-btn{height:34px;padding:0 10px;border-radius:10px;border:1px solid rgba(15,23,42,.1);background:#fff;color:#0f172a;font-weight:800;font-size:12px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.tw2-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px #02061714}.tw2-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.tw2-btn.primary{background:#0f172a;color:#fff;border-color:#0f172a40}.tw2-body{padding-top:12px}.tw2-list{display:flex;flex-direction:column;gap:8px}.tw2-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;background:linear-gradient(180deg,#f8fafce6,#fff);border:1px solid rgba(15,23,42,.08);cursor:pointer;width:100%;text-align:left;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.tw2-item:hover{transform:translateY(-1px);box-shadow:0 12px 26px #02061714;border-color:#0f172a24}.tw2-prio-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto;background:#64748b99;box-shadow:0 0 0 4px #64748b1f}.tw2-prio-dot.high{background:#ef4444;box-shadow:0 0 0 4px #ef44441f}.tw2-prio-dot.medium{background:#f59e0b;box-shadow:0 0 0 4px #f59e0b24}.tw2-prio-dot.low{background:#10b981;box-shadow:0 0 0 4px #10b9811f}.tw2-prio-dot.none{background:#64748b99;box-shadow:0 0 0 4px #64748b1f}.tw2-item-main{min-width:0;flex:1 1 auto}.tw2-item-title{font-size:13px;font-weight:900;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tw2-item-sub{margin-top:3px;font-size:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tw2-item-sub.muted{opacity:.8;padding:12px}.tw2-item-right{display:flex;align-items:center;gap:10px;flex:0 0 auto}.tw2-pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:900;border:1px solid rgba(15,23,42,.1);background:#0f172a0a;color:#0f172a}.tw2-pill.muted{opacity:.9}.tw2-pill.info{background:#3b82f61a;border-color:#3b82f62e;color:#1d4ed8}.tw2-pill.warn{background:#f59e0b1f;border-color:#f59e0b33;color:#92400e}.tw2-pill.danger{background:#ef44441f;border-color:#ef444433;color:#b91c1c}.tw2-chev{color:#94a3b8;font-size:20px;line-height:1}.tw2-state{border:1px dashed rgba(15,23,42,.18);border-radius:14px;padding:14px;background:#f8fafccc}.tw2-state-title{font-weight:900;color:#0f172a;margin-bottom:4px}.tw2-state-sub{color:#64748b;font-size:12px;margin-bottom:10px}.tw2-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid rgba(15,23,42,.06);margin-top:12px}.tw2-foot-muted{color:#64748b;font-size:12px}.tw2-link{border:none;background:transparent;color:#0f172a;font-weight:900;cursor:pointer;padding:6px 8px;border-radius:10px}.tw2-link:hover{background:#0f172a0f}.tw2-skel-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border-radius:14px;border:1px solid rgba(15,23,42,.08);background:#fff;margin-bottom:8px}.tw2-skel-left{flex:1;display:flex;flex-direction:column;gap:8px}.tw2-skel-line,.tw2-skel-pill{position:relative;overflow:hidden;background:#0f172a0f;border-radius:999px}.tw2-skel-line{height:10px}.tw2-skel-pill{height:22px;width:96px;border-radius:999px}.tw2-skel-line.w60{width:60%}.tw2-skel-line.w35{width:35%}.tw2-skel-line:after,.tw2-skel-pill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-120%);background:linear-gradient(90deg,transparent,rgba(15,23,42,.1),transparent);animation:tw2Shimmer 1.2s infinite}@keyframes tw2Shimmer{0%{transform:translate(-120%)}to{transform:translate(120%)}}@media(max-width:560px){.tw2-actions .tw2-btn.primary{padding:0 9px}.tw2-pill{display:none}}:root{--home-bg: #f4f7ff;--card-bg: #ffffff;--card-soft: #f8fbff;--text-main: #132238;--text-soft: #5f6f87;--border-soft: #dce6f5;--primary: #4facfe;--primary-strong: #2f80ed;--primary-soft: #edf6ff;--secondary: #6c63ff;--secondary-soft: #f0eeff;--success: #18b87a;--success-soft: #eafcf4;--warning: #f59e0b;--warning-soft: #fff7e8;--danger: #ef4444;--danger-soft: #fff1f2;--shadow-soft: 0 10px 30px rgba(40, 83, 165, .08);--shadow-hover: 0 16px 40px rgba(40, 83, 165, .14)}.dashboard-home-page{padding:0 18px 34px}.dashboard-container{background:linear-gradient(135deg,#4facfe,#00c6ff);border:1px solid rgba(255,255,255,.22);padding:28px 30px;border-radius:24px;box-shadow:0 16px 45px #06f3;margin:20px auto 0;max-width:1480px;display:flex;justify-content:space-between;align-items:flex-start;gap:22px;text-align:left;color:#fff;overflow:hidden}.dashboard-hero-left{flex:1;min-width:0}.dashboard-hero-actions{display:flex;align-items:flex-start;justify-content:flex-end;flex-shrink:0}.dashboard-eyebrow{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffffe0;font-weight:800}.dashboard-title{font-size:clamp(2rem,2.5vw,2.8rem);margin:8px 0 10px;color:#fff;font-weight:800;line-height:1.1}.dashboard-text{font-size:1rem;color:#fffffff0;max-width:820px;margin:0;line-height:1.6}.dashboard-hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.hero-tag{background:#ffffff2e;color:#fff;border:1px solid rgba(255,255,255,.28);padding:8px 12px;border-radius:999px;font-size:.86rem;font-weight:700;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-settings-btn{display:inline-flex;align-items:center;gap:8px;border:none;background:#0a1b392e;color:#fff;border-radius:14px;padding:11px 15px;font-weight:800;cursor:pointer;box-shadow:0 8px 20px #1023461f;transition:transform .2s ease,background .2s ease}.hero-settings-btn:hover{transform:translateY(-1px);background:#0a1b3942}.dashboard-panel,.dashboard-widget-card{background:var(--card-bg);border:1px solid var(--border-soft);border-radius:22px;box-shadow:var(--shadow-soft);overflow:hidden}.dashboard-panel{max-width:1480px;margin:18px auto 0;padding:20px}.dashboard-panel--compact{padding:18px 20px}.section-head{margin-bottom:16px}.section-head-inline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-head-text{flex:1;min-width:0}.section-head h2{margin:0;color:var(--text-main);font-size:1.45rem;font-weight:800;line-height:1.2;word-break:break-word}.section-head p{margin:6px 0 0;color:var(--text-soft);font-size:.96rem;line-height:1.45;word-break:break-word}.section-head-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex-shrink:0;max-width:100%}.inline-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--primary-soft);color:var(--primary-strong);border:1px solid #cfe3ff;border-radius:999px;padding:7px 12px;font-size:.84rem;font-weight:800}.section-toggle-btn,.ghost-action-btn{border:1px solid var(--border-soft);background:#fff;color:var(--text-main);border-radius:12px;width:42px;height:42px;cursor:pointer;flex-shrink:0;transition:background .2s ease,transform .2s ease;padding-left:13px}.section-toggle-btn:hover,.ghost-action-btn:hover{background:#f4f8ff;transform:translateY(-1px)}.empty-state{color:var(--text-soft);margin:0}.empty-inline-state{padding:12px 0 4px}.empty-inline-state p{margin:0;color:var(--text-main);font-weight:700}.empty-inline-state small{display:block;margin-top:6px;color:var(--text-soft)}.favorites-chip-list{display:flex;flex-wrap:wrap;gap:12px}.module-chip-wrap{display:inline-flex;align-items:stretch;gap:8px;min-width:0;max-width:100%}.module-chip{display:inline-flex;align-items:center;gap:9px;min-width:0;max-width:100%;padding:11px 14px;border-radius:999px;text-decoration:none;color:var(--text-main);background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid #d7e5fb;box-shadow:0 6px 16px #3f72b014;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.module-chip:hover{transform:translateY(-1px);box-shadow:0 10px 22px #3f72b01f;background:#fff}.module-chip-icon{font-size:1rem;flex-shrink:0}.module-chip-label{font-size:.96rem;font-weight:700;line-height:1.1;white-space:nowrap}.module-chip-pin{min-width:38px;height:38px;border-radius:999px;border:1px solid #d7e5fb;background:#fff;color:#9fb7d8;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s ease;flex-shrink:0}.module-chip-pin.is-active{color:var(--primary-strong);background:var(--primary-soft);border-color:#bedbff}.module-chip-pin:hover{transform:translateY(-1px)}.global-search-form{display:flex;gap:12px;align-items:stretch}.global-search-input-wrap{flex:1;display:flex;align-items:center;gap:10px;min-height:52px;min-width:0;border-radius:16px;border:1px solid var(--border-soft);background:#fff;padding:0 14px;transition:border-color .2s ease,box-shadow .2s ease}.global-search-input-wrap:focus-within{border-color:#9dcfff;box-shadow:0 0 0 4px #4facfe1f}.global-search-icon{color:var(--primary-strong);flex-shrink:0}.global-search-input-wrap input{flex:1;min-width:0;border:none;outline:none;font-size:.98rem;color:var(--text-main);background:transparent}.global-search-form button{min-height:52px;border-radius:16px;border:none;background:linear-gradient(135deg,var(--primary) 0%,#00c6ff 100%);color:#fff;padding:0 18px;font-weight:800;cursor:pointer;transition:transform .2s ease,opacity .2s ease;flex-shrink:0}.global-search-form button:hover{transform:translateY(-1px);opacity:.97}.global-search-info{font-size:.92rem;color:var(--text-soft);margin:14px 0 0}.global-search-error{font-size:.92rem;color:var(--danger);margin:14px 0 0}.recent-searches{margin-top:14px}.recent-searches-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.recent-searches-header span{color:var(--text-soft);font-size:.9rem;font-weight:700}.recent-searches-clear{background:none;border:none;color:var(--primary-strong);font-weight:800;cursor:pointer}.recent-searches-list{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.recent-search-chip{border:1px solid #d7e5fb;background:#f7fbff;border-radius:999px;padding:8px 12px;cursor:pointer;font-size:.88rem;color:var(--text-main);transition:background .2s ease,transform .2s ease}.recent-search-chip:hover{background:#fff;transform:translateY(-1px)}.global-search-results{list-style:none;padding:0;margin:14px 0 0;border-top:1px solid #ebf1fb;max-height:340px;overflow-y:auto}.global-search-result-item{display:flex;align-items:flex-start;gap:12px;padding:12px 4px;border-bottom:1px solid #eff4fb;cursor:pointer;transition:background-color .15s ease,transform .1s ease}.global-search-result-item:hover{background-color:#f7fbff;transform:translateY(-1px)}.global-search-result-kind{font-size:.8rem;font-weight:800;color:var(--primary-strong);flex-shrink:0;min-width:110px}.global-search-result-text{display:flex;flex-direction:column;min-width:0}.global-search-result-text strong{font-size:.95rem;color:var(--text-main);line-height:1.4}.global-search-result-text small{font-size:.83rem;color:var(--text-soft);margin-top:4px;line-height:1.4}.global-search-results::-webkit-scrollbar{width:6px}.global-search-results::-webkit-scrollbar-thumb{background:#bddcff;border-radius:999px}.global-search-results::-webkit-scrollbar-track{background:#f7fbff}.focus-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.focus-card{border-radius:18px;padding:16px;border:1px solid transparent;min-height:114px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 1px #ffffff73}.focus-card span{color:var(--text-soft);font-size:.92rem;line-height:1.4;font-weight:700}.focus-card strong{display:block;margin-top:14px;font-size:2rem;color:var(--text-main);line-height:1;font-weight:800}.tone-warning{background:linear-gradient(180deg,#fff9ec,#fff4d9);border-color:#ffe2a9}.tone-info{background:linear-gradient(180deg,#eff7ff,#e1f0ff);border-color:#cfe3ff}.tone-primary{background:linear-gradient(180deg,#eef3ff,#e3ecff);border-color:#d2dcff}.tone-success{background:linear-gradient(180deg,#effdf6,#e1faee);border-color:#c2efd7}.tone-danger{background:linear-gradient(180deg,#fff4f5,#ffe8eb);border-color:#ffd1d8}.dashboard-main-grid{max-width:1480px;margin:18px auto 0;display:grid;gap:18px;align-items:start}.dashboard-main-grid--one{grid-template-columns:1fr}.dashboard-main-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-main-grid--mixed{grid-template-columns:repeat(12,minmax(0,1fr))}.dashboard-grid-slot{min-width:0}.dashboard-main-grid--mixed .dashboard-grid-slot--summary,.dashboard-main-grid--mixed .dashboard-grid-slot--daily{grid-column:span 7}.dashboard-main-grid--mixed .dashboard-grid-slot--tasks,.dashboard-main-grid--mixed .dashboard-grid-slot--notifications{grid-column:span 5}.dashboard-widget-card{padding:20px;height:100%}.dashboard-widget-plain{height:100%;min-width:0}.dashboard-widget-plain>*{height:100%;margin:0!important;min-width:0}.display-mode-inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:100%}.display-mode-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #d7e5fb;background:#f7fbff;color:var(--text-main);border-radius:999px;padding:8px 12px;cursor:pointer;font-size:.86rem;font-weight:800;transition:all .18s ease;white-space:nowrap}.display-mode-chip.is-active{background:var(--primary-soft);color:var(--primary-strong);border-color:#bfe0ff}.modules-compact-list{display:flex;flex-wrap:wrap;gap:12px}.modules-grid{display:grid;gap:14px;align-items:stretch}.modules-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.modules-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.modules-grid--mixed{grid-template-columns:repeat(12,minmax(0,1fr))}.modules-grid--mixed .module-card{grid-column:span 4}.modules-grid--mixed .module-card:nth-child(5n),.modules-grid--mixed .module-card:nth-child(7n){grid-column:span 6}.module-card{display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:100%;background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid #dce8f8;border-radius:20px;box-shadow:0 8px 22px #3f72b014;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;overflow:hidden}.module-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #3f72b01f}.module-card.is-pinned{border-color:#bfe0ff;box-shadow:0 12px 28px #3f72b01f}.module-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 0}.module-card-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#4facfe24,#6c63ff29);display:flex;align-items:center;justify-content:center;font-size:1.45rem;flex-shrink:0}.module-card-pin{border:1px solid #d7e5fb;background:#fff;color:#8ca8cb;border-radius:999px;padding:8px 12px;min-height:38px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:all .18s ease;flex-shrink:0;font-weight:800;font-size:.84rem}.module-card-pin.is-active{color:var(--primary-strong);background:var(--primary-soft);border-color:#bfe0ff}.module-card-pin:hover{transform:translateY(-1px)}.module-card-link{display:flex;flex-direction:column;justify-content:space-between;gap:16px;text-decoration:none;color:var(--text-main);padding:14px 16px 16px;min-height:150px;min-width:0;flex:1}.module-card-text{min-width:0}.module-card-text strong{display:block;font-size:1rem;line-height:1.35;font-weight:800;color:var(--text-main);word-break:break-word}.module-card-text small{display:block;margin-top:7px;color:var(--text-soft);line-height:1.45;font-size:.88rem}.module-card-cta{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;background:var(--primary-soft);color:var(--primary-strong);border:1px solid #cfe3ff;border-radius:999px;padding:8px 12px;font-size:.84rem;font-weight:800}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:16px}.summary-cards .card{background:linear-gradient(180deg,#fff,#f7fbff);border-radius:18px;padding:18px 16px;text-align:left;box-shadow:0 8px 20px #3f72b014;border:1px solid #dce8f8;transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}.summary-cards .card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary) 0%,var(--secondary) 100%)}.summary-cards .card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #3f72b01f}.summary-cards .card h3{font-size:1rem;margin:0 0 8px;color:var(--text-main);font-weight:800}.summary-cards .card p{font-size:2rem;margin:0 0 8px;color:var(--primary-strong);font-weight:800;line-height:1}.summary-cards .card small{font-size:.9rem;color:var(--text-soft)}.day-summary-top{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:6px}.day-summary-metric{background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid #dce8f8;border-radius:16px;padding:12px;min-width:0}.day-summary-metric .k{display:block;font-size:12px;color:var(--text-soft);font-weight:700}.day-summary-metric .v{display:block;margin-top:6px;font-weight:800;color:var(--text-main)}.day-summary-actors{margin-top:18px}.day-summary-actors h3,.day-summary-actions h3{margin:0 0 10px;font-size:1rem;color:var(--text-main);font-weight:800}.day-summary-actors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.actor-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;background:linear-gradient(180deg,#fff,#f7fbff);border:1px solid #dce8f8;border-radius:14px;padding:10px 12px;min-width:0}.actor-name{font-weight:700;color:var(--text-main);min-width:0}.actor-count{background:var(--primary-soft);color:var(--primary-strong);font-weight:800;padding:4px 10px;border-radius:999px;flex-shrink:0}.day-summary-actions{margin-top:18px}.day-actions-list{list-style:none;padding:0;margin:0}.day-action-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px dashed #dbe7f6}.day-action-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.day-action-time{font-variant-numeric:tabular-nums;color:var(--text-soft);font-size:12px;min-width:42px;font-weight:700;flex-shrink:0}.day-action-msg{color:var(--text-main);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.day-action-actor{color:var(--text-soft);font-size:13px}.day-action-pill{background:var(--success-soft);color:var(--success);border:1px solid #c4efdb;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;flex-shrink:0}.notifications-toolbar{display:flex;flex-direction:column;gap:12px;margin-bottom:10px}.notifications-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.notif-btn{border:1px solid #d7e5fb;border-radius:10px;padding:8px 12px;font-weight:800;cursor:pointer;background:#fff;transition:transform .15s ease,opacity .15s ease}.notif-btn:disabled{opacity:.5;cursor:not-allowed}.notif-btn:hover:not(:disabled){transform:translateY(-1px)}.notif-btn-secondary{color:var(--text-main);background:#f7fbff}.notif-btn-danger{color:var(--danger);background:#fff5f6;border-color:#ffd4da}.notifications-subheader{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-soft);padding-bottom:10px;border-bottom:1px solid #ebf1fb;font-weight:700}.notifications-pager{display:flex;align-items:center;gap:10px}.pager-btn{border:1px solid #d7e5fb;background:#fff;border-radius:10px;padding:6px 10px;cursor:pointer;font-weight:800}.pager-btn:disabled{opacity:.5;cursor:not-allowed}.pager-info{font-size:.9rem;color:var(--text-soft)}.notifications-list{list-style:none;padding:0;margin:0}.notification-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #ebf1fb;transition:background-color .2s ease}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:linear-gradient(90deg,#4facfe0d,#fff0);border-left:4px solid var(--primary);padding-left:12px}.notification-content{display:flex;align-items:flex-start;gap:12px;min-width:0;flex:1}.notification-text{min-width:0}.notification-text p{margin:0;font-weight:600;color:var(--text-main);line-height:1.45;word-break:break-word}.notification-text small{display:block;color:var(--text-soft);font-size:.875rem;margin-top:5px}.notification-creator{font-size:.85rem;color:var(--primary-strong);margin-left:.5rem;font-weight:700}.notif-bell{color:var(--warning);font-size:1.05rem;margin-top:4px;flex-shrink:0}.notification-actions-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.notification-read-btn{border:1px solid #c9efd9;background:#effcf3;color:#15803d;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:800;cursor:pointer}.notification-delete{background:none;border:none;color:var(--danger);cursor:pointer;font-size:1rem;padding:.25rem;transition:color .2s}.notification-delete:hover{color:#c71b2d}.dashboard-customizer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#121e346b;display:flex;justify-content:flex-end;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dashboard-customizer{width:min(440px,100%);height:100%;background:#fff;box-shadow:-10px 0 30px #091f4229;display:flex;flex-direction:column}.dashboard-customizer-header,.dashboard-customizer-footer{padding:18px;border-bottom:1px solid var(--border-soft)}.dashboard-customizer-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-customizer-header h2{margin:0;color:var(--text-main);font-size:1.2rem;font-weight:800}.dashboard-customizer-header button{border:1px solid var(--border-soft);background:#fff;border-radius:10px;width:40px;height:40px;cursor:pointer;flex-shrink:0}.dashboard-customizer-footer{border-top:1px solid var(--border-soft);border-bottom:none;margin-top:auto;display:flex;justify-content:space-between;gap:10px}.dashboard-customizer-body{padding:18px;display:flex;flex-direction:column;gap:18px;overflow:auto}.customizer-block{padding:16px;background:#f8fbff;border:1px solid #dce8f8;border-radius:18px;overflow:hidden}.customizer-block h3{margin:0 0 12px;color:var(--text-main);font-size:1rem;font-weight:800}.customizer-block label{display:flex;align-items:center;gap:10px;color:var(--text-main);font-weight:600;margin-bottom:10px}.customizer-block label:last-child{margin-bottom:0}.customizer-block input[type=checkbox]{width:16px;height:16px}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option-card{border:1px solid #d7e5fb;background:#fff;color:var(--text-main);border-radius:14px;padding:12px;cursor:pointer;display:flex;align-items:center;gap:10px;font-weight:800;transition:all .18s ease;min-width:0}.option-card.is-active{background:var(--primary-soft);border-color:#bfe0ff;color:var(--primary-strong)}.option-card-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.primary-btn,.secondary-btn{border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer}.primary-btn{background:linear-gradient(135deg,var(--primary) 0%,#00c6ff 100%);color:#fff;border:none}.secondary-btn{background:#fff;color:var(--text-main);border:1px solid var(--border-soft)}@media(max-width:1200px){.dashboard-main-grid--three,.modules-grid--three,.modules-grid--mixed{grid-template-columns:repeat(2,minmax(0,1fr))}.modules-grid--mixed .module-card,.modules-grid--mixed .module-card:nth-child(5n),.modules-grid--mixed .module-card:nth-child(7n){grid-column:auto}}@media(max-width:980px){.dashboard-container{flex-direction:column;padding:24px}.dashboard-hero-actions{width:100%;justify-content:flex-start}.dashboard-main-grid--mixed{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid--mixed .dashboard-grid-slot--summary,.dashboard-main-grid--mixed .dashboard-grid-slot--daily,.dashboard-main-grid--mixed .dashboard-grid-slot--tasks,.dashboard-main-grid--mixed .dashboard-grid-slot--notifications{grid-column:auto}.day-summary-top{grid-template-columns:1fr}.notifications-subheader,.section-head-inline{flex-direction:column;align-items:flex-start}.section-head-actions{width:100%;justify-content:flex-start}.display-mode-inline{width:100%}.modules-grid--two,.modules-grid--three{grid-template-columns:1fr}}@media(max-width:768px){.dashboard-home-page{padding:0 10px 24px}.dashboard-panel,.dashboard-widget-card{border-radius:18px}.dashboard-panel,.dashboard-widget-card{padding:16px}.global-search-form{flex-direction:column}.focus-grid,.summary-cards,.day-summary-actors-grid,.dashboard-main-grid--two,.dashboard-main-grid--three,.dashboard-main-grid--mixed,.modules-grid--two,.modules-grid--three,.modules-grid--mixed{grid-template-columns:1fr}.dashboard-main-grid--mixed .dashboard-grid-slot--summary,.dashboard-main-grid--mixed .dashboard-grid-slot--daily,.dashboard-main-grid--mixed .dashboard-grid-slot--tasks,.dashboard-main-grid--mixed .dashboard-grid-slot--notifications{grid-column:auto}.notification-item{flex-direction:column;align-items:flex-start}.notification-actions-right{width:100%;justify-content:flex-end}.day-action-item{flex-direction:column;align-items:flex-start}.day-action-left{width:100%}.day-action-msg{white-space:normal;overflow:visible;text-overflow:initial}.dashboard-customizer{width:100%}.option-grid{grid-template-columns:1fr}.module-card-top{align-items:flex-start;flex-direction:column}.module-card-pin{width:100%;justify-content:center}}@media(max-width:520px){.dashboard-title{font-size:1.8rem}.hero-tag,.recent-search-chip,.display-mode-chip{font-size:.82rem}.favorites-chip-list,.modules-compact-list,.dashboard-hero-tags{gap:8px}.module-chip{padding:10px 12px}.global-search-result-item{flex-direction:column}.global-search-result-kind{min-width:auto}.module-chip-wrap{width:100%}.module-chip{flex:1}}.statistics-page{padding:24px;min-height:100%;color:#0f172a}.stats-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.page-title{margin:0}.page-subtitle{margin:4px 0 0;color:#475569}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#64748b;margin:0 0 4px}.header-actions{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.header-filters,.header-controls{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.input-label{display:flex;flex-direction:column;font-size:12px;color:#475569;gap:6px;margin-bottom:0}.input-label select{min-width:150px;height:42px;padding:0 12px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;font-weight:600;color:#0f172a;cursor:pointer}.input-label.small select{min-width:130px}.header-select select{min-width:240px}.statistics-tabs{display:inline-flex;gap:6px;padding:6px;margin:18px 0 6px;background:#eef2ff;border:1px solid #e0e7ff;border-radius:16px}.statistics-tab{min-height:42px;padding:0 16px;border:none;border-radius:12px;background:transparent;color:#334155;font-weight:800;cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.statistics-tab:hover{background:#ffffffa6}.statistics-tab.active{background:#312e81;color:#fff;box-shadow:0 8px 18px #312e8138}.toggle-group{display:inline-flex;align-items:center;gap:10px;padding:0 14px;height:42px;background:#eef2ff;border-radius:12px;border:1px solid #e0e7ff;margin:auto 5px}.toggle{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:#312e81;font-size:13px}.toggle input[type=checkbox]{width:16px;height:16px;border-radius:4px;border:1px solid #c4b5fd;cursor:pointer;margin:0}.chart-switch{display:inline-flex;border-radius:12px;overflow:hidden;background:#e5e7eb;height:42px;margin:auto 5px}.chart-switch button{min-width:90px;padding:0 16px;border:none;background:transparent;font-weight:600;color:#334155;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.chart-switch button+button{border-left:1px solid #d1d5db}.chart-switch button.active{background:#312e81;color:#fff}.ghost-btn{border:1px solid #cbd5e1;background:#fff;color:#0f172a;padding:0 18px;border-radius:12px;cursor:pointer;font-weight:700;height:42px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.ghost-btn:hover{background:#0f172a;color:#fff}.error-banner{background:#fef2f2;border:1px solid #fecdd3;color:#991b1b;padding:12px 16px;border-radius:10px;margin:14px 0}.loading-wrapper{display:grid;place-items:center;min-height:240px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:18px 0}.kpi-card{background:#fff;border-radius:14px;padding:16px;box-shadow:0 1px 2px #0f172a14;border:1px solid #e2e8f0}.kpi-card.accent{background:linear-gradient(135deg,#312e81,#4338ca);color:#e0e7ff;border:none}.kpi-label{margin:0;font-size:13px;color:#475569}.kpi-card.accent .kpi-label{color:#e0e7ff}.kpi-value{margin:6px 0;font-size:22px;font-weight:800;color:#0f172a}.kpi-card.accent .kpi-value{color:#f8fafc}.kpi-value.positive{color:#16a34a}.kpi-value.negative{color:#dc2626}.kpi-caption{margin:0;color:#64748b;font-size:13px}.kpi-card.accent .kpi-caption{color:#cbd5ff}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin:18px 0}.chart-card{background:#fff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0f172a14;padding:12px 12px 4px}.chart-card.compact{display:flex;flex-direction:column;justify-content:space-between}.card-header{display:flex;justify-content:space-between;align-items:center;padding:4px 6px 12px}.muted{color:#94a3b8;padding:0 12px 12px}.top-clients{background:#fff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0f172a14;padding:12px}.table-wrapper{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}th{color:#475569;font-weight:700;font-size:14px}tr:last-child td{border-bottom:none}.year-compare{display:flex;flex-direction:column;gap:10px;padding:4px 10px 14px}.year-row{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:10px;font-weight:700;color:#0f172a}.bar{position:relative;background:#e2e8f0;border-radius:999px;height:10px;overflow:hidden}.bar-fill{position:absolute;top:0;left:0;height:100%;background:#cbd5e1}.bar-fill.primary{background:#4338ca}.delta{font-size:14px;color:#475569}.value{color:#0f172a;font-weight:800}@media(max-width:768px){.header-actions,.header-filters,.header-controls{width:100%;justify-content:flex-start}.year-row{grid-template-columns:50px 1fr auto}}@media(max-width:640px){.statistics-tabs{display:grid;width:100%;grid-template-columns:1fr}.statistics-tab{width:100%}}.help-tooltip{display:inline-flex;align-items:center;flex:0 0 auto}.help-tooltip-trigger{width:18px;height:18px;min-width:18px;padding:0;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;font:inherit;font-size:11px;font-weight:900;line-height:1;cursor:help;display:inline-flex;align-items:center;justify-content:center;box-shadow:none;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.help-tooltip-trigger:hover,.help-tooltip-trigger:focus-visible,.help-tooltip-trigger[aria-expanded=true]{background:#312e81;border-color:#312e81;color:#fff;transform:translateY(-1px);outline:none}.help-tooltip-trigger:focus-visible{box-shadow:0 0 0 3px #6366f133}.help-tooltip-popover{position:fixed;z-index:10000;width:max-content;max-width:min(300px,calc(100vw - 20px));padding:9px 11px;border-radius:10px;background:#0f172a;color:#fff;box-shadow:0 12px 30px #0f172a3d;font-size:12px;font-weight:600;line-height:1.45;text-align:left;pointer-events:none;animation:help-tooltip-in .14s ease-out}.help-tooltip-popover:after{content:"";position:absolute;width:8px;height:8px;background:#0f172a;transform:rotate(45deg)}.help-tooltip-popover--top:after{left:50%;bottom:-4px;margin-left:-4px}.help-tooltip-popover--bottom:after{left:50%;top:-4px;margin-left:-4px}.help-tooltip-popover--left:after{right:-4px;top:50%;margin-top:-4px}.help-tooltip-popover--right:after{left:-4px;top:50%;margin-top:-4px}@keyframes help-tooltip-in{0%{opacity:0;transform:translateY(3px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.help-tooltip-trigger,.help-tooltip-popover{transition:none;animation:none}}.employee-stats-dashboard{margin-top:18px}.employee-stats-toolbar,.employee-filters-card,.employee-card,.employee-kpi-card{background:#fff;border:1px solid #e2e8f0;box-shadow:0 2px 6px #0f172a0f}.employee-stats-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-radius:18px;padding:18px}.employee-stats-toolbar h2{margin:0 0 6px;color:#0f172a}.employee-stats-toolbar p{margin:0;color:#64748b;max-width:920px}.employee-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.employee-toolbar-actions span{color:#64748b;font-size:12px;font-weight:700;white-space:nowrap}.employee-refresh-btn,.employee-card-header button,.employee-case-actions button,.employee-live-top button,.employee-detail-line button{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:12px;min-height:38px;padding:0 14px;font-weight:800;cursor:pointer}.employee-refresh-btn:hover:not(:disabled),.employee-card-header button:hover,.employee-case-actions button:hover,.employee-live-top button:hover,.employee-detail-line button:hover{background:#0f172a;color:#fff}.employee-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.employee-dashboard-tabs{display:inline-flex;gap:6px;margin-top:14px;padding:6px;border-radius:16px;background:#eef2ff;border:1px solid #e0e7ff;flex-wrap:wrap}.employee-dashboard-tabs button{border:none;background:transparent;color:#312e81;border-radius:12px;min-height:38px;padding:0 14px;font-weight:800;cursor:pointer}.employee-dashboard-tabs button.active{background:#312e81;color:#fff;box-shadow:0 8px 18px #312e8138}.employee-dashboard-tabs button:hover:not(.active){background:#e0e7ff}.employee-filters-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:14px;padding:14px;border-radius:16px}.employee-filters-card label,.employee-table-controls label{display:flex;flex-direction:column;gap:6px;color:#475569;font-size:12px;font-weight:800}.employee-filters-card select,.employee-filters-card input,.employee-table-controls input,.employee-table-controls select{height:40px;border-radius:12px;border:1px solid #e2e8f0;padding:0 12px;background:#fff;color:#0f172a;font-weight:700}.employee-loading{min-height:220px;display:grid;place-items:center}.employee-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:16px 0}.employee-kpi-card{border-radius:16px;padding:16px}.employee-kpi-card span{display:block;color:#64748b;font-size:13px;font-weight:800}.employee-kpi-card strong{display:block;margin:8px 0 4px;color:#0f172a;font-size:28px;line-height:1}.employee-kpi-card small{color:#64748b}.employee-kpi-card.accent{background:linear-gradient(135deg,#312e81,#4338ca);border:none}.employee-kpi-card.accent span,.employee-kpi-card.accent small{color:#cbd5ff}.employee-kpi-card.accent strong{color:#fff}.employee-kpi-card.warning{border-color:#fed7aa;background:#fff7ed}.employee-kpi-card.danger{border-color:#fecaca;background:#fef2f2}.employee-kpi-card.success{border-color:#bbf7d0;background:#f0fdf4}.employee-kpi-card.muted-card{border-color:#cbd5e1;background:#f8fafc}.employee-card-subtitle{margin:4px 0 0;color:#64748b;font-size:13px;max-width:820px}.employee-charts-grid,.employee-details-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:16px;margin:16px 0}.employee-details-grid.compact-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-card{border-radius:18px;padding:14px}.employee-chart-card{min-height:360px}.employee-chart-card.wide{min-height:390px}.employee-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.employee-card-header h3{margin:0;color:#0f172a}.card-kicker{margin:0;font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.employee-alert-list{display:flex;flex-direction:column;gap:12px}.employee-alert-item{display:grid;grid-template-columns:12px 1fr;gap:12px;border:1px solid #e2e8f0;border-radius:14px;padding:12px;background:#f8fafc}.employee-alert-item strong{color:#0f172a}.employee-alert-item p{margin:4px 0 0;color:#64748b;font-size:13px}.alert-dot,.employee-live-dot{width:10px;height:10px;border-radius:999px;margin-top:5px;background:#64748b}.alert-dot.danger,.employee-live-dot.paused{background:#dc2626}.alert-dot.warning,.employee-live-dot.assigned{background:#f59e0b}.alert-dot.info,.employee-live-dot.running{background:#2563eb}.employee-compact-list{display:grid;gap:10px;max-height:430px;overflow:auto;padding-right:4px}.employee-compact-list.archived{max-height:320px}.employee-case-card{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(220px,1fr) auto;gap:12px;align-items:center;border:1px solid #e2e8f0;border-radius:14px;padding:12px;background:#f8fafc}.employee-case-card.blocked{border-left:4px solid #f97316}.employee-case-card.unassigned{border-left:4px solid #6366f1}.employee-case-card.archived{border-left:4px solid #64748b}.employee-case-main,.employee-case-meta,.employee-case-actions{min-width:0}.employee-case-title{display:block;border:none;background:transparent;color:#0f172a;padding:0;margin:6px 0 3px;font-size:16px;font-weight:900;cursor:pointer;text-align:left}.employee-case-title:hover{color:#2563eb;text-decoration:underline}.employee-case-watch,.employee-case-meta span{display:block;color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-case-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}.employee-case-meta strong{color:#0f172a}.employee-priority,.employee-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:3px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-weight:900;font-size:12px}.employee-priority.high,.employee-badge.danger{background:#fef2f2;color:#b91c1c}.employee-priority.medium{background:#fff7ed;color:#c2410c}.employee-priority.low{background:#ecfdf5;color:#047857}.employee-live-section{margin-top:16px}.employee-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.employee-live-card{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fff}.employee-live-card.running{border-color:#bfdbfe;background:linear-gradient(135deg,#eff6ff,#fff)}.employee-live-card.paused{border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,#fff)}.employee-live-card.assigned{border-color:#e0e7ff;background:linear-gradient(135deg,#eef2ff,#fff)}.employee-live-top{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:10px;margin-bottom:12px}.employee-live-top strong,.employee-live-body h4{color:#0f172a}.employee-live-top span,.employee-live-body p,.employee-live-metrics span{color:#64748b;font-size:13px}.employee-live-body h4{margin:0 0 4px}.employee-live-body p{margin:0 0 12px}.employee-live-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.employee-live-metrics span{display:block;border-radius:12px;background:#ffffffbf;border:1px solid #e2e8f0;padding:8px}.employee-live-metrics strong{display:block;margin-top:2px;color:#0f172a}.employee-table-header{align-items:center}.employee-table-controls{display:flex;gap:10px;flex-wrap:wrap}.employee-table-controls input{width:230px}.employee-table-wrapper{overflow:auto}.employee-stats-table{min-width:1180px;border-collapse:collapse;width:100%}.employee-stats-table.performance-table{min-width:980px}.employee-stats-table th,.employee-stats-table td{padding:11px 10px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}.employee-stats-table th{color:#475569;font-size:13px;font-weight:900;background:#f8fafc;position:sticky;top:0;z-index:1}.employee-stats-table tbody tr{cursor:pointer}.employee-stats-table tbody tr:hover,.employee-stats-table tbody tr.selected{background:#eef2ff}.employee-stats-table td strong{display:block;color:#0f172a}.employee-stats-table td span{display:block;margin-top:3px;color:#64748b;font-size:12px}.employee-stats-table td.employee-money strong,.employee-detail-line.revenue button,.employee-detail-line.revenue strong{color:#047857}.perf-pill{display:inline-flex!important;align-items:center;justify-content:center;min-width:64px;padding:4px 9px;border-radius:999px;font-size:12px!important;font-weight:900;background:#f1f5f9;color:#475569!important}.perf-pill.good,.employee-mini-kpis .good{background:#ecfdf5;color:#047857!important;border-color:#bbf7d0}.perf-pill.warning,.employee-mini-kpis .warning{background:#fff7ed;color:#c2410c!important;border-color:#fed7aa}.perf-pill.danger,.employee-mini-kpis .danger{background:#fef2f2;color:#b91c1c!important;border-color:#fecaca}.perf-pill.neutral,.employee-mini-kpis .neutral{background:#f1f5f9;color:#475569!important}.perf-pill.strong{box-shadow:inset 0 0 0 1px #b91c1c33}.employee-empty,.employee-empty-cell{color:#64748b;padding:16px;text-align:center}.employee-archive-card,.employee-detail-card{margin-top:16px}.employee-mini-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}.employee-mini-kpis div{border:1px solid #e2e8f0;border-radius:14px;padding:12px;background:#f8fafc}.employee-mini-kpis span{display:block;color:#64748b;font-size:12px;font-weight:800}.employee-mini-kpis strong{display:block;margin-top:6px;font-size:20px;color:#0f172a}.employee-detail-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.employee-detail-columns h4{margin:0 0 10px}.employee-detail-line{padding:10px 0;border-bottom:1px solid #e2e8f0}.employee-detail-line button{display:block;min-height:auto;border:none;background:transparent;padding:0;color:#0f172a;font-size:15px;font-weight:900;text-align:left}.employee-detail-line button:hover{color:#2563eb;text-decoration:underline;background:transparent}.employee-detail-line strong{display:block;color:#0f172a}.employee-detail-line span{display:block;margin-top:3px;color:#64748b;font-size:13px}@media(max-width:1100px){.employee-charts-grid,.employee-details-grid,.employee-details-grid.compact-layout,.employee-case-card{grid-template-columns:1fr}}@media(max-width:960px){.employee-stats-toolbar,.employee-card-header,.employee-table-header{flex-direction:column}.employee-table-controls,.employee-table-controls input,.employee-table-controls select,.employee-dashboard-tabs{width:100%}.employee-dashboard-tabs button{flex:1}}.employee-live-top>div{display:flex;flex-direction:column;gap:3px;min-width:0}.employee-live-top strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-live-top span{display:block}.perf-pill.danger{background:#fef2f2;color:#b91c1c!important;border:1px solid #fecaca}.employee-filters-card+.employee-card,.employee-filters-card+.employee-loading{margin-top:16px}.employee-label-with-help{display:inline-flex!important;align-items:center;gap:6px;max-width:100%}.employee-stats-table th .employee-label-with-help{white-space:nowrap}.employee-kpi-card .employee-label-with-help,.employee-mini-kpis .employee-label-with-help{width:fit-content}.confirm-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:20px;background-color:#f4f4f4;text-align:center}.confirm-container h1{font-size:2rem;color:#333;margin-bottom:20px}.confirm-container p{font-size:1.2rem;color:#4f46e5;margin-bottom:20px}.login-button{background-color:#4f46e5;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.login-button:hover{background-color:#1d4ed8}.quote-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:24px;border-radius:12px;max-width:760px;margin:0 auto;width:100%;box-sizing:border-box}.quote-form h2{text-align:center;font-size:1.75rem;color:#111827;margin-bottom:.5rem}.quote-form .error{color:#e3342f;font-size:.95rem;text-align:center}.quote-form label{font-size:.95rem;font-weight:600;color:#374151;margin-bottom:.25rem}.quote-form input[type=text],.quote-form input[type=number],.quote-form input[type=email],.quote-form select,.quote-form textarea{padding:.7rem .9rem;font-size:1rem;border:1px solid #e5e7eb;border-radius:8px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .15s ease;width:100%;box-sizing:border-box;background:#fff}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.quote-form textarea{resize:vertical;min-height:110px}.quote-form fieldset{border:1px solid #e5e7eb;border-radius:12px;padding:16px;background:#fafafa}.quote-form fieldset legend{font-size:.95rem;font-weight:700;color:#111827;padding:0 8px}.form-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.quote-form .form-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center;flex-wrap:wrap}.quote-form .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .9rem;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .1s ease,box-shadow .2s ease,background-color .2s ease}.quote-form .btn:active{transform:translateY(0)}.quote-form .btn-primary{background-color:#4f46e5;color:#fff}.quote-form .btn-primary:hover{background-color:#4338ca}.quote-form .btn-secondary{background-color:#e5e7eb}.quote-form .btn-secondary:hover{background:#d1d5db}.btn-pdf-preview{background-color:#4f46e5;color:#fff}.btn-pdf-preview:hover:not(:disabled){background-color:#4338ca;transform:translateY(-1px)}.btn-pdf-preview:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.9}.btn-pdf-preview .spinner{width:14px;height:14px}.btn-pdf-preview .spinner.css-spinner{border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.travaux-fieldset{display:grid;gap:10px}.travaux-item{display:grid;grid-template-columns:1fr 130px;align-items:center;column-gap:14px;row-gap:8px;background:#fff;border:1px solid #eef2f7;border-radius:10px;padding:10px 12px}.travaux-label{display:inline-flex;align-items:center;gap:10px;color:#111827;font-weight:600;line-height:1.2}.travaux-label input[type=checkbox]{width:18px;height:18px;accent-color:#4f46e5}.travaux-price{width:100%;max-width:130px;padding:.5rem .6rem;border:1px solid #e5e7eb;border-radius:8px;text-align:right}.travaux-comment.under-price{grid-column:1 / -1;margin:0;padding:.55rem .7rem;border-radius:8px}.travaux-item:hover{border-color:#dbe3ef;background:#fbfdff}.total-price{text-align:right;font-size:1.05rem;font-weight:700;margin-top:4px;color:#4f46e5}.email-toggle{border:1px solid #e5e7eb;background:#fafafa;border-radius:12px;padding:12px 14px}.email-toggle__label{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:#111827;margin-bottom:6px;cursor:pointer}.email-toggle__label input[type=checkbox]{width:18px;height:18px;accent-color:#4f46e5}.email-toggle__hint{margin:0;font-size:.9rem;line-height:1.35;color:#6b7280}.pdf-preview-container{margin-top:16px;border:1px dashed #e5e7eb;border-radius:12px;background:#fafafa;padding:12px}.pdf-preview-container h3{margin:0 0 8px;font-size:1rem;color:#374151}@media(max-width:560px){.quote-form{padding:16px}.travaux-item{grid-template-columns:1fr 110px}.travaux-price{max-width:110px}}.quote-list-container{width:100%;min-width:0;max-width:100%;margin:1rem 0;padding:20px;overflow-x:auto;overflow-y:hidden;background:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.quote-table{width:auto;min-width:100%;border-collapse:collapse;table-layout:fixed}.quote-table th,.quote-table td{padding:10px;border:1px solid #dddddd;text-align:left;font-size:.9rem}.quote-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-table td:last-child,.quote-table .actions-cell{overflow:visible;text-overflow:clip}.quote-table th{background-color:#f4f4f4;white-space:nowrap}.quote-table tr:nth-child(2n){background-color:#f9f9f9}.quote-table button{margin:2px;padding:4px 8px;border:none;border-radius:4px;background-color:#4f46e5;color:#fff;font-size:.8rem;cursor:pointer;transition:background-color .3s ease,opacity .2s ease,transform .15s ease}.quote-table button:hover:not(:disabled){background-color:#1d4ed8}.quote-table button.email-sent{border:none;outline:none;background-color:#10b981;color:#fff}.quote-table tr.overdue{background-color:#ffecec;border-left:4px solid #e3342f;color:#a10000;font-weight:700}.btn-spinner{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:middle;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-sending{opacity:.7;cursor:not-allowed}.quote-table th:last-child,.quote-table td:last-child{white-space:nowrap}.quote-table td:last-child button,.quote-table td:last-child .quote-tracking-button,.quote-table td:last-child .tracking-employe-btn{width:28px;height:28px;min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:2px;border-radius:4px;vertical-align:middle;font-size:.8rem;line-height:1;box-shadow:none}.quote-table td:last-child button svg{width:13px;height:13px;flex-shrink:0}.quote-table td:last-child button:disabled{opacity:.45;cursor:not-allowed}.quote-table td:last-child .quote-tracking-button.tracking-missing{background:#dc2626}.quote-table td:last-child .quote-tracking-button.tracking-open{background:#f59e0b}.quote-table td:last-child .quote-tracking-button.tracking-assigned{background:#4f46e5}.quote-table td:last-child .quote-tracking-button.tracking-running{background:#16a34a}.quote-table td:last-child .quote-tracking-button.tracking-paused{background:#9333ea}.quote-table td:last-child .quote-tracking-button.tracking-finished{background:#64748b}.quote-table td:last-child .quote-tracking-button:hover:not(:disabled){filter:brightness(.92);transform:translateY(-1px)}.quote-table td:last-child button.tracking-employe-btn span,.quote-table td:last-child button.btn-tracking-employe span,.quote-table td:last-child button.quote-tracking-btn span,.quote-table td:last-child button.quote-tracking-button span{display:none}@media(max-width:768px){.quote-list-container{padding:14px}.quote-table th,.quote-table td{padding:8px;font-size:.84rem}.quote-table th:last-child{right:0;z-index:3;background:#f4f4f4;box-shadow:-8px 0 12px -12px #0f172a8c}.quote-table td:last-child{right:0;z-index:2;background:inherit;box-shadow:-8px 0 12px -12px #0f172a8c}}.modal-content{background:#fff;padding:30px;border-radius:8px;width:90%;max-width:700px;box-shadow:0 4px 8px #0000001a;max-height:90vh;overflow-y:auto}.edit-quote-form{margin-top:20px}.form-row{display:flex;flex-wrap:wrap;margin-bottom:15px;gap:20px}.form-group{flex:1;min-width:200px;display:flex;flex-direction:column}.form-group.full-width{flex:1 1 100%}label{margin-bottom:5px;font-weight:600;color:#555}input[type=text],input[type=email],input[type=number],input[type=date],textarea,select{padding:.75rem 1rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;font-family:inherit}input[type=text]:focus,input[type=email]:focus,input[type=number]:focus,input[type=date]:focus,textarea:focus,select:focus{outline:none;border-color:#007bff;box-shadow:0 0 4px #007bff33}fieldset{border:1px solid #ddd;border-radius:4px;padding:15px;margin-bottom:20px}legend{font-weight:700;padding:0 10px}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:1rem;cursor:pointer}.btn-primary:hover{background-color:#0069d9}.photo-preview{display:block;margin-top:.5rem;max-width:120px;border-radius:4px;box-shadow:0 2px 6px #0000001a}.quotes-page{padding:20px;min-height:80vh;overflow-x:hidden;box-sizing:border-box;color:#0f172a}.page-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.page-title{font-size:2rem;color:#0f172a;margin:0;font-weight:800;letter-spacing:-.03em}.add-quote-button{background-color:#4f46e5;color:#fff;border:none;padding:11px 18px;border-radius:7px;cursor:pointer;transition:background-color .25s ease,transform .15s ease,box-shadow .15s ease;font-weight:700;white-space:nowrap;box-shadow:0 8px 18px #4f46e52e}.add-quote-button:hover:not(:disabled){background-color:#4338ca;transform:translateY(-1px)}.add-quote-button:disabled{opacity:.55;cursor:not-allowed}.quotes-tools-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin-bottom:18px;box-shadow:0 6px 20px #0f172a0f;overflow:hidden}.quotes-tools-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:linear-gradient(180deg,#fff,#f8fafc);border-bottom:1px solid #e5e7eb}.quotes-filter-toggle{border:none;background:#eef2ff;color:#3730a3;border-radius:999px;padding:9px 13px;cursor:pointer;font-weight:800;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s ease,transform .15s ease}.quotes-filter-toggle:hover{background:#e0e7ff;transform:translateY(-1px)}.quotes-filter-toggle strong{min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:#4f46e5;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px}.quotes-filter-toggle-chevron{font-size:12px}.quotes-tools-summary{display:inline-flex;align-items:center;justify-content:flex-end;gap:12px;color:#64748b;font-size:.9rem}.quotes-tools-summary strong{color:#0f172a;font-weight:800}.quotes-filter-panel{padding:16px}.quotes-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:10px;margin-bottom:14px}.quotes-filter-grid input,.quotes-filter-grid select{width:100%;height:40px;padding:0 11px;border:1px solid #d1d5db;border-radius:8px;font-size:.92rem;background:#fff;color:#111827;box-sizing:border-box}.quotes-filter-grid input::placeholder{color:#6b7280}.quotes-filter-grid input:focus,.quotes-filter-grid select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e521}.quotes-sort-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding-top:12px;border-top:1px solid #eef2f7}.quotes-sort-row label{display:flex;flex-direction:column;gap:5px;min-width:190px;color:#475569;font-size:.8rem;font-weight:700}.quotes-sort-row label span{padding-left:2px}.quotes-sort-row select{height:40px;padding:0 11px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font-size:.92rem}.quotes-sort-button,.quotes-reset-button,.quotes-columns-toggle{height:40px;border-radius:8px;padding:0 13px;cursor:pointer;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s ease,transform .15s ease,opacity .15s ease}.quotes-sort-button{background:#f8fafc;color:#0f172a;border:1px solid #cbd5e1}.quotes-sort-button:hover{background:#e2e8f0;transform:translateY(-1px)}.quotes-reset-button{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.quotes-reset-button:hover:not(:disabled){background:#ffedd5;transform:translateY(-1px)}.quotes-reset-button:disabled{opacity:.45;cursor:not-allowed}.quotes-columns-toggle{background:#f8fafc;color:#0f172a;border:1px solid #cbd5e1}.quotes-columns-toggle:hover{background:#e2e8f0;transform:translateY(-1px)}.column-toggle{display:flex;gap:10px 16px;flex-wrap:wrap;margin-top:12px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px}.column-toggle .toggle-checkbox{display:flex;align-items:center;gap:7px;font-size:.9rem;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 6px;border-radius:8px}.column-toggle .toggle-checkbox:hover{background:#eef2ff}.column-toggle input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:#4f46e5}.column-toggle .checkbox-custom{display:none}.filter-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:10px;margin-bottom:14px}.filter-container input,.filter-container select{width:100%;height:40px;padding:0 11px;border:1px solid #d1d5db;border-radius:8px;font-size:.92rem;background:#fff;box-sizing:border-box}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;box-sizing:border-box}.modal-content{background:#fff;padding:20px;border-radius:12px;position:relative;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0f172a38}.modal-close{position:absolute;top:10px;right:10px;background:#f1f5f9;border:none;font-size:1.2rem;color:#0f172a;cursor:pointer;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0}@media(max-width:900px){.quotes-page{padding:14px}.page-header{align-items:stretch;flex-direction:column}.add-quote-button{width:100%}.quotes-tools-header{align-items:stretch;flex-direction:column}.quotes-tools-summary{justify-content:flex-start}.quotes-filter-toggle{justify-content:center;width:100%}.quotes-filter-grid{grid-template-columns:1fr}.quotes-sort-row{flex-direction:column;align-items:stretch}.quotes-sort-row label{min-width:0;width:100%}.quotes-sort-button,.quotes-reset-button,.quotes-columns-toggle{width:100%}}.quotes-tools-card{border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 8px 24px #0f172a0a}.quotes-tools-header{min-height:54px;padding:12px 16px;background:#fff}.quotes-filter-toggle{background:#f4f6ff;color:#3730a3;border:1px solid #dfe4ff;border-radius:8px;padding:8px 12px;font-size:.92rem;font-weight:700;box-shadow:none}.quotes-filter-toggle:hover{background:#eef2ff;transform:none}.quotes-filter-toggle strong{min-width:20px;height:20px;font-size:11px;background:#4f46e5}.quotes-tools-summary strong{font-size:.95rem}.quotes-filter-panel{padding:16px;background:#fff}.quotes-filter-grid{gap:10px;margin-bottom:16px}.quotes-filter-grid input,.quotes-filter-grid select{height:40px;border-radius:7px;border:1px solid #d6dbe5;background:#fff;color:#0f172a;font-size:.9rem}.quotes-filter-grid input:focus,.quotes-filter-grid select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.quotes-sort-row{display:grid;grid-template-columns:190px 190px 190px 150px;align-items:end;gap:10px;padding-top:14px;border-top:1px solid #edf0f5}.quotes-sort-row label{min-width:0;width:100%;display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:700;color:#334155}.quotes-sort-row select,.quotes-sort-button,.quotes-reset-button{width:100%;height:40px;border-radius:7px;font-size:.9rem}.quotes-sort-button{background:#fff;color:#3730a3;border:1px solid #c7d2fe;font-weight:700;box-shadow:none}.quotes-sort-button:hover{background:#eef2ff;transform:none}.quotes-reset-button{background:#f3f4f6;color:#64748b;border:1px solid #e5e7eb;font-weight:700;box-shadow:none}.quotes-reset-button:hover:not(:disabled){background:#e5e7eb;transform:none}.quotes-reset-button:disabled{opacity:.55}.quotes-columns-box{margin-top:14px}.quotes-columns-toggle{height:38px;border-radius:7px;background:#fff;color:#1e293b;border:1px solid #cbd5e1;padding:0 12px;font-size:.9rem;font-weight:700;box-shadow:none}.quotes-columns-toggle:hover{background:#f8fafc;transform:none}.column-toggle,.quotes-column-toggle-clean{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.column-toggle .toggle-checkbox,.quotes-column-toggle-clean .toggle-checkbox{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:6px 10px 6px 9px;border-radius:7px;border:1px solid #d6dbe5;background:#fff;color:#475569;font-size:.84rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.column-toggle .toggle-checkbox:hover,.quotes-column-toggle-clean .toggle-checkbox:hover{border-color:#a5b4fc;background:#f5f7ff;color:#312e81}.column-toggle .toggle-checkbox input,.quotes-column-toggle-clean .toggle-checkbox input{position:absolute;opacity:0;pointer-events:none}.column-toggle .checkbox-custom,.quotes-column-toggle-clean .checkbox-custom{display:none}.column-toggle .toggle-checkbox:before,.quotes-column-toggle-clean .toggle-checkbox:before{content:"";width:13px;height:13px;border-radius:4px;border:1px solid #cbd5e1;background:#fff;flex:0 0 13px}.column-toggle .toggle-checkbox:has(input:checked),.quotes-column-toggle-clean .toggle-checkbox:has(input:checked){background:#eef2ff;border-color:#818cf8;color:#312e81}.column-toggle .toggle-checkbox:has(input:checked):before,.quotes-column-toggle-clean .toggle-checkbox:has(input:checked):before{content:"✓";background:#4f46e5;border-color:#4f46e5;color:#fff;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.column-toggle .toggle-checkbox:not(:has(input:checked)),.quotes-column-toggle-clean .toggle-checkbox:not(:has(input:checked)){opacity:.78}@media(max-width:900px){.quotes-sort-row{grid-template-columns:1fr}.quotes-sort-row select,.quotes-sort-button,.quotes-reset-button{width:100%}}.depot-vente-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.depot-vente-form h2{text-align:center;font-size:1.75rem;color:#1f2937;margin-bottom:1rem}.depot-vente-form label{font-size:1rem;font-weight:600;color:#374151;margin-bottom:.25rem}.depot-vente-form input[type=text],.depot-vente-form input[type=number],.depot-vente-form input[type=email],.depot-vente-form select,.depot-vente-form textarea{padding:.75rem 1rem;font-size:1rem;border:1px solid #d1d5db;border-radius:6px;outline:none;transition:border-color .3s ease,box-shadow .3s ease;width:100%;box-sizing:border-box}.depot-vente-form input:focus,.depot-vente-form select:focus,.depot-vente-form textarea:focus{border-color:#4f46e5;box-shadow:0 0 8px #2563eb4d}.depot-vente-form fieldset{border:1px solid #d1d5db;border-radius:6px;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.depot-vente-form fieldset legend{font-size:1rem;font-weight:600;color:#374151;padding:0 .5rem}.depot-vente-form .travaux-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#4b5563}.depot-vente-form .travaux-label input{width:18px;height:18px;accent-color:#4f46e5}.depot-vente-form textarea{resize:vertical;min-height:100px}.depot-vente-form button[type=submit]{background-color:#4f46e5;color:#fff;padding:.75rem 1rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .3s ease,transform .2s ease}.depot-vente-form button[type=submit]:hover{background-color:#1e40af;transform:scale(1.05)}.depot-vente-form .error{color:#e3342f;font-size:.9rem;text-align:center}.depot-vente-list{width:100%;min-width:0;max-width:100%;margin:1rem 0;padding:20px;overflow-x:auto;overflow-y:hidden;background:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.depot-vente-list h2{margin-top:0;margin-bottom:10px;font-size:1.5em}.depot-vente-table{width:max-content;min-width:100%;margin-top:10px;border-collapse:collapse}.depot-vente-table th,.depot-vente-table td{padding:10px;border:1px solid #dddddd;text-align:left}.depot-vente-table th{background-color:#f2f2f2;white-space:nowrap}.depot-vente-table tr:nth-child(2n){background-color:#f9f9f9}.depot-vente-table button{min-height:28px;margin:2px;padding:4px 8px;border:none;border-radius:4px;background-color:#4f46e5;color:#fff;font-size:.8rem;cursor:pointer;transition:background-color .3s ease,transform .15s ease}.depot-vente-table button:hover:not(:disabled){background-color:#1d4ed8;color:#fff;transform:translateY(-1px)}.depot-vente-table button:disabled{background-color:#d1d5db;color:#6b7280;cursor:not-allowed}.depot-vente-table th:last-child,.depot-vente-table td:last-child{white-space:nowrap}.depot-vente-list img.photo-thumbnail{width:50px;max-width:50px;height:auto;border-radius:4px;object-fit:cover}@media(max-width:768px){.depot-vente-list{padding:14px}.depot-vente-table th,.depot-vente-table td{padding:8px;font-size:.84rem}.depot-vente-table th:last-child{right:0;z-index:3;background:#f2f2f2;box-shadow:-8px 0 12px -12px #0f172a8c}.depot-vente-table td:last-child{right:0;z-index:2;background:inherit;box-shadow:-8px 0 12px -12px #0f172a8c}}.modal-content{background:#fff;padding:30px;border-radius:8px;width:90%;max-width:600px;box-shadow:0 4px 10px #0000001a;max-height:90vh;overflow-y:auto}.edit-depot-vente-form .form-group{margin-bottom:15px;display:flex;flex-direction:column}.edit-depot-vente-form label{margin-bottom:5px;font-weight:600;color:#333}.edit-depot-vente-form input,.edit-depot-vente-form textarea,.edit-depot-vente-form select{padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:1rem}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn{padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.btn-primary{background-color:#4f46e5;color:#fff}.btn-primary:hover{background-color:#1d4ed8}.btn-secondary:hover{background-color:#5a6268}.depot-stats-container{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 10px 20px #0000001a;margin-bottom:2rem}.stat-item{flex:1 1 200px;text-align:center}.stat-item h3{font-size:1.25rem;color:#4f46e5;margin-bottom:.5rem}.stat-item p{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0}.savm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.savm{width:100%;max-width:980px;max-height:92vh;background:linear-gradient(180deg,#fff,#fcfcfd);border:1px solid #e9eef5;border-radius:16px;box-shadow:0 30px 80px #0206172e,0 10px 30px #0206171f;display:flex;flex-direction:column;overflow:hidden;animation:pop .18s ease-out}@keyframes pop{0%{transform:translateY(8px) scale(.98);opacity:.7}to{transform:translateY(0) scale(1);opacity:1}}.savm-header{top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #edf1f6;z-index:2}.savm-title{font-size:1.05rem;font-weight:700;letter-spacing:.2px}.savm-actions{display:flex;gap:8px}.savm-body{padding:18px;overflow:auto;display:grid;gap:16px}.savm-footer{bottom:0;background:linear-gradient(180deg,#ffffffd9,#fff 90%);border-top:1px solid #edf1f6;padding:12px 18px;display:flex;justify-content:flex-end;gap:10px}.card{background:#fff;border:1px solid #ecf1f7;border-radius:12px;padding:14px;box-shadow:0 6px 20px #0206170a}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:1fr}@media(min-width:880px){.grid-2{grid-template-columns:1fr 1fr}}.btn{border:1px solid #e3e8ef;background:#f8fafc;color:#0f172a;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:600;transition:all .15s ease}.btn:hover{background:#f1f5f9}.btn.ghost{background:transparent}.btn.primary{background:#0ea5e9;color:#fff;border-color:#0ea5e9}.btn.primary:hover{filter:brightness(.95)}.btn.tiny{padding:6px 10px;border-radius:8px}.form-row{display:grid;gap:6px;margin-bottom:12px}label{font-weight:600;font-size:.95rem;color:#0f172a}input,select,textarea{border:1px solid #e6ecf2;border-radius:10px;padding:10px 12px;outline:none;background:#fff;transition:border .12s ease,box-shadow .12s ease}input:focus,select:focus,textarea:focus{border-color:#84caff;box-shadow:0 0 0 4px #0ea5e91f}textarea{resize:vertical}.kv{display:grid;grid-template-columns:140px 1fr;gap:8px;padding:6px 0}.k{color:#475569;font-weight:600}.v{color:#0f172a}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.muted{color:#6b7280}.section-title{font-weight:700;margin-bottom:10px}.timeline{position:relative;margin-top:8px}.tl-item{display:grid;grid-template-columns:18px 1fr;gap:10px;margin:10px 0}.tl-dot{width:10px;height:10px;border-radius:50%;background:#0ea5e9;margin-top:6px;box-shadow:0 0 0 4px #0ea5e91f}.tl-date{font-size:.85rem;color:#64748b}.tl-text{margin-top:2px}.assignee-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#f8fafc;border:1px solid #edf2f7;border-radius:10px;margin-bottom:10px}.assignee-selected .left{display:flex;gap:10px;align-items:center}.avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e0f2fe;color:#0369a1;font-weight:800}.avatar.lg{width:36px;height:36px}.assignee-name{font-weight:700}.assignee-role{font-size:.85rem}.assignee-select{display:grid;gap:8px}.assignee-search{width:100%}.assignee-list{border:1px solid #ecf1f7;border-radius:10px;max-height:220px;overflow:auto;background:#fff}.assignee-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;background:transparent;cursor:pointer;border-bottom:1px solid #f3f6fb}.assignee-item:last-child{border-bottom:0}.assignee-item:hover{background:#f8fafc}.assignee-item.selected{background:#e6f6ff}.assignee-meta{display:grid}.assignee-empty{padding:8px 10px}.table-container{width:100%;overflow-x:auto;margin-bottom:1rem}.depot-vente-table{width:100%;border-collapse:collapse;min-width:600px}.depot-vente-table th,.depot-vente-table td{padding:10px;border:1px solid #ddd;text-align:left;white-space:nowrap}.depot-vente-page{padding:20px;overflow-x:hidden}.add-depot-vente-button{background-color:#4f46e5;color:#fff;border:none;padding:10px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.add-depot-vente-button:hover{background-color:#1d4ed8}.filter-container{margin-bottom:1rem;display:flex;gap:1rem;flex-wrap:wrap}.filter-container input{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:10px}.modal-content{background:#fff;padding:20px;border-radius:8px;position:relative;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.column-toggle{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.5rem;background-color:#f8f9fa;border:1px solid #e2e2e2;border-radius:4px}.toggle-checkbox{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:#333;cursor:pointer;-webkit-user-select:none;user-select:none;margin-right:10px}.toggle-checkbox input[type=checkbox]{opacity:0;position:absolute;left:-9999px}.checkbox-custom{width:18px;height:18px;border:2px solid #007bff;border-radius:4px;display:inline-block;transition:background .2s ease,border-color .2s ease;position:relative}.toggle-checkbox input[type=checkbox]:checked+.checkbox-custom{background:#007bff;border-color:#007bff}.toggle-checkbox input[type=checkbox]:checked+.checkbox-custom:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.refresh-icon{width:30px;height:30px;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease;margin-left:20%}.refresh-icon:hover{background-color:#e0e0e0}.refresh-icon svg{transition:transform .2s ease}.refresh-icon:hover svg{transform:rotate(90deg)}@media(max-width:768px){.filter-container input{max-width:100%}.page-header{flex-direction:column;align-items:flex-start}.add-depot-vente-button{width:100%;text-align:center;margin-top:10px}}.auth-info{color:#38a169;text-align:center}.auth-link{text-align:center;margin-top:1rem}.auth-link a{color:#4f46e5;text-decoration:none}.auth-link a:hover{text-decoration:underline}.auth-container{display:flex;justify-content:center;align-items:center;height:79.5vh;background-color:#f2f2f2}.auth-card{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 8px #0000001a;width:100%;max-width:400px}.auth-title{text-align:center;margin-bottom:1.5rem;font-size:1.75rem;color:#333}.auth-input{padding:.75rem 1rem;font-size:1rem;border:1px solid #ddd;border-radius:4px;transition:border-color .3s ease,box-shadow .3s ease}.auth-button{background-color:#4f46e5;color:#fff;border:none;padding:.75rem;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.auth-error{color:#e3342f;text-align:center}.auth-success{color:#38a169;text-align:center}.employee-form{max-width:700px;margin:0 auto;padding:1.5rem;background:#fff;border-radius:8px}.form-title{text-align:center;font-size:1.4rem;margin-bottom:1rem}.form-error{color:#b91c1c;text-align:center;margin-bottom:1rem}.fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.fields-grid label{display:flex;flex-direction:column;font-size:.95rem;gap:.4rem}.employee-form .fields-grid input,.employee-form .fields-grid select,.employee-form .fields-grid textarea,.employee-form .fields-grid .password-input-wrapper input{height:44px;padding:.5rem .8rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;line-height:1.2;background:#fff;transition:border-color .12s,box-shadow .12s}.fields-grid input:focus,.fields-grid select:focus,.fields-grid .password-input-wrapper input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f}.permissions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.permissions-header h3{font-size:1.1rem}.toggle-btn{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:.9rem}.permissions-container{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:#f9f9f9;border-radius:6px;margin-bottom:1.5rem}.permission-group{flex:1 1 calc(50% - 1rem)}.permission-group-label{font-size:1rem;font-weight:600;margin-bottom:.4rem}.permission-group-items{display:flex;flex-direction:column;gap:.3rem}.checkbox-inline{display:flex;align-items:center;gap:.4rem;font-size:.9rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem}.btn-cancel,.btn-submit{padding:.6rem 1.2rem;border-radius:6px;font-size:1rem;cursor:pointer;border:none;transition:background .2s}.btn-cancel{background:#ddd;color:#333}.btn-cancel:hover{background:#ccc}.btn-submit{background:#4f46e5;color:#fff}.btn-submit:hover{background:#4338ca}@media(max-width:600px){.permission-group{flex:1 1 100%}}.password-input-wrapper{display:flex;align-items:center;gap:8px}.password-input-wrapper input{flex:1;min-width:0;margin:0}.password-toggle{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 10px;background:#fff;border:1px solid #ccc;border-radius:6px;cursor:pointer}.password-toggle svg{width:20px;height:20px;display:block;color:#333}.password-toggle:focus{outline:none;box-shadow:0 0 0 3px #4f46e51f;border-color:#4f46e5}.employee-form .fields-grid label{display:flex;flex-direction:column;gap:6px}.btn-submit:focus,.btn-cancel:focus,.toggle-btn:focus{outline:none;box-shadow:0 0 0 3px #4f46e514}.employee-list-card{width:100%;min-width:0;max-width:100%;margin:1rem 0;padding:20px;overflow-x:auto;overflow-y:hidden;background:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.employee-table{width:max-content;min-width:100%;border-collapse:collapse}.employee-table th,.employee-table td{padding:10px;border:1px solid #dddddd;text-align:left;font-size:.9rem}.employee-table th{background-color:#f4f4f4;white-space:nowrap}.employee-table button{margin:2px;padding:4px 8px;border:none;border-radius:4px;background-color:#4f46e5;color:#fff;font-size:.8rem;cursor:pointer;transition:background-color .3s ease,transform .15s ease}.employee-table button:hover:not(:disabled){background-color:#1d4ed8;color:#fff;transform:translateY(-1px)}.employee-table button:disabled{background-color:#d1d5db;color:#6b7280;cursor:not-allowed}.employee-table th:last-child,.employee-table td:last-child{white-space:nowrap}.status-active,.status-disabled{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.85rem;font-weight:600;white-space:nowrap}.status-active{background:#e6f7ec;color:#1f8a4c}.status-disabled{background:#fdeaea;color:#b42318}.employee-disabled-row{opacity:.65}.btn-disable{color:#b42318}.btn-reactivate{color:#1f8a4c}@media(max-width:768px){.employee-list-card{padding:14px}.employee-table th,.employee-table td{padding:8px;font-size:.84rem}.employee-table th:last-child{right:0;z-index:3;background:#f4f4f4;box-shadow:-8px 0 12px -12px #0f172a8c}.employee-table td:last-child{right:0;z-index:2;background:inherit;box-shadow:-8px 0 12px -12px #0f172a8c}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background:#fff;border-radius:8px;max-width:720px;width:95%;max-height:90vh;overflow-y:auto;padding:2rem;box-shadow:0 8px 24px #0000001a;display:flex;flex-direction:column}.close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;color:#888;cursor:pointer;transition:color .2s}.close-btn:hover{color:#333}.modal-box h2{text-align:center;margin-bottom:1.5rem;color:#222;font-size:1.5rem}.modal-box h3{margin:0;font-size:1.2rem;color:#444}.section-header{display:flex;justify-content:space-between;align-items:center;margin:1rem 0 .5rem}.toggle-btn{background:none;border:none;display:flex;align-items:center;gap:.25rem;color:#4f46e5;font-weight:500;cursor:pointer;transition:color .2s}.toggle-btn:hover{color:#4338ca}.info-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:1.5rem}.info-grid label{display:flex;flex-direction:column;font-size:.95rem;color:#333}.info-grid input,.info-grid select{margin-top:.25rem;padding:.6rem 1rem;border:1px solid #ccc;border-radius:6px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.info-grid input:focus,.info-grid select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e533}.checkbox-inline{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#333}label.checkbox-inline{flex-direction:row;margin-top:20px;font-weight:400}.perms-container{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:#f9f9f9;border:1px solid #eee;border-radius:6px;margin-bottom:1.5rem}.perms-container>*{flex:1 1 calc(50% - 1rem)}.perm-group h4{margin-bottom:.5rem;font-size:1rem;color:#444}.perm-items{display:flex;flex-direction:column;gap:.5rem}.perm-items label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#555}.modal-actions{display:flex;justify-content:flex-end;gap:1rem}.btn-primary,.btn-secondary{padding:.6rem 1.2rem;border-radius:6px;font-size:1rem;cursor:pointer;border:none;transition:background .2s}.btn-primary{background:#4f46e5;color:#fff}.btn-primary:hover{background:#4338ca}.btn-secondary{background:#ddd;color:#333}.btn-secondary:hover{background:#ccc}@media(max-width:600px){.perms-container>*{flex:1 1 100%}}.employees-page{padding:20px;min-height:80vh;box-sizing:border-box}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.employee-list{background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 10px #0000001a;margin:1rem auto;overflow-x:auto}.employee-table{width:100%;border-collapse:collapse}.employee-table th,.employee-table td{border:1px solid #ddd;padding:10px;text-align:left;font-size:.9rem}.employee-table th{background-color:#f2f2f2}.employee-table tr:nth-child(2n){background-color:#f9f9f9}.employee-table button{background-color:#4f46e5;color:#fff;border:none;padding:4px 8px;border-radius:4px;margin:2px;cursor:pointer;transition:background-color .3s;font-size:.8rem}.employee-table button:hover{background-color:#1d4ed8;color:#fff}.error{color:#e3342f;text-align:center;margin-bottom:1rem}.add-employee-button{background-color:#4f46e5;color:#fff;border:none;padding:10px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.add-employee-button:hover{background-color:#1d4ed8}.auth-container{height:79.5vh;background-color:#f9fafb;display:flex;align-items:center;justify-content:center;padding:4rem 1rem}.auth-card{background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a;max-width:400px;width:100%}.auth-title{font-size:1.875rem;font-weight:700;text-align:center;margin-bottom:1.5rem;color:#1f2937}.auth-error{color:#e3342f;margin-bottom:1rem;text-align:center}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-input{padding:.75rem 1rem;font-size:1rem;border:1px solid #ccc;border-radius:4px;transition:border-color .2s ease;color:#000}.auth-input:focus{border-color:#4f46e5;outline:none}.input-error{border-color:#e3342f!important}.field-error{color:#e3342f;font-size:.85rem;margin-top:-8px;margin-bottom:8px;text-align:left}.auth-button{display:block;width:100%;padding:1rem;background-color:#4f46e5;color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:background-color .3s ease}.auth-button:hover{background-color:#1d4ed8}.auth-signup{text-align:center;font-size:.9rem;margin-top:1rem;color:#6b7280}.auth-signup-link{color:#4f46e5;text-decoration:none}.auth-signup-link:hover{text-decoration:underline}:root{--brand: #3b82f6;--brand-dark:#1d4ed8;--ink: #0f172a;--text: #334155;--muted:#64748b;--bg:#f8fafc;--card:#ffffff;--gold:#b58e2a;--line:#e5e7eb;--success-bg:#e8fff1;--success:#0f766e;--error-bg:#fff1f1;--error:#b91c1c;--shadow: 0 8px 24px rgba(2,6,23,.06)}html,body{background:radial-gradient(1200px 600px at 50% -200px,#eef2ff,#f8fafc 60%,#f8fafc)}.cvhq-root{min-height:100svh;display:grid;grid-template-rows:auto 1fr auto}.cvhq-hero{border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(181,142,42,.25) 0,transparent 25% 75%,rgba(181,142,42,.25)),#fff}.cvhq-hero-inner{max-width:960px;margin:0 auto;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.cvhq-brand{display:flex;align-items:center;gap:14px;color:var(--ink)}.cvhq-logo{width:36px;height:36px;color:var(--gold)}.cvhq-brand-title{font-weight:600;letter-spacing:.2px;font-size:18px}.cvhq-brand-sub{font-size:12px;color:var(--muted)}.cvhq-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--ink);border:1px solid var(--line);background:#fff;padding:6px 10px;border-radius:999px}.cvhq-lock{font-size:14px}.cvhq-card{max-width:960px;margin:24px auto;padding:clamp(16px,3vw,28px);background:var(--card);border-radius:16px;box-shadow:var(--shadow);border:1px solid var(--line)}.cvhq-title{font-size:clamp(22px,2.2vw,28px);color:var(--ink);margin:0 0 6px}.cvhq-subtitle{color:var(--muted);margin:0 0 18px}.cvhq-piece{color:var(--ink);font-weight:600}.cvhq-feedback{margin:8px 0 18px;padding:12px 14px;border-radius:10px;border:1px solid var(--line);font-weight:500}.cvhq-feedback.success{background:var(--success-bg);color:var(--success);border-color:#99f6e4}.cvhq-feedback.error{background:var(--error-bg);color:var(--error);border-color:#fecaca}.cvhq-skeleton .sk-line{height:14px;background:linear-gradient(90deg,#f3f4f6,#e5e7eb,#f3f4f6);background-size:200% 100%;animation:shimmer 1.1s infinite linear;border-radius:6px;margin-bottom:10px}.cvhq-skeleton .w40{width:40%}.cvhq-skeleton .w60{width:60%}.cvhq-skeleton .sk-table{margin-top:8px}.cvhq-skeleton .sk-row{display:flex;gap:10px;margin-bottom:8px}.cvhq-skeleton .sk-col{flex:1;height:14px;background:linear-gradient(90deg,#f3f4f6,#e5e7eb,#f3f4f6);background-size:200% 100%;animation:shimmer 1.1s infinite linear;border-radius:6px}.cvhq-skeleton .w50{flex:0 0 50%}.cvhq-skeleton .w20{flex:0 0 20%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cvhq-table-wrap{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.cvhq-table{width:100%;border-collapse:collapse;font-size:15px;color:var(--ink)}.cvhq-table th,.cvhq-table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--line)}.cvhq-table th{background:#f8fafc;color:var(--text);font-weight:600}.cvhq-total-row td{background:#fcfcfd;font-weight:700}.cvhq-cards{display:none;padding:12px}.q-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;box-shadow:0 2px 6px #0206170a;margin-bottom:10px}.q-card-total{border-width:2px}.q-card-line{display:flex;align-items:center;justify-content:space-between;gap:10px}.q-card-label{color:var(--muted);font-size:13px}.q-card-value{color:var(--ink);font-weight:600}.cvhq-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}.cvhq-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;border-radius:12px;font-weight:600;padding:12px 18px;transition:transform .15s ease,box-shadow .2s ease}.cvhq-btn-primary{color:#fff;background:linear-gradient(180deg,var(--brand),var(--brand-dark));box-shadow:0 6px 16px #1d4ed840}.cvhq-btn-primary:hover:not(:disabled){transform:translateY(-1px)}.cvhq-btn-primary:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.cvhq-btn-loader{display:inline-flex;align-items:center;gap:10px}.cvhq-btn-block{width:100%}.cvhq-help{color:var(--muted);font-size:14px}.cvhq-link{color:var(--brand-dark);text-decoration:none}.cvhq-link:hover{text-decoration:underline}.cvhq-sticky-cta{position:sticky;bottom:0;z-index:20;margin-top:24px;background:linear-gradient(180deg,#fff0,#ffffffe6 30%,#fff 70%);padding:12px 16px;border-top:1px solid var(--line);display:none}.cvhq-footer{max-width:960px;margin:0 auto 20px;padding:0 20px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center;color:var(--muted);font-size:12px}.cvhq-footer .sep{opacity:.5}@media(max-width:720px){.cvhq-hero-inner{padding:16px}.cvhq-card{margin:12px auto;border-radius:14px}.cvhq-actions{gap:10px}.cvhq-help{width:100%;text-align:center}.cvhq-sticky-cta,.cvhq-table--desktop{display:none}.cvhq-table--mobile,.cvhq-cards{display:block}.cvhq-note{padding:12px;border-radius:10px}.cvhq-note-text{font-size:14px}}.cvhq-note{display:flex;gap:12px;align-items:flex-start;margin:14px 0 8px;padding:12px 14px;border:1px dashed var(--gold);background:#fffaf0;border-radius:12px;color:var(--ink)}.cvhq-note-icon{font-size:20px;line-height:1;color:var(--gold)}.cvhq-note-text{font-size:14px;line-height:1.6}.cvhq-note-text a{color:var(--brand-dark);text-decoration:underline}.cvhq-resend-wrap{margin:14px 0 18px}.cvhq-resend-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px;box-shadow:0 4px 12px #0206170a}.cvhq-resend-form{display:grid;gap:10px}.cvhq-label{font-weight:600;color:var(--ink);font-size:14px}.cvhq-input-row{display:flex;align-items:stretch;gap:10px}.cvhq-input{flex:1 1 auto;min-width:0;height:42px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font-size:15px;color:var(--ink);background:#fff;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.cvhq-input::placeholder{color:#94a3b8}.cvhq-input:focus{border-color:var(--brand);box-shadow:0 0 0 4px #3b82f626}.cvhq-btn-secondary{height:42px;padding:0 14px;background:#f8fafc;border:1px solid var(--line);color:var(--ink);box-shadow:0 2px 6px #0206170a}.cvhq-btn-secondary:hover:not(:disabled){transform:translateY(-1px)}.cvhq-btn-secondary:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}.cvhq-helptext{color:var(--muted);font-size:13px;margin-top:-2px}@media(max-width:640px){.cvhq-input-row{flex-direction:column}.cvhq-btn-secondary{width:100%}}.force-change-password-container{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f8f9fa}.force-change-password-container h1{font-size:2rem;margin-bottom:1rem;color:#333}.force-change-password-container p{font-size:1rem;margin-bottom:2rem;color:#555;text-align:center;max-width:500px}.force-change-password-container form{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px}.force-change-password-container input[type=password]{padding:.75rem;font-size:1rem;border:1px solid #ccc;border-radius:.375rem;outline:none;transition:border-color .2s ease}.force-change-password-container input[type=password]:focus{border-color:#4f46e5}.force-change-password-container button[type=submit]{padding:.75rem;font-size:1rem;color:#fff;background-color:#4f46e5;border:none;border-radius:.375rem;cursor:pointer;transition:background-color .2s ease}.force-change-password-container button[type=submit]:hover{background-color:#1e40af}.control-list-container{width:100%;min-width:0;max-width:100%;margin:1rem 0;padding:20px;overflow:hidden;background:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.control-list-container .table-container{width:100%;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.control-table{width:auto;min-width:100%;border-collapse:collapse;table-layout:fixed}.control-table th,.control-table td{padding:10px;border:1px solid #dddddd;text-align:left;font-size:.9rem}.control-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.control-table td:last-child,.control-table .actions-cell{overflow:visible;text-overflow:clip}.control-table th{background-color:#f4f4f4;white-space:nowrap}.control-table tr:nth-child(2n){background-color:#f9f9f9}.control-table button{margin:2px;padding:4px 8px;border:none;border-radius:4px;background-color:#4f46e5;color:#fff;font-size:.8rem;cursor:pointer;transition:background-color .3s ease,opacity .2s ease,transform .15s ease}.control-table button:hover:not(:disabled){background-color:#1d4ed8}.control-table button:disabled{background-color:#ccc!important;color:#888!important;border-color:#ccc!important;cursor:not-allowed;opacity:.7}.control-list-container .photos-container{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.control-list-container .photo-thumbnail{width:50px;height:auto;border-radius:4px;object-fit:cover}.control-table tr.overdue{background-color:#ffecec;border-left:4px solid #e3342f;color:#a10000;font-weight:700}.control-table th:last-child,.control-table td:last-child{white-space:nowrap}.control-table td:last-child button,.control-table td:last-child .control-tracking-button,.control-table td:last-child .tracking-employe-btn{width:28px;height:28px;min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:2px;border-radius:4px;vertical-align:middle;font-size:.8rem;line-height:1;box-shadow:none}.control-table td:last-child button svg{width:13px;height:13px;flex-shrink:0}.control-table td:last-child .control-tracking-button.tracking-missing{background:#dc2626}.control-table td:last-child .control-tracking-button.tracking-open{background:#f59e0b}.control-table td:last-child .control-tracking-button.tracking-assigned{background:#4f46e5}.control-table td:last-child .control-tracking-button.tracking-finished{background:#64748b}.control-table td:last-child .control-tracking-button:hover:not(:disabled){filter:brightness(.92);transform:translateY(-1px)}.control-table td:last-child button.control-tracking-button span,.control-table td:last-child button.tracking-employe-btn span{display:none}@media(max-width:768px){.control-list-container{padding:14px}.control-table th,.control-table td{padding:8px;font-size:.84rem}.control-table th:last-child{right:0;z-index:3;background:#f4f4f4;box-shadow:-8px 0 12px -12px #0f172a8c}.control-table td:last-child{right:0;z-index:2;background:inherit;box-shadow:-8px 0 12px -12px #0f172a8c}}.control-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.control-form label{font-weight:700}.control-form input,.control-form textarea{padding:8px;border:1px solid #ccc;border-radius:4px}.control-form button{align-self:flex-end;padding:8px 16px;background-color:#4f46e5;color:#fff;border:none;border-radius:4px;cursor:pointer}.modal-content{background:#fff;padding:20px;border-radius:8px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.edit-control-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.edit-control-form .form-group label{font-weight:700}.edit-control-form input,.edit-control-form textarea{padding:8px;border:1px solid #ccc;border-radius:4px}.pro-action-block{margin-top:10px;padding-top:12px;border-top:1px dashed rgba(0,0,0,.12)}.btn-pro{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid rgba(168,85,247,.35);color:#fff;font-weight:700;letter-spacing:.2px;background:linear-gradient(135deg,#7c3aed,#db2777);box-shadow:0 10px 22px #7c3aed38;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,opacity .12s ease}.btn-pro:hover{transform:translateY(-1px);filter:brightness(1.02);box-shadow:0 14px 28px #7c3aed42}.btn-pro:active{transform:translateY(0);box-shadow:0 10px 22px #7c3aed38}.btn-pro:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none;filter:none}.btn-pro-badge{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff2e;border:1px solid rgba(255,255,255,.22);font-size:12px;font-weight:800;line-height:1}.pro-action-hint{margin:8px 0 0;font-size:12px;color:#6b7280;line-height:1.35}.controls-page{width:100%;min-width:0;max-width:100%;min-height:80vh;padding:20px;color:#0f172a}.controls-page .page-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;min-width:0;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.controls-page .page-header>*{min-width:0}.controls-page .page-title{margin:0;color:#0f172a;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.03em;overflow-wrap:anywhere}.add-control-button{flex:0 0 auto;padding:10px 16px;border:none;border-radius:6px;background-color:#4f46e5;color:#fff;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .15s ease}.add-control-button:hover{background-color:#1d4ed8;transform:translateY(-1px)}.controls-page .error{margin-bottom:10px;color:#dc2626}.controls-tools-card{width:100%;min-width:0;max-width:100%;margin-bottom:18px;overflow:hidden;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0f172a0a}.controls-tools-header{min-width:0;min-height:54px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.controls-filter-toggle{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border:1px solid #dfe4ff;border-radius:8px;background:#f4f6ff;color:#3730a3;font-size:.92rem;font-weight:700;box-shadow:none;cursor:pointer}.controls-filter-toggle:hover{background:#eef2ff}.controls-filter-toggle strong{min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;background:#4f46e5;color:#fff;font-size:11px}.controls-filter-toggle-chevron{flex:0 0 auto;font-size:12px}.controls-tools-summary{min-width:0;display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px;color:#64748b;font-size:.9rem}.controls-tools-summary strong{color:#0f172a;font-size:.95rem;font-weight:800}.controls-filter-panel{width:100%;min-width:0;padding:16px;background:#fff}.controls-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,185px),1fr));gap:10px;min-width:0;margin-bottom:16px}.controls-filter-grid>*{min-width:0}.controls-filter-grid input,.controls-filter-grid select{width:100%;min-width:0;height:40px;padding:0 11px;border:1px solid #d6dbe5;border-radius:7px;background:#fff;color:#0f172a;font-size:.9rem}.controls-filter-grid input:focus,.controls-filter-grid select:focus,.controls-sort-row select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.controls-sort-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));align-items:end;gap:10px;min-width:0;padding-top:14px;border-top:1px solid #edf0f5}.controls-sort-row>*{min-width:0}.controls-sort-row label{width:100%;min-width:0;display:flex;flex-direction:column;gap:6px;color:#334155;font-size:.8rem;font-weight:700}.controls-sort-row select,.controls-sort-button,.controls-reset-button{width:100%;min-width:0;height:40px;border-radius:7px;font-size:.9rem}.controls-sort-row select{padding:0 11px;border:1px solid #d1d5db;background:#fff;color:#111827}.controls-sort-button{border:1px solid #c7d2fe;background:#fff;color:#3730a3;font-weight:700;box-shadow:none;cursor:pointer}.controls-sort-button:hover{background:#eef2ff}.controls-reset-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #e5e7eb;background:#f3f4f6;color:#64748b;font-weight:700;box-shadow:none;cursor:pointer}.controls-reset-button:hover:not(:disabled){background:#e5e7eb}.controls-reset-button:disabled{opacity:.55;cursor:not-allowed}.controls-columns-box{min-width:0;margin-top:14px}.controls-columns-toggle{min-width:0;min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#1e293b;font-size:.9rem;font-weight:700;box-shadow:none;cursor:pointer}.controls-columns-toggle:hover{background:#f8fafc}.controls-page .column-toggle,.controls-column-toggle-clean{min-width:0;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.controls-page .column-toggle .toggle-checkbox,.controls-column-toggle-clean .toggle-checkbox{position:relative;min-width:0;min-height:32px;display:inline-flex;align-items:center;gap:7px;padding:6px 10px 6px 9px;border:1px solid #d6dbe5;border-radius:7px;background:#fff;color:#475569;font-size:.84rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;overflow-wrap:anywhere;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.controls-page .column-toggle .toggle-checkbox:hover,.controls-column-toggle-clean .toggle-checkbox:hover{border-color:#a5b4fc;background:#f5f7ff;color:#312e81}.controls-page .column-toggle .toggle-checkbox input,.controls-column-toggle-clean .toggle-checkbox input{position:absolute;opacity:0;pointer-events:none}.controls-page .column-toggle .checkbox-custom,.controls-column-toggle-clean .checkbox-custom{display:none}.controls-page .column-toggle .toggle-checkbox:before,.controls-column-toggle-clean .toggle-checkbox:before{content:"";width:13px;height:13px;flex:0 0 13px;border:1px solid #cbd5e1;border-radius:4px;background:#fff}.controls-page .column-toggle .toggle-checkbox:has(input:checked),.controls-column-toggle-clean .toggle-checkbox:has(input:checked){background:#eef2ff;border-color:#818cf8;color:#312e81}.controls-page .column-toggle .toggle-checkbox:has(input:checked):before,.controls-column-toggle-clean .toggle-checkbox:has(input:checked):before{content:"✓";display:inline-flex;align-items:center;justify-content:center;background:#4f46e5;border-color:#4f46e5;color:#fff;font-size:10px;font-weight:800}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto;background:#0f172a73}.modal-content{position:relative;width:min(600px,100%);min-width:0;max-height:calc(100dvh - 40px);padding:20px;overflow-x:hidden;overflow-y:auto;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0f172a38}.controls-page .filter-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,185px),1fr));gap:10px;min-width:0;margin-bottom:14px}.controls-page .filter-container>*{min-width:0}.controls-page .filter-container input,.controls-page .filter-container select{width:100%;min-width:0;height:40px;padding:0 11px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:.92rem}.qr-sorting,.controls-sorting{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.qr-sortdir{padding:9px 12px;border:1px solid #cbd5e1;border-radius:7px;background:#f1f5f9;color:#0f172a;font-weight:600;cursor:pointer}.qr-loading{color:#64748b;font-size:.9rem}.qr-count{color:#0f172a;font-size:.9rem;font-weight:600}@media(max-width:900px){.controls-page{padding:14px}.controls-page .page-header,.controls-tools-header{align-items:stretch;flex-direction:column}.controls-tools-summary{justify-content:flex-start}.controls-filter-toggle,.add-control-button,.controls-sort-button,.controls-reset-button,.controls-columns-toggle{width:100%;justify-content:center}}@media(max-width:600px){.controls-page{padding:10px}.controls-filter-panel{padding:12px}.controls-filter-grid,.controls-sort-row,.controls-page .filter-container{grid-template-columns:1fr}.controls-page .column-toggle .toggle-checkbox,.controls-column-toggle-clean .toggle-checkbox{width:100%}.modal-overlay{padding:10px}.modal-content{max-height:calc(100dvh - 20px)}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content.payment-validation-modal{background:#fff;border-radius:12px;padding:30px;width:90%;max-width:500px;position:relative;box-shadow:0 8px 24px #00000026;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:10px;right:15px;background:transparent;border:none;font-size:1.5rem;cursor:pointer}.payment-validation-modal h2{text-align:center;margin-bottom:20px;color:#4f46e5}.payment-details p{margin:10px 0;font-size:1rem;color:#333}.validation-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.modal-content.payment-validation-modal .validation-form label{padding:0}.validation-form label{display:flex;flex-direction:column;font-size:.95rem;color:#555}.validation-form select,.validation-form input[type=date]{padding:8px 10px;margin-top:5px;border:1px solid #ccc;border-radius:4px;font-size:1rem}.confirm-button{background-color:#4f46e5;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;flex:1;margin-right:10px;transition:background-color .3s}.confirm-button:hover{background-color:#1d4ed8}.cancel-button{background-color:#ccc;color:#333;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;flex:1;transition:background-color .3s}.cancel-button:hover{background-color:#b3b3b3}.late-fee-box{margin:10px 0 16px;padding:10px 12px;border-radius:6px;border:1px solid #e2dfda;background-color:#f8f4ef;font-size:.9rem}.late-fee-box--active{border-color:#b30000;background-color:#fff0f0}.late-fee-title{font-weight:600;margin-bottom:4px}.late-fee-note{margin-top:6px;font-size:.8rem;color:#666}.late-fee-checkbox{display:flex;align-items:center;gap:8px;margin:12px 0;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer}.late-fee-checkbox input{width:auto;margin:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-x:hidden;overflow-y:auto}.export-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026;overflow:hidden}.export-modal header,.export-modal footer{padding:1rem 1.5rem;background:#f9fafb;flex-shrink:0}.export-modal header{display:flex;justify-content:space-between;align-items:center}.export-modal header h3{margin:0;font-size:1.25rem;font-weight:600}.modal-body{padding:1rem 1.5rem;flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-wrap:wrap;gap:1rem}.filter-group{flex:1 1 45%;min-width:200px;display:flex;flex-direction:column}.filter-group label{font-size:.9rem;margin-bottom:.25rem;color:#374151}.filter-group input,.filter-group select{width:100%;box-sizing:border-box;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.filter-group.date-range{flex:1 1 100%;display:flex;flex-direction:column}.filter-group.date-range .date-inputs{display:flex;gap:.5rem}.filter-group.date-range input{flex:1;margin:0}.btn-close{background:transparent;border:none;font-size:1.3rem;color:#6b7280;cursor:pointer;transition:color .2s}.btn-close:hover{color:#374151}.btn-download{background-color:#4f46e5;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:6px;font-size:1rem;align-self:flex-end;display:inline-flex;align-items:center;gap:.5rem;transition:background-color .2s,transform .1s}.btn-download:hover{background-color:#4338ca;transform:translateY(-1px)}.btn-download:active{transform:translateY(0)}.btn-download:disabled{background-color:#9ca3af;cursor:not-allowed}.warning{display:flex;align-items:center;gap:.25rem;margin-top:.25rem;font-size:.8rem;color:#b45309}.warning:before{content:"⚠️"}@media(max-width:600px){.modal-body{flex-direction:column;gap:.75rem}.filter-group{flex:1 1 100%}}.payment-list-container{width:100%;min-width:0;max-width:100%;margin:1rem 0;padding:20px;overflow:hidden;background:#fff;border-radius:8px;box-shadow:0 4px 10px #00000014}.payment-list-container h2{margin-top:0;margin-bottom:0;color:#111827}.header-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 16px;min-width:0;margin-bottom:1rem}.actions-bar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;min-width:0}.btn.btn-export{background-color:#4f46e5;color:#fff;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;transition:background-color .2s ease,transform .15s ease;font-weight:600}.btn.btn-export:hover{background-color:#4338ca;transform:translateY(-1px)}.table-container{display:block;width:100%;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.payment-table{width:auto;min-width:100%;border-collapse:collapse;table-layout:fixed}.payment-table th,.payment-table td{padding:10px;border:1px solid #e5e7eb;text-align:left;font-size:.9rem}.payment-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-table td:last-child,.payment-table .actions-cell{overflow:visible;text-overflow:clip}.payment-table th{background-color:#f9fafb;font-weight:600;color:#111827;white-space:nowrap}.payment-table tr:nth-child(2n){background-color:#fcfcfd}.payment-table tr.overdue{background-color:#fff7f7;border-left:4px solid #dc2626;color:#7f1d1d}.payment-table tr.overdue-60{background-color:#111827!important;color:#fff!important}.payment-table tr.overdue-60 a{color:#fff!important}.payment-table tr.overdue-60 td{border-color:#374151}.payment-table button{background-color:#4f46e5;color:#fff;border:none;padding:4px 8px;border-radius:4px;margin:2px;cursor:pointer;transition:background-color .2s ease,transform .15s ease;font-size:.8rem}.payment-table button:hover:not(:disabled){background-color:#1d4ed8;transform:translateY(-1px)}.payment-table button:disabled{background-color:#d1d5db!important;color:#6b7280!important;border-color:#d1d5db!important;cursor:not-allowed;opacity:.9}.actions-cell{white-space:nowrap}.photos-container{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.photo-thumbnail{width:50px;height:auto;border-radius:4px;object-fit:cover}.overdue60-module{background:#fafafa;border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;margin-bottom:18px}.overdue60-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.overdue60-title-block{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.overdue60-header h3{margin:0;font-size:1rem;font-weight:600;color:#111827}.overdue60-count{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid #e5e7eb;color:#4b5563;font-size:.8rem;font-weight:500;white-space:nowrap}.overdue60-toggle-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #d1d5db;border-radius:999px;padding:7px 12px;background:#fff;color:#374151;font-size:.82rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.overdue60-toggle-btn:hover{background:#f3f4f6;border-color:#cbd5e1;transform:translateY(-1px)}.overdue60-empty{margin:0;padding:12px;border-radius:8px;background:#fff;border:1px dashed #d1d5db;color:#6b7280;font-size:.9rem}.overdue60-list{display:flex;flex-direction:column;gap:10px}.overdue60-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;background:#fff;border-radius:8px;padding:12px 14px;border:1px solid #e5e7eb}.overdue60-item.overdue60-clickable{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.overdue60-item.overdue60-clickable:hover{background:#fcfcfc;border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.overdue60-content{min-width:0}.overdue60-main{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.overdue60-main strong{min-width:0;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overdue60-days{flex-shrink:0;display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#fef2f2;color:#b91c1c;font-size:.78rem;font-weight:600;white-space:nowrap}.overdue60-details{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:.85rem;color:#4b5563}.overdue60-details a{color:#2563eb;text-decoration:none}.overdue60-details a:hover{text-decoration:underline}.overdue60-reminder-pending,.overdue60-reminder-info,.overdue60-grace-info,.overdue60-fee-warning{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.overdue60-reminder-pending{color:#92400e;font-weight:500}.overdue60-reminder-info{color:#065f46;font-weight:500}.overdue60-grace-info{color:#1f2937;font-weight:500}.overdue60-fee-warning{color:#b91c1c;font-weight:600}.overdue60-actions{display:flex;align-items:center;justify-content:flex-end;align-self:center}.btn-reminder{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;border:1px solid #d1d5db;border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:500;cursor:pointer;background:#fff;color:#111827;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.btn-reminder:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.btn-reminder:active:not(:disabled){transform:translateY(0)}.btn-reminder:disabled{cursor:not-allowed;opacity:1;background:#f9fafb;color:#9ca3af;border-color:#e5e7eb}.overdue60-item--fee{border-left:4px solid #dc2626}.payment-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.08);font-weight:600;font-size:.82rem;line-height:1;white-space:nowrap;background:#f3f4f6;color:#111827}.payment-pill-dot{width:8px;height:8px;border-radius:999px;background:#6b7280}.payment-pill--default{background:#f3f4f6;border-color:#00000014}.payment-pill--default .payment-pill-dot{background:#6b7280}.payment-pill--apayer{background:#fff7ed;border-color:#fb923c40;color:#9a3412}.payment-pill--apayer .payment-pill-dot{background:#f97316}.payment-pill--paye{background:#ecfdf5;border-color:#10b98140;color:#065f46}.payment-pill--paye .payment-pill-dot{background:#10b981}@media(max-width:900px){.overdue60-header{align-items:flex-start}.overdue60-item{grid-template-columns:1fr}.overdue60-main{align-items:flex-start;flex-direction:column;gap:6px}.overdue60-main strong{white-space:normal}.overdue60-actions{justify-content:flex-start}.btn-reminder{width:100%}.header-bar{align-items:flex-start;flex-direction:column;gap:10px}}@media(max-width:768px){.payment-table th,.payment-table td{padding:8px;font-size:.84rem}.payment-table .actions-cell{right:0;z-index:2;background:inherit;box-shadow:-8px 0 12px -12px #0f172a8c}.payment-table th:last-child{right:0;z-index:3;background:#f9fafb;box-shadow:-8px 0 12px -12px #0f172a8c}}@media(max-width:600px){.payment-list-container{padding:14px;border-radius:6px}.overdue60-module{padding:12px}.overdue60-header{flex-direction:column}.overdue60-toggle-btn{width:100%;justify-content:center}.overdue60-title-block{width:100%}.overdue60-details{flex-direction:column;align-items:flex-start;gap:6px}.overdue60-reminder-pending,.overdue60-reminder-info,.overdue60-grace-info,.overdue60-fee-warning{white-space:normal}}.payment-table .actions-cell{white-space:nowrap}.payment-table .actions-cell button,.payment-table .actions-cell .payment-tracking-button,.payment-table .actions-cell .tracking-employe-btn{width:28px;height:28px;min-width:28px;min-height:28px;padding:0;margin:2px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;font-size:.8rem;line-height:1;box-shadow:none}.payment-table .actions-cell button svg{width:13px;height:13px;flex-shrink:0}.payment-table .actions-cell .payment-tracking-button.tracking-missing{background:#dc2626}.payment-table .actions-cell .payment-tracking-button.tracking-open{background:#f59e0b}.payment-table .actions-cell .payment-tracking-button.tracking-assigned{background:#4f46e5}.payment-table .actions-cell .payment-tracking-button.tracking-finished{background:#64748b}.payment-table .actions-cell .payment-tracking-button:hover:not(:disabled){filter:brightness(.92);transform:translateY(-1px)}.paiements-page{width:100%;min-width:0;max-width:100%;min-height:80vh;padding:20px;color:#0f172a}.page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;min-width:0;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.page-title{min-width:0;margin:0;color:#0f172a;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.03em;overflow-wrap:anywhere}.error{margin-bottom:10px;color:#dc2626}.paiements-tools-card{width:100%;min-width:0;max-width:100%;margin-bottom:18px;overflow:hidden;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0f172a0a}.paiements-tools-header{min-width:0;min-height:54px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.paiements-filter-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;padding:8px 12px;border:1px solid #dfe4ff;border-radius:8px;background:#f4f6ff;color:#3730a3;font-size:.92rem;font-weight:700;box-shadow:none;cursor:pointer}.paiements-filter-toggle:hover{background:#eef2ff}.paiements-filter-toggle strong{min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#4f46e5;color:#fff;font-size:11px}.paiements-filter-toggle-chevron{flex:0 0 auto;font-size:12px}.paiements-tools-summary{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px;min-width:0;color:#64748b;font-size:.9rem}.paiements-tools-summary strong{color:#0f172a;font-weight:800}.paiements-filter-panel{width:100%;min-width:0;padding:16px;background:#fff}.paiements-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,185px),1fr));gap:10px;min-width:0;margin-bottom:16px}.paiements-filter-grid>*{min-width:0}.paiements-filter-grid input,.paiements-filter-grid select{width:100%;min-width:0;height:40px;padding:0 11px;border:1px solid #d6dbe5;border-radius:7px;background:#fff;color:#0f172a;font-size:.9rem}.paiements-filter-grid input:focus,.paiements-filter-grid select:focus,.paiements-sort-row select:focus,.paiements-sort-row input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.paiements-sort-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));align-items:end;gap:10px;min-width:0;padding-top:14px;border-top:1px solid #edf0f5}.paiements-sort-row>*{min-width:0}.paiements-sort-row label{width:100%;min-width:0;display:flex;flex-direction:column;gap:6px;color:#334155;font-size:.8rem;font-weight:700}.paiements-sort-row select,.paiements-sort-row input,.paiements-sort-button,.paiements-reset-button{width:100%;min-width:0;height:40px;border-radius:7px;font-size:.9rem}.paiements-sort-row select,.paiements-sort-row input{padding:0 11px;border:1px solid #d1d5db;background:#fff;color:#111827}.paiements-sort-button{border:1px solid #c7d2fe;background:#fff;color:#3730a3;font-weight:700;box-shadow:none;cursor:pointer}.paiements-sort-button:hover{background:#eef2ff}.paiements-reset-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #e5e7eb;background:#f3f4f6;color:#64748b;font-weight:700;box-shadow:none;cursor:pointer}.paiements-reset-button:hover:not(:disabled){background:#e5e7eb}.paiements-reset-button:disabled{opacity:.55;cursor:not-allowed}.paiements-columns-box{min-width:0;margin-top:14px}.paiements-columns-toggle{min-width:0;min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#1e293b;font-size:.9rem;font-weight:700;box-shadow:none;cursor:pointer}.paiements-columns-toggle:hover{background:#f8fafc}.column-toggle,.paiements-column-toggle-clean{display:flex;flex-wrap:wrap;gap:8px;min-width:0;margin-top:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.column-toggle .toggle-checkbox,.paiements-column-toggle-clean .toggle-checkbox{position:relative;display:inline-flex;align-items:center;gap:7px;min-width:0;min-height:32px;padding:6px 10px 6px 9px;border:1px solid #d6dbe5;border-radius:7px;background:#fff;color:#475569;font-size:.84rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;overflow-wrap:anywhere;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.column-toggle .toggle-checkbox:hover,.paiements-column-toggle-clean .toggle-checkbox:hover{border-color:#a5b4fc;background:#f5f7ff;color:#312e81}.column-toggle .toggle-checkbox input,.paiements-column-toggle-clean .toggle-checkbox input{position:absolute;opacity:0;pointer-events:none}.column-toggle .checkbox-custom,.paiements-column-toggle-clean .checkbox-custom{display:none}.column-toggle .toggle-checkbox:before,.paiements-column-toggle-clean .toggle-checkbox:before{content:"";width:13px;height:13px;flex:0 0 13px;border:1px solid #cbd5e1;border-radius:4px;background:#fff}.column-toggle .toggle-checkbox:has(input:checked),.paiements-column-toggle-clean .toggle-checkbox:has(input:checked){background:#eef2ff;border-color:#818cf8;color:#312e81}.column-toggle .toggle-checkbox:has(input:checked):before,.paiements-column-toggle-clean .toggle-checkbox:has(input:checked):before{content:"✓";display:inline-flex;align-items:center;justify-content:center;background:#4f46e5;border-color:#4f46e5;color:#fff;font-size:10px;font-weight:800}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a73}.modal-content{position:relative;width:min(90%,600px);min-width:0;max-height:90vh;padding:20px;overflow-x:hidden;overflow-y:auto;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0f172a38}.modal-close{position:absolute;top:10px;right:10px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;background:#f1f5f9;color:#0f172a;font-size:1.2rem;cursor:pointer}.modal-close:hover{background:#e2e8f0}@media(max-width:900px){.paiements-page{padding:14px}.page-header,.paiements-tools-header{align-items:stretch;flex-direction:column}.paiements-tools-summary{justify-content:flex-start}.paiements-filter-toggle{width:100%}}@media(max-width:600px){.paiements-page{padding:10px}.paiements-filter-panel{padding:12px}.paiements-filter-grid,.paiements-sort-row{grid-template-columns:1fr}.paiements-columns-toggle{width:100%;justify-content:center}.column-toggle .toggle-checkbox,.paiements-column-toggle-clean .toggle-checkbox{width:100%}.modal-overlay{padding:10px}.modal-content{width:100%;max-height:calc(100dvh - 20px)}}.pay-sum-card{width:100%;min-width:0;max-width:100%;margin:8px 0 16px;padding:14px;overflow:hidden;background:#fff;border:1px solid #e7e7e7;border-radius:12px;box-shadow:0 2px 8px #0000000d}.pay-sum-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;min-width:0;margin-bottom:10px}.pay-sum-title{min-width:0;margin:0;font-size:1.05rem}.pay-sum-right{display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:8px 14px;min-width:0}.pay-sum-total{color:#555}.pay-sum-net{color:#111827}.pay-sum-pills{display:flex;flex-wrap:wrap;gap:8px;min-width:0;margin-bottom:10px}.pill{display:inline-flex;align-items:center;gap:8px;min-width:0;padding:8px 12px;border:1px solid #e5e7eb;border-radius:999px;background:#f9fafb;font-size:.9rem;cursor:pointer;transition:transform .06s ease,background-color .2s ease,border-color .2s ease}.pill:hover{transform:translateY(-1px);background:#f3f4f6;border-color:#d1d5db}.pill.active{background:#eef2ff;border-color:#c7d2fe}.pill-count{padding:2px 8px;border-radius:999px;background:#111827;color:#fff;font-size:.8rem;font-weight:600}.pill-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%}.pill-dot-warning{background:#f59e0b}.pill-dot-success{background:#10b981}.pill-dot-neutral{background:#9ca3af}.pay-sum-meters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px;min-width:0}.meter{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 8px auto;gap:6px 10px;align-items:center;min-width:0}.meter-label{grid-column:1;min-width:0;font-size:.85rem;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meter-bar{grid-column:1 / -1;width:100%;min-width:0;height:8px;overflow:hidden;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px}.meter-fill{height:100%;max-width:100%}.meter-warning{background:#f59e0b}.meter-success{background:#10b981}.meter-neutral{background:#9ca3af}.meter-val{grid-column:2;font-size:.8rem;color:#6b7280;white-space:nowrap}@media(max-width:600px){.pay-sum-header{align-items:stretch;flex-direction:column}.pay-sum-right{align-items:flex-start;justify-content:flex-start;flex-direction:column}.pay-sum-pills{align-items:stretch;flex-direction:column}.pill{justify-content:space-between;width:100%}}@media(prefers-color-scheme:dark){.pay-sum-card{background:#0f1115;border-color:#242733;box-shadow:none}.pay-sum-total{color:#cbd5e1}.pay-sum-net{color:#e5e7eb}.pill{background:#141824;border-color:#232838;color:#e5e7eb}.pill:hover{background:#1a2031;border-color:#2f3851}.pill.active{background:#192142;border-color:#334155}.pill-count{background:#e5e7eb;color:#111827}.meter-bar{background:#1b2132;border-color:#2a344d}.meter-label,.meter-val{color:#cbd5e1}}.srp-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:18px 18px 14px;margin:18px 0;box-shadow:0 10px 30px #0000000f}.srp-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.srp-sub{margin:6px 0 0;color:#6b7280;font-size:.92rem;line-height:1.35}.srp-head-actions{display:flex;gap:10px;align-items:center}.srp-toolbar{display:grid;grid-template-columns:1.3fr .9fr 2.2fr .9fr;gap:14px;margin-top:14px;align-items:end}.srp-field label{display:block;font-size:.78rem;color:#6b7280;margin:0 0 6px}.srp-field select,.srp-field input,.srp-field textarea{width:100%;border:1px solid rgba(0,0,0,.12);border-radius:10px;padding:8px 10px;outline:none;background:#fff;font-size:13.5px;line-height:1.2;height:38px;box-sizing:border-box}.srp-field textarea{height:auto;min-height:90px;padding:10px}.srp-field select:focus,.srp-field input:focus,.srp-field textarea:focus{border-color:#4f46e573;box-shadow:0 0 0 4px #4f46e51a}.srp-field input::placeholder{font-size:13px;color:#9ca3af;opacity:1}.srp-months{display:flex;flex-wrap:wrap;gap:8px;min-height:38px;align-content:flex-start;padding-top:2px}.srp-chip{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(0,0,0,.1);padding:6px 10px;border-radius:999px;background:#f9fafb;cursor:pointer;font-size:13px;line-height:1.1}.srp-chip input{width:14px;height:14px;margin:0;accent-color:#4f46e5}.srp-field--switch{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:8px}.srp-switch{width:100%;display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:0}.srp-switch input{width:16px;height:16px;margin:0;accent-color:#4f46e5}.srp-switch label{margin:0;font-size:13.5px;color:#111827;cursor:pointer;-webkit-user-select:none;user-select:none}.srp-muted--hint{width:100%;text-align:right;margin:0;font-size:12.5px;line-height:1.35;color:#9ca3af}.srp-muted{color:#9ca3af;font-size:.9rem}.srp-totals{margin-top:14px;display:flex;justify-content:space-between;gap:16px;align-items:center;background:#f9fafb;border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:14px}.srp-totals-left{min-width:260px}.srp-total-line{display:flex;justify-content:space-between;gap:16px;margin:6px 0;font-size:13.5px}.srp-total-line b{font-weight:650}.srp-total-final{font-size:14.5px}.srp-discount{display:flex;gap:10px;align-items:center;margin-top:8px}.srp-discount select{width:120px;height:36px;padding:7px 10px;font-size:13.5px}.srp-discount input{width:160px;height:36px;padding:7px 10px;font-size:13.5px}.srp-discount input::placeholder{font-size:13px;line-height:1.1}.srp-actions{display:flex;gap:10px;align-items:center}.srp-table-wrap{margin-top:14px;overflow:auto}.srp-table{width:100%;border-collapse:separate;border-spacing:0}.srp-table th,.srp-table td{padding:11px 10px;border-bottom:1px solid rgba(0,0,0,.06);text-align:left;vertical-align:middle;font-size:13.5px}.srp-table th{font-size:12.5px;color:#6b7280;font-weight:650;background:#fbfbfc}.srp-actions-cell{display:flex;gap:10px;align-items:center;justify-content:flex-end}.srp-empty{padding:14px;color:#6b7280;text-align:center}.srp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;z-index:999;padding:16px}.srp-modal{width:min(720px,calc(100vw - 32px));background:#fff;border-radius:16px;border:1px solid rgba(0,0,0,.1);box-shadow:0 30px 70px #00000040;overflow:hidden}.srp-modal-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:14px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.srp-x{border:none;background:transparent;font-size:1.2rem;cursor:pointer;color:#374151}.srp-modal-body{padding:14px 16px}.srp-form-grid{display:grid;grid-template-columns:1.45fr 1.45fr 1fr;gap:12px;align-items:end}.srp-field--full{grid-column:1/-1}.srp-discount-inline{display:flex;gap:8px;align-items:center}.srp-discount-inline select,.srp-discount-inline input{width:auto;height:36px;padding:7px 10px;font-size:13.5px}.srp-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 16px;border-top:1px solid rgba(0,0,0,.06)}.srp-clientsearch{position:relative;display:flex;align-items:center;width:100%}.srp-clientsearch-input{width:100%;height:38px;padding:8px 40px 8px 10px;border:1px solid rgba(0,0,0,.12);border-radius:10px;outline:none;background:#fff;font-size:13.5px;line-height:1.2;box-sizing:border-box}.srp-clientsearch-input:focus{border-color:#4f46e573;box-shadow:0 0 0 4px #4f46e51a}.srp-clientsearch-caret{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:30px;width:32px;border-radius:9px;border:1px solid rgba(0,0,0,.1);background:#fff;cursor:pointer;padding:0;display:grid;place-items:center}.srp-clientsearch-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;max-height:320px;overflow:auto;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:14px;box-shadow:0 18px 40px #0000001f;padding:6px}.srp-clientsearch-item{width:100%;text-align:left;padding:10px;border-radius:12px;border:0;background:transparent;cursor:pointer}.srp-clientsearch-item:hover{background:#4f46e514}.srp-clientsearch-item.is-active{background:#4f46e51f}.srp-clientsearch-item-title{font-weight:600}.srp-clientsearch-item-sub{margin-top:2px;font-size:12px;opacity:.7}.srp-clientsearch-empty{padding:10px;opacity:.7}@media(max-width:900px){.srp-toolbar{grid-template-columns:1fr}.srp-field--switch{align-items:flex-start}.srp-muted--hint{text-align:left}.srp-totals{flex-direction:column;align-items:stretch}.srp-actions{justify-content:flex-end}.srp-form-grid{grid-template-columns:1fr}.srp-actions-cell{flex-wrap:wrap}}@media(prefers-color-scheme:dark){.srp-card{background:#0b1220;border-color:#ffffff1a;box-shadow:0 10px 30px #00000059}.srp-sub,.srp-muted,.srp-muted--hint,.srp-field label{color:#9ca3af}.srp-field select,.srp-field input,.srp-field textarea,.srp-clientsearch-input{background:#ffffff0a;border-color:#ffffff1f;color:#e5e7eb}.srp-field input::placeholder,.srp-discount input::placeholder{color:#e5e7eb8c}.srp-field select:focus,.srp-field input:focus,.srp-field textarea:focus,.srp-clientsearch-input:focus{border-color:#818cf873;box-shadow:0 0 0 4px #818cf81f}.srp-chip{background:#ffffff0a;border-color:#ffffff1a;color:#e5e7eb}.srp-switch label{color:#e5e7eb}.srp-totals{background:#ffffff0a;border-color:#ffffff1a}.srp-total-line{color:#e5e7eb}.srp-table th{background:#ffffff08;border-bottom-color:#ffffff1a;color:#9ca3af}.srp-table td{border-bottom-color:#ffffff14;color:#e5e7eb}.srp-empty{color:#9ca3af}.srp-modal{background:#0b1220;border-color:#ffffff1f;box-shadow:0 30px 70px #000000a6}.srp-modal-head,.srp-modal-foot{border-color:#ffffff14}.srp-x{color:#e5e7eb}.srp-clientsearch-caret{background:#ffffff0a;border-color:#ffffff1f;color:#e5e7eb}.srp-clientsearch-menu{background:#0b1220;border-color:#ffffff1f;box-shadow:0 18px 40px #0000008c}.srp-clientsearch-item{color:#e5e7eb}.srp-clientsearch-item:hover{background:#818cf81f}.srp-clientsearch-item.is-active{background:#818cf82e}.srp-clientsearch-item-sub,.srp-clientsearch-empty{opacity:.8;color:#9ca3af}}@media(prefers-color-scheme:dark){.srp-card,.srp-modal,.srp-modal *{color-scheme:dark}.srp-modal .srp-field input,.srp-modal .srp-field select,.srp-modal .srp-field textarea,.srp-card .srp-field input,.srp-card .srp-field select,.srp-card .srp-field textarea,.srp-modal .srp-clientsearch-input,.srp-card .srp-clientsearch-input{background:#ffffff0a!important;border-color:#ffffff1f!important;color:#e5e7eb!important;-webkit-text-fill-color:#e5e7eb!important;caret-color:#e5e7eb!important}.srp-modal .srp-field input:focus,.srp-modal .srp-field select:focus,.srp-modal .srp-field textarea:focus,.srp-card .srp-field input:focus,.srp-card .srp-field select:focus,.srp-card .srp-field textarea:focus,.srp-modal .srp-clientsearch-input:focus,.srp-card .srp-clientsearch-input:focus{color:#e5e7eb!important;-webkit-text-fill-color:#e5e7eb!important}.srp-modal .srp-field input::placeholder,.srp-modal .srp-field textarea::placeholder,.srp-modal .srp-clientsearch-input::placeholder,.srp-card .srp-field input::placeholder,.srp-card .srp-field textarea::placeholder,.srp-card .srp-clientsearch-input::placeholder{color:#e5e7eb8c!important;-webkit-text-fill-color:rgba(229,231,235,.55)!important}.srp-modal .srp-field select option,.srp-card .srp-field select option{background:#0b1220!important;color:#e5e7eb!important}.srp-modal input:-webkit-autofill,.srp-modal textarea:-webkit-autofill,.srp-modal select:-webkit-autofill,.srp-card input:-webkit-autofill,.srp-card textarea:-webkit-autofill,.srp-card select:-webkit-autofill{-webkit-text-fill-color:#e5e7eb!important;transition:background-color 9999s ease-out 0s;box-shadow:0 0 0 1000px #ffffff0a inset!important;border-color:#ffffff1f!important}.srp-modal input[type=date]::-webkit-calendar-picker-indicator,.srp-card input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.85}}.paiements-pro-page{padding:20px;min-height:80vh;overflow-x:hidden;box-sizing:border-box;color:#0f172a}.ppro-tools-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:18px;box-shadow:0 8px 24px #0f172a0a;overflow:hidden}.ppro-tools-header{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.ppro-filter-toggle{background:#f4f6ff;color:#3730a3;border:1px solid #dfe4ff;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:.92rem;font-weight:700;display:inline-flex;align-items:center;gap:8px;box-shadow:none;transition:background-color .2s ease}.ppro-filter-toggle:hover{background:#eef2ff}.ppro-filter-toggle strong{min-width:20px;height:20px;padding:0 7px;border-radius:999px;background:#4f46e5;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.ppro-filter-toggle-chevron{font-size:12px}.ppro-tools-summary{display:inline-flex;align-items:center;justify-content:flex-end;gap:12px;color:#64748b;font-size:.9rem}.ppro-tools-summary strong{color:#0f172a;font-size:.95rem;font-weight:800}.ppro-filter-panel{padding:16px;background:#fff}.ppro-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:10px;margin-bottom:16px}.ppro-filter-grid input,.ppro-filter-grid select{width:100%;height:40px;padding:0 11px;border:1px solid #d6dbe5;border-radius:7px;background:#fff;color:#0f172a;font-size:.9rem;box-sizing:border-box}.ppro-filter-grid input::placeholder{color:#6b7280}.ppro-filter-grid input:focus,.ppro-filter-grid select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.ppro-sort-row{display:grid;grid-template-columns:190px 190px 150px;align-items:end;gap:10px;padding-top:14px;border-top:1px solid #edf0f5}.ppro-sort-row label{min-width:0;width:100%;display:flex;flex-direction:column;gap:6px;color:#334155;font-size:.8rem;font-weight:700}.ppro-sort-row label span{padding-left:2px}.ppro-sort-row select,.ppro-sort-button,.ppro-reset-button{width:100%;height:40px;border-radius:7px;font-size:.9rem}.ppro-sort-row select{padding:0 11px;border:1px solid #d1d5db;background:#fff;color:#111827}.ppro-sort-button,.ppro-reset-button,.ppro-columns-toggle{cursor:pointer;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s ease,opacity .15s ease}.ppro-sort-button{background:#fff;color:#3730a3;border:1px solid #c7d2fe;box-shadow:none}.ppro-sort-button:hover{background:#eef2ff}.ppro-reset-button{background:#f3f4f6;color:#64748b;border:1px solid #e5e7eb;box-shadow:none}.ppro-reset-button:hover:not(:disabled){background:#e5e7eb}.ppro-reset-button:disabled{opacity:.55;cursor:not-allowed}.ppro-columns-box{margin-top:14px}.ppro-columns-toggle{height:38px;border-radius:7px;background:#fff;color:#1e293b;border:1px solid #cbd5e1;padding:0 12px;font-size:.9rem;box-shadow:none}.ppro-columns-toggle:hover{background:#f8fafc}.column-toggle.ppro-column-toggle-clean{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.ppro-column-toggle-clean .toggle-checkbox{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:6px 10px 6px 9px;border-radius:7px;border:1px solid #d6dbe5;background:#fff;color:#475569;font-size:.84rem;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.ppro-column-toggle-clean .toggle-checkbox:hover{border-color:#a5b4fc;background:#f5f7ff;color:#312e81}.ppro-column-toggle-clean .toggle-checkbox input{position:absolute;opacity:0;pointer-events:none}.ppro-column-toggle-clean .checkbox-custom{display:none}.ppro-column-toggle-clean .toggle-checkbox:before{content:"";width:13px;height:13px;border-radius:4px;border:1px solid #cbd5e1;background:#fff;flex:0 0 13px}.ppro-column-toggle-clean .toggle-checkbox:has(input:checked){background:#eef2ff;border-color:#818cf8;color:#312e81}.ppro-column-toggle-clean .toggle-checkbox:has(input:checked):before{content:"✓";background:#4f46e5;border-color:#4f46e5;color:#fff;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.ppro-column-toggle-clean .toggle-checkbox:not(:has(input:checked)){opacity:.78}@media(max-width:900px){.paiements-pro-page{padding:14px}.ppro-tools-header{align-items:stretch;flex-direction:column}.ppro-tools-summary{justify-content:flex-start}.ppro-filter-toggle{justify-content:center;width:100%}.ppro-filter-grid,.ppro-sort-row{grid-template-columns:1fr}.ppro-sort-row select,.ppro-sort-button,.ppro-reset-button,.ppro-columns-toggle{width:100%}}.ppro-actionbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 14px;flex-wrap:wrap}.ppro-actionbar-left,.ppro-actionbar-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ppro-selected{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:8px 12px;color:#374151}.ppro-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:12px}.ppro-card--spaced{margin-top:16px}.ppro-card-header{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.ppro-card-header h2{margin:0;font-size:1.05rem;color:#111827}.ppro-card-sub{margin:0;font-size:.85rem;color:#6b7280}.ppro-table-wrap{width:100%;overflow:auto;border-radius:10px}.ppro-table{width:100%;border-collapse:collapse;min-width:980px}.ppro-table thead th{text-align:left;font-weight:700;font-size:.85rem;color:#374151;padding:10px;border-bottom:1px solid rgba(0,0,0,.08);background:#fafafa;position:sticky;top:0;z-index:1}.ppro-table tbody td{padding:10px;border-top:1px solid rgba(0,0,0,.06);color:#111827;font-size:.9rem}.ppro-table tbody tr:hover td{background:#4f46e508}.ppro-th-left,.ppro-td-left{text-align:left;white-space:nowrap}.ppro-th-checkbox,.ppro-td-checkbox{width:42px}.ppro-th-actions,.ppro-td-actions{min-width:220px}.ppro-td-actions{display:flex;gap:8px;justify-content:flex-start;align-items:center;flex-wrap:wrap}.ppro-empty{text-align:center;padding:14px!important;color:#6b7280}.btn.btn-pro{background-color:#b33e3e;color:#fff;padding:10px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease;border:2px solid rgb(143,54,54)}.btn.btn-pro:hover{filter:brightness(1.02);background-color:#b33e3eb0}.btn-pro-outline{border:1px solid rgba(168,85,247,.45)!important;color:#7c3aed!important;background:#fff!important;font-weight:700!important}.btn-pro-outline:hover{background:#7c3aed0f}.ppro-permission-note{margin-top:10px;color:#b45309;font-size:.9rem}.ppro-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.08);font-weight:700;font-size:.82rem;line-height:1;white-space:nowrap}.ppro-pill-dot{width:8px;height:8px;border-radius:999px;background:#9ca3af}.ppro-pill--default{background:#f3f4f6;border-color:#00000014}.ppro-pill--default .ppro-pill-dot{background:#6b7280}.ppro-pill--arendre{background:#fff7ed;border-color:#fb923c59}.ppro-pill--arendre .ppro-pill-dot{background:#f97316}.ppro-pill--rendu{background:#eef2ff;border-color:#6366f159}.ppro-pill--rendu .ppro-pill-dot{background:#4f46e5}.ppro-pill--facture{background:#fdf4ff;border-color:#a855f759}.ppro-pill--facture .ppro-pill-dot{background:#a855f7}.ppro-pill--apayer{background:#fff7ed;border-color:#fb923c59}.ppro-pill--apayer .ppro-pill-dot{background:#f97316}.ppro-pill--paye{background:#ecfdf5;border-color:#10b98159}.ppro-pill--paye .ppro-pill-dot{background:#10b981}.btn.is-disabled,.btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.2)}.ppro-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999}.ppro-modal{width:min(1100px,100%);max-height:90vh;background:#fff;border-radius:16px;box-shadow:0 25px 60px #00000040;display:flex;flex-direction:column;overflow:hidden}.ppro-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;border-bottom:1px solid #e5e7eb}.ppro-modal-title{margin:0;font-size:1.15rem}.ppro-modal-subtitle{margin:.25rem 0 0;color:#6b7280;font-size:.9rem}.ppro-modal-close{border:1px solid #e5e7eb;background:#fff;width:36px;height:36px;border-radius:10px;cursor:pointer;padding:7px 7px 7px 9px}.ppro-modal-body{padding:16px 18px;overflow:auto}.ppro-modal-footer{padding:14px 18px;border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.ppro-modal-loading{padding:24px;color:#6b7280}.ppro-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}@media(max-width:860px){.ppro-details-grid{grid-template-columns:1fr}}.ppro-details-box{border:1px solid #e5e7eb;border-radius:14px;padding:12px}.ppro-details-label{font-size:.85rem;color:#6b7280;margin-bottom:6px}.ppro-details-value{color:#111827}.ppro-details-muted{color:#6b7280;font-size:.9rem;margin-top:4px}.ppro-details-section{margin-top:16px}.ppro-details-section h4{margin:0 0 8px;font-size:1rem}.ppro-details-payment{border:1px solid #e5e7eb;border-radius:14px;padding:12px;margin-top:10px}.ppro-details-payment-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px}.ppro-details-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(max-width:860px){.ppro-details-columns{grid-template-columns:1fr}}.ppro-pre{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:10px;overflow:auto;font-size:.85rem;line-height:1.25rem;max-height:240px}.btn-danger{background:#ef4444;color:#fff;border:none}.btn-danger:hover{filter:brightness(.95)}.ppro-th-actions,.ppro-td-actions{min-width:360px}.ppro-actions-nowrap{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}@media(max-width:900px){.ppro-actions-nowrap{flex-wrap:wrap}.ppro-th-actions,.ppro-td-actions{min-width:260px}}.ppro-btn-icon{width:40px;height:38px;padding:0;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.ppro-td-actions.ppro-actions-nowrap .btn.btn-secondary.ppro-btn-icon{background:#f8fafc;border:1px solid rgba(0,0,0,.1);color:#111827;box-shadow:none}.ppro-td-actions.ppro-actions-nowrap .btn.btn-secondary.ppro-btn-icon:hover{background:#eef2ff;border-color:#4f46e540;transform:translateY(-1px)}.ppro-td-actions.ppro-actions-nowrap .btn.btn-secondary.ppro-btn-icon:active{transform:translateY(0)}.ppro-btn-validate{box-shadow:0 10px 20px #4f46e52e}.ppro-td-actions.ppro-actions-nowrap .ppro-btn-cancel{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:1px solid rgba(220,38,38,.55);font-weight:800;box-shadow:0 10px 18px #ef44442e}.ppro-td-actions.ppro-actions-nowrap .ppro-btn-cancel:hover{filter:brightness(.98);transform:translateY(-1px)}.ppro-td-actions.ppro-actions-nowrap .ppro-btn-cancel:active{transform:translateY(0)}.ppro-td-actions.ppro-actions-nowrap .btn.is-disabled,.ppro-td-actions.ppro-actions-nowrap .btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none!important;transform:none!important}.ppro-td-actions.ppro-actions-nowrap .ppro-btn-icon:focus-visible,.ppro-td-actions.ppro-actions-nowrap .ppro-btn-validate:focus-visible,.ppro-td-actions.ppro-actions-nowrap .ppro-btn-cancel:focus-visible{outline:3px solid rgba(79,70,229,.25);outline-offset:2px}.ppro-tech-card{border:1px solid #e5e7eb;border-radius:16px;padding:14px;margin-top:12px;background:#fff}.ppro-tech-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.ppro-tech-title{display:flex;flex-direction:column;gap:4px;min-width:0}.ppro-tech-card b{font-weight:650;color:#111827}.ppro-tech-sub{color:#6b7280;font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:720px}.ppro-tech-total{background:#eef2ff;border:1px solid rgba(79,70,229,.22);border-radius:999px;padding:8px 12px;min-width:unset;display:inline-flex;align-items:baseline;gap:8px;text-align:left;box-shadow:none}.ppro-tech-total-label{color:#4f46e5;font-size:.82rem;font-weight:600}.ppro-tech-total-value{font-weight:700;color:#111827;margin:0;white-space:nowrap}.ppro-tech-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}@media(max-width:860px){.ppro-tech-card-head{align-items:flex-start}.ppro-tech-total{margin-top:6px}.ppro-tech-grid{grid-template-columns:1fr}}.ppro-tech-block{border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#fff}.ppro-tech-block-title{font-weight:650;color:#374151;font-size:.95rem;margin-bottom:10px}.ppro-tech-list{display:flex;flex-direction:column;gap:8px}.ppro-tech-item{background:#fbfdff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:10px 12px}.ppro-tech-item:hover{background:#f5f7ff;border-color:#4f46e52e}.ppro-tech-item-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.ppro-tech-label{font-weight:600;color:#111827}.ppro-tech-price{font-weight:650;color:#111827;white-space:nowrap}.ppro-tech-comment{margin-top:6px;color:#4b5563;font-size:.9rem;line-height:1.25rem}.ppro-tech-comment-label{color:#6b7280;font-weight:600}.ppro-tech-empty{color:#6b7280;background:#f9fafb;border:1px dashed rgba(0,0,0,.12);border-radius:12px;padding:10px 12px}.ppro-tech-block-body{color:#374151;font-size:.92rem;line-height:1.25rem}.ppro-tech-muted{color:#9ca3af}.ppro-tech-ul{margin:0;padding-left:18px;color:#374151}.ppro-tech-sep{height:1px;background:#eef2f7;margin:10px 0}.ppro-srp-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700;line-height:1;border:1px solid rgba(0,0,0,.1);background:#4f46e51a;color:#3730a3;white-space:nowrap}.ppro-facture-no{display:inline-flex;align-items:center;gap:8px}.ppro-srp-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:800;line-height:1;border:1px solid rgba(0,0,0,.1);background:#4f46e51a;color:#3730a3;white-space:nowrap}.signup-success-container{display:flex;align-items:center;justify-content:center;height:100vh;background:#f8f9fa;padding:20px}.signup-success-box{background:#fff;border-radius:8px;padding:30px;max-width:400px;width:100%;text-align:center;box-shadow:0 4px 10px #0000001a;animation:fadeInUp .5s ease-out}.signup-success-box h1{font-size:2rem;margin-bottom:20px;color:#343a40}.signup-success-box p{font-size:1rem;color:#6c757d;margin-bottom:20px}.signup-success-button{background-color:#007bff;color:#fff;padding:10px 20px;border:none;border-radius:5px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.signup-success-button:hover{background-color:#0069d9}.client-history-page{--ch-bg: #f5f7fb;--ch-card: #ffffff;--ch-text: #182033;--ch-muted: #6f7788;--ch-border: #e3e8f0;--ch-primary: #2864dc;--ch-primary-soft: #edf3ff;--ch-success: #17835b;--ch-success-soft: #eaf8f2;--ch-warning: #b56b10;--ch-warning-soft: #fff5e6;--ch-danger: #bf3c4b;--ch-danger-soft: #fff0f2;--ch-info: #2f6f9f;--ch-info-soft: #edf7ff;width:100%;min-width:0;max-width:100%;min-height:100%;padding:26px;background:var(--ch-bg);color:var(--ch-text)}.client-history-page *,.client-history-page *:before,.client-history-page *:after{box-sizing:border-box}.ch-page-topbar{width:100%;min-width:0;max-width:1500px;margin:0 auto 16px}.ch-back-link{display:inline-flex;align-items:center;gap:9px;color:#5e687a;font-size:14px;font-weight:700;text-decoration:none;transition:color .2s ease,transform .2s ease}.ch-back-link:hover{color:var(--ch-primary);transform:translate(-2px)}.ch-client-hero,.ch-history-panel{width:100%;min-width:0;max-width:1500px;margin-right:auto;margin-left:auto;border:1px solid var(--ch-border);border-radius:22px;background:var(--ch-card);box-shadow:0 12px 34px #1b273f12}.ch-client-hero{padding:26px;overflow:hidden;position:relative}.ch-client-hero:after{content:"";position:absolute;top:-130px;right:-85px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(40,100,220,.12),transparent 68%);pointer-events:none}.ch-client-main{min-width:0;position:relative;z-index:1;display:flex;align-items:center;gap:20px}.ch-avatar{display:grid;flex:0 0 82px;width:82px;height:82px;place-items:center;border:5px solid #edf3ff;border-radius:24px;background:linear-gradient(145deg,#326fe9,#1f4eaa);box-shadow:0 12px 24px #2864dc38;color:#fff;font-size:26px;font-weight:900;letter-spacing:.04em}.ch-client-identity{min-width:0;flex:1}.ch-client-heading{min-width:0;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:20px}.ch-eyebrow{display:block;margin-bottom:5px;color:var(--ch-primary);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ch-client-heading h1,.ch-history-header h2{margin:0;color:var(--ch-text);line-height:1.15}.ch-client-heading h1{font-size:clamp(28px,3vw,42px);font-weight:850}.ch-stars{display:inline-flex;gap:2px;flex-shrink:0;padding-top:4px;font-size:22px;line-height:1}.ch-star{color:#d8dde7}.ch-star.is-active{color:#f2aa27}.ch-client-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.ch-client-badge{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:6px 11px;border:1px solid var(--ch-border);border-radius:999px;background:#f9fafc;color:#596376;font-size:13px;font-weight:700}.ch-contact-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.ch-contact-card{display:flex;min-width:0;align-items:center;gap:12px;padding:14px;border:1px solid var(--ch-border);border-radius:15px;background:#fbfcfe;color:inherit;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.ch-contact-card:not(.is-static):hover{border-color:#b9cdf8;box-shadow:0 8px 18px #274d9117;transform:translateY(-2px)}.ch-contact-icon{display:grid;flex:0 0 40px;width:40px;height:40px;place-items:center;border-radius:12px;background:var(--ch-primary-soft);color:var(--ch-primary)}.ch-contact-card>span:last-child{min-width:0}.ch-contact-card small,.ch-contact-card strong{display:block}.ch-contact-card small{margin-bottom:2px;color:var(--ch-muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.ch-contact-card strong{overflow:hidden;color:var(--ch-text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.ch-summary-grid{display:grid;width:100%;min-width:0;max-width:1500px;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px;margin:18px auto}.ch-summary-card{display:flex;min-width:0;align-items:flex-start;gap:13px;padding:18px;border:1px solid var(--ch-border);border-radius:18px;background:var(--ch-card);box-shadow:0 8px 22px #1b273f0d}.ch-summary-icon{display:grid;flex:0 0 44px;width:44px;height:44px;place-items:center;border-radius:14px;background:#f0f3f8;color:#627089;font-size:18px}.ch-summary-card.is-success .ch-summary-icon{background:var(--ch-success-soft);color:var(--ch-success)}.ch-summary-card.is-warning .ch-summary-icon{background:var(--ch-warning-soft);color:var(--ch-warning)}.ch-summary-card.is-info .ch-summary-icon{background:var(--ch-info-soft);color:var(--ch-info)}.ch-summary-content{min-width:0}.ch-summary-label,.ch-summary-detail{display:block}.ch-summary-label{margin-bottom:3px;color:var(--ch-muted);font-size:12px;font-weight:800}.ch-summary-value{display:block;color:var(--ch-text);font-size:clamp(20px,2vw,27px);line-height:1.15}.ch-summary-detail{margin-top:6px;color:#7a8394;font-size:12px;line-height:1.4}.ch-history-panel{padding:24px;overflow:hidden}.ch-history-header{min-width:0;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}.ch-history-header h2{font-size:27px}.ch-history-header p{margin:7px 0 0;color:var(--ch-muted);font-size:14px}.ch-search-box{display:flex;min-width:0;width:min(430px,100%);min-height:46px;align-items:center;gap:10px;padding:0 15px;border:1px solid var(--ch-border);border-radius:14px;background:#f8fafc;color:#8290a4;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.ch-search-box:focus-within{border-color:#9eb9f2;background:#fff;box-shadow:0 0 0 4px #2864dc17}.ch-search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ch-text);font:inherit;font-size:14px}.ch-filter-bar{display:flex;width:100%;min-width:0;gap:8px;margin:22px 0 26px;padding-bottom:3px;overflow-x:auto}.ch-filter-button{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;min-height:38px;padding:7px 12px;border:1px solid var(--ch-border);border-radius:999px;background:#fff;color:#606a7d;cursor:pointer;font:inherit;font-size:13px;font-weight:800;transition:all .2s ease}.ch-filter-button strong{display:grid;min-width:23px;height:23px;place-items:center;padding:0 6px;border-radius:999px;background:#eef1f6;color:#657085;font-size:11px}.ch-filter-button:hover{border-color:#b7c8ea;color:var(--ch-primary)}.ch-filter-button.is-active{border-color:var(--ch-primary);background:var(--ch-primary);color:#fff;box-shadow:0 7px 16px #2864dc36}.ch-filter-button.is-active strong{background:#ffffff2e;color:#fff}.ch-timeline{position:relative;padding-left:8px}.ch-timeline:before{content:"";position:absolute;top:17px;bottom:17px;left:24px;width:2px;background:#e5eaf2}.ch-timeline-row{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;padding-bottom:10px}.ch-timeline-row:last-child{padding-bottom:0}.ch-timeline-marker{position:relative;z-index:1;display:grid;width:34px;height:34px;margin-top:13px;place-items:center;border:3px solid #ffffff;border-radius:11px;box-shadow:0 3px 9px #1820331f;font-size:13px}.ch-timeline-marker.is-quote,.ch-type-badge.is-quote{background:#eef3ff;color:#3568d4}.ch-timeline-marker.is-repair,.ch-type-badge.is-repair{background:#fff1e7;color:#c7651e}.ch-timeline-marker.is-control,.ch-type-badge.is-control{background:#f0ecff;color:#7351c7}.ch-timeline-marker.is-payment,.ch-type-badge.is-payment{background:#e9f8f1;color:#18815a}.ch-timeline-marker.is-pro,.ch-type-badge.is-pro{background:#eaf6fa;color:#27758d}.ch-timeline-card{min-width:0;border:1px solid var(--ch-border);border-radius:14px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.ch-timeline-card:hover,.ch-timeline-row.is-expanded .ch-timeline-card{border-color:#c8d5eb;box-shadow:0 7px 18px #1c2b470f}.ch-compact-row{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(140px,.9fr) auto auto;align-items:center;gap:14px;min-height:60px;padding:10px 12px}.ch-compact-identity,.ch-item-meta-right,.ch-item-footer,.ch-item-reference,.ch-open-link,.ch-item-date{display:flex;align-items:center}.ch-compact-identity{min-width:0;gap:10px}.ch-compact-title{min-width:0}.ch-compact-title h3{margin:0 0 4px;overflow:hidden;color:var(--ch-text);font-size:15px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.ch-type-badge,.ch-status-badge{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}.ch-status-badge.is-success{background:var(--ch-success-soft);color:var(--ch-success)}.ch-status-badge.is-warning{background:var(--ch-warning-soft);color:var(--ch-warning)}.ch-status-badge.is-danger{background:var(--ch-danger-soft);color:var(--ch-danger)}.ch-status-badge.is-info{background:var(--ch-info-soft);color:var(--ch-info)}.ch-status-badge.is-neutral{background:#f0f2f6;color:#687386}.ch-item-date{gap:6px;color:#7a8496;font-size:11px;font-weight:700;white-space:nowrap}.ch-item-date svg{font-size:10px}.ch-compact-watch{min-width:0}.ch-compact-watch span,.ch-compact-watch strong{display:block}.ch-compact-watch span{margin-bottom:3px;color:#929baa;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.ch-compact-watch strong{overflow:hidden;color:#465064;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ch-item-meta-right{min-width:0;justify-content:flex-end;gap:10px}.ch-item-amount{color:#202a3d;font-size:14px;white-space:nowrap}.ch-details-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:7px 10px;border:1px solid #d8e1ef;border-radius:9px;background:#f8faff;color:var(--ch-primary);cursor:pointer;font:inherit;font-size:11px;font-weight:900;white-space:nowrap;transition:border-color .2s ease,background .2s ease}.ch-details-toggle:hover{border-color:#abc1ec;background:var(--ch-primary-soft)}.ch-details-toggle svg{font-size:10px}.ch-expanded-content{padding:0 12px 12px;border-top:1px solid #edf0f5;animation:ch-expand .18s ease-out}.ch-item-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding-top:12px}.ch-item-detail{min-width:0;padding:9px 11px;border-radius:10px;background:#f7f9fc}.ch-item-detail span,.ch-item-detail strong{display:block}.ch-item-detail span{margin-bottom:2px;color:#8a93a4;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.ch-item-detail strong{overflow:hidden;color:#3c4659;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ch-item-work{margin-top:9px;padding:10px 12px;border-left:3px solid #a9bde9;border-radius:0 9px 9px 0;background:#f8faff}.ch-item-work span{display:block;margin-bottom:4px;color:#78849a;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.ch-item-work p{margin:0;color:#4e596d;font-size:12px;line-height:1.5;white-space:pre-wrap}.ch-item-footer{flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:10px;padding-top:10px;border-top:1px solid #edf0f5}.ch-item-reference{gap:6px;color:#8a93a3;font-size:10px;font-weight:700}.ch-open-link{gap:7px;color:var(--ch-primary);font-size:12px;font-weight:900;text-decoration:none}.ch-open-link svg{font-size:9px;transition:transform .2s ease}.ch-open-link:hover svg{transform:translate(3px)}@keyframes ch-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ch-empty-state,.ch-state-page{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.ch-empty-state{min-height:310px;padding:30px;border:1px dashed #cfd7e5;border-radius:16px;background:#fafbfd;color:#8690a2}.ch-empty-state>svg{margin-bottom:12px;font-size:27px}.ch-empty-state h3,.ch-state-page h2{margin:0 0 7px;color:#303a4d}.ch-empty-state p,.ch-state-page p{margin:0;color:#778195}.ch-state-page{min-height:65vh;padding:30px}.ch-spinner{width:44px;height:44px;margin-bottom:18px;border:4px solid #dfe7f5;border-top-color:var(--ch-primary, #2864dc);border-radius:50%;animation:ch-spin .8s linear infinite}.ch-primary-button{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:11px 15px;border-radius:11px;background:#2864dc;color:#fff;font-weight:800;text-decoration:none}@keyframes ch-spin{to{transform:rotate(360deg)}}@media(max-width:1150px){.ch-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-compact-row{grid-template-columns:minmax(0,1fr) auto auto}.ch-compact-watch{display:none}}@media(max-width:800px){.client-history-page{padding:16px}.ch-client-hero,.ch-history-panel{border-radius:17px}.ch-client-main,.ch-client-heading,.ch-history-header{align-items:stretch;flex-direction:column}.ch-client-main{gap:15px}.ch-avatar{flex-basis:68px;width:68px;height:68px;border-radius:20px;font-size:22px}.ch-stars{padding-top:0}.ch-history-header{gap:16px}.ch-search-box{width:100%}.ch-compact-row{grid-template-columns:minmax(0,1fr) auto auto}.ch-item-details-grid{grid-template-columns:1fr}}@media(max-width:590px){.client-history-page{padding:11px}.ch-client-hero,.ch-history-panel{padding:17px}.ch-summary-grid,.ch-contact-grid{grid-template-columns:1fr}.ch-summary-grid{gap:10px}.ch-timeline{padding-left:0}.ch-timeline:before{left:16px}.ch-timeline-row{grid-template-columns:32px minmax(0,1fr);gap:8px}.ch-timeline-marker{width:32px;height:32px;margin-top:12px}.ch-compact-row{grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:9px}.ch-compact-identity{align-items:flex-start}.ch-type-badge{display:none}.ch-item-meta-right{grid-column:1 / -1;justify-content:flex-start;padding-top:7px;border-top:1px solid #edf0f5}.ch-details-toggle{grid-column:2;grid-row:1}.ch-expanded-content{padding:0 9px 9px}.ch-item-reference{display:none}}.qr-form{background:#fff;padding:20px;border-radius:8px;max-width:500px;margin:0 auto;display:flex;flex-direction:column}.qr-form h2{margin-bottom:1rem;font-size:1.5rem;color:#333}.qr-form label{margin-top:.75rem;font-weight:600;color:#555}.qr-form select,.qr-form input{margin-top:.25rem;padding:8px;border:1px solid #ccd0d5;border-radius:4px;font-size:.9rem;box-sizing:border-box;width:100%}.qr-form .travaux-fieldset{margin-top:1rem;border:1px solid #e5e7eb;border-radius:4px;padding:10px}.qr-form .travaux-item{display:flex;align-items:center;margin-bottom:8px}.qr-form .travaux-item input[type=checkbox]{margin-right:8px}.qr-form .travaux-price{margin-left:auto;width:80px;padding:6px;border:1px solid #ccd0d5;border-radius:4px}.qr-form .total-price{margin-top:.5rem;font-weight:700;color:#333}.qr-form button{margin-top:1.5rem;background:#4f46e5;color:#fff;border:none;padding:10px;border-radius:4px;cursor:pointer;font-size:1rem;transition:opacity .2s ease}.qr-form button:disabled{opacity:.6;cursor:not-allowed}.qr-list-container{background:#fff;padding:16px;border-radius:8px;box-shadow:0 4px 10px #0000000d;margin:1rem auto;max-width:100%;overflow-x:auto}.qr-table{width:100%;border-collapse:collapse;margin-top:12px}.qr-table th,.qr-table td{padding:10px;border:1px solid #e5e7eb;font-size:.9rem;text-align:left}.qr-table th{background-color:#f3f4f6;font-weight:700}.qr-table tr:nth-child(2n){background-color:#f9fafb}.qr-table tr:hover{background-color:#f1f1f1}.qr-table button{background-color:#4f46e5;color:#fff;border:none;padding:4px 8px;border-radius:4px;margin:2px;cursor:pointer;font-size:.8rem;transition:background-color .3s ease}.qr-table button:hover{background-color:#1d4ed8}.qr-sum-card{margin:8px 0 16px;background:#fff;border:1px solid #e7e7e7;border-radius:12px;padding:14px;box-shadow:0 2px 8px #0000000d}.qr-sum-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.qr-sum-title{font-size:1.05rem;margin:0}.qr-sum-right{display:flex;align-items:baseline;gap:14px}.qr-sum-net{color:#111827}.qr-sum-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.qr-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #e5e7eb;background:#f9fafb;padding:8px 12px;border-radius:999px;font-size:.9rem;cursor:pointer;transition:transform .06s ease,background-color .2s ease,border-color .2s ease}.qr-pill:hover{transform:translateY(-1px);background:#f3f4f6;border-color:#d1d5db}.qr-pill.active{background:#eef2ff;border-color:#c7d2fe}.qr-pill-count{background:#111827;color:#fff;padding:2px 8px;border-radius:999px;font-weight:600;font-size:.8rem}.qr-pill-dot{width:8px;height:8px;border-radius:50%;background:#6366f1}.qr-sum-meters{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media(min-width:900px){.qr-sum-meters{grid-template-columns:repeat(3,1fr)}}.qr-meter{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 8px auto;gap:6px 10px;align-items:center}.qr-meter-label{grid-column:1;font-size:.85rem;color:#374151}.qr-meter-bar{grid-column:1 / span 2;height:8px;background:#f3f4f6;border-radius:999px;overflow:hidden;border:1px solid #e5e7eb}.qr-meter-fill{height:100%;background:#6366f1}.qr-meter-val{grid-column:2;font-size:.8rem;color:#6b7280}@media(prefers-color-scheme:dark){.qr-sum-card{background:#0f1115;border-color:#242733;box-shadow:none}.qr-sum-net{color:#e5e7eb}.qr-pill{background:#141824;border-color:#232838;color:#e5e7eb}.qr-pill:hover{background:#1a2031;border-color:#2f3851}.qr-pill.active{background:#192142;border-color:#334155}.qr-pill-count{background:#e5e7eb;color:#111827}.qr-meter-bar{background:#1b2132;border-color:#2a344d}.qr-meter-label,.qr-meter-val{color:#cbd5e1}}.quick-repairs-page{padding:20px;min-height:80vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.page-title{font-size:2rem;color:#1f2937;margin:0;font-weight:700}.add-button{background-color:#4f46e5;color:#fff;border:none;padding:10px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.add-button:hover{background-color:#1d4ed8}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:20px;border-radius:8px;width:90%;max-width:500px;position:relative}.error{color:#dc2626;margin-top:.5rem}.qr-toolbar{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;flex-wrap:wrap}.qr-filters{flex:1 1 auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.qr-sorting{flex:0 0 auto;display:flex;align-items:center;gap:8px;white-space:nowrap}.qr-filters input,.qr-sorting select{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:150px;box-sizing:border-box}@media(max-width:900px){.qr-sorting{width:100%;justify-content:flex-start;white-space:normal}.qr-count{margin-left:0}}.sav-list-container{background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 10px #0000001a;margin:1rem auto;max-width:100%;overflow-x:auto}.sav-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.sav-table{width:100%;border-collapse:collapse;min-width:800px}.sav-table th,.sav-table td{padding:10px;border:1px solid #ddd;text-align:left;font-size:.9rem}.sav-table th{background-color:#f4f4f4}.sav-table tr:nth-child(2n){background-color:#f9f9f9}.sav-table tr.overdue{background-color:#ffecec;border-left:4px solid #e3342f;font-weight:700;color:#a10000}.sav-table button{background-color:#4f46e5;color:#fff;border:none;padding:4px 8px;border-radius:4px;margin:2px;cursor:pointer;transition:background-color .3s;font-size:.8rem}.sav-table button:hover{background-color:#1d4ed8}.sav-table button:disabled{background-color:#ccc!important;color:#888!important;border-color:#ccc!important;cursor:not-allowed;opacity:.7}.sav-badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:.78rem;font-weight:700;line-height:1;border:1px solid #e5e7eb;background:#f8fafc;color:#111827}.sav-prio-basse{background:#f3faf7;border-color:#c7eed8;color:#065f46}.sav-prio-normal{background:#eef2ff;border-color:#c7d2fe;color:#3730a3}.sav-prio-haute{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.sav-prio-critique{background:#fef2f2;border-color:#fecaca;color:#991b1b}.sav-st-ouvert{background:#ecfeff;border-color:#a5f3fc;color:#155e75}.sav-st-en\ cours{background:#f5f3ff;border-color:#ddd6fe;color:#5b21b6}.sav-st-clôturé{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.sav-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.sav-muted{color:#6b7280}.sav-page{padding:20px}.sav-header{display:flex;justify-content:space-between;align-items:center}.sav-page-title{margin:0 0 8px}.sav-filters{display:flex;gap:8px}.sav-select{border:1px solid #ddd;border-radius:8px;padding:10px 12px;background:#fff}.sav-open-box{position:relative;margin:16px 0 24px;background:#fff;border:1px solid #e7e7e7;border-radius:10px;padding:16px;box-shadow:0 2px 6px #0000000a}.sav-open-box__label{font-weight:600;margin-bottom:8px}.sav-input{width:25rem;max-width:100%;border:1px solid #ddd;border-radius:8px;padding:10px 12px}.sav-seed-loading{margin-top:8px;font-size:.9rem;opacity:.7}.sav-seed-dropdown{position:absolute;z-index:20;left:16px;right:16px;top:calc(100% - 8px);background:#fff;border:1px solid #ddd;border-radius:10px;margin-top:8px;max-height:320px;overflow-y:auto;box-shadow:0 10px 20px #00000014}.sav-seed-item{width:100%;text-align:left;padding:10px 12px;border:0;background:#fff;cursor:pointer}.sav-seed-item:hover,.sav-seed-item[aria-selected=true],.sav-seed-item.is-active{background:#f2f6ff}.sav-seed-line{font-weight:600}.sav-seed-sub{font-size:.9rem;opacity:.8;margin-top:2px}@media(prefers-color-scheme:dark){body{background-color:#242424}a:hover{color:#747bff}.sav-select,.sav-mono,input[type=text]:focus,input[type=email]:focus,input[type=number]:focus,input[type=date]:focus,textarea:focus,select:focus,.sav-seed-line span,.sav-seed-sub,.sav-input{color:#213547}}.valuation-certificate-table{width:100%;border-collapse:collapse;margin-top:20px}.valuation-certificate-table th,.valuation-certificate-table td{border:1px solid #ddd;padding:8px;text-align:left}.valuation-certificate-table th{background-color:#f2f2f2;font-weight:700}button{background:none;border:none;cursor:pointer;margin-right:5px;font-size:1.1rem}.valuation-certificate-table button{background-color:#4f46e5;color:#fff;border:none;padding:4px 8px;border-radius:4px;margin:2px;cursor:pointer;transition:background-color .3s;font-size:.8rem}.valuation-certificate-table button:hover{background-color:#1d4ed8}.column-toggle{display:flex;gap:1rem;flex-wrap:wrap;margin:1rem 0}.column-toggle .toggle-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.column-toggle .checkbox-custom{width:16px;height:16px;border:1px solid #d1d5db;border-radius:3px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:30px;border-radius:10px;max-width:600px;width:100%;box-shadow:0 0 10px #0000004d;overflow-y:auto;max-height:90vh}.edit-valuation-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:700;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{padding:8px;border-radius:5px;border:1px solid #ccc;font-size:14px}.form-row{display:flex;gap:20px;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:45%}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.btn{padding:10px 20px;border:none;border-radius:5px;cursor:pointer}.btn-primary{background-color:#007bff;color:#fff}.btn-secondary{background-color:#6c757d;color:#fff}img{max-width:100px;border-radius:5px;margin-top:10px}.valuation-certificates-container{padding:20px;background:#f7f9fc;min-height:100vh;display:flex;justify-content:center;align-items:flex-start}.valuation-certificates-page{padding:20px;min-height:80vh;overflow-x:hidden;box-sizing:border-box}.valuation-certificates-form{display:flex;flex-direction:column;gap:1rem;background-color:#fff;padding:20px;border-radius:8px;max-width:600px;margin:0 auto;width:100%;box-sizing:border-box}.valuation-certificates-box{background:#fff;border-radius:8px;padding:30px 40px;box-shadow:0 4px 10px #0000001a;width:100%;max-width:800px;margin:0 auto;animation:zoomIn .5s ease-out}.valuation-certificates-box h1{font-size:2.4rem;color:#333;margin-bottom:20px;text-align:center}.valuation-certificates-box p{font-size:1.1rem;color:#555;margin-bottom:30px;text-align:center}.valuation-certificates-button{background-color:#e67e22;color:#fff;padding:12px 25px;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease;display:block;margin:0 auto}.valuation-certificates-button:hover{background-color:#d35400}.filter-container{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;overflow-x:auto;padding:5px 0}.filter-container input{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:150px;box-sizing:border-box}.add-certificate-button{background-color:#4f46e5;color:#fff;border:none;padding:10px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.add-certificate-button:hover{background-color:#1d4ed8}.valuation-certificate-list-container{background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 10px #0000001a;margin:1rem auto;max-width:100%;overflow-x:auto}.valuation-certificate-table{width:100%;border-collapse:collapse;min-width:600px}.valuation-certificate-table th,.valuation-certificate-table td{padding:10px;border:1px solid #ddd;text-align:left;font-size:.9rem}.valuation-certificate-table th{background-color:#f4f4f4;font-weight:700}.valuation-certificate-table tr:nth-child(2n){background-color:#f9f9f9}.valuation-certificate-table tr:hover{background-color:#f1f1f1}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:20px;border-radius:8px;position:relative;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.modal-close{position:absolute;top:10px;right:10px;background:none;border:none;font-size:1.5rem;cursor:pointer}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.services-container{display:flex;justify-content:center;align-items:center;background:#f7f9fc;height:100vh;padding:20px}.services-box{background:#fff;border-radius:8px;padding:30px 40px;box-shadow:0 4px 10px #0000001a;text-align:center;max-width:600px;width:100%;margin:0 auto;animation:fadeInUp .5s ease-out}.services-box h1{font-size:2.5rem;color:#333;margin-bottom:20px;text-align:center}.services-box p{font-size:1.2rem;color:#6b7280;margin-bottom:30px;text-align:center}.buttons-container{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.service-button{background-color:#4f46e5;color:#fff;padding:15px 25px;border:none;border-radius:5px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.service-button:hover{background-color:#1d4ed8}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.track-page{max-width:700px;margin:4rem auto;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000000d;font-family:sans-serif}.track-page h1{text-align:center;margin-bottom:1.5rem;color:#333;font-size:1.75rem}.track-form{display:flex;gap:.5rem;margin-bottom:1.5rem}.track-form input{flex:1;padding:.75rem 1rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;transition:border-color .2s}.track-form input:focus{border-color:#4f46e5;outline:none}.btn-primary{background-color:#4f46e5;color:#fff;border:none;padding:.75rem 1.25rem;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .3s}.btn-primary:hover,.btn-primary:focus{background-color:#4338ca;outline:none}.error{color:#b91c1c;text-align:center;margin-top:1rem}.progress-bar-container{position:relative;margin-bottom:2rem;margin-top:2rem}.progress-bar-bg{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:#4f46e5;transition:width .5s ease}.progress-text{position:absolute;top:-1.6rem;right:0;font-size:.875rem;color:#555}.progress-list{list-style:none;padding:0;margin:0}.progress-step{display:flex;align-items:center;padding:1rem;border-left:4px solid #e5e7eb;margin-bottom:1rem;transition:border-color .3s}.progress-step.done{border-color:#4f46e5}.step-icon{font-size:1.5rem;margin-right:1rem;color:#ccc;transition:color .3s}.progress-step.done .step-icon{color:#4f46e5}.step-info{line-height:1.2}.step-title{font-weight:600;color:#333}.step-date{font-size:.875rem;color:#555;margin-top:.25rem}.notfound-container{text-align:center;padding:4rem 1rem}.notfound-container h1{font-size:5rem;margin-bottom:1rem;color:#4f46e5}.notfound-container p{font-size:1.25rem;margin-bottom:2rem}.notfound-container a{color:#4f46e5;text-decoration:none;font-weight:500}.notfound-container a:hover{text-decoration:underline}.tp-tasks-page{padding:18px}.tp-btn{height:38px;padding:0 12px;border-radius:10px;border:1px solid rgba(0,0,0,.12);background:#fff;cursor:pointer}.tp-btn:hover{background:#f8fafc}.tp-btn.tp-primary{background:#111827;border-color:#111827;color:#fff}.tp-btn.tp-primary:hover{background:#0b1220}.tp-btn.tp-ghost{border:none;background:transparent;padding:0 10px}.tp-btn.tp-small{height:32px;border-radius:9px;padding:0 10px;font-size:13px}.tp-btn.tp-danger{border-color:#ef444459;color:#b91c1c}.tp-btn.tp-danger:hover{background:#ef444414}.tp-chip{display:inline-flex;gap:8px;align-items:center;padding:8px 10px;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.1);color:#374151;font-size:13px;-webkit-user-select:none;user-select:none}.tp-chip input{accent-color:#111827}.tp-chip.is-on{border-color:#00000038}.tp-muted{color:#6b7280}.tp-fab{position:fixed;right:16px;bottom:16px;width:54px;height:54px;border-radius:999px;border:0;background:#111827;color:#fff;font-size:28px;line-height:54px;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 25px #0003}@media(min-width:900px){.tp-fab{display:none}}.tp-grid2{display:grid;gap:12px;grid-template-columns:1fr 1fr}@media(max-width:820px){.tp-grid2{grid-template-columns:1fr}}@media(prefers-color-scheme:dark){.tp-tasks-page{color:#ffffffeb}.tp-tasks-header h1,.tp-drag-handle{color:#111827bf}.tp-btn{background:#111827bf;border-color:#ffffff24;color:#ffffffeb}.tp-btn:hover{background:#111827f2;color:#fff}.tp-btn.tp-primary{background:#fff;border-color:#fffc;color:#0b1220}.tp-btn.tp-primary:hover{background:#ffffffeb}.tp-control,.tp-view{background-color:#111827bf}.tp-btn.tp-ghost{background:transparent;border:none;color:#ffffffe0}.tp-btn.tp-ghost:hover{background:#ffffff0f}.tp-btn.tp-danger{background:#ef444414;border-color:#ef444459;color:#fca5a5}.tp-btn.tp-danger:hover{background:#ef444429}.tp-chip{background:#11182799;border-color:#ffffff24;color:#ffffffe0}.tp-chip.is-on{border-color:#ffffff47}.tp-chip input{accent-color:#fff}.tp-muted{color:#ffffff9e}.tp-fab{background:#fff;color:#0b1220;box-shadow:0 12px 28px #0000008c}.tp-fab:hover{background:#ffffffeb}}.tp-tasks-header{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:12px}.tp-tasks-header h1{margin:0;font-size:22px}.tp-tasks-sub{margin-top:2px;font-size:12px;color:#6b7280}.tp-tasks-header-actions{display:flex;gap:10px;flex-wrap:wrap}.tp-tasks-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:10px 0 14px}.tp-filter input,.tp-filter select{height:38px;border-radius:10px;border:1px solid rgba(0,0,0,.12);padding:0 12px;background:#fff;color:#111827}.tp-filter.tp-filter-search input{min-width:260px}@media(max-width:820px){.tp-filter.tp-filter-search input{min-width:100%}}.tp-kanban{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.tp-kanban-col{background:#f7f7f8;border:1px solid rgba(0,0,0,.06);border-radius:14px;overflow:hidden}.tp-kanban-col-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border-bottom:1px solid rgba(0,0,0,.06)}.tp-kanban-col-title{font-weight:700;color:#111827}.tp-kanban-col-count{font-size:12px;color:#6b7280;background:#0000000f;padding:4px 8px;border-radius:999px}.tp-kanban-col-body{padding:10px;min-height:140px;border-radius:14px;max-height:60vh;overflow-y:auto}.tp-kanban-col-body.is-over{outline:2px dashed rgba(17,24,39,.22);outline-offset:6px}.tp-col-empty{border:1px dashed rgba(0,0,0,.18);background:#ffffffa6;border-radius:12px;padding:18px;text-align:center;color:#6b7280}.tp-task-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:10px;margin-bottom:10px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.tp-task-card:hover{box-shadow:0 10px 20px #0000000f;transform:translateY(-1px)}.tp-task-card.is-not-draggable{cursor:default}.tp-task-card.is-locked-other{border-color:#f59e0b73;background:#fffbeb99}.tp-task-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.tp-task-title{font-weight:800;color:#111827;line-height:1.2}.tp-task-top-right{display:flex;gap:8px;align-items:center}.tp-task-icon{font-size:14px;opacity:.9}.tp-task-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.tp-pill{font-size:12px;border-radius:999px;padding:4px 10px;border:1px solid rgba(0,0,0,.1);background:#fff;color:#374151}.tp-pill.tp-muted{color:#6b7280;background:#00000008}.tp-pill.tp-prio-LOW{background:#00000008}.tp-pill.tp-prio-NORMAL{background:#3b82f61a;border-color:#3b82f638}.tp-pill.tp-prio-HIGH{background:#f59e0b1f;border-color:#f59e0b40}.tp-pill.tp-prio-URGENT{background:#ef44441f;border-color:#ef444440}.tp-pill.tp-due-late{background:#ef44441f;border-color:#ef444440;color:#991b1b}.tp-pill.tp-due-today{background:#f59e0b1f;border-color:#f59e0b40;color:#92400e}.tp-pill.tp-due-tomorrow{background:#10b9811f;border-color:#10b98140;color:#065f46}.tp-pill.tp-warn{background:#f59e0b1f;border:1px solid rgba(245,158,11,.25)}.tp-task-footer{margin-top:10px;display:flex;justify-content:space-between;gap:10px;align-items:center}.tp-assignee{display:flex;align-items:center;gap:8px;min-width:0}.tp-avatar{width:28px;height:28px;border-radius:999px;background:#0000000f;display:grid;place-items:center;font-size:12px;color:#111827;flex:0 0 auto}.tp-assignee-name{font-size:13px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-task-actions{display:flex;gap:8px;align-items:center}.tp-drag-handle{width:34px;height:34px;border-radius:10px;border:1px solid rgba(0,0,0,.1);background:#00000008;cursor:grab;padding:4px 2px 3px}.tp-drag-handle:active{cursor:grabbing}.tp-drag-handle.disabled{opacity:.4;cursor:not-allowed}.tp-task-hint{margin-top:8px;font-size:12px;color:#6b7280}.tp-archived{margin-top:16px;border:1px solid rgba(0,0,0,.08);background:#ffffffc7;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px #0000000f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tp-archived-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:linear-gradient(to bottom,#ffffffbf,#00000004);border:0;cursor:pointer;-webkit-user-select:none;user-select:none}.tp-archived-head:hover{background:linear-gradient(to bottom,#ffffffe6,#00000005)}.tp-archived-head:focus-visible,.tp-archived-head:focus{outline:none!important}.tp-archived-title{font-weight:800;font-size:14px;letter-spacing:.2px;display:flex;align-items:center;gap:10px;color:#111827f2}.tp-archived-count{font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.1);background:#ffffffeb;color:#111827d9}.tp-archived-toggle{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;border:1px solid rgba(0,0,0,.1);background:#ffffffd9;color:#111827bf;font-size:18px;line-height:1}.tp-archived-list{padding:12px;display:grid;gap:10px}.tp-archived-item{text-align:left;border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:16px;padding:12px;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;box-shadow:0 6px 16px #0000000d}.tp-archived-item:hover{transform:translateY(-1px);border-color:#4f46e538;box-shadow:0 12px 26px #00000014}.tp-archived-item:active{transform:translateY(0);box-shadow:0 8px 18px #0000000f}.tp-archived-item:focus-visible{outline:2px solid rgba(79,70,229,.55);outline-offset:2px}.tp-archived-item-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.tp-archived-item-name{font-weight:800;font-size:14px;color:#111827f2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-archived-item-date{font-size:12px;color:#1118278c;white-space:nowrap;flex:0 0 auto}.tp-archived-item-desc{margin-top:6px;font-size:12.5px;color:#111827b8;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:520px){.tp-archived-item-top{flex-direction:column;align-items:flex-start;gap:6px}.tp-archived-item-name{white-space:normal;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical}.tp-archived-item-date{font-size:12px}}.tp-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:grid;place-items:center;padding:16px;z-index:999}.tp-modal{width:min(900px,calc(100vw - 32px));max-height:min(86vh,760px);background:#fff;border-radius:18px;border:1px solid rgba(0,0,0,.1);box-shadow:0 30px 70px #00000040;display:flex;flex-direction:column;overflow:hidden}.tp-modal-head{position:sticky;top:0;z-index:2;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.tp-modal-head-left{display:flex;flex-direction:column;gap:6px}.tp-modal-head h2{margin:0;font-size:18px;line-height:1.2}.tp-modal-sub{display:flex;gap:8px;flex-wrap:wrap}.tp-modal-head-actions{display:flex;gap:10px;align-items:center}.tp-modal-body{padding:14px 16px 16px;overflow:auto;flex:1 1 auto}.tp-modal-actions{position:sticky;bottom:0;z-index:2;background:#fff;padding:12px 16px;border-top:1px solid rgba(0,0,0,.06);display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.tp-callout{padding:10px 12px;border-radius:14px;border:1px solid rgba(0,0,0,.08);margin:10px 16px 0;background:#00000005;color:#374151}.tp-callout.tp-info{background:#3b82f61a;border-color:#3b82f633}.tp-callout.tp-warn{background:#f59e0b1f;border-color:#f59e0b40}.tp-field{display:grid;gap:6px;margin-bottom:12px}.tp-field>span{font-size:12px;color:#6b7280;font-weight:600}.tp-control,.tp-view{border-radius:12px;border:1px solid rgba(0,0,0,.12);padding:10px 12px;font-size:14px;background:#fff;width:100%;box-sizing:border-box}.tp-control:disabled{background:#00000008;color:#6b7280}.tp-view{display:flex;align-items:center;min-height:42px;color:#111827}.tp-view.is-empty{color:#6b7280;background:#00000008}.tp-view.multiline{align-items:flex-start;white-space:pre-wrap;line-height:1.35;min-height:140px;padding-top:10px}textarea.tp-control{min-height:140px;resize:vertical}.tp-task-grid{display:grid;gap:12px 14px;align-items:start}@media(min-width:860px){.tp-task-grid{grid-template-columns:1.35fr .65fr}}@media(max-width:859px){.tp-task-grid{grid-template-columns:1fr}}.tp-task-title-row{grid-column:1 / -1}.tp-task-main{grid-column:1 / 2}.tp-task-side{grid-column:2 / 3;display:grid;gap:12px;align-self:start}@media(max-width:859px){.tp-task-main,.tp-task-side{grid-column:1 / -1}}.tp-links{padding:12px;border-radius:14px;background:#00000005;border:1px solid rgba(0,0,0,.06)}.tp-links-title{display:flex;justify-content:space-between;align-items:center;font-weight:800;color:#111827;margin-bottom:10px}.tp-link-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:12px;background:#fff;border:1px solid rgba(0,0,0,.06);margin-bottom:8px}.tp-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-link-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.tp-link-add{display:grid;grid-template-columns:180px 1fr auto;gap:10px;margin-top:10px}.tp-link-edit-row{display:grid;grid-template-columns:180px 1fr auto;gap:10px;margin-bottom:8px}.tp-links-card{padding:12px;border-radius:14px;background:#00000005;border:1px solid rgba(0,0,0,.06)}.tp-links-card-title{font-weight:800;color:#111827;margin-bottom:10px}.tp-col-manager{display:grid;gap:10px;margin-top:10px}.tp-col-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.06)}.tp-col-row input{height:38px;border-radius:12px;border:1px solid rgba(0,0,0,.12);padding:0 12px}.tp-col-row-actions{display:flex;gap:8px}.tp-col-create{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:12px}.tp-col-create input{height:38px;border-radius:12px;border:1px solid rgba(0,0,0,.12);padding:0 12px}@media(max-width:820px){.tp-modal{width:calc(100vw - 18px);max-height:88vh}.tp-link-add,.tp-link-edit-row{grid-template-columns:1fr}}.tp-task-bottom-meta{grid-column:1 / -1;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start;margin-top:6px}.tp-modal-body{scrollbar-gutter:stable}.tp-us-wrap{position:relative}.tp-us-popover{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 14px 30px #0000001a;overflow:hidden;overflow-x:hidden;transform-origin:top;animation:tpFadeIn .12s ease-out}@keyframes tpFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.tp-us-meta{padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.06);font-size:12px;color:#6b7280;min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px}.tp-us-meta .tp-us-badge{font-size:12px;padding:4px 8px;border-radius:999px;background:#0000000a;border:1px solid rgba(0,0,0,.06);color:#374151;white-space:nowrap}.tp-us-list{max-height:260px;overflow:auto;overflow-x:hidden;scrollbar-gutter:stable}.tp-us-empty{padding:12px;color:#6b7280;min-height:110px;display:flex;align-items:center}.tp-us-item{width:100%;text-align:left;border:0;border-bottom:1px solid rgba(0,0,0,.06);background:#fff;padding:10px 12px;cursor:pointer;display:grid;gap:4px}.tp-us-item:last-child{border-bottom:0}.tp-us-item:hover{background:#00000005}.tp-us-title{font-weight:800;color:#111827;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-us-sub{font-size:12px;color:#6b7280;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-us-actions{padding:10px 12px;border-top:1px solid rgba(0,0,0,.06);display:flex;justify-content:flex-end;gap:8px}.tp-dt-row{display:flex;align-items:center;gap:8px}.tp-dt-row .tp-control{flex:1 1 auto}.tp-btn.tp-small{height:38px;padding:0 10px;border-radius:10px}@media(prefers-color-scheme:dark){.tp-modal-backdrop{background:#000000ad}.tp-modal{background:#0f172af5;border-color:#ffffff1f;box-shadow:0 30px 80px #000000a6;color:#ffffffeb}.tp-modal-head{background:#0f172af5;border-bottom-color:#ffffff1a}.tp-modal-head h2{color:#fffffff5}.tp-modal-actions{background:#0f172af5;border-top-color:#ffffff1a}.tp-callout{background:#ffffff0a;border-color:#ffffff1a;color:#ffffffdb}.tp-callout.tp-info{background:#3b82f629;border-color:#3b82f647}.tp-callout.tp-warn{background:#f59e0b2e;border-color:#f59e0b4d}.tp-field>span{color:#fff9}.tp-control,.tp-view{background:#0206178c;border-color:#ffffff1f;color:#ffffffeb}.tp-control::placeholder{color:#ffffff6b}.tp-control:focus{outline:none;border-color:#6366f180;box-shadow:0 0 0 4px #6366f126}.tp-control:disabled{background:#ffffff0f;color:#ffffff8c}select.tp-control,input[type=date].tp-control,input[type=time].tp-control,input[type=datetime-local].tp-control{color-scheme:dark}.tp-view{color:#ffffffeb}.tp-view.is-empty{color:#ffffff8c;background:#ffffff0f}textarea.tp-control{background:#0206178c;color:#fff}.tp-links,.tp-links-card{background:#ffffff0a;border-color:#ffffff1a}.tp-links-title,.tp-links-card-title{color:#ffffffeb}.tp-link-row{background:#0206178c;border-color:#ffffff1a}.tp-mono{color:#ffffffb3}.tp-col-row{background:#0206178c;border-color:#ffffff1a}.tp-col-row input,.tp-col-create input{background:#0206178c;border-color:#ffffff1f;color:#ffffffeb}.tp-col-row input::placeholder,.tp-col-create input::placeholder{color:#ffffff6b}.tp-col-row input:focus,.tp-col-create input:focus{outline:none;border-color:#6366f180;box-shadow:0 0 0 4px #6366f126}.tp-us-popover{background:#0f172afa;border-color:#ffffff1f;box-shadow:0 18px 40px #0000008c}.tp-us-meta{border-bottom-color:#ffffff1a;color:#fff9}.tp-us-meta .tp-us-badge{background:#ffffff0f;border-color:#ffffff1a;color:#ffffffb8}.tp-us-item{background:#0f172afa;border-bottom-color:#ffffff1a}.tp-us-item:hover{background:#ffffff0f}.tp-us-title{color:#ffffffeb}.tp-us-sub,.tp-us-empty{color:#ffffff9e}.tp-us-actions{border-top-color:#ffffff1a}.tp-dt-row .tp-btn.tp-ghost{color:#ffffffdb}.tp-dt-row .tp-btn.tp-ghost:hover{background:#ffffff0f}}.vacation-admin-overlay{align-items:center;padding:12px;overflow:hidden;overscroll-behavior:contain}.vacation-admin-overlay .vacation-admin-modal{display:flex;flex-direction:column;width:min(65%,calc(100vw - 24px));max-width:none;height:calc(100vh - 24px);height:calc(100dvh - 24px);max-height:1100px;padding:0;overflow:hidden;background:#f8fafc}.vacation-admin-header{flex:0 0 auto;margin:0;padding:22px 24px 18px;background:#fff;border-bottom:1px solid #e5e7eb}.vacation-admin-header>div:first-child{min-width:0}.vacation-admin-header h2{margin-bottom:4px}.vacation-admin-header p{margin:0;color:#64748b;font-size:14px}.vacation-admin-tabs{flex:0 0 auto;display:flex;gap:8px;padding:14px 24px;background:#fff;border-bottom:1px solid #e5e7eb;overflow-x:auto}.vacation-admin-tabs button{flex:0 0 auto;border:1px solid #dbe3ee;border-radius:999px;padding:9px 14px;background:#fff;color:#475569;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.vacation-admin-tabs button:hover{background:#f8fafc}.vacation-admin-tabs button.is-active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.vacation-admin-content{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:18px;padding:20px 24px 28px;overflow-x:hidden;overflow-y:auto;max-height:none;scrollbar-gutter:stable;overscroll-behavior:contain}.vacation-info-banner,.vacation-notification-info,.vacation-example-box{padding:15px 17px;border:1px solid #bfdbfe;border-radius:15px;background:#eff6ff}.vacation-info-banner strong,.vacation-notification-info strong,.vacation-example-box strong{display:block;color:#1e3a8a;font-size:14px}.vacation-info-banner p,.vacation-notification-info p,.vacation-example-box p{margin:5px 0 0;color:#475569;font-size:13px;line-height:1.55}.vacation-admin-section{padding:20px;border:1px solid #dfe6ef;border-radius:18px;background:#fff;box-shadow:0 8px 24px #0f172a09}.vacation-admin-section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.vacation-admin-section-title h3,.vacation-person-card h4,.vacation-adjustment-history h4{margin:0;color:#0f172a}.vacation-admin-section-title p,.vacation-card-heading p,.vacation-adjustment-history>p{margin:5px 0 0;color:#64748b;font-size:13px;line-height:1.45}.vacation-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.vacation-settings-grid--carry{grid-template-columns:repeat(4,minmax(0,1fr))}.vacation-settings-grid label,.vacation-person-card label{display:flex;flex-direction:column;gap:7px;min-width:0;color:#334155;font-size:13px;font-weight:700}.vacation-settings-grid input,.vacation-settings-grid select,.vacation-person-card input,.vacation-person-card select,.vacation-person-card textarea{width:100%;box-sizing:border-box;border:1px solid #d8e0ea;border-radius:11px;padding:10px 12px;background:#fff;color:#0f172a;font:inherit;font-size:14px}.vacation-settings-grid input::placeholder,.vacation-person-card input::placeholder,.vacation-person-card textarea::placeholder{color:#94a3b8}.vacation-settings-grid input:focus,.vacation-settings-grid select:focus,.vacation-person-card input:focus,.vacation-person-card select:focus,.vacation-person-card textarea:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa2b}.vacation-person-card textarea{min-height:92px;resize:vertical}.vacation-input-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.vacation-input-with-unit input{border-radius:11px 0 0 11px}.vacation-input-with-unit>span{display:flex;align-items:center;padding:0 12px;border:1px solid #d8e0ea;border-left:0;border-radius:0 11px 11px 0;background:#f8fafc;color:#64748b;font-size:12px;font-weight:700;white-space:nowrap}.vacation-field-help{display:block;color:#64748b;font-size:11.5px;font-weight:500;line-height:1.45}.vacation-subsection{margin-top:20px;padding-top:18px;border-top:1px solid #eef2f7}.vacation-subsection-title strong,.vacation-subsection-title small{display:block}.vacation-subsection-title strong{color:#1e293b;font-size:14px}.vacation-subsection-title small{margin-top:3px;color:#64748b;font-size:12px}.vacation-working-days{display:grid;grid-template-columns:repeat(7,minmax(60px,1fr));gap:9px;margin-top:12px}.vacation-working-days label{position:relative;cursor:pointer}.vacation-working-days input{position:absolute;opacity:0;pointer-events:none}.vacation-working-days span{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #dbe3ee;border-radius:11px;background:#fff;color:#64748b;font-size:13px;font-weight:700}.vacation-working-days label:hover span{border-color:#93c5fd}.vacation-working-days label.is-selected span{border-color:#2563eb;background:#eff6ff;color:#1d4ed8;box-shadow:inset 0 0 0 1px #2563eb}.vacation-settings-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid #eef2f7}.vacation-setting-switch{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:flex-start;padding:13px;border:1px solid #e2e8f0;border-radius:13px;background:#fff;cursor:pointer}.vacation-setting-switch:hover,.vacation-setting-switch.is-active{border-color:#bfdbfe;background:#f8fbff}.vacation-setting-switch input{position:absolute;opacity:0;pointer-events:none}.vacation-switch-control{position:relative;width:38px;height:22px;margin-top:1px;border-radius:999px;background:#cbd5e1;transition:background .16s ease}.vacation-switch-control:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0f172a3d;transition:transform .16s ease}.vacation-setting-switch.is-active .vacation-switch-control{background:#2563eb}.vacation-setting-switch.is-active .vacation-switch-control:after{transform:translate(16px)}.vacation-setting-switch-text strong,.vacation-setting-switch-text small{display:block}.vacation-setting-switch-text strong{color:#1e293b;font-size:13px}.vacation-setting-switch-text small{margin-top:4px;color:#64748b;font-size:11.5px;font-weight:500;line-height:1.4}.vacation-notification-info{margin-bottom:16px}.vacation-notification-table{overflow:hidden;border:1px solid #e2e8f0;border-radius:15px}.vacation-notification-row{display:grid;grid-template-columns:minmax(0,1fr) 155px 155px;gap:14px;align-items:center;padding:13px 15px;background:#fff;border-bottom:1px solid #eef2f7}.vacation-notification-row:last-child{border-bottom:0}.vacation-notification-row--header{background:#f8fafc;color:#475569;font-size:12px;font-weight:800}.vacation-notification-row>div strong,.vacation-notification-row>div small{display:block}.vacation-notification-row>div strong{color:#1e293b;font-size:13px}.vacation-notification-row>div small{margin-top:3px;color:#64748b;font-size:11.5px;line-height:1.4}.vacation-channel-toggle{display:inline-flex;align-items:center;gap:8px;color:#475569;font-size:12px;font-weight:700;cursor:pointer}.vacation-channel-toggle input{width:17px;height:17px;accent-color:#2563eb}.vacation-admin-yearbar{display:flex;align-items:center;gap:10px}.vacation-admin-yearbar>button:not(.agenda-btn){width:38px;height:38px;border:1px solid #dbe3ee;border-radius:10px;background:#fff;color:#334155;cursor:pointer;font-size:18px}.vacation-admin-yearbar>button:not(.agenda-btn):hover{background:#f8fafc}.vacation-admin-yearbar strong{min-width:72px;text-align:center;color:#0f172a;font-size:19px}.vacation-balance-table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:14px}.vacation-balance-table{width:100%;min-width:900px;border-collapse:collapse}.vacation-balance-table th,.vacation-balance-table td{padding:12px 13px;border-bottom:1px solid #e8edf4;text-align:left;font-size:13px}.vacation-balance-table th{background:#f8fafc;color:#475569;font-weight:800}.vacation-balance-table tbody tr{background:#fff;cursor:pointer}.vacation-balance-table tbody tr:hover{background:#f8fbff}.vacation-balance-table tbody tr.is-selected{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.vacation-balance-table .is-positive{color:#166534;font-weight:800}.vacation-balance-table .is-negative{color:#b91c1c;font-weight:800}.vacation-person-section{scroll-margin-top:12px}.vacation-person-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:18px}.vacation-person-summary>div{padding:13px 14px;border:1px solid #dbeafe;border-radius:13px;background:#f8fbff}.vacation-person-summary span,.vacation-person-summary strong{display:block}.vacation-person-summary span{margin-bottom:5px;color:#64748b;font-size:11.5px}.vacation-person-summary strong{color:#0f172a;font-size:15px}.vacation-person-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.vacation-person-card{display:flex;flex-direction:column;gap:14px;padding:17px;border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc}.vacation-card-heading h4{margin:0}.vacation-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vacation-example-box{border-color:#c7d2fe;background:#eef2ff}.vacation-example-box strong{color:#3730a3}.vacation-adjustment-preview{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 13px;border:1px solid #bbf7d0;border-radius:12px;background:#f0fdf4}.vacation-adjustment-preview span{color:#166534;font-size:12px;font-weight:700}.vacation-adjustment-preview strong{color:#166534;font-size:15px}.vacation-adjustment-history{margin-top:20px;padding-top:18px;border-top:1px solid #e2e8f0}.vacation-adjustment-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.vacation-adjustment-item{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;border:1px solid #e2e8f0;border-radius:13px;background:#fff}.vacation-adjustment-item>div{min-width:0}.vacation-adjustment-item strong,.vacation-adjustment-item span,.vacation-adjustment-item small{display:block}.vacation-adjustment-item span{margin-top:3px;color:#334155;font-size:13px}.vacation-adjustment-item small{margin-top:4px;color:#64748b;font-size:11.5px}.vacation-adjustment-item.is-reversed{opacity:.62;background:#f1f5f9}@media(max-width:980px){.vacation-settings-grid--carry,.vacation-person-summary,.vacation-person-grid,.vacation-settings-switches{grid-template-columns:repeat(2,minmax(0,1fr))}.vacation-notification-row{grid-template-columns:minmax(0,1fr) 130px 130px}}@media(max-width:720px){.vacation-admin-overlay{padding:0}.vacation-admin-overlay .vacation-admin-modal{width:100vw;height:100vh;height:100dvh;max-height:none;border-radius:0}.vacation-admin-header,.vacation-admin-tabs,.vacation-admin-content{padding-left:16px;padding-right:16px}.vacation-admin-section{padding:15px}.vacation-admin-section-title,.vacation-adjustment-item{flex-direction:column}.vacation-admin-section-title .agenda-btn,.vacation-adjustment-item .agenda-btn{width:100%}.vacation-settings-grid,.vacation-settings-grid--carry,.vacation-person-summary,.vacation-person-grid,.vacation-settings-switches,.vacation-inline-grid{grid-template-columns:1fr}.vacation-working-days{grid-template-columns:repeat(4,minmax(55px,1fr))}.vacation-notification-row,.vacation-notification-row--header{grid-template-columns:1fr}.vacation-notification-row--header{display:none}.vacation-channel-toggle{justify-content:space-between;padding-top:8px;border-top:1px solid #eef2f7}}.vacation-carry-section{padding:18px;border:1px solid #dbeafe;border-radius:16px;background:linear-gradient(180deg,#f8fbff,#fff)}.vacation-carry-example{margin-top:14px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:13px;background:#eff6ff}.vacation-carry-example strong{display:block;color:#1e3a8a;font-size:13px}.vacation-carry-example p{margin:5px 0 0;color:#475569;font-size:12.5px;line-height:1.55}.vacation-settings-grid--carry-limit{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.vacation-expiration-box{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:18px;align-items:start;margin-top:16px;padding:16px;border:1px solid #fed7aa;border-radius:14px;background:#fffaf3}.vacation-expiration-box>div:first-child strong{display:block;color:#9a3412;font-size:13px}.vacation-expiration-box>div:first-child p{margin:6px 0 0;color:#6b4f3a;font-size:12.5px;line-height:1.55}.vacation-settings-grid--expiration{grid-template-columns:repeat(2,minmax(0,1fr))}.vacation-entitlement-carry{display:flex;flex-direction:column;gap:12px;padding:15px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff}.vacation-auto-carry-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center;padding:13px 14px;border:1px solid #bfdbfe;border-radius:12px;background:#fff}.vacation-auto-carry-summary span{color:#475569;font-size:12px;font-weight:700}.vacation-auto-carry-summary strong{color:#1d4ed8;font-size:17px}.vacation-auto-carry-summary small{grid-column:1 / -1;color:#64748b;font-size:11.5px;line-height:1.45}@media(max-width:900px){.vacation-expiration-box,.vacation-settings-grid--carry-limit,.vacation-settings-grid--expiration{grid-template-columns:1fr}}.vacation-settings-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.vacation-email-routing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 20px;padding:16px;border:1px solid #dbeafe;border-radius:15px;background:#f8fbff}.vacation-email-routing label,.vacation-manual-carry-toggle{display:flex;flex-direction:column;gap:7px;color:#334155;font-size:13px;font-weight:700}.vacation-email-routing input,.vacation-email-routing select{width:100%;box-sizing:border-box;border:1px solid #d8e0ea;border-radius:11px;padding:10px 12px;background:#fff;color:#0f172a;font:inherit;font-size:14px}.vacation-email-routing input:focus,.vacation-email-routing select:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa2b}.vacation-carry-title-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.vacation-carry-title-row strong,.vacation-carry-title-row small{display:block}.vacation-carry-title-row strong{color:#0f172a;font-size:14px}.vacation-carry-title-row small{margin-top:5px;color:#64748b;font-size:12px;font-weight:500;line-height:1.5}.vacation-manual-carry-toggle{flex-direction:row;align-items:flex-start;gap:10px;margin:14px 0;padding:12px 14px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;cursor:pointer}.vacation-manual-carry-toggle input{width:17px;height:17px;margin:1px 0 0;flex:0 0 auto}.vacation-carry-total{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;border:1px solid #bbf7d0;border-radius:12px;background:#f0fdf4}.vacation-carry-total span{color:#166534;font-size:12px;font-weight:700}.vacation-carry-total strong{color:#15803d;font-size:16px}.vacation-adjustment-values{align-items:start}.vacation-admin-yearbar button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:900px){.vacation-settings-grid--three,.vacation-email-routing{grid-template-columns:1fr}}.agenda-page{width:100%;min-width:0;max-width:100%;padding:20px;color:#1f2937}.agenda-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:22px;min-width:0;margin-bottom:22px}.agenda-header>*{min-width:0}.agenda-header h1{margin:0;font-size:28px;font-weight:700;color:#111827;letter-spacing:-.01em}.agenda-header p{margin:4px 0 0;color:#6b7280;font-size:15px}.agenda-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;min-width:0}.agenda-btn{border:none;border-radius:11px;padding:10px 15px;font-weight:600;font-size:14px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.agenda-btn:hover{transform:translateY(-1px)}.agenda-btn:disabled{opacity:.62;cursor:not-allowed;transform:none}.agenda-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 10px 24px #2563eb2e}.agenda-btn.ghost{background:#fff;color:#1f2937;border:1px solid #e5e7eb}.agenda-btn.success{background:#dcfce7;color:#166534}.agenda-btn.warning{background:#ffedd5;color:#9a3412}.agenda-btn.danger{background:#fee2e2;color:#991b1b}.agenda-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:22px;min-width:0}.agenda-main,.agenda-side{min-width:0;max-width:100%;background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 14px 42px #0f172a0e}.agenda-main{padding:18px;min-width:0}.agenda-side{padding:18px;height:fit-content;position:sticky;top:20px}.agenda-side section+section{margin-top:22px;padding-top:18px;border-top:1px solid #eef2f7}.agenda-side h3{margin:0 0 10px;font-size:15px;font-weight:700;color:#111827}.agenda-side p{margin:0;color:#6b7280;font-size:14px}.agenda-toolbar{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);align-items:center;gap:16px;min-width:0;margin-bottom:16px}.agenda-toolbar h2{margin:0;text-align:center;font-size:18px;font-weight:700;text-transform:capitalize;color:#111827}.agenda-nav,.agenda-view-switch{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.agenda-nav button,.agenda-view-switch button{border:1px solid #e5e7eb;background:#fff;color:#374151;border-radius:10px;padding:8px 11px;cursor:pointer;font-weight:600;font-size:14px}.agenda-nav button:hover,.agenda-view-switch button:hover{background:#f9fafb}.agenda-view-switch button.active{background:#1f2937;color:#fff;border-color:#1f2937}.agenda-filters{display:flex;flex-wrap:wrap;gap:12px;min-width:0;margin-bottom:16px}.agenda-filters select{border:1px solid #e5e7eb;border-radius:11px;padding:10px 12px;background:#fff;color:#111827;width:min(100%,260px);min-width:0;font-size:14px}.agenda-loading,.agenda-empty{padding:36px;text-align:center;color:#6b7280;font-size:14px}.agenda-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #e5e7eb;border-radius:18px;overflow:hidden}.agenda-weekday{background:#f8fafc;padding:10px;font-weight:700;font-size:14px;color:#475569;text-align:center;border-bottom:1px solid #e5e7eb}.agenda-day{min-width:0;min-height:122px;padding:8px;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;background:#fff}.agenda-day:nth-child(7n+7){border-right:none}.agenda-day.muted{background:#fafafa;color:#9ca3af}.agenda-day.today{box-shadow:inset 0 0 0 2px #2563eb;background:#eff6ff}.agenda-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.agenda-day-header span{font-weight:700;font-size:14px}.agenda-day-header button{width:24px;height:24px;border:none;border-radius:8px;background:#eef2ff;color:#1d4ed8;font-weight:700;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.agenda-day-items{display:flex;flex-direction:column;gap:6px}.agenda-item{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;border-radius:10px;padding:6px 8px;font-size:11.5px;line-height:1.25;display:flex;flex-direction:column;gap:2px;border:1px solid transparent;border-left:4px solid transparent;cursor:pointer}.agenda-item:hover{filter:brightness(.98)}.agenda-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.agenda-item span{opacity:.82}.agenda-item.event{background:#ecfdf5;color:#065f46;border-color:#bbf7d0}.agenda-item.absence{background:#eff6ff;color:#1e40af;border-color:#bfdbfe}.agenda-item.absence.pending{background:#fffbeb;color:#92400e;border-color:#fde68a}.agenda-item.absence.refused,.agenda-item.absence.cancelled{background:#f3f4f6;color:#6b7280;border-color:#e5e7eb}.agenda-more{font-size:12px;color:#6b7280;font-weight:600;padding:4px 2px}.agenda-week-wrapper{width:100%;min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable;border:1px solid #e5e7eb;border-radius:18px}.agenda-week-table{width:100%;min-width:960px;border-collapse:collapse}.agenda-week-table th{background:#f8fafc;color:#475569;padding:11px;border-bottom:1px solid #e5e7eb;text-align:left;font-weight:700}.agenda-week-table th span,.agenda-week-table th strong{display:block;font-size:13px}.agenda-week-table td{vertical-align:top;min-height:86px;padding:10px;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb}.employee-cell{font-weight:700;font-size:14px;color:#111827;background:#fcfcfd;min-width:160px}.present-badge{display:inline-flex;border-radius:999px;padding:5px 9px;background:#f3f4f6;color:#6b7280;font-size:12px;font-weight:600}.agenda-list{display:flex;flex-direction:column;gap:12px}.agenda-list-card{width:100%;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;justify-content:space-between;gap:16px;padding:14px;border-radius:15px;border:1px solid #e5e7eb;background:#fff;text-align:left;cursor:pointer}.agenda-list-card:hover{border-color:#cbd5e1;background:#fcfcfd}.agenda-list-card strong{display:block;color:#111827;font-weight:700;font-size:14px}.agenda-list-card span{display:block;margin-top:4px;color:#6b7280;font-size:13px}.agenda-list-dates{color:#475569;font-size:13px;white-space:nowrap}.side-card{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;text-align:left;border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:12px;margin-bottom:10px;cursor:pointer}.side-card:hover{border-color:#cbd5e1}.side-card.pending{background:#fffbeb;border-color:#fde68a}.side-card strong{display:block;color:#111827;font-weight:700;font-size:14px}.side-card span,.side-card small{display:block;margin-top:4px;color:#6b7280;font-size:13px}.agenda-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:999;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}.agenda-modal{width:min(1000px,100%);min-width:0;max-width:100%;max-height:calc(100vh - 48px);overflow-y:auto;background:#fff;border-radius:22px;padding:20px;box-shadow:0 30px 90px #0f172a33}.agenda-modal--compact{width:min(620px,100%)}.agenda-modal-header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.agenda-modal-header h2{margin:0;color:#111827;font-size:22px;font-weight:700}.modal-close-btn{width:38px;height:38px;flex:0 0 38px;border:none;border-radius:12px;background:#f3f4f6;cursor:pointer;font-size:24px;color:#111827;display:flex;align-items:center;justify-content:center;line-height:1;padding:0 0 2px}.modal-close-btn:hover{background:#e5e7eb}.agenda-modal label,.agenda-detail-form label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-weight:600;font-size:14px;color:#374151}.agenda-modal input,.agenda-modal select,.agenda-modal textarea,.agenda-confirm-box textarea{width:100%;min-width:0;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;color:#111827;background:#fff}.agenda-modal input:focus,.agenda-modal select:focus,.agenda-modal textarea:focus,.agenda-confirm-box textarea:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd40}.agenda-modal textarea,.agenda-confirm-box textarea{min-height:90px;resize:vertical}.agenda-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}.agenda-checkbox-row{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:14px}.agenda-checkbox-row label{flex-direction:row;align-items:center;margin:0;font-weight:500}.agenda-checkbox-row input[type=checkbox]{width:16px;height:16px;padding:0}.agenda-modal-actions,.agenda-detail-actions,.agenda-confirm-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px}.agenda-detail-modal{width:min(760px,100%)}.agenda-detail-eyebrow{display:block;margin-bottom:4px;color:#6b7280;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.agenda-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.agenda-detail-field{padding:13px 14px;border:1px solid #e5e7eb;border-radius:14px;background:#fafafa}.agenda-detail-field--wide{grid-column:1 / -1}.agenda-detail-field span{display:block;margin-bottom:5px;color:#6b7280;font-size:12px;font-weight:600}.agenda-detail-field strong{color:#111827;font-size:14px}.agenda-detail-field p{margin:0;color:#374151;font-size:14px;line-height:1.5;white-space:pre-wrap}.agenda-detail-reason{background:#fff7ed;border-color:#fed7aa}.agenda-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px}.agenda-status--pending{background:#fef3c7;color:#92400e}.agenda-status--approved{background:#dcfce7;color:#166534}.agenda-status--refused{background:#fee2e2;color:#991b1b}.agenda-status--cancelled{background:#e5e7eb;color:#4b5563}.agenda-detail-history{margin-top:18px;padding-top:16px;border-top:1px solid #e5e7eb}.agenda-detail-history h3{margin:0 0 10px;font-size:15px}.agenda-detail-history>div{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;font-size:13px}.agenda-detail-history span,.agenda-detail-history small{color:#6b7280}.agenda-confirm-box{margin-top:20px;padding:16px;border-radius:14px;border:1px solid #e5e7eb;background:#f9fafb}.agenda-confirm-box--delete{background:#fef2f2;border-color:#fecaca}.agenda-confirm-box--refuse,.agenda-confirm-box--cancel{background:#fff7ed;border-color:#fed7aa}.agenda-confirm-box strong{display:block;margin-bottom:8px}.agenda-confirm-box p{margin:0;color:#4b5563;font-size:14px}.agenda-confirm-box textarea{width:100%;box-sizing:border-box}@media(max-width:1100px){.agenda-layout{grid-template-columns:1fr}.agenda-side{position:static}}@media(max-width:900px){.agenda-toolbar{grid-template-columns:1fr}.agenda-toolbar h2{text-align:left}.agenda-nav,.agenda-view-switch{width:100%}.agenda-month{grid-template-columns:1fr}.agenda-weekday{display:none}.agenda-day{min-height:auto;border-right:none}}@media(max-width:760px){.agenda-page{padding:16px}.agenda-header{flex-direction:column}.agenda-header-actions{width:100%}.agenda-header-actions .agenda-btn{flex:1}.agenda-toolbar{grid-template-columns:1fr}.agenda-toolbar h2{text-align:left}.agenda-month{grid-template-columns:1fr}.agenda-weekday{display:none}.agenda-day{min-height:auto;border-right:none}.agenda-filters,.agenda-modal-grid,.agenda-detail-grid{grid-template-columns:1fr;flex-direction:column}.agenda-filters select{width:100%}.agenda-list-card{flex-direction:column}.agenda-list-dates{white-space:normal}.agenda-detail-history>div{grid-template-columns:1fr;gap:3px}.agenda-modal-actions,.agenda-detail-actions,.agenda-confirm-actions{flex-direction:column-reverse}.agenda-modal-actions .agenda-btn,.agenda-detail-actions .agenda-btn,.agenda-confirm-actions .agenda-btn{width:100%}}.agenda-config-error{max-width:560px;margin:80px auto;padding:28px;text-align:center;background:#fff;border:1px solid #fecaca;border-radius:18px;box-shadow:0 16px 45px #0f172a14}.agenda-config-error h2{margin:0 0 8px;color:#991b1b;font-size:22px}.agenda-config-error p{margin:0 0 18px;color:#6b7280}.vacation-request-box{margin:16px 0;padding:16px;border:1px solid #bfdbfe;border-radius:16px;background:#eff6ff}.vacation-request-title{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:14px}.vacation-request-title strong,.vacation-request-title span{display:block}.vacation-request-title strong{color:#1e3a8a;margin-bottom:4px}.vacation-request-title span,.vacation-request-title small{color:#475569;font-size:13px;line-height:1.45}.vacation-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.vacation-preview-grid>div{padding:12px;border-radius:12px;background:#fff;border:1px solid #dbeafe}.vacation-preview-grid span{display:block;color:#64748b;font-size:12px;margin-bottom:5px}.vacation-preview-grid strong{color:#0f172a;font-size:14px}.vacation-preview-warning{margin-top:10px;padding:10px 12px;border:1px solid #fdba74;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:13px}.vacation-override-box{margin-top:12px;padding-top:12px;border-top:1px solid #bfdbfe}.vacation-override-box .checkbox-inline{display:flex;flex-direction:row;align-items:center;gap:8px}.vacation-side-balance{padding:14px;border:1px solid #bfdbfe;border-radius:15px;background:#eff6ff}.vacation-side-balance-main strong,.vacation-side-balance-main span,.vacation-side-balance-details span{display:block}.vacation-side-balance-main strong{color:#1d4ed8;font-size:24px;line-height:1.1}.vacation-side-balance-main span,.vacation-side-balance-details span{margin-top:4px;color:#475569;font-size:12px}.vacation-side-balance-details{margin-top:10px;padding-top:10px;border-top:1px solid #bfdbfe}.vacation-input-help{display:block;margin-top:1px;color:#64748b;font-size:11.5px;font-weight:500;line-height:1.45}@media(max-width:900px){.vacation-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.vacation-preview-grid{grid-template-columns:1fr}}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;min-width:0;min-height:100%;margin:0}html{background-color:#fafafa}body{min-width:320px;min-height:100vh;overflow-x:hidden;background-color:#fafafa;color:#213547;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none}main,section,article,aside,header,footer,nav{min-width:0}img,video,canvas{max-width:100%;height:auto}.responsive-table-wrapper,.table-responsive,.table-container{display:block;width:100%;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}button,input,select,textarea{font:inherit}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f9f9f9;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:dark){body{background-color:#242424}a:hover{color:#747bff}input[type=text],input[type=email],input[type=number],input[type=date],input[type=month],textarea,select{color:#242424}}
