.tt25-tools{--tool-glass:color-mix(in srgb,var(--tt-light-surface,#f5f8ff) 86%,transparent);--tool-line:rgba(110,134,179,.21);min-height:75vh;padding-bottom:80px;color:var(--tt-heading-color,#182d50)}
.tt25-tools *{box-sizing:border-box}
.tt25-tools-hero{position:relative;display:grid;grid-template-columns:1.4fr .6fr;min-height:360px;align-items:center;gap:25px;padding-block:60px 42px}
.tt25-tools-hero:before{content:"";position:absolute;inset:12px 0;z-index:-1;background:radial-gradient(ellipse at 80% 25%,rgba(117,87,246,.18),transparent 50%),radial-gradient(ellipse at 20% 75%,rgba(20,175,238,.11),transparent 55%)}
.tt25-eyebrow{font-size:12px;letter-spacing:.16em;font-weight:800;color:#696cd8}.tt25-tools-hero h1{font-size:clamp(3.4rem,8vw,6rem);letter-spacing:-.07em;line-height:1.06;margin:15px 0 12px}.tt25-tools-hero h1 span{color:#8062f7}.tt25-tools-hero p{font-size:clamp(1rem,1.6vw,1.22rem);opacity:.82;max-width:690px}.tt25-tools-ornament{min-height:190px;display:grid;align-content:center;justify-content:center;transform:rotate(-7deg);border:1px solid #b5a8fa77;border-radius:42px;background:linear-gradient(132deg,#7fcdf744,#ba75ff33);backdrop-filter:blur(15px);box-shadow:0 24px 80px #5966b125}.tt25-tools-ornament span{font-size:1.25rem;font-weight:800;letter-spacing:.25em}.tt25-tools-ornament strong{font-size:4.8rem;line-height:1;color:#8b6be8}.tt25-privacy{max-width:720px;display:flex;gap:10px;align-items:center;margin-top:25px;padding:14px 17px;border:1px solid #7996d155;border-radius:17px;background:#8b9dd115;line-height:1.45;font-size:14px}
.tt25-tools-workspace{border:1px solid var(--tool-line);border-radius:30px;padding:22px;background:var(--tool-glass);box-shadow:0 28px 80px #1f3a6314;backdrop-filter:blur(30px) saturate(150%)}
.tt25-tools-nav{display:flex;flex-wrap:wrap;gap:10px;border-bottom:1px solid var(--tool-line);padding-bottom:18px;margin-bottom:25px}
.tt25-tools button{font-family:inherit;cursor:pointer}.tt25-tools-nav button{border:1px solid var(--tool-line);background:#8ba9df1d;color:inherit;border-radius:15px;padding:12px 19px;font-size:15px;font-weight:700;transition:transform .2s,background .2s}
.tt25-tools-nav button.active{background:linear-gradient(125deg,#3968e8,#9871ef);color:white;border-color:transparent;box-shadow:0 8px 22px #4055a63d}.tt25-tools-nav button:hover{transform:translateY(-2px)}
.tt25-tools-pane[hidden]{display:none!important}.tt25-tool-header{display:flex;justify-content:space-between;gap:20px;align-items:center}.tt25-tool-header h2{margin:0;font-size:clamp(1.4rem,2.5vw,2rem);letter-spacing:-.03em}.tt25-tool-header p{margin:6px 0 20px;opacity:.7}.tt25-tool-pill{border-radius:99px;border:1px solid #ab95ed67;background:#b08aff1a;color:#8164dc;font-size:12px;font-weight:700;padding:7px 13px;white-space:nowrap}
.tt25-drop{display:grid;place-items:center;text-align:center;gap:10px;padding:33px 20px;background:linear-gradient(115deg,rgba(108,134,252,.12),rgba(42,194,218,.07));border:2px dashed #7796e79c;border-radius:23px;cursor:pointer;margin-bottom:24px;transition:background .2s,transform .2s}
.tt25-drop:hover,.tt25-drop.dragover{background:#648af523;transform:translateY(-2px)}.tt25-drop i{font-size:30px;color:#6077e8}.tt25-drop strong{font-size:1.12rem}.tt25-drop small{opacity:.7}
.tt25-editor-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);gap:25px;align-items:start}.tt25-preview-wrap{border:1px solid var(--tool-line);border-radius:22px;min-height:260px;padding:15px;background:repeating-conic-gradient(#b1b7c333 0% 25%,#eef0f533 0% 50%) 50% / 24px 24px;display:grid;place-items:center;overflow:hidden}.tt25-preview-wrap canvas{display:block;width:auto;max-width:100%;max-height:min(58vh,560px);height:auto;object-fit:contain;box-shadow:0 9px 34px #18234b26}.tt25-file-meta{width:100%;overflow-wrap:anywhere;margin-top:12px;color:inherit;opacity:.75;font-size:13px}
.tt25-controls{padding:19px;border:1px solid var(--tool-line);border-radius:20px;background:rgba(119,157,236,.07);display:grid;gap:14px}.tt25-controls h3{margin:0}.tt25-controls label{display:grid;gap:6px;font-size:13px;font-weight:700;min-width:0}.tt25-controls input,.tt25-controls select{width:100%;min-width:0;border:1px solid #7795d756;color:inherit;background:color-mix(in srgb,var(--tt-light-surface,#fff) 84%,transparent);border-radius:11px;padding:10px;font:inherit}.tt25-controls input[type=color]{padding:3px;height:43px}.tt25-controls input[type=range]{padding:0;accent-color:#6f78ed}.tt25-controls .tt25-check{display:flex;align-items:center}.tt25-check input{width:auto}.tt25-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tt25-hint{font-size:12px;line-height:1.55;opacity:.76;margin:0}.tt25-actions{display:flex;flex-wrap:wrap;gap:9px}.tt25-tools .tt25-primary,.tt25-tools .tt25-secondary{padding:11px 16px;border-radius:12px;font-weight:750;border:1px solid #8598c957}.tt25-tools .tt25-primary{background:linear-gradient(125deg,#3d70ed,#9663e9);color:#fff;border-color:transparent}.tt25-tools .tt25-secondary{background:#7998d71c;color:inherit}.tt25-tools button:disabled{opacity:.4;cursor:not-allowed}.tt25-status{border-radius:14px;padding:12px 16px;margin:22px 0 0;border:1px solid #629ac24a;background:#439bc115;font-size:14px}.tt25-status.error{color:#cc3255;background:#dc476c16;border-color:#df446548}
.tt25-vector-preview{min-height:280px;max-height:70vh;overflow:auto;border-radius:20px;border:1px dashed #8293d977;display:grid;place-items:center;padding:17px;background:#c1d0f521}.tt25-vector-preview img{max-width:100%;max-height:62vh;object-fit:contain}.tt25-vector-preview iframe{border:0;width:100%;min-height:470px;background:white;border-radius:12px}
html[data-theme=dark] .tt25-tools{--tool-glass:rgba(16,28,52,.87);color:#ecf2ff;--tool-line:rgba(132,165,235,.22)}html[data-theme=dark] .tt25-tools .tt25-controls input,html[data-theme=dark] .tt25-tools .tt25-controls select{background:#243553;color:#f0f5ff}
@media(max-width:820px){.tt25-tools-hero{grid-template-columns:1fr}.tt25-tools-ornament{display:none}.tt25-editor-layout{grid-template-columns:1fr}.tt25-tools-workspace{padding:15px;border-radius:20px}.tt25-tools-nav button{padding:10px 13px}.tt25-tool-pill{display:none}}
@media(max-width:460px){.tt25-2col{grid-template-columns:1fr}.tt25-tools-hero{padding-top:32px}.tt25-tools-hero h1{font-size:3.6rem}.tt25-tool-header p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.tt25-tools *{transition:none!important;animation:none!important}}
