:root{--doc-ink:#1c1c1c;--doc-pine:#000000;--doc-moss:#5a5a5a;--doc-paper:#ffffff;--doc-canvas:#f7f7f7;--doc-line:#d8d8d8;--doc-amber:#006aff;--doc-muted:#5a5a5a}body{background:var(--doc-canvas);color:var(--doc-ink)}.doc-app{min-height:100vh;padding-bottom:84px}.doc-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px clamp(16px,4vw,56px);background:var(--doc-paper);border-bottom:1px solid var(--doc-line)}.doc-brand{display:flex;align-items:center;gap:11px;color:var(--doc-ink);text-decoration:none}.doc-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:#e6eee7;font-size:22px}.doc-brand__name{display:block;font:700 17px/1.2 var(--font-display)}.doc-brand__hint{display:block;margin-top:4px;color:#006aff;font-size:11px;letter-spacing:.04em}.doc-module{font-size:13px;font-weight:700;color:var(--doc-pine)}.doc-nav{display:flex;gap:6px;padding:10px clamp(16px,4vw,56px);background:#edf0e9;border-bottom:1px solid var(--doc-line);overflow-x:auto}.doc-nav a{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:10px;color:#63736a;font-size:14px;font-weight:650;white-space:nowrap}.doc-nav a[aria-current=page]{background:var(--doc-pine);color:white}.doc-main{width:min(1180px,100%);margin:auto;padding:24px clamp(16px,4vw,48px) 54px}.doc-crumb{display:flex;gap:9px;align-items:center;color:var(--doc-muted);font-size:13px;margin-bottom:23px}.doc-crumb a{color:inherit}.doc-hero{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:0 0 24px}.doc-eyebrow{margin:0 0 8px;color:var(--doc-moss);font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.doc-hero h1{font:700 clamp(29px,4vw,43px)/1.08 var(--font-display);letter-spacing:-.03em;margin:0 0 9px;color:var(--doc-ink)}.doc-hero p{margin:0;color:var(--doc-muted);max-width:65ch}.doc-paper-card,.doc-panel{background:var(--doc-paper);border:1px solid var(--doc-line);border-radius:18px;box-shadow:0 8px 28px #263f3010}.doc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--doc-line)}.doc-toolbar h2,.doc-panel h2{margin:0;font:700 19px var(--font-display)}.doc-toolbar__left,.doc-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.doc-filter{display:grid;grid-template-columns:repeat(3,minmax(125px,1fr));gap:10px;padding:15px 18px;border-bottom:1px solid var(--doc-line)}.doc-filter label,.doc-form label{display:grid;gap:6px;color:var(--doc-muted);font-size:12px;font-weight:700}.doc-filter select,.doc-form input,.doc-form select{width:100%;min-height:44px;border:1px solid var(--doc-line);border-radius:10px;padding:9px 12px;background:white;color:var(--doc-ink);font:inherit}.doc-table-wrap{overflow-x:auto}.doc-table{width:100%;border-collapse:collapse}.doc-table th{text-align:left;padding:12px 15px;color:var(--doc-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:#faf9f4}.doc-table td{padding:14px 15px;border-top:1px solid #eeeadf;font-size:14px}.doc-file{display:flex;align-items:center;gap:11px;min-width:175px}.doc-file__icon{display:grid;place-items:center;width:38px;height:42px;background:#f6e8df;border-radius:9px;color:#a85e36;font-weight:800;font-size:11px}.doc-file strong,.doc-file small{display:block}.doc-file strong{font-size:14px}.doc-file small{margin-top:3px;color:var(--doc-muted);font-size:12px}.doc-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#edf2e9;color:#45644c;font-size:12px;font-weight:750;white-space:nowrap}.doc-badge--sent{background:#e7f1eb;color:#286246}.doc-badge--new{background:#fbefd9;color:#875e22}.doc-btn{display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:44px;border:1px solid var(--doc-line);border-radius:11px;padding:0 14px;background:var(--doc-paper);color:var(--doc-ink);font:700 14px var(--font-sans);cursor:pointer;text-decoration:none}.doc-btn:hover{border-color:#91aa96;background:#f6f8f3}.doc-btn--primary{border-color:var(--doc-pine);background:var(--doc-pine);color:white}.doc-btn--primary:hover{background:#183f34;color:white}.doc-btn--quiet{background:transparent}.doc-row-actions{display:flex;gap:7px;flex-wrap:wrap}.doc-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:0 0 20px}.doc-stat{padding:16px 18px;background:var(--doc-paper);border:1px solid var(--doc-line);border-radius:15px}.doc-stat__label{display:block;color:var(--doc-muted);font-size:12px}.doc-stat__value{display:block;margin-top:5px;font:700 25px var(--font-display)}.doc-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:18px;align-items:start}.doc-panel{padding:20px}.doc-panel__head{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:16px}.doc-recipient{display:flex;align-items:center;gap:11px;padding:12px 0;border-top:1px solid #eeeadf}.doc-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e5ede4;color:#315a48;font-weight:800}.doc-recipient input{width:20px;height:20px;accent-color:var(--doc-pine)}.doc-recipient__meta{flex:1}.doc-recipient__meta strong,.doc-recipient__meta small{display:block}.doc-recipient__meta small{color:var(--doc-muted)}.doc-note{padding:15px;border-left:3px solid var(--doc-amber);background:#fbf5e9;border-radius:0 10px 10px 0;color:#695b46;font-size:13px;line-height:1.55}.doc-preview{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:start}.doc-person-list{display:grid;gap:7px}.doc-person{display:flex;align-items:center;gap:10px;width:100%;min-height:54px;padding:7px 10px;text-align:left;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--doc-ink);cursor:pointer}.doc-person[aria-pressed=true]{background:white;border-color:var(--doc-line);box-shadow:0 3px 12px #263f300c}.doc-sheet{min-height:520px;padding:clamp(22px,5vw,54px);background:#fff;border:1px solid var(--doc-line);box-shadow:0 15px 45px #263f3012}.doc-sheet__head{display:flex;justify-content:space-between;gap:16px;padding-bottom:19px;border-bottom:2px solid var(--doc-pine)}.doc-sheet__brand{font:700 23px var(--font-display)}.doc-sheet__subtitle{color:var(--doc-muted);font-size:12px}.doc-sheet__watermark{margin:36px 0 20px;padding:8px 12px;border:1px dashed #c17d45;color:#006aff;width:max-content;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.doc-sheet h2{font:700 25px var(--font-display)}.doc-sheet__rows{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:24px}.doc-sheet__rows div{display:flex;justify-content:space-between;gap:8px;padding:11px 0;border-bottom:1px solid #eee9dd;font-size:13px}.doc-sheet__total{display:flex;justify-content:space-between;margin-top:27px;padding:15px 0;border-top:2px solid var(--doc-pine);font-weight:800}.doc-empty{padding:28px;text-align:center;color:var(--doc-muted)}.doc-toast{position:fixed;left:50%;bottom:82px;z-index:110;transform:translateX(-50%);padding:12px 17px;background:var(--doc-ink);color:white;border-radius:12px;box-shadow:0 9px 25px #18312b30;max-width:min(90vw,500px)}.doc-toast[hidden]{display:none}.doc-form{display:grid;gap:14px}.doc-form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.doc-footnote{margin:15px 0 0;color:var(--doc-muted);font-size:12px}.doc-link{color:var(--doc-pine);font-weight:700}.doc-tag{font-size:11px;letter-spacing:.04em;color:#9a653f}.doc-status{font-size:13px;color:var(--doc-muted)}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #89aa8d;outline-offset:2px}@media(max-width:760px){.doc-top{padding:11px 15px}.doc-module{display:none}.doc-nav{padding:8px 12px;gap:3px}.doc-nav a{padding:0 12px;font-size:13px}.doc-main{padding:18px 14px 40px}.doc-hero{display:block}.doc-hero__action{margin-top:16px}.doc-toolbar{align-items:flex-start;flex-direction:column}.doc-filter{grid-template-columns:1fr}.doc-summary{grid-template-columns:1fr 1fr;gap:9px}.doc-stat{padding:12px}.doc-stat:last-child{grid-column:1/-1}.doc-grid,.doc-preview{grid-template-columns:1fr}.doc-person-list{display:flex;overflow-x:auto;padding-bottom:5px}.doc-person{min-width:180px;background:#f9f8f3}.doc-sheet{min-height:0;padding:22px}.doc-sheet__rows{grid-template-columns:1fr}.doc-table,.doc-table tbody,.doc-table tr,.doc-table td{display:block;width:100%}.doc-table thead{display:none}.doc-table tr{padding:12px 15px;border-top:1px solid var(--doc-line)}.doc-table td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;border:0}.doc-table td:before{content:attr(data-label);color:var(--doc-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.doc-table td:first-child{padding-top:0}.doc-row-actions{justify-content:flex-end}.doc-row-actions .doc-btn{flex:1}.doc-form__row{grid-template-columns:1fr}.doc-app{padding-bottom:90px}}@media(min-width:761px) and (max-width:1024px){.doc-main{padding-left:26px;padding-right:26px}.doc-preview{grid-template-columns:210px minmax(0,1fr)}.doc-sheet{padding:32px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* QA mobile: vincola i pannelli alla colonna e consente al testo documento di andare a capo. */
.doc-app,.doc-main,.doc-preview,.doc-panel,.doc-sheet,.doc-person-list{min-width:0;max-width:100%}.doc-sheet__head,.doc-sheet__total,.doc-actions{min-width:0;flex-wrap:wrap}.doc-sheet__head>*{min-width:0;overflow-wrap:anywhere}.doc-sheet__watermark{max-width:100%;width:fit-content;overflow-wrap:anywhere}.doc-sheet__total>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){.doc-top{min-width:0;gap:10px}.doc-brand{min-width:0;flex:0 1 auto}.doc-brand>span:last-child{min-width:0}.doc-brand__name{white-space:normal}.doc-link{flex:0 0 24px;min-width:24px;font-size:0}.doc-link:after{content:'↗';font-size:16px}.doc-main{width:100%;min-width:0}.doc-crumb{min-width:0;flex-wrap:wrap}.doc-hero>*{min-width:0;overflow-wrap:anywhere}.doc-preview{grid-template-columns:minmax(0,1fr)}.doc-sheet__rows>div,.doc-sheet__total{min-width:0}.doc-sheet__total{gap:7px}.doc-sheet__total span{overflow-wrap:anywhere}}
.doc-person>span:last-child{display:grid;gap:3px;min-width:0}.doc-person strong,.doc-person small{line-height:1.35}.doc-person small{color:var(--doc-muted)}

