:root{--tr:#2563eb;--tr-dark:#1e40af;--tr-soft:#eff6ff;--tr-ink:#1b2943;--tr-muted:#647087;--tr-line:#dae3f2}body{background:linear-gradient(180deg,#f5f9ff 0,#fff 470px)}.tr-hero{background:radial-gradient(circle at 88% 13%,rgba(255,255,255,.3),transparent 27%),linear-gradient(135deg,#1e3a8a,#2563eb 58%,#38bdf8);border:0;color:#fff;box-shadow:0 22px 60px rgba(37,99,235,.2)}.tr-hero .tool-hero-title,.tr-hero .tool-hero-desc{color:#fff}.tr-hero .tool-hero-icon{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;font-weight:800}.tr-hero .tool-badge{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.27);color:#fff}.tr-page{max-width:1160px}.tr-app{padding:22px;border:1px solid var(--tr-line);border-radius:24px;background:#fff;box-shadow:0 18px 55px rgba(30,64,175,.09)}.tr-banner{display:none;padding:10px 13px;margin-bottom:14px;border-radius:10px;font-size:.83rem}.tr-banner.show{display:block}.tr-banner.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.tr-banner.error{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.tr-head,.tr-head>div,.tr-result-head,.tr-result-head>div{display:flex;align-items:center;justify-content:space-between;gap:9px}.tr-head label{display:block;color:var(--tr-ink);font-weight:700}.tr-head span{font-size:.72rem;color:var(--tr-muted)}.tr-head button,.tr-result-head button{padding:8px 11px;border:1px solid var(--tr-line);border-radius:9px;background:#fff;color:var(--tr-dark);font:600 .75rem 'Google Sans',sans-serif;cursor:pointer}.tr-app>textarea{width:100%;height:250px;box-sizing:border-box;margin-top:11px;padding:17px;border:1.5px solid var(--tr-line);border-radius:14px;resize:vertical;outline:none;color:var(--tr-ink);font:14px/1.65 ui-monospace,monospace}.tr-app>textarea:focus{border-color:var(--tr);box-shadow:0 0 0 4px rgba(37,99,235,.09)}.tr-config{display:grid;grid-template-columns:1fr 1fr .8fr;gap:13px;margin-top:14px}.tr-config section{padding:15px;border:1px solid var(--tr-line);border-radius:14px;background:#fbfdff}.tr-config h2{margin:0 0 10px;color:var(--tr-ink);font-size:.9rem}.tr-config label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;color:var(--tr-muted);font-size:.74rem}.tr-config input:not([type=checkbox]),.tr-config select{width:120px;box-sizing:border-box;padding:7px;border:1px solid var(--tr-line);border-radius:8px}.tr-config input[type=checkbox]{accent-color:var(--tr)}#number-options{padding-top:2px}.tr-estimate strong,.tr-estimate span,.tr-estimate small{display:block}.tr-estimate strong{margin-top:18px;color:var(--tr-dark);font-size:1.5rem}.tr-estimate span{color:var(--tr-muted);font-size:.75rem}.tr-estimate small{margin-top:8px;color:var(--tr-muted);font-size:.65rem;line-height:1.5}.tr-meter{height:7px;margin-top:11px;border-radius:99px;background:#dce7f7;overflow:hidden}.tr-meter i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--tr),#38bdf8)}.tr-meter i.danger{background:#e11d48}.tr-template{margin-top:12px;padding:10px;border-radius:10px;background:var(--tr-soft);color:var(--tr-muted);font-size:.73rem}.tr-template strong{color:var(--tr-ink);margin-right:8px}.tr-template code{margin-left:8px;color:var(--tr-dark)}.tr-submit{width:100%;margin-top:14px;padding:13px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--tr-dark),var(--tr));color:#fff;font-weight:700;cursor:pointer;box-shadow:0 9px 20px rgba(37,99,235,.22)}#results{margin-top:18px;border:1px solid var(--tr-line);border-radius:17px;overflow:hidden}.tr-result-head{padding:14px;background:var(--tr-soft)}.tr-result-head>div:first-child{display:block}.tr-result-head span,.tr-result-head strong{display:block}.tr-result-head span{font-size:.68rem;text-transform:uppercase;color:var(--tr-muted)}#rep-output{width:100%;height:300px;box-sizing:border-box;padding:17px;border:0;border-top:1px solid var(--tr-line);border-bottom:1px solid var(--tr-line);resize:vertical;outline:none;font:14px/1.65 ui-monospace,monospace}.tr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--tr-line)}.tr-stats div{padding:12px;text-align:center;background:#fff}.tr-stats strong,.tr-stats span{display:block}.tr-stats strong{color:var(--tr-dark)}.tr-stats span{font-size:.66rem;color:var(--tr-muted)}.tr-info,.tr-guide,.tr-faq{margin-top:28px;padding:30px;border:1px solid var(--tr-line);border-radius:22px;background:#fff}.tr-info{display:grid;grid-template-columns:1.15fr 1fr;gap:38px;background:linear-gradient(135deg,#fff,#eff6ff)}.tr-info h2,.tr-guide h2,.tr-faq h2{margin:5px 0 10px;color:var(--tr-ink);font-size:1.55rem}.tr-info p,.tr-guide p,.tr-faq p{color:var(--tr-muted);line-height:1.7}.tr-eyebrow{color:var(--tr);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.tr-info ol{list-style:none;counter-reset:s;padding:0;margin:0}.tr-info li{position:relative;counter-increment:s;padding:4px 0 16px 46px}.tr-info li:before{content:counter(s);position:absolute;left:0;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--tr);color:#fff;font-weight:700}.tr-info li strong,.tr-info li span{display:block}.tr-info li span{font-size:.8rem;color:var(--tr-muted)}.tr-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.tr-cards article{padding:18px;border:1px solid var(--tr-line);border-radius:15px;background:#fafdff}.tr-cards h3{margin:0 0 7px;color:var(--tr-ink);font-size:.94rem}.tr-cards p{margin:0;font-size:.82rem}.tr-faq details{padding:14px 0;border-top:1px solid var(--tr-line)}.tr-faq summary{cursor:pointer;color:var(--tr-ink);font-weight:700}
@media(max-width:850px){.tr-config{grid-template-columns:1fr 1fr}.tr-estimate{grid-column:1/-1}.tr-info{grid-template-columns:1fr}.tr-cards{grid-template-columns:1fr 1fr}}@media(max-width:570px){.tr-app,.tr-info,.tr-guide,.tr-faq{padding:16px;border-radius:17px}.tr-head,.tr-result-head{align-items:flex-start;flex-direction:column}.tr-head>div,.tr-result-head>div{flex-wrap:wrap}.tr-config,.tr-cards{grid-template-columns:1fr}.tr-estimate{grid-column:auto}.tr-stats{grid-template-columns:1fr 1fr}.tr-app>textarea{height:220px}}
