/* AI Share of Voice Calculator */
.sov{width:100%;display:flex;flex-direction:column;gap:24px}
.sov-panel{background:#FFFFFF;border:1px solid #D8DCF0;border-radius:24px;padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:18px}
.sov-step{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.sov-step .num{font-family:'JetBrains Mono','Courier New',monospace;font-size:14px;letter-spacing:2px;color:#5B3FD9}
.sov-step h3{margin:0;font-size:clamp(22px,2.2vw,28px);color:#14142B}
.sov-help{margin:0;font-size:16px;line-height:1.6;color:#4A4966;max-width:820px}
.sov-help code{font-family:'JetBrains Mono','Courier New',monospace;font-size:.9em;background:#E9F0FC;padding:1px 6px;border-radius:6px}
.sov label,.sov-lbl{display:block;font-size:14px;font-weight:700;color:#14142B;margin-bottom:6px}
.sov input[type=text],.sov input[type=number],.sov textarea{box-sizing:border-box;width:100%;border:1px solid #A9AEC8;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:16px;color:#14142B;background:#FFFFFF}
.sov textarea{font-family:'JetBrains Mono','Courier New',monospace;font-size:14px;line-height:1.5;resize:vertical;min-height:140px}
.sov input:focus,.sov textarea:focus,.sov button:focus-visible,.sov summary:focus-visible{outline:3px solid #9BEADF;outline-offset:2px}
.sov-you{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px}
.sov-brand-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) 44px;gap:10px;align-items:center}
.sov-brand-list{display:flex;flex-direction:column;gap:10px}
.sov-x{width:44px;height:44px;border-radius:12px;border:1px solid #D8DCF0;background:#FFFFFF;color:#4A4966;font-size:22px;line-height:1;cursor:pointer}
.sov-x:hover{background:#F1ECFD;color:#14142B}
.sov-btn{font-family:inherit;font-size:15px;font-weight:700;border-radius:999px;padding:12px 20px;cursor:pointer;border:1px solid #14142B;background:#FFFFFF;color:#14142B}
.sov-btn:hover{background:#E2F6F2}
.sov-btn.primary{background:#7FDCCF;border-color:#7FDCCF}
.sov-btn.primary:hover{background:#9BEADF;border-color:#9BEADF}
.sov-btn:disabled{opacity:.45;cursor:not-allowed}
.sov-btn-row{display:flex;flex-wrap:wrap;gap:10px}
.sov-tabs{display:inline-flex;background:#E9F0FC;border-radius:999px;padding:4px;gap:4px;align-self:flex-start;flex-wrap:wrap}
.sov-tabs button{font-family:inherit;font-size:15px;font-weight:700;border:0;border-radius:999px;padding:10px 18px;background:transparent;color:#4A4966;cursor:pointer}
.sov-tabs button[aria-selected=true]{background:#14142B;color:#FFFFFF}
.sov-plats-in{display:flex;flex-direction:column;gap:10px}
.sov-plat{border:1px solid #D8DCF0;border-radius:16px;padding:0 16px;background:#FBFCFF}
.sov-plat summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;cursor:pointer;font-weight:700;color:#14142B;list-style:none}
.sov-plat summary::-webkit-details-marker{display:none}
.sov-plat summary::before{content:"+";font-family:'JetBrains Mono',monospace;color:#5B3FD9;margin-right:4px}
.sov-plat[open] summary::before{content:"–"}
.sov-plat-name{flex:1}
.sov-meta{font-family:'JetBrains Mono','Courier New',monospace;font-size:12px;letter-spacing:1px;color:#4A4966;font-weight:500}
.sov-plat textarea{margin-bottom:16px}
.sov-count-wrap{overflow-x:auto}
.sov-count-table{border-collapse:collapse;min-width:640px;width:100%}
.sov-count-table th,.sov-count-table td{padding:8px 6px;text-align:left;font-size:14px;color:#14142B}
.sov-count-table thead th{font-size:13px;color:#4A4966;font-weight:700}
.sov-count-table tbody th{font-weight:700;white-space:nowrap;padding-right:14px}
.sov-count-table input{padding:10px;text-align:center}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sov-empty{margin:0;font-size:17px;color:#4A4966}
.sov-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;align-items:flex-end}
.sov-kicker{font-family:'JetBrains Mono','Courier New',monospace;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#5B3FD9}
.sov-big{font-weight:800;font-size:clamp(64px,9vw,120px);line-height:1;background:linear-gradient(120deg,#3BB3A6,#5B7FD9 55%,#7B5BD9);-webkit-background-clip:text;background-clip:text;color:transparent}
.sov-sub{font-size:16px;color:#4A4966;margin-top:6px}
.sov-stats{display:flex;gap:14px;flex-wrap:wrap}
.sov-stats div{background:#F4F7FD;border-radius:16px;padding:14px 18px;display:flex;flex-direction:column;gap:2px;min-width:180px}
.sov-stats b{font-size:28px;color:#14142B}
.sov-stats span{font-size:13px;color:#4A4966;max-width:200px}
.sov-plats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px}
.sov-plat-card{border:1px solid #D8DCF0;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:8px}
.sov-plat-title{font-size:14px;font-weight:700;color:#4A4966}
.sov-plat-val{font-size:34px;font-weight:800;color:#14142B;line-height:1}
.sov-plat-sub{font-size:13px;color:#4A4966}
.sov-bar{display:block;height:10px;border-radius:999px;background:#ECEEF7;overflow:hidden;flex:1;min-width:60px}
.sov-fill{display:block;height:100%;border-radius:999px;background:#A9A8C8}
.sov-bar.you .sov-fill{background:linear-gradient(90deg,#7FDCCF,#A9CFF7 55%,#CDB9FF)}
.sov-board h3,.sov-insights h3{margin:0 0 12px;font-size:20px;color:#14142B}
.sov-board-row{display:grid;grid-template-columns:minmax(110px,220px) 1fr 56px;gap:14px;align-items:center;padding:7px 0}
.sov-board-name{font-size:15px;color:#14142B;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sov-board-row.is-you .sov-board-name{font-weight:700}
.sov-board-val{font-size:15px;font-weight:700;color:#14142B;text-align:right}
.sov-table-wrap{overflow-x:auto;border:1px solid #D8DCF0;border-radius:16px}
.sov-table{border-collapse:collapse;width:100%;min-width:560px}
.sov-table th,.sov-table td{padding:12px 14px;text-align:left;font-size:14px;color:#14142B;border-bottom:1px solid #ECEEF7;white-space:nowrap}
.sov-table thead th{background:#F4F7FD;font-size:13px;color:#4A4966}
.sov-table tr:last-child th,.sov-table tr:last-child td{border-bottom:0}
.sov-table tr.is-you{background:#EEFAF7}
.sov-table tr.is-you th{font-weight:800}
.sov-insights{background:#F4F7FD;border-radius:16px;padding:18px 22px}
.sov-insights ul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:8px}
.sov-insights li{font-size:16px;line-height:1.55;color:#34334F}
.sov-note{margin:0;font-size:14px;color:#4A4966}
.sov-formula{font-family:'JetBrains Mono','Courier New',monospace;font-size:clamp(14px,1.6vw,17px);background:#FFFFFF;border:1px solid #D8DCF0;border-radius:16px;padding:18px 22px;color:#14142B;max-width:760px;line-height:1.6}
@media (max-width:640px){
  .sov-brand-row{grid-template-columns:1fr 44px}
  .sov-brand-row input:nth-child(1){grid-column:1;grid-row:1}
  .sov-brand-row input:nth-child(2){grid-column:1/-1;grid-row:2}
  .sov-brand-row .sov-x{grid-column:2;grid-row:1}
  .sov-brand-row{padding-bottom:8px}
  .sov-board-row{grid-template-columns:minmax(80px,120px) 1fr 48px;gap:10px}
}
.sov-countby{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.sov-countby .sov-lbl{margin:0}
.sov-radio{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:10px}
.sov-radio button{font-family:inherit;text-align:left;border:1px solid #D8DCF0;border-radius:16px;background:#FFFFFF;padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;color:#14142B}
.sov-radio button b{font-size:16px}
.sov-radio button span{font-size:14px;line-height:1.45;color:#4A4966}
.sov-radio button[aria-checked=true]{border:2px solid #3BB3A6;background:#EEFAF7;padding:13px 15px}
.sov-radio button:focus-visible{outline:3px solid #9BEADF;outline-offset:2px}
.sov-brand-row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr) 44px}
.sov-lbl-hint{font-weight:500;color:#4A4966;font-size:13px;margin-left:6px}
.sov-lbl-gap{margin-top:18px}
.sov-small{font-size:14px;margin-top:6px}
.sov-board-note{margin:-6px 0 10px;font-size:14px;color:#4A4966}
#sov-you-pages{min-height:90px}
@media (max-width:640px){
  .sov-brand-row{grid-template-columns:1fr 44px}
  .sov-brand-row input:nth-child(1){grid-column:1;grid-row:1}
  .sov-brand-row input:nth-child(2){grid-column:1/-1;grid-row:2}
  .sov-brand-row input:nth-child(3){grid-column:1/-1;grid-row:3}
  .sov-brand-row .sov-x{grid-column:2;grid-row:1}
}
#sov-results{display:flex;flex-direction:column;gap:24px}
#sov-results .sov-board + .sov-table-wrap{margin-top:-10px}
.sov-howto{border:1px solid #D8DCF0;border-radius:16px;background:#F4F7FD;padding:0 18px}
.sov-howto summary{cursor:pointer;padding:14px 0;font-weight:700;color:#5B3FD9;list-style:none}
.sov-howto summary::-webkit-details-marker{display:none}
.sov-howto summary::before{content:"+ ";font-family:'JetBrains Mono',monospace}
.sov-howto[open] summary::before{content:"– "}
.sov-howto ol{margin:0 0 12px;padding-left:1.3em;display:flex;flex-direction:column;gap:10px;font-size:16px;line-height:1.55;color:#34334F}
.sov-howto .sov-help{margin-bottom:16px}
.sov-plat-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:-6px 0 16px}
.sov-add-answer{font-family:inherit;font-size:14px;font-weight:700;border:1px dashed #5B3FD9;color:#5B3FD9;background:#FFFFFF;border-radius:999px;padding:8px 16px;cursor:pointer}
.sov-add-answer:hover{background:#F1ECFD}
.sov-add-answer:focus-visible{outline:3px solid #9BEADF;outline-offset:2px}
.sov-plat-tip{font-size:13px;color:#4A4966}
.sov-howto ol.sov-howto-sub{list-style:lower-alpha;margin:8px 0;gap:6px;font-size:15px}
.sov-howto code{font-family:'JetBrains Mono',monospace;font-size:.88em;background:#FFFFFF;padding:1px 6px;border-radius:6px}
.sov [hidden]{display:none!important}
.sov-view{display:flex;flex-direction:column;gap:24px}
.sov-viewbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;background:#F4F7FD;border:1px solid #D8DCF0;border-radius:20px;padding:14px 18px}
.sov-viewbar .sov-help{flex:1 1 280px;font-size:15px}
.sov-q-fields{display:flex;flex-direction:column;gap:14px}
.sov-q-plat{max-width:360px}
.sov select{box-sizing:border-box;width:100%;border:1px solid #A9AEC8;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:16px;color:#14142B;background:#FFFFFF}
.sov select:focus{outline:3px solid #9BEADF;outline-offset:2px}
.sov-q-lblrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
#sov-q-answer{min-height:180px}
#sov-quick .sov-plat-actions{margin:0}
.sov-sentence{margin:0;font-size:clamp(18px,1.8vw,21px);line-height:1.55;color:#14142B;max-width:760px}
.sov-nudge{margin:0;font-size:16px;line-height:1.55;color:#34334F}
.sov-tip-host{position:relative}
.sov-q-lblrow-start{justify-content:flex-start;align-items:center;gap:8px;margin-bottom:6px}
.sov-q-lblrow-start label{margin:0}
.sov-tip{display:inline-block;vertical-align:middle;margin-left:8px}
.sov-tip-btn{width:24px;height:24px;border-radius:50%;border:1px solid #5B3FD9;background:#FFFFFF;color:#5B3FD9;font-family:inherit;font-size:13px;font-weight:700;line-height:1;cursor:help;padding:0}
.sov-tip-btn:hover,.sov-tip-btn:focus-visible{background:#F1ECFD}
.sov-tip-text{display:none;position:absolute;left:0;right:0;top:100%;z-index:5;max-width:420px;margin-top:6px;background:#14142B;color:#FFFFFF;font-size:14px;font-weight:500;line-height:1.5;padding:12px 14px;border-radius:12px;box-shadow:0 8px 24px rgba(20,20,43,.18);text-align:left;white-space:normal}
.sov-tip:hover .sov-tip-text,.sov-tip:focus-within .sov-tip-text{display:block}
.sov-warn{background:#FFF7E0;border:1px solid #F2D27A;border-radius:12px;padding:10px 14px;color:#5A4500}
.sov-paste-note{margin:-8px 0 12px;font-size:13px;color:#2F6F64;background:#EEFAF7;border-radius:10px;padding:8px 12px}
.sov-gem-tip{margin:-8px 0 16px;font-size:13px}
