.cap-tool{--cap-bg: #f6faf9;--cap-surface: #ffffff;--cap-line: #d8e6e3;--cap-line-soft: #e8f0ee;--cap-ink: #0a2424;--cap-ink-muted: #4a5e5e;--cap-brand: #0d4f4f;--cap-brand-light: #1a7a7a;--cap-radius-sm: 6px;--cap-radius-md: 10px;--cap-radius-lg: 16px;--cap-ease: cubic-bezier(.16, 1, .3, 1);font-family:DM Sans,system-ui,-apple-system,sans-serif;color:var(--cap-ink);background:var(--cap-bg);border:1px solid var(--cap-line);border-radius:var(--cap-radius-lg);padding:20px;box-shadow:0 1px 3px #0d4f4f0f,0 4px 12px #0d4f4f0a;animation:cap-enter .2s var(--cap-ease) both}@keyframes cap-enter{0%{opacity:0}to{opacity:1}}.cap-tool .tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.cap-grid{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:880px){.cap-grid{grid-template-columns:minmax(0,1fr) minmax(0,392px);gap:24px}.cap-tool{padding:28px}.cap-result{position:sticky;top:88px;align-self:start}}.cap-fieldset{border:0;padding:0;margin:0 0 16px;min-width:0}.cap-legend{font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cap-ink-muted);margin-bottom:8px;padding:0;display:flex;align-items:baseline;gap:8px}.cap-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.cap-fieldset-half{margin-bottom:0}@media(max-width:520px){.cap-row{grid-template-columns:1fr}.cap-fieldset-half{margin-bottom:12px}}.cap-formats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cap-format{cursor:pointer}.cap-format input{position:absolute;opacity:0;pointer-events:none}.cap-format-body{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:92px;padding:12px;background:var(--cap-surface);border:1px solid var(--cap-line);border-radius:var(--cap-radius-md);transition:border-color .15s var(--cap-ease),background-color .15s var(--cap-ease),transform .2s var(--cap-ease),box-shadow .2s var(--cap-ease)}.cap-format-ico{width:40px;height:30px;fill:none;stroke:var(--cap-ink-muted);stroke-width:1.5;stroke-linecap:round;opacity:.7;margin-bottom:2px}.cap-format-body b{font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:14px;font-weight:700;letter-spacing:-.01em;color:var(--cap-ink)}.cap-format-body i{font-style:normal;font-size:11.5px;line-height:1.35;color:var(--cap-ink-muted)}@media(hover:hover){.cap-format:hover .cap-format-body{transform:translateY(-2px);box-shadow:0 6px 16px #0d4f4f14}}.cap-format input:checked+.cap-format-body{border-color:var(--cap-brand);background:#0d4f4f0d;box-shadow:inset 0 0 0 1px var(--cap-brand)}.cap-format input:checked+.cap-format-body .cap-format-ico{stroke:var(--cap-brand);opacity:1}.cap-format input:focus-visible+.cap-format-body{outline:2px solid var(--cap-brand-light);outline-offset:2px}.cap-segmented{display:flex;flex-wrap:wrap;gap:6px}.cap-segmented-stack{flex-direction:column}.cap-segmented label{flex:1 1 auto;min-width:0;cursor:pointer}.cap-segmented input{position:absolute;opacity:0;pointer-events:none}.cap-segmented span{display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px;padding:8px 10px;background:var(--cap-surface);border:1px solid var(--cap-line);border-radius:var(--cap-radius-sm);font-size:13px;font-weight:500;color:var(--cap-ink);text-align:center;line-height:1.25;transition:border-color .15s var(--cap-ease),background-color .15s var(--cap-ease),color .15s var(--cap-ease)}.cap-segmented em{font-style:normal;font-size:11px;color:var(--cap-ink-muted)}.cap-segmented input:checked+span{background:var(--cap-brand);border-color:var(--cap-brand);color:#fff}.cap-segmented input:checked+span em{color:#ffffffc7}.cap-segmented input:focus-visible+span{outline:2px solid var(--cap-brand-light);outline-offset:2px}@media(hover:hover){.cap-segmented input:not(:checked)+span:hover{border-color:var(--cap-brand-light)}}.cap-style-sample{font-size:20px;font-weight:500}.cap-style-sample[data-style=modern]{font-family:Caveat,cursive;font-weight:600;font-size:22px}.cap-style-sample[data-style=traditional]{font-family:Allura,cursive;font-size:22px}.cap-style-sample[data-style=casual]{font-family:Yellowtail,cursive;font-size:19px}.cap-details{background:var(--cap-surface);border:1px solid var(--cap-line);border-radius:var(--cap-radius-md);margin-bottom:14px}.cap-summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 14px;cursor:pointer;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--cap-ink-muted);list-style:none}.cap-summary::-webkit-details-marker{display:none}.cap-summary:focus-visible{outline:2px solid var(--cap-brand-light);outline-offset:-2px;border-radius:var(--cap-radius-md)}.cap-details[open] .cap-summary svg{transform:rotate(180deg)}.cap-summary svg{transition:transform .2s var(--cap-ease)}.cap-details-body{padding:4px 14px 14px;border-top:1px solid var(--cap-line-soft)}.cap-checks{display:grid;gap:6px;margin-bottom:10px}.cap-toggle{display:flex;align-items:center;gap:8px;min-height:36px;font-size:13px;cursor:pointer}.cap-toggle input{width:17px;height:17px;accent-color:var(--cap-brand);cursor:pointer;flex:none}.cap-text{width:100%;min-height:44px;padding:10px 12px;background:var(--cap-surface);border:1px solid var(--cap-line);border-radius:var(--cap-radius-sm);font:inherit;font-size:14px;color:var(--cap-ink);transition:border-color .15s var(--cap-ease),box-shadow .15s var(--cap-ease)}.cap-text:focus{outline:none;border-color:var(--cap-brand);box-shadow:0 0 0 2px #0d4f4f2e}.cap-hint{font-size:12.5px;line-height:1.5;color:var(--cap-ink-muted);margin:0;min-height:1px}.cap-hint[data-tone=warn]{color:#8a5a2b}.cap-result-card{background:var(--cap-surface);border:1px solid var(--cap-line);border-radius:var(--cap-radius-lg);padding:16px}.cap-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.cap-meta{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--cap-bg);border:1px solid var(--cap-line-soft);border-radius:var(--cap-radius-sm)}.cap-meta-key{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--cap-ink-muted)}.cap-meta-val{font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:24px;font-weight:700;line-height:1.1;color:var(--cap-brand)}.cap-preview-wrap{background:var(--cap-bg);border:1px solid var(--cap-line-soft);border-radius:var(--cap-radius-md);padding:12px;margin-bottom:12px;animation:cap-reveal .25s var(--cap-ease) both}@keyframes cap-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.cap-preview-wrap svg{display:block;width:100%;height:auto;max-height:58vh;background:#fff;border:1px solid var(--cap-line);border-radius:3px;box-shadow:0 2px 8px #0d4f4f12}.cap-tip{background:#0d4f4f0d;border:1px solid var(--cap-line-soft);border-radius:var(--cap-radius-md);padding:12px 14px;margin-bottom:12px;font-size:13px;line-height:1.5;color:var(--cap-ink-muted)}.cap-tip strong{color:var(--cap-ink)}.cap-tip a{color:var(--cap-brand);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(13,79,79,.25)}.cap-tip a:hover{border-color:var(--cap-brand)}.cap-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cap-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 14px;border-radius:var(--cap-radius-sm);font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13.5px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background-color .15s var(--cap-ease),border-color .15s var(--cap-ease),transform .1s ease}.cap-btn:active{transform:scale(.98)}.cap-btn:focus-visible{outline:2px solid var(--cap-brand-light);outline-offset:2px}.cap-btn[disabled]{opacity:.6;cursor:progress}.cap-btn-primary{background:var(--cap-brand);color:#fff}.cap-btn-primary:hover:not([disabled]){background:var(--cap-brand-light)}.cap-btn-secondary{background:var(--cap-surface);border-color:var(--cap-line);color:var(--cap-ink)}.cap-btn-secondary:hover:not([disabled]){border-color:var(--cap-brand-light)}.cap-attribution{margin:12px 0 0;font-size:11.5px;text-align:center}.cap-attribution a{color:var(--cap-ink-muted);text-decoration:none;border-bottom:1px solid var(--cap-line)}.cap-mobile-bar{display:none;position:fixed;left:12px;right:12px;bottom:12px;z-index:30;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#fffffff7;backdrop-filter:blur(8px);border:1px solid var(--cap-line);border-radius:var(--cap-radius-md);box-shadow:0 6px 20px #0d4f4f29}.cap-mobile-bar.cap-mobile-visible{display:flex}@media(min-width:880px){.cap-mobile-bar.cap-mobile-visible{display:none}}.cap-mobile-stat{display:flex;flex-direction:column;line-height:1.15}.cap-mobile-stat b{font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:19px;font-weight:700;color:var(--cap-brand)}.cap-mobile-stat i{font-style:normal;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--cap-ink-muted)}.cap-mobile-btn{flex:1 1 auto;max-width:220px}.cap-tool[data-embed=true] .cap-mobile-bar{display:none!important}@media(prefers-reduced-motion:reduce){.cap-tool,.cap-preview-wrap{animation:none}.cap-tool *,.cap-tool *:before,.cap-tool *:after{transition-duration:1ms!important;animation-duration:1ms!important}.cap-format:hover .cap-format-body{transform:none}}
