:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18202a;background:#f4f6f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{border:0;border-radius:9px;padding:.72rem 1rem;background:#17212b;color:#fff;cursor:pointer;font-weight:650}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{background:#e8edf2;color:#17212b}.danger-button{background:#a92b2b}.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.app-shell aside{background:#101820;color:#fff;padding:24px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;flex-direction:column;gap:2px}.brand strong{font-size:1.2rem}.brand span{font-size:.78rem;opacity:.7;text-transform:uppercase;letter-spacing:.12em}.brand.large{color:#101820;margin-bottom:20px}.app-shell nav{display:flex;flex-direction:column;gap:6px;margin-top:32px}.app-shell nav a{color:#cbd5df;text-decoration:none;padding:10px 12px;border-radius:8px}.app-shell nav a.active,.app-shell nav a:hover{background:#24323f;color:#fff}.user-box{margin-top:auto;display:flex;flex-direction:column;gap:10px}.app-shell main{padding:34px;min-width:0}section{max-width:1450px;margin:0 auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-header h1,h1{margin:0 0 6px}.page-header p{margin:0;color:#5d6975}.notice{padding:14px 16px;border-radius:10px;margin:16px 0}.notice.danger{background:#fff1f0;border:1px solid #ffc9c4;color:#81221d}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.metric-grid article,.cards article,.upload-card,.form-grid,.login-card{background:#fff;border:1px solid #e0e5ea;border-radius:13px;padding:20px;box-shadow:0 5px 18px #1c27310a}.metric-grid span{display:block;color:#687580;font-size:.88rem}.metric-grid strong{font-size:1.85rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.form-grid button{align-self:end}.form-grid label,.login-card label{display:flex;flex-direction:column;gap:7px;font-weight:600}.form-grid input,.form-grid select,.login-card input,.inline input,select{border:1px solid #ccd4dc;border-radius:8px;padding:.72rem;background:#fff}.inline{display:flex;gap:8px;align-items:center}.upload-card{display:flex;gap:14px;align-items:center}.table-wrap{overflow:auto;background:#fff;border:1px solid #e0e5ea;border-radius:12px}table{width:100%;border-collapse:collapse;min-width:850px}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #edf0f3;vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#5e6a75;background:#f8fafb}td small{display:block;color:#71808d;margin-top:4px}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e9eef3;font-size:.75rem;font-weight:700}.badge.ok{background:#ddf5e6;color:#176237}.badge.warn{background:#fff1cf;color:#835d00}.actions{display:flex;gap:6px;white-space:nowrap}.actions button{padding:.45rem .65rem;font-size:.8rem}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.product-grid article{background:#fff;border:1px solid #e0e5ea;border-radius:12px;padding:15px;display:flex;flex-direction:column;gap:8px}.product-grid img{width:100%;height:150px;object-fit:contain;background:#fafafa;border-radius:8px}.product-grid h3{font-size:1rem;margin:0}.product-grid a{color:#1b5f93}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef2f5,#dfe7ed);padding:20px}.login-card{width:min(440px,100%);display:flex;flex-direction:column;gap:15px}.error{background:#ffe5e3;color:#8a211b;padding:10px;border-radius:8px}.success{background:#e2f5e9;color:#1c6338;padding:10px;border-radius:8px}.muted{color:#697783}.break{word-break:break-all;display:block;background:#f1f4f6;padding:10px;border-radius:8px}pre{background:#0f1720;color:#dce8f2;padding:14px;border-radius:9px;overflow:auto;font-size:.79rem}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.app-shell aside{height:auto;position:static}.app-shell nav{flex-direction:row;overflow:auto}.user-box{margin-top:18px}.metric-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cards{grid-template-columns:1fr}}@media(max-width:650px){.app-shell main{padding:20px}.page-header{align-items:stretch;flex-direction:column}.form-grid,.metric-grid,.product-grid{grid-template-columns:1fr}.inline{align-items:stretch;flex-direction:column}}:root{color:#152033;background:#f3f6fa}body{background:#f3f6fa;color:#152033}.app-shell{grid-template-columns:272px 1fr}.app-shell aside{background:#0c1727;padding:24px 16px;border-right:1px solid rgba(255,255,255,.06)}.brand{display:flex;flex-direction:row;align-items:center;gap:12px;padding:0 8px}.brand>div:last-child{display:flex;flex-direction:column;gap:2px}.brand-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#22a862,#69d59a);display:grid;place-items:center;font-size:.78rem;font-weight:850;letter-spacing:.03em;box-shadow:0 10px 25px #22a86238}.brand strong{font-size:1.02rem}.brand span{font-size:.68rem;letter-spacing:.14em;color:#9eafc4;opacity:1}.app-shell nav{gap:22px;margin-top:32px}.nav-group{display:flex;flex-direction:column;gap:4px}.nav-group>p{margin:0 12px 5px;color:#6f849e;font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;font-weight:750}.app-shell nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;color:#b9c7d8;font-weight:600;font-size:.92rem}.app-shell nav a.active,.app-shell nav a:hover{background:#17283d;color:#fff}.app-shell nav a.active{box-shadow:inset 3px 0 #42c57e}.nav-icon{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:#ffffff0d;font-size:.78rem}.user-box{padding:15px 12px 4px;border-top:1px solid rgba(255,255,255,.08);gap:5px}.user-box>span{color:#71869f;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.user-box>strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis}.user-box button{margin-top:10px}.app-shell main{padding:38px clamp(24px,4vw,58px)}section{max-width:1320px}.eyebrow{display:block;color:#1f9257;text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;font-weight:800}.welcome-header h1{font-size:2rem;margin-top:5px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:10px;padding:.76rem 1rem;font-weight:750}.primary-action{background:#178b4f;color:#fff;box-shadow:0 8px 18px #178b4f2e}.safety-banner{display:flex;align-items:flex-start;gap:13px;background:#eaf8f0;border:1px solid #bfe8cf;border-radius:13px;padding:15px 17px;color:#185e38}.safety-banner p{margin:3px 0 0;color:#397354;font-size:.9rem}.safety-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#1fa862;color:#fff;font-weight:850;flex:none}.metric-grid{gap:13px;margin:18px 0}.metric-grid article{padding:18px;border-radius:14px;box-shadow:0 4px 15px #18283f09}.metric-grid strong{display:block;font-size:1.8rem;margin-top:7px}.metric-grid small{display:block;color:#85919f;margin-top:4px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.75fr);gap:18px;margin-top:18px}.panel-card{background:#fff;border:1px solid #dfe5ec;border-radius:15px;padding:21px;box-shadow:0 5px 18px #1c273109}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.card-heading h2,.help-card h2{font-size:1.16rem;margin:5px 0 0}.service-status{display:inline-flex;border-radius:999px;background:#eef1f5;color:#6c7988;padding:6px 9px;font-size:.7rem;font-weight:750;white-space:nowrap}.service-status.online{background:#e4f6eb;color:#187044}.step-list{margin-top:18px}.workflow-step{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #edf0f4}.step-number{width:30px;height:30px;border-radius:9px;background:#eef2f6;color:#657487;display:grid;place-items:center;font-weight:800}.step-number.done{background:#e1f5e9;color:#198550}.workflow-step p{margin:3px 0 0;color:#768391;font-size:.84rem}.workflow-step a,.text-link{color:#137b47;text-decoration:none;font-weight:750;font-size:.82rem}.help-card>p{color:#657383;line-height:1.55}.consent-rule{display:flex;align-items:flex-start;gap:10px;padding:13px;border-radius:11px;background:#f4f8f6;margin:18px 0}.consent-rule span{color:#198a51;font-weight:900}.consent-rule p{margin:0;font-size:.88rem;line-height:1.45}.brand.large{color:#152033;margin-bottom:8px;flex-direction:column;align-items:flex-start;padding:0}.brand.large>strong{font-size:1.15rem}.brand.large>span{color:#667587}.login-card h1{margin:4px 0}.login-card{box-shadow:0 25px 70px #1d2f461f}@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.app-shell{grid-template-columns:230px 1fr}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.app-shell aside{height:auto;position:static}.app-shell nav{flex-direction:row;overflow:auto;gap:8px;margin-top:20px}.nav-group{display:contents}.nav-group>p{display:none}.app-shell nav a{white-space:nowrap}.user-box{display:none}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell main{padding:25px 18px}}@media(max-width:600px){.metric-grid{grid-template-columns:1fr}.workflow-step{grid-template-columns:34px 1fr}.workflow-step a{grid-column:2}.card-heading{flex-direction:column}.welcome-header{align-items:stretch}.primary-action{width:100%}}.simple-guide{display:flex;gap:8px;margin:-4px 0 18px}.simple-guide span{padding:7px 10px;border-radius:999px;background:#e9eef4;color:#607083;font-size:.76rem;font-weight:700}.upload-friendly{justify-content:space-between;flex-wrap:wrap}.upload-friendly>div{margin-right:auto}.upload-friendly p{margin:4px 0 0;color:#738192;font-size:.86rem}.import-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.import-summary article{background:#fff;border:1px solid #dfe5ec;border-radius:13px;padding:17px}.import-summary span{display:block;color:#6b7989;font-size:.82rem}.import-summary strong{display:block;font-size:1.55rem;margin-top:5px}.import-summary article.has-warning{border-color:#ecd59e;background:#fffaf0}.safety-banner.compact{margin:16px 0}.preview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:25px 0 13px}.preview-heading h2{margin:0 0 4px;font-size:1.15rem}.preview-heading p{margin:0;color:#748292}.import-result,.preview-result{margin:16px 0}.import-result p,.preview-result p{margin:3px 0 0}.technical-details,.mfa-field{margin-top:15px;border:1px solid #dde3ea;border-radius:10px;padding:11px 13px;background:#f8fafc}.technical-details summary,.mfa-field summary{cursor:pointer;font-weight:700;color:#5d6c7d}.technical-details pre{margin-bottom:0}.friendly-form{position:relative;padding-top:82px}.form-intro{position:absolute;left:20px;right:20px;top:18px;padding-bottom:13px;border-bottom:1px solid #edf0f3}.form-intro p{margin:3px 0 0;color:#728090;font-size:.85rem}.friendly-form label small{font-weight:500;color:#83909e}.saved-groups{margin-top:18px}.group-list{margin-top:14px}.group-list article{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 0;border-top:1px solid #edf0f3}.group-list p,.empty-friendly p{margin:3px 0 0;color:#748292}.empty-friendly{text-align:center;padding:35px 20px}.login-intro{margin:-2px 0 6px}.mfa-field{margin:0}.mfa-field label{margin-top:12px}.safe-login-note{font-size:.78rem;color:#237148;text-align:center;margin:0}.actions{flex-wrap:wrap;white-space:normal}.actions .danger-button{background:#a33a32}.product-grid:empty:after{content:"Nessun prodotto disponibile";display:block;color:#748292;padding:30px}@media(max-width:700px){.simple-guide{flex-direction:column}.import-summary{grid-template-columns:1fr}.preview-heading{align-items:stretch;flex-direction:column}.friendly-form{padding-top:100px}.upload-friendly{align-items:stretch;flex-direction:column}}.profile-card{background:#fff;border:1px solid #dfe5ec;border-radius:12px;padding:20px;margin-bottom:20px}.profile-grid{display:grid;grid-template-columns:auto 1fr;gap:12px 24px;align-items:center}.profile-label{font-weight:700;color:#5d6c7d}.profile-value{color:#152033}.mfa-setup-wizard{display:flex;flex-direction:column;gap:15px;background:#f8fafc;border:1px solid #dde3ea;border-radius:12px;padding:20px}.mfa-step{display:flex;gap:12px}.mfa-step-num{width:24px;height:24px;border-radius:50%;background:#1fa862;color:#fff;display:grid;place-items:center;font-size:.78rem;font-weight:800;flex-shrink:0}.qr-container{display:flex;flex-direction:column;align-items:center;gap:8px;background:#fff;padding:15px;border-radius:8px;border:1px solid #e2e8f0;width:fit-content;margin:10px 0}.qr-code-img{width:200px;height:200px;border:none}.qr-secret-box{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:6px 12px;border-radius:6px;font-family:monospace;font-size:.9rem}.copy-btn{background:#e2e8f0;color:#334155;border:none;padding:4px 8px;border-radius:4px;font-size:.75rem;cursor:pointer}.copy-btn:hover{background:#cbd5e1}.campaign-stepper{display:flex;justify-content:space-between;align-items:center;margin:20px 0;background:#fff;padding:16px 24px;border-radius:12px;border:1px solid #dfe5ec}.step-item{display:flex;align-items:center;gap:8px;opacity:.4;position:relative}.step-item.active{opacity:1;font-weight:700}.step-item.completed{opacity:.8}.step-dot{width:28px;height:28px;border-radius:50%;background:#e2e8f0;color:#64748b;display:grid;place-items:center;font-weight:800;font-size:.85rem}.step-item.active .step-dot{background:#178b4f;color:#fff;box-shadow:0 0 0 4px #178b7f26}.step-item.completed .step-dot{background:#22a862;color:#fff}.step-connector{flex-grow:1;height:2px;background:#e2e8f0;margin:0 16px}.step-connector.completed{background:#22a862}.product-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:8px;max-height:300px;overflow-y:auto;border:1px solid #ccd4dc;border-radius:8px;padding:12px;background:#fff}.product-select-card{display:flex;align-items:center;gap:10px;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.product-select-card:hover{background:#f8fafc;border-color:#cbd5e1}.product-select-card.selected{background:#eaf8f0;border-color:#178b4f}.product-select-card input[type=checkbox]{width:18px;height:18px;accent-color:#178b4f;cursor:pointer;margin:0}.product-select-info{display:flex;flex-direction:column}.product-select-title{font-weight:600;font-size:.88rem;color:#1e293b}.product-select-meta{font-size:.75rem;color:#64748b}.mapping-table{width:100%;border-collapse:collapse;margin:15px 0}.mapping-table th{background:#f8fafc;color:#475569;font-weight:600;font-size:.8rem;padding:8px 12px;border-bottom:2px solid #e2e8f0;text-align:left}.mapping-table td{padding:10px 12px;border-bottom:1px solid #f1f5f9;font-size:.88rem}.mapping-arrow{color:#94a3b8;font-weight:700;padding:0 8px}.recipients-preview-container{background:#fff;border:1px solid #dfe5ec;border-radius:12px;padding:20px;margin-top:20px}.recipients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:15px;max-height:400px;overflow-y:auto}.recipient-card{border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px;background:#f8fafc}.recipient-card.excluded{border-left:4px solid #ef4444}.recipient-card.eligible{border-left:4px solid #22a862}.recipient-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.recipient-name{font-weight:600;font-size:.88rem}.exclusion-reason-badge{font-size:.72rem;font-weight:700;background:#fecaca;color:#991b1b;padding:2px 6px;border-radius:4px}.variable-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.variable-tag{font-size:.72rem;background:#e2e8f0;color:#334155;padding:1px 5px;border-radius:4px;font-family:monospace}
