/* Static reflections and fine double frames: shared by the app, shadow UI and editor. */
:root,:host{--glass188:linear-gradient(135deg,#e2f6ff20,transparent 38%),linear-gradient(176deg,#d2ecff10,transparent 45%,#8dbddb10),#0b1b29d9;--frame188:linear-gradient(#c8e9f5b3,#c8e9f5b3) left top/22px 1px no-repeat,linear-gradient(#c8e9f5b3,#c8e9f5b3) left top/1px 22px no-repeat,linear-gradient(#a2c9dc70,#a2c9dc70) right bottom/22px 1px no-repeat,linear-gradient(#a2c9dc70,#a2c9dc70) right bottom/1px 22px no-repeat;--shine188:inset 0 1px #edfaff4d,inset 1px 0 #d4efff17,inset 0 0 0 5px #06111c24,0 8px 22px #0002;--control188:48px}
:root body#sensei-app.tactical166 #root#root .app.online47 #content :is(.journey-panel181,.xp-stage,.skill-hub,.rank-strip,.skill-board-widget,.xp-level-directory,.ex132>section,.ex132>details,.account123,.family-settings123,.panel,.task94-row,.skill-library,.video-submit,.skill-category,.skill-item,.skill-row,.skill-video-row,.history-row,.registration90,.roster-row,.announcement145,.photo-list138 article){background:var(--frame188),var(--glass188)!important;border:1px solid #a0cbdf59!important;border-radius:5px 12px 5px 12px!important;box-shadow:var(--shine188)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;min-width:0}
:root body#sensei-app.tactical166 #root#root .app.online47 #content :is(.ex132-tech,.task-photos138 form[data-photo-upload]){background:var(--glass188)!important;border:1px solid #a0cbdf45!important;box-shadow:var(--shine188)!important;border-radius:5px 10px!important}
:root body#sensei-app.tactical166 #root#root .app.online47 :is(button,.btn,.text-button,.navlink){min-height:var(--control188)!important;box-shadow:inset 0 1px #e6f7ff4d,inset 0 -2px #0003!important;border-radius:4px 8px 4px 8px!important;white-space:normal}
:root body#sensei-app.tactical166 #root#root .app.online47 #content :is(button,.btn){min-height:var(--control188)!important}
:root body#sensei-app.tactical166 #root#root .app.online47 :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){height:var(--control188)!important;min-height:var(--control188)!important;padding:10px 12px!important;font-size:16px!important;box-sizing:border-box;border-radius:4px 8px!important;box-shadow:inset 0 1px 4px #0004,inset 0 -1px #c7e8ff1f!important}
:root body#sensei-app.tactical166 #root#root .app.online47 textarea{min-height:112px!important;height:auto!important}
:root body#sensei-app.tactical166 #root#root .app.online47 .formgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important;align-items:start}
:root body#sensei-app.tactical166 #root#root .app.online47 .formgrid>.wide{grid-column:1/-1}
:root body#sensei-app.tactical166 #root#root .app.online47 :is(.btnrow,.task94-actions){gap:10px!important}
:root body#sensei-app.tactical166 #root#root .app.online47 .btnrow>*{flex:1 1 160px;min-width:0}
:root body#sensei-app.tactical166 #root#root .app.online47 .journey-emblems184 button{min-height:44px!important;width:44px!important}
/* Inventory and Showcase are rendered in their own shadow root. */
:host :is(#main-content,#card-dialog) :is(.panel,.collection-item,.profile-card,.showcase-slot,.tracker,.gallery-card147,.gallery-tabs147,.gallery-slots147>section){background:var(--frame188),var(--glass188)!important;border:1px solid #a0cbdf59!important;border-radius:5px 12px 5px 12px!important;box-shadow:var(--shine188)!important}
:host :is(#main-content,#card-dialog) :is(button,.button,.chip,.text-button){min-height:48px!important;border-radius:4px 8px!important;box-shadow:inset 0 1px #e6f7ff4d,inset 0 -2px #0003!important}
:host :is(#main-content,#card-dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){height:48px!important;min-height:48px!important;box-sizing:border-box;font-size:16px!important;border-radius:4px 8px!important}
:host .gallery-grid147{align-items:stretch;grid-auto-rows:1fr}
:host .gallery-card147{height:100%;display:flex;flex-direction:column;min-width:0}
:host .gallery-card147 .gallery-person147{min-height:80px;align-items:center}
:host .gallery-card147 .gallery-meta147{min-height:105px}
:host .gallery-card147 .gallery-art147{margin-top:auto}
:host .gallery-card147>.button{width:100%;margin-top:16px}
:host .gallery-tabs147 button{flex:0 0 142px;min-width:142px;justify-content:space-between}
:host .gallery-slots147{grid-auto-rows:1fr;align-items:stretch}
:host .showcase-slot{height:100%}
/* Authentication: the same RPG scene and clear, evenly sized controls. */
:root body#sensei-app.tactical166 #root#root .login.rpg-auth188{display:grid!important;grid-template-columns:minmax(380px,1fr) minmax(0,.85fr)!important;max-width:1180px!important;min-height:0!important;margin:32px auto!important;gap:0!important;overflow:clip;border:1px solid #a0cbdf59!important;border-radius:6px 20px 6px 20px!important;background:var(--frame188),var(--glass188)!important;box-shadow:var(--shine188)!important;isolation:isolate}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .login-left{min-width:0;min-height:0!important;padding:32px clamp(24px,4vw,52px)!important;background:linear-gradient(125deg,#c9edff0d,transparent 60%),#0a1822bb!important;box-shadow:inset -1px 0 #d0edff29!important;color:#e4edf3!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .brand{margin:0 0 28px!important;display:block!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .brand-logo172{width:180px!important;max-width:100%!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .online-login{max-width:none!important;width:100%!important;margin:0!important;background:none!important;border:0!important;padding:0!important;box-shadow:none!important;backdrop-filter:none!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 :is(h1,h2,h3,button,.btn,.text-button){font-family:RpgDisplay184,system-ui!important;letter-spacing:.015em!important;text-transform:none!important;font-style:normal!important;text-shadow:none!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 h1{font-size:38px!important;line-height:1.15!important;margin:0 0 16px!important;max-width:none!important;color:#e4edf3!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 h2{font-size:25px!important;line-height:1.2!important;margin:0 0 10px!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 :is(p,label,.field>span){font:400 14px/1.55 system-ui!important;color:#b8cedb!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .field{display:grid!important;gap:7px!important;margin:0!important;min-width:0}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .vertical{display:grid!important;gap:16px!important;margin:20px 0 0!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 :is(input,select){height:48px!important;width:100%!important;min-height:48px!important;box-sizing:border-box;padding:10px 13px!important;font:400 16px/1.3 system-ui!important;border:1px solid #9bc8df66!important;border-radius:4px 8px!important;background:#071522c9!important;color:#f0f8ff!important;box-shadow:inset 0 1px 4px #0005,inset 0 -1px #c7e8ff1f!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 select option{background:#0d1d2a;color:#eef8ff}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 :is(button,.btn,.text-button){min-height:48px!important;width:100%;display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;padding:10px 14px!important;margin:0!important;border:1px solid #9cc9df59!important;border-radius:4px 8px!important;background:linear-gradient(170deg,#a6d0e928,#152b3ba6)!important;color:#e5f4ff!important;font-size:17px!important;line-height:1.3!important;box-shadow:inset 0 1px #e8faff42,inset 0 -2px #0002!important;white-space:normal!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 button.primary{background:linear-gradient(170deg,#719db6,#284c65 65%,#315b75)!important;color:#fff!important;border-color:#c4e9ff99!important;box-shadow:inset 0 1px #f1fbff66,inset 0 -2px #a8ddff55,0 5px 15px #0002!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 button:hover:not(:disabled){border-color:#d6f1ff!important;background-color:#29465b!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 button:disabled{opacity:.5!important;cursor:not-allowed!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 :is(button,input,select,a):focus-visible{outline:2px solid #d2f0ff!important;outline-offset:3px!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .registration90{margin:24px 0 0!important;padding:24px 0 0!important;border-top:1px solid #a3cce03d!important;background:none!important;border-radius:0!important;box-shadow:none!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .login-left>.registration90{margin:0!important;padding:0!important;border:0!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .registration90>button+button{margin-top:10px!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .formgrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .auth-status{font-size:11px!important;margin:16px 0!important;color:#87a8bc!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .tester91-login{margin-top:16px!important}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .auth-scene188{display:flex!important;position:relative!important;align-items:center;justify-content:center;min-height:520px!important;padding:32px!important;background:linear-gradient(180deg,#08142020,#07121b8c),url('/assets/samurai-mountains89-v018134.webp') center/cover!important;border:0!important;overflow:hidden}
:root body#sensei-app.tactical166 #root#root .rpg-auth188 .auth-mon188{width:min(80%,330px);aspect-ratio:1;border:3px solid #c2dce544;border-left-width:8px;border-bottom-width:5px;border-radius:48% 52% 47% 53%;transform:rotate(-18deg);box-shadow:inset 0 0 0 9px #11243330,0 0 0 1px #bfdbea14;background:radial-gradient(circle,#bccdda05,transparent 65%)}
/* Editor surfaces and equally sized choice tiles. */
body.avatar-theme188 :is(.shell,.editor,.stage,.profile-card,dialog){background:var(--frame188),var(--glass188);border-color:#a0cbdf59;border-radius:5px 12px 5px 12px;box-shadow:var(--shine188)}
body.avatar-theme188 .choices{grid-auto-rows:1fr;align-items:stretch}
body.avatar-theme188 .choice{height:100%;border-radius:4px 8px;background:linear-gradient(135deg,#d2eeff14,transparent 60%),#122737;border-color:#98c5db59;box-shadow:inset 0 1px #e8faff33}
body.avatar-theme188 .choice .label{min-height:48px;display:flex;align-items:center;justify-content:center}
body.avatar-theme188 .reward-tile179 .choice{height:auto;min-height:160px}
body.avatar-theme188 :is(.slots button,.tabs button,.preview-actions button,.primary,.quiet){min-height:48px;box-shadow:inset 0 1px #e8faff4d,inset 0 -2px #0002}
body.avatar-theme188 .choice[aria-pressed=true]{border-color:#d7f1ff;box-shadow:inset 0 0 0 1px #c2eaff44,inset 0 1px #fff6}
@media(max-width:760px){:root body#sensei-app.tactical166 #root#root .login.rpg-auth188{display:block!important;margin:12px!important;max-width:none!important;min-height:0!important}:root body#sensei-app.tactical166 #root#root .rpg-auth188 .auth-scene188{display:none!important}:root body#sensei-app.tactical166 #root#root .rpg-auth188 .login-left{padding:26px 22px!important;min-height:0!important}:root body#sensei-app.tactical166 #root#root .rpg-auth188 h1{font-size:32px!important}:root body#sensei-app.tactical166 #root#root .app.online47 .formgrid{grid-template-columns:minmax(0,1fr)}:root body#sensei-app.tactical166 #root#root .rpg-auth188 .formgrid{grid-template-columns:minmax(0,1fr)!important}}
@media(prefers-reduced-transparency:reduce){:root,:host{--glass188:#0c1c2a}:root body#sensei-app.tactical166 #root#root .rpg-auth188 .login-left{background:#0c1c2a!important}}

/* The complete character sheet carries the selected scene; panels sit above it. */
:root body#sensei-app.tactical166 #root#root #content .rpg184 .journey181.scene188,body.avatar-theme188 .scene188{background-image:var(--scene188)!important;background-size:cover!important;background-position:var(--scene-position188,50% 50%)!important;background-repeat:no-repeat!important;background-color:#0a1824!important}
:root body#sensei-app.tactical166 #root#root #content .rpg184 .scene188 .journey-art181{background:transparent!important}
:root body#sensei-app.tactical166 #root#root #content .rpg184 .scene188 .journey-art181:after,body.avatar-theme188 .scene188:before,body.avatar-theme188 .scene188:after{display:none!important}
:root body#sensei-app.tactical166 #root#root #content .rpg184 .scene188 .rpg-watermark184{display:none!important}

html:has(body#sensei-app){background:#08131e}

:root body#sensei-app.tactical166 #root#root .rpg-auth188 [data-tester91]{margin-top:16px!important}
@media(min-width:1101px){:root body#sensei-app.tactical166 #root#root #content .rpg184 .journey181{grid-template-rows:70px 1fr 1fr 30px!important}:root body#sensei-app.tactical166 #root#root #content .rpg184 .journey181 .journey-panel181{align-self:stretch!important}}

:root body#sensei-app.tactical166 #root#root #content .rpg184 .journey-avatar181>header{background:var(--frame188),var(--glass188)!important;box-shadow:var(--shine188)!important;border:1px solid #a0cbdf59!important;border-radius:5px 12px!important;padding:14px!important;gap:12px!important}
:root body#sensei-app.tactical166 #root#root .app.online47 :is(.dash-board-tabs,.btnrow,.footer-actions,.preview-actions,.mobile-nav){gap:10px!important}
:host :is(.view-switch,.portrait-actions118,.gallery-tabs147,.filter-chips){gap:10px!important}
body.avatar-theme188 :is(.tabs,.slots,.preview-actions,.footer-actions,.segmented){gap:10px!important}
:root body#sensei-app.tactical166 #root#root .app.online47 :is(.desktop-inner125>nav,.desktop-nav-group124>div){gap:10px!important}
