/* Ported from Cortex (nucleus/winpu-deck.css) 2026-09-22. Do not hand-edit. */
/* Mirrors the rsidpu-* visual language; namespaced under #rwinpu-overlay */
#rwinpu-overlay{position:fixed;inset:0;z-index:2147483700;font-family:'Work Sans',sans-serif;overflow:hidden;background:#0a1628;}
:where(#rwinpu-overlay *,#rwinpu-overlay *::before,#rwinpu-overlay *::after){box-sizing:border-box;margin:0;padding:0;}
#rwinpu-stage{position:absolute;inset:0;}
.rwinpu-slide{position:absolute;inset:0;display:flex;flex-direction:column;}
.rwinpu-slide.s-in-r{animation:rwinpuInR .36s cubic-bezier(.22,1,.36,1) both;}
.rwinpu-slide.s-in-l{animation:rwinpuInL .36s cubic-bezier(.22,1,.36,1) both;}
.rwinpu-slide.s-out-r{animation:rwinpuOutR .24s ease-in forwards;}
.rwinpu-slide.s-out-l{animation:rwinpuOutL .24s ease-in forwards;}
@keyframes rwinpuInR{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes rwinpuInL{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes rwinpuOutR{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(4%)}}
@keyframes rwinpuOutL{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-4%)}}

/* Top bar */
#rwinpu-overlay .rwinpu-bar{position:absolute;top:0;left:0;right:0;height:46px;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(7px, 1vw, 14px);background:linear-gradient(to bottom,rgba(0,0,0,.40) 0%,transparent 100%);pointer-events:none;}
.rwinpu-bar>*{pointer-events:all;}
.rwinpu-logo-wrap{display:flex;align-items:center;}
.rwinpu-logo-wrap img{height:26px;width:auto;display:block;filter:drop-shadow(0 2px 8px rgba(0,0,0,.45));}
.rwinpu-bar-label{font-size:9.5px;font-weight:800;color:rgba(255,255,255,.65);letter-spacing:.22em;text-transform:uppercase;}
.rwinpu-xbtn{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:white;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;font-family:inherit;}
.rwinpu-xbtn:hover{background:rgba(255,255,255,.32);}

/* Bottom nav */
#rwinpu-overlay .rwinpu-nav{position:absolute;bottom:0;left:0;right:0;height:96px;z-index:30;display:flex;align-items:center;padding:0 clamp(7px, 1vw, 14px) 24px;background:linear-gradient(to top,rgba(0,0,0,.55) 0%,transparent 100%);pointer-events:none;}
.rwinpu-nav>*{pointer-events:all;}
#rwinpu-overlay .rwinpu-nbtn{font-family:'Work Sans',sans-serif;font-size:13.5px;font-weight:700;padding:13px 28px;border-radius:30px;cursor:pointer;border:2px solid rgba(255,255,255,.35);background:rgba(255,255,255,.18);color:white;letter-spacing:.04em;transition:all .15s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.rwinpu-nbtn:hover{background:rgba(255,255,255,.30);}
.rwinpu-nbtn:disabled{opacity:.22;pointer-events:none;}
.rwinpu-nbtn.primary{background:#0054DB;color:white;border-color:#0054DB;}
.rwinpu-nbtn.primary:hover{background:#0046c0;}
.rwinpu-nbtn.done{background:#2A7A2A;color:white;border-color:#2A7A2A;}
#rwinpu-overlay .rwinpu-dots{display:flex;gap:7px;align-items:center;flex:1;justify-content:center;visibility:hidden;}
.rwinpu-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.28);cursor:pointer;transition:all .22s;}
.rwinpu-dot.on{background:white;transform:scale(1.6);}
.rwinpu-dot.past{background:rgba(255,255,255,.55);}

/* Animate-in */
.rwinpu-ai{opacity:0;transform:translateY(16px);transition:opacity .50s ease,transform .50s ease;}
.rwinpu-slide.rdy .rwinpu-ai{opacity:1;transform:none;}
.rwinpu-slide.rdy .rwinpu-ai:nth-child(1){transition-delay:.05s;}
.rwinpu-slide.rdy .rwinpu-ai:nth-child(2){transition-delay:.14s;}
.rwinpu-slide.rdy .rwinpu-ai:nth-child(3){transition-delay:.23s;}
.rwinpu-slide.rdy .rwinpu-ai:nth-child(4){transition-delay:.32s;}
.rwinpu-slide.rdy .rwinpu-ai:nth-child(5){transition-delay:.40s;}
.rwinpu-slide.rdy .rwinpu-ai:nth-child(6){transition-delay:.48s;}

/* Background photo layer */
.rwinpu-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(3px) brightness(.55) saturate(.85);transform:scale(1.05);}
.rwinpu-bg.dark{filter:blur(4px) brightness(.40) saturate(.75);}
.rwinpu-bg.heavy{filter:blur(5px) brightness(.32) saturate(.70);}
.rwinpu-bg.unblurred{filter:brightness(.55) saturate(.90);}
.rwinpu-overlay{position:absolute;inset:0;}

