﻿/* ============================================================
   Internmo  -  base styles
   Tailwind handles the bulk; this file = global resets,
   A4 paper styles, and print rules for resume PDF export.
   ============================================================ */

[x-cloak] { display: none !important; }

html { scroll-behavior: smooth; }

/* ---------- Page enter animations ---------- */
@keyframes ra-fade-up {
    from { opacity: 0; transform: translateY(18px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes ra-float {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-8px); }
}
@keyframes ra-glow-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(99, 102, 241, 0.35); }
    50%      { box-shadow: 0 0 24px 4px rgba(99, 102, 241, 0.2); }
}
.ra-animate-in {
    animation: ra-fade-up 0.65s ease forwards;
    opacity: 0;
}
.ra-animate-in-delay-1 { animation-delay: 0.08s; }
.ra-animate-in-delay-2 { animation-delay: 0.16s; }
.ra-animate-in-delay-3 { animation-delay: 0.24s; }
.ra-animate-in-delay-4 { animation-delay: 0.32s; }
.ra-float-slow { animation: ra-float 5s ease-in-out infinite; }
.ra-glow-pulse { animation: ra-glow-pulse 3s ease-in-out infinite; }

/* ---------- Wishlist heart button ---------- */
@keyframes ra-wish-pop {
    0%   { transform: scale(1); }
    35%  { transform: scale(1.35); }
    70%  { transform: scale(.92); }
    100% { transform: scale(1); }
}
@keyframes ra-wave {
    0%, 100% { transform: rotate(0deg); }
    25% { transform: rotate(14deg); }
    75% { transform: rotate(-8deg); }
}
@keyframes ra-wish-burst {
    0%   { box-shadow: 0 0 0 0 rgba(244, 63, 94, .55); }
    100% { box-shadow: 0 0 0 14px rgba(244, 63, 94, 0); }
}
.ra-wish-btn { cursor: pointer; will-change: transform; }
.ra-wish-btn:active { transform: scale(.92); }
.ra-wish-pop { animation: ra-wish-pop .45s ease, ra-wish-burst .55s ease; }
.ra-wish-saved svg { filter: drop-shadow(0 1px 2px rgba(244, 63, 94, .35)); }
.ra-wish-busy { opacity: .6; pointer-events: none; }

/* ---------- Dashboard sidebars (collapsed = icon-only) ---------- */
aside.ra-user-sidebar.is-collapsed .ra-dash-nav__text,
aside.ra-user-sidebar.is-collapsed .ra-dash-nav__badge {
    display: none !important;
}
aside.ra-user-sidebar.is-collapsed .ra-dash-nav {
    justify-content: center;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
aside.ra-user-sidebar.is-collapsed .ra-dash-nav > span:first-child {
    margin: 0;
}

aside.ra-admin-sidebar.is-collapsed .ra-admin-nav__txt {
    display: none !important;
}
aside.ra-admin-sidebar.is-collapsed a.flex.items-center.gap-3 {
    justify-content: center;
}

/* Dark nav link hover */
.ra-nav-dark-link {
    position: relative;
    transition: color 0.2s ease, transform 0.2s ease;
}
.ra-nav-dark-link::after {
    content: '';
    position: absolute;
    left: 0; right: 0; bottom: -2px;
    height: 2px;
    background: #fff;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s ease;
}
.ra-nav-dark-link:hover::after,
.ra-nav-dark-link.is-active::after {
    transform: scaleX(1);
}
.ra-nav-dark-link.is-active {
    font-weight: 700;
}
.ra-nav-dark-link:hover {
    transform: translateY(-1px);
}

/* ---------- Resume A4 paper ---------- */
.resume-page {
    width: 210mm;
    min-height: 297mm;
    background: #ffffff;
    box-shadow: 0 10px 40px rgba(15, 23, 42, 0.12);
    margin: 0 auto;
    overflow: hidden;
}

.resume-page-inner {
    padding: 14mm 14mm;
    box-sizing: border-box;
    width: 100%;
    min-height: 297mm;
}

/* scaled preview wrapper (so A4 fits inside editor) */
.resume-preview-scale {
    transform-origin: top center;
    transition: transform .2s ease;
}

/* ---------- Print rules (so PDF/print is pixel-perfect) ---------- */
@media print {
    body * { visibility: hidden; }
    .resume-page, .resume-page * { visibility: visible; }
    .resume-page {
        position: absolute;
        left: 0; top: 0;
        box-shadow: none;
        margin: 0;
    }
    @page {
        size: A4;
        margin: 0;
    }
}




