
#ib-solid{color:#eee;font:400 13px/1.5 system-ui,sans-serif;overflow:hidden;--side:48px;--half:24px}
#ib-solid *{box-sizing:border-box}
#ib-solid [hidden]{display:none!important}
#ib-solid .ib-space{height:580px;position:relative;perspective:1100px}
#ib-solid .ib-world{position:absolute;left:50%;top:50%;width:0;height:0;transform-style:preserve-3d}
#ib-solid .ib-piece{position:absolute;width:var(--side);height:var(--side);left:calc(var(--half) * -1);top:calc(var(--half) * -1);transform-style:preserve-3d;border:0;background:transparent;padding:0;color:#fff;font:inherit}
#ib-solid .ib-face{position:absolute;inset:0;background:linear-gradient(145deg,#1a1c1e,#08090a);border:1px solid #44474a;backface-visibility:hidden;pointer-events:none}
#ib-solid .ib-face:nth-child(1){transform:translateZ(var(--half))}
#ib-solid .ib-face:nth-child(2){transform:rotateY(90deg) translateZ(var(--half));background:#0c0d0e}
#ib-solid .ib-face:nth-child(3){transform:rotateY(180deg) translateZ(var(--half))}
#ib-solid .ib-face:nth-child(4){transform:rotateY(-90deg) translateZ(var(--half))}
#ib-solid .ib-face:nth-child(5){transform:rotateX(90deg) translateZ(var(--half));background:linear-gradient(135deg,#303234,#191b1c)}
#ib-solid .ib-face:nth-child(6){transform:rotateX(-90deg) translateZ(var(--half));background:#080808}
#ib-solid .ib-label{position:absolute;left:50%;top:50%;transform:translate3d(-50%,-50%,calc(var(--half) + 1px));opacity:0;transition:opacity .25s;display:flex;flex-direction:column;align-items:center;gap:4px;white-space:nowrap;pointer-events:none;text-shadow:0 1px 3px #000}
#ib-solid .ib-label svg{width:16px;height:16px}
#ib-solid.ib-open .ib-label{opacity:1;transition-delay:.45s}
#ib-solid .ib-piece[data-action]:hover .ib-face{border-color:#aaa}
#ib-solid .ib-launch{position:absolute;width:260px;height:260px;left:50%;transform:translate(-50%,-50%);background:transparent;border:0}
#ib-solid.ib-open .ib-launch{display:none}
#ib-solid .ib-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:180px;text-align:center}
#ib-solid small{font-size:10px;color:#92969a;letter-spacing:2px}
#ib-solid .ib-content{margin-top:12px}
#ib-solid input{width:100%;font:400 16px system-ui;color:#fff;background:#0a0a0a;border:1px solid #444;border-radius:6px;padding:10px;min-height:44px}
#ib-solid .ib-content strong{font-size:18px;font-weight:500;display:block;margin-bottom:4px}
#ib-solid .ib-content p{margin:6px 0;color:#aaa;font-size:12px}
#ib-solid .ib-results button{display:block;width:100%;background:#080808;border:0;border-bottom:1px solid #333;color:#eee;font:inherit;padding:8px 2px;min-height:44px}
#ib-solid .ib-tools{display:flex;justify-content:center}
#ib-solid .ib-tools button{font:inherit;background:#080808;color:#bfc1c3;border:1px solid #333;border-radius:6px}
#ib-solid .ib-tools button:hover{color:#fff;border-color:#888}
#ib-solid canvas{position:absolute;inset:0;pointer-events:none;height:100%}
#ib-solid .ib-face{display:none}
#ib-solid .ib-piece{visibility:hidden}
#ib-solid.ib-open .ib-piece[data-action]{visibility:visible}
#ib-solid .ib-label{transform:translate(-50%,-50%);font-size:11px}
#ib-solid .ib-launch{z-index:4}
#ib-solid .ib-label{display:none!important}
#ib-solid .ib-mode-options{display:flex;gap:8px;justify-content:center;margin-top:12px}
#ib-solid .ib-mode-options button{font:inherit;min-height:44px;padding:8px 12px;background:#111;color:#ddd;border:1px solid #555;border-radius:6px}
#ib-solid .ib-mode-options button[aria-pressed=true]{background:#eee;color:#111}
#ib-solid.ib-light{background:#f2f1ed;color:#222}
#ib-solid.ib-light small,#ib-solid.ib-light .ib-content p{color:#555}
#ib-solid.ib-light input,#ib-solid.ib-light .ib-results button,#ib-solid.ib-light .ib-tools button,#ib-solid.ib-light .ib-mode-options button{background:#faf9f6;color:#222;border-color:#aaa}
#ib-solid.ib-light .ib-mode-options button[aria-pressed=true]{background:#222;color:#fff}
@media(max-width:600px){#ib-solid{--side:34px;--half:17px}#ib-solid .ib-space{height:620px}#ib-solid .ib-center{width:140px}#ib-solid .ib-label{font-size:10px}}
@media(prefers-reduced-motion:reduce){#ib-solid *{transition:none!important}}

.account-header[hidden]{display:none!important}
.rubic-header{width:100%;position:relative;margin:0 auto 18px}
#ib-solid{border-radius:24px;background:#000}
#ib-solid:not(.ib-open) .ib-space{height:300px}
#ib-solid .ib-tools{gap:8px}
#ib-solid .ib-tools button{min-height:44px;padding:8px 14px}
#ib-solid .ib-center .omni-search{display:block;width:100%;margin:0;position:relative}
#ib-solid .ib-center .omni-search input{padding:12px 8px;font-size:14px;min-width:0}
#ib-solid .ib-center .omni-magnifier{display:none}
#ib-solid #omniResults{width:min(290px,80vw);left:50%;transform:translateX(-50%);max-height:210px;overflow:auto;text-align:left}
#ib-solid .ib-piece:focus-visible{outline:2px solid #b5e36b;outline-offset:4px;border-radius:9px}
#ib-solid.ib-light{background:#eeeae2}
@media(max-width:600px){#ib-solid:not(.ib-open) .ib-space{height:280px}}

/* Reserve one stable header footprint; the expanded formation overlays the hero. */
.rubic-header{margin:0 auto;pointer-events:none}
#ib-solid,#ib-solid.ib-light{position:absolute;inset:0 0 auto;height:620px;overflow:visible;background:transparent;pointer-events:none}
#ib-solid .ib-space,#ib-solid:not(.ib-open) .ib-space{height:620px}
#ib-solid .ib-launch{top:145px;pointer-events:auto}
#ib-solid .ib-piece[data-action],#ib-solid .ib-center{pointer-events:auto}
#ib-solid .ib-tools{position:absolute;right:0;top:0;padding:0;pointer-events:auto}
#ib-solid .ib-tools button{background:transparent;border-color:transparent;font-size:11px;opacity:.65}
#ib-solid .ib-tools button:hover,#ib-solid .ib-tools button:focus-visible{opacity:1}
#ib-solid .ib-center{padding:10px 0;border-radius:12px;background:rgba(0,0,0,.88)}
#ib-solid.ib-light .ib-center{background:rgba(238,234,226,.94)}

/* Fixed overlay layer keeps every menu cube in front of the hero. */
.rubic-header{z-index:40;isolation:isolate}
#ib-solid canvas{z-index:1}
#ib-solid .ib-world{z-index:2}
#ib-solid .ib-center{z-index:3}

/* Overscan the drawing buffer: CSS overflow alone cannot extend a WebGL canvas. */
#ib-solid canvas{inset:auto;left:0;top:-96px;width:100%;height:calc(100% + 192px)}
.rubic-header{height:145px}

/* Search straightens first, then extrudes a glass field from its right edge. */
#ib-solid .ib-center.ib-search-extension{transform:translateY(-50%);height:50px;padding:0;text-align:left;background:linear-gradient(115deg,rgba(255,255,255,.13),rgba(255,255,255,.035) 55%,rgba(255,255,255,.09));border:1px solid rgba(255,255,255,.25);border-left:0;box-shadow:inset 0 1px 0 #ffffff38,inset 0 -1px 0 #ffffff12,0 10px 30px #0003;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%)}
#ib-solid .ib-search-extension>small{display:none}
#ib-solid .ib-search-extension .ib-content{margin:0}
#ib-solid .ib-search-extension .omni-search{max-width:none}
#ib-solid .ib-search-extension #omniSearch{height:48px;border:0;background:transparent;color:#eee;box-shadow:none;outline-offset:3px}
#ib-solid .ib-search-extension #omniResults{width:100%;left:0;right:0;transform:none;top:calc(100% + 9px);max-height:260px}
#ib-solid.ib-light .ib-search-extension{background:linear-gradient(115deg,#ffffff80,#ffffff30);border-color:#7775;box-shadow:inset 0 1px 0 #fff9,0 10px 30px #0001}
#ib-solid.ib-light .ib-search-extension #omniSearch{background:transparent;color:#222}

/* Match the projected front face of the straightened Search cube. */
#ib-solid .ib-center.ib-search-extension{height:var(--search-height,52px)}
#ib-solid .ib-search-extension #omniSearch{display:block;height:calc(var(--search-height,52px) - 2px);min-height:0;padding:0 42px 0 16px;outline:none;font-size:14px}
#ib-solid .ib-search-extension #omniSearch:focus{outline:2px solid #91c8ff}
#ib-solid .ib-search-extension .omni-magnifier{display:block;right:15px;top:50%;width:17px;height:17px;color:currentColor;opacity:.72;pointer-events:none}
@media(max-width:600px){#ib-solid .ib-search-extension #omniSearch{font-size:16px;padding-right:36px}#ib-solid .ib-search-extension .omni-magnifier{right:12px;width:16px;height:16px}}

/* Tuck the narrower glass extrusion behind the cube's right-hand edge. */
#ib-solid .ib-center.ib-search-extension{z-index:0;box-shadow:inset 0 1px 0 #ffffff22,inset 0 -1px 0 #ffffff0a,0 7px 22px #0002}
#ib-solid .ib-search-extension #omniSearch{padding-left:28px}
@media(max-width:600px){#ib-solid .ib-search-extension #omniSearch{padding-left:25px}}

/* Rounded glass end and lower extrusion aligned to the reference. */
#ib-solid .ib-center.ib-search-extension{border-radius:0 20px 20px 0}
#ib-solid .ib-search-extension #omniSearch{border-radius:0 19px 19px 0}

/* Keep the glass edge white until the input receives focus. */
#ib-solid .ib-center.ib-search-extension,
#ib-solid.ib-light .ib-center.ib-search-extension{border-color:var(--main-edge);box-shadow:inset 0 1px 0 #ffffff22,inset 0 -1px 0 #ffffff0a,0 7px 22px #0002}
#ib-solid .ib-search-extension #omniSearch:focus{outline:none}

#ib-solid .ib-center.ib-search-extension:focus-within{border-color:var(--main-edge)}

/* Thick frosted glass: translucent shadows, fine grain and a lit glass rim. */
#ib-solid .ib-search-extension #omniResults{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.055' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E"),linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 48%,rgba(255,255,255,.065));background-color:rgba(22,24,27,.58);backdrop-filter:blur(24px) saturate(125%);-webkit-backdrop-filter:blur(24px) saturate(125%);border:1px solid rgba(255,255,255,.36);box-shadow:inset 0 1px 1px #ffffff5c,inset 0 -1px 1px #ffffff1f,0 14px 36px #0005}
#ib-solid.ib-light .ib-search-extension #omniResults{background-color:rgba(245,242,235,.58);border-color:var(--main-edge)}
/* Allow the results to blur the page behind the search field. */
#ib-solid .ib-center.ib-search-extension:has(#omniResults:not([hidden])){backdrop-filter:none;-webkit-backdrop-filter:none}

#ib-solid .ib-search-extension #omniSearch:focus-visible{outline:2px solid var(--control-edge);outline-offset:2px}
