/* Scoped ToolYak Love Calculator: shared style.css is never changed. */
.tylove{max-width:750px;margin:30px auto;font-family:'Segoe UI',Arial,sans-serif;color:#0f284d;overflow:visible}
.tylove *{box-sizing:border-box}
.tylove .tylove-layout{display:grid;grid-template-columns:minmax(0,325px) minmax(0,375px);justify-content:space-between;gap:20px;align-items:start}
.tylove .leftinput,.tylove .rightresult{float:none;width:auto;max-width:none;margin:0}
.tylove .tylove-input{background:#e1eff0;border:1px solid #0f284d;padding:20px;border-radius:2px}
.tylove .tylove-input h2{font-size:18px;color:#0f284d;font-weight:600;text-align:center;margin:0 0 10px}
.tylove .tylove-intro{font-size:12px;line-height:1.5;text-align:center;margin:0 0 15px;color:#34465a}
.tylove label{display:block;font-size:12px;font-weight:600;color:#0f284d;margin-bottom:5px}
.tylove .row-full{margin:0 0 10px}
.tylove input[type=text],.tylove select{display:block;width:100%;min-width:0;height:40px;border:1px solid #0f284d;border-radius:0;background:#fff;color:#0f284d;padding:8px 12px;font:400 14px 'Segoe UI',Arial,sans-serif}
.tylove input:focus-visible,.tylove select:focus-visible,.tylove button:focus-visible,.tylove summary:focus-visible{outline:3px solid #228b22;outline-offset:2px}
.tylove input[aria-invalid=true]{border:2px solid #bd2f3b;background:#fff7f7}
.tylove .tylove-field-error{display:block;min-height:0;color:#a52231;font-size:11px;line-height:1.4}
.tylove .tylove-field-error:not(:empty){margin-top:4px}
.tylove .tylove-heart{text-align:center;color:#c63255;font-size:28px;line-height:1.2;margin:-2px 0 7px}
.tylove .tylove-extra{margin:12px 0;padding:9px;border:1px solid #9fbbc0;background:rgba(255,255,255,.55);font-size:12px}
.tylove summary{cursor:pointer;font-weight:600;color:#0f284d}
.tylove .tylove-extra p{font-size:11px;line-height:1.5;margin:8px 0}
.tylove .tylove-extra[open] summary{margin-bottom:10px}
.tylove .tylove-actions{display:flex;gap:10px;margin-top:10px}
.tylove .tylove-actions .btn-style{flex:1;min-width:0;width:auto!important;margin:0!important;padding:10px 6px;font-size:14px!important;font-weight:600;line-height:1.2;border:0;border-radius:2px;cursor:pointer}
.tylove .btn-calculate{background:#0f284d!important;color:#fff!important}
.tylove .btn-reset{background:#4c4c4c!important;color:#fff!important}
.tylove button:hover{filter:brightness(.93)}
.tylove .tylove-rating{text-align:center;margin:9px auto 0}
.tylove .tylove-result{padding:0 5px;background:transparent;min-width:0;scroll-margin-top:85px}
.tylove .tylove-result>h2{background:#228b22;color:#fff;font-size:18px;padding:6px;text-align:center;margin:0 0 12px}
.tylove .tylove-placeholder{text-align:center;padding:26px 12px;background:#f4f7f7;border:1px solid #d9e4e5;font-size:13px;color:#4e5961}
.tylove .tylove-placeholder>span{font-size:54px;color:#c63255;line-height:1}
.tylove .tylove-output[hidden],.tylove .tylove-reflection[hidden]{display:none!important}
.tylove .tylove-pair{text-align:center;font-weight:700;font-size:14px;overflow-wrap:anywhere;margin:0 0 12px;color:#0f284d}
.tylove .tylove-ring{--score:0%;width:154px;height:154px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#228b22 var(--score),#e0e8ed 0);margin:0 auto 12px}
.tylove .tylove-ring-inner{background:#fff;width:126px;height:126px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:inset 0 0 0 1px #e8ecee}
.tylove .tylove-ring strong{font-size:34px;color:#0f284d;line-height:1.1}
.tylove .tylove-ring small{font-size:11px;color:#52616a}
.tylove .tylove-verdict{text-align:center;font-size:17px;color:#0f284d;margin:8px 0}
.tylove .tylove-message{text-align:center;font-size:12px;line-height:1.5;color:#44515a;margin:0 0 12px}
.tylove .tylove-bars,.tylove .tylove-reflection{border:1px solid #e1e7e9;padding:11px;background:#fff;margin:10px 0}
.tylove .tylove-bars h3,.tylove .tylove-reflection h3{font-size:13px;margin:0 0 11px;color:#0f284d}
.tylove .tylove-bar{margin-bottom:10px}
.tylove .tylove-bar:last-child{margin-bottom:0}
.tylove .tylove-bar-top{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#35485a;margin-bottom:4px}
.tylove .tylove-track{height:9px;border-radius:10px;background:#e6edf0;overflow:hidden}
.tylove .tylove-fill{height:100%;border-radius:inherit;background:#228b22;width:0}
.tylove .tylove-reflection>p{font-size:11px;line-height:1.5;color:#34465a}
.tylove .tylove-method{font-size:11px;line-height:1.55;margin:10px 0;color:#46545f}
.tylove .tylove-method p{margin:7px 0}
.tylove .tylove-result-actions{display:flex;gap:7px;margin-top:10px}
.tylove .tylove-result-actions button{flex:1;width:auto!important;background:#0f284d!important;color:#fff!important;border:0;border-radius:2px;margin:0!important;padding:8px 5px;font-size:12px!important;cursor:pointer}
.tylove .tylove-action-note{font-size:11px;min-height:1em;color:#246b2b;margin:5px 0}
.tylove .tylove-disclaimer{font-size:11px;line-height:1.5;color:#58616a;margin:12px 0}
.tylove .tylove-guide{clear:both;margin-top:22px;padding:18px 20px;background:#fff;border:1px solid #e4e9ed;font-size:13px;line-height:1.65;color:#34465a}
.tylove .tylove-guide h2{background:#e1eff0;border-left:4px solid #228b22;font-size:17px;color:#0f284d;padding:6px 10px;margin:14px 0 9px}
.tylove .tylove-guide h2:first-child{margin-top:0}
.tylove .tylove-guide details{border-bottom:1px solid #dde5e8;padding:10px 2px}
.tylove .tylove-guide details p{margin:7px 0 0}
@media(max-width:768px){.tylove{max-width:100%;padding:0 10px}.tylove .tylove-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.tylove .leftinput,.tylove .rightresult{width:100%;max-width:450px;margin:auto;float:none}.tylove input[type=text],.tylove select{font-size:16px!important;height:42px}.tylove .tylove-result{scroll-margin-top:65px}.tylove .tylove-guide{padding:13px}}
@media print{body *{visibility:hidden!important}.tylove .tylove-result,.tylove .tylove-result *{visibility:visible!important}.tylove .tylove-result{position:absolute!important;left:10mm;top:10mm;width:180mm!important;max-width:none!important}.tylove .tylove-result-actions,.tylove .tylove-action-note,.tylove .tylove-disclaimer,.tylove .tylove-placeholder{display:none!important}.tylove .tylove-track,.tylove .tylove-fill,.tylove .tylove-ring{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
