.showcase-shell{--tabs-height:64px;padding-bottom:calc(var(--tabs-height) + 28px + env(safe-area-inset-bottom))}
.viju-tabs{--tab-index:0;position:fixed;z-index:18;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(366px,calc(100% - 24px));height:64px;padding:5px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid oklch(100% 0 0 / .15);border-radius:999px;background:linear-gradient(180deg,oklch(15% 0 0 / .92),oklch(20% 0 0));box-shadow:inset 0 1px 0 oklch(100% 0 0 / .08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.viju-tabs__indicator{position:absolute;left:5px;top:5px;width:calc((100% - 10px)/4);height:52px;border:1px solid oklch(100% 0 0 / .09);border-radius:999px;background:oklch(100% 0 0 / .075);transform:translateX(calc(var(--tab-index)*100%));transition:transform 280ms cubic-bezier(.22,.8,.24,1);pointer-events:none}
.viju-tab{position:relative;min-width:0;min-height:52px;padding:3px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:oklch(82% 0 0);background:transparent;cursor:pointer;border-radius:999px;touch-action:manipulation}
.viju-tab__icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:color 220ms;color:oklch(80% 0 0)}
.viju-tab__icon svg{display:block;width:24px;height:24px;overflow:visible}
.viju-tab__icon img{display:block;width:24px;height:24px;object-fit:contain}
.viju-tab[data-tab="compatibility"] .viju-tab__icon img{filter:grayscale(1);transition:filter 220ms}
.viju-tab[data-tab="compatibility"][aria-selected="true"] .viju-tab__icon img{filter:none}
.viju-tab__icon .viju-tab__avatar{width:28px;height:28px;border:2px solid oklch(65% 0 0);background:linear-gradient(0deg,#FA2021,#FDB33A) border-box;border-radius:50%;object-fit:cover;object-position:50% 18%;transition:border-color 180ms ease}
.viju-tab[aria-selected="true"] .viju-tab__avatar{border-color:transparent}
.viju-tab__label{font-size:9px;font-weight:500;line-height:12px;letter-spacing:0}
.viju-tab[aria-selected="true"]{color:var(--fg)}
.viju-tab[aria-selected="true"] .viju-tab__icon{color:var(--accent-blue)}
.viju-tab:focus-visible,.viju-tab-panel a:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}
@media(hover:hover){.viju-tab:hover{color:var(--fg);background:oklch(100% 0 0 / .035)}}
.registration-feed{bottom:calc(82px + env(safe-area-inset-bottom))}
.viju-tab-panel{position:relative;z-index:1;min-height:calc(100dvh - 94px);padding:102px 22px 36px}
.viju-tab-panel[hidden],.cards-board[hidden]{display:none!important}
.viju-tab-panel.is-entering{animation:viju-tab-enter 260ms cubic-bezier(.22,.8,.24,1) both}
.viju-tab-panel h1{margin:0 0 24px;font-size:28px;line-height:1.2;font-weight:500}
.viju-tab-panel h2{margin:0;font-size:19px;font-weight:500}
.viju-tab-panel p{font-size:16px;line-height:1.5;color:oklch(82% 0 0)}
.viju-tab-panel__empty{padding:42px 0 24px;text-align:center}
.viju-tab-panel__zodiac{width:70px;height:70px;object-fit:contain;margin-bottom:24px}
.viju-tab-panel__link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:16px 0;color:var(--fg);text-decoration:none;border-bottom:1px solid var(--border);transition:background 180ms}
.viju-tab-panel__link:hover{background:oklch(100% 0 0 / .04);color:var(--fg)}
.viju-tab-panel__link svg{width:20px;height:20px;flex:none}
.viju-tab-panel__person{display:flex;align-items:center;gap:16px;margin-bottom:28px}
.viju-tab-panel__person img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:2px solid var(--accent-blue)}
.viju-tab-panel__person p{margin:5px 0 0}
.viju-tab-panel__contact{display:flex;align-items:center;gap:14px;min-height:80px;color:var(--fg);text-decoration:none;border-bottom:1px solid var(--border)}
.viju-tab-panel__contact img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.viju-tab-panel__contact small{display:block;margin-top:4px;font-size:14px;color:oklch(82% 0 0)}
.viju-tab-panel__contact:focus-visible{outline:2px solid var(--accent-blue)}
@keyframes viju-tab-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:350px){.viju-tabs{width:calc(100% - 16px)}}
@media(prefers-reduced-motion:reduce){.viju-tabs__indicator,.viju-tab__icon,.viju-tab__avatar{transition:none}.viju-tab-panel.is-entering{animation:none}}
