/* MAXXINFRA engineering tools — shared styles (loaded after site.css) */
.tool-wrap{max-width:1040px;margin:0 auto}
.tool-section{background:#fff;padding:3rem 0}
.tool-section.alt{background:#FAFBFC;border-top:1px solid #E4E7EB;border-bottom:1px solid #E4E7EB}
.tool-card{background:#fff;border:1px solid #E4E7EB;border-radius:12px;padding:1.75rem;box-shadow:0 10px 36px rgba(27,43,122,.06)}
.tool-card+.tool-card{margin-top:1.5rem}
.tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem 1.25rem}
.tool-grid.two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.tool-field label{display:block;font-size:.78rem;font-weight:700;color:#374151;margin-bottom:.35rem;letter-spacing:.02em}
.tool-field input,.tool-field select,.tool-field textarea{width:100%;font-family:inherit;font-size:.95rem;padding:.65rem .8rem;border:1px solid #D1D5DB;border-radius:6px;background:#fff;color:#111827;outline:none;box-sizing:border-box}
.tool-field input:focus,.tool-field select:focus,.tool-field textarea:focus{border-color:#1B2B7A;box-shadow:0 0 0 3px rgba(27,43,122,.1)}
.tool-field .hint{font-size:.72rem;color:#697482;margin:.3rem 0 0;line-height:1.4}
.tool-field.check{display:flex;align-items:flex-start;gap:.6rem}
.tool-field.check input{width:auto;margin-top:.2rem}
.tool-field.check label{margin:0;font-weight:500;color:#374151}
.tool-btn{background:#D42B2B;color:#fff;border:none;font-weight:700;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;padding:.9rem 1.6rem;border-radius:6px;cursor:pointer;transition:background .2s;font-family:inherit;display:inline-flex;align-items:center;gap:.5rem}
.tool-btn:hover{background:#B82222}
.tool-btn.navy{background:#1B2B7A}.tool-btn.navy:hover{background:#15226A}
.tool-btn.ghost{background:transparent;color:#1B2B7A;border:1px solid #1B2B7A}.tool-btn.ghost:hover{background:#F0F3FA}
.tool-btn[disabled]{opacity:.6;cursor:wait}
.tool-btn .material-symbols-outlined{font-size:20px}
.tool-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem;margin-top:1.5rem}
.tool-tile{background:#F7F9FB;border:1px solid #E4E7EB;border-radius:10px;padding:1rem 1.1rem}
.tool-tile .k{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#697482;margin:0 0 .35rem}
.tool-tile .v{font-size:1.6rem;font-weight:800;color:#1B2B7A;line-height:1.1;margin:0}
.tool-tile .v small{font-size:.85rem;font-weight:600;color:#697482}
.tool-tile .s{font-size:.75rem;color:#4B5563;margin:.4rem 0 0;line-height:1.45}
.tool-tile.accent .v{color:#D42B2B}
.tool-note{font-size:.78rem;color:#697482;line-height:1.55;margin:1rem 0 0}
.tool-note strong{color:#1B2B7A}
.tool-alert{display:none;margin-top:1rem;padding:.8rem 1rem;border-radius:8px;font-size:.9rem;line-height:1.5}
.tool-alert.ok{display:block;background:#ECFDF5;border:1px solid #A7F3D0;color:#065F46}
.tool-alert.err{display:block;background:#FEF2F2;border:1px solid #FECACA;color:#991B1B}
.tool-alert a{color:inherit;font-weight:700}
.tool-prose{max-width:800px}
.tool-prose h2{font-size:1.5rem;font-weight:800;color:#1B2B7A;margin:2.25rem 0 .9rem}
.tool-prose h3{font-size:1.15rem;font-weight:700;color:#1B2B7A;margin:1.75rem 0 .6rem}
.tool-prose p,.tool-prose li{font-size:1rem;color:#4B5563;line-height:1.8;margin-bottom:1rem}
.tool-prose ul,.tool-prose ol{padding-left:1.4rem;margin-bottom:1.25rem}.tool-prose li{margin-bottom:.35rem}
.tool-prose a{color:#1B2B7A;text-decoration:underline}
.tool-prose table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.9rem}
.tool-prose th{background:#1B2B7A;color:#fff;padding:.6rem .8rem;text-align:left;font-weight:700}
.tool-prose td{padding:.55rem .8rem;border-bottom:1px solid #E4E7EB;color:#374151;vertical-align:top}
.tool-prose tr:nth-child(even) td{background:#FAFBFC}
.tool-faq details{border-top:1px solid #E4E7EB;padding:.9rem 0}
.tool-faq details:last-child{border-bottom:1px solid #E4E7EB}
.tool-faq summary{cursor:pointer;font-weight:700;color:#1B2B7A;font-size:1rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.tool-faq summary::after{content:"+";color:#D42B2B;font-weight:800}
.tool-faq details[open] summary::after{content:"–"}
.tool-faq p{margin:.75rem 0 0;color:#4B5563;line-height:1.75;font-size:.95rem}
.tool-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}
.tool-list a.card{display:block;background:#fff;border:1px solid #E4E7EB;border-radius:12px;padding:1.5rem;text-decoration:none;color:inherit;transition:transform .18s,box-shadow .18s}
.tool-list a.card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(27,43,122,.1)}
.tool-list .ic{width:46px;height:46px;border-radius:10px;background:#F0F3FA;color:#1B2B7A;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.tool-list .ic .material-symbols-outlined{font-size:26px}
.tool-list h3{font-size:1.1rem;font-weight:800;color:#1B2B7A;margin:0 0 .45rem}
.tool-list p{font-size:.9rem;color:#4B5563;line-height:1.6;margin:0 0 .8rem}
.tool-list .tag{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#D42B2B}
.tool-table{width:100%;border-collapse:collapse;font-size:.88rem}
.tool-table th{background:#1B2B7A;color:#fff;padding:.6rem .7rem;text-align:left;font-weight:700;white-space:nowrap}
.tool-table td{padding:.55rem .7rem;border-bottom:1px solid #E4E7EB;color:#374151}
.tool-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tool-table tr:nth-child(even) td{background:#FAFBFC}
.tool-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tool-check{list-style:none;padding:0;margin:0}
.tool-check li{display:flex;align-items:flex-start;gap:.75rem;padding:.65rem 0;border-bottom:1px solid #EEF0F3}
.tool-check li:last-child{border-bottom:none}
.tool-check input{margin-top:.25rem;width:18px;height:18px;flex-shrink:0;accent-color:#D42B2B}
.tool-check label{font-size:.95rem;color:#374151;line-height:1.55;cursor:pointer}
.tool-check label small{display:block;color:#697482;font-size:.78rem;margin-top:.15rem}
.tool-check li.done label{color:#9AA0A6;text-decoration:line-through}
.tool-progress{height:8px;background:#E4E7EB;border-radius:999px;overflow:hidden;margin:.5rem 0 1.5rem}
.tool-progress span{display:block;height:100%;background:#D42B2B;width:0;transition:width .25s}
.tool-cmp{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0;border:1px solid #E4E7EB;border-radius:10px;overflow:hidden;font-size:.9rem}
.tool-cmp>div{padding:.7rem .9rem;border-bottom:1px solid #E4E7EB}
.tool-cmp .h{background:#1B2B7A;color:#fff;font-weight:700;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.tool-cmp .k{font-weight:700;color:#1B2B7A;background:#FAFBFC}
.tool-cmp .peb{background:#FFF5F5}
.tool-cmp .v{font-weight:800;color:#1B2B7A;font-size:1.05rem}
.tool-cmp .peb .v{color:#D42B2B}
.tool-cmp .s{display:block;font-size:.74rem;color:#697482;font-weight:500;margin-top:.15rem}
.tool-bar{display:flex;align-items:center;gap:.6rem;margin:.35rem 0}
.tool-bar i{display:block;height:10px;border-radius:4px;background:#1B2B7A;flex:none}
.tool-bar i.peb{background:#D42B2B}
.tool-bar b{font-size:.78rem;color:#374151;font-weight:600;min-width:120px}
@media(max-width:720px){.tool-card{padding:1.25rem}.tool-cmp{grid-template-columns:1fr 1fr;font-size:.84rem}.tool-cmp>.k{grid-column:1/-1;border-bottom:none;padding-bottom:.25rem}.tool-cmp .h.k{display:none}.tool-tile .v{font-size:1.35rem}}
.tool-printfoot{display:none}
@media print{@page{size:A4;margin:12mm}body>header,footer,.tool-noprint,#mx-announcement,.mx-lead-gate,#mx-whatsapp-btn,.mobile-cta-bar,#mx-newsletter-bar{display:none!important}main{padding-top:0!important}main>header{display:block!important;padding:1.5rem 0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}main>header h1{font-size:1.8rem!important}main>header nav{display:none}.tool-section{padding:1rem 0}.tool-card{box-shadow:none;border:none;padding:0}.tool-card+.tool-card{margin-top:1rem}.tool-check li{break-inside:avoid;padding:.4rem 0}.tool-scroll{overflow:visible}.tool-table{font-size:.72rem}.tool-table th,.tool-table td{padding:.35rem .45rem}.tool-prose{max-width:none}.tool-faq details{break-inside:avoid}.tool-faq details:not([open]) p{display:block}.tool-tiles{grid-template-columns:repeat(3,1fr)}.tool-printfoot{display:block;font-size:.7rem;color:#697482;margin:1.5rem 0 0}body{background:#fff}}