/* Audience navigation remains grouped when it is presented in the shared drawer. */
.doc-nav .audience-nav-group{display:flex;align-items:center;gap:6px}
.doc-nav .audience-nav-label{margin:0 6px 0 0;color:var(--doc-muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.doc-create-form{display:grid;gap:18px;max-width:900px}
.doc-create-form .doc-form__row{grid-template-columns:repeat(2,minmax(0,1fr))}
.doc-create-form input[type=file]{min-height:44px;padding:8px;background:#fff}
.doc-create-form .doc-note{margin:0}
.doc-create-result{max-width:900px;margin-top:18px}
.doc-create-result h2{margin:0 0 6px;font:700 22px var(--font-display)}
.doc-profile-switch{display:grid;gap:5px;margin-top:10px;color:var(--doc-muted);font-size:11px;font-weight:700}
.doc-profile-switch select{max-width:220px;min-height:40px;border:1px solid var(--doc-line);border-radius:9px;padding:7px 10px;background:white;color:var(--doc-ink);font:inherit}
@media(max-width:760px){.doc-nav .audience-nav-group{align-items:flex-start;flex-direction:column}.doc-nav .audience-nav-label{margin:4px 0}.doc-create-form .doc-form__row{grid-template-columns:1fr}.doc-person-list{display:grid;grid-template-columns:minmax(0,1fr);overflow:visible}.doc-person{width:100%;min-width:0;background:#f9f8f3}}

.doc-create-form[hidden],.doc-create-result[hidden]{display:none}

.doc-sheet__rows #preview-payroll[hidden],.doc-sheet__total[hidden]{display:none}

#document-create label{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;align-content:start;color:var(--doc-muted);font-size:13px;font-weight:700}#document-create input:not([type=file]),#document-create select{display:block;width:100%;min-height:46px;border:1px solid var(--doc-line);border-radius:10px;padding:10px 12px;background:#fff;color:var(--doc-ink);font:inherit}#document-create input[type=file]{display:block;max-width:100%;font:inherit}

.doc-sheet__rows #preview-payroll{display:contents}.doc-sheet__rows #preview-payroll[hidden]{display:none}

.doc-distribution-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:16px 0 5px;padding:14px;border:1px solid var(--doc-line);border-radius:13px;background:#fafaf8}.doc-distribution-picker label{display:grid;gap:6px;color:var(--doc-muted);font-size:12px;font-weight:750}.doc-distribution-picker select{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--doc-line);border-radius:10px;color:var(--doc-ink);background:#fff;font:inherit;font-size:14px}.doc-form__hint{margin:0 2px 12px;color:var(--doc-muted);font-size:11px;line-height:1.45}@media(max-width:760px){.doc-distribution-picker{grid-template-columns:1fr}.doc-distribution-picker .doc-btn{width:100%}}

.doc-filter input{width:100%;min-height:44px;border:1px solid var(--doc-line);border-radius:10px;padding:9px 12px;background:#fff;color:var(--doc-ink);font:inherit}.doc-search-count{margin:12px 18px 0;color:var(--doc-muted);font-size:12px}

.doc-sent-filter{grid-template-columns:minmax(0,2fr) minmax(180px,1fr)}@media(max-width:760px){.doc-sent-filter{grid-template-columns:1fr}}

.doc-filter input[type="search"]{padding-left:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%235a5a5a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.8' cy='10.8' r='6.8'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center}

.doc-month-browser{margin:0 0 20px;padding:18px;border:1px solid var(--doc-line);border-radius:16px;background:#fff;box-shadow:0 5px 18px #263f3008}.doc-month-browser__head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.doc-month-browser__head h2{margin:0;font:700 20px var(--font-display)}.doc-month-browser__hint{margin:5px 0 0;color:var(--doc-muted);font-size:12px}.doc-month-year{display:flex;align-items:center;gap:9px;flex:none}.doc-month-year strong{min-width:56px;text-align:center;font-size:16px}.doc-month-year .doc-btn{width:44px;min-height:44px;padding:0;font-size:20px}.doc-month-year .doc-btn:disabled{opacity:.42;cursor:not-allowed}.doc-month-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.doc-month-option{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;min-height:48px;padding:0 11px;border:1px solid var(--doc-line);border-radius:10px;background:#fff;color:var(--doc-ink);font:700 12px var(--font-sans);text-align:left}.doc-month-option.has-documents{cursor:pointer}.doc-month-option.has-documents:hover{border-color:#777;background:#fafafa}.doc-month-option.is-selected{border-color:#111;background:#111;color:#fff;box-shadow:inset 0 0 0 1px #111}.doc-month-option.is-empty{color:#9a9a9a;background:#f7f7f7;cursor:not-allowed}.doc-month-option__meta{display:flex;align-items:center;gap:5px;flex:none}.doc-month-icon{width:17px;height:17px}.doc-month-option__meta small{display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:999px;background:#e9ece8;color:#3f5145;font-size:10px;font-weight:850}.doc-month-option.is-selected .doc-month-option__meta small{background:#fff;color:#111}.doc-month-status{min-height:16px;margin:10px 0 0;color:var(--doc-muted);font-size:11px;font-weight:700}.doc-month-results{display:flex;justify-content:space-between;align-items:center;gap:9px;margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--doc-line);font-size:12px}.doc-month-results span{color:var(--doc-muted);font-size:11px}.doc-month-year .doc-btn:focus-visible,.doc-month-option:focus-visible{outline:3px solid #006aff;outline-offset:2px}
@media(max-width:760px){.doc-month-browser{padding:14px;border-radius:14px}.doc-month-browser__head{align-items:flex-start;flex-direction:column;gap:12px}.doc-month-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.doc-month-option{min-height:48px;padding:0 8px;font-size:11px}}
@media(max-width:420px){.doc-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-month-browser__head h2{font-size:18px}.doc-month-option{min-height:46px}}