/* SMS character counter (dist/sms-counter.js). Text and checks on the left, phone preview and split on the right. */
.rs-tool{padding:10px 0 20px}
.smc{border:1px solid var(--line);background:#fff;min-height:720px}
@media(max-width:900px){.smc{min-height:1240px}}
.smc-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.smc-ed{padding:28px;display:flex;flex-direction:column;gap:20px;border-right:1px solid var(--line)}
.smc-out{padding:28px;background:#f5f4f0}
.smc-out>div{position:sticky;top:90px;display:flex;flex-direction:column;gap:16px}
.smc-k,.smc-f>label,.smc-lab label,.smc-slot label{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#555;display:block;margin-bottom:8px}
.smc .opt{font-weight:400;text-transform:none;letter-spacing:0;color:#6b6b6b}
.smc input[type=text],.smc input[type=number],.smc textarea{width:100%;font:500 16px var(--sans);padding:11px 13px;border:1px solid #ccc;border-radius:2px;background:#fff;color:var(--ink);box-sizing:border-box}
.smc textarea{font:400 16px/1.55 var(--sans);resize:vertical;min-height:170px}
.smc input:focus,.smc textarea:focus,.smc button:focus-visible,.smc summary:focus-visible{outline:2px solid var(--red);outline-offset:1px}
.smc-lab{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.smc-link{font:600 14px var(--sans);background:none;border:0;padding:0;text-decoration:underline;cursor:pointer;color:var(--ink);white-space:nowrap}
.smc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line)}
.smc-stats>div{padding:14px 12px;border-right:1px solid var(--line)}
.smc-stats>div:last-child{border-right:0}
.smc-stats b{display:block;font:700 28px/1.1 var(--sans);font-variant-numeric:tabular-nums;color:var(--ink)}
.smc-stats span{display:block;font-size:13px;color:#555;margin-top:4px;line-height:1.3}
.smc-stats.uni>div:last-child{background:#fff4e5}
.smc-stats.uni>div:last-child b{color:#8a3c00}
.smc-warn,.smc-note{padding:14px 16px;font-size:15px;line-height:1.5;border:1px solid}
.smc-warn{background:#fff4e5;border-color:#f0c48a;color:#3a2200}
.smc-note{background:#f5f4f0;border-color:var(--line);color:#333}
.smc-warn p,.smc-note p{margin:0 0 10px}
.smc-warn p:last-child,.smc-note p:last-child{margin:0}
.smc code{font:500 14px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f0eee8;padding:1px 5px;border-radius:2px;color:var(--ink)}
.smc-warn code{background:#fff}
.smc-slots{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.smc-slot label{display:flex;flex-wrap:wrap;gap:8px;align-items:center;text-transform:none;letter-spacing:0;font-size:14px}
.smc-slot label span{font-weight:400;color:#555}
.smc-checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.smc-checks li{font-size:14.5px;line-height:1.5;padding:10px 12px 10px 34px;background:#fff;border:1px solid var(--line);position:relative;color:#333}
.smc-checks li::before{position:absolute;left:12px;top:10px;font-weight:700}
.smc-checks li.ok::before{content:"✓";color:#1e7a46}
.smc-checks li.warn::before{content:"!";color:#a14a06}
.smc-checks li.bad::before{content:"×";color:#b3141a}
.smc-more{border-top:1px solid var(--line);padding-top:14px}
.smc-more summary{font:600 15.5px var(--sans);cursor:pointer;color:var(--ink);line-height:1.4}
.smc-in{display:flex;flex-direction:column;gap:14px;margin-top:16px}
.smc-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.smc-hint{font-size:14px;color:#6b6b6b;margin:0;line-height:1.45}
.smc-costline{font-size:16px;line-height:1.5;margin:0}
.smc-phone{width:min(100%,330px);margin:0 auto;border:10px solid #1b1b1b;border-radius:30px;overflow:hidden;background:#fff}
.smc-ph-top{display:flex;flex-direction:column;align-items:center;padding:12px 14px;background:#f2f2f4;border-bottom:1px solid #ddd;line-height:1.3}
.smc-ph-top b{font:600 15px var(--sans);color:#111}
.smc-ph-top i{font:400 12.5px var(--sans);color:#555;font-style:normal}
.smc-ph-body{min-height:200px;max-height:380px;overflow:auto;padding:16px 14px}
.smc-bubble{background:#e9e9eb;color:#111;border-radius:18px;padding:10px 14px;margin:0;max-width:88%;font:400 15px/1.45 var(--sans);word-break:break-word}
.smc-empty{color:#6b6b6b;font-size:15px;margin:0;text-align:center}
.smc-card{background:#fff;border:1px solid var(--line);padding:18px}
.smc-split{font-size:15px;line-height:1.5;margin:0 0 12px}
.smc-tbl{width:100%;border-collapse:collapse;font-size:14.5px;margin:0 0 14px}
.smc-tbl th,.smc-tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}
.smc-tbl th{font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:#555}
.smc-tbl tr.on td{background:#f5f4f0;font-weight:700}
.smc-btns{display:flex;flex-wrap:wrap;gap:10px}
.smc-btn{font:600 15px var(--sans);padding:11px 18px;border:1px solid var(--ink);background:#fff;color:var(--ink);cursor:pointer;border-radius:2px}
.smc-btn:hover{background:#e7e4dd}
.smc-btn.pri{background:var(--ink);color:#fff}
.smc-btn.pri:hover{background:#333}
.smc-warn .smc-btn{margin-top:2px}
.smc-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 18px;font:600 15px var(--sans);opacity:0;pointer-events:none;transition:.2s;z-index:50;margin:0}
.smc-toast.on{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.smc-grid{grid-template-columns:1fr}.smc-ed{border-right:0;border-bottom:1px solid var(--line);padding:20px}.smc-out{padding:20px}.smc-out>div{position:static}}
@media(max-width:560px){.smc-stats{grid-template-columns:1fr 1fr}.smc-stats>div:nth-child(2){border-right:0}.smc-stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.smc-two{grid-template-columns:1fr}.smc-stats b{font-size:24px}}
.smc-parts{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto}
.smc-parts li{border:1px solid var(--line);background:#fafaf8}
.smc-pk{display:flex;justify-content:space-between;font-size:12.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#555;padding:6px 10px;border-bottom:1px solid var(--line)}
.smc-pk span{font-weight:500;letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}
.smc-parts p{margin:0;padding:8px 10px;font:400 14.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;word-break:break-all;white-space:pre-wrap;color:#222}
.smc-parts mark{border-radius:2px;padding:0 1px;color:inherit}
.smc-parts mark.u{background:#ffd9a8;outline:1px solid #e0a050}
.smc-parts mark.x{background:#dfe8f5;outline:1px solid #9db4d6}
.smc-inv{font:600 11px var(--sans);padding:0 2px}
.smc-nl{color:#6b6b6b}
