.tool-hero{padding: 20px 0 40px;max-width: 760px}.crumbs{font-size: 14px;color: rgba(255,255,255,.7);margin-bottom: 14px}.crumbs a{color: rgba(255,255,255,.85);text-decoration: none}.crumbs a:hover{color: #fff;text-decoration: underline}.crumbs span{margin: 0 6px;opacity: .5}.tool-hero h1{margin: 0 0 10px;font-family: var(--font-display);font-weight: 700;font-size: clamp(28px,4vw,42px);line-height: 1.1;letter-spacing: -.02em;text-wrap: balance}.lede{margin: 0;font-size: 17px;color: rgba(255,255,255,.8);max-width: 60ch}.tool-main{max-width: 1000px;margin: 0 auto;padding: 32px 24px 64px}.panel{background: var(--surface);border: 1px solid var(--border);border-radius: 18px;box-shadow: var(--shadow);padding: 28px}.panel + .panel{margin-top: 20px}.panel-title{margin: 0 0 16px;font-family: var(--font-display);font-size: 20px}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 8px;min-height: 44px;padding: 10px 18px;border-radius: 10px;border: 1px solid transparent;font: inherit;font-weight: 600;font-size: 15px;cursor: pointer;text-decoration: none;transition: background-color .15s,border-color .15s,color .15s,transform .1s}.btn:active{transform: translateY(1px)}.btn svg{width: 18px;height: 18px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-linejoin: round}.btn-primary{background: var(--accent);color: #fff}.btn-primary:hover{background: #3c26ad}.btn-ghost{background: var(--surface);color: var(--text);border-color: var(--border)}.btn-ghost:hover{border-color: #c9c4df;background: #faf9fd}.btn[disabled]{opacity: .45;cursor: not-allowed}.chips{display: flex;flex-wrap: wrap;gap: 8px}.chip{min-height: 40px;padding: 8px 14px;border-radius: 999px;cursor: pointer;border: 1px solid var(--border);background: var(--surface);color: var(--text);font: inherit;font-size: 15px;font-weight: 500;transition: border-color .15s,background-color .15s,color .15s}.chip:hover{border-color: #c9c4df}.chip[aria-pressed="true"]{background: var(--accent);border-color: var(--accent);color: #fff}.byline{font-size: 14px;color: var(--text-muted);margin: 0 0 8px}.answer{margin: 0 0 8px;padding: 18px 20px;border-radius: 14px;background: var(--accent-soft);border-left: 4px solid var(--accent);color: var(--text)}.answer h2{margin-top: 0 !important;font-size: 20px !important}.answer p{margin: 0;color: var(--text) !important}.content table{width: 100%;border-collapse: collapse;font-size: 15px;margin: 8px 0 0}.content th,.content td{text-align: left;padding: 10px 12px;border-bottom: 1px solid var(--border);vertical-align: top}.content td:first-child{white-space: nowrap;font-weight: 600}.content th{font-size: 13px;color: var(--text-muted);font-weight: 600}.content{max-width: 720px;margin: 48px auto 0}.content h2{font-family: var(--font-display);font-size: 24px;margin: 36px 0 10px;letter-spacing: -.01em}.content p,.content li{color: #3b3852}.content ul,.content ol{padding-left: 20px}.faq details{border-bottom: 1px solid var(--border);padding: 14px 0}.faq summary{cursor: pointer;font-weight: 600;list-style: none;display: flex;justify-content: space-between;gap: 16px}.faq summary::-webkit-details-marker{display: none}.faq summary::after{content: "+";font-family: var(--font-mono);color: var(--accent)}.faq details[open] summary::after{content: "−"}.faq details p{margin: 10px 0 0}.related{margin-top: 48px}.related h2{font-family: var(--font-display);font-size: 20px;margin: 0 0 14px}.related-list{list-style: none;padding: 0;margin: 0;display: grid;grid-template-columns: repeat(auto-fill,minmax(220px,1fr));gap: 12px}.related-list a{display: block;padding: 14px 16px;border-radius: 12px;background: var(--surface);border: 1px solid var(--border);text-decoration: none;font-weight: 600;transition: border-color .15s,transform .15s}.related-list a:hover{border-color: var(--accent);transform: translateY(-2px)}.related-list small{display: block;font-weight: 400;color: var(--text-muted);font-size: 13px}.fs-stage{position: fixed;inset: 0;z-index: 1000;display: none;cursor: none;touch-action: manipulation}.fs-stage.on{display: block}.fs-stage.show-cursor{cursor: default}.fs-hint{position: absolute;left: 50%;bottom: 28px;transform: translateX(-50%);padding: 10px 16px;border-radius: 999px;font-size: 14px;background: rgba(13,10,36,.78);color: #fff;white-space: nowrap;transition: opacity .4s;pointer-events: none}.fs-hint.hide{opacity: 0}.toast{position: fixed;left: 50%;bottom: 24px;transform: translate(-50%,20px);background: var(--text);color: #fff;padding: 10px 16px;border-radius: 10px;font-size: 14px;opacity: 0;transition: opacity .2s,transform .2s;pointer-events: none;z-index: 1100}.toast.show{opacity: 1;transform: translate(-50%,0)}@media (max-width: 640px){.tool-main{padding: 20px 16px 48px}.panel{padding: 20px 16px;border-radius: 14px}.tool-hero{padding: 8px 0 28px}.lede{font-size: 16px}}.dd{position: relative;display: grid;gap: 6px}.dd-label{font-size: 12px;font-weight: 600;text-transform: uppercase;letter-spacing: .06em;color: var(--text-muted);transition: color .2s}.dd-trigger{display: flex;align-items: center;justify-content: space-between;gap: 8px;width: 100%;min-height: 46px;padding: 10px 12px 10px 14px;border-radius: 12px;cursor: pointer;border: 1px solid var(--border);background: var(--surface);color: var(--text);font: inherit;font-size: 15px;text-align: left;box-shadow: 0 1px 2px rgba(23,20,43,.04);transition: border-color .2s,box-shadow .2s,background-color .2s}.dd-trigger:hover{border-color: #c9c3e6}.dd-trigger:focus-visible{outline: none;border-color: var(--accent);box-shadow: 0 0 0 3px rgba(109,85,255,.28)}.dd-value{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;color: var(--text-muted)}.dd.active .dd-value{color: var(--text);font-weight: 600}.dd.active .dd-label{color: var(--accent)}.dd.active .dd-trigger{border-color: var(--accent);background: linear-gradient(0deg,rgba(236,232,255,.55),rgba(236,232,255,.55)),var(--surface)}.dd-chevron{flex: none;width: 18px;height: 18px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-linejoin: round;color: var(--text-muted);transition: transform .25s cubic-bezier(.2,.8,.2,1)}.dd.open .dd-chevron{transform: rotate(180deg);color: var(--accent)}.dd.open .dd-trigger{border-color: var(--accent);box-shadow: 0 0 0 3px rgba(109,85,255,.18)}.dd-list{position: absolute;top: calc(100% + 6px);left: 0;z-index: 30;min-width: 100%;width: max-content;max-width: min(320px,calc(100vw - 32px));max-height: 320px;overflow: auto;margin: 0;padding: 6px;list-style: none;background: var(--surface);border: 1px solid var(--border);border-radius: 14px;box-shadow: 0 2px 6px rgba(23,20,43,.06),0 18px 40px -12px rgba(43,28,120,.30);opacity: 0;visibility: hidden;transform: translateY(-6px) scale(.97);transform-origin: top left;transition: opacity .12s ease-in,transform .12s ease-in,visibility 0s linear .12s}.dd-list.align-right{left: auto;right: 0;transform-origin: top right}.dd.open .dd-list{opacity: 1;visibility: visible;transform: none;transition: opacity .18s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s}.dd-option{display: grid;grid-template-columns: 22px 1fr auto 18px;align-items: center;gap: 10px;min-height: 44px;padding: 8px 10px;border-radius: 10px;cursor: pointer;font-size: 14px;transition: background-color .12s}.dd.open .dd-option{animation: dd-in .22s cubic-bezier(.2,.8,.2,1) both;animation-delay: calc(var(--i) * 25ms)}@keyframes dd-in{from{opacity: 0;transform: translateY(-4px)}}.dd-option.active{background: var(--accent-soft)}.dd-option[aria-selected="true"] .dd-name{font-weight: 600;color: var(--accent)}.shape{justify-self: center;display: block;border: 1.5px solid currentColor;border-radius: 3px;color: #8b84b3}.dd-option.active .shape,.dd-option[aria-selected="true"] .shape{color: var(--accent);background: rgba(109,85,255,.12)}.dd-name{white-space: nowrap}.dd-meta{display: grid;justify-items: end;font-family: var(--font-mono);font-size: 12px;color: var(--text);line-height: 1.2}.dd-meta small{font-size: 10.5px;color: var(--text-muted)}.dd-check{width: 16px;height: 16px;fill: none;stroke: var(--accent);stroke-width: 2.4;stroke-linecap: round;stroke-linejoin: round;opacity: 0;transform: scale(.6);transition: opacity .15s,transform .2s cubic-bezier(.2,.8,.2,1)}.dd-option[aria-selected="true"] .dd-check{opacity: 1;transform: none}@media (prefers-reduced-motion: reduce){.dd-list,.dd.open .dd-list,.dd-chevron,.dd-check{transition: none;transform: none}.dd.open .dd-option{animation: none}}.dd-group{padding: 10px 10px 4px;font-size: 11px;font-weight: 700;text-transform: uppercase;letter-spacing: .07em;color: var(--text-muted)}.dd-group:first-child{padding-top: 4px}.dd-wide .dd-list{width: 100%;max-width: none;max-height: min(420px,60vh)}.dd-wide .dd-name{white-space: normal}