:root{font-family:"Montserrat",Arial,sans-serif;color:#183229;background:#f3f6f4;font-synthesis:none;--green:#123c2c;--green2:#1d5b43;--lime:#b8db36;--line:#dce6df;--muted:#687b72;--danger:#a53131;--shadow:0 14px 40px rgba(18,60,44,.09)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}.skip-link{position:fixed;top:-60px;left:16px;z-index:99;background:#fff;padding:12px;color:#123c2c}.skip-link:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.72rem;color:#2f7658;margin:0 0 6px}.muted{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.65rem,3vw,2.25rem);letter-spacing:-.035em;margin-bottom:6px}h2{letter-spacing:-.025em}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--lime);color:var(--green);font-weight:900}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:var(--green)}.login-brand{display:flex;align-items:center;justify-content:center;gap:14px;color:#fff;font-size:1.5rem}.login-brand small,.brand small{display:block;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.72}.login-card{align-self:center;justify-self:start;background:#fff;width:min(440px,calc(100vw - 32px));padding:clamp(28px,5vw,48px);border-radius:24px;box-shadow:var(--shadow)}label{display:grid;gap:7px;font-weight:700;font-size:.86rem;margin:18px 0}input,select{width:100%;border:1px solid #cbd9d0;border-radius:10px;padding:11px 12px;background:#fff;color:#183229;min-height:44px}input:focus,select:focus,button:focus-visible{outline:3px solid rgba(184,219,54,.5);outline-offset:2px;border-color:#4e7d65}.primary,.secondary,.quiet,.upload-button{border:0;border-radius:10px;padding:11px 16px;font-weight:800;min-height:44px}.primary{background:var(--green);color:#fff}.primary:hover{background:var(--green2)}.secondary{background:#e6eee9;color:var(--green)}.quiet{background:transparent;color:inherit}.full{width:100%}.form-error{color:var(--danger);min-height:1.25em;font-size:.86rem}.app-shell{min-height:100vh;display:grid;grid-template:"top top" 64px "side main" 1fr/210px 1fr}.topbar{grid-area:top;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.brand{display:flex;align-items:center;gap:10px}.top-actions{display:flex;align-items:center;gap:12px;font-size:.86rem}.sidebar{grid-area:side;background:#fff;border-right:1px solid var(--line);padding:24px 14px;display:flex;flex-direction:column}.nav-item{border:0;border-radius:10px;padding:12px;text-align:left;background:transparent;color:var(--green);font-weight:800}.nav-item.active{background:#edf4ef}.environment{margin-top:auto;font-size:.8rem;color:var(--muted);padding:12px}.environment span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e7a425;margin-right:6px}.workspace{grid-area:main;padding:clamp(20px,3vw,38px);max-width:1560px;width:100%;margin:auto}.page-head,.filters,.detail-head,.section-head,.quote-top,.quote-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.filters{margin:24px 0 18px}.filters label{margin:0}.search{flex:1;max-width:520px}.content-grid{display:grid;grid-template-columns:minmax(330px,.92fr) minmax(420px,1.35fr);gap:20px;align-items:start}.quote-list{display:grid;gap:10px}.quote-card{display:grid;gap:10px;width:100%;border:1px solid var(--line);border-radius:15px;padding:17px;text-align:left;background:#fff;color:inherit}.quote-card:hover,.quote-card.selected{border-color:#76a58c;box-shadow:0 5px 18px rgba(18,60,44,.07)}.quote-card.selected{border-left:5px solid var(--lime)}.quote-meta{color:var(--muted);font-size:.83rem}.price,.detail-price{font-variant-numeric:tabular-nums}.chip{border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;background:#e7eee9}.status-accettato{background:#dff3e6;color:#176138}.status-rifiutato{background:#fbe5e3;color:#8d2929}.status-inviato{background:#e6edfa;color:#2f568e}.work{font-size:.78rem;color:var(--muted)}.work i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8ba397;margin-right:6px}.detail{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,30px);box-shadow:var(--shadow);min-height:300px}.detail.empty{display:grid;place-items:center;text-align:center}.detail-price{font-size:1.25rem}.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:24px 0}.facts div{background:#fff;padding:14px}.facts dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800;margin-bottom:7px}.facts dd{margin:0;font-weight:700}.facts select{padding:6px 8px;min-height:36px}.customer{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);line-height:1.65}.section-head{margin-top:24px}.section-head p{font-size:.8rem;color:var(--muted);margin:2px 0}.upload-button{display:block;background:var(--green);color:#fff;cursor:pointer}.upload-button input{display:none}.attachments{display:grid;gap:8px;margin-top:14px}.attachments a{display:flex;gap:12px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:inherit}.attachments small{display:block;color:var(--muted);margin-top:2px}.file-icon{font-size:.66rem;font-weight:900;color:var(--green);background:#e8f0eb;padding:10px 7px;border-radius:7px}.empty-inline,.empty-state,.loading-list,.error-panel{text-align:center;padding:32px;color:var(--muted)}.progress-row{display:grid;grid-template-columns:1fr 120px auto;align-items:center;gap:10px;font-size:.8rem;margin-top:10px}.progress-row.failed small{color:var(--danger)}progress{accent-color:var(--green);width:100%}.toast{position:fixed;right:20px;bottom:20px;z-index:100;background:var(--green);color:#fff;padding:13px 18px;border-radius:12px;box-shadow:var(--shadow);transform:translateY(120px);transition:.25s}.toast.show{transform:none}.toast[data-kind=error]{background:var(--danger)}dialog{width:min(680px,calc(100vw - 28px));border:0;border-radius:20px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(7,32,23,.55)}dialog form{padding:28px}.dialog-head,.dialog-actions{display:flex;justify-content:space-between;align-items:center}.icon-button{border:0;background:#edf2ef;border-radius:50%;width:38px;height:38px;font-size:1.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid label.wide{grid-column:1/-1}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:14px}@media(max-width:900px){.app-shell{grid-template:"top" 64px "main" 1fr/1fr}.sidebar{display:none}.content-grid{grid-template-columns:1fr}.detail{order:-1}.login-shell{grid-template-columns:1fr}.login-brand{display:none}.login-card{justify-self:center}.topbar{padding:0 14px}.workspace{padding:18px}.filters{display:grid;grid-template-columns:1fr auto}.filters label:nth-child(2){grid-row:2}.facts{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}}@media(max-width:560px){.top-actions #user-label{display:none}.page-head{align-items:flex-end}.page-head .muted{font-size:.82rem}.filters{grid-template-columns:1fr}.filters label:nth-child(2){grid-row:auto}.filters button{width:100%}.detail-head{align-items:flex-start;flex-direction:column}.progress-row{grid-template-columns:1fr}.section-head{align-items:flex-end}.quote-card{padding:14px}}
[hidden]{display:none!important}
.assignment-panel{padding:18px 0;border-bottom:1px solid var(--line)}
.catalog-fields{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fbf9}.catalog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.catalog-heading h3{margin-bottom:3px}.catalog-heading p{font-size:.8rem;margin:0}.catalog-badge{flex:none;border-radius:999px;background:#e7f2cb;color:var(--green);padding:6px 9px;font-size:.7rem;font-weight:800}.compact-grid label{margin:12px 0}.catalog-fields fieldset{border:0;padding:10px 0 0;margin:0}.catalog-fields legend{font-size:.86rem;font-weight:800;margin-bottom:8px}.supplement-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.supplement-option{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff;font-size:.8rem}.supplement-option span{display:flex;align-items:center;gap:8px}.supplement-option input{width:auto;min-height:auto}.supplement-option strong{white-space:nowrap}.catalog-fields[data-unavailable="true"] .compact-grid,.catalog-fields[data-unavailable="true"] fieldset{display:none}
.assignment-panel .section-head{margin-top:0}
.catalog-summary{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;margin:0 0 24px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fbf9}.catalog-summary h3{margin-bottom:6px}.catalog-summary p{margin-bottom:0;color:var(--muted)}.catalog-summary dl{margin:0}.catalog-summary dl div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.catalog-summary dt{color:var(--muted)}.catalog-summary dd{margin:0;font-weight:800}.catalog-summary .catalog-total{border-top:1px solid var(--line);margin-top:5px;padding-top:10px;color:var(--green)}
.installer-list{display:grid;gap:8px;margin:12px 0}
.installer-list label{display:flex;align-items:center;gap:10px;margin:0;padding:10px;border:1px solid var(--line);border-radius:10px}
.installer-list input{width:18px;min-height:18px;margin:0}
.installer-list small{display:block;color:var(--muted);font-weight:500;margin-top:2px}
.detail-actions{display:flex;align-items:center;gap:12px}.danger-button{border:1px solid #e5baba;background:#fff;color:var(--danger);border-radius:10px;padding:9px 12px;font-weight:800}.danger-button:hover{background:#fff3f2}
.file-actions{display:flex;align-items:center;gap:8px}
.page-actions{display:flex;align-items:center;gap:8px}
.category-picker{margin:0}.category-picker select{min-height:44px}.file-preview{width:42px;height:42px;object-fit:cover;border-radius:7px;background:#e8f0eb;flex:none}
@media(max-width:560px){.detail .section-head{align-items:flex-start;flex-direction:column}.file-actions{width:100%;flex-wrap:wrap}.file-actions .secondary,.file-actions .upload-button{flex:1;text-align:center}.detail-actions{width:100%;justify-content:space-between}.attachments a{align-items:flex-start;overflow-wrap:anywhere}}
@media(max-width:560px){.catalog-fields{padding:14px}.catalog-heading{align-items:flex-start}.catalog-badge{display:none}.supplement-options{grid-template-columns:1fr}}
@media(max-width:560px){.catalog-summary{grid-template-columns:1fr}}
@media(max-width:560px){.page-actions{flex-wrap:wrap;justify-content:flex-end}.page-actions button{min-height:40px;padding:8px 10px}}
.login-logo{width:min(380px,70%);height:auto}.brand-logo{width:178px;height:auto;display:block}.workspace-hero{height:190px;margin:22px 0;border-radius:14px;overflow:hidden;position:relative;background:url('./assets/climate-hero.png') center/cover no-repeat}.workspace-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.16) 48%,transparent 78%)}.workspace-hero div{position:absolute;z-index:1;left:22px;bottom:20px;color:#fff;max-width:420px;text-shadow:0 1px 5px rgba(0,0,0,.5)}.workspace-hero strong{display:block;font-size:21px}.workspace-hero span{font-size:12px;opacity:.9}
@media(max-width:650px){.brand-logo{width:155px}.workspace-hero{height:150px}.workspace-hero div{left:16px;bottom:14px}.workspace-hero strong{font-size:17px}}
:root{--green:#009639;--green2:#0f3d2e;--lime:#fce300;--line:#d9e6e1;--muted:#555;--shadow:0 8px 24px rgba(34,49,58,.05)}body{background:#fffdf8;color:#0f3d2e}.app-shell{grid-template:"top top" 76px "side main" 1fr/210px 1fr}.topbar{background:#fff;color:#0f3d2e;border-bottom:4px solid var(--lime);padding:0 28px}.quiet{color:#0f3d2e}.login-shell{background:#0f3d2e}.primary{background:#009639}.primary:hover{background:#0f3d2e}.secondary{background:#edf2f4;color:#0f3d2e}
@media(max-width:900px){.app-shell{grid-template:"top" 76px "main" 1fr/1fr}}
.sheet-button{margin-top:14px}.sheet-dialog{width:min(1040px,calc(100vw - 28px));max-height:92vh}.sheet-dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:#fff;border-bottom:3px solid var(--lime)}.sheet-dialog-head h2{margin-bottom:0}.sheet-pages{display:grid;gap:14px;padding:18px;background:#eef2f0}.sheet-pages img{display:block;width:100%;height:auto;background:#fff;box-shadow:0 4px 18px rgba(15,61,46,.1)}
.login-shell{display:grid;place-items:center;background:linear-gradient(145deg,#0f3d2e,#09261d)}.login-card{align-self:auto;justify-self:auto;width:min(430px,calc(100vw - 32px));padding:30px;border-radius:22px;border-top:5px solid #fce300;box-shadow:0 30px 90px rgba(0,0,0,.47)}.auth-logo{width:190px;height:auto;display:block;margin:0 auto 22px}.login-card h1,.login-card>p{text-align:center}.login-card>p small{font-size:11px;color:#7b8984}.dashboard-intro{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(400px,1.25fr);align-items:stretch;margin-bottom:22px}.dashboard-intro .page-head{padding:28px 28px 26px 0;align-items:flex-start;flex-direction:column}.dashboard-intro .page-head h1{font:700 34px/1.08 "Montserrat",Arial,sans-serif}.dashboard-intro .page-actions{margin-top:auto}.dashboard-intro .workspace-hero{margin:0;min-height:240px;height:auto}
@media(max-width:900px){.dashboard-intro{grid-template-columns:1fr}.dashboard-intro .page-head{padding:10px 0 22px}.dashboard-intro .workspace-hero{min-height:180px}}

/* Legacy visual contract: values measured from the original HVAC workspace. */
:root{font-size:15px;line-height:1.45;--legacy-ink:#0f3d2e;--legacy-copy:#555;--legacy-label:#52635d;--legacy-green:#009639;--legacy-link:#087c52;--legacy-yellow:#fce300;--legacy-surface:#fff;--legacy-page:#f4f6f5;--legacy-soft:#f7fbf9;--legacy-border:#d9e1de}
body{background:var(--legacy-page);color:var(--legacy-ink)}
button,input,select,textarea{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
label{color:var(--legacy-label);font-size:13px;font-weight:700}
input,select,textarea{border-color:var(--legacy-border);border-radius:10px;color:var(--legacy-ink);font-size:14px;font-weight:500;padding:11px 12px}
input,select{min-height:45px}
.primary,.secondary,.quiet,.upload-button,.danger-button{border-radius:11px;font-weight:800}
.topbar{height:82px;padding:16px 28px;border-bottom:4px solid var(--legacy-yellow)}
.app-shell{grid-template:"top top" 82px "side main" 1fr/210px 1fr}
.sidebar{padding-top:18px}
.workspace{max-width:none;padding:24px;margin:0;width:100%}
.dashboard-intro{gap:24px}
.dashboard-intro .page-head{padding:24px 24px 24px 0}
.dashboard-intro .workspace-hero{min-height:190px;border-radius:14px}
.filters{margin:0 0 18px;gap:14px}
.quote-card,.detail,.catalog-fields,.catalog-summary{border-color:var(--legacy-border)}
.quote-card{border-radius:13px;padding:16px}
.detail{border-radius:18px;padding:24px;box-shadow:0 8px 24px rgba(34,49,58,.05)}
.catalog-fields,.catalog-summary{background:var(--legacy-soft);border-radius:13px}
dialog{border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.25)}
dialog form{padding:24px}
.icon-button{width:44px;height:44px;border-radius:50%;background:#edf5f1;color:var(--legacy-ink)}
#quote-dialog{width:min(1020px,calc(100vw - 28px));max-height:calc(100vh - 24px);overflow:auto}
#quote-dialog form{padding:0}
#quote-dialog .dialog-head{position:sticky;top:0;z-index:3;padding:24px;background:#fff;border-bottom:3px solid var(--legacy-yellow)}
#quote-dialog .form-grid{padding:0 24px}
#quote-dialog>.form-grid{padding-top:6px}
#quote-dialog .catalog-fields{margin:18px 24px 0;padding:18px}
#quote-dialog .catalog-fields .form-grid{padding:0}
#quote-dialog .form-error{margin:8px 24px 0}
#quote-dialog .dialog-actions{position:sticky;bottom:0;z-index:3;margin-top:8px;padding:14px 24px;background:#fff;border-top:1px solid var(--legacy-border)}
.login-shell{padding:20px;background:linear-gradient(145deg,#0f3d2e,#09261d)}
.login-card{width:min(430px,calc(100vw - 40px));padding:30px;border-radius:22px;border-top:5px solid var(--legacy-yellow)}
.auth-logo{width:190px;margin:0 auto 22px}
.login-card h1{font-size:24px;line-height:1.45;margin-bottom:7px}
.login-card>p.muted{font-size:15px;line-height:1.45;margin-bottom:22px;color:#60706a}
.login-card label{margin:0 0 12px;font-size:12px;font-weight:800}
.login-card label input{margin-top:5px;height:45px}
.login-card .primary{min-height:46px;padding:12px}
.login-card .form-error{font-size:12px;margin:12px 0 0}
@media(max-width:900px){.app-shell{grid-template:"top" 82px "main" 1fr/1fr}.workspace{padding:18px}.dashboard-intro{gap:18px}.dashboard-intro .workspace-hero{min-height:190px}}
@media(max-width:560px){.topbar{height:72px;padding:13px 16px}.app-shell{grid-template:"top" 72px "main" 1fr/1fr}.workspace{padding:14px}.dashboard-intro .page-head{padding-top:4px}.dashboard-intro .workspace-hero{min-height:150px}.login-shell{padding:16px}.login-card{width:100%;padding:26px 22px}#quote-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}#quote-dialog .dialog-head{padding:18px}#quote-dialog .form-grid{padding:0 18px}#quote-dialog .catalog-fields{margin:14px 18px 0;padding:14px}#quote-dialog .dialog-actions{padding:12px 18px}}

/* Workspace navigation and home, measured against the legacy application. */
.sidebar{width:210px;gap:7px}.sidebar-logo{display:none}.nav-item{display:flex;align-items:center;gap:12px;min-height:48px;padding:12px 14px;font-size:15px}.nav-item svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.nav-count{margin-left:auto;display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:var(--legacy-yellow);font-size:12px}.sidebar-exit{display:none}.app-section{min-height:calc(100vh - 130px)}
.home-hero-grid{display:grid;grid-template-columns:minmax(460px,.88fr) minmax(480px,1.12fr);gap:42px;align-items:center;padding:10px 0 30px}.home-copy{padding-left:28px}.home-copy>p:first-child{font-size:16px;margin-bottom:8px}.home-copy h1{font:650 clamp(38px,4vw,56px)/1.08 "Montserrat",Arial,sans-serif;letter-spacing:-.04em}.home-copy h1 .home-title-primary{color:var(--legacy-ink);white-space:nowrap}.home-copy h1 .home-title-accent{color:#92d925;font-weight:620}.title-rule{display:block;width:56px;height:4px;background:#92d925;margin:24px 0 32px}.home-hero{min-height:360px;border-radius:22px;background:url('./assets/dashboard-hero.jpg') center/cover no-repeat;box-shadow:0 16px 38px rgba(15,61,46,.12)}
.home-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.home-card,.heating-config,.heating-info{background:#fff;border:1px solid var(--legacy-border);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.home-card h2{font-size:19px;margin-bottom:8px}.sector-action{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid #dce7df;border-radius:14px;padding:17px 18px;margin-top:12px;background:#f3f8f1;color:var(--legacy-ink);font-weight:800}.sector-action.heating{background:#fff1e9;border-color:#efd2c2;color:#a74925}.sector-action.hybrid{background:#eaf7fa;border-color:#bddde5;color:#166f88}.resume-draft{margin-top:22px}.draft-tile{display:grid;gap:4px;text-align:center;border:1px solid #d7e4df;border-radius:15px;background:#fff;padding:18px 22px;color:var(--legacy-ink)}.draft-tile span{font-weight:800}.draft-tile small{color:var(--muted)}.recent-card{margin-top:24px}.draft-table{display:grid}.draft-row{display:grid;grid-template-columns:1.4fr 1fr .8fr .6fr;gap:16px;align-items:center;width:100%;padding:13px 6px;border:0;border-top:1px solid #e7ecea;background:transparent;text-align:left;color:inherit}.draft-row:not(.draft-head):hover{background:#f8fbf9}.draft-head{border:0;color:var(--muted);font-weight:700}.draft-row .chip{justify-self:start}
.section-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-bottom:24px}.sector-tabs{display:flex;gap:12px;border-bottom:1px solid var(--legacy-border);margin:0 -34px 34px;padding:0 34px}.sector-tab{width:315px;padding:20px;border:1px solid var(--legacy-border);border-bottom:0;border-radius:18px 18px 0 0;background:#f3f5f4;color:var(--legacy-ink);font-weight:800}.sector-tab.active{background:#b5532d;color:#fff;border-color:#b5532d}.heating-grid{display:grid;grid-template-columns:minmax(620px,1.9fr) minmax(360px,.95fr);gap:34px}.heating-config,.heating-info{border-top:5px solid #b5532d}.heating-config{padding:32px 36px}.heating-info{padding:32px}.heating-banner{min-height:285px;border-radius:18px;background:linear-gradient(0deg,rgba(0,0,0,.48),transparent 58%),url('./assets/heating-hero.jpg') center/cover no-repeat;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;margin:28px 0}.heating-banner strong,.heating-side-image strong{font-size:26px}.heating-banner span,.heating-side-image span{display:block}.heating-eyebrow{color:#803516;margin-top:32px}.catalog-pending{margin-top:28px;padding:24px;border-radius:16px;background:#fff1e9;color:#713219}.catalog-pending h2{font-size:20px}.heating-side-image{min-height:390px;border-radius:18px;background:linear-gradient(0deg,rgba(0,0,0,.48),transparent 62%),url('./assets/heating-hero.jpg') center/cover no-repeat;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;margin:28px 0}.heating-info>p{font-size:17px;line-height:1.55}
.heating-brand-copy{display:grid;gap:3px;padding-left:28px;margin-left:10px;border-left:1px solid var(--legacy-border)}.heating-brand-copy strong{font-size:18px}.heating-brand-copy span{color:var(--muted);font-size:14px}.heating-top-actions{display:flex;align-items:center;gap:20px}.heating-mode{grid-template:"top" 138px "main" 1fr/1fr}.heating-mode .topbar{height:138px}.heating-mode .sidebar{display:none}.heating-mode .workspace{padding:28px 34px}.heating-mode #heating-view{min-height:calc(100vh - 166px)}
.home-mode{grid-template:"side main" 1fr/284px 1fr}.home-mode .topbar{display:none}.home-mode .sidebar{width:284px;padding:28px 27px 22px;border-right:1px solid var(--legacy-border);gap:10px}.home-mode .sidebar-logo{display:block;height:100px;margin:0 0 4px}.home-mode .sidebar-logo img{width:225px;height:auto}.home-mode .nav-item{min-height:65px;padding:0 18px;border-radius:15px;font-size:18px}.home-mode .nav-item svg{width:25px;height:25px}.home-mode .nav-item.active{background:#edf4e9}.home-mode .sidebar-exit{display:block;margin-top:auto;min-height:70px;border:1px solid #cbdcd5;border-radius:16px;background:#fff;color:var(--legacy-ink);font-weight:800;font-size:17px}.home-mode .environment{display:none}.home-mode .workspace{padding:48px 64px;max-width:none}.home-mode .app-section{min-height:calc(100vh - 96px)}
.simple-view{max-width:1180px;margin:0 auto}.simple-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.archive-list,.notice-list{display:grid;gap:12px}.archive-card,.notice-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;border:1px solid var(--legacy-border);border-radius:15px;background:#fff;color:inherit}.archive-card div{display:grid;gap:4px}.archive-card div:last-child{text-align:right}.archive-card span,.notice-card small{display:block;color:var(--muted)}.notice-card{width:100%;text-align:left}.notice-card>span:nth-child(2){flex:1}.notice-dot{width:10px;height:10px;border-radius:50%;background:#e7a425}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stats-grid article{display:grid;gap:5px;padding:24px;background:#fff;border:1px solid var(--legacy-border);border-radius:16px}.stats-grid strong{font:700 28px/1.2 "Montserrat",Arial,sans-serif}.stats-grid span{color:var(--muted)}.admin-note{margin-top:20px}.profile-card{display:flex;align-items:center;gap:20px;max-width:620px}.profile-avatar{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#edf6e3;color:var(--legacy-ink);font-size:28px;font-weight:800}.profile-card h2,.profile-card p{margin-bottom:4px}.profile-role{display:inline-block;margin-top:8px;padding:5px 9px;border-radius:999px;background:#edf2ef;text-transform:capitalize;font-weight:700}
@media(max-width:1100px){.home-hero-grid{grid-template-columns:1fr 1.25fr;gap:24px}.home-hero{min-height:280px}.heating-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.home-hero-grid,.home-action-grid{grid-template-columns:1fr}.home-copy{padding-left:0}.home-hero{min-height:240px}.section-toolbar{justify-content:space-between}.sector-tabs{margin-left:-18px;margin-right:-18px;padding:0 18px}.sector-tab{width:auto;flex:1}.heating-grid{gap:18px}.heating-config,.heating-info{padding:22px}.heating-mode{grid-template:"top" 96px "main" 1fr/1fr}.heating-mode .topbar{height:96px}.heating-mode .workspace{padding:20px 18px}.heating-brand-copy,.heating-top-actions>strong{display:none}.heating-mode .brand-logo{width:150px}}
@media(max-width:620px){.home-hero-grid{padding-top:0}.home-copy h1{font-size:38px}.home-hero{min-height:190px;border-radius:16px}.home-card{padding:20px}.draft-head{display:none}.draft-row{grid-template-columns:1fr auto}.draft-row span:nth-child(2),.draft-row span:nth-child(3){display:none}.stats-grid{grid-template-columns:1fr}.simple-head{align-items:flex-start;gap:16px}.archive-card{align-items:flex-start;flex-direction:column}.archive-card div:last-child{text-align:left}.heating-banner{min-height:220px;margin:20px 0;padding:20px}.heating-side-image{min-height:280px}.heating-banner strong,.heating-side-image strong{font-size:21px}}
@media(max-width:900px){.home-mode{grid-template:"top" 82px "main" 1fr/1fr}.home-mode .topbar{display:flex}.home-mode .sidebar{display:none}.home-mode .workspace{padding:22px 18px}.home-mode #user-label{display:none}}

/* Typography and numeric localization: one visual language across the workspace. */
@font-face{font-family:"Montserrat";src:url("./assets/fonts/montserrat-variable.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
:root{font-family:"Montserrat",Arial,sans-serif;font-size:15px;line-height:1.5;--shadow:0 12px 34px rgba(15,61,46,.075)}
body,button,input,select,textarea{font-family:"Montserrat",Arial,sans-serif}
body{font-weight:450;letter-spacing:-.008em;color:var(--legacy-ink)}
h1,h2,h3,strong,.primary,.secondary,.quiet,.upload-button,.danger-button,.nav-item,.sector-action,.sector-tab{font-family:inherit}
h1,h2,h3{line-height:1.18;text-wrap:balance;color:var(--legacy-ink)}
h1{font-size:clamp(1.8rem,2.7vw,2.55rem);font-weight:720;letter-spacing:-.04em}
h2{font-size:clamp(1.25rem,1.8vw,1.65rem);font-weight:700;letter-spacing:-.03em}
h3{font-size:1rem;font-weight:700;letter-spacing:-.02em}
p{line-height:1.58}
label{font-size:.82rem;line-height:1.35;font-weight:700}
input,select,textarea{font-size:.94rem;line-height:1.35;font-weight:500;min-height:48px;padding:12px 14px}
.field-help{display:block;margin-top:-2px;color:var(--muted);font-size:.7rem;font-weight:500;line-height:1.35}
.currency-input,.price,.detail-price,.stats-grid strong,.catalog-summary dd,.nav-count{font-variant-numeric:tabular-nums lining-nums}
.currency-input{text-align:right;font-weight:650;letter-spacing:.015em}
.home-copy h1,.dashboard-intro .page-head h1,.stats-grid strong{font-family:inherit}
.home-copy h1{font-size:clamp(2.4rem,4vw,3.55rem);font-weight:650;line-height:1.08;letter-spacing:-.045em}
.dashboard-intro .page-head h1{font-size:clamp(2rem,3vw,2.45rem);font-weight:720;line-height:1.1}
.stats-grid strong{font-size:1.7rem;font-weight:700;line-height:1.2}
.home-card,.heating-config,.heating-info,.detail,.quote-card,.archive-card,.notice-card,.stats-grid article{border-color:#dbe5df;box-shadow:0 10px 30px rgba(15,61,46,.055)}
.home-card,.heating-config,.heating-info{border-radius:20px}
.home-card{min-height:100%;padding:28px 30px}
.home-action-grid{align-items:stretch}
.sector-action{min-height:60px;padding:16px 18px;font-size:.98rem}
.draft-tile{min-height:104px;align-content:center}
.quote-card{min-height:126px}
.detail-head{align-items:flex-start}
.detail-price{font-size:1.28rem;font-weight:750;white-space:nowrap}
.facts dt,.eyebrow{line-height:1.35}
.dialog-head h2{margin-bottom:0}
#quote-dialog .dialog-head{min-height:96px}
#quote-dialog .dialog-actions{min-height:74px}
.catalog-summary dl{font-variant-numeric:tabular-nums lining-nums}
@media(max-width:900px){.home-copy h1{font-size:clamp(2.25rem,8vw,3rem)}.home-card{padding:24px}.detail-head{align-items:flex-start}}
@media(max-width:560px){:root{font-size:14px}.home-card{padding:20px}.detail-price{font-size:1.12rem}.detail-actions{align-items:flex-end;flex-wrap:wrap}.currency-input{text-align:left}}

/* Responsive application shell and fully controlled Italian validation. */
.mobile-nav{display:none}
.field-error{display:block;color:var(--danger);font-size:.72rem;font-weight:650;line-height:1.35}
.field-error[hidden]{display:none}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--danger);background:#fffafa}
input[aria-invalid="true"]:focus,select[aria-invalid="true"]:focus,textarea[aria-invalid="true"]:focus{outline-color:rgba(165,49,49,.25)}
@media(min-width:901px) and (max-width:1180px){
  .home-mode{grid-template-columns:240px 1fr}.home-mode .sidebar{width:240px;padding-inline:20px}.home-mode .sidebar-logo img{width:198px}.home-mode .workspace{padding:36px 34px}
  .home-hero-grid{grid-template-columns:minmax(290px,.8fr) minmax(420px,1.2fr);gap:28px}.home-hero{min-height:300px}.home-copy h1{font-size:clamp(2.45rem,4vw,3.1rem)}
  .content-grid{grid-template-columns:minmax(300px,.85fr) minmax(390px,1.15fr)}
  .heating-mode .workspace{padding:24px}.heating-grid{gap:24px}.heating-config,.heating-info{padding:26px}
}
@media(max-width:900px){
  body{padding-bottom:76px}.mobile-nav{position:fixed;z-index:80;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(6,1fr);min-height:68px;padding:6px max(6px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:rgba(255,255,255,.97);border-top:1px solid var(--legacy-border);box-shadow:0 -8px 26px rgba(15,61,46,.1);backdrop-filter:blur(12px)}
  .mobile-nav button{display:grid;justify-items:center;align-content:center;gap:2px;min-width:0;min-height:54px;padding:4px 2px;border:0;border-radius:10px;background:transparent;color:var(--legacy-ink);font-size:.64rem;font-weight:700;line-height:1.1}
  .mobile-nav button>svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-nav button.active{background:#edf4e9;color:#087c52}
  .workspace,.home-mode .workspace,.heating-mode .workspace{padding:20px 18px 28px}.topbar{height:82px;padding:12px 18px}.brand-logo{width:154px}.top-actions{gap:8px}.top-actions>.quiet{min-width:48px;padding-inline:10px}
  .content-grid{grid-template-columns:minmax(0,1fr)}.detail{order:0;scroll-margin-top:96px}.quote-list{order:0}
  .dashboard-intro{grid-template-columns:1fr}.dashboard-intro .page-head{padding:4px 0 18px}.dashboard-intro .workspace-hero{min-height:180px}
  .home-hero-grid,.home-action-grid{grid-template-columns:minmax(0,1fr)}.home-hero-grid{gap:24px}.home-card{min-width:0}
  .heating-grid{grid-template-columns:minmax(0,1fr)}.heating-banner,.heating-side-image{background-position:center}
  #quote-dialog{width:min(720px,calc(100vw - 20px));max-height:calc(100dvh - 20px)}#quote-dialog .dialog-head{padding:20px 22px}#quote-dialog .form-grid{padding-inline:22px}#quote-dialog .catalog-fields{margin-inline:22px}#quote-dialog .dialog-actions{padding:14px 22px}
  .sheet-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
}
@media(max-width:620px){
  body{padding-bottom:72px}.mobile-nav{grid-template-columns:repeat(6,1fr)}
  .workspace,.home-mode .workspace,.heating-mode .workspace{padding:16px 14px 24px}.topbar{height:72px;padding:10px 14px}.brand-logo{width:138px}
  .home-copy>p:first-child{font-size:.94rem}.home-copy h1{font-size:clamp(2.15rem,11vw,2.75rem)}.title-rule{margin:18px 0 22px}.home-hero{min-height:190px}.home-action-grid{gap:16px}.recent-card{margin-top:16px}
  .page-head,.simple-head{align-items:flex-start;flex-direction:column}.page-actions{width:100%;display:flex}.page-actions .primary{flex:1}.filters{display:grid;grid-template-columns:minmax(0,1fr)}.filters label:nth-child(2){grid-row:auto}.filters button{width:100%}
  .quote-card{min-height:112px}.quote-top{align-items:flex-start}.price{white-space:nowrap}.detail{padding:18px 16px}.detail-head,.detail-actions{width:100%}.detail-actions{display:grid;grid-template-columns:1fr 1fr}.detail-actions .detail-price{grid-column:1/-1}.facts{grid-template-columns:1fr}.catalog-summary{grid-template-columns:1fr;padding:15px}
  .detail .section-head{align-items:flex-start;flex-direction:column}.file-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.file-actions .category-picker{grid-column:1/-1}.file-actions .secondary,.file-actions .upload-button{text-align:center}.attachments a{align-items:flex-start;overflow-wrap:anywhere;min-width:0}.attachments a>span:last-child{min-width:0}
  .heating-config,.heating-info{padding:18px 16px}.sector-tabs{gap:6px;margin-bottom:20px}.sector-tab{padding:14px 8px;font-size:.8rem}.heating-banner{min-height:210px;margin:20px 0;padding:18px}.heating-side-image{min-height:260px;margin:20px 0;padding:18px}.catalog-pending{padding:18px}
  #quote-dialog{width:calc(100vw - 10px);max-height:calc(100dvh - 10px);border-radius:14px}#quote-dialog .dialog-head{min-height:78px;padding:15px 16px}#quote-dialog .form-grid{padding-inline:16px}#quote-dialog .catalog-fields{margin:12px 16px 0;padding:14px}#quote-dialog .dialog-actions{min-height:66px;padding:10px 16px}.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid label.wide{grid-column:auto}.supplement-options{grid-template-columns:1fr}
  .archive-card,.notice-card{padding:16px}.archive-card{align-items:flex-start;flex-direction:column}.archive-card div:last-child{text-align:left}.stats-grid{grid-template-columns:1fr}.profile-card{align-items:flex-start}
  .toast{left:12px;right:12px;bottom:84px;text-align:center}
}
@media(max-width:380px){
  .mobile-nav button{font-size:.58rem}.mobile-nav button>svg{width:19px;height:19px}.top-actions #logout{display:none}
  .home-copy h1{font-size:2.05rem}.home-card{padding:18px}.detail-actions,.file-actions{grid-template-columns:1fr}.detail-actions .detail-price,.file-actions .category-picker{grid-column:auto}
  #quote-dialog .dialog-actions{display:grid;grid-template-columns:1fr 1fr}.dialog-actions button{width:100%}
}

/* Pixel geometry measured from the original HVAC workspace at 100% zoom. */
@media(min-width:901px){
  .home-mode{grid-template:"side main" 1fr/190px 1fr}.home-mode .sidebar{width:190px;padding:26px 18px;gap:28px}.home-mode .sidebar-logo{height:auto;margin:0}.home-mode .sidebar-logo img{width:145px}.home-mode .nav-item{min-height:44px;padding:11px 12px;border-radius:11px;font-size:15px}.home-mode .nav-item svg{width:20px;height:20px}.home-mode .sidebar-exit{min-height:48px;border-radius:11px;font-size:15px}.home-mode .workspace{padding:34px 42px}.home-hero-grid{grid-template-columns:minmax(380px,.72fr) minmax(520px,1fr);gap:0;padding:0 0 22px}.home-copy{min-height:300px;height:auto;padding:28px 28px 26px 0}.home-copy>p:first-child{font-size:15px}.home-copy h1{font-size:34px;line-height:1.08;letter-spacing:-.035em}.title-rule{width:38px;height:3px;margin:18px 0 22px}.home-hero{min-height:300px;height:auto;border-radius:16px}.home-action-grid{gap:16px}.home-card{padding:20px;border-radius:15px}.home-card h2{font-size:17px}.sector-action{min-height:48px;padding:12px 14px;border-radius:11px;font-size:14px}.resume-draft{margin-top:16px}.draft-tile{min-height:70px;padding:12px 16px;border-radius:11px}.recent-card{margin-top:16px}.draft-row{padding:12px 5px}
  .editor-mode{grid-template:"top" 82px "main" 1fr/1fr}.editor-mode .topbar{height:82px;padding:16px 28px}.editor-mode .workspace{padding:18px 24px 24px}.quote-editor-page{max-width:none}.quote-editor-page #quote-form>.dialog-head{display:none}.quote-sector-tabs{display:flex;gap:8px;margin:0 -24px 24px;padding:0 24px;border-bottom:1px solid var(--legacy-border)}.quote-sector-tabs button{width:207px;min-height:50px;padding:14px;border:1px solid var(--legacy-border);border-bottom:0;border-radius:14px 14px 0 0;background:#f3f5f4;color:var(--legacy-ink);font-weight:800}.quote-sector-tabs button.active{background:var(--legacy-green);border-color:var(--legacy-green);color:#fff}.quote-editor-layout{grid-template-columns:minmax(620px,1.93fr) minmax(360px,1fr);gap:22px;padding:0}.quote-editor-main{padding:24px;border-radius:18px}.quote-editor-hero{min-height:190px;margin-bottom:20px;border-radius:14px}.quote-live-preview{top:18px;padding:22px;border-radius:18px}.preview-image{height:219px}.quote-editor-page .dialog-actions{padding:12px 0 0}
}
@media(max-width:900px){.quote-sector-tabs{display:flex;gap:6px;margin:0 -18px 16px;padding:0 18px;border-bottom:1px solid var(--legacy-border)}.quote-sector-tabs button{flex:1;min-height:46px;border:1px solid var(--legacy-border);border-bottom:0;border-radius:12px 12px 0 0;background:#f3f5f4;color:var(--legacy-ink);font-weight:800}.quote-sector-tabs button.active{background:var(--legacy-green);border-color:var(--legacy-green);color:#fff}.quote-editor-page #quote-form>.dialog-head{display:none}}

/* Preventivo workspace: one editor for creation and archive re-entry. */
.quote-editor-page{max-width:1180px;margin:0 auto}.quote-editor-page #quote-form{padding:0}.quote-editor-page .dialog-head{padding:0 0 14px;border-bottom:1px solid var(--legacy-border)}.quote-editor-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:18px;padding:18px 0}.quote-editor-main{min-width:0;padding:18px;border:1px solid var(--legacy-border);border-radius:16px;background:#fff}.quote-editor-hero{min-height:155px;margin-bottom:20px;padding:20px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:13px;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.52),transparent 66%),url('./assets/climate-hero.png') center/cover no-repeat;text-shadow:0 1px 5px rgba(0,0,0,.45)}.quote-editor-hero strong{font-size:1.15rem}.quote-editor-hero span{font-size:.76rem}.form-section-title{margin:16px 0 2px;padding-top:14px;border-top:1px solid var(--legacy-border);color:var(--legacy-ink);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.quote-editor-main>.form-section-title:first-of-type{border-top:0;padding-top:0}.quote-editor-main textarea{width:100%;resize:vertical;border:1px solid var(--legacy-border);border-radius:10px;padding:12px;font:inherit;color:var(--legacy-ink)}.quote-survey{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:15px;border:1px dashed #9cbdb0;border-radius:12px;background:#fbfefc}.quote-survey div{display:grid;gap:3px}.quote-survey small{color:var(--muted)}.quote-conditions label{max-width:320px}.quote-live-preview{position:sticky;top:100px;align-self:start;padding:18px;border:1px solid var(--legacy-border);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(15,61,46,.07)}.preview-brand{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding-bottom:10px;border-bottom:3px solid var(--legacy-yellow)}.preview-brand>strong{font-size:1.45rem;font-weight:650;color:#25a85a}.preview-brand>strong span{color:#a8c92a}.preview-brand small{text-align:right;font-size:.62rem}.preview-image{height:180px;margin:12px 0;border-radius:11px;background:url('./assets/climate-hero.png') center/cover no-repeat}.preview-number{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px;padding:2px 0 12px;border-bottom:1px solid var(--legacy-border)}.preview-number>strong{font-size:.9rem}.preview-number>small{grid-column:1/-1;color:var(--muted);font-size:.64rem}.preview-badge{padding:5px 8px;border-radius:999px;background:var(--legacy-yellow);font-size:.58rem;font-weight:800}.quote-live-preview h3{margin:13px 0 22px;font-size:.96rem}.preview-lines{font-size:.68rem}.preview-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding:9px 0;border-bottom:1px solid #e8eeeb}.preview-head{text-transform:uppercase;font-size:.55rem;font-weight:800}.preview-total strong,.preview-grand-total strong:last-child{font-variant-numeric:tabular-nums}.preview-grand-total{display:flex;justify-content:space-between;gap:12px;padding:13px 0;font-size:1rem}.preview-agent{display:grid;gap:2px;margin:6px 0 12px;padding:12px;border-radius:10px;background:#edf6df}.preview-agent small{color:var(--muted)}.preview-actions,.preview-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.preview-actions button,.preview-secondary-actions button{min-width:0;padding-inline:8px;font-size:.72rem}.preview-status{margin:12px 0 6px}.preview-status select{min-height:42px}.preview-save-status{display:block;color:#33815d;font-size:.62rem}.quote-editor-page .dialog-actions{margin:0;padding:12px 0}.quote-editor-page[data-mode="edit"] #save-quote{min-width:160px}
@media(max-width:900px){.quote-editor-layout{grid-template-columns:1fr}.quote-live-preview{position:static;max-width:620px;width:100%;margin:auto}.preview-image{height:240px}}
@media(max-width:620px){.quote-editor-layout{padding:10px 0;gap:10px}.quote-editor-main,.quote-live-preview{padding:14px;border-radius:12px}.quote-editor-hero{min-height:130px}.quote-survey{align-items:flex-start;flex-direction:column}.quote-survey button{width:100%}.preview-image{height:180px}.quote-editor-page .dialog-actions{padding:10px 0}}

/* Desktop navigation: compact on demand, persistent, and context-aware. */
.app-shell,.sidebar{transition:grid-template-columns .18s ease,width .18s ease,padding .18s ease}
.sidebar{position:relative;overflow:hidden}
.sidebar-toggle{z-index:2;display:grid;place-items:center;align-self:flex-end;flex:none;width:34px;height:34px;margin:0 0 8px;padding:0;border:1px solid var(--legacy-border);border-radius:10px;background:#fff;color:var(--legacy-ink);box-shadow:0 4px 14px rgba(15,61,46,.07)}
.sidebar-toggle svg,.sidebar-exit svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.sidebar-toggle:hover{background:#f3f8f5}.sidebar-logo{transition:opacity .14s ease}
.sidebar-exit{display:flex;align-items:center;justify-content:center;gap:10px}
.back-to-quotes{display:inline-flex;align-items:center;min-height:36px;margin:-8px 0 14px;padding:6px 0;color:var(--legacy-link);font-size:.82rem}
.back-to-quotes:hover{text-decoration:underline;text-underline-offset:3px}
.sidebar-collapsed{grid-template-columns:78px 1fr}
.sidebar-collapsed .sidebar{width:78px;padding-inline:10px;align-items:stretch}
.sidebar-collapsed .sidebar-toggle{width:44px;height:40px;margin:0 auto 12px}
.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}
.sidebar-collapsed .sidebar-logo{display:none}
.sidebar-collapsed .nav-item{justify-content:center;padding-inline:0;gap:0}
.sidebar-collapsed .nav-item>span:not(.nav-count),.sidebar-collapsed .sidebar-exit>span,.sidebar-collapsed .environment{display:none}
.sidebar-collapsed .nav-item{position:relative}.sidebar-collapsed .nav-count{position:absolute;top:3px;right:2px;min-width:18px;width:auto;height:18px;padding:0 4px;font-size:.62rem}
.sidebar-collapsed .sidebar-exit{min-width:44px;padding-inline:0}
.home-mode.sidebar-collapsed{grid-template:"side main" 1fr/86px 1fr}
.home-mode.sidebar-collapsed .sidebar{width:86px;padding:22px 10px}
.home-mode.sidebar-collapsed .nav-item{min-height:56px}
.heating-mode .topbar{height:112px}.heating-mode{grid-template:"top" 112px "main" 1fr/1fr}.heating-mode #heating-view{min-height:calc(100vh - 140px)}
.heating-mode .brand-logo{width:166px}.heating-mode .heating-brand-copy{padding-left:22px}.heating-mode .heating-top-actions{gap:16px}.heating-mode .heating-top-actions .secondary{background:#fff;border:1px solid var(--legacy-border);min-height:42px}
.editor-mode{grid-template:"top" 112px "main" 1fr/1fr}.editor-mode .topbar{height:112px}.editor-mode .sidebar{display:none}.editor-mode .workspace{padding:24px 34px}.editor-mode .heating-brand-copy{display:grid}.editor-mode .heating-top-actions{display:flex}
.archive-mode{grid-template:"main" 1fr/1fr}.archive-mode .topbar,.archive-mode .sidebar,.archive-mode .mobile-nav{display:none}.archive-mode .workspace{padding:0;background:#faf9f4}.archive-view{max-width:none}.archive-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:36px 50px 30px;border-bottom:1px solid var(--legacy-border);background:#fff}.archive-head h1{margin:0 0 8px}.archive-head strong{display:block;margin-bottom:6px}.archive-head-actions{display:flex;gap:10px}.archive-view>.archive-list{margin:18px 50px 40px;padding:18px;border:1px solid var(--legacy-border);border-radius:20px;background:#fff}.archive-view .archive-card{display:grid;grid-template-columns:minmax(300px,1fr) minmax(140px,.28fr) minmax(120px,.22fr) auto;gap:18px;align-items:center;min-height:118px;padding:18px;border:1px solid var(--legacy-border);border-radius:18px}.archive-view .archive-card+.archive-card{margin-top:12px}.archive-view .archive-card.selected{border-color:var(--legacy-green);box-shadow:0 0 0 3px rgba(0,150,57,.1)}.archive-identity{display:grid;gap:6px}.archive-identity>strong{font-size:1.05rem}.archive-identity>span{color:var(--muted)}.archive-identity small{display:flex;gap:7px}.archive-price{font-size:1.05rem;white-space:nowrap}.archive-status{min-height:48px;padding:13px;border:1px solid var(--legacy-border);border-radius:12px;text-transform:capitalize}.archive-actions{display:flex;gap:8px}.archive-actions button{min-width:74px}
.top-actions>#logout{border:1px solid var(--legacy-border);border-radius:11px;min-height:42px;padding-inline:15px}
@media(max-width:900px){.sidebar-toggle{display:none}.sidebar-collapsed,.home-mode.sidebar-collapsed{grid-template:"top" 82px "main" 1fr/1fr}.back-to-quotes{margin-top:0}.heating-mode,.editor-mode{grid-template:"top" 96px "main" 1fr/1fr}.heating-mode .topbar,.editor-mode .topbar{height:96px}.heating-mode #heating-view{min-height:calc(100vh - 124px)}.editor-mode .workspace{padding:20px 18px}.editor-mode .heating-brand-copy,.editor-mode .heating-top-actions>strong{display:none}.archive-head{padding:26px 20px}.archive-view>.archive-list{margin:14px 20px 30px}.archive-view .archive-card{grid-template-columns:1fr auto}.archive-status{grid-column:1/2;grid-row:2}.archive-actions{grid-column:2;grid-row:1/3}}
@media(max-width:620px){.back-to-quotes{width:100%;justify-content:flex-start;margin-bottom:10px}.top-actions>#logout{min-height:40px;padding-inline:10px}}
@media(max-width:620px){.archive-head{display:grid;padding:22px 14px}.archive-head-actions{display:grid;grid-template-columns:1fr 1fr}.archive-view>.archive-list{margin:10px 8px 24px;padding:8px;border-radius:14px}.archive-view .archive-card{display:flex;align-items:stretch;flex-direction:column;gap:10px}.archive-status{min-height:44px}.archive-actions{display:grid;grid-template-columns:1fr 1fr}.archive-actions button{width:100%}}

/* Final responsive pass: preserve every action without empty tracks or horizontal overflow. */
html,body{max-width:100%;overflow-x:clip}
.workspace,.app-section,.content-grid,.detail,.catalog-summary,.home-card{min-width:0}
.detail-head>*,.section-head>*,.quote-top>*,.quote-bottom>*{min-width:0}
.detail-head{flex-wrap:wrap}.detail-head>div:first-child{flex:1 1 220px}.detail-actions{flex:1 1 420px;max-width:100%;flex-wrap:wrap;justify-content:flex-end}
.attachments strong,.archive-card strong,.notice-card strong{overflow-wrap:anywhere}
@media(max-width:900px){
  .mobile-nav{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
  .mobile-nav button{touch-action:manipulation}
  .detail.loading{min-height:180px}
  .detail-actions{justify-content:stretch}
}
@media(max-width:620px){
  .topbar .brand{min-width:0}.topbar .brand-logo{max-width:42vw}
  .page-actions>*{min-width:0}.page-actions .secondary{flex:1}
  .quote-top,.quote-bottom{gap:10px}.quote-meta{overflow-wrap:anywhere}
  .catalog-summary dl div{align-items:flex-start}.catalog-summary dd{text-align:right}
  .progress-row span,.progress-row small{overflow-wrap:anywhere}
  .sheet-dialog-head{padding:15px 16px}.sheet-dialog-head h2{font-size:1.15rem}
}
@media(max-width:380px){
  .mobile-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .detail-head h2{overflow-wrap:anywhere}
}

/* Final desktop geometry override: keep measured values after component rules. */
@media(min-width:901px){
  .editor-mode{grid-template:"top" 82px "main" 1fr/1fr}.editor-mode .topbar{height:82px;padding:16px 28px}.editor-mode .workspace{padding:18px 24px 24px}
  .quote-editor-page{max-width:none}.quote-editor-page #quote-form>.dialog-head{display:none}.quote-editor-layout{grid-template-columns:minmax(620px,1.93fr) minmax(360px,1fr);gap:22px;padding:0}.quote-editor-main{padding:24px;border-radius:18px}.quote-editor-hero{min-height:190px;border-radius:14px}.quote-live-preview{top:18px;padding:22px;border-radius:18px}.preview-image{height:219px}
}
/* Printable customer offer and installer-safe technical document. */
.quote-panel-title{margin:0 0 20px;font-size:19px;line-height:1.25}
.print-document{display:none}
.catalog-item-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:center;gap:12px;margin-top:10px}.catalog-item-actions button{width:100%}.catalog-item-actions small{color:var(--muted);line-height:1.35}
.catalog-items{display:grid;gap:8px;margin-top:12px}.catalog-item{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--legacy-border);border-radius:12px;background:#fff}.catalog-item.active{border-color:var(--legacy-green);box-shadow:0 0 0 2px rgba(0,150,57,.09)}.catalog-item>button{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-width:0;padding:5px 7px;border:0;background:transparent;text-align:left}.catalog-item>button span{display:grid;gap:3px;min-width:0}.catalog-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.catalog-item>div{display:flex;gap:4px}.danger-text{color:#a42b20}.catalog-item button:disabled{opacity:.45}
.document-panel,.work-checklist{margin-top:24px;padding-top:4px;border-top:1px solid var(--line)}.document-list{display:grid;gap:8px;margin-top:12px}.document-list a{display:flex;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:10px;color:inherit;text-decoration:none}.document-list small{display:block;margin-top:2px;color:var(--muted)}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.checklist-grid label{display:flex;align-items:center;gap:9px;margin:0;padding:11px;border:1px solid var(--line);border-radius:10px}.checklist-grid input{width:auto;min-height:auto}.attachment-item{display:flex;align-items:center;gap:8px}.attachment-item>a{flex:1;min-width:0}.attachment-item>button{flex:none}
@media(max-width:620px){.catalog-item-actions,.catalog-item,.attachment-item{align-items:stretch;flex-direction:column}.catalog-item-actions button{width:100%}.catalog-item>div{display:grid;grid-template-columns:1fr 1fr}.catalog-item>div button,.attachment-item>button{width:100%}.checklist-grid{grid-template-columns:1fr}.document-list a{align-items:flex-start;overflow-wrap:anywhere}}
.catalog-channel{margin:0 0 18px;padding:18px;border:1px solid #cfe0d8;border-radius:18px;background:#f8fbf9}.catalog-channel legend{padding:0 8px;font-weight:800;color:#063d2e}.catalog-channel>p{margin:10px 0 0;color:#5d6b66;font-size:.875rem}.catalog-channel-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-channel-options label{display:flex;align-items:center;gap:12px;padding:14px;border:2px solid #d9e5df;border-radius:14px;background:#fff;cursor:pointer}.catalog-channel-options label:has(input:checked){border-color:#009f46;box-shadow:0 8px 24px rgba(0,95,56,.12)}.catalog-channel-options input{width:20px;height:20px;accent-color:#009f46}.catalog-channel-options span{display:grid;gap:2px}.catalog-channel-options strong{color:#063d2e}.catalog-channel-options small{color:#67746f}.commercial-channel-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e5f5ea;color:#087438;font-weight:800}.commercial-channel-pill.plenitude{background:#fff4bf;color:#715e00}
@media(max-width:620px){.catalog-channel{padding:14px}.catalog-channel-options{grid-template-columns:1fr}.catalog-channel-options label{min-height:64px}}

@media print{
  @page{size:A4 portrait;margin:0}
  html,body{width:210mm!important;max-width:none!important;background:#fff!important;overflow:visible!important}
  body.printing-quote>*:not(.print-document){display:none!important}
  body.printing-quote .print-document{display:block!important;color:#123d31;background:#fff;font-family:"Montserrat",Arial,sans-serif}
  .print-page{position:relative;box-sizing:border-box;width:210mm;min-height:297mm;padding:9mm 11mm 10mm;break-after:page;background:#fff}
  .print-page:last-child{break-after:auto}
  .print-header{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:3mm;border-bottom:1mm solid #fce300}
  .print-header img{width:46mm;height:auto}.print-header div{display:grid;text-align:right;color:#46524e;font-size:10pt}.print-header div span{margin-top:1mm}
  .print-hero{height:62mm;margin-top:3mm;overflow:hidden;border-radius:3mm}.print-hero img{width:100%;height:100%;object-fit:cover}
.print-identity{display:flex;align-items:center;justify-content:space-between;padding:4mm 0;border-bottom:.25mm solid #d8e2dd}.print-identity h1{margin:0 0 1mm;font-size:14pt}.print-identity span{font-size:8.5pt}.print-identity>strong{padding:2.4mm 4mm;border-radius:99mm;background:#fce300;font-size:8pt}
  .print-customer{margin:3mm 0 4mm;font-size:13pt}.print-summary{font-size:8pt}.print-summary-head,.print-line,.print-subtotal,.print-total{display:grid;grid-template-columns:1fr auto;gap:6mm;break-inside:avoid}.print-summary-head{padding-bottom:2mm;border-bottom:.25mm solid #d8e2dd;text-transform:uppercase;font-size:7pt;font-weight:800}.print-line{padding:2mm 0;border-bottom:.25mm solid #edf1ef}.print-line span,.technical-line span{min-width:0;overflow-wrap:anywhere;word-break:break-word}.print-subtotal{padding:3mm 0;border-bottom:.6mm solid #174d3e;color:#55615d}.print-total{padding:3mm 0;font-size:14pt}
  .print-agent{display:grid;gap:1mm;padding:3mm 4mm;border:.25mm solid #d5e3c7;border-radius:3mm;background:#eef7e2}.print-agent small{color:#64706b;font-size:7.5pt}
  .print-notes{margin-top:3mm;padding:2.5mm 4mm;border:.25mm solid #d8e2dd;border-radius:2mm;break-inside:avoid}.print-notes h2{margin:0 0 1mm;font-size:9pt}.print-notes p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:8pt;line-height:1.32}.customer-document.has-notes .print-hero{height:54mm}.customer-document.notes-long .print-hero{height:46mm}.customer-document.notes-long .print-customer{margin:2mm 0 3mm}.customer-document.notes-long .print-line{padding:1.5mm 0}.customer-document.notes-long .print-subtotal,.customer-document.notes-long .print-total{padding:2mm 0}.customer-document.notes-long .print-agent{padding:2mm 4mm}.customer-document.notes-long .print-notes{margin-top:2mm;padding:2mm 4mm}.customer-document.notes-long .print-notes p{font-size:7.25pt;line-height:1.22}.customer-document.notes-long .print-conditions{margin-top:2.5mm;padding-top:2mm}.customer-document.notes-long .print-conditions h2{margin-bottom:2mm}.customer-document.notes-long .print-conditions h3{margin:2mm 0 3mm}
  .print-conditions{margin-top:4mm;padding-top:3mm;border-top:.7mm solid #174d3e}.print-conditions h2{margin:0 0 3mm;text-transform:uppercase;font-size:11pt;letter-spacing:.08em}.print-conditions>div:first-of-type{display:grid;grid-template-columns:1fr 1fr;gap:2mm 10mm}.print-conditions p{display:grid;gap:.5mm;margin:0;font-size:7.5pt}.print-conditions p span{color:#68736f}.print-conditions h3{margin:3mm 0 5mm;font-size:8pt}.signature{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8mm!important}.signature span{padding-bottom:2mm;border-bottom:.25mm solid #8c9994;color:#68736f;font-size:7pt}
  .print-page footer{position:absolute;right:11mm;bottom:5mm;left:11mm;padding-top:2mm;border-top:.25mm solid #d8e2dd;text-align:center;color:#75807c;font-size:6.5pt}
  .technical-banner{margin:6mm 0;padding:3mm;background:#fce300;text-align:center;font-size:9pt;font-weight:800}.technical-title p{margin:0;color:#34775e;font-weight:800}.technical-title h1{margin:2mm 0;font-size:24pt}.technical-title span{font-size:9pt;color:#67746f}.technical-grid{display:grid;grid-template-columns:1fr 1fr;gap:8mm;margin-top:9mm}.technical-grid>div,.technical-notes,.technical-check{padding:5mm;border:.25mm solid #d8e2dd;border-radius:3mm}.technical-grid h2,.technical-notes h2,.technical-check h2{margin:0 0 4mm;font-size:12pt}.technical-grid p{font-size:9pt;line-height:1.5}.technical-line{display:grid;gap:1mm;padding:2mm 0;border-bottom:.25mm solid #edf1ef;font-size:8.5pt}.technical-line span{color:#53605b}.technical-notes{margin-top:7mm}.technical-notes p{white-space:pre-wrap;font-size:9pt;line-height:1.55}.technical-check{display:grid;grid-template-columns:1fr 1fr;gap:4mm;margin-top:7mm}.technical-check h2{grid-column:1/-1}.technical-check div{padding:3mm;border:.25mm solid #bfcac5;border-radius:2mm;font-size:8.5pt}.technical-check div:before{content:"□";margin-right:2mm;font-size:13pt}
  .print-sheet{display:grid;place-items:center;box-sizing:border-box;width:210mm;height:297mm;padding:4mm;break-after:page;background:#fff}.print-sheet:last-child{break-after:auto}.print-sheet img{display:block;max-width:100%;max-height:100%;object-fit:contain}
}

/* Mobile workspace: large touch targets, readable cards and no horizontal squeeze. */
@media(max-width:620px){
  body{font-size:15px}.workspace{padding:12px 10px calc(92px + env(safe-area-inset-bottom))}
  .topbar{min-height:64px;padding:8px 10px}.top-actions{gap:6px}.top-actions .secondary,.top-actions .quiet{padding:9px;min-height:42px}
  .mobile-nav{padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{min-height:58px;padding:7px 3px;font-size:.66rem}
  .page-head,.section-head{align-items:stretch;flex-direction:column}.page-actions,.detail-actions,.file-actions{display:grid;width:100%;grid-template-columns:1fr;gap:8px}
  .detail{padding:16px 12px;border-radius:14px}.detail-actions button,.file-actions button,.upload-button{width:100%;min-height:48px}
  .quote-sector-tabs{overflow-x:auto;scrollbar-width:none}.quote-sector-tabs::-webkit-scrollbar{display:none}.quote-sector-tabs button{flex:0 0 auto;width:auto;min-width:132px;padding:10px 12px;white-space:nowrap}
  .quote-editor-layout{padding-top:8px}.quote-editor-main,.quote-live-preview{padding:12px 10px}.quote-panel-title{font-size:1.08rem}
  .form-grid,.compact-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0}.form-grid label,.compact-grid label{grid-column:auto!important}
  input,select,textarea{font-size:16px;min-height:48px}.quote-editor-main label{margin:8px 0}
  .catalog-fields{padding:11px 9px}.catalog-heading{align-items:flex-start;flex-direction:column}.catalog-extra-field{align-items:stretch;flex-direction:column}.catalog-extra-field input{width:100%;margin:0}
  .preview-actions,.preview-secondary-actions{grid-template-columns:1fr}.preview-actions button,.preview-secondary-actions button{min-height:48px;font-size:.82rem}
  .archive-head-actions,.archive-actions{grid-template-columns:1fr}.archive-view .archive-card{padding:14px 12px}
}

.profile-form{max-width:620px;margin-top:18px}.profile-form label{max-width:440px}.profile-form .primary{min-width:180px}.preview-agent span{display:block;margin-top:4px;font-size:.86rem;color:var(--muted)}
.admin-users-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(480px,1.4fr);gap:18px;margin-top:18px;align-items:start}.admin-user-form{display:grid;gap:10px}.admin-user-form label{margin:0}.admin-user-form .primary{margin-top:4px}.admin-users-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-users-head h2,.admin-user-form h2{margin:0 0 4px}.admin-users-list{display:grid;gap:8px;margin-top:16px}.admin-user-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.admin-user-row:last-child{border-bottom:0}.admin-user-row>span:first-child{display:grid;gap:3px;min-width:0}.admin-user-row small{color:var(--muted);overflow-wrap:anywhere}.admin-user-actions,.admin-user-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.admin-user-actions button{min-height:38px;padding:8px 12px}.admin-user-actions .danger{color:#9d2f20}.admin-user-form-actions{justify-content:flex-start}.admin-user-form-actions .primary{margin-top:0}
@media(max-width:900px){.admin-users-grid{grid-template-columns:1fr}.admin-user-row{grid-template-columns:minmax(0,1fr) auto}.admin-user-row .chip{grid-column:1/-1;justify-self:start}.admin-user-actions{grid-column:1/-1;justify-content:flex-start}}
.catalog-charges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;padding-top:7px}.catalog-charges fieldset{display:contents}.catalog-charges legend{grid-column:1/-1}.catalog-charges .supplement-options{display:contents}.catalog-extra-field{display:grid;align-content:start;gap:7px;min-width:0;margin:10px 0 0;padding:0;border:0;background:transparent;font-size:.86rem;font-weight:700}.catalog-extra-field input{width:100%;margin:0}.catalog-fields[data-unavailable="true"] .compact-grid,.catalog-fields[data-unavailable="true"] fieldset{display:none}.catalog-fields[data-unavailable="true"] .catalog-charges{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.catalog-fields[data-unavailable="true"] .catalog-extra-field{display:grid}.compact-grid label,.catalog-extra-field{min-width:0}
@media(max-width:900px){.catalog-charges{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.catalog-charges,.catalog-fields[data-unavailable="true"] .catalog-charges{grid-template-columns:minmax(0,1fr)}.catalog-extra-field input{width:100%}.catalog-item-actions{grid-template-columns:minmax(0,1fr)}.catalog-item-actions small{text-align:center}}

/* Compact operational layout aligned with the production visual reference. */
@media(min-width:901px){
  .heating-mode{grid-template:"top" 82px "main" 1fr/1fr}.heating-mode .topbar{height:82px;padding:12px 24px}.heating-mode .workspace{padding:18px 24px 24px}.heating-mode #heating-view{min-height:calc(100vh - 106px)}
  .editor-mode{grid-template:"top" 82px "main" 1fr/1fr}.editor-mode .topbar{height:82px;padding:12px 24px}.editor-mode .workspace{padding:18px 24px 24px}
  .sector-tabs{gap:8px;margin:0 -24px 24px;padding:0 24px}.sector-tab{width:210px;padding:14px;border-radius:14px 14px 0 0}
  .heating-grid{grid-template-columns:minmax(620px,1.93fr) minmax(340px,1fr);gap:22px}.heating-config,.heating-info{padding:24px}.heating-config h1{font-size:22px}.heating-banner{min-height:190px;margin:20px 0;padding:22px;border-radius:14px}.heating-side-image{min-height:260px;margin:20px 0;padding:22px;border-radius:14px}.heating-banner strong,.heating-side-image strong{font-size:22px}.heating-eyebrow{margin-top:22px}.catalog-pending{margin-top:20px;padding:18px}
  .quote-sector-tabs{margin:0 -24px 18px}.quote-sector-tabs button{width:207px;min-height:48px;padding:12px}.quote-editor-layout{gap:18px}.quote-editor-main{padding:18px}.quote-editor-hero{min-height:155px;margin-bottom:16px;padding:20px}.quote-live-preview{top:14px;padding:18px}.preview-image{height:180px}
  .compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}
}
.quote-editor-main label{margin:10px 0}.quote-editor-main .form-section-title{margin-top:12px;padding-top:10px}.quote-editor-main .catalog-fields{margin-top:12px;padding:14px}.catalog-heading p{line-height:1.35}.catalog-charges{padding-top:7px}.catalog-item-actions{margin-top:10px}.quote-notes textarea{min-height:92px}.quote-survey{margin-top:10px;padding:12px}.quote-conditions .form-section-title{margin-top:10px}.quote-conditions label{margin-bottom:4px}

/* Sector framing: same visual structure, coordinated climate/heating accents. */
.quote-editor-main,.quote-live-preview{border-top-width:5px;box-shadow:0 12px 32px rgba(15,61,46,.09)}
#editor-view[data-sector="climatizzazione"]{--sector-accent:var(--legacy-green);--sector-soft:#edf8f1;--sector-shadow:rgba(0,150,57,.16)}
#editor-view[data-sector="riscaldamento"]{--sector-accent:#b5532d;--sector-soft:#fff1e9;--sector-shadow:rgba(181,83,45,.18)}
#editor-view[data-sector="ibrido"]{--sector-accent:#166f88;--sector-soft:#eaf7fa;--sector-shadow:rgba(22,111,136,.18)}
#editor-view[data-sector] .quote-editor-main,#editor-view[data-sector] .quote-live-preview{border-top-color:var(--sector-accent);box-shadow:0 13px 34px var(--sector-shadow)}
#editor-view[data-sector] .quote-sector-tabs button.active{background:var(--sector-accent);border-color:var(--sector-accent);box-shadow:0 10px 26px var(--sector-shadow)}
#editor-view[data-sector] .form-section-title,#editor-view[data-sector] .catalog-heading h3,#editor-view[data-sector] .quote-panel-title{color:var(--sector-accent)}
#editor-view[data-sector] .catalog-badge,#editor-view[data-sector] .preview-agent{background:var(--sector-soft);color:var(--sector-accent)}
#editor-view[data-sector="riscaldamento"] .quote-editor-hero,#editor-view[data-sector="riscaldamento"] .preview-image{background-image:linear-gradient(0deg,rgba(0,0,0,.52),transparent 66%),url('./assets/heating-hero.jpg')}

#editor-view[data-sector="ibrido"] .quote-editor-hero,
#editor-view[data-sector="ibrido"] .preview-image{
  background-image:linear-gradient(0deg,rgba(0,0,0,.52),transparent 66%),url('./assets/hybrid-hero.jpg');
  background-position:center;
  background-size:cover;
}

/* UI and content design audit: final shared visual language. */
:root{
  --ui-ink:#123d31;
  --ui-copy:#41564f;
  --ui-muted:#66766f;
  --ui-green:#079447;
  --ui-green-deep:#0f3d2e;
  --ui-lime:#f0df19;
  --ui-page:#f4f7f5;
  --ui-surface:#ffffff;
  --ui-soft:#f7faf8;
  --ui-border:#d8e3de;
  --ui-border-strong:#bfd0c8;
  --ui-danger:#a3372f;
  --ui-radius-sm:10px;
  --ui-radius:16px;
  --ui-radius-lg:22px;
  --ui-shadow-sm:0 5px 18px rgba(15,61,46,.06);
  --ui-shadow:0 16px 42px rgba(15,61,46,.09);
  --ui-focus:0 0 0 4px rgba(240,223,25,.32);
  color:var(--ui-ink);
  background:var(--ui-page);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.5;
}
body{background:var(--ui-page);color:var(--ui-ink);text-rendering:optimizeLegibility}
h1,h2,h3{color:var(--ui-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:780;letter-spacing:-.025em;text-wrap:balance}
h1{font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.08}
h2{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.2}
h3{font-size:1.05rem;line-height:1.3}
p{color:var(--ui-copy);line-height:1.55}
.muted{color:var(--ui-muted)}
.eyebrow{margin-bottom:8px;color:#39735c;font-size:.71rem;font-weight:850;letter-spacing:.14em}
.field-help{display:block;color:var(--ui-muted);font-size:.75rem;font-weight:500;line-height:1.4}

input,select,textarea{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface);color:var(--ui-ink);font-size:.94rem;font-weight:500;line-height:1.4;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
input,select{min-height:48px}
input:hover,select:hover,textarea:hover{border-color:var(--ui-border-strong)}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:0;border-color:#789784;box-shadow:var(--ui-focus)}
input:disabled,select:disabled,textarea:disabled{background:#f0f3f1;color:#7b8983;cursor:not-allowed}
label{gap:7px;color:#425a51;font-size:.83rem;font-weight:760;line-height:1.35}

.primary,.secondary,.quiet,.upload-button,.danger-button{min-height:46px;border-radius:12px;font-size:.9rem;font-weight:800;line-height:1.2;transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.primary{background:var(--ui-green);color:#fff;box-shadow:0 7px 18px rgba(7,148,71,.15)}
.primary:hover{background:var(--ui-green-deep)}
.secondary{border:1px solid transparent;background:#eaf0ed;color:var(--ui-green-deep)}
.secondary:hover{border-color:var(--ui-border-strong);background:#e2ebe6}
.quiet:hover{background:#edf3f0}
.danger-button{border-color:#e7c5c1;color:var(--ui-danger)}
button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none}

.topbar{border-bottom:3px solid var(--ui-lime);background:var(--ui-surface)}
.brand-logo{width:170px;max-height:50px;object-fit:contain;object-position:left center}
.sidebar{border-color:var(--ui-border);background:var(--ui-surface)}
.nav-item{border-radius:12px;color:var(--ui-green-deep);font-weight:760}
.nav-item:hover{background:#f2f6f4}
.nav-item.active{background:#eaf4ee;color:#04733a;box-shadow:inset 3px 0 0 var(--ui-green)}
.nav-count{background:var(--ui-lime);color:var(--ui-green-deep)}
.environment{color:var(--ui-muted)}
.environment span{background:var(--ui-green)}
.workspace{padding:clamp(20px,2.3vw,34px)}

.home-hero-grid{gap:clamp(28px,4vw,54px);padding-block:18px 34px}
.home-copy{padding-left:clamp(0px,2vw,28px)}
.home-copy h1{font-size:clamp(2.45rem,4.4vw,4rem);font-weight:720;line-height:1.04}
.title-rule{width:64px;height:4px;margin:24px 0 28px;border-radius:99px;background:var(--ui-lime)}
.home-hero{box-shadow:var(--ui-shadow)}
.home-action-grid{gap:20px}
.home-card,.detail,.heating-config,.heating-info,.quote-editor-main,.quote-live-preview{border-color:var(--ui-border);background:var(--ui-surface);box-shadow:var(--ui-shadow-sm)}
.home-card{padding:clamp(20px,2.2vw,28px);border-radius:var(--ui-radius-lg)}
.home-card h2{margin-bottom:6px;font-size:1.25rem}
.sector-action{min-height:58px;border-radius:14px;box-shadow:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.sector-action:hover{transform:translateY(-1px);box-shadow:var(--ui-shadow-sm)}

.dashboard-intro{gap:22px;margin-bottom:24px}
.dashboard-intro .page-head{padding:24px 24px 24px 0}
.workspace-hero{border-radius:var(--ui-radius);box-shadow:var(--ui-shadow-sm)}
.filters{gap:12px;margin-bottom:18px;padding:12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:rgba(255,255,255,.72)}
.filters .search{max-width:none}
.content-grid{gap:22px}
.quote-card{gap:9px;padding:17px 18px;border-color:var(--ui-border);border-radius:var(--ui-radius);box-shadow:0 2px 0 rgba(15,61,46,.02)}
.quote-card:hover,.quote-card.selected{border-color:#8bb29e;box-shadow:var(--ui-shadow-sm)}
.quote-card.selected{border-left:4px solid var(--ui-lime)}
.detail{padding:clamp(20px,2.5vw,30px);border-radius:var(--ui-radius-lg)}
.facts{margin:22px 0;border-color:var(--ui-border);border-radius:14px;background:var(--ui-border)}
.facts div{padding:15px 16px}
.facts dt{color:var(--ui-muted);font-size:.7rem;letter-spacing:.08em}

.simple-head,.archive-head{gap:20px}
.simple-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}
.stats-grid{gap:14px}
.archive-head{padding:34px clamp(22px,4vw,50px) 28px}
.archive-head h1{margin-bottom:8px}
.archive-view>.archive-list{border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)}
.archive-view .archive-card{border-color:var(--ui-border);border-radius:var(--ui-radius)}
.notice-card,.draft-tile{border-color:var(--ui-border);border-radius:14px}

.quote-sector-tabs{gap:8px;margin-bottom:20px}
.quote-sector-tabs button{font-size:.88rem;letter-spacing:-.01em}
.quote-editor-layout{gap:20px}
.quote-editor-main,.quote-live-preview{border-radius:var(--ui-radius-lg)}
.quote-panel-title{margin-bottom:16px;font-size:1.25rem}
.quote-editor-hero{margin-bottom:18px;border-radius:14px}
.quote-editor-hero strong{font-size:1.3rem;line-height:1.2}
.quote-editor-hero span{margin-top:5px;font-size:.84rem;line-height:1.45}
.form-section-title{margin-top:18px;padding-top:16px;border-color:var(--ui-border);font-size:.73rem;letter-spacing:.1em}
.quote-editor-main .form-grid{gap:0 14px}
.quote-editor-main label{margin:10px 0}
.catalog-channel{margin:4px 0 14px;padding:16px;border-color:var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-soft)}
.catalog-channel legend{color:var(--ui-ink)}
.catalog-channel>p{margin-top:8px;color:var(--ui-muted);font-size:.77rem}
.catalog-channel-options label{margin:0;border-color:var(--ui-border);border-radius:12px}
.catalog-channel-options label:has(input:checked){border-color:var(--ui-green);box-shadow:0 7px 20px rgba(7,148,71,.1)}
.catalog-fields{margin-top:12px;padding:16px;border-color:var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-soft)}
.catalog-heading{padding-bottom:4px}
.catalog-heading h3{margin-bottom:4px;font-size:1.08rem}
.catalog-badge{background:#eef5cf;color:var(--ui-green-deep);font-size:.68rem;letter-spacing:.02em}
.compact-grid{gap:0 14px}
.catalog-charges{gap:10px 14px}
.catalog-extra-field{margin-top:10px}
.catalog-item-actions{gap:14px;margin-top:12px}
.catalog-item-actions small{color:var(--ui-muted)}
.catalog-item{border-color:var(--ui-border);border-radius:13px}
.catalog-item.active{border-color:var(--sector-accent,var(--ui-green));box-shadow:0 0 0 3px var(--sector-shadow,rgba(7,148,71,.1))}
.quote-notes textarea{min-height:100px;line-height:1.5}
.quote-survey{margin-top:14px;padding:14px 16px;border-color:#a9bdb4;border-radius:14px;background:#fbfdfc}
.quote-conditions label{max-width:360px}
.quote-live-preview{padding:20px}
.preview-brand{padding-bottom:12px;border-color:var(--ui-lime)}
.preview-brand>strong{font-size:1.55rem;letter-spacing:-.035em}
.preview-brand small{color:var(--ui-copy);font-size:.66rem;line-height:1.45}
.preview-image{margin:14px 0;border-radius:13px}
.preview-number{padding-bottom:13px;border-color:var(--ui-border)}
.preview-badge{background:var(--ui-lime);color:var(--ui-green-deep)}
.quote-live-preview h3{margin:14px 0 18px;font-size:1.05rem}
.preview-lines{font-size:.74rem}
.preview-line{padding:9px 0;border-color:#e5ece8}
.preview-grand-total{padding:14px 0;font-size:1.05rem}
.preview-agent{padding:13px;border-radius:12px}
.preview-actions,.preview-secondary-actions{gap:9px}
.preview-actions button,.preview-secondary-actions button{font-size:.78rem}
.preview-save-status{margin-top:7px;color:#39735c;font-size:.68rem;line-height:1.4}

.toast{right:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);max-width:min(420px,calc(100vw - 24px));border-radius:14px;background:var(--ui-green-deep);box-shadow:var(--ui-shadow)}
.login-shell{grid-template-columns:minmax(0,1fr)}
.login-card{border-top-color:var(--ui-lime);box-shadow:0 28px 84px rgba(0,0,0,.38)}
.login-card h1{font-size:1.65rem;line-height:1.2}
.login-card>p.muted{max-width:32ch;margin-inline:auto;color:var(--ui-muted)}
.login-card .quiet{min-height:42px}

@media(max-width:900px){
  .workspace{padding:18px}
  .home-hero-grid{gap:18px;padding-block:8px 24px}
  .home-copy{padding-left:0}
  .home-action-grid{grid-template-columns:1fr}
  .filters{grid-template-columns:1fr auto;padding:10px}
  .quote-live-preview{max-width:none}
  .simple-head{align-items:stretch;flex-direction:column}
}
@media(max-width:620px){
  h1{font-size:1.85rem}h2{font-size:1.3rem}
  .workspace{padding:12px 10px calc(92px + env(safe-area-inset-bottom))}
  .brand-logo{width:148px}
  .home-copy h1{font-size:2.5rem}
  .home-hero{min-height:230px;border-radius:16px}
  .home-card{padding:19px 16px;border-radius:17px}
  .filters{grid-template-columns:1fr;padding:9px}
  .filters button{width:100%}
  .quote-editor-layout{gap:12px}
  .quote-editor-main,.quote-live-preview{padding:14px 12px;border-radius:15px}
  .quote-sector-tabs{margin-inline:-10px;padding-inline:10px}
  .quote-sector-tabs button{min-width:126px}
  .catalog-channel,.catalog-fields{padding:13px 11px}
  .catalog-heading{gap:8px}
  .catalog-item-actions small{text-align:left}
  .quote-survey{align-items:stretch;padding:13px}
  .preview-actions,.preview-secondary-actions{grid-template-columns:1fr}
  .archive-head{padding:22px 14px}
  .simple-head{margin-bottom:16px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}


/* GreenTech editorial access: mirrors the public site's image-led hierarchy. */
.login-shell{
  min-height:100svh;
  display:grid;
  place-items:stretch;
  grid-template-columns:minmax(480px,1.15fr) minmax(460px,.85fr);
  padding:0;
  background:#fffdf8;
}
.login-visual{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  padding:clamp(42px,6vw,92px);
  isolation:isolate;
  background-image:url('./assets/login-store-warm-v2.webp');
  /* Keep the office shelves visible beside the monitor. */
  background-position:45% center;
  background-size:cover;
  background-repeat:no-repeat;
}
.login-visual::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(31,27,20,0) 0%,rgba(31,27,20,.05) 46%,rgba(31,27,20,.68) 100%);
}
.login-visual::after{
  content:"";
  position:absolute;
  inset:auto clamp(42px,6vw,92px) 0;
  height:5px;
  background:#a4d65e;
}
.login-visual-content{max-width:760px;color:#fff}
.login-visual-kicker{
  margin:0 0 20px;
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.login-visual h2{
  margin:0;
  color:#fff;
  font-family:"Montserrat",Arial,sans-serif;
  font-size:clamp(3.4rem,5.5vw,6.4rem);
  font-weight:400;
  line-height:.94;
  letter-spacing:-.055em;
}
.login-visual h2 em{display:block;margin-top:8px;color:#a4d65e;font-style:italic;font-weight:400}
.login-visual-content>p:last-child{max-width:620px;margin:28px 0 0;color:rgba(255,255,255,.9);font-size:clamp(.98rem,1.3vw,1.16rem);line-height:1.58}
.login-form-column{
  min-width:0;
  display:grid;
  place-items:center;
  padding:clamp(38px,6vw,92px);
  background:#fffdf8;
}
.login-card{
  grid-area:1/1;
  align-self:center;
  justify-self:center;
  width:min(470px,100%);
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.auth-logo{width:210px;margin:0 0 44px}
.login-card h1,.login-card>p{text-align:left}
.login-card .eyebrow{margin-bottom:12px;color:#4f7b3e}
.login-card h1{margin-bottom:12px;color:#0f3d2e;font-size:clamp(2rem,3.1vw,2.8rem);font-weight:650;line-height:1.04;letter-spacing:-.045em}
.login-card>p.muted{max-width:38ch;margin:0 0 34px;color:#52615b;font-size:.94rem;line-height:1.55}
.login-card label{margin:0 0 18px;color:#0f3d2e;font-size:.76rem;letter-spacing:.02em}
.login-card label input{
  height:54px;
  margin-top:7px;
  border:1px solid #d8e3de;
  border-radius:12px;
  background:#f4f7f5;
  color:#0f3d2e;
  font-size:1rem;
}
.login-card label input:focus{border-color:#78b82a;background:#fff;box-shadow:0 0 0 4px rgba(164,214,94,.24)}
.login-card .form-error{margin:2px 0 12px;font-size:.78rem}
.login-card .primary{
  min-height:56px;
  border-radius:999px;
  background:#a4d65e;
  color:#0f3d2e;
  box-shadow:none;
}
.login-card .primary:hover{background:#96ca4d;transform:translateY(-1px)}
.login-card .quiet{
  min-height:44px;
  border-radius:0;
  color:#0f3d2e;
  font-size:.82rem;
}
.login-card .quiet:hover{background:transparent;color:#497f20;text-decoration:underline;text-underline-offset:4px}
.login-card .primary+.quiet{margin-top:14px}
#login-form .auth-logo{margin-bottom:20px}
.login-site-link{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  width:min(260px,100%);
  margin:0 0 34px;
  padding-top:15px;
  border-top:1px solid #d8e3de;
  color:#49645a;
  font-size:.78rem;
  font-weight:750;
  line-height:1.4;
  text-decoration:none;
  text-underline-offset:4px;
}
.login-site-link:hover,.login-site-link:focus-visible{color:#497f20;text-decoration:underline}
.login-site-link:focus-visible{outline:0;box-shadow:var(--ui-focus)}

@media(max-width:900px){
  .login-shell{grid-template-columns:1fr;grid-template-rows:minmax(230px,32vh) auto;background:#fffdf8}
  .login-visual{min-height:230px;padding:32px 28px 56px;background-position:center}
  .login-visual::after{inset:auto 28px 0}
  .login-visual h2{font-size:clamp(2.7rem,8vw,4.2rem)}
  .login-visual-content>p:last-child{max-width:560px;margin-top:18px;font-size:.9rem}
  .login-form-column{position:relative;z-index:1;margin-top:-28px;padding:50px 28px 54px;border-radius:28px 28px 0 0}
  .login-card{width:min(520px,100%)}
  .auth-logo{width:190px;margin-bottom:34px}
  #login-form .auth-logo{margin-bottom:18px}
  .login-site-link{width:min(250px,100%);margin-bottom:30px;padding-top:14px}
}
@media(max-width:560px){
  .login-shell{grid-template-rows:205px auto}
  .login-visual{min-height:205px;padding:28px 20px 44px;background-position:48% center}
  .login-visual::after{inset:auto 20px 0;height:4px}
  .login-visual-kicker{margin-bottom:12px;font-size:.61rem}
  .login-visual h2{font-size:2.35rem;line-height:.96}
  .login-visual-content>p:last-child{display:none}
  .login-form-column{margin-top:-20px;padding:40px 20px calc(42px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}
  .auth-logo{width:170px;margin-bottom:30px}
  #login-form .auth-logo{margin-bottom:16px}
  .login-site-link{width:min(240px,100%);margin-bottom:26px;padding-top:13px;gap:6px;font-size:.76rem}
  .login-card h1{font-size:2rem}
  .login-card>p.muted{margin-bottom:28px}
}


/* Archive search: compact, readable and consistent across operational roles. */
.archive-tools{display:grid;grid-template-columns:minmax(280px,1.7fr) repeat(3,minmax(150px,.7fr)) auto;gap:12px;align-items:end;margin:20px 50px 0;padding:18px;border:1px solid var(--ui-border);border-radius:18px;background:rgba(255,255,255,.86);box-shadow:var(--ui-shadow-sm)}
.archive-tools label{display:grid;gap:7px;min-width:0}.archive-tools label>span{color:var(--ui-muted);font-size:.72rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.archive-tools input,.archive-tools select{width:100%;min-width:0}.archive-tools .quiet{min-height:48px;white-space:nowrap}
.archive-summary{margin:12px 50px 0;color:var(--ui-muted);font-size:.82rem;font-weight:700}
.archive-readonly-note{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid #cfe0d7;border-radius:999px;background:#f2f7f4;color:var(--ui-green-deep);font-size:.72rem;font-weight:800}
@media(max-width:1180px){.archive-tools{grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(145px,1fr));margin-inline:20px}.archive-tools #archive-operator-field{grid-column:auto}.archive-tools .quiet{width:100%}.archive-summary{margin-inline:20px}}
@media(max-width:760px){.archive-tools{grid-template-columns:1fr 1fr;margin:14px 12px 0;padding:14px}.archive-search{grid-column:1/-1}.archive-summary{margin-inline:14px}.archive-tools .quiet{grid-column:1/-1}}
@media(max-width:480px){.archive-tools{grid-template-columns:1fr;margin-inline:8px}.archive-search,.archive-tools .quiet{grid-column:auto}.archive-head-actions{grid-template-columns:1fr}.archive-head-actions [data-view="home"]{display:none}.archive-summary{margin-inline:10px}}


/* Expanded desktop navigation: keep long labels readable without affecting compact mode. */
@media(min-width:901px){
  .home-mode:not(.sidebar-collapsed){grid-template:"side main" 1fr/240px 1fr}
  .home-mode:not(.sidebar-collapsed) .sidebar{width:240px;padding-inline:20px}
  .home-mode:not(.sidebar-collapsed) .nav-item>span:not(.nav-count){min-width:0;white-space:nowrap}
}

/* Login: scala desktop calibrata per monitor ampi, senza alterare l'area operativa. */
@media (min-width:1100px){
  .login-visual h2{
    font-size:clamp(3.4rem,4.6vw,3.9rem);
    line-height:.94;
  }

  .login-card h1{
    font-size:clamp(2rem,2.55vw,2.35rem);
    line-height:1.08;
  }
}


/* HVAC document library */
.hvac-library{max-width:1180px;margin:0 auto}.library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;padding:30px 32px;border-radius:22px;background:linear-gradient(135deg,#083f31,#116448);color:#fff;box-shadow:0 18px 42px rgba(7,56,43,.16)}.library-head h1{max-width:760px;margin:4px 0 8px;font-size:clamp(1.8rem,3vw,3rem);line-height:1.08}.library-head .eyebrow{color:#d9f29b}.library-head .muted{max-width:720px;color:#d8e9e2}.library-status{flex:none;padding:8px 12px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:rgba(255,255,255,.1);font-size:.78rem;font-weight:750}.library-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:22px;align-items:start}.library-index{position:sticky;top:24px;display:grid;gap:5px;padding:18px;border:1px solid var(--legacy-border);border-radius:16px;background:#fff}.library-index strong{padding:4px 8px 10px;color:var(--legacy-ink)}.library-index a{padding:10px 8px;border-radius:9px;color:var(--muted);font-size:.88rem;text-decoration:none}.library-index a:hover,.library-index a:focus-visible{background:#edf6f1;color:#07523d}.library-tree{display:grid;gap:12px}.library-group{scroll-margin-top:24px;border:1px solid #d8e5df;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(14,62,47,.05);overflow:hidden}.library-group>summary,.library-brand>summary{display:flex;align-items:center;gap:13px;list-style:none;cursor:pointer}.library-group>summary::-webkit-details-marker,.library-brand>summary::-webkit-details-marker{display:none}.library-group>summary{min-height:84px;padding:16px 20px}.library-group>summary::after,.library-brand>summary::after{content:"+";margin-left:auto;color:#477066;font-size:1.35rem;font-weight:500}.library-group[open]>summary::after,.library-brand[open]>summary::after{content:"−"}.library-group>summary>span:not(.library-icon){display:grid;gap:3px}.library-group summary small{color:var(--muted);font-weight:500}.library-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#eaf5ef;color:#08734f;font-size:1.25rem}.library-group[open]>summary{border-bottom:1px solid #e5ede9}.library-group-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px}.library-brand{border:1px solid #e0e9e5;border-radius:13px;background:#fbfdfc}.library-brand>summary{padding:14px 15px}.library-brand>summary small{margin-left:6px}.library-brand ul,.library-leaves{list-style:none;margin:0;padding:0 15px 14px}.library-brand li,.library-leaves li{position:relative;padding:10px 12px 10px 34px;border-top:1px solid #edf2ef;color:#26473e}.library-brand li::before,.library-leaves li::before{content:"";position:absolute;left:12px;top:15px;width:11px;height:14px;border:1.5px solid #6a8a80;border-radius:2px;background:linear-gradient(135deg,transparent 5px,#fff 5px)}.library-leaves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;padding:8px 18px 18px}.library-leaves li{border-top:0;border-bottom:1px solid #edf2ef}
@media(max-width:900px){.library-layout{grid-template-columns:1fr}.library-index{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.library-index strong{grid-column:1/-1}.library-index a{border:1px solid #e2ebe7}.library-group-body{grid-template-columns:1fr}}
@media(max-width:620px){.library-head{align-items:flex-start;flex-direction:column;margin:-4px -4px 18px;padding:24px 20px;border-radius:16px}.library-status{display:none}.library-index{grid-template-columns:1fr 1fr;padding:12px}.library-index a{font-size:.78rem}.library-group>summary{min-height:74px;padding:13px}.library-icon{width:40px;height:40px}.library-leaves{grid-template-columns:1fr;padding-inline:13px}.library-brand>summary{padding:12px}.library-brand li{padding-left:32px}}

.library-group-body-stack{grid-template-columns:1fr}.library-nested-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 14px 14px}.library-folder{border:1px solid #e3ebe7;border-radius:11px;background:#fff}.library-folder>summary{display:flex;align-items:center;padding:12px;list-style:none;cursor:pointer}.library-folder>summary::-webkit-details-marker{display:none}.library-folder>summary::after{content:"+";margin-left:auto;color:#477066}.library-folder[open]>summary::after{content:"−"}.library-folder ul{list-style:none;margin:0;padding:0 12px 12px}.library-folder li{position:relative;padding:9px 10px 9px 31px;border-top:1px solid #edf2ef;color:#26473e}.library-folder li::before{content:"";position:absolute;left:10px;top:13px;width:11px;height:14px;border:1.5px solid #6a8a80;border-radius:2px}.library-single{display:grid;align-content:center;gap:4px;padding:16px}.library-single small{color:var(--muted)}
@media(max-width:620px){.library-nested-grid{grid-template-columns:1fr;padding-inline:10px}.library-index{grid-template-columns:1fr}.library-index strong{grid-column:auto}}


/* Documentation polish: compact working surface, clear hierarchy and accessible motion. */
.hvac-library{max-width:1240px}.library-head{position:relative;isolation:isolate;align-items:center;min-height:188px;margin-bottom:20px;padding:34px 38px;overflow:hidden;background:linear-gradient(125deg,#063c2d 0%,#0c6245 68%,#168257 100%)}.library-head::after{content:"";position:absolute;z-index:-1;right:-70px;bottom:-115px;width:310px;height:310px;border:58px solid rgba(255,255,255,.07);border-radius:50%}.library-head h1{max-width:700px;font-size:clamp(2rem,3.5vw,3.35rem);letter-spacing:-.035em}.library-head .eyebrow{margin-bottom:10px;letter-spacing:.09em}.library-status{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;min-width:164px;padding:13px 15px;border-color:rgba(255,255,255,.22);border-radius:15px}.library-status strong{font-size:1.8rem;line-height:1}.library-status span{font-size:.75rem;line-height:1.25}.library-layout{grid-template-columns:280px minmax(0,1fr);gap:18px}.library-index{top:20px;gap:8px;padding:12px;border-radius:18px;box-shadow:0 10px 30px rgba(14,62,47,.06)}.library-index-label{padding:8px 10px 10px;color:#536861;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.library-index a{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:10px;min-height:66px;padding:10px;border:1px solid transparent;border-radius:13px;color:#173f34}.library-index a>span:last-child{display:grid;gap:3px;min-width:0}.library-index a strong{padding:0;color:inherit;font-size:.83rem;line-height:1.25}.library-index a small{color:#71817c;font-size:.7rem}.library-index-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eaf5ef;color:#08734f;font-size:.68rem;font-weight:850}.library-index a:hover,.library-index a:focus-visible{border-color:#cfe3da;background:#f3f9f6;outline:0;transform:translateY(-1px)}.library-index a:focus-visible{box-shadow:0 0 0 3px rgba(0,150,57,.15)}.library-tree{gap:10px}.library-group{border-color:#dce8e2;border-radius:18px;box-shadow:0 6px 20px rgba(14,62,47,.045)}.library-group>summary{min-height:88px;padding:17px 19px}.library-group>summary:focus-visible,.library-brand>summary:focus-visible,.library-folder>summary:focus-visible{outline:3px solid rgba(0,150,57,.22);outline-offset:-3px}.library-group>summary::after,.library-brand>summary::after{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f1f6f3;font-size:1.05rem}.library-group[open]>summary::after,.library-brand[open]>summary::after{background:#e5f3eb}.library-group>summary>span:not(.library-icon) strong{font-size:1rem}.library-icon{width:46px;height:46px}.library-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.library-group[data-tone="energy"] .library-icon{background:#fff4cf;color:#8b6500}.library-group[data-tone="solar"] .library-icon{background:#fff0c2;color:#9a6100}.library-group[data-tone="company"] .library-icon{background:#edf1f7;color:#425876}.library-brand,.library-folder{transition:border-color .16s ease,box-shadow .16s ease}.library-brand[open],.library-folder[open]{border-color:#cddfd7;box-shadow:0 5px 16px rgba(14,62,47,.045)}.library-brand li,.library-leaves li,.library-folder li{min-height:42px;font-size:.875rem}.library-brand li::before,.library-leaves li::before,.library-folder li::before{background:none}.library-group-body{padding:14px}.library-group-body-stack{gap:10px}
@media(max-width:900px){.library-head{min-height:160px}.library-layout{grid-template-columns:1fr}.library-index{position:static;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.library-index-label{grid-column:1/-1}.library-index a{border-color:#e3ebe7}}
@media(max-width:620px){.library-head{min-height:148px;margin:-4px -4px 14px;padding:24px 20px}.library-head h1{font-size:2rem}.library-layout{gap:12px}.library-index{grid-template-columns:1fr 1fr;gap:7px;padding:9px}.library-index-label{grid-column:1/-1}.library-index a{display:flex;align-items:flex-start;min-height:86px;padding:11px}.library-index a small{display:none}.library-index-mark{flex:none;width:28px;height:28px}.library-index a strong{font-size:.78rem}.library-group>summary{min-height:76px;padding:13px}.library-group>summary>span:not(.library-icon) strong{font-size:.92rem}.library-group summary small{font-size:.72rem}.library-icon{width:40px;height:40px}.library-icon svg{width:20px;height:20px}}
@media(prefers-reduced-motion:no-preference){.library-index a,.library-group,.library-brand,.library-folder{transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.library-group[open]{box-shadow:0 12px 32px rgba(14,62,47,.075)}}


/* Operational document library */
.library-admin-panel{margin-bottom:14px;border:1px solid #cfe0d8;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(14,62,47,.05);overflow:hidden}.library-admin-panel>summary{display:flex;align-items:center;justify-content:space-between;min-height:66px;padding:14px 18px;list-style:none;cursor:pointer}.library-admin-panel>summary::-webkit-details-marker{display:none}.library-admin-panel>summary>span:first-child{display:grid;gap:2px}.library-admin-panel>summary small{color:var(--muted);font-weight:500}.library-admin-panel>summary>span:last-child{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e8f4ed;color:#08734f;font-size:1.15rem}.library-admin-panel[open]>summary>span:last-child{transform:rotate(45deg)}.library-upload-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px;border-top:1px solid #e5ede9;background:#fbfdfc}.library-upload-form .wide{grid-column:1/-1}.library-upload-form textarea{resize:vertical}.library-role-field{display:flex;flex-wrap:wrap;gap:9px 18px;margin:0;padding:13px 15px;border:1px solid var(--legacy-border);border-radius:12px}.library-role-field legend{padding:0 6px;font-weight:750}.library-role-field label{display:flex;align-items:center;gap:7px;margin:0;font-weight:600}.library-role-field input{width:auto;min-height:auto;accent-color:#07854c}.library-file-field{padding:14px;border:1px dashed #b9d2c6;border-radius:12px;background:#fff}.library-file-field small{display:block;margin-top:6px;color:var(--muted)}.library-upload-actions{display:flex;align-items:center;gap:14px}
.library-upload-success{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:16px 18px;border:1px solid #9edc31;border-radius:18px;background:linear-gradient(120deg,#f5ffd9 0%,#d9ff74 52%,#fff0a8 100%);box-shadow:0 14px 30px rgba(91,142,21,.16)}
.library-upload-success[hidden],.library-upload-session[hidden]{display:none}
.library-upload-success-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#0b7655;color:#fff;font-size:1.35rem;font-weight:900;box-shadow:0 8px 18px rgba(11,118,85,.22)}
.library-upload-success strong{display:block;color:#063f35;font-size:1rem}.library-upload-success p{margin:3px 0 0;color:#446056;font-size:.82rem}
.library-upload-next-actions{display:flex;gap:9px}.library-upload-next-actions button{min-height:44px;border-radius:999px;padding:10px 17px;font-weight:850}
.library-action-lime{border:1px solid #8ecb1f;background:linear-gradient(135deg,#caff37,#9fe629);color:#143d18;box-shadow:0 8px 18px rgba(144,205,31,.22)}
.library-action-sun{border:1px solid #e5b319;background:linear-gradient(135deg,#ffe96a,#ffc62f);color:#4a3500;box-shadow:0 8px 18px rgba(229,179,25,.2)}
.library-action-lime:hover,.library-action-sun:hover{transform:translateY(-1px);filter:saturate(1.08) brightness(1.02)}
.library-upload-session{padding:16px;border:1px solid #b9e3d5;border-radius:18px;background:linear-gradient(145deg,#f2fffa,#e6fbff 58%,#fff8d9);box-shadow:0 12px 30px rgba(13,92,72,.08)}
.library-upload-session h4{margin:2px 0 11px;color:#063f35;font-size:1rem}.library-upload-session-list{display:grid;gap:8px}
.library-upload-session-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;border:1px solid rgba(15,126,91,.16);border-radius:13px;background:rgba(255,255,255,.88)}
.library-session-index{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#ffcf35;color:#4a3500;font-weight:900}.library-upload-session-list strong{display:block;color:#063f35;font-size:.86rem}.library-upload-session-list small{display:block;margin-top:2px;color:#61726c;font-size:.72rem}.library-session-status{padding:6px 10px;border-radius:999px;background:#caff37;color:#174317;font-size:.7rem;font-weight:850}
.library-live-documents{margin-bottom:18px;padding:18px;border:1px solid #dce8e2;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(14,62,47,.045)}.library-live-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}.library-live-head h2{margin:2px 0 0;font-size:1.25rem}.library-live-head label{min-width:250px;margin:0}.library-document-list{display:grid;gap:9px}.library-document-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px;border:1px solid #e3ebe7;border-radius:14px;background:#fbfdfc}.library-file-icon{display:grid;place-items:center;width:46px;height:50px;border-radius:10px;background:#e7f3ec;color:#08734f;font-size:.66rem;font-weight:850}.library-document-card h3{margin:2px 0 4px;font-size:.95rem}.library-document-card p{margin:0 0 5px;color:#536861;font-size:.82rem}.library-document-card .library-document-path{color:#08734f;font-size:.69rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.library-document-card small{color:var(--muted);font-size:.72rem}.library-document-actions{display:flex;gap:6px}.library-document-actions a{text-decoration:none}.library-document-actions .secondary,.library-document-actions .quiet{min-height:38px;padding:8px 11px}
@media(max-width:700px){.library-upload-success{grid-template-columns:auto 1fr}.library-upload-next-actions{grid-column:1/-1;display:grid}.library-upload-next-actions button{width:100%}.library-upload-session-list article{grid-template-columns:auto 1fr}.library-session-status{grid-column:2;justify-self:start}.library-upload-form{grid-template-columns:1fr}.library-upload-form .wide{grid-column:auto}.library-live-head{align-items:stretch;flex-direction:column}.library-live-head label{min-width:0}.library-document-card{grid-template-columns:42px 1fr}.library-file-icon{width:40px;height:44px}.library-document-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.library-document-actions>*{text-align:center}.library-upload-actions{align-items:stretch;flex-direction:column}.library-upload-actions button{width:100%}}

.library-filters{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(170px,1fr) minmax(190px,1fr) auto;align-items:end;gap:10px;margin-bottom:14px;padding:12px;border-radius:14px;background:#f4f8f6}.library-filters label{margin:0;font-size:.75rem}.library-filters input,.library-filters select{margin-top:5px;background:#fff}.library-filters button{min-height:44px}.library-document-actions{flex-wrap:wrap;justify-content:flex-end;max-width:260px}.library-dialog{width:min(720px,calc(100% - 24px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:18px;box-shadow:0 24px 70px rgba(5,42,31,.24)}.library-dialog::backdrop{background:rgba(8,32,25,.5);backdrop-filter:blur(3px)}.library-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:18px;border-bottom:1px solid #e2ebe7}.library-dialog-head h2{margin:2px 0 0}.library-history-list{display:grid;gap:9px;padding:16px}.library-history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #e0e9e5;border-radius:12px;background:#fbfdfc}.library-history-row>div{display:grid;gap:4px}.library-history-row small{color:var(--muted)}.library-upload-form{position:relative}.library-upload-form::after{content:"";position:absolute;left:0;bottom:0;width:var(--upload-progress,0);height:3px;background:#07854c;transition:width .2s ease}
@media(max-width:900px){.library-filters{grid-template-columns:1fr 1fr}.library-search{grid-column:1/-1}}
@media(max-width:620px){.library-filters{grid-template-columns:1fr}.library-search{grid-column:auto}.library-document-actions{max-width:none}.library-history-row{align-items:stretch;flex-direction:column}.library-history-row a{text-align:center}}


/* Warm, photographic documentation experience. Scoped to Documentazione only. */
.hvac-library{display:flex;max-width:1280px;flex-direction:column;gap:18px;--library-lime:#b9ef3b;--library-deep:#063f2f;--library-cream:#fffdf7}
.hvac-library .library-head{order:1;align-items:flex-start;min-height:302px;margin:0;padding:54px 42px 34px;border:1px solid #e1e8de;border-radius:0 0 24px 24px;background:var(--library-cream);color:var(--library-deep);box-shadow:0 16px 42px rgba(22,62,46,.1)}
.hvac-library .library-head::before{content:"";position:absolute;z-index:-2;inset:-2px;background:url("./assets/dashboard-hero.jpg") center 44%/cover no-repeat;filter:brightness(1.16) saturate(1.08) contrast(.94) sepia(.05);transform:scale(1.01)}
.hvac-library .library-head::after{display:block;z-index:-1;inset:0;width:auto;height:auto;border:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,253,247,.99) 0%,rgba(255,250,238,.93) 31%,rgba(255,224,179,.18) 58%,rgba(255,197,112,.08) 100%)}.hvac-library .library-head-copy{display:flex;max-width:610px;min-height:214px;flex-direction:column;align-items:flex-start}.hvac-library .library-head .eyebrow{margin:0 0 14px;color:var(--library-deep);font-size:.72rem;letter-spacing:.28em}.hvac-library .library-head h1{max-width:590px;margin:0;color:#082f27;font:720 clamp(2.55rem,4.5vw,4.25rem)/1.02 "Montserrat",Arial,sans-serif;letter-spacing:-.045em}.hvac-library .library-head .muted{max-width:580px;margin:15px 0 0;color:#34554c;font-size:1rem}.library-title-accent{display:block;width:176px;height:7px;margin-top:17px;border-radius:100% 15% 100% 10%;background:linear-gradient(90deg,#4da91e,var(--library-lime));transform:rotate(-2deg)}.hvac-library .library-status{display:none}.library-back{margin:-25px 0 20px;padding:8px 0;border:0;background:transparent;color:#07523d;font-weight:800;cursor:pointer}.library-back:hover{text-decoration:underline}
.hvac-library .library-layout{order:2;display:block}.hvac-library .library-index{position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;border:0;background:transparent;box-shadow:none}.hvac-library .library-index-label{grid-column:1/-1;padding:0 2px 2px;color:#163f34;font:720 1.3rem/1.2 "Montserrat",Arial,sans-serif;letter-spacing:0;text-transform:none}.hvac-library .library-index a{display:grid;grid-template-columns:60px minmax(0,1fr);align-items:center;gap:15px;min-height:130px;padding:20px;border:1px solid rgba(24,121,67,.18);border-radius:18px;background:linear-gradient(145deg,#ffffff 0%,#f4ffe8 100%);box-shadow:0 12px 26px rgba(22,62,46,.08)}.hvac-library .library-index a::after{content:none}.hvac-library .library-index-mark{width:60px;height:60px;border-radius:18px;background:linear-gradient(145deg,#dff8c8,#aeea74);color:#07523d;box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 8px 18px rgba(31,126,57,.12)}.hvac-library .library-index-mark svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hvac-library .library-index a[data-card-tone="climate"]{background:linear-gradient(145deg,#ffffff 0%,#e8f9ef 100%)}.hvac-library .library-index a[data-card-tone="climate"] .library-index-mark{background:linear-gradient(145deg,#e6faef,#bdebcf)}.hvac-library .library-index a[data-card-tone="heating"]{background:linear-gradient(145deg,#fffefa 0%,#fff0c4 100%)}.hvac-library .library-index a[data-card-tone="heating"] .library-index-mark{background:linear-gradient(145deg,#fff1ad,#ffd34f);color:#7a5700}.hvac-library .library-index a[data-card-tone="energy"]{background:linear-gradient(145deg,#ffffff 0%,#eefbdc 100%)}.hvac-library .library-index a[data-card-tone="energy"] .library-index-mark{background:linear-gradient(145deg,#dff597,#a9df31);color:#315e0c}.hvac-library .library-index a[data-card-tone="solar"]{background:linear-gradient(145deg,#fffefa 0%,#fff4b8 100%)}.hvac-library .library-index a[data-card-tone="solar"] .library-index-mark{background:linear-gradient(145deg,#ffe66a,#f6c515);color:#665000}.hvac-library .library-index a strong{font:720 1.07rem/1.2 "Montserrat",Arial,sans-serif}.hvac-library .library-index a small{font-size:.75rem;line-height:1.35}.hvac-library .library-index a:hover,.hvac-library .library-index a:focus-visible{border-color:#4ba81e;background:#fbfff6;box-shadow:0 13px 28px rgba(45,116,45,.12);transform:translateY(-3px)}
.hvac-library .library-tree{display:none;margin-top:14px}.hvac-library[data-area-active="true"] .library-index{display:none}.hvac-library[data-area-active="true"] .library-tree{display:grid}.hvac-library[data-area-active="true"] .library-group:not([open]){display:none}.hvac-library[data-active-area="hvac"] .library-head::before{background-image:url("./assets/climate-hero.png")}
.hvac-library .library-live-documents{order:3;margin:0;padding:18px;border-color:#dde5dc;border-radius:18px;background:rgba(255,255,255,.95);box-shadow:0 10px 28px rgba(25,67,49,.06)}.hvac-library .library-live-head h2{font:720 1.55rem/1.2 "Montserrat",Arial,sans-serif}.hvac-library .library-filters{grid-template-columns:minmax(320px,1.7fr) minmax(170px,.7fr) minmax(190px,.8fr) auto;padding:10px;border:1px solid #dfe6dc;border-radius:16px;background:#fff;box-shadow:0 8px 18px rgba(22,62,46,.045)}.hvac-library .library-search input{min-height:50px}.hvac-library .library-filters button{border-radius:999px;background:var(--library-lime);color:#073e30}.hvac-library .library-document-card{border-color:#e1e6df;border-radius:12px;background:#fff}.hvac-library .library-file-icon{background:#eef7e9}.hvac-library .library-document-actions .secondary{background:#edf8e8;color:#07523d}.hvac-library .library-admin-panel{order:4;margin:0;border-color:#8dcc56}.hvac-library .library-admin-panel>summary>span:last-child{background:var(--library-lime);color:#073e30}
@media(max-width:1050px){.hvac-library .library-index{grid-template-columns:repeat(2,minmax(0,1fr))}.hvac-library .library-head{min-height:260px}.hvac-library .library-filters{grid-template-columns:1fr 1fr}.hvac-library .library-search{grid-column:1/-1}}
@media(max-width:620px){.hvac-library{gap:12px}.hvac-library .library-head{min-height:300px;margin:0;padding:30px 22px 24px;border-radius:0 0 18px 18px;background:var(--library-cream)}.hvac-library .library-head::before{background-position:62% center}.hvac-library .library-head::after{background:linear-gradient(180deg,rgba(255,253,247,.98) 0%,rgba(255,249,235,.9) 58%,rgba(255,221,172,.22) 100%)}.hvac-library .library-head-copy{min-height:240px}.hvac-library .library-head h1{font-size:2.55rem}.hvac-library .library-head .muted{font-size:.92rem}.library-title-accent{width:132px;height:6px}.library-back{margin:-13px 0 15px}.hvac-library .library-index{grid-template-columns:1fr}.hvac-library .library-index a{min-height:100px;padding:15px}.hvac-library .library-index-label{font-size:1.15rem}.hvac-library .library-filters{grid-template-columns:1fr}.hvac-library .library-search{grid-column:auto}.hvac-library .library-document-card{padding:12px}}


/* Interactive second level: warm, spacious and consistent with the documentation landing. */
.hvac-library[data-area-active="true"]{gap:20px}
.hvac-library[data-area-active="true"] .library-tree{margin-top:0}
.hvac-library[data-area-active="true"] .library-group{border:1px solid rgba(62,137,76,.22);border-radius:22px;background:linear-gradient(145deg,#fffefa 0%,#f5fbe9 100%);box-shadow:0 16px 38px rgba(25,67,49,.09)}
.hvac-library[data-area-active="true"] .library-group>summary{min-height:112px;padding:24px 28px;border-bottom-color:rgba(48,122,67,.14);background:linear-gradient(120deg,#f9fff1 0%,#e9f8cf 100%)}
.hvac-library[data-area-active="true"] .library-group>summary>span:not(.library-icon){gap:7px}
.hvac-library[data-area-active="true"] .library-group>summary>span:not(.library-icon) strong{font-family:"Montserrat",Arial,sans-serif;font-size:1.18rem;font-weight:750}
.hvac-library[data-area-active="true"] .library-group summary small{font-size:.82rem;color:#45655a}
.hvac-library[data-area-active="true"] .library-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,#dff8c8,#aeea74);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 8px 18px rgba(31,126,57,.12)}
.hvac-library[data-area-active="true"] .library-group>summary::after,.hvac-library[data-area-active="true"] .library-brand>summary::after{background:#fff;color:#147139;box-shadow:0 5px 14px rgba(24,105,51,.1)}
.hvac-library[data-area-active="true"] .library-group-body{gap:14px;padding:20px}
.hvac-library[data-area-active="true"] .library-brand{border:1px solid rgba(65,137,79,.18);border-radius:16px;background:rgba(255,255,255,.88);box-shadow:0 8px 20px rgba(28,76,48,.055);overflow:hidden}
.hvac-library[data-area-active="true"] .library-brand>summary{min-height:64px;padding:17px 18px;background:linear-gradient(135deg,#fff 0%,#f3fae9 100%)}
.hvac-library[data-area-active="true"] .library-brand>summary strong,.hvac-library[data-area-active="true"] .library-folder>summary strong{font-family:"Montserrat",Arial,sans-serif;font-size:.94rem;font-weight:750}
.hvac-library[data-area-active="true"] .library-nested-grid{gap:15px;padding:16px}
.hvac-library[data-area-active="true"] .library-folder{border:1px solid rgba(55,130,73,.18);border-radius:14px;background:linear-gradient(145deg,#fff 0%,#f8fdf2 100%);overflow:hidden}
.hvac-library[data-area-active="true"] .library-folder>summary{min-height:58px;padding:15px 16px;background:#fbfff6}
.hvac-library[data-area-active="true"] .library-brand ul,.hvac-library[data-area-active="true"] .library-leaves,.hvac-library[data-area-active="true"] .library-folder ul{gap:8px;padding:10px 14px 16px}
.hvac-library[data-area-active="true"] .library-brand li,.hvac-library[data-area-active="true"] .library-leaves li,.hvac-library[data-area-active="true"] .library-folder li{min-height:0;padding:0;border:0}
.hvac-library[data-area-active="true"] button[data-library-category]{display:flex;width:100%;min-height:46px;align-items:center;padding:11px 14px;border:1px solid #dcebd8;border-radius:11px;background:#fff;color:#173f34;font-family:"Montserrat",Arial,sans-serif;font-size:.84rem;font-weight:620;text-align:left;box-shadow:0 3px 10px rgba(22,75,44,.035);transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.hvac-library[data-area-active="true"] button[data-library-category]::before{content:"";width:9px;height:9px;margin-right:11px;border:2px solid #68b73c;border-radius:50%;background:#edfadf}
.hvac-library[data-area-active="true"] button[data-library-category]:hover,.hvac-library[data-area-active="true"] button[data-library-category]:focus-visible{border-color:#75bd42;background:#f8fff0;box-shadow:0 7px 16px rgba(41,116,50,.09);transform:translateY(-1px);outline:0}
.hvac-library[data-area-active="true"] button[data-library-category].active{border-color:#55aa2c;background:linear-gradient(135deg,#ecfbdc,#d9f5b7);color:#073e30}
.hvac-library[data-area-active="true"] button[data-library-category].active::before{background:#78cf35;box-shadow:0 0 0 4px rgba(120,207,53,.16)}
.hvac-library[data-library-section="climate"] #doc-hvac .library-brand:nth-child(n+3){display:none}
.hvac-library[data-library-section="heating"] #doc-hvac .library-brand:nth-child(-n+2){display:none}
.hvac-library[data-library-section="heating"] #doc-hvac .library-group-body{grid-template-columns:repeat(2,minmax(0,1fr))}
.hvac-library[data-area-active="true"] .library-live-documents{padding:24px;border-color:rgba(67,135,77,.2);background:linear-gradient(145deg,#fff 0%,#fbfff4 100%);box-shadow:0 16px 38px rgba(25,67,49,.08)}
.hvac-library[data-area-active="true"] .library-live-head h2{font-family:"Montserrat",Arial,sans-serif;font-size:1.65rem;font-weight:750}
@media(max-width:760px){.hvac-library[data-library-section="heating"] #doc-hvac .library-group-body{grid-template-columns:1fr}.hvac-library[data-area-active="true"] .library-group>summary{min-height:92px;padding:18px}.hvac-library[data-area-active="true"] .library-group-body{padding:12px}.hvac-library[data-area-active="true"] .library-nested-grid{grid-template-columns:1fr;padding:12px}.hvac-library[data-area-active="true"] .library-live-documents{padding:16px}}

.hvac-library[data-area-active="true"] .library-group{position:relative;overflow:hidden}
.hvac-library[data-area-active="true"] .library-group::before{content:"";position:absolute;z-index:2;top:0;left:28px;width:118px;height:5px;border-radius:0 0 8px 8px;background:linear-gradient(90deg,#0a8a4c,#b9ef3b,#f3c51d)}
.hvac-library[data-area-active="true"] .library-group>summary{position:relative;background:radial-gradient(circle at 88% 20%,rgba(255,213,64,.24),transparent 22%),linear-gradient(120deg,#fffdf4 0%,#eefbdc 56%,#dff5bd 100%)}
.hvac-library[data-area-active="true"] .library-group>summary::before{content:"Esplora";position:absolute;right:76px;top:26px;padding:6px 10px;border:1px solid rgba(54,130,61,.15);border-radius:999px;background:rgba(255,255,255,.7);color:#337044;font-size:.64rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.hvac-library[data-area-active="true"] .library-brand{position:relative}
.hvac-library[data-area-active="true"] .library-brand::before{content:"";position:absolute;z-index:2;left:0;top:0;bottom:0;width:4px;background:#70c63b}
.hvac-library[data-area-active="true"] .library-brand:nth-child(2)::before{background:#f0c82c}
.hvac-library[data-area-active="true"] .library-brand:nth-child(3)::before{background:#9cdb32}
.hvac-library[data-area-active="true"] .library-brand:nth-child(4)::before{background:#42b889}
.hvac-library[data-area-active="true"] .library-brand:nth-child(5)::before{background:#e8ad38}
.hvac-library[data-area-active="true"] .library-brand:nth-child(2)>summary{background:linear-gradient(135deg,#fff 0%,#fff6d6 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(3)>summary{background:linear-gradient(135deg,#fff 0%,#effbd8 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(4)>summary{background:linear-gradient(135deg,#fff 0%,#e4f8ee 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(5)>summary{background:linear-gradient(135deg,#fff 0%,#fff1d8 100%)}
.hvac-library[data-area-active="true"] .library-folder:nth-child(2){background:linear-gradient(145deg,#fff 0%,#fff8df 100%)}
.hvac-library[data-area-active="true"] .library-folder:nth-child(2)>summary{background:#fffaf0}
@media(max-width:620px){.hvac-library[data-area-active="true"] .library-group>summary::before{display:none}.hvac-library[data-area-active="true"] .library-group::before{left:18px}}


/* Vibrant documentation hierarchy — intentionally stronger than the neutral admin surfaces. */
.hvac-library[data-area-active="true"] .library-group{border:0;background:#fffaf0;box-shadow:0 22px 52px rgba(19,70,47,.16)}
.hvac-library[data-area-active="true"] .library-group>summary{min-height:132px;padding:28px 34px;border:0;background:radial-gradient(circle at 88% 5%,rgba(190,238,56,.38),transparent 26%),linear-gradient(120deg,#064b36 0%,#08764b 62%,#33a94f 100%);color:#fff}
.hvac-library[data-area-active="true"] .library-group>summary>span:not(.library-icon) strong{color:#fff;font-size:1.35rem}
.hvac-library[data-area-active="true"] .library-group>summary small{color:#e8f8e8;font-size:.9rem}
.hvac-library[data-area-active="true"] .library-group>summary::before{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.14);color:#fff}
.hvac-library[data-area-active="true"] .library-group>summary::after{background:#b9ef3b;color:#083e2d;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.hvac-library[data-area-active="true"] .library-icon{width:66px;height:66px;border:1px solid rgba(255,255,255,.34);background:linear-gradient(145deg,#dfff76,#9ddd31);color:#073e30;box-shadow:0 12px 24px rgba(0,0,0,.16)}
.hvac-library[data-area-active="true"] .library-group-body{gap:18px;padding:24px;background:linear-gradient(180deg,#fffaf0 0%,#f3fae8 100%)}
.hvac-library[data-area-active="true"] .library-brand{border:0;border-radius:20px;background:#fff;box-shadow:0 12px 28px rgba(18,70,45,.1)}
.hvac-library[data-area-active="true"] .library-brand::before{width:7px}
.hvac-library[data-area-active="true"] .library-brand>summary{min-height:86px;padding:16px 20px 16px 24px;background:linear-gradient(120deg,#edffd9 0%,#c9f088 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(2)>summary{background:linear-gradient(120deg,#fff7d7 0%,#ffd961 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(3)>summary{background:linear-gradient(120deg,#efffdc 0%,#bceb63 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(4)>summary{background:linear-gradient(120deg,#ddf9ed 0%,#82ddb3 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(5)>summary{background:linear-gradient(120deg,#fff0d4 0%,#ffc96a 100%)}
.hvac-library[data-area-active="true"] .library-brand>summary>span:not(.library-family-icon){display:grid;gap:3px}
.hvac-library[data-area-active="true"] .library-brand>summary strong{font-size:1.05rem}
.library-family-icon{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:15px;background:rgba(255,255,255,.78);color:#07523d;box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(33,90,44,.12)}
.library-family-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hvac-library[data-area-active="true"] .library-nested-grid{align-items:start;gap:18px;padding:20px;background:#fffdf8}
.hvac-library[data-area-active="true"] .library-folder{border:0;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(18,70,45,.09)}
.hvac-library[data-area-active="true"] .library-folder>summary{min-height:70px;padding:18px 20px;background:linear-gradient(135deg,#f2ffe5,#dff8b7)}
.hvac-library[data-area-active="true"] .library-folder:nth-child(2)>summary{background:linear-gradient(135deg,#fff8dc,#ffe594)}
.hvac-library[data-area-active="true"] .library-folder ul,.hvac-library[data-area-active="true"] .library-leaves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 18px 20px}
.hvac-library[data-area-active="true"] button[data-library-category]{min-height:62px;gap:12px;padding:10px 14px;border:1px solid rgba(57,132,70,.16);border-radius:14px;background:linear-gradient(145deg,#fff 0%,#f5fce9 100%);font-size:.88rem;box-shadow:0 7px 17px rgba(22,75,44,.07)}
.hvac-library[data-area-active="true"] button[data-library-category]::before{content:none!important}
.library-item-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,#dfff93,#aee944);color:#07523d;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.library-item-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hvac-library[data-area-active="true"] button[data-library-category]:hover,.hvac-library[data-area-active="true"] button[data-library-category]:focus-visible{border-color:#58b833;background:linear-gradient(145deg,#fff 0%,#e8facb 100%);box-shadow:0 12px 24px rgba(34,114,51,.15);transform:translateY(-2px)}
.hvac-library[data-area-active="true"] button[data-library-category].active{border-color:#18783f;background:linear-gradient(135deg,#0a6b45,#129553);color:#fff;box-shadow:0 12px 26px rgba(7,91,52,.24)}
.hvac-library[data-area-active="true"] button[data-library-category].active .library-item-icon{background:#c8f255;color:#073e30}
@media(max-width:760px){.hvac-library[data-area-active="true"] .library-group>summary{min-height:110px;padding:22px 18px}.hvac-library[data-area-active="true"] .library-icon{width:54px;height:54px}.hvac-library[data-area-active="true"] .library-folder ul,.hvac-library[data-area-active="true"] .library-leaves{grid-template-columns:1fr}.hvac-library[data-area-active="true"] .library-brand>summary{min-height:76px;padding:14px}.library-family-icon{width:44px;height:44px}}


/* Sunlit palette sampled from the showroom reference: forest, lime, solar yellow and warm orange. */
.hvac-library[data-area-active="true"]{--sun-forest:#07563b;--sun-green:#159447;--sun-lime:#b8eb38;--sun-yellow:#f4cf22;--sun-orange:#ff922f;--sun-ivory:#fff9e9}
.hvac-library[data-area-active="true"] .library-tree{padding:10px;border-radius:28px;background:radial-gradient(circle at 7% 3%,rgba(244,207,34,.28),transparent 23%),radial-gradient(circle at 94% 10%,rgba(255,146,47,.2),transparent 22%),linear-gradient(145deg,#fffdf5,#eef9de)}
.hvac-library[data-area-active="true"] .library-group>summary{background:radial-gradient(circle at 82% 0%,rgba(244,207,34,.72),transparent 22%),radial-gradient(circle at 96% 100%,rgba(255,146,47,.4),transparent 25%),linear-gradient(120deg,#075239 0%,#0b7e47 56%,#54b83f 100%)}
.hvac-library[data-area-active="true"] .library-group>summary::after{background:linear-gradient(145deg,#efff8b,#b8eb38)}
.hvac-library[data-area-active="true"] .library-icon{background:linear-gradient(145deg,#f5ff9a 0%,#b8eb38 55%,#85d438 100%)}
.hvac-library[data-area-active="true"] .library-group-body{background:radial-gradient(circle at 100% 0%,rgba(255,196,79,.22),transparent 22%),linear-gradient(180deg,#fff9e9 0%,#f3fae7 100%)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(2)::before{background:linear-gradient(#f4cf22,#ff922f)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(3)::before{background:linear-gradient(#b8eb38,#69c63d)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(4)::before{background:linear-gradient(#18a66a,#63d49c)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(5)::before{background:linear-gradient(#ffbd36,#ff7f32)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(2)>summary{background:radial-gradient(circle at 92% 30%,rgba(255,146,47,.38),transparent 24%),linear-gradient(120deg,#fff8d5,#ffd440)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(5)>summary{background:radial-gradient(circle at 90% 20%,rgba(244,207,34,.4),transparent 25%),linear-gradient(120deg,#fff0cf,#ffad43)}
.hvac-library[data-area-active="true"] .library-brand>summary,.hvac-library[data-area-active="true"] button[data-library-category]{position:relative;overflow:hidden}
.hvac-library[data-area-active="true"] .library-brand>summary::before,.hvac-library[data-area-active="true"] button[data-library-category]::after{content:"";position:absolute;pointer-events:none;top:-55%;left:-25%;width:42%;height:210%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:rotate(18deg);transition:left .45s ease}
.hvac-library[data-area-active="true"] .library-brand>summary:hover::before,.hvac-library[data-area-active="true"] button[data-library-category]:hover::after{left:115%}
.hvac-library[data-area-active="true"] .library-item-icon{background:linear-gradient(145deg,#f5ff91,#b8eb38 62%,#8bd13f)}
.hvac-library[data-area-active="true"] li:nth-child(3n+2) button[data-library-category] .library-item-icon{background:linear-gradient(145deg,#fff08a,#f4cf22)}
.hvac-library[data-area-active="true"] li:nth-child(3n) button[data-library-category] .library-item-icon{background:linear-gradient(145deg,#ffd47a,#ff922f)}


/* Balanced luminous palette: ivory light, restrained forest green and one solar accent. */
.hvac-library[data-area-active="true"]{--doc-forest:#0b5a43;--doc-emerald:#16805a;--doc-lime:#b9e64a;--doc-sun:#f1c94a;--doc-ivory:#fffaf0}
.hvac-library[data-area-active="true"] .library-tree{padding:8px;background:linear-gradient(145deg,#fffdf8,#f3f8ef)}
.hvac-library[data-area-active="true"] .library-group>summary{background:linear-gradient(118deg,#0a513d 0%,#11704f 68%,#4c9660 100%)}
.hvac-library[data-area-active="true"] .library-group>summary::after{background:#f5f7ef;color:#0b5a43}
.hvac-library[data-area-active="true"] .library-icon{background:linear-gradient(145deg,#f8e997,#d8e85e);box-shadow:0 10px 22px rgba(0,0,0,.12)}
.hvac-library[data-area-active="true"] .library-group-body{background:linear-gradient(180deg,#fffaf0,#f5f8f1)}
.hvac-library[data-area-active="true"] .library-brand::before{background:#74b85a!important}
.hvac-library[data-area-active="true"] .library-brand>summary,.hvac-library[data-area-active="true"] .library-brand:nth-child(n)>summary{background:linear-gradient(120deg,#ffffff,#edf6e7)}
.hvac-library[data-area-active="true"] .library-brand:nth-child(2)>summary,.hvac-library[data-area-active="true"] .library-brand:nth-child(5)>summary{background:linear-gradient(120deg,#fff,#fff5d9)}
.hvac-library[data-area-active="true"] .library-brand>summary::before,.hvac-library[data-area-active="true"] button[data-library-category]::after{display:none}
.hvac-library[data-area-active="true"] .library-folder>summary,.hvac-library[data-area-active="true"] .library-folder:nth-child(2)>summary{background:linear-gradient(135deg,#fff,#f0f6eb)}
.hvac-library[data-area-active="true"] button[data-library-category]{background:#fff;border-color:#dbe7d8;box-shadow:0 6px 16px rgba(26,72,48,.065)}
.hvac-library[data-area-active="true"] .library-item-icon,.hvac-library[data-area-active="true"] li:nth-child(n) button[data-library-category] .library-item-icon{background:linear-gradient(145deg,#f7e894,#e3d052);color:#0b5a43}
.hvac-library[data-area-active="true"] button[data-library-category]:hover,.hvac-library[data-area-active="true"] button[data-library-category]:focus-visible{background:#fbfff7;border-color:#8cbd70}
.hvac-library[data-area-active="true"] button[data-library-category].active{background:linear-gradient(135deg,#0b5a43,#16805a);border-color:#0b5a43}
.library-folder-admin{display:grid;gap:16px;padding:20px;border-top:1px solid #e2eadf;background:#fffaf0}
.library-folder-create-form{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(240px,1.3fr) auto;gap:12px;align-items:end}
.library-folder-admin-list{display:grid;gap:8px}
.library-folder-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.3fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid #dfe8dc;border-radius:13px;background:#fff}
.library-folder-row>span{color:#557067;font-size:.75rem;font-weight:700}
.library-custom-folders{order:3;display:grid;gap:14px;padding:22px;border:1px solid #dce6d8;border-radius:20px;background:linear-gradient(145deg,#fffdf8,#f3f8ed);box-shadow:0 12px 30px rgba(25,67,49,.07)}
.library-custom-folders[hidden]{display:none}
.library-custom-folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.library-custom-folder-grid>button{display:flex;align-items:center;gap:13px;min-height:82px;padding:15px;border:1px solid #d8e5d4;border-radius:15px;background:#fff;color:#173f34;text-align:left;box-shadow:0 7px 18px rgba(25,67,49,.06)}
.library-custom-folder-grid>button:hover,.library-custom-folder-grid>button:focus-visible{border-color:#83b66c;background:#fbfff7;transform:translateY(-2px);outline:0}
.library-custom-folder-grid>button>span:last-child{display:grid;gap:3px}.library-custom-folder-grid small{color:#687b72}
.library-custom-folder-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:14px;background:#f5e58b;color:#0b5a43}
.library-custom-folder-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.library-folder-create-form,.library-folder-row{grid-template-columns:1fr}.library-custom-folder-grid{grid-template-columns:1fr}.library-folder-row button{width:100%}}


/* Clear navigation controls and brighter, balanced area cards. */
.hvac-library[data-area-active="true"] .library-back{position:absolute;z-index:3;right:28px;bottom:24px;margin:0;padding:12px 18px;border:1px solid rgba(11,90,67,.18);border-radius:999px;background:#fff;color:#0b5a43;box-shadow:0 10px 24px rgba(20,66,45,.16);font-size:.86rem;font-weight:800;text-decoration:none}
.hvac-library[data-area-active="true"] .library-back:hover,.hvac-library[data-area-active="true"] .library-back:focus-visible{background:#f7e894;box-shadow:0 13px 28px rgba(20,66,45,.2);transform:translateY(-2px);outline:0}
.hvac-library[data-area-active="true"] .library-group>summary{cursor:default}
.hvac-library[data-area-active="true"] .library-group>summary::before,.hvac-library[data-area-active="true"] .library-group>summary::after{display:none}
.library-index-card{position:relative;min-width:0}
.hvac-library .library-index-card>a{height:100%;min-height:142px;border-width:1px;box-shadow:0 12px 28px rgba(25,67,49,.09)}
.hvac-library .library-index-card[data-navigation-key="climate"]>a{border-color:#8ed8bc;background:linear-gradient(145deg,#f8fffb 0%,#d9f6e8 100%)}
.hvac-library .library-index-card[data-navigation-key="heating"]>a{border-color:#edc96d;background:linear-gradient(145deg,#fffdf6 0%,#ffe9a8 100%)}
.hvac-library .library-index-card[data-navigation-key="energia"]>a{border-color:#acd66c;background:linear-gradient(145deg,#fbfff6 0%,#dff4ad 100%)}
.hvac-library .library-index-card[data-navigation-key="fotovoltaico"]>a{border-color:#edcb4e;background:linear-gradient(145deg,#fffdf5 0%,#ffe88a 100%)}
.hvac-library .library-index-card>a:hover,.hvac-library .library-index-card>a:focus-visible{filter:saturate(1.08) brightness(1.015);box-shadow:0 17px 34px rgba(30,91,50,.15)}
.library-area-rename{position:absolute;z-index:3;top:10px;right:10px;display:grid;width:34px;height:34px;place-items:center;padding:0;border:1px solid rgba(11,90,67,.16);border-radius:50%;background:rgba(255,255,255,.92);color:#0b5a43;box-shadow:0 6px 14px rgba(20,66,45,.1)}
.library-area-rename[hidden]{display:none}.library-area-rename svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.library-area-rename:hover,.library-area-rename:focus-visible{background:#0b5a43;color:#fff;outline:0}
@media(max-width:620px){.hvac-library[data-area-active="true"] .library-back{right:16px;bottom:16px;padding:10px 14px}.hvac-library .library-index-card>a{min-height:104px}}


/* Consistent interactive treatment for Energy, Solar and Company areas. */
.hvac-library[data-area-active="true"] .library-group[data-tone="energy"]>summary{background:linear-gradient(118deg,#0b5945 0%,#16865e 70%,#83b84f 100%)}
.hvac-library[data-area-active="true"] .library-group[data-tone="solar"]>summary{background:linear-gradient(118deg,#785c08 0%,#c99612 58%,#f1c94a 100%);color:#183b2f}
.hvac-library[data-area-active="true"] .library-group[data-tone="solar"]>summary strong,.hvac-library[data-area-active="true"] .library-group[data-tone="solar"]>summary small{color:#183b2f}
.hvac-library[data-area-active="true"] .library-group[data-tone="solar"] .library-icon{background:#fff8d7;color:#6f5709}
.hvac-library[data-area-active="true"] .library-group[data-tone="company"]>summary{background:linear-gradient(118deg,#164c42 0%,#397a67 68%,#82a97d 100%)}
.hvac-library[data-area-active="true"] .library-group[data-tone="energy"] .library-brand>summary{background:linear-gradient(120deg,#fff,#e4f4dc)}
.hvac-library[data-area-active="true"] .library-group[data-tone="solar"] .library-brand>summary{background:linear-gradient(120deg,#fffef8,#fff0b8)}
.hvac-library[data-area-active="true"] .library-group[data-tone="company"] .library-brand>summary{background:linear-gradient(120deg,#fff,#e9f1eb)}
.hvac-library[data-area-active="true"] .library-group[data-tone="energy"] .library-item-icon{background:linear-gradient(145deg,#dff39b,#b7db4e)}
.hvac-library[data-area-active="true"] .library-group[data-tone="solar"] .library-item-icon{background:linear-gradient(145deg,#fff09b,#f1c94a)}
.hvac-library[data-area-active="true"] .library-group[data-tone="company"] .library-item-icon{background:linear-gradient(145deg,#e8f1e9,#b9d2bf)}
.hvac-library[data-area-active="true"] .library-group[data-tone="energy"] .library-group-body{grid-template-columns:repeat(2,minmax(0,1fr))}
.hvac-library[data-area-active="true"] .library-group[data-tone="energy"] .library-brand:last-child{grid-column:1/-1}
@media(max-width:760px){.hvac-library[data-area-active="true"] .library-group[data-tone="energy"] .library-group-body{grid-template-columns:1fr}.hvac-library[data-area-active="true"] .library-group[data-tone="energy"] .library-brand:last-child{grid-column:auto}}


/* Distinct solar card: sky blue balances mint, amber and lime. */
.hvac-library .library-index-card[data-navigation-key="fotovoltaico"]>a{border-color:#78c6df;background:linear-gradient(145deg,#f5fcff 0%,#cceefe 100%)}
.hvac-library .library-index-card[data-navigation-key="fotovoltaico"] .library-index-mark{background:linear-gradient(145deg,#fff08a,#f1c94a);color:#6b5508}
.library-custom-folder-card{position:relative;min-width:0}
.library-custom-folder-card>[data-custom-folder]{display:flex;width:100%;height:100%;align-items:center;gap:13px;min-height:82px;padding:15px 86px 15px 15px;border:1px solid #d8e5d4;border-radius:15px;background:#fff;color:#173f34;text-align:left;box-shadow:0 7px 18px rgba(25,67,49,.06)}
.library-custom-folder-actions{position:absolute;top:50%;right:10px;display:flex;gap:6px;transform:translateY(-50%)}
.library-custom-folder-actions button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid #d9e4d6;border-radius:50%;background:#f8fbf6;color:#0b5a43}
.library-custom-folder-actions button:last-child{color:#a53131}.library-custom-folder-actions button:hover,.library-custom-folder-actions button:focus-visible{background:#0b5a43;color:#fff;outline:0}
.library-folder-row{grid-template-columns:minmax(150px,.65fr) minmax(220px,1.3fr) auto auto}
@media(max-width:760px){.library-folder-row{grid-template-columns:1fr}.library-custom-folder-card>[data-custom-folder]{padding-right:82px}}


/* Luminous coordinated archive palette and universal category controls. */
.hvac-library[data-area-active="true"]{--doc-lime-bright:#b9f227;--doc-sun-bright:#ffd43b;--doc-tangerine:#ff8a2b;--doc-turquoise:#18c7ad;--doc-sky:#36a9ff}
.hvac-library[data-library-section="climate"] #doc-hvac>summary{background:linear-gradient(118deg,#087c70 0%,#18a989 58%,#53d99e 100%)}
.hvac-library[data-library-section="heating"] #doc-hvac>summary{background:linear-gradient(118deg,#ff8a2b 0%,#ffad2f 55%,#ffd43b 100%);color:#123d35}
.hvac-library[data-library-section="heating"] #doc-hvac>summary::after{color:#123d35}
.hvac-library[data-active-area="energia"] #doc-energia>summary{background:linear-gradient(118deg,#087c70 0%,#18b79e 55%,#b9f227 100%)}
.hvac-library[data-active-area="fotovoltaico"] #doc-fotovoltaico>summary{background:linear-gradient(118deg,#f28b20 0%,#ffb72f 55%,#ffd83d 100%);color:#173f34}
.hvac-library[data-active-area="fotovoltaico"] #doc-fotovoltaico>summary::after{color:#173f34}
.hvac-library[data-active-area="azienda"] #doc-azienda>summary{background:linear-gradient(118deg,#145f76 0%,#238ca3 55%,#36a9ff 100%)}
.hvac-library[data-area-active="true"] button[data-library-category].active{background:linear-gradient(135deg,#ffb13b 0%,#ff842f 100%);border-color:#f47722;color:#143c34;box-shadow:0 13px 28px rgba(239,111,29,.28)}
.hvac-library[data-area-active="true"] button[data-library-category].active .library-item-icon{background:linear-gradient(145deg,#fff7b8,#ffd83d);color:#143c34}
.hvac-library[data-area-active="true"] .library-item-icon,.hvac-library[data-area-active="true"] li:nth-child(3n+1) button[data-library-category] .library-item-icon{background:linear-gradient(145deg,#e7ff88,#b9f227);color:#12483a}
.hvac-library[data-area-active="true"] li:nth-child(3n+2) button[data-library-category] .library-item-icon{background:linear-gradient(145deg,#fff198,#ffd43b);color:#624b00}
.hvac-library[data-area-active="true"] li:nth-child(3n) button[data-library-category] .library-item-icon{background:linear-gradient(145deg,#9ef2df,#18c7ad);color:#074b43}
.hvac-library[data-area-active="true"] li:has(.library-category-actions)>button[data-library-category]{padding-right:84px}
.library-category-actions{position:absolute;z-index:3;right:10px;top:50%;display:flex;gap:6px;transform:translateY(-50%)}
.library-category-actions button{display:grid!important;width:30px!important;min-width:30px!important;min-height:30px!important;height:30px!important;place-items:center;padding:0!important;border:1px solid rgba(9,85,66,.16)!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;color:#07523d!important;font-size:.9rem!important;box-shadow:0 5px 12px rgba(25,67,49,.1)!important}
.library-category-actions button:hover,.library-category-actions button:focus-visible{border-color:#ff9b35!important;background:#fff4dd!important;color:#9a4300!important;transform:translateY(-1px)}
@media(max-width:620px){.hvac-library[data-area-active="true"] li:has(.library-category-actions)>button[data-library-category]{padding-right:76px}.library-category-actions{right:7px;gap:4px}.library-category-actions button{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}}


/* Area cards inherit the vivid palette of their destination sections. */
.hvac-library .library-index a[data-card-tone="climate"]{border-color:#18a989;background:linear-gradient(118deg,#087c70 0%,#18a989 58%,#53d99e 100%);color:#fff;box-shadow:0 15px 30px rgba(8,124,112,.2)}
.hvac-library .library-index a[data-card-tone="climate"] strong,.hvac-library .library-index a[data-card-tone="climate"] small{color:#fff}
.hvac-library .library-index a[data-card-tone="climate"] .library-index-mark{background:linear-gradient(145deg,#efff8d,#c9f23b);color:#12483a}
.hvac-library .library-index a[data-card-tone="heating"]{border-color:#f6a027;background:linear-gradient(118deg,#ff8a2b 0%,#ffad2f 55%,#ffd43b 100%);color:#173f34;box-shadow:0 15px 30px rgba(255,138,43,.22)}
.hvac-library .library-index a[data-card-tone="heating"] strong,.hvac-library .library-index a[data-card-tone="heating"] small{color:#173f34}
.hvac-library .library-index a[data-card-tone="heating"] .library-index-mark{background:rgba(255,255,255,.72);color:#8a5200}
.hvac-library .library-index a[data-card-tone="energy"]{border-color:#20ad80;background:linear-gradient(118deg,#087c70 0%,#18b79e 55%,#b9f227 100%);color:#fff;box-shadow:0 15px 30px rgba(18,157,126,.2)}
.hvac-library .library-index a[data-card-tone="energy"] strong,.hvac-library .library-index a[data-card-tone="energy"] small{color:#fff}
.hvac-library .library-index a[data-card-tone="energy"] .library-index-mark{background:linear-gradient(145deg,#efff8d,#b9f227);color:#315e0c}
.hvac-library .library-index a[data-card-tone="solar"]{border-color:#f49a1f;background:linear-gradient(118deg,#f28b20 0%,#ffb72f 55%,#ffd83d 100%);color:#173f34;box-shadow:0 15px 30px rgba(244,139,32,.22)}
.hvac-library .library-index a[data-card-tone="solar"] strong,.hvac-library .library-index a[data-card-tone="solar"] small{color:#173f34}
.hvac-library .library-index a[data-card-tone="solar"] .library-index-mark{background:rgba(255,255,255,.72);color:#665000}
.hvac-library .library-index a[data-card-tone]:hover,.hvac-library .library-index a[data-card-tone]:focus-visible{border-color:rgba(7,82,61,.28);filter:saturate(1.08) brightness(1.03);box-shadow:0 19px 36px rgba(20,72,52,.22);transform:translateY(-4px)}
.hvac-library[data-area-active="true"] .library-back{border-color:#a9df22;background:linear-gradient(145deg,#dfff67,#b9f227);color:#123f34;box-shadow:0 12px 26px rgba(122,176,24,.28)}
.hvac-library[data-area-active="true"] .library-back:hover,.hvac-library[data-area-active="true"] .library-back:focus-visible{border-color:#ffd43b;background:linear-gradient(145deg,#efff83,#ffd43b);color:#123f34;box-shadow:0 15px 30px rgba(191,157,20,.3)}

.library-file-normalized-preview{display:block;margin-top:7px;padding:9px 12px;border:1px solid rgba(24,183,158,.22);border-radius:10px;background:linear-gradient(135deg,#f6ffe9,#e7fbf4);color:#0b5a43;font-family:"Montserrat",Arial,sans-serif;font-size:.76rem;font-weight:700;overflow-wrap:anywhere}

.hvac-library[data-reader-search-only="true"] .library-filters{grid-template-columns:1fr}
.hvac-library[data-reader-search-only="true"] .library-filters>label:not(.library-search),.hvac-library[data-reader-search-only="true"] #library-clear-filters{display:none}
.library-document-card.is-expired{border-color:#efc8ba;background:linear-gradient(145deg,#fff,#fff5ef);opacity:.88}
.library-expired-badge{display:inline-flex;margin-left:10px;padding:4px 8px;border-radius:999px;background:#ffe2d4;color:#a43b18;font-size:.68rem;font-weight:800;vertical-align:middle}
.library-expired-action{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:#f4e6df;color:#8f4025;font-size:.74rem;font-weight:800}
.library-history-row.is-expired{background:#fff6f1}

@media(min-width:901px) and (max-width:1250px){.home-hero-grid{grid-template-columns:1fr;gap:28px}.home-copy h1{font-size:clamp(2.8rem,6vw,3.55rem)}.home-hero{min-height:280px}}
@media(max-width:620px){.home-copy h1 .home-title-primary{white-space:normal}.home-copy h1 .home-title-accent{font-weight:630}}


/* Home statement: the lime phrase is treated as a warm, handwritten signature. */
.home-copy h1 .home-title-accent{display:inline-block;margin-top:.08em;color:#92d925;font-family:"Segoe Script","Snell Roundhand","Brush Script MT","Apple Chancery",cursive;font-size:.96em;font-weight:600;line-height:1.08;letter-spacing:-.055em;transform:rotate(-2deg);transform-origin:left center;text-shadow:0 7px 22px rgba(121,181,24,.14)}
.home-copy .title-rule{display:block;width:148px;height:13px;margin:20px 0 31px;border:0;border-top:4px solid #92d925;border-radius:50%;background:none;transform:rotate(-2deg);transform-origin:left center;filter:drop-shadow(0 5px 8px rgba(121,181,24,.12))}
@media(max-width:620px){.home-copy h1 .home-title-accent{font-size:.88em;font-weight:600;letter-spacing:-.06em}.home-copy .title-rule{width:118px;margin-top:16px}}


/* Home statement refinement: one coherent phrase, editorial rather than decorative. */
.home-hero-grid{grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr);gap:clamp(34px,4vw,62px)}
.home-copy{min-width:0;max-width:100%}
.home-copy h1{max-width:100%;font-size:clamp(3.15rem,4.35vw,4.55rem);line-height:.98;letter-spacing:-.052em}
.home-copy h1 .home-title-primary{display:inline;white-space:normal}
.home-copy h1 .home-title-accent{display:inline-block;margin-top:.16em;color:#92d925;font-family:"Montserrat",Arial,sans-serif;font-size:.66em;font-style:italic;font-weight:600;line-height:1.04;letter-spacing:-.035em;white-space:nowrap;transform:none;text-shadow:none}
.home-copy .title-rule{width:58px;height:3px;margin:25px 0 32px;border:0;border-radius:999px;background:#f0d600;transform:none;filter:none}
@media(min-width:901px) and (max-width:1250px){.home-hero-grid{grid-template-columns:1fr;gap:28px}.home-copy h1{font-size:clamp(2.8rem,6vw,3.55rem)}}
@media(max-width:620px){.home-copy h1{font-size:clamp(2.55rem,12vw,3.2rem)}.home-copy h1 .home-title-accent{font-size:.66em;font-weight:600;letter-spacing:-.035em}.home-copy .title-rule{width:48px;margin-top:20px}}


/* Unified document folders: same component logic, area-specific inherited tone. */
.library-folder-create-form{grid-template-columns:minmax(170px,.7fr) minmax(220px,1fr) minmax(240px,1.2fr) auto}
.library-folder-row>span{display:grid;gap:3px}.library-folder-row>span small{color:#687b72;font-size:.74rem}
.library-custom-folder-children{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 0 22px;padding:12px 0 0 16px;border-left:4px solid var(--library-folder-tone,#18b79e)}
.library-custom-folder-card[data-folder-depth="1"]>[data-custom-folder],.library-custom-folder-card[data-folder-depth="2"]>[data-custom-folder]{min-height:72px}
.hvac-library[data-active-area="climatizzazione"]{--library-folder-tone:#18b79e}.hvac-library[data-active-area="riscaldamento"]{--library-folder-tone:#ff9a32}.hvac-library[data-active-area="energia"]{--library-folder-tone:#b9f227}.hvac-library[data-active-area="fotovoltaico"]{--library-folder-tone:#ffd43b}.hvac-library[data-active-area="azienda"]{--library-folder-tone:#36a9ff}
.hvac-library[data-area-active="true"] .library-custom-folders{border-left:10px solid var(--library-folder-tone);background:linear-gradient(145deg,#fff,#f7fbf2)}
.hvac-library[data-area-active="true"] .library-custom-folder-card>[data-custom-folder]:hover,.hvac-library[data-area-active="true"] .library-custom-folder-card>[data-custom-folder]:focus-visible{border-color:var(--library-folder-tone);box-shadow:0 12px 24px color-mix(in srgb,var(--library-folder-tone) 22%,transparent);transform:translateY(-2px)}
.hvac-library[data-area-active="true"] .library-custom-folder-icon{background:linear-gradient(145deg,#efff8d,var(--library-folder-tone));color:#12483a}
@media(max-width:900px){.library-folder-create-form{grid-template-columns:1fr 1fr}.library-folder-create-form>button{width:100%}.library-custom-folder-children{grid-template-columns:1fr}}
@media(max-width:620px){.library-folder-create-form{grid-template-columns:1fr}.library-custom-folder-children{margin-left:8px;padding-left:10px}}


/* Administrator-selected folder colors. */
.library-folder-create-form{grid-template-columns:minmax(150px,.65fr) minmax(190px,.9fr) minmax(210px,1fr) minmax(150px,.65fr) auto}
.hvac-library li[data-folder-color]:not([data-folder-color=""])>button[data-library-category]{border-color:color-mix(in srgb,var(--folder-custom-color) 54%,#d8e5d4);background:color-mix(in srgb,var(--folder-custom-color) 13%,#fff)}
.hvac-library li[data-folder-color]:not([data-folder-color=""])>button[data-library-category] .library-item-icon,.hvac-library .library-custom-folder-card[data-color-token]:not([data-color-token=""]) .library-custom-folder-icon{background:linear-gradient(145deg,color-mix(in srgb,var(--folder-custom-color) 42%,#fff),var(--folder-custom-color));color:#123f34}
.hvac-library li[data-folder-color]:not([data-folder-color=""])>button[data-library-category].active{border-color:var(--folder-custom-color);background:linear-gradient(135deg,color-mix(in srgb,var(--folder-custom-color) 76%,#fff),var(--folder-custom-color));color:#123f34;box-shadow:0 13px 28px color-mix(in srgb,var(--folder-custom-color) 28%,transparent)}
.hvac-library .library-custom-folder-card[data-color-token]:not([data-color-token=""])>[data-custom-folder]{border-color:color-mix(in srgb,var(--folder-custom-color) 52%,#d8e5d4);background:color-mix(in srgb,var(--folder-custom-color) 12%,#fff)}
.hvac-library[data-area-active="true"] li:has(.library-category-actions)>button[data-library-category]{padding-right:122px}
.library-custom-folder-card>[data-custom-folder]{padding-right:120px}
.library-color-dialog{width:min(620px,calc(100vw - 32px))}
.library-color-palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:22px}
.library-color-palette>button{display:flex;align-items:center;gap:10px;min-height:58px;padding:10px 12px;border:1px solid #dce6df;border-radius:14px;background:#fff;color:#173f34;text-align:left}
.library-color-palette>button:hover,.library-color-palette>button:focus-visible,.library-color-palette>button.active{border-color:#0d8d65;box-shadow:0 8px 18px rgba(12,109,78,.14);transform:translateY(-1px)}
.library-color-palette>button.active{outline:3px solid rgba(185,242,39,.36)}
.library-color-swatch{width:34px;height:34px;flex:0 0 34px;border:1px solid rgba(11,75,59,.14);border-radius:11px;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.library-color-swatch.is-auto{background:linear-gradient(135deg,#18c7ad,#b9f227,#ffd43b,#ff8a2b)}
.library-color-swatch.is-lime{background:#b9f227}.library-color-swatch.is-turquoise{background:#18c7ad}.library-color-swatch.is-sun{background:#ffd43b}.library-color-swatch.is-orange{background:#ff8a2b}.library-color-swatch.is-sky{background:#36a9ff}.library-color-swatch.is-emerald{background:#11965f}
.library-color-cascade{display:flex;align-items:center;gap:10px;margin:0 22px 18px;padding:14px 16px;border:1px solid #dce6df;border-radius:13px;background:#f8fbf7;font-weight:700}
.library-color-dialog .form-error{margin:0 22px 20px}
.library-category-actions button[data-category-action="color"],.library-custom-folder-actions button[data-folder-color]{font-size:.78rem!important;color:#0d8d65!important}
@media(max-width:1100px){.library-folder-create-form{grid-template-columns:1fr 1fr}.library-folder-create-form>button{width:100%}}
@media(max-width:620px){.library-folder-create-form{grid-template-columns:1fr}.library-color-palette{grid-template-columns:1fr 1fr;padding:16px}.library-color-cascade{margin-inline:16px}}

.library-parent-rename{position:absolute;right:4.35rem;top:50%;transform:translateY(-50%);width:2.85rem;height:2.85rem;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--forest);box-shadow:0 10px 24px rgba(8,70,54,.1);z-index:3}
.library-parent-rename:hover{border-color:var(--lime);background:#f7ffe8}
.library-parent-rename svg{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.library-brand>summary{position:relative}

/* Contratti: sezione autonoma, coerente con Documentazione */
.contracts-section{padding:0 0 56px}.contracts-hero{display:grid;grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr);min-height:250px;margin-bottom:28px;border:1px solid #d8e7de;border-radius:28px;overflow:hidden;background:linear-gradient(125deg,#fffef8 0%,#f1faee 100%);box-shadow:0 22px 55px rgba(15,61,46,.1)}.contracts-hero-copy{padding:clamp(28px,4vw,54px);align-self:center}.contracts-hero-copy h1{font-size:clamp(2rem,4vw,3.7rem);color:#0f3d2e}.contracts-hero-copy p:last-child{max-width:580px;color:#536c61;line-height:1.65;margin:14px 0 0}.contracts-hero-image{min-height:250px;background:linear-gradient(90deg,rgba(15,61,46,.1),transparent 38%),url('./assets/login-store-warm-v2.webp') center/cover no-repeat;position:relative}.contracts-hero-image:after{content:"✓";position:absolute;right:30px;bottom:26px;width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:#adf126;color:#0f3d2e;font-size:34px;font-weight:900;box-shadow:0 14px 30px rgba(15,61,46,.22);opacity:0;visibility:hidden;transform:translateY(10px) scale(.9);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s;pointer-events:none}.contracts-hero-image.is-submission-success:after{opacity:1;visibility:visible;transform:translateY(0) scale(1);transition-delay:0s}.contracts-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:22px;align-items:start}.contract-form,.contract-history,.contract-manager-toolbar,.contract-card{background:#fff;border:1px solid #dce8e1;border-radius:24px;box-shadow:0 12px 34px rgba(15,61,46,.07)}.contract-form{padding:clamp(24px,4vw,42px)}.section-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:24px}.section-heading h2{margin:0}.contract-step{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:#adf126;color:#0f3d2e;font-weight:900}.contract-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contract-grid .wide{grid-column:1/-1}.contract-grid label{display:grid;gap:8px;font-weight:750}.contract-grid input,.contract-grid select,.contract-grid textarea,.contract-manager-filters input,.contract-manager-filters select,.contract-card select{width:100%;border:1px solid #cfddd5;border-radius:14px;padding:14px 16px;background:#fff;color:#0f3d2e}.contract-grid textarea{resize:vertical}.contract-grid label small{text-align:right;color:#6b7d74}.contract-dropzone{margin-top:24px;padding:20px;border:1.5px dashed #8ecb74;border-radius:18px;background:linear-gradient(120deg,#f8fff1,#f1fbf8);display:flex;align-items:center;justify-content:space-between;gap:18px}.contract-dropzone div{display:grid;gap:5px}.contract-dropzone span{font-size:.84rem;color:#66796f}.contract-file-button{position:relative;overflow:hidden;background:#0b9f56;color:#fff;border-radius:13px;padding:12px 18px;font-weight:850;white-space:nowrap}.contract-file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.contract-selected-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.contract-selected-files span{background:#eef7ea;border-radius:999px;padding:8px 12px;font-size:.82rem}.contract-progress{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:18px 0}.contract-progress progress{width:100%;accent-color:#96e51b}.contract-submit{margin-top:18px;min-width:190px}.contract-history{padding:28px;position:sticky;top:96px}.contract-history h2{margin-bottom:8px}.contract-history .contract-card{box-shadow:none;border-radius:17px;padding:17px;margin-top:13px}.contract-card{padding:24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;margin-bottom:14px}.contract-reference{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#16834f}.contract-card h3{margin:7px 0 5px}.contract-card p{margin-bottom:6px}.contract-card small{color:#687b72}.contract-note{margin-top:13px;padding:10px 12px;border-left:3px solid #adf126;background:#f7faF4}.contract-card-side{display:grid;gap:10px;align-content:start;justify-items:end}.contract-status{border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:850;background:#edf3ef}.status-ricevuto{background:#dcf8ef;color:#087550}.status-in_lavorazione{background:#fff0bc;color:#775500}.status-da_integrare{background:#ffe1d5;color:#9b3c1f}.status-completato{background:#e1f6b8;color:#3a6500}.status-ko{background:#ffe0e0;color:#9b1c1c}.status-annullato{background:#eceff1;color:#536069}.contract-files{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding-top:15px;border-top:1px solid #e4ece7}.contract-files a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:#f5f9f6;color:#0f3d2e;text-decoration:none}.contract-files a>span:first-child{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#adf126;font-weight:900}.contract-files a span:last-child{display:grid}.contract-manager-toolbar{padding:24px;margin-bottom:18px;display:flex;align-items:end;justify-content:space-between;gap:20px}.contract-manager-toolbar h2{margin:0}.contract-manager-filters{display:grid;grid-template-columns:minmax(250px,1fr) 190px;gap:10px}.form-error{color:#ad2a2a;min-height:20px}
@media(max-width:980px){.contracts-hero,.contracts-layout{grid-template-columns:1fr}.contracts-hero-image{min-height:190px}.contract-history{position:static}.contract-manager-toolbar{align-items:stretch;flex-direction:column}.contract-manager-filters{width:100%}}
@media(max-width:640px){.contracts-hero{border-radius:20px}.contracts-hero-image{min-height:150px}.contract-grid,.contract-manager-filters{grid-template-columns:1fr}.contract-grid .wide{grid-column:auto}.contract-dropzone{align-items:stretch;flex-direction:column}.contract-card{grid-template-columns:1fr}.contract-card-side{justify-items:start}.contracts-section{padding-bottom:92px}}

.contract-download{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;border-top:1px solid #e4ece7}.contract-download>span{color:#687b72;font-size:.88rem;font-weight:700}.contract-download .primary{margin:0;min-width:156px}@media(max-width:640px){.contract-download{align-items:stretch;flex-direction:column}.contract-download .primary{width:100%}}

.contract-status-audit{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0!important;color:#536c61}.contract-status-audit:before{content:"";width:8px;height:8px;border-radius:50%;background:#9dea18;box-shadow:0 0 0 4px #eefbd7}.contract-status-audit strong{color:#0f3d2e}.contract-status-audit span:before,.contract-status-audit time:before{content:"·";margin-right:8px;color:#96aa9f}.contract-status-audit time{font-variant-numeric:tabular-nums}@media(max-width:640px){.contract-status-audit{align-items:flex-start;flex-direction:column}.contract-status-audit span:before,.contract-status-audit time:before{content:""}}

.contracts-section.manager-mode .contracts-hero{min-height:170px;margin-bottom:18px}.contracts-section.manager-mode .contracts-hero-copy{padding:28px 38px}.contracts-section.manager-mode .contracts-hero-copy h1{font-size:clamp(2rem,3vw,3rem)}.contracts-section.manager-mode .contracts-hero-image{min-height:170px}.contracts-section.manager-mode .contract-manager-toolbar{position:sticky;top:10px;z-index:8;border-color:#c9dfd2;box-shadow:0 16px 38px rgba(15,61,46,.13)}.contracts-section.manager-mode #contract-search{min-height:54px;border:2px solid #9bdc55;background:#fbfff7;font-weight:650;box-shadow:0 0 0 4px rgba(168,232,47,.12)}.contracts-section.manager-mode #contract-search:focus{outline:none;border-color:#0b9f56;box-shadow:0 0 0 5px rgba(11,159,86,.14)}@media(max-width:640px){.contracts-section.manager-mode .contracts-hero-image{display:none}.contracts-section.manager-mode .contracts-hero{min-height:auto}.contracts-section.manager-mode .contract-manager-toolbar{top:6px}}

.contract-agent-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 22px}.contract-section-card{min-height:118px;border:1px solid #cfe2d7;border-radius:24px;padding:22px 26px;display:flex;align-items:center;gap:18px;text-align:left;color:#0f3d2e;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.contract-section-card.send{background:linear-gradient(125deg,#eaffcf,#b8f238)}.contract-section-card.archive{background:linear-gradient(125deg,#e8fbf6,#50d7bd)}.contract-section-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,61,46,.13)}.contract-section-card.active{border-color:#0b9f56;box-shadow:inset 0 0 0 2px #0b9f56,0 14px 30px rgba(15,61,46,.12)}.contract-section-icon{width:58px;height:58px;flex:0 0 58px;border-radius:18px;display:grid;place-items:center;background:#fff;color:#0f6b4c;font-size:1.7rem;font-weight:900;box-shadow:0 8px 20px rgba(15,61,46,.1)}.contract-section-card>span:last-child{display:grid;gap:5px}.contract-section-card strong{font-size:1.2rem}.contract-section-card small{color:#47665a;font-size:.9rem}.contracts-layout.agent-send-active{grid-template-columns:1fr}.contracts-layout.agent-send-active .contract-form{width:100%}.contracts-layout.agent-archive-active{display:block}.contracts-layout.agent-archive-active .contract-history{position:static;width:100%}.contracts-layout.agent-archive-active #contract-agent-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contracts-layout.agent-archive-active .contract-card{margin:0}@media(max-width:760px){.contract-agent-navigation{grid-template-columns:1fr}.contract-section-card{min-height:96px}.contracts-layout.agent-archive-active #contract-agent-list{grid-template-columns:1fr}}

/* Linguaggio azioni: lime per tutti i comandi secondari a blocco */
.secondary,.heating-mode .heating-top-actions .secondary,.hvac-library .library-document-actions .secondary{border:1px solid #98d91d;background:#adf126;color:#0f3d2e;box-shadow:0 8px 18px rgba(140,205,28,.16)}.secondary:hover,.heating-mode .heating-top-actions .secondary:hover,.hvac-library .library-document-actions .secondary:hover{border-color:#86c516;background:#9fe51f;color:#0b3426;box-shadow:0 10px 22px rgba(140,205,28,.24);transform:translateY(-1px)}.secondary:active{transform:translateY(0);box-shadow:0 4px 10px rgba(140,205,28,.16)}.secondary:disabled{background:#dce8d0;color:#71806f;border-color:#d2dfca;box-shadow:none}

/* Palette sezioni contratti: Luce e gas + Fotovoltaico */
.contract-section-card.send{border-color:#0a9b78;background:linear-gradient(112deg,#0b8d80 0%,#1fb894 54%,#9bf12b 100%)}.contract-section-card.archive{border-color:#f29a22;background:linear-gradient(112deg,#ff9627 0%,#ffad2d 45%,#ffd13b 100%)}.contract-section-card.send .contract-section-icon{background:#c7fb45;color:#195627}.contract-section-card.archive .contract-section-icon{background:#fff0d4;color:#70510a}.contract-section-card.send strong,.contract-section-card.send small{color:#fff}.contract-section-card.archive strong,.contract-section-card.archive small{color:#123c2c}.contract-section-card.send.active{border-color:#007e5f;box-shadow:inset 0 0 0 2px #007e5f,0 14px 30px rgba(9,141,112,.2)}.contract-section-card.archive.active{border-color:#e47a0d;box-shadow:inset 0 0 0 2px #e47a0d,0 14px 30px rgba(231,130,18,.2)}


/* Integrazione documentale sulla pratica esistente */
.contract-integration-box{grid-column:1/-1;border-top:1px solid #e1ebe5;padding-top:18px;display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);gap:24px}.contract-integration-heading{display:grid;align-content:start;gap:8px}.contract-integration-heading>span{width:max-content;border-radius:999px;background:#ffe1d5;color:#913719;padding:7px 11px;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.contract-integration-heading strong{font-size:1rem;line-height:1.5;color:#163c2e}.contract-integration-box form{display:grid;grid-template-columns:1fr auto;gap:12px 14px;align-items:end}.contract-integration-box label{display:grid;gap:7px;font-weight:750}.contract-integration-box textarea{min-height:94px;resize:vertical;border:1px solid #cfddd5;border-radius:14px;padding:13px 15px;background:#fff;color:#0f3d2e}.contract-integration-files{grid-column:1/-1;border:1.5px dashed #8ecb74;border-radius:16px;padding:15px;background:#f7fff3}.contract-integration-files input{margin-top:2px}.contract-integration-files small{color:#687b72}.contract-integration-box .contract-selected-files,.contract-integration-box .contract-progress,.contract-integration-box .form-error{grid-column:1/-1;margin:0}.contract-integration-box .primary{min-width:170px;margin:0}.contract-integration-box .form-error{min-height:0;color:#a53131;font-weight:700}@media(max-width:760px){.contract-integration-box{grid-template-columns:1fr}.contract-integration-box form{grid-template-columns:1fr}.contract-integration-box .primary{width:100%}}

/* Compact archive pagination: twelve records per page, no endless vertical list. */
.archive-pagination{display:grid;grid-template-columns:minmax(130px,auto) 1fr minmax(130px,auto);align-items:center;gap:14px;margin-top:18px;padding:16px 18px;border:1px solid var(--ui-border);border-radius:16px;background:#fff;box-shadow:var(--ui-shadow-sm)}
.archive-pagination>span{text-align:center;color:var(--ui-muted);font-size:.86rem}.archive-pagination>span strong{color:var(--ui-green-deep)}
.archive-pagination button{min-height:46px}.archive-pagination button:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}
@media(max-width:620px){.archive-pagination{grid-template-columns:1fr 1fr;padding:12px}.archive-pagination>span{grid-column:1/-1;grid-row:1}.archive-pagination button{width:100%}}


/* Installer workflow */
.installer-home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.installer-contact{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border:1px solid #b9dfd4;border-radius:16px;background:#effaf6;color:#154f42;text-decoration:none}
.installer-contact span{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}
.installer-contact strong{font-size:1rem}
.installer-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}
.installer-home-stats article{padding:20px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.installer-home-stats strong{display:block;font-size:2rem;color:var(--ink)}
.installer-home-stats span{color:var(--muted);font-size:.9rem}
.installer-job-list{display:grid;gap:10px}
.installer-job{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:15px;border:1px solid var(--border);border-radius:14px;background:#fff;text-align:left}
.installer-job span{display:flex;flex-direction:column;gap:3px}
.installer-job span:last-child{text-align:right}
.installer-job small{color:var(--muted)}
.installer-operational{margin:18px 0;padding:20px;border-radius:18px;background:#f5faf8;border:1px solid #cfe5de}
.installer-operational>dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.installer-operational dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.installer-operational dd{margin:5px 0 0;font-weight:700}
.installer-operational .installer-contact{display:inline-flex;margin-top:12px}
.installer-actions{margin-top:16px}
.assignment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}
.assignment-fields label{display:grid;gap:6px;font-weight:700}
.assignment-fields .wide{grid-column:1/-1}
.assignment-fields input,.assignment-fields textarea{width:100%}
.installer-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.responsible-choice{white-space:nowrap;font-size:.86rem}
@media(max-width:900px){
  .installer-home-head{display:grid}
  .installer-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .installer-job{align-items:flex-start}
  .installer-operational>dl,.assignment-fields{grid-template-columns:1fr}
  .assignment-fields .wide{grid-column:auto}
}
@media(max-width:520px){
  .installer-home-stats{grid-template-columns:1fr}
  .installer-job{display:grid}
  .installer-job span:last-child{text-align:left}
  .installer-choice{grid-template-columns:1fr}
}


/* Catalogo caldaie Riello settembre 2026 */
.supplement-option.mandatory{border:1px solid rgba(0,150,57,.28);background:rgba(0,150,57,.06)}
.supplement-option.mandatory strong{font-size:.75rem;color:var(--legacy-green);letter-spacing:.04em;text-transform:uppercase}
.legacy-catalog-stamp{display:inline-flex;align-items:center;padding:.3rem .55rem;border:2px solid #c63b2d;border-radius:999px;color:#a72f24;background:#fff8f6;font-size:.72rem;font-weight:800;letter-spacing:.06em;transform:rotate(-2deg)}
.catalog-update-seal{display:flex;align-items:center;gap:1rem;margin:0 0 1.25rem;padding:1rem 1.1rem;border:1px solid rgba(198,59,45,.28);border-radius:16px;background:#fff8f6;color:#63251e}
.catalog-update-seal>span{flex:0 0 auto;padding:.5rem .65rem;border:2px solid #c63b2d;border-radius:999px;color:#a72f24;font-size:.75rem;font-weight:900;letter-spacing:.07em;transform:rotate(-2deg)}
.catalog-update-seal strong{display:block;color:#63251e}
.catalog-update-seal p{margin:.2rem 0 0;color:#7b514c}
@media(max-width:640px){.catalog-update-seal{align-items:flex-start;flex-direction:column}}


/* Integrated operator agenda */
.operator-agenda-view{padding-bottom:36px}
.operator-agenda-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}
.operator-agenda-head h1{margin-bottom:6px}
.operator-agenda-toolbar{display:flex;align-items:center;gap:9px;padding:12px 14px;background:#fff;border:1px solid var(--legacy-border);border-radius:16px}
.operator-agenda-toolbar h2{margin:0 0 0 8px;text-transform:capitalize;font-size:1.25rem}
.operator-agenda-help{margin:10px 3px 14px;color:#66766f;font-size:.88rem}
.operator-agenda-layout{display:grid;grid-template-columns:minmax(680px,1fr) minmax(280px,340px);gap:18px;align-items:start}
.operator-agenda-calendar-card,.operator-agenda-list-card{overflow:hidden;background:#fff;border:1px solid var(--legacy-border);border-radius:20px;box-shadow:0 10px 28px rgba(15,61,46,.06)}
.operator-agenda-weekdays,.operator-agenda-calendar{display:grid;grid-template-columns:repeat(7,1fr)}
.operator-agenda-weekdays{background:#f5f8f6;border-bottom:1px solid var(--legacy-border)}
.operator-agenda-weekdays span{padding:13px 8px;text-align:center;color:#5c7068;font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.operator-agenda-day{position:relative;min-height:116px;padding:9px;border:0;border-right:1px solid #e8efeb;border-bottom:1px solid #e8efeb;background:#fff;cursor:pointer;transition:background-color .14s ease,box-shadow .14s ease}
.operator-agenda-day:nth-child(7n){border-right:0}
.operator-agenda-day:hover{background:#f7fbf4;box-shadow:inset 0 0 0 2px rgba(146,217,37,.42)}
.operator-agenda-day:focus-visible{z-index:2;outline:3px solid rgba(146,217,37,.7);outline-offset:-3px}
.operator-agenda-day.outside{background:#fafcfb;color:#9aa6a1}
.operator-agenda-day.selected{background:#f1f9e5;box-shadow:inset 0 0 0 3px #92d925}
.operator-agenda-number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-weight:800;line-height:1}
.operator-agenda-day.today .operator-agenda-number{background:#174836;color:#fff}
.operator-agenda-day.today::after{content:"Oggi";position:absolute;top:13px;right:10px;color:#3d705a;font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.operator-agenda-events{display:grid;gap:4px;margin-top:5px}
.operator-agenda-event{display:flex;align-items:center;gap:5px;min-width:0;border:0;border-left:3px solid #2b9d66;border-radius:7px;padding:6px;background:#edf7f2;color:#174836;text-align:left;font-size:.72rem}
.operator-agenda-event time{font-weight:900}.operator-agenda-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.operator-agenda-event.attention{border-left-color:#df8d1c;background:#fff5e6}
.operator-agenda-list-card{padding:22px}
.operator-agenda-list-card h2{margin-bottom:16px}
.operator-agenda-list-item{display:grid;grid-template-columns:46px 1fr;gap:12px;width:100%;padding:13px 0;border:0;border-bottom:1px solid #e7eeea;background:transparent;color:#174836;text-align:left}
.operator-agenda-list-item>time{display:grid;place-items:center;border-radius:11px;background:#edf5f1;padding:6px}
.operator-agenda-list-item>time strong{font-size:1.15rem}.operator-agenda-list-item>time small{text-transform:uppercase}
.operator-agenda-list-item>span{display:grid;align-content:center;gap:3px;min-width:0}.operator-agenda-list-item>span strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operator-agenda-list-item>span small{color:#687971}
.agenda-loading{grid-column:1/-1;padding:50px;text-align:center;color:#687971}
.operator-agenda-dialog{width:min(720px,calc(100vw - 28px));max-height:calc(100vh - 28px);overflow:auto}
.operator-agenda-dialog form{padding:0}
.operator-agenda-dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;background:#fff;border-bottom:3px solid var(--legacy-yellow)}
.operator-agenda-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;padding:8px 24px 0}
.operator-agenda-form-grid .wide{grid-column:1/-1}
.operator-agenda-dialog .form-error{margin:4px 24px}
.operator-agenda-dialog-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;background:#fff;border-top:1px solid var(--legacy-border)}
.contract-status.status-central{background:#e8f3ed;color:#174836}
@media(max-width:1050px){.operator-agenda-layout{grid-template-columns:1fr}.operator-agenda-list-card{order:-1}.operator-agenda-list-card #operator-agenda-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}}
@media(max-width:720px){.operator-agenda-head{align-items:flex-start;flex-direction:column}.operator-agenda-head .primary{width:100%}.operator-agenda-toolbar{flex-wrap:wrap}.operator-agenda-toolbar h2{width:100%;margin:5px 0 0}.operator-agenda-calendar-card{overflow-x:auto}.operator-agenda-weekdays,.operator-agenda-calendar{min-width:720px}.operator-agenda-day{min-height:98px}.operator-agenda-list-card #operator-agenda-list{grid-template-columns:1fr}.operator-agenda-form-grid{grid-template-columns:1fr}.operator-agenda-form-grid .wide{grid-column:auto}}

/* Agent contracts: keep the first form fields in the initial viewport. */
#contratti-view:not(.manager-mode) .contracts-hero{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);min-height:154px;margin-bottom:14px;border-radius:22px}
#contratti-view:not(.manager-mode) .contracts-hero-copy{padding:20px 30px}
#contratti-view:not(.manager-mode) .contracts-hero-copy h1{font-size:clamp(1.9rem,2.6vw,2.6rem);line-height:1.12;margin:4px 0 0}
#contratti-view:not(.manager-mode) .contracts-hero-copy p:last-child{margin:6px 0 0;line-height:1.4}
#contratti-view:not(.manager-mode) .contracts-hero-image{min-height:154px}
#contratti-view:not(.manager-mode) .contract-agent-navigation{gap:12px;margin-bottom:14px}
#contratti-view:not(.manager-mode) .contract-section-card{min-height:76px;padding:12px 18px;gap:12px;border-radius:18px}
#contratti-view:not(.manager-mode) .contract-section-icon{width:44px;height:44px;flex-basis:44px;border-radius:13px;font-size:1.3rem}
#contratti-view:not(.manager-mode) .contract-section-card strong{font-size:1rem}
#contratti-view:not(.manager-mode) .contract-section-card small{font-size:.8rem}
#contratti-view:not(.manager-mode) .contract-form{padding:clamp(20px,2.5vw,30px)}
#contratti-view:not(.manager-mode) .contract-form .section-heading{margin-bottom:16px}
@media(max-width:980px){#contratti-view:not(.manager-mode) .contracts-hero{grid-template-columns:1fr;min-height:auto}#contratti-view:not(.manager-mode) .contracts-hero-image{display:none}}
@media(max-width:640px){#contratti-view:not(.manager-mode) .contracts-hero-copy{padding:18px 20px}#contratti-view:not(.manager-mode) .contracts-hero-copy h1{font-size:clamp(1.7rem,7vw,2.2rem)}#contratti-view:not(.manager-mode) .contract-agent-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#contratti-view:not(.manager-mode) .contract-section-card{min-height:58px;padding:12px}#contratti-view:not(.manager-mode) .contract-section-icon,#contratti-view:not(.manager-mode) .contract-section-card small{display:none}}
