:root{--tng-ink: #0e0e10;--tng-deck: #18181b;--tng-card: #1f1f23;--tng-edge: #2f2f35;--tng-text: #efeff1;--tng-dim: #adadb8;--tng-purple: #9146ff;--tng-purple-dark: #772ce8;--tng-purple-soft: #f1e9ff;--tng-green: #00c48c;--tng-amber: #f5a524;--tng-red: #eb0400;--tng-page-text: #18181b;--tng-page-muted: #53535f;--tng-page-line: #e5e1ee;--primary: #9146ff;--primary-dark: #772ce8;--border: #e5e1ee;--surface: #ffffff;--shadow-soft: 0 12px 30px rgba(24, 24, 27, 0.08);--surface-muted: #f7f4fc;--text-main: #18181b;--text-muted: #53535f;}
.tng-tool{display: grid;grid-template-columns: minmax(300px, 380px) 1fr;gap: 18px;background: var(--tng-ink);border-radius: 22px;padding: 18px;margin: 8px 0 56px;color: var(--tng-text);box-shadow: 0 20px 50px rgba(14, 14, 16, 0.25);}
.tng-tool [hidden]{display: none !important;}
.tng-panel,.tng-stage{background: var(--tng-deck);border: 1px solid var(--tng-edge);border-radius: 16px;padding: 18px;min-width: 0;}
.tng-panel{align-self: start;display: flex;flex-direction: column;gap: 16px;}
.tng-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 4px 12px;font-size: 12.5px;color: var(--tng-dim);padding-bottom: 12px;border-bottom: 1px dashed var(--tng-edge);}
.tng-byline .author-link{color: #bf94ff;font-weight: 700;text-decoration: none;}
.tng-byline .author-link:hover{text-decoration: underline;}
.tng-field{border: 0;padding: 0;margin: 0;min-width: 0;}
.tng-field label[for],.tng-field legend,.tng-check label{display: block;font-size: 12.5px;font-weight: 800;letter-spacing: .06em;text-transform: uppercase;color: var(--tng-dim);margin-bottom: 8px;float: none;width: auto;padding: 0;}
.tng-input{width: 100%;border: 2px solid var(--tng-edge);border-radius: 8px;padding: 10px 12px;font-size: 15px;color: var(--tng-text);background: var(--tng-ink);transition: border-color .15s ease;}
.tng-input::placeholder{color: #6b6b75;}
.tng-input:focus{outline: none;border-color: var(--tng-purple);box-shadow: 0 0 0 3px rgba(145, 70, 255, 0.3);}
.tng-hint{font-size: 12.5px;color: var(--tng-dim);margin: 6px 0 0;}
.tng-chips{display: flex;flex-wrap: wrap;gap: 6px;}
.tng-chip{margin: 0;}
.tng-chip input,.tng-seg input{position: absolute;opacity: 0;pointer-events: none;}
.tng-chip span{display: inline-block;padding: 6px 12px;border: 1px solid var(--tng-edge);border-radius: 999px;font-size: 13.5px;font-weight: 600;cursor: pointer;background: var(--tng-card);color: var(--tng-text);transition: all .15s ease;}
.tng-chip span:hover{border-color: var(--tng-purple);}
.tng-chip input:checked + span{background: var(--tng-purple);border-color: var(--tng-purple);color: #fff;}
.tng-chip input:focus-visible + span,.tng-seg input:focus-visible + span{outline: 2px solid #bf94ff;outline-offset: 2px;}
.tng-pair{display: grid;grid-template-columns: 1fr;gap: 16px;}
.tng-seg{display: grid;grid-auto-flow: column;grid-auto-columns: 1fr;background: var(--tng-ink);border-radius: 8px;padding: 3px;gap: 3px;}
.tng-seg label{position: relative;margin: 0;}
.tng-seg span{display: block;text-align: center;padding: 7px 4px;border-radius: 6px;font-size: 13px;font-weight: 600;cursor: pointer;color: var(--tng-dim);white-space: nowrap;}
.tng-seg input:checked + span{background: var(--tng-card);color: var(--tng-text);box-shadow: inset 0 -2px 0 var(--tng-purple);}
.tng-go{border: 0;border-radius: 8px;padding: 13px 18px;background: var(--tng-purple);color: #fff;font-size: 16px;font-weight: 800;cursor: pointer;transition: background .15s ease, transform .15s ease;}
.tng-go:hover{background: var(--tng-purple-dark);transform: translateY(-1px);}
.tng-go:disabled{opacity: .7;cursor: wait;transform: none;}
.tng-status{font-size: 12.5px;color: var(--tng-dim);margin: -6px 0 0;}
.tng-status.is-error{color: #ff6b6b;font-weight: 600;}
.tng-stage{display: flex;flex-direction: column;gap: 16px;}
.tng-meta{margin: 0;font-weight: 800;font-size: 14px;color: var(--tng-dim);text-transform: uppercase;letter-spacing: .05em;}
.tng-names{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));gap: 8px;}
.tng-name{width: 100%;display: flex;align-items: center;gap: 8px;text-align: left;border: 1px solid var(--tng-edge);border-radius: 8px;padding: 9px 10px;background: var(--tng-card);color: var(--tng-text);cursor: pointer;transition: border-color .15s ease, background .15s ease;}
.tng-name:hover{border-color: var(--tng-purple);}
.tng-name.is-active{border-color: var(--tng-purple);background: #26203a;box-shadow: inset 3px 0 0 var(--tng-purple);}
.tng-name-text{flex: 1;font-weight: 700;font-size: 14.5px;overflow-wrap: anywhere;}
.tng-len{flex-shrink: 0;font-size: 12px;color: var(--tng-dim);font-variant-numeric: tabular-nums;}
.tng-dot{flex-shrink: 0;width: 9px;height: 9px;border-radius: 50%;background: var(--tng-green);}
.tng-dot[data-verdict="Usable"]{background: var(--tng-amber);}
.tng-dot[data-verdict="Rework"],.tng-dot[data-verdict="Blocked"]{background: var(--tng-red);}
.tng-preview{display: flex;flex-direction: column;gap: 14px;border: 1px solid var(--tng-edge);border-radius: 12px;padding: 16px;background: var(--tng-ink);}
.tng-preview.is-flash{animation: tngFlash .45s ease;}
@keyframes tngFlash{0%{transform: translateY(4px);opacity: .5;}100%{transform: none;opacity: 1;}}
.tng-channel{border-radius: 10px;background: var(--tng-deck);border: 1px solid var(--tng-edge);overflow: hidden;}
.tng-channel-head{display: flex;align-items: center;gap: 12px;padding: 14px;background: linear-gradient(120deg, #2a1a4d 0, var(--tng-deck) 70%);}
.tng-avatar{width: 46px;height: 46px;border-radius: 50%;display: grid;place-items: center;flex-shrink: 0;background: var(--tng-purple);color: #fff;font-weight: 800;font-size: 20px;text-transform: uppercase;box-shadow: 0 0 0 3px var(--tng-red);}
.tng-channel-id{min-width: 0;}
.tng-display{display: flex;align-items: center;gap: 8px;flex-wrap: wrap;margin: 0;font-size: 18px;}
.tng-display b{overflow-wrap: anywhere;}
.tng-live{font-size: 11px;font-weight: 800;letter-spacing: .06em;background: var(--tng-red);color: #fff;border-radius: 4px;padding: 1px 6px;}
.tng-cat{margin: 2px 0 0;font-size: 13px;color: #bf94ff;font-weight: 600;}
.tng-chat{padding: 10px 14px;border-top: 1px solid var(--tng-edge);font-size: 14px;}
.tng-chat p{margin: 0;line-height: 1.5;overflow-wrap: anywhere;}
.tng-viewer{color: #1e90ff;}
.tng-mention{background: rgba(145, 70, 255, 0.25);border-radius: 4px;padding: 0 4px;font-weight: 700;}
.tng-emote{display: inline-block;font-size: 12px;font-weight: 800;color: #fff;background: var(--tng-purple-dark);border-radius: 4px;padding: 0 5px;}
.tng-emote:empty{display: none;}
.tng-verdict{display: flex;align-items: flex-start;gap: 12px;}
.tng-badge{flex-shrink: 0;font-size: 13px;font-weight: 800;padding: 4px 10px;border-radius: 999px;background: rgba(0, 196, 140, 0.15);color: var(--tng-green);}
.tng-badge[data-verdict="Usable"]{background: rgba(245, 165, 36, 0.15);color: var(--tng-amber);}
.tng-badge[data-verdict="Rework"],.tng-badge[data-verdict="Blocked"]{background: rgba(235, 4, 0, 0.18);color: #ff6b6b;}
.tng-how{margin: 2px 0 0;font-size: 14px;color: var(--tng-text);}
.tng-notes{list-style: none;margin: 0;padding: 0;display: flex;flex-direction: column;gap: 6px;}
.tng-notes li{position: relative;padding-left: 22px;font-size: 13.5px;color: var(--tng-dim);}
.tng-notes li::before{content: '\2713';position: absolute;left: 0;top: 0;font-weight: 800;color: var(--tng-green);}
.tng-notes li[data-tone="warn"]::before{content: '!';color: var(--tng-amber);left: 4px;}
.tng-notes li[data-tone="bad"]::before{content: '\2715';color: #ff6b6b;}
.tng-places{display: grid;grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));gap: 8px;margin: 0;}
.tng-places div{background: var(--tng-deck);border: 1px solid var(--tng-edge);border-radius: 8px;padding: 8px 10px;min-width: 0;}
.tng-places dt{font-size: 11px;font-weight: 800;letter-spacing: .06em;text-transform: uppercase;color: var(--tng-dim);}
.tng-places dd{margin: 2px 0 0;font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-size: 13.5px;color: var(--tng-text);overflow-wrap: anywhere;}
.tng-actions{display: flex;flex-wrap: wrap;gap: 8px;}
.tng-btn{display: inline-flex;align-items: center;justify-content: center;border: 1px solid var(--tng-purple);border-radius: 8px;padding: 9px 14px;background: var(--tng-purple);color: #fff;font-size: 14px;font-weight: 700;cursor: pointer;text-decoration: none;transition: background .15s ease, border-color .15s ease;}
.tng-btn:hover{background: var(--tng-purple-dark);border-color: var(--tng-purple-dark);color: #fff;}
.tng-btn:disabled{opacity: .6;cursor: wait;}
.tng-btn-ghost{background: transparent;border-color: var(--tng-edge);color: var(--tng-text);}
.tng-btn-ghost:hover{background: var(--tng-card);border-color: var(--tng-purple);color: var(--tng-text);}
.tng-btn.is-done{background: var(--tng-green);border-color: var(--tng-green);color: #0e0e10;}
.tng-check{border-top: 1px dashed var(--tng-edge);padding-top: 14px;}
.tng-check-row{display: flex;gap: 8px;}
.tng-check-row .tng-input{flex: 1;min-width: 0;}
.tng-read,.tng-limits{margin: 0 auto 48px;color: var(--tng-page-text);}
.tng-read h2,.tng-limits h2{font-size: clamp(1.4rem, 2.6vw, 1.75rem);font-weight: 800;margin-bottom: 12px;}
.tng-read p,.tng-read li,.tng-limits li{font-size: 16px;line-height: 1.65;color: var(--tng-page-muted);}
.tng-read strong,.tng-limits strong{color: var(--tng-page-text);}
.tng-read code{color: var(--tng-purple-dark);background: var(--tng-purple-soft);border-radius: 4px;padding: 1px 5px;}
.tng-rules{display: grid;grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));gap: 12px;}
.tng-rule{border: 1px solid var(--tng-page-line);border-radius: 12px;padding: 14px;background: #fff;border-top: 4px solid var(--tng-purple);}
.tng-rule-num{margin: 0;font-size: 20px;font-weight: 800;color: var(--tng-purple-dark) !important;font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;}
.tng-rule h3{font-size: 15px;font-weight: 800;margin: 4px 0 6px;}
.tng-rule p:last-child{font-size: 14.5px;margin: 0;}
.tng-table-wrap{overflow-x: auto;margin-bottom: 14px;border: 1px solid var(--tng-page-line);border-radius: 12px;}
.tng-table{width: 100%;border-collapse: collapse;font-size: 15px;}
.tng-table th,.tng-table td{padding: 10px 14px;text-align: left;vertical-align: top;border-bottom: 1px solid var(--tng-page-line);color: var(--tng-page-muted);}
.tng-table thead th{background: var(--surface-muted);color: var(--tng-page-text);font-size: 13px;text-transform: uppercase;letter-spacing: .05em;}
.tng-table tbody th{color: var(--tng-page-text);white-space: nowrap;}
.tng-table tbody tr:last-child th,.tng-table tbody tr:last-child td{border-bottom: 0;}
.tng-table code{white-space: nowrap;}
.tng-list,.tng-steps{padding-left: 20px;}
.tng-list li,.tng-steps li{margin-bottom: 8px;}
.tng-mix{display: grid;grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));gap: 16px;}
.tng-mix h3{font-size: 16px;font-weight: 800;margin-bottom: 8px;}
.tng-mix-list{list-style: none;padding: 0;margin: 0;border: 1px solid var(--tng-page-line);border-radius: 12px;overflow: hidden;}
.tng-mix-list li{padding: 9px 14px;font-size: 14.5px;border-bottom: 1px solid var(--tng-page-line);}
.tng-mix-list li:last-child{border-bottom: 0;}
.tng-mix-list b{display: inline-block;min-width: 112px;color: var(--tng-purple-dark);}
.tng-limits{background: var(--surface-muted);border: 1px solid var(--tng-page-line);border-left: 4px solid var(--tng-purple);border-radius: 12px;padding: 20px 22px;}
.tng-limits ul{margin: 0;padding-left: 20px;}
.tng-limits li{margin-bottom: 8px;}
@media (max-width: 991px){.tng-tool{grid-template-columns: 1fr;}}
@media (max-width: 575px){.tng-tool{padding: 10px;border-radius: 16px;}.tng-panel,.tng-stage{padding: 14px;}.tng-check-row{flex-direction: column;}.tng-names{grid-template-columns: 1fr 1fr;}.tng-mix-list b{display: block;min-width: 0;}}