#rwinpu-overlay .rwinpu-content{position:absolute;inset:46px 0 96px 0;display:flex;flex-direction:column;justify-content:safe center;padding:32px clamp(10px, 1.5vw, 20px);z-index:5;overflow-y:auto;}
.rwinpu-content.left{align-items:flex-start;text-align:left;}
.rwinpu-content.center{align-items:center;text-align:center;}
.rwinpu-content.bottom{justify-content:flex-end;}

/* Typography */
#rwinpu-overlay .rwinpu-eyebrow{display:inline-block;background:#0054DB;color:white;font-size:12px;font-weight:800;letter-spacing:.20em;text-transform:uppercase;padding:10px 22px;border-radius:30px;margin-bottom:18px;}
.rwinpu-eyebrow.alert{background:rgba(192,57,43,.85);}
.rwinpu-eyebrow.glass{background:rgba(255,255,255,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.30);}
.rwinpu-t-mega{font-size:clamp(48px,8vw,96px);font-weight:900;color:white;line-height:.95;letter-spacing:-.035em;text-shadow:0 4px 24px rgba(0,0,0,.4);}
.rwinpu-t-huge{font-size:clamp(38px,6.2vw,72px);font-weight:900;color:white;line-height:1.0;letter-spacing:-.030em;text-shadow:0 3px 18px rgba(0,0,0,.35);}
.rwinpu-t-large{font-size:clamp(28px,4.6vw,52px);font-weight:900;color:white;line-height:1.05;letter-spacing:-.025em;text-shadow:0 2px 14px rgba(0,0,0,.30);}
.rwinpu-t-mid{font-size:clamp(20px,3vw,32px);font-weight:800;color:white;line-height:1.15;letter-spacing:-.015em;text-shadow:0 2px 10px rgba(0,0,0,.25);}
.rwinpu-t-body{font-size:clamp(15px,1.9vw,21px);color:rgba(255,255,255,.92);font-weight:500;line-height:1.45;text-shadow:0 1px 8px rgba(0,0,0,.30);}
.rwinpu-t-blue{color:#5fa3ff;}
.rwinpu-t-stress{color:#FFB7B0;}

/* Era grid (era picker slide) */
.rwinpu-mat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;width:100%;}
.rwinpu-mat-tile{position:relative;background:rgba(255,255,255,.10);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:2px solid rgba(255,255,255,.22);border-radius:14px;overflow:hidden;cursor:pointer;transition:all .18s;height:200px;display:flex;flex-direction:column;}
.rwinpu-mat-tile:hover{border-color:rgba(54,131,255,.7);transform:translateY(-2px);}
.rwinpu-mat-tile.on{border-color:#3683FF;background:rgba(54,131,255,.18);box-shadow:0 0 0 2px rgba(54,131,255,.4),0 8px 24px rgba(0,84,219,.35);}
.rwinpu-mat-tile-img{flex:1;background-size:cover;background-position:center;min-height:0;}
.rwinpu-mat-tile-meta{padding:8px 12px;background:rgba(0,0,0,.55);border-top:1px solid rgba(255,255,255,.10);}
.rwinpu-mat-tile-name{font-size:13px;font-weight:800;color:white;letter-spacing:.02em;margin-bottom:2px;}
.rwinpu-mat-tile-sub{font-size:10px;font-weight:500;color:rgba(255,255,255,.72);line-height:1.35;}
.rwinpu-mat-tile-check{position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);transition:all .18s;z-index:2;}
.rwinpu-mat-tile.on .rwinpu-mat-tile-check{opacity:1;transform:scale(1);}
.rwinpu-mat-tile-check svg{width:12px;height:12px;}

/* Detail slide layout — split with photo half and bullets half */
.rwinpu-detail-photo{flex:1;position:relative;overflow:hidden;}
.rwinpu-detail-photo img{width:100%;height:100%;object-fit:cover;}
.rwinpu-detail-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,transparent 60%,rgba(8,18,52,.40) 100%);pointer-events:none;}
.rwinpu-detail-panel{flex:1.1;background:linear-gradient(155deg,#9A2B22 0%,#5A1812 100%);display:flex;flex-direction:column;justify-content:center;padding:32px 44px 32px 18px;overflow-y:auto;}

/* scoped: unscoped, this restyled every scrollbar in the host app */
.rwinpu-slide ::-webkit-scrollbar{width:5px;height:5px;}
.rwinpu-slide ::-webkit-scrollbar-track{background:transparent;}
.rwinpu-slide ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:3px;}

/* Diagram panel — replaces the photo when a page teaches physics, not condition */
.rwinpu-detail-photo.rwinpu-diagram{display:flex;align-items:center;justify-content:center;padding:24px 20px 76px;background:linear-gradient(150deg,#0A1836 0%,#0D2551 100%);}
.rwinpu-detail-photo.rwinpu-diagram svg{width:100%;height:100%;max-height:100%;display:block;font-family:'Work Sans',system-ui,sans-serif;}
.rwinpu-detail-photo.rwinpu-diagram::after{display:none;}
