.t3s-shell{width:min(1220px,calc(100% - 36px));margin:0 auto;padding:42px 0 70px}.t3s-hero{text-align:center;margin-bottom:28px}.t3s-hero h1{margin:0;font-size:clamp(36px,6vw,64px);letter-spacing:-.045em;line-height:1}.t3s-hero p{max-width:760px;margin:12px auto 0;color:#64748b;font-size:16px;line-height:1.65}.t3s-tabs{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:22px 0}.t3s-tabs a{border:1px solid #cfd8e3;padding:10px 14px;text-decoration:none;color:#475569;background:#fff}.t3s-tabs a.active{background:#7b7b7b;color:#fff;border-color:#7b7b7b}.t3s-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.t3s-card{border:1px solid #dbe2ea;border-radius:16px;background:#fff;padding:18px;min-height:180px;display:flex;flex-direction:column}.t3s-card h3{margin:0 0 7px;font-size:17px}.t3s-card p{color:#64748b;font-size:13px;line-height:1.6;margin:0 0 14px}.t3s-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.t3s-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#eef2ff;color:#475569;font-size:10px;font-weight:800}.t3s-badge.ready{background:#ecfdf5;color:#047857}.t3s-badge.next{background:#fff7ed;color:#c2410c}.t3s-card a{margin-top:auto;align-self:flex-start;text-decoration:none;font-weight:800;color:#0f172a}.t3s-panel{border:1px solid #dbe2ea;border-radius:18px;background:#fff;padding:18px}.t3s-workbench{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:16px}.t3s-upload{min-height:330px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;cursor:pointer}.t3s-upload input{display:none}.t3s-upload strong{display:block;font-size:18px}.t3s-upload small{display:block;color:#64748b;margin-top:6px}.t3s-stage{min-height:520px;border:1px solid #dbe2ea;border-radius:16px;background:linear-gradient(#f8fafc,#edf2f7);position:relative;overflow:hidden}.t3s-stage model-viewer{width:100%;height:520px}.t3s-empty{position:absolute;inset:0;display:grid;place-items:center;color:#64748b;text-align:center;padding:30px}.t3s-actions{display:flex;gap:9px;margin-top:12px;flex-wrap:wrap}.t3s-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;text-decoration:none;font-size:13px;font-weight:800;cursor:pointer}.t3s-btn.primary{background:#111827;color:#fff;border-color:#111827}.t3s-btn[disabled]{opacity:.45;cursor:not-allowed}.t3s-status{margin-top:12px;padding:11px 13px;border:1px solid #dbe2ea;border-radius:10px;font-size:12px;color:#64748b}.t3s-fields{display:grid;gap:10px}.t3s-fields label{display:grid;gap:6px;font-size:12px;font-weight:750;color:#334155}.t3s-fields input,.t3s-fields textarea,.t3s-fields select{width:100%;box-sizing:border-box;border:1px solid #dbe2ea;border-radius:10px;padding:11px;background:#fff;font:inherit}.t3s-fields textarea{min-height:120px;resize:vertical}.t3s-note{margin-top:14px;padding:12px 14px;border-radius:12px;background:#f8fafc;color:#64748b;font-size:12px;line-height:1.6}.t3s-viewer-meta{padding:10px 2px;color:#64748b;font-size:12px}.t3s-file-name{font-weight:800;color:#0f172a}.dark .t3s-card,.dark .t3s-panel,.dark .t3s-btn,.dark .t3s-fields input,.dark .t3s-fields textarea,.dark .t3s-fields select{background:#17191d;color:#eef2f7;border-color:#303641}.dark .t3s-upload,.dark .t3s-stage,.dark .t3s-note{background:#111318;border-color:#303641}.dark .t3s-hero p,.dark .t3s-card p,.dark .t3s-note,.dark .t3s-viewer-meta{color:#9aa4b2}@media(max-width:900px){.t3s-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.t3s-workbench{grid-template-columns:1fr}}@media(max-width:600px){.t3s-shell{width:min(100% - 22px,1220px);padding-top:28px}.t3s-grid{grid-template-columns:1fr}.t3s-stage model-viewer{height:420px}.t3s-stage{min-height:420px}}
.t3s-workbench-tool{align-items:start}.t3s-upload-small{min-height:180px}.t3s-result{margin-top:16px;display:grid;gap:14px}.t3s-result-preview{border:1px solid #dbe2ea;border-radius:14px;overflow:hidden;background:#f8fafc}.t3s-result-preview img{display:block;width:100%;height:auto}.t3s-status.error{border-color:#fecaca;background:#fff1f2;color:#b91c1c}.t3s-status.success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.t3s-empty span{display:block;margin-top:6px;color:#64748b;line-height:1.6}.dark .t3s-result-preview{background:#111318;border-color:#303641}.dark .t3s-status.error{background:#2b1418;border-color:#7f1d1d;color:#fecaca}.dark .t3s-status.success{background:#112116;border-color:#14532d;color:#bbf7d0}


/* 2026-09-27 3D hub + viewer refinements */
.t3s-empty{pointer-events:none}
.t3s-url-block{margin-top:14px;padding-top:14px;border-top:1px solid #e2e8f0}
.t3s-url-label{display:block;margin-bottom:7px;color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.t3s-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.t3s-url-row input{min-width:0;height:42px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;padding:0 12px;font:inherit;font-size:12px;outline:none}
.t3s-url-row input:focus{border-color:#94a3b8;box-shadow:0 0 0 3px rgba(148,163,184,.16)}
.t3s-index-hero{margin-bottom:22px}
.t3s-index-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.t3s-index-card{position:relative;isolation:isolate;overflow:hidden;min-height:188px;text-decoration:none;color:#0f172a;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;background:linear-gradient(145deg,#fff 0%,#fbfdff 100%)}
.t3s-index-card::before{content:"";position:absolute;width:150px;height:150px;right:-68px;top:-76px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.18),rgba(56,189,248,.06) 58%,transparent 72%);transform:scale(.75);opacity:.38;transition:transform .28s ease,opacity .28s ease;z-index:-1}
.t3s-index-card::after{content:"";position:absolute;left:-35%;right:-35%;bottom:-75px;height:110px;background:linear-gradient(90deg,transparent,rgba(59,130,246,.09),rgba(139,92,246,.11),transparent);transform:translateY(28px) rotate(-4deg);transition:transform .28s ease;z-index:-1}
.t3s-index-card:hover{transform:translateY(-4px);border-color:#c7d2fe;box-shadow:0 18px 38px rgba(15,23,42,.09)}
.t3s-index-card:hover::before{transform:scale(1.18);opacity:.95}
.t3s-index-card:hover::after{transform:translateY(0) rotate(-2deg)}
.t3s-index-card h3{font-size:16px;letter-spacing:-.01em}
.t3s-index-card p{margin-bottom:0}
.t3s-index-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:18px;background:linear-gradient(145deg,#eef2ff,#f0f9ff);border:1px solid #dbeafe;font-size:18px;font-weight:900;color:#334155}
.t3s-index-card.is-planned{background:linear-gradient(145deg,#fff,#fafafa)}
.t3s-index-card.is-planned::before{background:radial-gradient(circle,rgba(148,163,184,.16),transparent 70%)}
.t3s-index-card .t3s-badges{margin:0 0 12px}
.t3s-index-card .t3s-badge{position:relative;z-index:1}
.t3s-output-panel:empty{min-height:556px}
.dark .t3s-url-block,html[data-theme="dark"] .t3s-url-block{border-top-color:#303641}
.dark .t3s-url-row input,html[data-theme="dark"] .t3s-url-row input{background:#17191d;color:#eef2f7;border-color:#303641}
.dark .t3s-index-card,html[data-theme="dark"] .t3s-index-card{background:linear-gradient(145deg,#17191d,#121419);color:#eef2f7;border-color:#303641}
.dark .t3s-index-icon,html[data-theme="dark"] .t3s-index-icon{background:#20242b;border-color:#303641;color:#e2e8f0}
@media(max-width:900px){.t3s-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.t3s-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.t3s-index-card{min-height:168px;padding:14px}.t3s-index-card h3{font-size:14px}.t3s-index-card p{font-size:11px;line-height:1.5}.t3s-index-icon{width:36px;height:36px;margin-bottom:13px;font-size:15px}.t3s-url-row{grid-template-columns:1fr}.t3s-url-row .t3s-btn{width:100%}}
