/* base tools */
.cit-tool{border:1px solid #e6dced;background:#fff;margin:24px 0;font-size:15px;line-height:1.5;color:#1d1526}
.cit-tool *{box-sizing:border-box}
.cit-tool-head{background:#3d2152;color:#fff;padding:14px 18px}
.cit-tool-head strong{display:block;font-size:18px}
.cit-tool-head span{font-size:13px;opacity:.85}
.cit-tool-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px}
.cit-tool-body label{display:flex;flex-direction:column;font-weight:600;font-size:13px;gap:6px}
.cit-tool-body select,.cit-tool-body input{padding:9px 10px;border:1px solid #d6cadd;font-size:14px;font-weight:400;background:#fff;color:#1d1526}
.cit-tool-body select:focus,.cit-tool-body input:focus{outline:2px solid #9b59b6}
.cit-tool-out{padding:0 18px}
.cit-res{display:flex;align-items:baseline;gap:12px;background:#f5eef9;border-left:4px solid #9b59b6;padding:14px 16px;margin:0 0 12px}
.cit-res-big{font-size:32px;font-weight:800;color:#7d3b98;line-height:1}
.cit-res-list{margin:0 0 14px;padding-left:18px}.cit-res-list li{margin:3px 0}
.cit-tool-note{font-size:12px;color:#6b6473;padding:0 18px 16px;margin:0}
/* bar chart */
.cit-bars{border:1px solid #e6dced;background:#fff;padding:16px 18px;margin:24px 0;font-size:14px;color:#1d1526}
.cit-bars-title{font-weight:700;font-size:15px;margin-bottom:12px;color:#3d2152}
.cit-bar-row{display:grid;grid-template-columns:160px 1fr 64px;align-items:center;gap:10px;margin:7px 0}
.cit-bar-label{font-weight:600}
.cit-bar-track{background:#f0e9f4;height:18px;position:relative}
.cit-bar-fill{position:absolute;left:0;top:0;bottom:0;background:#9b59b6}
.cit-bar-val{text-align:right;font-weight:700;color:#3d2152}
/* callout */
.cit-callout{border-left:4px solid #9b59b6;background:#f5eef9;padding:14px 16px;margin:22px 0}
.cit-callout strong:first-child{display:block;text-transform:uppercase;letter-spacing:.04em;font-size:12px;color:#7d3b98;margin-bottom:5px}
/* answer / define box */
.cit-answer{background:#f5eef9;border:1px solid #e3d3ee;border-left:5px solid #9b59b6;padding:16px 20px;margin:22px 0;font-size:16px}
.cit-answer .cit-label{display:block;text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700;color:#7d3b98;margin-bottom:6px}
.cit-answer strong{color:#3d2152}
/* key takeaways (dark) */
.cit-takeaways{background:#2e1a37;color:#efe6f4;padding:22px 26px;margin:28px 0;border-top:4px solid #9b59b6}
.cit-takeaways .cit-tk-h{color:#c98fe0;margin:0 0 12px;display:block;font-size:18px;font-weight:700}
.cit-takeaways ul{list-style:none;margin:0;padding:0}
.cit-takeaways li{padding:6px 0 6px 26px;position:relative}
.cit-takeaways li:before{content:'\2713';position:absolute;left:0;color:#c98fe0;font-weight:700}
/* cards grid */
.cit-cards{display:flex;flex-wrap:wrap;gap:16px;margin:24px 0}
.cit-card{flex:1 1 200px;background:#fff;border:1px solid #e6dced;border-top:4px solid #9b59b6;padding:18px}
.cit-card .cit-num{display:inline-block;width:32px;height:32px;line-height:32px;text-align:center;background:#9b59b6;color:#fff;font-weight:700;margin-bottom:10px}
.cit-card h4{margin:0 0 7px;font-size:17px;color:#3d2152}.cit-card .cit-cd{margin:0;font-size:14px}
/* numbered steps */
.cit-steps{counter-reset:cit;list-style:none;margin:24px 0;padding:0}
.cit-steps li{position:relative;padding:2px 0 18px 24px;border-left:2px solid #e3d3ee;margin-left:16px}
.cit-steps li:before{counter-increment:cit;content:counter(cit);position:absolute;left:-17px;top:0;width:32px;height:32px;line-height:32px;text-align:center;background:#9b59b6;color:#fff;font-weight:700}
.cit-steps li:last-child{border-left-color:transparent}.cit-steps b{color:#3d2152}
/* stat highlights */
.cit-stats{display:flex;flex-wrap:wrap;gap:16px;margin:24px 0}
.cit-stat{flex:1 1 150px;background:#f5eef9;border-left:4px solid #9b59b6;padding:14px 16px}
.cit-statnum{font-size:26px;font-weight:800;color:#7d3b98;line-height:1}
.cit-statlbl{font-size:13px;color:#5b5266;margin-top:4px}
/* FAQ accordion (native details/summary) */
.cit-faq{border:1px solid #e6dced;margin:10px 0;background:#fff}
.cit-faq summary{cursor:pointer;padding:13px 40px 13px 16px;font-weight:700;color:#3d2152;list-style:none;position:relative}
.cit-faq summary::-webkit-details-marker{display:none}
.cit-faq summary:after{content:'+';position:absolute;right:16px;color:#9b59b6;font-weight:800}
.cit-faq[open] summary:after{content:'\2212'}
.cit-faq .cit-faq-a{padding:0 16px 14px;margin:0}
@media(max-width:600px){.cit-tool-body{grid-template-columns:1fr}.cit-bar-row{grid-template-columns:104px 1fr 50px;font-size:13px}.cit-res-big{font-size:28px}}
.cit-cards #inline-related-post,.cit-card #inline-related-post{display:none}


/* cit-tool control polish (checkboxes, ranges, buttons, copy) */
.cit-tool-body label:has(input[type="checkbox"]),.cit-tool-body label:has(input[type="radio"]){flex-direction:row;align-items:center;gap:8px;font-weight:500;cursor:pointer}
.cit-tool-body input[type="checkbox"],.cit-tool-body input[type="radio"]{width:18px;height:18px;accent-color:#9b59b6;flex:none;padding:0;margin:0}
.cit-tool-body input[type="range"]{-webkit-appearance:none;appearance:none;width:100%;height:8px;background:#e6dced;border:0;padding:0;margin:10px 0;cursor:pointer}
.cit-tool-body input[type="range"]::-webkit-slider-runnable-track{height:8px;background:#e6dced}
.cit-tool-body input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin-top:-6px;background:#9b59b6;border:0;cursor:pointer}
.cit-tool-body input[type="range"]::-moz-range-track{height:8px;background:#e6dced;border:0}
.cit-tool-body input[type="range"]::-moz-range-thumb{width:20px;height:20px;background:#9b59b6;border:0;border-radius:0;cursor:pointer}
.cit-tool-body .cit-fullrow{grid-column:1/-1}
.cit-tool-body .cit-opts{display:flex;flex-wrap:wrap;gap:10px 20px}
.cit-tool-body button,.cit-tool-body .cit-btn{grid-column:1/-1;justify-self:start;background:#9b59b6;color:#fff;border:0;padding:11px 20px;font-size:14px;font-weight:700;cursor:pointer}
.cit-tool-body button:hover,.cit-tool-body .cit-btn:hover{background:#7d3b98}
.cit-copy{margin-left:10px;background:#9b59b6;color:#fff;border:0;padding:3px 12px;font-size:12px;font-weight:700;cursor:pointer;vertical-align:middle}
.cit-copy:hover{background:#7d3b98}
