.navbar{background:var(--white);border-bottom:1px solid var(--surface-variant);box-shadow:0 2px 8px #0000000f;padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 1.5rem}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{gap:.5rem;margin-right:2rem;text-decoration:none}.navbar-logo-img{border-radius:50%;display:block;height:44px;object-fit:contain;width:44px}.logo-text{color:var(--primary);font-family:var(--font-heading);font-size:1.3rem;font-weight:var(--fw-bold);letter-spacing:normal}.nav-menu{align-items:center;display:flex;flex:1 1;gap:2rem;list-style:none}.nav-item{position:relative}.nav-link{align-items:center;border-radius:8px;color:var(--on-surface);display:flex;font-size:.95rem;font-weight:var(--fw-semi);gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.nav-link:hover{background-color:var(--primary-fixed);color:var(--primary)}.badge-unread{background-color:var(--primary-container);border-radius:50%;color:var(--white);font-size:.75rem;font-weight:var(--fw-bold);height:20px;justify-content:center;margin-left:.5rem;width:20px}.badge-unread,.navbar-right{align-items:center;display:flex}.navbar-right{gap:1.5rem}.btn-register{background-color:var(--primary-container);border:none;border-radius:var(--radius-full);color:var(--white);cursor:pointer;font-size:.9rem;font-weight:var(--fw-bold);padding:.6rem 1.5rem;transition:all .2s ease}.btn-register:hover{background-color:var(--primary);box-shadow:0 6px 16px #b5270a33;transform:translateY(-2px)}.user-dropdown{position:relative}.btn-avatar{background:none;border:none;border-radius:50%;cursor:pointer;padding:0;transition:transform .2s ease}.btn-avatar:hover{transform:scale(1.05)}.avatar-img{border:2px solid var(--primary);border-radius:50%;height:40px;object-fit:cover;width:40px}.dropdown-menu{background:var(--white);border:1px solid var(--surface-variant);border-radius:12px;box-shadow:0 8px 24px #0000001f;margin-top:.5rem;min-width:180px;overflow:hidden;position:absolute;right:0;top:100%}.dropdown-item{align-items:center;background:none;border:none;color:var(--on-surface);cursor:pointer;display:flex;font-size:.95rem;gap:.75rem;padding:.75rem 1.25rem;text-align:left;text-decoration:none;transition:all .2s ease;width:100%}.dropdown-item:hover{background-color:var(--primary-fixed);color:var(--primary)}.dropdown-divider{background-color:var(--surface-variant);height:1px;margin:.5rem 0}.logout-btn,.logout-btn:hover{color:var(--error)}.logout-btn:hover{background-color:#ba1a1a14}.hamburger{background:none;border:none;color:var(--on-surface);cursor:pointer;display:none;padding:.5rem}.mobile-menu{background-color:var(--surface);border-top:1px solid var(--surface-variant);display:none;flex-direction:column;gap:.5rem;padding:1rem 1.5rem}.mobile-menu-link{align-items:center;background:none;border:none;border-radius:8px;color:var(--on-surface);cursor:pointer;display:flex;font-size:.95rem;font-weight:var(--fw-semi);gap:.75rem;padding:.75rem 1rem;text-align:left;text-decoration:none;transition:all .2s ease;width:100%}.mobile-menu-link:hover{background-color:var(--primary-fixed);color:var(--primary);padding-left:1.5rem}.mobile-menu-link.logout{color:var(--error)}.mobile-menu-link.logout:hover{background-color:#ba1a1a14;color:var(--error)}.mobile-menu-link.register{background-color:var(--primary-container);color:var(--white);justify-content:center;margin-top:.5rem}.mobile-menu-link.register:hover{background-color:var(--primary);padding-left:1rem}@media (max-width:768px){.nav-menu{display:none}.hamburger,.mobile-menu{display:flex}.navbar-logo{margin-right:1rem}.logo-text{font-size:1.1rem}.btn-register{display:none}}@media (max-width:480px){.navbar-container{padding:0 1rem}.logo-text{font-size:1rem}}.footer{background:var(--surface-container);border-top:1px solid var(--surface-variant);color:var(--on-surface);margin-top:auto;padding:4rem 0 1rem}.footer-container{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto 2rem;max-width:1200px;padding:0 1.5rem}.footer-section{display:flex;flex-direction:column}.footer-title{color:var(--primary);font-family:var(--font-heading);font-size:1.3rem;font-weight:var(--fw-bold);margin-bottom:1.5rem}.footer-description{color:var(--on-surface-variant);font-size:.9rem;line-height:1.6}.footer-heading{color:var(--on-surface);font-size:.95rem;font-weight:var(--fw-bold);letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.footer-links{display:flex;flex-direction:column;gap:.75rem;list-style:none}.footer-links li a{align-items:center;color:var(--on-surface-variant);display:flex;font-size:.9rem;text-decoration:none;transition:all .2s ease}.footer-links li a:hover{color:var(--primary);padding-left:.5rem}.contact-item{font-size:.9rem;margin-bottom:.75rem}.contact-item,.contact-item a{color:var(--on-surface-variant)}.contact-item a{transition:color .2s ease}.contact-item a:hover{color:var(--primary)}.footer-brand{color:var(--on-surface);font-size:.95rem;margin-bottom:.5rem}.footer-brand strong{color:var(--primary);font-weight:var(--fw-bold)}.footer-brand a{text-decoration:none}.footer-brand a:hover strong{text-decoration:underline}.footer-tagline{font-style:italic}.footer-bottom,.footer-tagline{color:var(--on-surface-variant);font-size:.85rem}.footer-bottom{border-top:1px solid var(--surface-variant);padding-top:1.5rem;text-align:center}@media (max-width:768px){.footer-container{gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.footer{padding:3rem 0 1rem}}@media (max-width:480px){.footer-container{gap:2rem;grid-template-columns:1fr}.footer-title{font-size:1.1rem}.footer-links li a:hover{padding-left:0}}.service-card-link{color:inherit;text-decoration:none}.service-card{background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-3xl);box-shadow:0 4px 12px #0000000f;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s ease}.service-card:hover{border-color:var(--primary);box-shadow:0 12px 32px #b5270a1f;transform:translateY(-8px)}.card-image-container{aspect-ratio:4/3;background:linear-gradient(135deg,var(--surface-container) 0,var(--surface-variant) 100%);overflow:hidden;position:relative;width:100%}.card-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.service-card:hover .card-image{transform:scale(1.06)}.card-badge{border-radius:var(--radius-full);font-size:.75rem;font-weight:var(--fw-bold);letter-spacing:.5px;padding:.5rem 1rem;position:absolute;right:12px;text-transform:uppercase;top:12px}.badge-location{background-color:var(--secondary-container)}.badge-animazione{background-color:var(--primary-container);color:var(--white)}.badge-allestimenti{background-color:var(--tertiary);color:var(--white)}.badge-food{background-color:#e0457b;color:var(--white)}.card-content{display:flex;flex-direction:column;flex-grow:1;padding:1.5rem}.card-title{color:var(--on-surface);font-size:1.1rem;font-weight:var(--fw-bold);line-height:1.4;margin-bottom:.75rem;max-height:2.8em;overflow:hidden;text-overflow:ellipsis}.card-location{align-items:center;color:var(--on-surface-variant);display:flex;font-size:.85rem;gap:.5rem;margin-bottom:.75rem}.card-location .material-symbols-outlined,.card-location svg{color:var(--primary);flex-shrink:0;font-size:16px}.card-price{color:var(--primary);font-size:1.2rem;font-weight:var(--fw-extrabold);margin-bottom:.75rem}.card-details{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.detail-item{align-items:center;color:var(--on-surface);display:flex;font-size:.85rem;gap:.4rem}.detail-item .material-symbols-outlined,.detail-item svg{color:var(--primary);font-size:16px}.card-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.meta-badge{background-color:var(--primary-fixed);border-radius:var(--radius-full);color:var(--primary);font-size:.75rem;font-weight:var(--fw-bold);padding:.35rem .7rem}.card-provider{border-top:1px solid var(--surface-variant);color:var(--on-surface-variant);font-size:.85rem;font-weight:var(--fw-semi);margin-top:auto;padding-top:.75rem}@media (max-width:480px){.card-image-container{aspect-ratio:4/3}.card-content{padding:1rem}.card-title{font-size:1rem}}.home-page{background:var(--background)}.hero{background:radial-gradient(1200px 500px at 85% -10%,#ff5c3b1a,#0000 60%),radial-gradient(900px 500px at 0 110%,#0052d214,#0000 55%),linear-gradient(180deg,var(--white) 0,var(--background) 100%);overflow:hidden;position:relative}.hero-inner{grid-gap:3rem;align-items:center;display:grid;gap:3rem;grid-template-columns:1.1fr .9fr;margin:0 auto;max-width:1160px;padding:4.5rem 1.5rem 4rem}.hero-content{display:flex;flex-direction:column;gap:1.4rem}.hero-eyebrow{align-items:center;align-self:flex-start;background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-full);box-shadow:0 2px 10px #0000000a;color:var(--primary);display:inline-flex;font-size:.85rem;font-weight:var(--fw-semi);gap:.45rem;padding:.4rem .9rem}.hero-title{color:var(--on-surface);font-family:var(--font-heading);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:var(--fw-extrabold);letter-spacing:-.02em;line-height:1.1;margin:0}.hero-subtitle{color:var(--primary);font-family:var(--font-accent);font-size:1.6rem;margin:0;transform:rotate(-1.5deg);transform-origin:left}.hero-search{display:flex;gap:.6rem;margin-top:.4rem;max-width:520px}.search-field{align-items:center;background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-full);box-shadow:0 6px 20px #0000000f;display:flex;flex:1 1;gap:.6rem;padding:.85rem 1.2rem;transition:border-color .2s ease,box-shadow .2s ease}.search-field:focus-within{border-color:var(--primary);box-shadow:0 8px 26px #b5270a1f}.search-field svg{color:var(--primary);flex-shrink:0}.search-input{background:none;border:none;color:var(--on-surface);flex:1 1;font-family:var(--font-primary);font-size:1rem;outline:none}.search-input::placeholder{color:var(--on-surface-variant);opacity:.7}.home-btn{align-items:center;border:none;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-family:var(--font-primary);font-size:1rem;font-weight:var(--fw-bold);gap:.55rem;justify-content:center;padding:.85rem 1.6rem;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;white-space:nowrap}.home-btn-primary{background:var(--primary);color:var(--white)}.home-btn-primary:hover{box-shadow:0 10px 26px #b5270a47;transform:translateY(-2px)}.home-btn-light{background:var(--white);color:var(--primary)}.home-btn-light:hover{box-shadow:0 12px 28px #0000002e;transform:translateY(-2px)}.hero-ctas{display:flex;flex-wrap:wrap;gap:.7rem}.hero-pill{align-items:center;background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-full);color:var(--on-surface);display:inline-flex;font-size:.92rem;font-weight:var(--fw-semi);gap:.45rem;padding:.55rem 1.1rem;text-decoration:none;transition:all .18s ease}.hero-pill:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.hero-art{align-items:center;display:flex;justify-content:center;position:relative}.hero-art:before{background:radial-gradient(circle,#ff5c3b2e,#ff5c3b00 70%);content:"";filter:blur(10px);position:absolute;width:78%;z-index:0}.hero-art:before,.hero-logo{aspect-ratio:1;border-radius:50%}.hero-logo{animation:float 6s ease-in-out infinite;background:var(--white);box-shadow:0 24px 60px #00000024;object-fit:contain;position:relative;width:min(420px,90%);z-index:1}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}.home-section{padding:4.5rem 0}.home-section.alt{background:var(--white)}.section-inner{margin:0 auto;max-width:1160px;padding:0 1.5rem}.section-head{margin-bottom:2.5rem;text-align:center}.section-head.row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;text-align:left}.section-title{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:var(--fw-extrabold);letter-spacing:-.01em;margin:0}.section-sub{color:var(--on-surface-variant);font-size:1.02rem;margin:.5rem 0 0}.section-link{align-items:center;color:var(--primary);display:inline-flex;font-weight:var(--fw-semi);gap:.35rem;text-decoration:none;white-space:nowrap}.section-link:hover{text-decoration:underline}.category-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.category-card{align-items:center;background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-2xl);color:var(--on-surface);display:flex;gap:1.2rem;padding:1.6rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.category-card:hover{box-shadow:0 16px 36px #0000001a;transform:translateY(-4px)}.cat-icon{align-items:center;border-radius:var(--radius-xl);color:var(--white);display:flex;flex-shrink:0;height:64px;justify-content:center;width:64px}.cat-location .cat-icon{background:linear-gradient(135deg,var(--primary-container),var(--primary))}.cat-location:hover{border-color:var(--primary)}.cat-animazione .cat-icon{background:linear-gradient(135deg,var(--secondary-container),var(--secondary))}.cat-animazione:hover{border-color:var(--secondary)}.cat-allestimenti .cat-icon{background:linear-gradient(135deg,var(--tertiary-fixed),var(--tertiary))}.cat-allestimenti:hover{border-color:var(--tertiary)}.cat-food .cat-icon{background:linear-gradient(135deg,#ffb3c8,#e0457b)}.cat-food:hover{border-color:#e0457b}.cat-body{flex:1 1}.cat-body h3{font-size:1.25rem;font-weight:var(--fw-bold);margin:0 0 .3rem}.cat-body p{font-size:.95rem;margin:0}.cat-arrow,.cat-body p{color:var(--on-surface-variant)}.cat-arrow{flex-shrink:0;transition:transform .2s ease}.category-card:hover .cat-arrow{transform:translateX(4px)}.steps{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.step{border:1px solid var(--surface-variant);border-radius:var(--radius-2xl);padding:2rem 1.5rem;text-align:center}.home-section.alt .step,.step{background:var(--background)}.step-num{align-items:center;background:var(--primary-fixed);border-radius:50%;color:var(--primary);display:flex;height:64px;justify-content:center;margin:0 auto 1.1rem;width:64px}.step h4{color:var(--on-surface);font-size:1.1rem;font-weight:var(--fw-bold);margin:0 0 .5rem}.step p{color:var(--on-surface-variant);font-size:.95rem;line-height:1.5;margin:0}.featured-grid,.values{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.value{padding:1.5rem;text-align:center}.value svg{color:var(--primary);margin-bottom:.8rem}.value h4{color:var(--on-surface);font-size:1.05rem;font-weight:var(--fw-bold);margin:0 0 .45rem}.value p{color:var(--on-surface-variant);font-size:.95rem;line-height:1.5;margin:0}.provider-cta{background:linear-gradient(135deg,var(--primary) 0,var(--primary-container) 100%);color:var(--white);overflow:hidden;position:relative}.provider-cta:before{background:#ffffff1f;border-radius:50%;content:"";filter:blur(40px);height:320px;position:absolute;right:-80px;top:-120px;width:320px}.provider-cta-inner{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin:0 auto;max-width:1160px;padding:3.2rem 1.5rem;position:relative;z-index:1}.provider-cta-inner h2{font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--fw-extrabold);margin:0 0 .4rem}.provider-cta-inner p{font-size:1.05rem;margin:0;opacity:.95}@media (max-width:900px){.hero-inner{gap:2rem;grid-template-columns:1fr;padding-top:3rem}.hero-art{order:-1}.hero-logo{animation:none;width:min(280px,70%)}.hero-eyebrow{align-self:center}.hero-content{align-items:center;text-align:center}.hero-subtitle{transform:none}.hero-search{margin-left:auto;margin-right:auto;width:100%}.featured-grid,.steps,.values{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.home-section{padding:3rem 0}.hero-search{flex-direction:column}.home-btn-primary{width:100%}.category-grid,.featured-grid,.steps,.values{grid-template-columns:1fr}.section-head.row{align-items:flex-start;flex-direction:column}.provider-cta-inner{align-items:center;flex-direction:column;text-align:center}}.search-page{background:var(--background);min-height:calc(100vh - 200px);padding:2rem 0}.search-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:280px 1fr;margin:0 auto;max-width:1400px;padding:0 1.5rem}.filter-toggle-btn{align-items:center;background:var(--primary-container);border:none;border-radius:var(--radius-full);color:var(--white);cursor:pointer;display:none;font-weight:var(--fw-bold);gap:.5rem;margin:0 1.5rem 1rem;padding:.75rem 1.5rem}.filters-sidebar{background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-2xl);box-shadow:0 2px 8px #0000000f;height:-webkit-fit-content;height:fit-content;padding:1.5rem;position:-webkit-sticky;position:sticky;top:100px}.filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.filters-header h3{color:var(--on-surface);font-size:1.2rem;font-weight:var(--fw-bold);margin:0}.close-filters{background:none;border:none;color:var(--on-surface-variant);cursor:pointer;display:none}.mostra-risultati-btn{display:none}.filter-group{border-bottom:1px solid var(--surface-variant);margin-bottom:1.5rem;padding-bottom:1.5rem}.filter-group:last-child{border-bottom:none}.filter-group h4{font-weight:var(--fw-bold);letter-spacing:.3px;margin:0 0 .75rem;text-transform:uppercase}.filter-group h4,.filter-group label{color:var(--on-surface);font-size:.95rem}.filter-group label{display:block;font-weight:var(--fw-semi);margin-bottom:.5rem}.tipo-tabs{display:flex;flex-direction:column;gap:.5rem}.tipo-tab{background:var(--white);border:1px solid var(--surface-variant);border-radius:8px;color:var(--on-surface-variant);cursor:pointer;font-size:.9rem;font-weight:var(--fw-semi);padding:.6rem .8rem;text-align:center;transition:all .2s ease;width:100%}.tipo-tab.active{background:var(--primary-container);border-color:var(--primary);color:var(--white)}.filter-group input[type=number],.filter-group input[type=text],.filter-group select{border:1px solid var(--surface-variant);border-radius:8px;font-family:var(--font-primary);font-size:.9rem;padding:.6rem .8rem;transition:all .2s ease;width:100%}.filter-group input:focus,.filter-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-fixed);outline:none}.age-inputs,.price-inputs{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.age-inputs input,.price-inputs input{flex:1 1}.age-inputs span,.price-inputs span{color:var(--on-surface-variant);font-weight:var(--fw-semi)}.price-slider{accent-color:var(--primary);cursor:pointer;width:100%}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:.5rem}.checkbox-group label,.radio-group label{align-items:center;color:#1c1c19;cursor:pointer;display:flex;font-weight:500;gap:.6rem;margin:0}.checkbox-group input[type=checkbox],.radio-group input[type=radio]{accent-color:#ff6b6b;cursor:pointer}.search-results{display:flex;flex-direction:column;gap:2rem}.results-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.results-header h2{color:#1c1c19;font-size:1.4rem;font-weight:700;margin:0}.sort-control{align-items:center;display:flex;gap:.75rem}.sort-control label{color:#1c1c19;font-weight:600;margin:0}.sort-control select{background:#fff;border:2px solid #e5e2de;border-radius:8px;cursor:pointer;font-family:Nunito,sans-serif;font-size:.9rem;padding:.6rem .8rem}.loading-state{align-items:center;color:#5a403b;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:3rem}.spinner{border:4px solid #ff6b6b33;border-top-color:#ff6b6b}.empty-state{gap:1rem;padding:4rem 2rem}.empty-icon{font-size:3rem}.empty-state h3{color:#1c1c19;font-size:1.3rem;margin:0}.empty-state p{color:#5a403b;max-width:400px}.pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:2rem}.pagination button{background:#fff;border:2px solid #e5e2de;border-radius:8px;cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:all .2s ease}.pagination button:hover:not(:disabled){background:linear-gradient(135deg,#ff6b6b,#ffb3b3);border-color:#ff6b6b;color:#fff}.pagination button:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#5a403b;font-weight:600}@media (max-width:1024px){.search-container{gap:1.5rem;grid-template-columns:240px 1fr}.services-grid{gap:1.5rem}}@media (max-width:768px){.search-page{padding:1rem 0}.search-container{gap:1rem;grid-template-columns:1fr;padding:0 1rem}.filter-toggle-btn{display:flex}.filters-sidebar{border:0;border-radius:0;bottom:0;display:flex;flex-direction:column;height:100vh;height:100dvh;left:-100%;max-width:100%;overflow:hidden;padding:0;position:fixed;top:0;transition:left .3s ease;width:100%;z-index:1001}.filters-sidebar.open{background:#fff;left:0}.filters-header{background:#fff;border-bottom:1px solid var(--surface-variant);flex-shrink:0;margin:0;padding:calc(.75rem + env(safe-area-inset-top)) 1.25rem .75rem}.filters-scroll{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:1rem 1.25rem}.close-filters{display:block}.mostra-risultati-btn{background:var(--primary);border:none;border-radius:0;box-shadow:0 -4px 12px #00000014;color:#fff;cursor:pointer;display:block;flex-shrink:0;font-size:1rem;font-weight:700;margin:0;padding:.95rem 1rem calc(.95rem + env(safe-area-inset-bottom));width:100%}.services-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.results-header{align-items:flex-start;flex-direction:column}.sort-control,.sort-control select{width:100%}}@media (max-width:480px){.services-grid{grid-template-columns:1fr}.results-header h2{font-size:1.2rem}.pagination{flex-wrap:wrap}}.contact-form-container{background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-2xl);box-shadow:0 4px 12px #0000000f;margin:0 auto;max-width:600px;padding:2.5rem}.contact-form-header{margin-bottom:2rem;text-align:center}.contact-form-header h3{color:var(--on-surface);font-family:var(--font-heading);font-size:1.8rem;font-weight:var(--fw-bold);margin-bottom:.5rem}.contact-form-header p{color:var(--on-surface-variant);font-size:.95rem}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{gap:.6rem}.form-group label{color:var(--on-surface);font-weight:var(--fw-semi)}.form-group input,.form-group textarea{border:1px solid var(--surface-variant);border-radius:12px;color:var(--on-surface);font-family:var(--font-primary);font-size:.95rem;padding:.85rem 1.1rem;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-fixed);outline:none}.form-group textarea{font-family:var(--font-primary)}.status-message{border-radius:12px;font-size:.95rem;font-weight:var(--fw-semi);padding:1rem}.status-message.success{background-color:#2ecc711a;border-left:4px solid var(--success);color:var(--success-dark)}.status-message.error{background-color:#ba1a1a1a;border-left:4px solid #dc3545;color:var(--error)}.status-message svg{flex-shrink:0}.btn-submit{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ffb3b3);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;margin-top:1rem;padding:1rem 2rem;transition:all .2s ease}.btn-submit:hover:not(:disabled){box-shadow:0 8px 20px #ff6b6b4d;transform:translateY(-3px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.contact-form-container{border-radius:12px;padding:2rem}.contact-form-header h3{font-size:1.5rem}}@media (max-width:480px){.contact-form-container{padding:1.5rem}.contact-form-header h3{font-size:1.3rem}.btn-submit{padding:.9rem 1.5rem}}.dettaglio-page{background:var(--background);min-height:calc(100vh - 200px);padding:1.5rem 0 3rem}.dettaglio-page.error,.dettaglio-page.loading{align-items:center;color:var(--on-surface-variant);display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:calc(100vh - 200px)}.error-container{background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-2xl);box-shadow:0 4px 16px #0000000f}.error-container svg{color:var(--error)}.error-container h2{color:var(--on-surface)}.breadcrumbs,.error-container p{color:var(--on-surface-variant)}.breadcrumbs a{color:var(--primary)}.dettaglio-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 400px;margin:0 auto;max-width:1400px;padding:0 1.5rem}.dettaglio-main{display:flex;flex-direction:column;gap:2rem}.gallery-section{background:var(--white);border:1px solid var(--surface-variant);border-radius:var(--radius-2xl);box-shadow:0 4px 12px #0000000f;overflow:hidden}.main-image{background:linear-gradient(135deg,#f5f5f5,#f0f0f0);height:400px;overflow:hidden;position:relative;width:100%}.main-image img{height:100%;object-fit:cover;width:100%}.badge{background:linear-gradient(135deg,#ff6b6b,#ffb3b3);border-radius:20px;color:#fff;font-size:.85rem;position:absolute;right:1rem;top:1rem}.thumbnails{background:#fff;display:flex;gap:.5rem;overflow-x:auto;padding:1rem}.thumbnail{background:none;border:2px solid #e5e2de;border-radius:12px;cursor:pointer;flex-shrink:0;height:80px;overflow:hidden;padding:0;transition:all .2s ease;width:80px}.thumbnail img{height:100%;object-fit:cover;width:100%}.thumbnail.active{box-shadow:0 0 0 3px #ff6b6b33}.thumbnail.active,.thumbnail:hover{border-color:#ff6b6b}.info-section{background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000001a;padding:2rem}.header-info{border-bottom:2px solid #e5e2de;margin-bottom:2rem;padding-bottom:1.5rem}.header-info h1{font-family:Fredoka One,cursive;font-weight:900;line-height:1.3;margin:0 0 1rem}.price-large{color:#ff6b6b;font-size:1.5rem;font-weight:800}.description-section{margin-bottom:2rem}.age-section h3,.description-section h3,.tags-section h3{color:#1c1c19;font-size:1.2rem;font-weight:700;margin:0 0 1rem}.description-section p{color:#5a403b;line-height:1.8;margin:0;white-space:pre-wrap}.details-grid{grid-gap:1.5rem;border-bottom:2px solid #e5e2de;border-top:2px solid #e5e2de;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:2rem 0;padding:2rem 0}.detail-box{align-items:flex-start;display:flex;gap:1rem}.detail-box svg{color:#ff6b6b;flex-shrink:0;margin-top:.25rem}.detail-box strong{color:#1c1c19;display:block;font-size:.95rem;margin-bottom:.25rem}.detail-box p{color:#5a403b;margin:0}.age-section,.tags-section{margin-bottom:1.5rem}.age-section p{color:#5a403b;font-size:1.1rem;margin:0}.tags{display:flex;flex-wrap:wrap;gap:.75rem}.tag{background-color:#f5f5f5;border-radius:20px;color:#1c1c19;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.dettaglio-sidebar{gap:2rem}.dettaglio-sidebar,.provider-card{display:flex;flex-direction:column}.provider-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000001a;gap:1rem;padding:1.5rem}.provider-header{align-items:flex-start;border-bottom:2px solid #e5e2de;display:flex;gap:1rem;padding-bottom:1rem}.provider-avatar{border-radius:50%;flex-shrink:0;height:80px;object-fit:cover;width:80px}.provider-info h3{color:#1c1c19;font-size:1.1rem;font-weight:700;margin:0 0 .25rem}.provider-info p{color:#5a403b;font-size:.9rem;margin:0}.provider-description{color:#5a403b;font-size:.95rem;line-height:1.6}.provider-description p{margin:0}.btn-primary{background:linear-gradient(135deg,#ff6b6b,#ffb3b3)}.btn-primary:hover{box-shadow:0 6px 16px #ff6b6b66}.btn-outline{background:#0000;border:2px solid #ff6b6b;color:#ff6b6b}.btn-outline:hover{background:linear-gradient(135deg,#ff6b6b,#ffb3b3);color:#fff}@media (max-width:1024px){.dettaglio-container{gap:1.5rem;grid-template-columns:1fr}.dettaglio-sidebar{order:-1}.main-image{height:300px}}@media (max-width:768px){.dettaglio-page{padding:1rem 0 2rem}.info-section{padding:1.5rem}.header-info h1{font-size:1.5rem}.details-grid{gap:1rem;grid-template-columns:1fr;margin:1.5rem 0;padding:1.5rem 0}.main-image{height:250px}}@media (max-width:480px){.dettaglio-container{padding:0 1rem}.breadcrumbs{font-size:.8rem;padding:0 1rem 1rem}.header-info h1,.price-large{font-size:1.3rem}.main-image{height:200px}.thumbnail{height:60px;width:60px}}.main-image img.zoomable{cursor:zoom-in}.lightbox-overlay{align-items:center;background:#000000e0;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:1000}.lightbox-image{border-radius:6px;box-shadow:0 10px 40px #00000080;max-height:90vh;max-width:92vw;object-fit:contain}.lightbox-close{height:44px;right:1.5rem;top:1.25rem;width:44px}.lightbox-close,.lightbox-nav{align-items:center;background:#ffffff1f;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;justify-content:center;position:absolute}.lightbox-nav{height:52px;top:50%;transform:translateY(-50%);width:52px}.lightbox-nav.prev{left:1.5rem}.lightbox-nav.next{right:1.5rem}.lightbox-close:hover,.lightbox-nav:hover{background:#ffffff40}.listino-section .listino-voci{display:flex;flex-direction:column;gap:1rem}.listino-voce{background:#fffaf8;border:1px solid #ece3df;border-radius:12px;padding:1rem 1.1rem}.listino-voce-head{align-items:baseline;display:flex;gap:1rem;justify-content:space-between}.listino-voce-head strong{color:#1c1c19;font-size:1.1rem}.listino-voce-prezzo{color:#b5270a;font-weight:800;white-space:nowrap}.listino-voce-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}.listino-chip{background:#fdeee9;border-radius:999px;color:#5a403b;font-size:.85rem;font-weight:600;padding:.25rem .6rem}.listino-include,.listino-opzioni{color:#5a403b;margin:.5rem 0 0;padding-left:1.2rem}.listino-opzioni{list-style:none}.listino-opzioni li{border-bottom:1px dashed #ece3df;padding:.1rem 0}.listino-note{color:#7a6a64;font-size:.9rem;font-style:italic;margin:.6rem 0 0}.listino-extra-block{margin-top:1rem}.listino-extra-block h4{color:#5a403b;margin:0 0 .5rem}.profilo-page{background:#fdf9f5;min-height:calc(100vh - 200px);padding:1.5rem 0 3rem}.profilo-page.error,.profilo-page.loading{align-items:center;color:#5a403b;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:calc(100vh - 200px)}.breadcrumbs{color:#5a403b;font-size:.9rem;margin:0 auto;max-width:1400px;padding:0 1.5rem 1.5rem}.breadcrumbs a{color:#b5270a;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.provider-header-section{background:#fff;box-shadow:0 2px 12px #0000000f;margin-bottom:2rem;padding:2.5rem 1.5rem}.header-content{align-items:flex-start;display:flex;gap:2.5rem;margin:0 auto;max-width:1400px}.header-avatar{flex-shrink:0}.avatar{border-radius:12px;box-shadow:0 4px 12px #0000001f;height:140px;object-fit:cover;width:140px}.header-info{flex:1 1}.header-info h1{color:#1c1c19;font-size:2rem;font-weight:800;margin:0 0 .75rem}.header-info .description{color:#5a403b;font-size:1.05rem;line-height:1.6;margin:0 0 1.25rem;max-width:600px}.location-info{align-items:center;color:#5a403b;display:flex;font-size:1rem;gap:.75rem}.location-info svg{color:#b5270a}.header-info .header-referente{color:#5a403b;font-size:1.05rem;font-weight:600;margin:-.4rem 0 .9rem}.header-meta{display:flex;flex-wrap:wrap;gap:.6rem}.meta-chip{align-items:center;background:#fdeee9;border-radius:999px;color:#5a403b;display:inline-flex;font-size:.95rem;font-weight:600;gap:.4rem;padding:.4rem .8rem}.meta-chip svg{color:#b5270a}.profilo-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 400px;margin:0 auto;max-width:1400px;padding:0 1.5rem}.profilo-main{display:flex;flex-direction:column}.services-section h2{color:#1c1c19;font-size:1.5rem;font-weight:700;margin:0 0 2rem}.services-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.empty-state{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:3rem}.profilo-sidebar{display:flex;flex-direction:column;gap:2rem}.contact-info-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:1.5rem}.contact-info-card h3{color:#1c1c19;font-size:1.2rem;font-weight:700;margin:0 0 1.25rem}.contact-item{align-items:center;color:#5a403b;display:flex;font-size:.95rem;gap:.75rem;margin-bottom:1rem}.contact-item:last-child{margin-bottom:0}.contact-item svg{color:#b5270a;flex-shrink:0}.contact-item a{color:#b5270a;text-decoration:none;transition:all .2s ease}.contact-item a:hover{text-decoration:underline}.btn{padding:.8rem 1.5rem}@media (max-width:1024px){.profilo-container{gap:1.5rem;grid-template-columns:1fr}.profilo-sidebar{order:-1}.header-content{gap:1.5rem}.avatar{height:100px;width:100px}.header-info h1{font-size:1.5rem}}@media (max-width:768px){.profilo-page{padding:1rem 0 2rem}.provider-header-section{margin-bottom:1.5rem;padding:1.5rem}.header-content{align-items:center;flex-direction:column;gap:1.5rem;text-align:center}.avatar{height:120px;width:120px}.header-info h1{font-size:1.4rem}.services-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.profilo-container{padding:0 1rem}}@media (max-width:480px){.breadcrumbs{font-size:.8rem;padding:0 1rem 1rem}.avatar{height:100px;width:100px}.header-info h1{font-size:1.2rem}.services-grid{grid-template-columns:1fr}.contact-info-card{padding:1rem}}.modal-overlay{align-items:center;animation:modal-fade .15s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1c1c1980;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.modal-card{animation:modal-pop .18s ease;background:#fff;background:var(--white,#fff);border:1px solid #e5e2de;border:1px solid var(--surface-variant,#e5e2de);border-radius:20px;border-radius:var(--radius-2xl,20px);box-shadow:0 20px 50px #0000002e;max-width:420px;padding:2rem 1.75rem 1.5rem;position:relative;text-align:center;width:100%}.modal-close{background:none;border:none;border-radius:9999px;border-radius:var(--radius-full,9999px);color:#5a403b;color:var(--on-surface-variant,#5a403b);cursor:pointer;display:inline-flex;padding:.25rem;position:absolute;right:.75rem;top:.75rem}.modal-close:hover{background:#f1ede9;background:var(--surface-container,#f1ede9)}.modal-icon{align-items:center;background:#ffdad3;background:var(--primary-fixed,#ffdad3);border-radius:9999px;border-radius:var(--radius-full,9999px);color:#b5270a;color:var(--primary,#b5270a);display:inline-flex;height:56px;justify-content:center;margin:0 auto 1rem;width:56px}.modal-title{color:#1c1c19;color:var(--on-surface,#1c1c19);font-size:1.3rem;margin:0 0 .6rem}.modal-message{color:#5a403b;color:var(--on-surface-variant,#5a403b);line-height:1.55;margin:0 0 1.5rem;white-space:pre-line}.modal-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.modal-actions .btn{min-width:130px}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.support-textarea{background:#fdf9f5;background:var(--surface,#fdf9f5);border:1px solid #e5e2de;border:1px solid var(--surface-variant,#e5e2de);border-radius:8px;border-radius:var(--radius-md,8px);color:#1c1c19;color:var(--on-surface,#1c1c19);font:inherit;margin-bottom:1.25rem;padding:.75rem;resize:vertical;width:100%}.support-textarea:focus{border-color:#b5270a;border-color:var(--primary,#b5270a);outline:none}.plan-options{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.plan-option{align-items:center;background:#fff;background:var(--white,#fff);border:2px solid #e5e2de;border:2px solid var(--surface-variant,#e5e2de);border-radius:12px;border-radius:var(--radius-lg,12px);cursor:pointer;display:flex;flex:1 1 140px;flex-direction:column;gap:.25rem;min-width:140px;padding:1.1rem 1rem;position:relative;transition:border-color .15s ease,transform .1s ease}.plan-option:hover:not(:disabled){border-color:#b5270a;border-color:var(--primary,#b5270a);transform:translateY(-2px)}.plan-option:disabled{cursor:default;opacity:.6}.plan-option.featured{background:#ffdad3;background:var(--primary-fixed,#ffdad3);border-color:#b5270a;border-color:var(--primary,#b5270a)}.plan-price{color:#1c1c19;color:var(--on-surface,#1c1c19);font-size:1.5rem;font-weight:800;line-height:1}.plan-price span{font-size:.85rem}.plan-price span,.plan-sub{color:#5a403b;color:var(--on-surface-variant,#5a403b);font-weight:600}.plan-sub{font-size:.9rem}.plan-badge{background:#b5270a;background:var(--primary,#b5270a);border-radius:999px;color:#fff;font-size:.7rem;font-weight:700;padding:.15rem .5rem;position:absolute;top:-10px}.dashboard-page{background:#fdf9f5;min-height:calc(100vh - 200px);padding:2rem 0}.dashboard-page.loading{align-items:center;color:#5a403b;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:calc(100vh - 200px)}.dashboard-container{margin:0 auto;max-width:1400px;padding:0 1.5rem}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2.5rem}.dashboard-header h1{color:#1c1c19;font-size:2rem;font-weight:800;margin:0}.btn{gap:.6rem;padding:.8rem 1.6rem}.btn-primary:hover{box-shadow:0 6px 16px #b5270a66;transform:translateY(-2px)}.error-message{margin-bottom:2rem}.error-message p{margin:0}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;gap:1.25rem;padding:1.5rem;transition:all .2s ease}.stat-card:hover{box-shadow:0 6px 16px #b5270a1f;transform:translateY(-4px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#ffdad3,#ffe9e3);border-radius:12px;color:#b5270a;display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.stat-content{display:flex;flex-direction:column}.stat-number{color:#1c1c19;font-size:2rem;font-weight:800;line-height:1}.stat-label{color:#5a403b;font-size:.85rem;font-weight:600;margin-top:.25rem}.dashboard-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr}.dashboard-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:2rem}.section-header{align-items:center;border-bottom:2px solid #e5e2de;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.section-header h2{color:#1c1c19;font-size:1.3rem;font-weight:700;margin:0}.service-count{background:linear-gradient(135deg,#b5270a,#ff5c3b);border-radius:20px;color:#fff;font-size:.85rem;font-weight:700;padding:.4rem .8rem}.view-all{color:#b5270a;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease}.view-all:hover{text-decoration:underline}.services-list{display:flex;flex-direction:column;gap:1rem}.service-item{align-items:center;border:1px solid #e5e2de;border-radius:8px;display:flex;gap:1.25rem;padding:1rem;transition:all .2s ease}.service-item:hover{background-color:#f8f9fa;border-color:#b5270a}.service-image{border-radius:8px;flex-shrink:0;height:100px;overflow:hidden;position:relative;width:100px}.service-image img{height:100%;object-fit:cover;width:100%}.service-type{background:linear-gradient(135deg,#b5270a,#ff5c3b);border-radius:4px;color:#fff;font-size:.7rem;font-weight:700;padding:.3rem .6rem;position:absolute;right:.5rem;top:.5rem}.service-details{flex:1 1}.service-details h3{color:#1c1c19;font-size:1.1rem;font-weight:700;margin:0 0 .25rem}.service-city{color:#5a403b;font-size:.85rem;margin:.25rem 0}.service-price{color:#b5270a;font-weight:700;margin:.25rem 0 0}.service-actions{display:flex;gap:.5rem}.btn-action{align-items:center;background:#fff;border:1px solid #e5e2de;border-radius:6px;color:#5a403b;cursor:pointer;display:flex;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.btn-action:hover:not(:disabled){color:#fff}.btn-action.edit:hover{background:#b5270a;border-color:#b5270a}.btn-action.delete:hover{background:#e74c3c;border-color:#e74c3c}.btn-action:disabled{cursor:not-allowed;opacity:.6}.spinner-small{height:16px;width:16px}.messages-list{display:flex;flex-direction:column;gap:1rem}.message-item{border:1px solid #e5e2de;border-radius:8px;padding:1rem}.message-item:hover{border-color:#b5270a}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.message-header strong{color:#1c1c19;font-size:.95rem}.unread-badge{background:#b5270a;border-radius:12px;color:#fff;font-size:.7rem;font-weight:700;padding:.25rem .6rem}.message-text{color:#5a403b;font-size:.9rem;line-height:1.5;margin:.5rem 0}.message-time{color:#5a403b;font-size:.8rem;margin:0}.empty-state{padding:2rem}.empty-state p{font-size:.95rem;margin:0 0 1rem}@media (max-width:1024px){.dashboard-grid{grid-template-columns:1fr}.service-item{gap:1rem}}@media (max-width:768px){.dashboard-page{padding:1rem 0}.dashboard-container{padding:0 1rem}.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.dashboard-header h1{font-size:1.5rem}.stats-grid{gap:1rem;grid-template-columns:1fr;margin-bottom:2rem}.dashboard-section{padding:1.5rem}.service-item{align-items:flex-start;flex-direction:column;gap:.75rem}.service-actions{justify-content:flex-end;width:100%}}@media (max-width:480px){.dashboard-header h1{font-size:1.3rem}.btn{font-size:.9rem;padding:.7rem 1.2rem}.stat-card{gap:1rem;padding:1rem}.stat-number{font-size:1.5rem}.section-header h2{font-size:1.1rem}}.service-badges{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}.service-badge{border-radius:999px;display:inline-block;font-size:.72rem;font-weight:600;line-height:1.4;padding:2px 8px}.service-badge.in-attesa{background:#fff4e0;color:#9a6700}.service-badge.rifiutata{background:#fde2e1;color:#b42318;max-width:100%;white-space:normal}.service-badge.approvata{background:#e3f5e8;color:#1a7f37}.service-badge.inactive{background:#eceff1;color:#607d8b}.onboarding-card{background:#fff;border:1px solid #ffdad3;border:1px solid var(--primary-fixed,#ffdad3);border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:2rem;padding:1.5rem}.onboarding-head h2{font-size:1.25rem;margin:0 0 .25rem}.onboarding-head p{color:#5a403b;color:var(--on-surface-variant,#5a403b);font-size:.95rem;margin:0 0 1.25rem}.onboarding-steps{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.onboarding-step{align-items:center;background:#fdf9f5;background:var(--surface,#fdf9f5);border:1px solid #e5e2de;border:1px solid var(--surface-variant,#e5e2de);border-radius:10px;display:flex;gap:1rem;padding:.9rem 1rem}.onboarding-step.active{background:#fff;border-color:#b5270a;border-color:var(--primary,#b5270a)}.onboarding-step-icon{color:#c8c4bf;color:var(--surface-variant,#c8c4bf);display:flex}.onboarding-step.done .onboarding-step-icon{color:#2ecc71;color:var(--success,#2ecc71)}.onboarding-step-body{display:flex;flex:1 1;flex-direction:column}.onboarding-step-body strong{font-size:1rem}.onboarding-step.done .onboarding-step-body strong{color:#5a403b;color:var(--on-surface-variant,#5a403b);text-decoration:line-through}.onboarding-step-body span{color:#5a403b;color:var(--on-surface-variant,#5a403b);font-size:.85rem}.onboarding-step-cta{align-items:center;border:1px solid #b5270a;border:1px solid var(--primary,#b5270a);border-radius:8px;color:#b5270a;color:var(--primary,#b5270a);display:inline-flex;font-size:.9rem;font-weight:600;gap:.35rem;padding:.5rem .9rem;text-decoration:none;white-space:nowrap}.onboarding-step-cta.primary{background:#b5270a;background:var(--primary,#b5270a);color:#fff}.onboarding-step-cta.disabled{border-color:#d6d2ce;color:#9e9e9e;cursor:not-allowed}@media (max-width:600px){.onboarding-step{flex-wrap:wrap}.onboarding-step-cta{justify-content:center;width:100%}}.dashboard-title{align-items:center;display:flex;gap:.75rem}.piano-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:700;gap:.3rem;letter-spacing:.04em;padding:.2rem .6rem;text-transform:uppercase}.piano-badge.free{background:#e5e2de;background:var(--surface-variant,#e5e2de);color:#5a403b;color:var(--on-surface-variant,#5a403b)}.piano-badge.pro{background:#ffe16d;background:var(--tertiary-fixed,#ffe16d);color:#5a4a00}.upgrade-banner{border-radius:10px;font-size:.95rem;margin-bottom:1.25rem;padding:.9rem 1.1rem}.upgrade-banner.success{background:#e3f5e8;color:#1a7f37}.upgrade-banner.cancel{background:#f1ede9;background:var(--surface-container,#f1ede9);color:#5a403b;color:var(--on-surface-variant,#5a403b)}.pro-card{align-items:center;background:linear-gradient(135deg,#ffdad3,#fff);background:linear-gradient(135deg,var(--primary-fixed,#ffdad3),#fff);border:1px solid #ffdad3;border:1px solid var(--primary-fixed,#ffdad3);border-radius:12px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem;padding:1.25rem 1.5rem}.pro-card-text{flex:1 1 300px;min-width:0}.pro-card-text h2{align-items:center;color:#b5270a;color:var(--primary,#b5270a);display:flex;font-size:1.15rem;gap:.4rem;margin:0 0 .25rem}.pro-card-text p{color:#5a403b;color:var(--on-surface-variant,#5a403b);margin:0}.pro-scadenza{align-items:center;color:#5a4a00;display:flex;font-size:.9rem;gap:.4rem;margin:-.5rem 0 1.5rem}.messages-locked{color:#5a403b;color:var(--on-surface-variant,#5a403b);padding:1.5rem 1rem;text-align:center}.messages-locked p{margin:.75rem 0 1rem}.services-upgrade-hint{align-items:center;background:#fdf6f3;background:var(--surface-variant,#fdf6f3);border:1px dashed #e0d3cd;border:1px dashed var(--outline,#e0d3cd);border-radius:12px;color:#5a403b;color:var(--on-surface-variant,#5a403b);display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding:1.25rem 1rem;text-align:center}.services-upgrade-hint p{margin:0 0 .5rem}.pro-card-actions{align-items:stretch;flex-direction:column;flex-shrink:0}.pro-risparmio{background:#ffffff40;border-radius:999px;display:inline-block;font-size:.72rem;font-weight:700;margin-left:.4rem;padding:.1rem .4rem}.voci-listino{gap:1rem}.voce-card,.voci-listino{display:flex;flex-direction:column}.voce-card{background:#fffaf8;border:1px solid #e7dad4;border-radius:12px;gap:.75rem;padding:1rem}.voce-card.is-extra{background:#f6f1ee}.voce-head{align-items:center;display:flex;gap:.5rem}.voce-titolo{flex:1 1;font-size:1rem;font-weight:700}.voce-remove{align-items:center;background:#0000;border:none;color:#b5270a;cursor:pointer;display:flex;padding:.3rem}.voce-row{display:flex;flex-wrap:wrap;gap:.75rem}.voce-field{display:flex;flex:1 1;flex-direction:column;gap:.3rem;min-width:120px}.voce-field label{color:#5a403b;font-size:.85rem;font-weight:600}.opzione-row{align-items:center;display:flex;gap:.5rem;margin-bottom:.4rem}.opzione-row input:first-child{flex:2 1}.opzione-row input:nth-child(2){flex:1 1;min-width:90px}.btn-sm{font-size:.9rem;padding:.4rem .7rem}.btn-extra,.btn-sm{align-self:flex-start}.voci-extra-title{color:#5a403b;margin:.5rem 0 0}.voci-limite{background:#fdeee9;border:1px dashed #e0b6aa;border-radius:12px;color:#5a403b;padding:.9rem 1rem;text-align:center}.voci-limite p{margin:0 0 .6rem}.crea-servizio-page{background:#fdf9f5;min-height:calc(100vh - 200px);padding:2rem 0}.avatar-edit{align-items:center;display:flex;flex-wrap:wrap;gap:1.25rem}.avatar-edit-img{background:#f5f5f5;border:2px solid #eee;border-radius:50%;flex-shrink:0;height:96px;object-fit:cover;width:96px}.avatar-edit-actions{display:flex;flex-direction:column;gap:.5rem}.link-button{background:none;border:none;color:#d6336c;color:var(--color-primary,#d6336c);cursor:pointer;font:inherit;font-weight:600;padding:0;text-decoration:underline}.pro-card-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.blog-admin .btn{width:auto}.blog-admin .admin-table td{vertical-align:middle}.modifica-servizio-page{background:#fdf9f5;min-height:calc(100vh - 200px);padding:2rem 0}.modifica-page.loading{color:#5a403b;flex-direction:column;gap:1rem}.modifica-page.error,.modifica-page.loading{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 200px)}.error-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;gap:1.5rem;max-width:500px;padding:3rem;text-align:center}.error-container svg{color:#e74c3c}.error-container h2{color:#1c1c19;font-size:1.5rem;margin:0}.error-container p{color:#5a403b;margin:0}.form-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;margin:0 auto;max-width:800px;padding:2.5rem}.form-container h1{color:#1c1c19;font-size:1.8rem;font-weight:800;margin:0 0 2rem}.servizio-form{display:flex;flex-direction:column;gap:2rem}.error-message{margin-bottom:1rem}fieldset{border:none;display:flex;flex-direction:column;gap:1.25rem;margin:0;padding:0}legend{border-bottom:2px solid #e5e2de;color:#1c1c19;font-size:1.1rem;font-weight:700;margin-bottom:.5rem;padding:0 0 .75rem}.form-group{gap:.5rem}.form-group label{font-size:.95rem;font-weight:600}.form-group input[type=email],.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{border:2px solid #e5e2de;border-radius:8px;color:#1c1c19;font-family:Nunito,sans-serif;font-size:.95rem;padding:.75rem 1rem;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#b5270a;box-shadow:0 0 0 3px #b5270a1a;outline:none}.form-group textarea{min-height:120px;resize:vertical}.form-row{grid-gap:1.25rem;gap:1.25rem}.checkbox-group{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.checkbox-group label{align-items:center;color:#1c1c19;cursor:pointer;display:flex;font-weight:500;gap:.6rem;margin:0}.checkbox-group input[type=checkbox]{accent-color:#b5270a;cursor:pointer;height:18px;width:18px}fieldset>h3{color:#1c1c19;font-size:1rem;font-weight:700;margin:0 0 1rem}.upload-area{margin-top:1rem;position:relative}#foto{display:none}.upload-label{align-items:center;background:#f8f9fa;border:2px dashed #e5e2de;border-radius:8px;color:#5a403b;cursor:pointer;display:flex;flex-direction:column;gap:.75rem;justify-content:center;padding:2.5rem;transition:all .2s ease}.upload-label:hover{background:#fff8fa;border-color:#b5270a;color:#b5270a}.upload-label svg{color:currentColor}.upload-label p{font-size:1rem;font-weight:600;margin:0}.upload-label span{color:#5a403b;font-size:.8rem}.foto-preview{margin-top:1.5rem}.foto-preview h3{color:#1c1c19;font-size:1rem;font-weight:700;margin:0 0 1rem}.preview-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.preview-item{background:#f5f5f5;border-radius:8px;height:120px;overflow:hidden;position:relative;width:120px}.preview-item img{height:100%;object-fit:cover;width:100%}.remove-btn{align-items:center;background:#ff4757e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;position:absolute;right:.5rem;top:.5rem;transition:all .2s ease;width:32px}.remove-btn:hover{background:#ff4757;transform:scale(1.1)}.form-actions{border-top:2px solid #e5e2de;display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem}.btn{border-radius:8px;padding:.9rem 1.8rem;transition:all .2s ease}.btn-primary:hover:not(:disabled){box-shadow:0 6px 16px #b5270a66}.btn-secondary{background:#fff;border:2px solid #e5e2de;color:#1c1c19}.btn-secondary:hover{border-color:#b5270a;color:#b5270a}@media (max-width:768px){.form-container{padding:1.5rem}.form-container h1{font-size:1.4rem}.form-row{grid-template-columns:1fr}.checkbox-group{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.form-actions{flex-direction:column}.btn{width:100%}}@media (max-width:480px){.form-container{border-radius:0;margin:0;padding:1rem}.form-container h1{font-size:1.2rem}.preview-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.preview-item{height:100px;width:100px}.upload-label{padding:1.5rem}.upload-label p{font-size:.9rem}}.messaggi-page{background:#fdf9f5;min-height:calc(100vh - 200px);padding:2rem 0}.messaggi-page.loading{align-items:center;color:#5a403b;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:calc(100vh - 200px)}.spinner{border:4px solid #b5270a33;height:50px;width:50px}.messaggi-container{margin:0 auto;max-width:1200px;padding:0 1.5rem}.messaggi-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.messaggi-header h1{align-items:center;color:#1c1c19;display:flex;font-size:1.8rem;font-weight:800;gap:.75rem;margin:0}.messaggi-header svg{color:#b5270a}.unread-info{color:#5a403b;font-size:.9rem;margin:.5rem 0 0}.error-message{background-color:#f8d7da;border-left:4px solid #dc3545;border-radius:8px;color:#721c24;margin-bottom:1.5rem;padding:1rem}.messaggi-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:350px 1fr}.messaggi-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;height:-webkit-fit-content;height:fit-content;max-height:600px;overflow:hidden;overflow-y:auto}.message-item{background:#fff;border-bottom:1px solid #e5e2de;cursor:pointer;padding:1.25rem;transition:all .2s ease}.message-item:last-child{border-bottom:none}.message-item:hover{background-color:#f8f9fa}.message-item.unread{background-color:#fff8fa}.message-item.selected,.message-item.unread{border-left:4px solid #b5270a;padding-left:calc(1.25rem - 4px)}.message-item.selected{background:linear-gradient(135deg,#b5270a1a,#9b59b61a)}.message-item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.message-sender{align-items:center;display:flex;flex:1 1;gap:.5rem}.message-sender strong{color:#1c1c19;font-size:.95rem}.unread-dot{background-color:#b5270a;border-radius:50%;flex-shrink:0;height:8px;width:8px}.message-date{color:#5a403b;font-size:.8rem;margin-left:.5rem;white-space:nowrap}.message-item-body{display:flex;flex-direction:column;gap:.25rem}.message-subject{color:#1c1c19;font-size:.9rem;font-weight:600;margin:0}.message-preview{color:#5a403b;font-size:.85rem;line-height:1.4;margin:0}.empty-state{align-items:center;color:#5a403b;display:flex;flex-direction:column;justify-content:center;padding:3rem 1.5rem}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state p{font-size:1rem;margin:0}.message-detail{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;gap:1.5rem;padding:2rem}.detail-header{border-bottom:2px solid #e5e2de;padding-bottom:1rem}.detail-header h3{color:#1c1c19;font-size:1.3rem;font-weight:700;margin:0}.detail-date{color:#5a403b;font-size:.85rem;margin:.25rem 0 0}.detail-body{display:flex;flex-direction:column;gap:.75rem}.detail-body p{color:#5a403b;font-size:.95rem;margin:0}.detail-body strong{color:#1c1c19;font-weight:700}.detail-email,.detail-phone,.detail-subject{display:flex;gap:.5rem}.detail-email a,.detail-phone a{color:#b5270a;text-decoration:none}.detail-email a:hover,.detail-phone a:hover{text-decoration:underline}.detail-message{background:#f8f9fa;border-left:4px solid #b5270a;border-radius:8px;margin:1rem 0;padding:1.25rem}.detail-message p{line-height:1.7;margin:0;white-space:pre-wrap}.detail-service{background:#f0f0f0;border-radius:6px;color:#1c1c19;font-size:.9rem;padding:.75rem 1rem}.reply-form{border-top:2px solid #e5e2de;display:flex;flex-direction:column;gap:1rem;padding-top:1rem}.reply-form textarea{border:2px solid #e5e2de;border-radius:8px;color:#1c1c19;font-family:Nunito,sans-serif;font-size:.95rem;padding:.75rem 1rem;resize:vertical;transition:all .2s ease}.reply-form textarea:focus{border-color:#b5270a;box-shadow:0 0 0 3px #b5270a1a;outline:none}.status-message{align-items:center;border-radius:6px;display:flex;font-size:.9rem;font-weight:600;gap:.75rem;padding:.75rem 1rem}.status-message.success{background-color:#d4edda;color:#155724}.status-message.error{background-color:#f8d7da;color:#721c24}.btn-reply{align-items:center;background:linear-gradient(135deg,#b5270a,#ff5c3b);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:700;gap:.6rem;justify-content:center;padding:.85rem 1.5rem;transition:all .2s ease}.btn-reply:hover:not(:disabled){box-shadow:0 6px 16px #b5270a66;transform:translateY(-2px)}.btn-reply:disabled{cursor:not-allowed;opacity:.6}.spinner-small{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;width:14px}@media (max-width:1024px){.messaggi-content{gap:1.5rem;grid-template-columns:300px 1fr}}@media (max-width:768px){.messaggi-page{padding:1rem 0}.messaggi-container{padding:0 1rem}.messaggi-content{grid-template-columns:1fr}.messaggi-list{margin-bottom:1.5rem;max-height:none}.message-detail{padding:1.5rem}.messaggi-header h1{font-size:1.4rem}}@media (max-width:480px){.messaggi-container{padding:0}.messaggi-header{padding:1rem}.messaggi-header h1{font-size:1.2rem}.message-item{padding:1rem}.message-detail{border-radius:0;padding:1rem}.detail-header h3{font-size:1.1rem}}.messaggi-locked{background:#fff;border:1px solid #ffdad3;border:1px solid var(--primary-fixed,#ffdad3);border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:2.5rem 1.5rem;text-align:center}.messaggi-locked .locked-icon{align-items:center;background:#ffdad3;background:var(--primary-fixed,#ffdad3);border-radius:50%;color:#b5270a;color:var(--primary,#b5270a);display:inline-flex;height:72px;justify-content:center;margin-bottom:1rem;width:72px}.messaggi-locked h2{margin:0 0 .5rem}.messaggi-locked p{color:#5a403b;color:var(--on-surface-variant,#5a403b);margin:0 auto 1.25rem;max-width:460px}.messaggi-locked .locked-list{list-style:none;margin:1.5rem auto 0;max-width:420px;padding:0;text-align:left}.messaggi-locked .locked-list li{align-items:center;border:1px solid #e5e2de;border:1px solid var(--surface-variant,#e5e2de);border-radius:8px;color:#5a403b;color:var(--on-surface-variant,#5a403b);display:flex;font-size:.9rem;gap:.5rem;margin-bottom:.5rem;padding:.7rem .9rem}.messaggi-locked .locked-list .locked-date{font-size:.8rem;margin-left:auto}.sign-in-page,.sign-up-page{align-items:center;background:radial-gradient(1200px 500px at 50% -10%,#ff5c3b2e,#0000 60%),#fdf9f5;background:radial-gradient(1200px 500px at 50% -10%,#ff5c3b2e,#0000 60%),var(--background,#fdf9f5);display:flex;justify-content:center;min-height:calc(100vh - 200px);padding:clamp(1rem,4vw,3rem) 1rem}.auth-container{max-width:460px;width:100%}.profile-form-card{max-width:520px}.auth-card{background:#fff;border:1px solid #e5e2de;border:1px solid var(--surface-variant,#e5e2de);border-radius:16px;box-shadow:0 10px 40px #1c1c1914;padding:clamp(1.5rem,4vw,2.5rem)}.auth-card h1{color:#1c1c19;color:var(--on-surface,#1c1c19);font-size:clamp(1.4rem,4vw,1.9rem);font-weight:800;margin:0 0 .4rem;text-align:center}.auth-card>p{color:#5a403b;color:var(--on-surface-variant,#5a403b);font-size:.95rem;margin:0 0 1.5rem;text-align:center}.auth-card .cl-card,.auth-card .cl-rootBox{width:100%}.profile-form-card form{display:flex;flex-direction:column;gap:1.1rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group label{color:#1c1c19;color:var(--on-surface,#1c1c19);font-size:.9rem;font-weight:700}.form-group input,.form-group select{background:#fff;border:1.5px solid #e5e2de;border:1.5px solid var(--surface-variant,#e5e2de);border-radius:10px;color:#1c1c19;color:var(--on-surface,#1c1c19);font-family:Nunito,system-ui,sans-serif;font-size:.95rem;padding:.8rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group select:focus{border-color:#b5270a;border-color:var(--primary,#b5270a);box-shadow:0 0 0 3px #b5270a1f;outline:none}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.error-message{background-color:#fdecea;border-left:4px solid #ba1a1a;border-left:4px solid var(--error,#ba1a1a);border-radius:10px;color:#8a1c10;font-size:.9rem;padding:.75rem 1rem}.btn{border-radius:10px;font-size:.95rem;font-weight:700;padding:.9rem 1.6rem;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease;width:100%}.btn-primary{background:linear-gradient(135deg,#b5270a,#ff5c3b)}.btn-primary:hover:not(:disabled){box-shadow:0 8px 20px #b5270a4d}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.signup-success{padding:1.5rem 0;text-align:center}.success-icon{align-items:center;background:#ffdad3;background:var(--primary-fixed,#ffdad3);border-radius:50%;color:#b5270a;color:var(--primary,#b5270a);display:inline-flex;font-size:2.2rem;height:72px;justify-content:center;margin-bottom:1rem;width:72px}.signup-success p{color:#1c1c19;color:var(--on-surface,#1c1c19);font-size:1.1rem;font-weight:700;margin:0 0 1.5rem}.auth-footer{border-top:1px solid #e5e2de;border-top:1px solid var(--surface-variant,#e5e2de);margin-top:1.5rem;padding-top:1.5rem;text-align:center}.auth-footer p{color:#5a403b;color:var(--on-surface-variant,#5a403b);font-size:.9rem;margin:0}.auth-footer a{color:#b5270a;color:var(--primary,#b5270a);font-weight:700;text-decoration:none}.auth-footer a:hover{text-decoration:underline}@media (max-width:480px){.form-row{grid-template-columns:1fr}}

/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{height:1px;left:-100000px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{word-wrap:break-word;box-sizing:border-box;height:100%;line-height:1.42;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre,.ql-editor ul{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;margin:0;padding:0}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"\2022"}.ql-editor ul[data-checked=false],.ql-editor ul[data-checked=true]{pointer-events:none}.ql-editor ul[data-checked=false]>li *,.ql-editor ul[data-checked=true]>li *{pointer-events:all}.ql-editor ul[data-checked=false]>li:before,.ql-editor ul[data-checked=true]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"\2611"}.ql-editor ul[data-checked=false]>li:before{content:"\2610"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-increment:list-0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow .ql-toolbar:after,.ql-snow.ql-toolbar:after{clear:both;content:"";display:table}.ql-snow .ql-toolbar button,.ql-snow.ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow .ql-toolbar button svg,.ql-snow.ql-toolbar button svg{float:left;height:100%}.ql-snow .ql-toolbar button:active:hover,.ql-snow.ql-toolbar button:active:hover{outline:none}.ql-snow .ql-toolbar input.ql-image[type=file],.ql-snow.ql-toolbar input.ql-image[type=file]{display:none}.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar button.ql-active,.ql-snow .ql-toolbar button:focus,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover{color:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow .ql-toolbar button:hover:not(.ql-active),.ql-snow.ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{margin-bottom:5px;margin-top:5px;padding:5px 10px;white-space:pre-wrap}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;padding:2px 4px;width:24px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid #0000;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{margin-top:-9px;position:absolute;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid #0000}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid #0000;box-shadow:0 2px 8px #0003}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.rich-text .ql-container.ql-snow,.rich-text .ql-toolbar.ql-snow{border-color:#ece6dd;border-color:var(--color-border,#ece6dd)}.rich-text .ql-toolbar.ql-snow{background:#faf6f0;background:var(--color-surface-2,#faf6f0);border-top-left-radius:10px;border-top-right-radius:10px}.rich-text .ql-container.ql-snow{border-bottom-left-radius:10px;border-bottom-right-radius:10px;font-family:inherit;font-size:1rem}.rich-text .ql-editor{line-height:1.7;min-height:260px}.rich-text .ql-editor.ql-blank:before{color:#9b9183;color:var(--color-text-muted,#9b9183);font-style:normal}.blog-page{margin:0 auto;max-width:1100px;padding:2rem 1.25rem 4rem}.blog-header{margin-bottom:2.5rem;text-align:center}.blog-header h1{font-size:2.25rem;margin-bottom:.5rem}.blog-header p{font-size:1.05rem}.blog-empty,.blog-header p,.blog-loading{color:#6b6256;color:var(--color-text-muted,#6b6256)}.blog-empty,.blog-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:3rem 1rem;text-align:center}.blog-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.blog-card{background:#fff;border:1px solid #ece6dd;border:1px solid var(--color-border,#ece6dd);border-radius:16px;color:inherit;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.blog-card:hover{box-shadow:0 10px 30px #00000014;transform:translateY(-3px)}.blog-card-cover{aspect-ratio:16/9;background:#f5efe7;background:var(--color-surface-2,#f5efe7);overflow:hidden}.blog-card-cover img{display:block;height:100%;object-fit:cover;width:100%}.blog-card-cover.placeholder{background:linear-gradient(135deg,#f5efe7,#ece6dd)}.blog-card-body{display:flex;flex:1 1;flex-direction:column;padding:1.1rem 1.2rem 1.3rem}.blog-card-body h2{font-size:1.2rem;line-height:1.3;margin:0 0 .5rem}.blog-card-estratto{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-size:.95rem;line-height:1.5;margin:0 0 1rem;overflow:hidden}.blog-card-estratto,.blog-card-meta{color:#6b6256;color:var(--color-text-muted,#6b6256)}.blog-card-meta{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;margin-top:auto}.blog-card-meta span{align-items:center;display:inline-flex;gap:.3rem}.blog-card-leggi{color:#d6336c;color:var(--color-primary,#d6336c);font-weight:600}.articolo-page{max-width:760px}.articolo-back{margin-bottom:1.5rem}.articolo-back a{align-items:center;color:#6b6256;color:var(--color-text-muted,#6b6256);display:inline-flex;font-size:.9rem;gap:.35rem;text-decoration:none}.articolo-back a:hover{color:#d6336c;color:var(--color-primary,#d6336c)}.articolo-titolo{font-size:2.1rem;line-height:1.2;margin:0 0 .75rem}.articolo-meta{color:#6b6256;color:var(--color-text-muted,#6b6256);display:flex;flex-wrap:wrap;font-size:.9rem;gap:1rem;margin-bottom:1.75rem}.articolo-meta span{align-items:center;display:inline-flex;gap:.35rem}.articolo-cover{border-radius:16px;margin-bottom:2rem;overflow:hidden}.articolo-cover img{display:block;width:100%}.articolo-contenuto{color:#2e2a25;color:var(--color-text,#2e2a25);font-size:1.08rem;line-height:1.75}.articolo-contenuto p{margin:0 0 1.25rem}.articolo-contenuto h2{font-size:1.55rem;margin:2rem 0 .75rem}.articolo-contenuto h3{font-size:1.25rem;margin:1.75rem 0 .6rem}.articolo-contenuto a{color:#d6336c;color:var(--color-primary,#d6336c);text-decoration:underline}.articolo-contenuto ol,.articolo-contenuto ul{margin:0 0 1.25rem;padding-left:1.4rem}.articolo-contenuto li{margin-bottom:.4rem}.articolo-contenuto blockquote{background:#faf6f0;background:var(--color-surface-2,#faf6f0);border-left:4px solid #d6336c;border-left:4px solid var(--color-primary,#d6336c);color:#6b6256;color:var(--color-text-muted,#6b6256);font-style:italic;margin:0 0 1.25rem;padding:.5rem 1.1rem}.articolo-contenuto pre{background:#2e2a25;border-radius:10px;color:#f5efe7;font-size:.92rem;margin:0 0 1.25rem;overflow-x:auto;padding:1rem 1.2rem}.articolo-contenuto img{border-radius:10px;max-width:100%}@media (max-width:600px){.blog-header h1{font-size:1.8rem}.articolo-titolo{font-size:1.6rem}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Nunito,sans-serif;line-height:1.6}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;width:100%}.loading-container{align-items:center;color:#5a403b;display:flex;font-size:1.1rem;justify-content:center;min-height:calc(100vh - 300px)}button{font-family:Nunito,sans-serif}a{transition:all .2s ease}a:hover{color:#ff5580}input,select,textarea{font-family:Nunito,sans-serif}input[type=checkbox],input[type=radio]{cursor:pointer}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#b5270a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ff5580}::selection{background:#b5270a;color:#fff}::-moz-selection{background:#b5270a;color:#fff}@media (max-width:768px){.app-container{min-height:100vh}}.container{padding:0 1.5rem}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}.text-secondary{color:#9b59b6}.bg-light{background-color:#f8f9fa}.bg-primary{background:linear-gradient(135deg,#b5270a,#ff5c3b);color:#fff}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn .3s ease-in}.slide-in-down{animation:slideInDown .3s ease-out}.slide-in-up{animation:slideInUp .3s ease-out}a:focus-visible,button:focus-visible{outline:2px dashed #b5270a;outline-offset:2px}:root{--primary:#b5270a;--primary-container:#ff5c3b;--primary-fixed:#ffdad3;--on-primary:#fff;--secondary:#0052d2;--secondary-container:#286bf6;--on-secondary:#fff;--tertiary:#705d00;--tertiary-fixed:#ffe16d;--on-tertiary:#fff;--background:#fdf9f5;--surface:#fdf9f5;--surface-container:#f1ede9;--surface-variant:#e5e2de;--white:#fff;--on-surface:#1c1c19;--on-surface-variant:#5a403b;--error:#ba1a1a;--error-light:#f2b8b5;--success:#2ecc71;--success-dark:#27ae60;--warning:#f39c12;--info:#3498db;--font-primary:"Be Vietnam Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-heading:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-accent:"Caveat Brush",cursive;--font-mono:"Courier New",monospace;--fs-xs:0.75rem;--fs-sm:0.875rem;--fs-base:1rem;--fs-lg:1.125rem;--fs-xl:1.25rem;--fs-2xl:1.5rem;--fs-3xl:1.875rem;--fs-4xl:2.25rem;--fs-5xl:3rem;--headline-xl:3rem;--headline-lg:2rem;--headline-md:1.5rem;--body-lg:1.125rem;--body-md:1rem;--label-bold:0.875rem;--accent-script:1.5rem;--fw-light:300;--fw-normal:400;--fw-medium:500;--fw-semi:600;--fw-bold:700;--fw-extrabold:800;--fw-black:900;--lh-tight:1.2;--lh-normal:1.5;--lh-relaxed:1.75;--lh-loose:2;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-3xl:32px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #0000001a,0 1px 2px #0000000f;--shadow-md:0 4px 6px #0000001a,0 2px 4px #0000000f;--shadow-lg:0 10px 15px #0000001a,0 4px 6px #0000000d;--shadow-xl:0 20px 25px #0000001a,0 10px 10px #0000000a;--shadow-2xl:0 25px 50px #00000026;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--bp-2xl:1536px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fdf9f5;background-color:var(--background);font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:1rem;font-size:var(--fs-base);letter-spacing:normal;line-height:1.5;line-height:var(--lh-normal)}body,h1,h2,h3,h4,h5,h6{color:#1c1c19;color:var(--on-surface)}h1,h2,h3,h4,h5,h6{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-heading);font-weight:700;font-weight:var(--fw-bold);line-height:1.2;line-height:var(--lh-tight);margin-bottom:1rem;margin-bottom:var(--space-4)}h1{font-size:3rem;font-weight:800;font-weight:var(--fw-extrabold);letter-spacing:-.02em}h2{font-size:2rem;letter-spacing:-.01em}h2,h3{font-weight:700;font-weight:var(--fw-bold)}h3{font-size:1.5rem}h4{font-size:1.25rem}h4,h5{font-weight:700;font-weight:var(--fw-bold)}h5{font-size:1.125rem}h6{font-size:1rem;font-weight:700;font-weight:var(--fw-bold)}p{line-height:1.75;line-height:var(--lh-relaxed);margin-bottom:1rem;margin-bottom:var(--space-4)}a{color:#b5270a;color:var(--primary);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);transition:color var(--transition-fast)}a:hover{color:#1c1c19;color:var(--on-surface);text-decoration:underline}.bold,strong{font-weight:700;font-weight:var(--fw-bold)}.italic,em{font-style:italic}small{font-size:.875rem;font-size:var(--fs-sm)}.container{margin:0 auto;max-width:1200px;padding:0 1rem;padding:0 var(--space-4);width:100%}@media (min-width:768px){.container{padding:0 1.5rem;padding:0 var(--space-6)}}.btn{align-items:center;border:none;border-radius:12px;border-radius:var(--radius-lg);cursor:pointer;display:inline-flex;font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:1rem;font-size:var(--fs-base);font-weight:600;font-weight:var(--fw-semi);gap:.5rem;gap:var(--space-2);justify-content:center;line-height:1.2;line-height:var(--lh-tight);overflow:hidden;padding:.75rem 1.5rem;padding:var(--space-3) var(--space-6);position:relative;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:active{transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:#ff5c3b;background-color:var(--primary-container);border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;box-shadow:var(--shadow-md);color:#fff;color:var(--white)}.btn-primary:hover:not(:disabled){background-color:#b5270a;background-color:var(--primary);box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-primary:focus{outline:2px solid #b5270a;outline:2px solid var(--primary);outline-offset:2px}.btn-secondary{background-color:#286bf6;background-color:var(--secondary-container);border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;box-shadow:var(--shadow-md);color:#fff;color:var(--white)}.btn-secondary:hover:not(:disabled){background-color:#0052d2;background-color:var(--secondary);box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-secondary:focus{outline:2px solid #0052d2;outline:2px solid var(--secondary);outline-offset:2px}.btn-danger{background-color:#ba1a1a;background-color:var(--error);border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;box-shadow:var(--shadow-md);color:#fff;color:var(--white)}.btn-danger:hover:not(:disabled){background-color:#8c1414}.btn-danger:focus{outline:2px solid #ba1a1a;outline:2px solid var(--error);outline-offset:2px}.btn-outline{background:#fff;background:var(--white);border:2px solid #b5270a;border:2px solid var(--primary);border-radius:9999px;border-radius:var(--radius-full);color:#b5270a;color:var(--primary)}.btn-outline:hover:not(:disabled){background:#ffdad3;background:var(--primary-fixed)}.btn-outline:focus{outline:2px solid #b5270a;outline:2px solid var(--primary);outline-offset:2px}.btn-text{background:#0000;border-radius:9999px;border-radius:var(--radius-full);color:#b5270a;color:var(--primary)}.btn-text:hover:not(:disabled){background:#ffdad3;background:var(--primary-fixed)}.btn-lg{border-radius:16px;border-radius:var(--radius-xl);font-size:1.125rem;font-size:var(--fs-lg);padding:1rem 2rem;padding:var(--space-4) var(--space-8)}.btn-sm{border-radius:8px;border-radius:var(--radius-md);font-size:.875rem;font-size:var(--fs-sm);padding:.5rem 1rem;padding:var(--space-2) var(--space-4)}.btn-xs{border-radius:4px;border-radius:var(--radius-sm);font-size:.75rem;font-size:var(--fs-xs);padding:.25rem .75rem;padding:var(--space-1) var(--space-3)}.card{background:#fff;background:var(--white);border:1px solid #e5e2de;border:1px solid var(--surface-variant);border-radius:32px;border-radius:var(--radius-3xl);box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;box-shadow:var(--shadow-sm);padding:1.5rem;padding:var(--space-6);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.card:hover{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-sm{padding:1rem;padding:var(--space-4)}.card-lg{padding:2rem;padding:var(--space-8)}.card-no-shadow{border:1px solid #e5e2de;border:1px solid var(--surface-variant);box-shadow:none}.badge{align-items:center;border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:.75rem;font-size:var(--fs-xs);font-weight:700;font-weight:var(--fw-bold);padding:.5rem 1rem;padding:var(--space-2) var(--space-4);white-space:nowrap}.badge-primary{background:#ffdad3;background:var(--primary-fixed);color:#b5270a;color:var(--primary)}.badge-secondary{background:#286bf6;background:var(--secondary-container);color:#fff;color:var(--white)}.badge-success{background:#2ecc711a;color:#27ae60;color:var(--success-dark)}.badge-warning{background:#ffe16d;background:var(--tertiary-fixed);color:#705d00;color:var(--tertiary)}.badge-error{background:#ba1a1a1a;color:#ba1a1a;color:var(--error)}.badge-location{align-items:center;background:#286bf6;background:var(--secondary-container);color:#fff;color:var(--white);display:inline-flex;gap:.25rem;gap:var(--space-1)}.badge-animazione{background:#ffe16d;background:var(--tertiary-fixed);color:#705d00;color:var(--tertiary)}.badge-dot{align-items:center;display:inline-flex;gap:.5rem;gap:var(--space-2)}.badge-dot:before{background:currentColor;border-radius:50%;content:"";height:8px;width:8px}.form-group{margin-bottom:1.5rem;margin-bottom:var(--space-6)}.form-label{color:#1c1c19;color:var(--on-surface);display:block;font-size:.875rem;font-size:var(--fs-sm);font-weight:700;font-weight:var(--fw-bold);line-height:1.2;line-height:var(--lh-tight);margin-bottom:.5rem;margin-bottom:var(--space-2)}.form-label .required{color:#ba1a1a;color:var(--error)}.form-input,.form-select,.form-textarea{background:#fff;background:var(--white);border:1px solid #e5e2de;border:1px solid var(--surface-variant);border-radius:12px;border-radius:var(--radius-lg);color:#1c1c19;color:var(--on-surface);font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:1rem;font-size:var(--fs-base);line-height:1.5;line-height:var(--lh-normal);padding:.75rem 1rem;padding:var(--space-3) var(--space-4);transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#b5270a;border-color:var(--primary);box-shadow:0 0 0 3px #ffdad3;box-shadow:0 0 0 3px var(--primary-fixed);outline:none}.form-input::placeholder{color:#5a403b;color:var(--on-surface-variant)}.form-textarea{font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);min-height:120px;resize:vertical}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%23666' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-position:right 1rem center;background-position:right var(--space-4) center;background-repeat:no-repeat;cursor:pointer;padding-right:3rem;padding-right:var(--space-12)}.form-input[type=checkbox],.form-input[type=radio]{cursor:pointer;width:auto}.form-error{color:#ba1a1a;color:var(--error);font-weight:700;font-weight:var(--fw-bold)}.form-error,.form-hint{font-size:.875rem;font-size:var(--fs-sm);margin-top:.5rem;margin-top:var(--space-2)}.form-hint{color:#5a403b;color:var(--on-surface-variant)}.form-input.error,.form-textarea.error{border-color:#ba1a1a;border-color:var(--error)}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.container-flex{display:flex;flex-direction:column;gap:1rem;gap:var(--space-4)}.grid{grid-gap:1.5rem;grid-gap:var(--space-6);display:grid;gap:1.5rem;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-center{justify-content:center}.flex-between,.flex-center{align-items:center;display:flex}.flex-between{justify-content:space-between}.flex-start{align-items:flex-start;display:flex}.gap-2{gap:.5rem;gap:var(--space-2)}.gap-4{gap:1rem;gap:var(--space-4)}.gap-6{gap:1.5rem;gap:var(--space-6)}.gap-8{gap:2rem;gap:var(--space-8)}.m-0{margin:0}.m-4{margin:1rem;margin:var(--space-4)}.m-6{margin:1.5rem;margin:var(--space-6)}.m-8{margin:2rem;margin:var(--space-8)}.mt-4{margin-top:1rem;margin-top:var(--space-4)}.mt-6{margin-top:1.5rem;margin-top:var(--space-6)}.mt-8{margin-top:2rem;margin-top:var(--space-8)}.mb-4{margin-bottom:1rem;margin-bottom:var(--space-4)}.mb-6{margin-bottom:1.5rem;margin-bottom:var(--space-6)}.mb-8{margin-bottom:2rem;margin-bottom:var(--space-8)}.p-4{padding:1rem;padding:var(--space-4)}.p-6{padding:1.5rem;padding:var(--space-6)}.p-8{padding:2rem;padding:var(--space-8)}.px-4{padding-left:1rem;padding-left:var(--space-4);padding-right:1rem;padding-right:var(--space-4)}.px-6{padding-left:1.5rem;padding-left:var(--space-6);padding-right:1.5rem;padding-right:var(--space-6)}.py-4{padding-bottom:1rem;padding-bottom:var(--space-4);padding-top:1rem;padding-top:var(--space-4)}.py-6{padding-bottom:1.5rem;padding-bottom:var(--space-6);padding-top:1.5rem;padding-top:var(--space-6)}.py-8{padding-bottom:2rem;padding-bottom:var(--space-8);padding-top:2rem;padding-top:var(--space-8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:.75rem;font-size:var(--fs-xs)}.text-sm{font-size:.875rem;font-size:var(--fs-sm)}.text-lg{font-size:1.125rem;font-size:var(--fs-lg)}.text-xl{font-size:1.25rem;font-size:var(--fs-xl)}.text-2xl{font-size:1.5rem;font-size:var(--fs-2xl)}.text-light{font-weight:300;font-weight:var(--fw-light)}.text-normal{font-weight:400;font-weight:var(--fw-normal)}.text-semi{font-weight:600;font-weight:var(--fw-semi)}.text-bold{font-weight:700;font-weight:var(--fw-bold)}.text-primary{color:#b5270a;color:var(--primary)}.text-secondary{color:#0052d2;color:var(--secondary)}.text-success{color:#2ecc71;color:var(--success)}.text-error{color:#ba1a1a;color:var(--error)}.text-warning{color:#f39c12;color:var(--warning)}.text-on-surface{color:#1c1c19;color:var(--on-surface)}.text-muted,.text-on-surface-variant{color:#5a403b;color:var(--on-surface-variant)}.bg-primary{background-color:#b5270a;background-color:var(--primary)}.bg-primary-container{background-color:#ff5c3b;background-color:var(--primary-container)}.bg-secondary{background-color:#0052d2;background-color:var(--secondary)}.bg-secondary-container{background-color:#286bf6;background-color:var(--secondary-container)}.bg-white{background-color:#fff;background-color:var(--white)}.bg-surface{background-color:#fdf9f5;background-color:var(--surface)}.bg-background{background-color:#fdf9f5;background-color:var(--background)}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.empty-state{padding:3rem 1rem;padding:var(--space-12) var(--space-4);text-align:center}.empty-state-icon{font-size:3rem;margin-bottom:1rem;margin-bottom:var(--space-4);opacity:.7}.empty-state-title{color:#1c1c19;color:var(--on-surface);font-size:1.5rem;font-size:var(--fs-2xl);margin-bottom:.5rem;margin-bottom:var(--space-2)}.empty-state-text{color:#5a403b;color:var(--on-surface-variant);font-size:1rem;font-size:var(--fs-base);margin-bottom:1.5rem;margin-bottom:var(--space-6)}.section-title{color:#1c1c19;color:var(--on-surface);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-heading);font-size:2rem;font-weight:700;font-weight:var(--fw-bold);line-height:1.2;line-height:var(--lh-tight);margin-bottom:1rem;margin-bottom:var(--space-4)}.section-subtitle{color:#5a403b;color:var(--on-surface-variant);font-size:1.125rem;font-size:var(--fs-lg);line-height:1.75;line-height:var(--lh-relaxed);margin-bottom:2rem;margin-bottom:var(--space-8)}.section{padding:4rem 0;padding:var(--space-16) 0}.section-light{background-color:#fdf9f5;background-color:var(--background)}.section-warm{background-color:#fdf9f5;background-color:var(--surface)}.section-white{background-color:#fff;background-color:var(--white)}.spinner{animation:spin .8s linear infinite;border:4px solid #e5e2de;border-top-color:#b5270a;border:4px solid var(--surface-variant);border-radius:50%;border-top-color:var(--primary);display:inline-block;height:40px;width:40px}.spinner-sm{border-width:2px;height:24px;width:24px}.spinner-lg{border-width:5px;height:56px;width:56px}@keyframes spin{to{transform:rotate(1turn)}}.gradient-primary{background:linear-gradient(135deg,#b5270a,#ff5c3b);background:linear-gradient(135deg,var(--primary) 0,var(--primary-container) 100%)}.gradient-secondary{background:linear-gradient(135deg,#0052d2,#286bf6);background:linear-gradient(135deg,var(--secondary) 0,var(--secondary-container) 100%)}.gradient-warm{background:linear-gradient(135deg,#fdf9f5,#fff);background:linear-gradient(135deg,var(--surface) 0,var(--white) 100%)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideRight{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes checkmark{0%{stroke-dashoffset:50;opacity:0}50%{opacity:1}to{stroke-dashoffset:0;opacity:1}}.animate-fadeIn{animation:fadeIn .25s cubic-bezier(.4,0,.2,1);animation:fadeIn var(--transition-base)}.animate-slideUp{animation:slideUp .25s cubic-bezier(.4,0,.2,1);animation:slideUp var(--transition-base)}.animate-slideDown{animation:slideDown .25s cubic-bezier(.4,0,.2,1);animation:slideDown var(--transition-base)}.animate-bounce{animation:bounce 1s infinite}@media (max-width:768px){html{font-size:14px}h1{font-size:2.25rem;font-size:var(--fs-4xl)}h2{font-size:1.875rem;font-size:var(--fs-3xl)}.container{padding:0 1rem;padding:0 var(--space-4)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}:focus-visible{outline:2px solid #b5270a;outline:2px solid var(--primary);outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #b5270a;outline:2px solid var(--primary);outline-offset:2px}@media print{body{background:#fff;background:var(--white)}.no-print{display:none!important}}.form-hint{color:#777;font-size:.9rem;margin-bottom:1rem}.elenco-input-row{display:flex;gap:.5rem}.elenco-input-row input{flex:1 1}.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.chip{align-items:center;background:#fde7ef;border-radius:999px;color:#c2185b;font-size:.9rem;gap:.35rem;padding:.3rem .7rem}.chip,.chip button{display:inline-flex}.chip button{background:none;border:none;color:inherit;cursor:pointer;padding:0}.elenco-attivita{margin:.5rem 0 0 1.2rem}.elenco-attivita li{margin-bottom:.3rem}.dashboard-header-actions{display:flex;flex-wrap:wrap;gap:.75rem}.service-inactive{background:#ffe0b2;border-radius:6px;color:#b26a00;display:inline-block;font-size:.75rem;margin-left:.5rem;padding:.1rem .5rem}.contact-label{font-weight:600}.provider-note{color:#555;margin-top:.5rem;white-space:pre-wrap}.admin-page{margin:0 auto;max-width:1100px;padding:2rem 1rem}.admin-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:2rem}.admin-stat{background:#fff;border:1px solid #eee;border-radius:12px;padding:1.2rem;text-align:center}.admin-stat .num{color:#c2185b;font-size:2rem;font-weight:700}.admin-stat .lbl{color:#777;font-size:.9rem;margin-top:.3rem}.admin-section{background:#fff;border:1px solid #eee;border-radius:12px;margin-bottom:1.5rem;padding:1.2rem}.admin-table{border-collapse:collapse;width:100%}.admin-table td,.admin-table th{border-bottom:1px solid #f0f0f0;font-size:.92rem;padding:.6rem .5rem;text-align:left}.admin-table th{color:#888;font-weight:600}.admin-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.admin-tab{background:#fff;border:1px solid #eee;border-radius:8px;cursor:pointer;padding:.5rem 1rem}.admin-tab.active{background:#c2185b;border-color:#c2185b;color:#fff}.badge-pill{border-radius:999px;display:inline-block;font-size:.78rem;padding:.1rem .6rem}.badge-pill.ok{background:#e0f2e9;color:#1b7a47}.badge-pill.off{background:#fde0e0;color:#b22}.badge-pill.warn{background:#fff4e0;color:#9a6700}.admin-actions{white-space:nowrap}.btn-mini{border:none;border-radius:6px;cursor:pointer;font-size:.78rem;font-weight:600;margin-left:.4rem;padding:.2rem .6rem}.btn-mini.approva{background:#e0f2e9;color:#1b7a47}.btn-mini.approva:hover{background:#c8e9d5}.btn-mini.rifiuta{background:#fde0e0;color:#b22}.btn-mini.rifiuta:hover{background:#f8caca}.profile-form{margin:0 auto;max-width:720px}.profile-form fieldset{border:1px solid #eee;border-radius:12px;margin-bottom:1.5rem;padding:1.2rem}.profile-form legend{color:#c2185b;font-weight:600;padding:0 .5rem}.search-text-input{border:1px solid #e5e2de;border:1px solid var(--surface-variant);border-radius:8px;border-radius:var(--radius-md);font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-primary);font-size:.95rem;outline:none;padding:.6rem .8rem;width:100%}.search-text-input:focus{border-color:#b5270a;border-color:var(--primary)}.cookie-banner{align-items:center;background:#fff;background:var(--white);border:1px solid #e5e2de;border:1px solid var(--surface-variant);border-radius:16px;border-radius:var(--radius-xl);bottom:1rem;box-shadow:0 12px 40px #0000002e;display:flex;gap:1rem;left:1rem;margin:0 auto;max-width:720px;padding:1rem 1.25rem;position:fixed;right:1rem;z-index:1000}.cookie-banner p{color:#1c1c19;color:var(--on-surface);flex:1 1;font-size:.9rem;margin:0}.cookie-banner a{color:#b5270a;color:var(--primary)}.cookie-banner-actions{display:flex;flex-shrink:0;gap:.5rem}.consenso-privacy{align-items:flex-start;color:#5a403b;color:var(--on-surface-variant);cursor:pointer;display:flex;font-size:.88rem;gap:.5rem;margin:.5rem 0 1rem}.consenso-privacy input{margin-top:.2rem}.consenso-privacy a{color:#b5270a;color:var(--primary)}@media (max-width:600px){.cookie-banner{align-items:stretch;flex-direction:column;text-align:center}}@media (max-width:768px){.admin-section{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{min-width:600px}.admin-page{padding:1rem}}.btn-back{align-items:center;display:inline-flex;gap:.4rem;margin-bottom:1rem}.section-head{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.btn-mini-cta{align-items:center;display:inline-flex;gap:.4rem;padding:.5rem .9rem}.fornitore-azioni{display:flex;flex-wrap:wrap;gap:.5rem}.fornitore-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem .9rem;margin-bottom:1rem}.fornitore-meta .meta-item{color:#5a403b;color:var(--on-surface-variant);font-size:.9rem}.fornitore-counters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.fornitore-descrizione{color:#5a403b;color:var(--on-surface-variant);line-height:1.6;margin:0}.crea-inline{background:#f1ede9;background:var(--surface-container);border:1px solid #e5e2de;border:1px solid var(--surface-variant);border-radius:12px;margin-bottom:1.5rem;padding:1.25rem}.muted{color:#5a403b;color:var(--on-surface-variant)}.badge-pill{align-items:center;display:inline-flex;gap:.3rem}
/*# sourceMappingURL=main.3a0f92dc.css.map*/