/* CalcoloPercentuale — Smart Calculator, design 03. No frameworks, no external fonts. */
:root{color-scheme:light;--bg:#f7f6fc;--surface:#ffffff;--surface2:#f4f1ff;--text:#201b3b;--muted:#77728f;--border:#e8e5f1;--purple:#7139fa;--purple-2:#9657ff;--purple-dark:#4225bc;--shadow:0 16px 50px rgba(32,20,83,.075);--hero:#171435;--hero2:#332167;--ring:#9657ff;--success:#179b72;--footer:#191634;--error:#ac2946}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--bg:#121022;--surface:#211b38;--surface2:#292342;--text:#f5f1ff;--muted:#b2a9c9;--border:#413757;--shadow:0 16px 50px rgba(0,0,0,.2);--hero:#17132e;--hero2:#422670;--footer:#100d21;--error:#ff9cb5}}
:root[data-theme="dark"]{color-scheme:dark;--bg:#121022;--surface:#211b38;--surface2:#292342;--text:#f5f1ff;--muted:#b2a9c9;--border:#413757;--shadow:0 16px 50px rgba(0,0,0,.2);--hero:#17132e;--hero2:#422670;--footer:#100d21;--error:#ff9cb5}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.58 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}a,button,input,select,summary{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--ring)}.container{width:min(1152px,calc(100% - 40px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-80px;z-index:99;padding:10px;background:#fff;color:#111}.skip-link:focus{top:12px}
.site-header{position:relative;z-index:8;background:#191534;color:#f5f1ff;border-bottom:1px solid rgba(255,255,255,.095)}.header-inner{min-height:73px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:10px;font-weight:850;font-size:20px;letter-spacing:-1px;white-space:nowrap}.brand-symbol{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(150deg,#d3bbff 0,#8b49f7 100%);color:#261557;font-size:26px;font-weight:900;line-height:1}.brand-alt{color:#e4d4ff}.brand-dot{color:#a5a2bf}.top-nav{display:flex;align-items:center;gap:28px;margin-left:auto}.top-nav a{font-size:14px;font-weight:600;color:#e3dbf6;transition:color .2s}.top-nav a:hover{color:white}.header-actions{display:flex;gap:9px}.theme-switch,.mobile-toggle{height:37px;width:37px;border-radius:11px;display:inline-grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:19px}.theme-switch:hover,.mobile-toggle:hover{background:rgba(255,255,255,.17)}.mobile-toggle{display:none}
.hero{background:radial-gradient(ellipse at 82% 45%,rgba(121,67,217,.34),transparent 38%),radial-gradient(ellipse at 18% -5%,rgba(131,74,250,.12),transparent 48%),linear-gradient(130deg,var(--hero),var(--hero2));color:#fff;position:relative;isolation:isolate;overflow:hidden}.hero:after{content:"";pointer-events:none;position:absolute;inset:auto -10% -75px -10%;height:100px;background:var(--bg);transform:rotate(-2.5deg);transform-origin:left top;z-index:-1}.hero-inner{position:relative;padding:66px 0 105px}.home-hero .hero-inner{padding:66px 0 100px}.inner-hero .hero-inner{padding:40px 0 92px}.hero-content{max-width:750px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#d2baff;font-weight:720;font-size:13px;letter-spacing:.3px}.eyebrow-spark{font-size:16px}.hero h1{font-size:clamp(34px,4.4vw,58px);line-height:1.12;letter-spacing:-1.9px;margin:18px 0 18px;max-width:740px;text-wrap:balance}.inner-hero h1{font-size:clamp(31px,3.7vw,48px)}.hero-lead{font-size:17px;color:#e0d7f0;line-height:1.65;max-width:660px;margin:0}.hero-points{display:flex;gap:19px;flex-wrap:wrap;margin-top:25px;color:#d5cbea;font-size:13px;font-weight:610}.hero-points span{white-space:nowrap}.hero-spark{position:absolute;right:4%;top:29%;font-size:180px;line-height:1;color:#e5cfff;opacity:.075;transform:rotate(-23deg);font-weight:900;pointer-events:none}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:13px;color:#c7b8e5;margin-bottom:22px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:26px;align-items:start;margin-top:-52px;position:relative;z-index:3}.main-column{min-width:0}.side-column{display:grid;gap:22px}.calc-card,.side-card,.info-panel,.explain-section,.examples-section,.faq-section,.legal-panel{background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:19px}.calc-card{padding:28px 30px 25px;position:relative}.calc-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#733aff,#a35fff,#e0c6ff);border-radius:19px 19px 0 0}.calc-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.calc-kicker,.section-kicker{font-size:11px;letter-spacing:1.2px;color:var(--purple);font-weight:850}.calc-kicker{display:flex;align-items:center;gap:8px}.kicker-dot{width:7px;height:7px;border-radius:50%;background:#6ed7ae;box-shadow:0 0 0 4px rgba(110,215,174,.15)}.calc-top h2{font-size:23px;letter-spacing:-.65px;margin:4px 0 0}.calc-free{padding:5px 12px;border-radius:40px;background:#e7f9f0;color:#137d50;font-weight:750;font-size:12px;white-space:nowrap}:root[data-theme="dark"] .calc-free{background:#173d32;color:#87e5be}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .calc-free{background:#173d32;color:#87e5be}}
.calc-tabs{display:flex;gap:5px;background:var(--surface2);padding:6px;border-radius:12px;margin:23px 0 24px;overflow-x:auto;scrollbar-width:thin}.calc-tab{flex:1;min-width:max-content;min-height:40px;padding:10px 12px;background:none;border:none;border-radius:9px;color:var(--muted);font-size:12px;font-weight:780;transition:background .2s,color .2s,box-shadow .2s}.calc-tab:hover{background:var(--surface);color:var(--text)}.calc-tab.is-selected{color:#fff;background:linear-gradient(125deg,#7140ed,#9556ff);box-shadow:0 5px 13px rgba(115,58,250,.26)}.calc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.field{display:block;min-width:0}.field-label{display:block;color:var(--text);font-weight:700;font-size:13px;margin-bottom:8px}.input-wrap{position:relative;display:block}.input-wrap input{width:100%;height:56px;background:var(--surface);border:1.5px solid var(--border);border-radius:10px;color:var(--text);font-size:20px;font-weight:750;padding:0 46px 0 15px;appearance:none;outline:none;transition:border .16s,box-shadow .16s;font-variant-numeric:tabular-nums}.input-wrap input::placeholder{font-size:14px;font-weight:400;color:var(--muted)}.input-wrap input:focus{border-color:var(--purple-2);box-shadow:0 0 0 4px rgba(126,72,248,.12)}.field-unit{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:16px;font-weight:760}.form-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.precision-control{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px}.precision-control select{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:7px;padding:4px 8px}.reset-button{border:none;background:none;color:var(--muted);font-weight:750;font-size:12px;padding:7px}.reset-button:hover{color:var(--purple)}.calculate-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:linear-gradient(105deg,#6631ef,#9256ff);color:white;border:none;min-height:54px;border-radius:11px;font-weight:850;font-size:16px;margin:16px 0 17px;box-shadow:0 9px 20px rgba(113,57,250,.23);transition:filter .2s,transform .2s}.calculate-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.calculate-button span{font-size:21px}.calc-message{padding:11px 13px;border-radius:9px;font-size:13px;margin:-4px 0 14px}.calc-message.is-error{background:rgba(234,55,96,.09);color:var(--error)}.calc-message[hidden],.calc-warning[hidden]{display:none}.result-panel{background:var(--surface2);border:1px solid var(--border);border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.result-main{padding:6px 9px 3px}.result-label,.work-label{display:block;font-size:11px;font-weight:850;letter-spacing:.95px;color:var(--muted)}.result-main strong{display:block;color:var(--purple);font-weight:860;font-size:clamp(36px,4vw,49px);line-height:1.2;letter-spacing:-1.5px;margin:6px 0 2px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.result-main p{font-size:13px;color:var(--text);margin:1px 0 10px}.result-actions button{border:0;background:none;color:var(--purple);font-weight:760;padding:4px 0;font-size:12px}.result-actions button:hover{text-decoration:underline}.result-work{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:17px;display:flex;flex-direction:column;justify-content:center;min-width:0}.work-label{margin-bottom:9px}.result-work #calc-steps{font-size:14px;color:var(--text);line-height:1.7;overflow-wrap:anywhere;font-weight:650}.result-work #calc-secondary{font-size:12px;font-weight:750;color:var(--purple);margin-top:7px}.result-invalid{opacity:.75}.calc-warning{margin:12px 4px 0;color:#a95e11;font-size:12px}.calc-hint{font-size:12px;color:var(--muted);margin:16px 2px 0}.calc-hint strong{color:var(--text)}
.side-card{padding:24px 18px 14px}.side-card h2{font-size:17px;letter-spacing:-.3px;margin:0 0 12px;padding-left:7px}.side-links{list-style:none;padding:0;margin:0}.side-links li+li{border-top:1px solid var(--border)}.side-links a{display:flex;align-items:center;gap:9px;padding:12px 4px;font-weight:700;font-size:13px;transition:color .2s}.side-links a:hover{color:var(--purple)}.side-links a>span:last-child{margin-left:auto;color:var(--muted);font-size:19px}.side-icon{display:grid;place-items:center;min-width:27px;width:27px;height:27px;border-radius:8px;background:var(--surface2);color:var(--purple);font-size:17px;font-weight:900}.side-tip{padding:23px;border:1px solid #e1d1ff;border-radius:18px;background:linear-gradient(135deg,#f3ecff,#eae0ff);color:#3b2875}.side-tip-icon{display:grid;place-items:center;width:42px;height:42px;background:#e1ceff;color:#6d3cde;border-radius:12px;font-size:24px}.side-tip h2{font-size:18px;margin:10px 0 6px}.side-tip p{font-size:13px;margin:0 0 10px}.side-tip a{font-size:13px;font-weight:800;color:#6534d9}
.info-panel{display:flex;gap:21px;padding:27px 30px;margin-top:25px;align-items:start}.info-icon{width:60px;height:60px;flex:none;display:grid;place-items:center;color:#7334f7;font-size:28px;font-weight:880;border-radius:16px;background:var(--surface2)}.info-panel h2{font-size:24px;letter-spacing:-.65px;line-height:1.3;margin:6px 0 10px}.info-panel p{margin:0;font-size:14px;color:var(--muted)}.explain-section,.examples-section,.faq-section{margin-top:24px;padding:30px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}.section-heading h2{font-size:26px;line-height:1.3;letter-spacing:-.7px;margin:3px 0 0}.section-heading p{color:var(--muted);font-size:14px;margin:0}.formula-box{background:var(--surface2);border:1px dashed #a27bff;border-radius:13px;padding:19px 20px}.formula-box span{color:var(--purple);font-size:11px;font-weight:850;letter-spacing:.7px}.formula-box p{font-weight:800;font-size:16px;line-height:1.5;margin:6px 0 0;overflow-wrap:anywhere}.steps-list{list-style:none;padding:0;margin:19px 0 0;display:grid;gap:14px}.steps-list li{display:flex;align-items:center;gap:13px}.steps-list li span{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#ede5ff;color:#6536d9;font-weight:900;font-size:13px}.steps-list li p{margin:0;color:var(--muted);font-size:14px}.table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--border)}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:12px 15px;border-bottom:1px solid var(--border)}th{background:var(--surface2);color:var(--text);font-size:12px;text-transform:uppercase;letter-spacing:.4px}tbody tr:last-child td{border-bottom:none}td:last-child{color:var(--purple);font-weight:850;white-space:nowrap}.table-note{font-size:12px;color:var(--muted);margin:12px 0 0}.faq-section details{border-top:1px solid var(--border);padding:15px 0}.faq-section details:last-child{border-bottom:1px solid var(--border)}.faq-section summary{cursor:pointer;font-size:14px;font-weight:750;display:flex;justify-content:space-between;gap:12px;list-style:none}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary span{color:var(--purple);font-size:20px;line-height:1}.faq-section details[open] summary span{transform:rotate(45deg)}.faq-section details p{font-size:14px;color:var(--muted);margin:8px 0 2px}.tools-section{padding:56px 0 70px}.tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.tool-tile{position:relative;display:flex;flex-direction:column;gap:4px;min-height:168px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);padding:19px;border-radius:14px;transition:border .2s,transform .2s}.tool-tile:hover{border-color:#a581f4;transform:translateY(-3px)}.tool-tile.current{border-color:var(--purple-2)}.tile-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--surface2);color:var(--purple);font-size:25px;font-weight:900;margin-bottom:7px}.tool-tile strong{font-size:14px;line-height:1.3}.tool-tile>span:not(.tile-icon):not(.tile-arrow){font-size:12px;color:var(--muted);line-height:1.45}.tile-arrow{position:absolute;right:17px;top:21px;color:var(--muted)}.plain-hero{background:linear-gradient(115deg,var(--hero),var(--hero2));padding:35px 0 50px;color:#fff}.plain-hero h1{font-size:36px;letter-spacing:-1px}.legal-panel{max-width:850px;margin-top:-20px;position:relative;padding:34px;min-height:280px;line-height:1.9}.legal-panel p{max-width:680px}.legal-panel>a{display:inline-block;color:var(--purple);font-weight:750;margin-top:20px}.notice{padding:15px;border-radius:10px;background:var(--surface2);border:1px solid var(--border);color:var(--muted);font-size:13px}
.site-footer{background:var(--footer);color:#ddd5ef;padding:51px 0 0}.footer-grid{display:grid;grid-template-columns:2.3fr 1fr 1fr 1fr;gap:45px}.site-footer .brand{font-size:19px;color:#fff}.site-footer .brand-symbol{width:29px;height:29px;font-size:23px}.footer-grid>div>p{font-size:13px;max-width:280px;color:#b6aacc;line-height:1.8}.footer-grid h2{font-size:14px;color:#fff;margin:0 0 13px}.footer-grid>div>a:not(.brand){display:block;color:#bcb0d4;font-size:13px;margin-bottom:9px}.footer-grid>div>a:not(.brand):hover{color:#fff}.footer-bottom{margin-top:40px;padding:22px 0 25px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:15px;color:#9f94b4;font-size:12px}
@media(max-width:1050px){.content-grid{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.tools-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.side-card{padding:21px 13px}.brand{font-size:18px}.top-nav{gap:17px}}
@media(max-width:820px){.content-grid{display:block;margin-top:-48px}.side-column{display:none}.hero-spark{right:-5%;opacity:.045}.hero-inner{padding:46px 0 96px}.home-hero .hero-inner{padding:45px 0 90px}.inner-hero .hero-inner{padding:28px 0 85px}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:25px}.footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:680px){.container{width:min(100% - 30px,1152px)}.header-inner{min-height:64px}.brand{font-size:16px;gap:7px;letter-spacing:-.7px}.brand-symbol{width:32px;height:32px;font-size:23px;border-radius:9px}.mobile-toggle{display:inline-grid}.top-nav{display:none;position:absolute;left:15px;right:15px;top:64px;background:#281f49;border:1px solid #4b3870;padding:12px 16px;border-radius:0 0 13px 13px;box-shadow:0 16px 22px #0002;flex-direction:column;align-items:stretch;gap:0}.top-nav.nav-open{display:flex}.top-nav a{padding:11px 3px}.hero h1{font-size:34px;letter-spacing:-1.1px;margin:13px 0 12px}.hero-lead{font-size:14px}.hero-points{gap:9px 15px;font-size:11px;margin-top:17px}.home-hero .hero-inner{padding:35px 0 85px}.inner-hero .hero-inner{padding:21px 0 77px}.content-grid{margin-top:-47px}.calc-card{padding:22px 17px 18px;border-radius:16px}.calc-top h2{font-size:19px}.calc-tabs{margin:16px 0 17px}.calc-tab{font-size:12px;padding:10px}.calc-fields{gap:10px;margin-top:18px}.input-wrap input{height:53px;padding-left:12px;font-size:18px}.result-panel{padding:9px;gap:8px}.result-main{padding:6px}.result-main strong{font-size:35px}.result-work{padding:12px}.result-work #calc-steps{font-size:12px}.result-main p{font-size:12px}.calc-hint{font-size:11px}.tools-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tools-section{padding:39px 0 43px}.tool-tile{padding:14px;min-height:165px}.tool-tile strong{font-size:13px}.section-heading{display:block}.section-heading h2{font-size:23px}.section-heading p{margin:7px 0 0}.info-panel{padding:21px 17px;gap:12px}.info-icon{width:43px;height:43px;font-size:24px}.info-panel h2{font-size:19px}.explain-section,.examples-section,.faq-section{padding:22px 16px}.steps-list li p{font-size:13px}.formula-box p{font-size:14px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footer-grid>div:first-child{grid-column:1/3}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin:7px 0}.plain-hero h1{font-size:30px}.legal-panel{padding:22px}}
@media(max-width:370px){.brand{font-size:14px}.hero h1{font-size:30px}.hero-points span:last-child{display:none}.calc-fields{grid-template-columns:1fr}.result-panel{grid-template-columns:1fr}.tools-grid{grid-template-columns:1fr 1fr}.tool-tile{min-height:185px}.calc-free{padding:4px 7px;font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.side-column,.tools-section,.calc-tabs,.calculate-button,.reset-button,.result-actions,.theme-switch{display:none!important}.hero{background:#fff!important;color:#000!important}.hero-lead{color:#333!important}.content-grid{display:block;margin:0}.calc-card,.info-panel,.explain-section{box-shadow:none;border:1px solid #ccc}body{background:white;color:#000}}
.rate-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 14px;font-size:13px;color:var(--muted)}
.rate-chips button{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:999px;padding:5px 13px;font-weight:700;font-size:13px}
.rate-chips button:hover{border-color:var(--purple);color:var(--purple)}
.article-section{margin-top:24px;padding:30px;background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:19px}
.article-section h2{font-size:22px;letter-spacing:-.5px;line-height:1.3;margin:0 0 12px}
.article-section h3{font-size:17px;margin:20px 0 6px}
.article-section p,.article-section li{font-size:15px;line-height:1.7}
.article-section p{margin:0 0 12px}
.article-section ul,.article-section ol{padding-left:22px;margin:0 0 12px}
.article-section li{margin-bottom:6px}
.article-section a,.legal-panel a{color:var(--purple);font-weight:650}
.article-section .table-wrap{margin:8px 0 12px}
.legal-panel h2{font-size:20px;margin:26px 0 8px;line-height:1.3}
.legal-panel h2:first-child{margin-top:0}
.legal-panel p,.legal-panel li{line-height:1.75;font-size:15px}
.legal-panel ul{padding-left:22px}
.contact-form{display:grid;gap:14px;max-width:560px;margin-top:18px}
.contact-form label{display:grid;gap:6px;font-weight:700;font-size:14px}
.contact-form input,.contact-form textarea{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:10px;padding:11px 13px;font-size:15px}
.contact-form textarea{min-height:160px;resize:vertical}
.contact-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact-form button{justify-self:start;border:0;border-radius:12px;background:var(--purple);color:#fff;font-weight:750;padding:12px 22px}
.form-ok{padding:14px;border-radius:10px;background:var(--surface2);border:1px solid var(--success);color:var(--text)}
.form-err{padding:14px;border-radius:10px;background:var(--surface2);border:1px solid var(--error);color:var(--error)}
@media(max-width:700px){.article-section{padding:22px 16px}.article-section h2{font-size:19px}}
.article-section td:last-child{white-space:normal;color:inherit;font-weight:inherit}.article-section td:first-child{font-weight:700}
