/* Torre Infinita — prévia V0.9.6, cartas inspiradas no formato mostrado pelo jogador.
   Usa somente retratos procedurais já produzidos pelo jogo. */
.ti096-showcase{--ti096-tone:#c9a8ff;--ti096-class:#b6ccea;--ti096-shade:#684ba0;position:relative;isolation:isolate;color:#f7f4ff;font-family:'Bricolage Grotesque',system-ui,sans-serif;max-width:660px;margin:0 auto 18px;padding:22px 11px 0;background:radial-gradient(circle at 80% 9%,color-mix(in srgb,var(--ti096-shade) 35%,transparent),transparent 40%),linear-gradient(150deg,#111525,#090b16 80%);border-radius:16px 16px 12px 12px;overflow:hidden;border:1px solid #7d729c77}
.ti096-showcase::before{content:'';position:absolute;inset:0;background-image:radial-gradient(#fff7 0.6px,transparent 1px);background-size:24px 22px;opacity:.19;pointer-events:none;z-index:-1}
.ti096-eyebrow{display:flex;align-items:center;gap:8px;margin:0 12px;color:#d1c9ed;letter-spacing:.22em;font-size:11px;font-weight:800}
.ti096-eyebrow>span:first-child{font-size:19px;color:var(--ti096-tone)}
.ti096-preview{margin-left:auto;padding:3px 6px;border:1px solid #74658b;border-radius:4px;font-size:9px;letter-spacing:.03em;color:#bfb7d1}
.ti096-intro{min-height:168px;position:relative;display:grid;grid-template-columns:1fr 47%;align-items:center;isolation:isolate;padding:0 4px}
.ti096-intro::before{content:'';position:absolute;inset:22px -8px 4px;border-top:1px solid #d8cdff22;border-bottom:1px solid #d8cdff22;background:radial-gradient(ellipse at 85% 60%,color-mix(in srgb,var(--ti096-tone) 15%,transparent),transparent 66%);z-index:-1}
.ti096-intro-label{display:flex;flex-direction:column;gap:11px;justify-content:center;padding:16px 8px;min-width:0}
.ti096-intro-label>span{font-size:10px;color:#e9d8aa;letter-spacing:.15em}
.ti096-intro-label>strong{font-size:clamp(58px,13vw,100px);color:var(--ti096-tone);font-family:Georgia,serif;font-weight:400;line-height:.9;text-shadow:0 0 27px color-mix(in srgb,var(--ti096-tone) 35%,transparent)}
.ti096-intro-label>small{color:#d7cde7;font-size:11px;max-width:135px}
.ti096-portrait-card{width:min(99%,188px);height:252px;justify-self:center;position:relative;z-index:3;transform:rotate(9deg) translate(-8px,17px);border:3px double #f0dffc;border-radius:11px;background:#080812;box-shadow:0 0 0 3px #353046,0 5px 0 #050611,0 13px 27px #000c,0 0 30px color-mix(in srgb,var(--ti096-tone) 38%,transparent);overflow:hidden;transition:transform .35s}
.ti096-showcase:hover .ti096-portrait-card{transform:rotate(6deg) translate(-8px,11px)}
.ti096-portrait-card:before,.ti096-mini:before{content:'';position:absolute;inset:5px;border:1px solid #f5e6ff72;border-radius:6px;pointer-events:none;z-index:3}
.ti096-card-art{position:absolute;inset:6px 6px 30px;overflow:hidden;background:radial-gradient(ellipse at 50% 26%,var(--ti096-class),#212238 55%,#090914 100%);z-index:0}
.ti096-card-art .procedural-portrait{height:100%;width:100%;object-fit:cover;transform:scale(1.30) translateY(5%);filter:contrast(1.18) saturate(1.2) drop-shadow(0 4px 10px #0008)}
.ti096-card-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 56%,#05050bbf 98%);pointer-events:none}
.ti096-card-sigil{display:none!important}
.ti096-card-base{position:absolute;left:9px;right:9px;bottom:6px;z-index:4;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;padding:4px;background:linear-gradient(100deg,#0a0a14,#181225,#080a12);border:1px solid #afa4b8;clip-path:polygon(10% 0,90% 0,100% 50%,90% 100%,10% 100%,0 50%)}
.ti096-card-base b{font-size:10px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;max-width:94%;white-space:nowrap}
.ti096-card-stars,.ti096-stars{color:var(--ti096-tone);text-shadow:0 0 12px color-mix(in srgb,var(--ti096-tone) 70%,transparent);letter-spacing:1.5px}
.ti096-card-stars{font-size:16px}
.ti096-orn{position:absolute;width:27px;height:27px;border-color:#f5eaff;border-style:solid;z-index:6;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--ti096-tone) 45%,transparent));pointer-events:none}
.ti096-top-left{top:0;left:0;border-width:3px 0 0 3px;border-radius:8px 0 0}
.ti096-top-right{top:0;right:0;border-width:3px 3px 0 0;border-radius:0 8px 0 0}
.ti096-bottom-left{bottom:0;left:0;border-width:0 0 3px 3px;border-radius:0 0 0 8px}
.ti096-bottom-right{bottom:0;right:0;border-width:0 3px 3px 0;border-radius:0 0 8px 0}
.ti096-panel{position:relative;z-index:1;margin:-11px 8px 0;padding:29px 22px 18px;background:radial-gradient(ellipse at 50% -10%,#24213b,#14121f 68%,#0b0b15);border:1.5px solid #eee1ffdd;box-shadow:0 7px 0 #131220,0 0 0 5px #f0e2ff0b,0 0 28px #ab8de61f;clip-path:polygon(2% 0,98% 0,100% 4%,100% 96%,98% 100%,2% 100%,0 96%,0 4%)}
.ti096-panel:before{content:'';position:absolute;inset:6px;border:1px solid #d3bbff3d;pointer-events:none}
.ti096-panel-heading{text-align:center;padding-top:0}
.ti096-panel-heading h2{margin:2px 0 3px;font-size:clamp(21px,4.4vw,35px);letter-spacing:.02em;line-height:1.13;text-transform:uppercase;font-weight:900;color:#fff9fc;text-shadow:0 2px 13px #070610}
.ti096-panel-heading p{margin:0 0 12px;color:#b5a7c8;font-size:12px;letter-spacing:.05em}
.ti096-stars{display:block;font-size:19px;margin:0 0 7px}
.ti096-milestone{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;color:#f1e4ef;font-size:clamp(13px,2.4vw,18px);font-weight:800;padding:10px 4px;border-block:1px solid #998aac52}
.ti096-milestone>span:first-child{color:var(--ti096-tone)}
.ti096-class{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;letter-spacing:.05em;padding:13px 0 9px}
.ti096-class span{font-size:18px;color:var(--ti096-tone)}
.ti096-class b{color:#f9f1ff}
.ti096-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 17px;padding:10px 0}
.ti096-stat{display:grid;grid-template-columns:22px 1fr auto;gap:6px;align-items:center;min-width:0;padding:9px 9px;background:linear-gradient(100deg,#242031,#151421);border:1px solid #776c8a8a;clip-path:polygon(0 0,96% 0,100% 50%,96% 100%,0 100%,4% 50%)}
.ti096-stat span:nth-child(2){font-size:11px;font-weight:800;letter-spacing:.015em;color:#ddd5e6}
.ti096-stat b{font-size:clamp(12px,2.5vw,16px);font-weight:900;white-space:nowrap}
.ti096-stat-icon{display:grid;place-items:center;font-size:16px;color:var(--ti096-tone)}
.ti096-nature{display:flex;justify-content:center;gap:9px;margin-top:10px}
.ti096-nature span{font-size:11px;color:#ead6ff;background:#302940;border-radius:30px;padding:6px 12px;border:1px solid #7e698e;max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ti096-splash{height:330px;margin:1px -11px 0;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 53% 30%,color-mix(in srgb,var(--ti096-shade) 44%,#15223b),#0b0c1c 72%),linear-gradient(#242039,#111321)}
.ti096-splash::before{content:'';position:absolute;top:9%;left:3%;right:3%;height:40%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--ti096-tone) 28%,transparent),transparent 67%);filter:blur(9px)}
.ti096-splash::after{content:'♜';position:absolute;right:-1%;top:4%;font-size:300px;line-height:1;color:#dad2fa13;text-shadow:0 0 24px #aaa6e71a;z-index:0}
.ti096-splash-lights{position:absolute;inset:0;background:linear-gradient(100deg,#09091c86,transparent 30% 75%,#0b091c8a),radial-gradient(circle at 22% 30%,#ffe9b4 0 2px,transparent 3px),radial-gradient(circle at 79% 50%,#e4c9ff 0 3px,transparent 4px);background-size:auto,81px 89px,103px 93px;opacity:.8;z-index:1}
.ti096-splash-art{position:absolute;inset:-40px 15% -45px;z-index:1;display:grid;place-items:center;filter:drop-shadow(0 15px 25px #000c)}
.ti096-splash-art .procedural-portrait{width:100%;height:100%;max-width:320px;object-fit:contain;transform:scale(1.12);filter:saturate(1.16) contrast(1.08)}
.ti096-splash-caption{position:absolute;inset:auto 12px 0;z-index:2;text-align:center;padding:33px 9px 17px;background:linear-gradient(transparent,#090a16f5 72%)}
.ti096-splash-caption span{display:block;font-size:10px;letter-spacing:.17em;color:var(--ti096-tone);font-weight:900;margin-bottom:6px}
.ti096-splash-caption b{font-size:clamp(14px,3vw,19px);letter-spacing:.02em;color:#fff8ff;line-height:1.25;display:block;overflow-wrap:anywhere}
.ti096-mini{display:block;position:relative;overflow:hidden;aspect-ratio:3/4.6;border:2px solid var(--ti096-tone);border-radius:8px;background:radial-gradient(ellipse at 45% 23%,color-mix(in srgb,var(--ti096-class) 35%,#282342),#0c0e1d 69%);box-shadow:inset 0 0 18px #080712,0 7px 19px #0304099e;width:100%;color:#fcf6ff;text-align:center}
.ti096-mini-art{display:block;position:absolute;inset:6px 2px 17%;overflow:hidden}
.ti096-mini-art .procedural-portrait{width:100%;height:100%;object-fit:cover;transform:scale(1.26) translateY(4%);filter:contrast(1.12) saturate(1.1)}
.ti096-mini-footer{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:1px;position:absolute;inset:51% 2px 2px;padding:8px 1px 7px;background:linear-gradient(transparent,#080913f7 70%);min-width:0}
.ti096-mini-footer b{font-size:clamp(9px,1.75vw,12px);max-width:95%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}
.ti096-mini-footer small{font-size:9px;color:#c2b6d6}
.ti096-mini-stars{font-size:16px;color:var(--ti096-tone);text-shadow:0 0 8px var(--ti096-tone);letter-spacing:1px}
.ti096-mini .ti096-orn{width:16px;height:16px}
.ti096-native .sheet,.ti096-native.sheet{max-width:670px}
.ti096-native.sheet>.ti096-showcase{margin-top:12px}
.ti096-native.sheet>div[style*="width:175px"],.ti096-native.sheet>h2,.ti096-native.sheet>p[style*="text-align:center"],.ti096-native.sheet>.stg{display:none!important}
.ti096-native.sheet>.panel:first-of-type{margin-top:8px!important}
.ti096-visual-sheet .ti07-sheet-overview{display:none}
.ti096-visual-sheet .ti096-showcase{max-width:690px;margin:0 auto 16px}
.ti096-visual-sheet{max-width:740px!important;width:min(98vw,740px)!important}
.ti096-visual-sheet .ti07-sheet-body{border-top:1px solid #755f8a}
.ti096-visual-sheet .ti096-intro{min-height:174px}
.ti096-visual-sheet .ti096-splash{height:320px}
.ti07-hero-card.ti096-roster-card{height:auto;display:block!important;background:transparent!important;border:0!important;padding:3px!important;text-align:center!important}
.ti07-hero-card.ti096-roster-card .ti096-mini{max-width:135px;margin:auto}
.ti07-hero-card.ti096-roster-card.is-active .ti096-mini{outline:3px solid #f1d291;outline-offset:2px}
.ti07-details .ti096-mini{width:min(100%,170px);margin:0 auto 8px}
.ti096-roster-card:hover .ti096-mini{transform:translateY(-3px);transition:transform .2s}
@media(max-width:720px){
 .ti096-showcase{padding:16px 5px 0}
 .ti096-eyebrow{font-size:9px;letter-spacing:.10em;margin:0 10px}
 .ti096-portrait-card{width:min(95%,151px);height:205px;transform:rotate(7deg) translate(-4px,16px)}
 .ti096-intro{min-height:136px}
 .ti096-intro-label>strong{font-size:64px}
 .ti096-panel{margin:-7px 3px 0;padding:26px 10px 16px}
 .ti096-stat-grid{gap:7px}
 .ti096-stat{gap:3px;grid-template-columns:16px 1fr auto;padding:8px 6px}
 .ti096-stat-icon{font-size:13px}
 .ti096-stat span:nth-child(2){font-size:10px}
 .ti096-stat b{font-size:13px}
 .ti096-class{font-size:11px}
 .ti096-splash{height:290px}
 .ti096-splash-art{inset:-30px 8% -50px}
 .ti096-visual-sheet{width:100%!important}
 .ti07-hero-card.ti096-roster-card .ti096-mini{max-width:95px}
}
@media(max-width:420px){
 .ti096-panel-heading h2{font-size:23px}
 .ti096-intro-label>small{max-width:100px}
 .ti096-panel{padding-inline:7px}
 .ti096-stat-grid{gap:5px}
 .ti096-stat{grid-template-columns:14px 1fr auto;padding:7px 3px}
 .ti096-stat b{font-size:11px}.ti096-stat span:nth-child(2){font-size:9px}
 .ti096-splash{height:265px}
}
@media(prefers-reduced-motion:reduce){.ti096-portrait-card,.ti096-roster-card:hover .ti096-mini{transition:none!important;transform:none!important}}

/* V0.9.7: tratamento visual para ilustrações manhwa procedurais em cada formato. */
.ti096-card-art:has(.ti097-portrait){background:radial-gradient(circle at 50% 34%,var(--ti096-class) 0%,#0b0d20 75%)}
.ti096-card-art .ti097-portrait{display:block!important;width:100%!important;height:100%!important;max-width:unset!important;max-height:unset!important;transform:scale(1.15) translateY(0%)!important;transform-origin:50% 35%;object-fit:cover;object-position:50% 36%;filter:saturate(1.1) contrast(1.11) drop-shadow(0 7px 11px #020312be)}
.ti096-splash-art .ti097-portrait{display:block!important;height:100%!important;width:100%!important;max-width:400px!important;max-height:unset!important;object-fit:contain;object-position:center center;transform:scale(1.13) translateY(2%)!important;filter:saturate(1.11) contrast(1.08) drop-shadow(0 8px 24px #03040ddd)}
.ti096-mini-art .ti097-portrait{width:100%!important;height:100%!important;max-width:unset!important;transform:scale(1.17) translateY(0%)!important;transform-origin:50% 38%;object-fit:cover;object-position:50% 29%;filter:saturate(1.06) contrast(1.13)}
.ti096-portrait-card{background:#0c1222}
.ti096-splash{background:radial-gradient(ellipse at 50% 39%,color-mix(in srgb,var(--ti096-class) 24%,#233048),#090b1a 74%)}
.ti096-mini:hover .ti097-portrait{filter:saturate(1.2) contrast(1.18) brightness(1.1)}
.ti096-card-art .ti097-portrait{overflow:visible}
@media(max-width:720px){
 .ti096-splash-art .ti097-portrait{transform:scale(1.17) translateY(1%)!important}
 .ti096-card-art .ti097-portrait{transform:scale(1.22) translateY(0%)!important}
}

/* Galeria rápida: permite comparar cinco estilos de herói sem sair da ficha. */
.ti097-gallery-nav{display:flex;gap:7px;margin-left:auto;margin-right:10px}
.ti097-gallery-nav button{font-size:23px;line-height:1;width:35px;min-width:35px;height:35px;min-height:35px;padding:0;border:1px solid #a48cb6;border-radius:9px;background:#2b233c;color:#f0e0ff}
.ti097-gallery-nav button:hover{background:#493158}
.ti096-showcase .ti097-portrait{animation:ti097-reveal .48s ease both}
@keyframes ti097-reveal{from{opacity:.65;filter:brightness(.75) saturate(.8)}to{opacity:1;filter:brightness(1) saturate(1)}}
@media(prefers-reduced-motion:reduce){.ti096-showcase .ti097-portrait{animation:none}}
@media(max-width:420px){.ti097-gallery-nav{margin-right:3px;gap:4px}.ti097-gallery-nav button{width:30px;min-width:30px;height:32px;min-height:32px}.ti07-character-header>span{font-size:10px;letter-spacing:.8px}}

/* Em celular a ficha de retrato é longa: rolar a ficha inteira em vez de reduzir/cortar a arte. */
#ti07-root .ti096-visual-sheet.ti07-character-sheet{display:block!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100dvh - 24px)!important;overscroll-behavior:contain;scrollbar-color:#8d75aa #181122}
#ti07-root .ti096-visual-sheet>.ti096-showcase{flex-shrink:0;width:calc(100% - 16px)}
#ti07-root .ti096-visual-sheet .ti07-sheet-body{overflow:visible!important;min-height:auto!important}
#ti07-root .ti096-visual-sheet .ti07-character-header{position:sticky;top:0;z-index:15;background:#1e162cff;backdrop-filter:blur(8px)}
#ti07-root .ti096-visual-sheet .ti07-sheet-tabs{position:sticky;top:49px;z-index:13;background:#201729f5}
#ti07-root .ti096-visual-sheet .ti07-sheet-footer{position:relative;z-index:1}
@media(max-width:720px){
 #ti07-root .ti096-visual-sheet.ti07-character-sheet{max-height:calc(100dvh - 12px)!important}
 #ti07-root .ti096-visual-sheet>.ti096-showcase{width:calc(100% - 8px)}
}

/* V0.9.8 — arte pintada de manhwa (mini-carta, salão e ilustração principal) */
.ti098-illustration{
 --ti098-pan:50%;--ti098-scale:1.07;--ti098-light:1.05;--ti098-hue:0deg;
 position:absolute;inset:0;display:block;overflow:hidden;isolation:isolate;
 background:radial-gradient(circle at 50% 36%,color-mix(in srgb,var(--ti098-accent) 25%,#17223b),#060913 78%);
}
.ti098-illustration .ti098-art-fallback{position:absolute;inset:0;display:grid;place-items:center;opacity:1;z-index:0}
.ti098-illustration .ti098-art-fallback .ti097-portrait{width:100%;height:100%;object-fit:cover;transform:scale(1.12)}
.ti098-illustration .ti098-art-image{
 position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;
 object-position:var(--ti098-pan) 29%;z-index:1;
 transform:scale(var(--ti098-scale));transform-origin:50% 36%;
 filter:brightness(var(--ti098-light)) hue-rotate(var(--ti098-hue)) saturate(1.12) contrast(1.08);
}
.ti098-illustration .ti098-art-glow{pointer-events:none;position:absolute;inset:0;z-index:2;
 background:linear-gradient(180deg,transparent 60%,#0809127a 100%),
 radial-gradient(ellipse at 75% 12%,color-mix(in srgb,var(--ti098-accent) 16%,transparent),transparent 66%);
}
.ti098-illustration.ti098-fallback-visible .ti098-art-image{display:none!important}
.ti096-card-art .ti098-illustration{inset:0}
.ti096-splash-art .ti098-illustration{inset:0;max-width:380px;left:0;right:0;margin-inline:auto}
.ti096-splash-art .ti098-art-image{object-position:var(--ti098-pan) 18%;transform:scale(calc(var(--ti098-scale)*1.06))}
.ti096-mini-art .ti098-illustration{inset:0}
.ti096-mini-art .ti098-art-image{object-position:var(--ti098-pan) 21%;transform:scale(calc(var(--ti098-scale)*1.08))}
.ti096-mini-art .ti098-art-glow{background:linear-gradient(180deg,transparent 45%,#0b0a1a99 98%)}
@media(max-width:720px){
 .ti096-splash-art .ti098-illustration{max-width:320px}
 .ti096-splash-art .ti098-art-image{transform:scale(calc(var(--ti098-scale)*1.11))}
}
@media(prefers-reduced-motion:no-preference){
 .ti096-showcase .ti098-art-image{animation:ti098-reveal .35s ease both}
}
@keyframes ti098-reveal{from{opacity:.4}to{opacity:1}}

/* V0.9.9: retrato raster único por DNA, imagem cacheada por herói e fallback individual. */
.ti099-portrait{position:absolute;inset:0;display:block;overflow:hidden;isolation:isolate;background:#101223}
.ti099-dna-fallback{position:absolute;inset:0;display:block;z-index:0}
.ti099-dna-fallback .ti097-portrait{width:100%!important;height:100%!important;max-width:none!important;transform:scale(1.16)!important;object-fit:cover;filter:saturate(1.18) contrast(1.10)}
.ti099-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;
 object-position:50% 30%;z-index:2;opacity:0;transition:opacity .25s ease;filter:saturate(1.16) contrast(1.1)}
.ti099-portrait.ti099-loaded .ti099-image{opacity:1}
.ti099-aura{position:absolute;inset:0;z-index:3;pointer-events:none;
 background:linear-gradient(180deg,transparent 55%,#0a0b1b5c 100%);}
.ti096-card-art .ti099-portrait{inset:0}
.ti096-card-art .ti099-image{object-position:50% 20%;transform:scale(1.14)}
.ti096-splash-art .ti099-portrait{inset:0;max-width:340px;margin:auto}
.ti096-splash-art .ti099-image{object-position:50% 13%;transform:scale(1.05)}
.ti096-mini-art .ti099-portrait{inset:0}
.ti096-mini-art .ti099-image{object-position:50% 25%;transform:scale(1.12)}
.ti099-portrait-progress{position:absolute;z-index:6;top:10px;left:11px;right:11px;
 display:flex;justify-content:space-between;align-items:center;gap:9px;max-width:100%;
 border:1px solid #b8a1db82;border-radius:8px;
 background:#11101ccf;backdrop-filter:blur(8px);padding:5px 9px;
 color:#efebf9;box-shadow:0 0 14px #07050b9a}
.ti099-progress-label{min-width:0;font-size:10px;color:#e9dfff;line-height:1.2}
.ti099-portrait-progress button{border:1px solid #9f84c2;border-radius:7px;padding:6px 8px;
 background:#3a294c;color:#fff;font:600 10px inherit;white-space:nowrap;cursor:pointer}
.ti099-portrait-progress button:hover{background:#604471}
@media(max-width:720px){
 .ti096-splash-art .ti099-portrait{max-width:300px}
 .ti099-portrait-progress{top:8px;left:5px;right:5px;padding:4px 6px}
 .ti099-progress-label{font-size:9px}
 .ti099-portrait-progress button{font-size:9px;padding:5px}
}
@media(prefers-reduced-motion:reduce){.ti099-image{transition:none}}

/* V1.0 — retratos pintados por IA com imagem remota privada e fallback explícito.
   O SVG é apenas a arte temporária e nunca recebe a etiqueta de arte IA pronta. */
.ti100-portrait{position:absolute;inset:0;display:block;overflow:hidden;isolation:isolate;
 background:radial-gradient(circle at 50% 40%,#302747,#0a0c1a 82%)}
.ti100-temporary{position:absolute;inset:0;display:grid;place-items:center;z-index:0}
.ti100-temporary .ti097-portrait{width:100%!important;height:100%!important;max-width:none!important;
 object-fit:cover;transform:scale(1.12)!important;filter:saturate(1.06) contrast(1.12) brightness(.87)}
.ti100-image{position:absolute;inset:0;display:block;width:100%;height:100%;
 object-fit:cover;object-position:50% 28%;opacity:0;z-index:2;
 transition:opacity .25s ease;filter:saturate(1.12) contrast(1.09)}
.ti100-portrait.ti100-loaded .ti100-image{opacity:1}
.ti100-veil{position:absolute;inset:0;z-index:3;pointer-events:none;
 background:linear-gradient(180deg,transparent 58%,#0a0b1a75 100%)}
.ti096-card-art .ti100-image{object-position:50% 20%;transform:scale(1.12)}
.ti096-mini-art .ti100-image{object-position:50% 27%;transform:scale(1.15)}
.ti096-splash-art .ti100-portrait{inset:0;margin-inline:auto;max-width:370px}
.ti096-splash-art .ti100-image{object-position:50% 14%;transform:scale(1.02)}
.ti100-status{position:absolute;z-index:10;top:9px;left:8px;right:8px;
 display:flex;align-items:center;justify-content:space-between;gap:7px;
 border:1px solid #b9a0d385;background:#121020e8;backdrop-filter:blur(6px);
 border-radius:8px;color:#ebe2f7;padding:7px 9px;box-shadow:0 3px 16px #05050abc}
.ti100-status-label{font-size:11px;line-height:1.3;color:#e9def5;max-width:65%}
.ti100-status button{color:#faf4ff;border:1px solid #9076b2;border-radius:6px;padding:6px 8px;
 background:#423157;font-size:10px;font-weight:700;cursor:pointer;min-height:32px}
.ti100-status button[disabled]{opacity:.55;cursor:not-allowed;background:#352f44}
.ti100-portrait[data-ti100-state="ready"] .ti100-temporary{opacity:0}
.ti100-portrait:not(.ti100-loaded) .ti100-temporary{opacity:1}
@media(max-width:720px){
 .ti096-splash-art .ti100-portrait{max-width:320px}
 .ti100-status{left:5px;right:5px;padding:6px}
 .ti100-status-label{font-size:9px}
 .ti100-status button{padding:5px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.ti100-image{transition:none}}

/* V1.0: item de armamento registrado, independente da classe visual. */
.ti096-weapon{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;
 padding:6px 8px 12px;color:#e9ddf2;border-bottom:1px solid #907baf55;text-align:center}
.ti096-weapon span{font-size:10px;letter-spacing:.09em;color:var(--ti096-tone);font-weight:800}
.ti096-weapon strong{font-size:13px;color:#fff5de;font-weight:800}

/* V1.0.1 — ficha simplificada, um único retrato completo, sem imagem duplicada
   e sem faixa flutuante sobre a ilustração. */
.ti096-showcase{padding-bottom:22px}
.ti096-showcase .ti096-intro{min-height:325px;grid-template-columns:minmax(0,1fr) 58%;padding:14px 8px 2px}
.ti096-showcase .ti096-intro-label{align-items:flex-start;justify-content:center;gap:9px;padding:12px}
.ti096-showcase .ti096-intro-label>strong{font-size:clamp(45px,10vw,78px)}
.ti096-showcase .ti096-portrait-card{width:min(96%,226px);height:310px;transform:none;justify-self:center;
 border:2px solid var(--ti096-tone);box-shadow:0 0 0 4px #131126,0 12px 30px #000b,0 0 26px color-mix(in srgb,var(--ti096-tone) 25%,transparent)}
.ti096-showcase:hover .ti096-portrait-card{transform:none}
.ti096-showcase .ti096-panel{margin:16px 12px 0;padding:22px 20px 20px;clip-path:none;border-radius:12px}
.ti096-showcase .ti096-technique{text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px;
 margin-top:14px;padding:13px 8px 2px;border-top:1px solid #998aac52}
.ti096-showcase .ti096-technique span{font-size:10px;letter-spacing:.15em;font-weight:850;color:var(--ti096-tone)}
.ti096-showcase .ti096-technique strong{font-size:15px;line-height:1.4;color:#fff6ef;overflow-wrap:anywhere}
.ti096-showcase .ti096-card-art .ti100-image{transform:none!important;object-fit:cover;object-position:center 20%}
.ti096-showcase .ti096-card-art .ti100-temporary{display:none}
@media(max-width:720px){
 .ti096-showcase .ti096-intro{min-height:290px;grid-template-columns:minmax(0,1fr) 60%;padding:11px 5px 3px}
 .ti096-showcase .ti096-portrait-card{width:min(98%,190px);height:264px}
 .ti096-showcase .ti096-panel{margin:14px 6px 0;padding:19px 12px 17px}
}
@media(max-width:420px){
 .ti096-showcase .ti096-intro{min-height:250px;grid-template-columns:minmax(0,1fr) 61%}
 .ti096-showcase .ti096-portrait-card{width:min(98%,154px);height:223px}
 .ti096-showcase .ti096-intro-label>strong{font-size:46px}
 .ti096-showcase .ti096-intro-label>small{max-width:102px}
}
/* Prévia: o desenho antigo NÃO aparece antes do retrato ser gerado/carregado.
   Mostra apenas o verso abstrato da carta, diferenciado por raridade. */
.ti100-portrait .ti100-temporary{display:none!important}
.ti100-portrait:not(.ti100-loaded)::after{content:'✧';display:grid;place-items:center;position:absolute;
 inset:0;color:var(--ti096-tone,#c9a8ff);font:normal clamp(35px,7vw,72px)/1 Georgia,serif;
 background:radial-gradient(ellipse at center,color-mix(in srgb,var(--ti096-tone,#bcadf5) 20%,#12182d) 0%,
 #090d1e 74%);opacity:.85;z-index:1;pointer-events:none}
.ti100-portrait.ti100-loaded::after{display:none}
.ti096-mini .ti100-image{object-fit:cover;transform:none;object-position:center 22%}
