.tt-root{max-width:880px;margin-inline:auto;--on-accent: #ffffff}.tt-tabs-wrap{display:flex;margin-bottom:18px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}.tt-tabs-wrap::-webkit-scrollbar{display:none}.tt-tabs{flex:0 0 auto;max-width:100%}.tt-tabs .seg-btn{white-space:nowrap}.tt-panel{padding:clamp(18px,3vw,28px)}.tt-pane{display:flex;flex-direction:column}.tt-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin-bottom:10px}.tt-label-hint{text-transform:none;letter-spacing:.02em;color:var(--text-muted);font-size:11px;font-weight:700}.tt-textarea{resize:vertical;line-height:1.55;font-family:var(--font-body);min-height:64px}.tt-textarea-tall{min-height:150px}.tt-note{position:relative;margin:14px 0 0;font-size:13.5px;font-weight:600;line-height:1.55;color:var(--text-dim);background:var(--paper-2);border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm);padding:13px 16px 13px 18px}.tt-note:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:var(--accent);border-right:var(--bw) solid var(--ink)}.tt-note strong{color:var(--ink);font-weight:800}.tt-note-lead{margin-top:0;margin-bottom:22px}.tt-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.tt-card{display:flex;flex-direction:column;gap:7px;text-align:left;width:100%;background:var(--white);border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm);padding:13px 15px;cursor:pointer;min-height:var(--tap);color:var(--ink);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.tt-card:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.tt-card:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--ink)}.tt-card.is-copied{background:var(--tool);color:var(--on-accent)}.tt-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.tt-card-name{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}.tt-card.is-copied .tt-card-name{color:var(--on-accent)}.tt-card-action{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tool);flex:0 0 auto}.tt-card.is-copied .tt-card-action{color:var(--on-accent)}.tt-card-out{font-size:clamp(17px,3.4vw,20px);line-height:1.4;word-break:break-word;overflow-wrap:anywhere;color:var(--ink)}.tt-card.is-copied .tt-card-out{color:var(--on-accent)}.tt-card-out.is-dim{color:var(--text-muted)}.tt-controls{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px}.tt-control{display:flex;flex-direction:column;gap:9px;min-width:0}.tt-control-label{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}.tt-seg-sm{flex-wrap:wrap}.tt-seg-sm .seg-btn{font-size:11px;padding:8px 13px;min-height:38px}.tt-select{width:auto;min-width:200px;max-width:100%;cursor:pointer;font-size:14px;padding:12px 15px;min-height:var(--tap)}.tt-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.tt-grow{flex:1 1 200px}.tt-result{margin-top:20px;border:var(--bw) solid var(--ink);background:var(--white);box-shadow:var(--shadow);overflow:hidden}.tt-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:var(--bw) solid var(--ink);background:var(--paper-2)}.tt-result-title{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.tt-copy-btn{flex:0 0 auto;padding:9px 16px;min-height:38px;font-size:12px}.tt-pre{margin:0;padding:16px;font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1.55;color:var(--ink);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;max-height:360px;overflow-y:auto}.tt-sym-group{margin-top:8px}.tt-sym-group+.tt-sym-group{margin-top:26px}.tt-sym-title{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin-bottom:13px;padding-bottom:8px;border-bottom:var(--bw) solid var(--ink)}.tt-sym-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:9px}.tt-sym{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;min-height:var(--tap);padding:4px;background:var(--white);border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm);color:var(--ink);cursor:pointer;overflow:hidden;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.tt-sym:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink);background:var(--accent)}.tt-sym:active{transform:translate(3px,3px);box-shadow:0 0 0 var(--ink)}.tt-sym.is-copied{background:var(--tool);color:var(--on-accent)}.tt-sym.is-copied .tt-sym-glyph{opacity:0}.tt-sym.is-wide{grid-column:span 2;aspect-ratio:auto;min-height:var(--tap)}.tt-sym-glyph{font-size:clamp(17px,4.5vw,20px);line-height:1;text-align:center;white-space:nowrap;transition:opacity var(--dur-fast) var(--ease-out)}.tt-sym.is-wide .tt-sym-glyph{font-size:14px;padding-inline:6px;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tt-sym-tick{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--on-accent);font-size:20px;font-weight:800}.tt-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}.tt-stat{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;background:var(--white);border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm);text-align:center}.tt-stat-num{font-family:var(--font-display);font-size:clamp(22px,5vw,28px);line-height:1;color:var(--ink)}.tt-stat-label{font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}.tt-limits{display:flex;flex-direction:column;gap:12px;margin-top:20px}.tt-limit{background:var(--white);border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm);padding:13px 15px}.tt-limit-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.tt-limit-label{font-size:14px;font-weight:800;color:var(--ink)}.tt-limit-max{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--text-muted)}.tt-limit-remain{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}.tt-bar{height:12px;background:var(--paper-2);border:var(--bw) solid var(--ink);overflow:hidden}.tt-bar-fill{display:block;height:100%;background:var(--tool);transition:width var(--dur) var(--ease-out),background var(--dur) var(--ease-out)}.tt-limit.is-ok .tt-limit-remain{color:var(--tool)}.tt-limit.is-warn .tt-limit-remain{color:#b45309}.tt-limit.is-warn .tt-bar-fill{background:#d97706}.tt-limit.is-over{background:#fbe6e3}.tt-limit.is-over .tt-limit-remain{color:#c1271b}.tt-limit.is-over .tt-bar-fill{background:#dc2626}.tt-privacy{margin:24px auto 0;text-align:center;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);line-height:1.7}@media (max-width: 600px){.tt-cards{grid-template-columns:1fr}}@media (max-width: 420px){.tt-stats{grid-template-columns:repeat(2,1fr)}.tt-select{min-width:100%;width:100%}.tt-control{width:100%}}@media (prefers-reduced-motion: reduce){.tt-card,.tt-sym,.tt-bar-fill{transition:none}}
