/* /Components/Layout/HomeLayout.razor.rz.scp.css */
.homeStyle[b-xgeqazpzml] {
    background: linear-gradient(to right, rgba(255,255,255,.95) 0%, rgba(0,0,0, .80) 40%, rgba(255,255,255,.95) 100%), url("/img/MWBackdropBG.jpg");
    color: var(--mw-dark-color);
}
/* /Components/Layout/HomeMenu.razor.rz.scp.css */
body[b-ok4k7lqkt0] {
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-lrfajviucr] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-lrfajviucr] {
    flex: 1;
}

.sidebar[b-lrfajviucr] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-lrfajviucr] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-lrfajviucr]  a, .top-row[b-lrfajviucr]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-lrfajviucr]  a:hover, .top-row[b-lrfajviucr]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-lrfajviucr]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-lrfajviucr] {
        justify-content: space-between;
    }

    .top-row[b-lrfajviucr]  a, .top-row[b-lrfajviucr]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-lrfajviucr] {
        flex-direction: row;
    }

    .sidebar[b-lrfajviucr] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-lrfajviucr] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-lrfajviucr]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-lrfajviucr], article[b-lrfajviucr] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-2t0agc46mr] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-2t0agc46mr] {
    height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-2t0agc46mr] {
    font-size: 1.1rem;
}

.bi[b-2t0agc46mr] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-2t0agc46mr] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-2t0agc46mr] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-2t0agc46mr] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-2t0agc46mr] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-2t0agc46mr] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-2t0agc46mr] {
        padding-bottom: 1rem;
    }

    .nav-item[b-2t0agc46mr]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-2t0agc46mr]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-2t0agc46mr]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-2t0agc46mr] {
        display: none;
    }

    .collapse[b-2t0agc46mr] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }
    
    .nav-scrollable[b-2t0agc46mr] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/PortfolioLayout.razor.rz.scp.css */


/* Custom utility for that neon glow */
.hacker-border-right[b-qtrtjoljry] {
    border-right: 1px solid var(--accent-glow);
    box-shadow: 2px 0 10px rgba(0, 243, 255, 0.1);
}

h1:not(.glitch-title)[b-qtrtjoljry], h2:not(.pane-title)[b-qtrtjoljry], .top-row[b-qtrtjoljry] {
    display: none !important;
}

.app-shell[b-qtrtjoljry] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow: hidden;
}

.system-header[b-qtrtjoljry] {
    height: 40px;
    display: flex;
    align-items: center;
    padding: 0 20px;
    background: #000;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.3);
    z-index: 2000; /* Extremely high to stay above all page content */
}

.header-left[b-qtrtjoljry] {
    flex: 1;
    display: flex;
    align-items: center;
}

.header-center[b-qtrtjoljry] {
    flex: 2;
    display: flex;
    justify-content: center;
}

.header-right[b-qtrtjoljry] {
    flex: 1;
    display: flex;
    justify-content: flex-end; /* Pins clock to the far right */
}

.header-path-group[b-qtrtjoljry] {
    display: flex;
    align-items: center;
    gap: 15px; /* Space between button and path */
}

/* Path Styling */
.path-display[b-qtrtjoljry] {
    font-family: 'OCR A Extended', monospace;
    font-size: 0.85rem;
    color: var(--accent-color);
    background: rgba(var(--accent-rgb), 0.1);
    padding: 2px 12px;
    border-radius: 4px;
    border: 1px solid rgba(var(--accent-rgb), 0.2);
}

.path-prefix[b-qtrtjoljry] {
    opacity: 0.6;
}

/* Ensure the sidebar component actually fills that grid space */
SideBar[b-qtrtjoljry] {
    grid-column: 1;
    grid-row: 1 / span 2; /* Make it go all the way to the bottom */
    background-color: #050505;
    border-right: 1px solid var(--accent-glow);
    display: block; /* Important for Blazor components */
    min-width: 260px;
}

/* 1. Sidebar: Column 1, spans both Row 1 and Row 2 */
.sidebar-wrapper[b-qtrtjoljry] {
    grid-column: 1;
    grid-row: 1 / span 2;
    border-right: 1px solid var(--accent-glow);
    background: #050505;
    z-index: 10;
}

.sidebar-area[b-qtrtjoljry] {
    grid-area: sidebar;
    border-right: 1px solid #222;
}

.sidebar-wrapper.system-locked[b-qtrtjoljry] {
    filter: blur(8px) brightness(0.3);
    pointer-events: none;
    position: relative;
    transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

    /* Optional: Add a "LOCKED" watermark over the sidebar */
    .sidebar-wrapper.system-locked[b-qtrtjoljry]::after {
        content: "LOCKED";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: rgba(255, 0, 60, 0.5);
        font-size: 2rem;
        letter-spacing: 10px;
        font-family: 'OCR A Extended', monospace;
        z-index: 10;
    }

.right-side-container[b-qtrtjoljry] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 100%;
}

/* Adjust your sidebar and main container to start BELOW the header */
.sidebar-wrapper[b-qtrtjoljry],
.right-side-container[b-qtrtjoljry] {
    height: calc(100vh - 40px); /* Subtract header height */
}

/* Ensure the main workspace respects the header's height */
.main-workspace[b-qtrtjoljry] {
    display: flex;
    flex: 1; /* Takes up all remaining vertical space */
    overflow: hidden;
}

.main-stage[b-qtrtjoljry] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none; /* Firefox */
}

    .main-stage[b-qtrtjoljry]::-webkit-scrollbar {
        display: none; /* Chrome, Safari, Edge */
    }

.main-stage.closing[b-qtrtjoljry] {
    filter: brightness(0.5) blur(5px);
    transform: scale(0.98);
    transition: all 0.5s ease;
    pointer-events: none;
}

.terminal-container[b-qtrtjoljry] {
    height: 200px; /* Or whatever height you prefer */
    width: 100%;
    flex-shrink: 0; /* Prevents the stage from squishing it */
    border-top: 1px solid var(--accent-glow);
}

.global-action-bar[b-qtrtjoljry] {
    position: fixed; /* Changed from absolute to fixed */
    top: 0;
    left: 260px; /* Aligns it exactly where the sidebar ends */
    right: 0;
    height: 40px;
    background: #0a0a0a;
    border-bottom: 1px solid var(--accent-glow);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    z-index: 9999; /* Higher than everything else in the app */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}

.header-exit-btn[b-qtrtjoljry] {
    background: rgba(255, 0, 60, 0.1); /* Subtle red tint */
    border: 1px solid rgba(255, 0, 60, 0.4);
    color: #ff003c;
    font-family: 'OCR A Extended', monospace;
    font-size: 0.7rem;
    padding: 2px 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    text-transform: uppercase;
}

    .header-exit-btn:hover[b-qtrtjoljry] {
        background: #ff003c;
        color: #000;
        box-shadow: 0 0 10px #ff003c;
    }

.key-hint[b-qtrtjoljry] {
    opacity: 0.7;
    font-weight: bold;
    margin-right: 4px;
}

.ctrl-key[b-qtrtjoljry] {
    color: var(--accent-glow);
    margin-right: 5px;
}

@media (max-width: 768px) {
    .app-shell[b-qtrtjoljry] {
        grid-template-columns: 1fr;
        grid-template-rows: 40px 1fr 100px;
        grid-template-areas:
            "header"
            "content"
            "terminal";
    }

    .sidebar-area[b-qtrtjoljry] {
        display: none;
    }
    /* Hide sidebar on mobile, use a hamburger menu instead */
}

.crt-overlay[b-qtrtjoljry] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    /* 1. Pointer events must be none so you can still click things! */
    pointer-events: none;
    z-index: 9999;
    /* 2. Create the Scanlines */
    background: linear-gradient( rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50% ), linear-gradient( 90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03) );
    background-size: 100% 4px, 3px 100%; /* Line height of 4px */
    /* 3. The Vignette (Darkened edges) */
    box-shadow: inset 0 0 100px rgba(0,0,0,0.5);
    opacity: 0.15; /* Keep it subtle so it's not annoying */
}

    /* 4. Optional: The "Flicker" Effect */
    .crt-overlay[b-qtrtjoljry]::after {
        content: " ";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: rgba(18, 16, 16, 0.1);
        opacity: 0;
        z-index: 10000;
        pointer-events: none;
        animation: flicker-b-qtrtjoljry 0.15s infinite;
    }

.screen-power-on[b-qtrtjoljry] {
    animation: turn-on-b-qtrtjoljry 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}

@keyframes turn-on-b-qtrtjoljry {
    0% {
        transform: scale(1, 0.8) translate3d(0, 0, 0);
        filter: brightness(30);
        opacity: 1;
    }

    3.5% {
        transform: scale(1, 0.8) translate3d(0, 100%, 0);
    }

    3.6% {
        transform: scale(1, 0.8) translate3d(0, -100%, 0);
        opacity: 1;
    }

    100% {
        transform: scale(1, 1) translate3d(0, 0, 0);
        filter: brightness(1);
        opacity: 1;
    }
}

@keyframes flicker-b-qtrtjoljry {
    0% {
        opacity: 0.27861;
    }

    5% {
        opacity: 0.34769;
    }

    10% {
        opacity: 0.23604;
    }

    100% {
        opacity: 0.3500;
    }
}

.reboot-flicker[b-qtrtjoljry] {
    animation: reboot-sequence-b-qtrtjoljry 0.8s ease-out forwards;
}

@keyframes reboot-sequence-b-qtrtjoljry {
    0% {
        opacity: 1;
        filter: brightness(1);
    }

    20% {
        opacity: 0;
        filter: brightness(10);
    }

    40% {
        opacity: 0.8;
        filter: contrast(2);
    }

    60% {
        opacity: 0;
        transform: scaleY(0.01);
    }

    80% {
        opacity: 1;
        transform: scaleY(1);
        filter: sepia(1);
    }

    100% {
        opacity: 1;
        filter: none;
    }
}

.system-footer[b-qtrtjoljry] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    background: rgba(0, 0, 0, 0.8);
    border-top: 1px solid rgba(var(--accent-rgb), 0.3);
    font-size: 0.75rem;
    color: #888;
}

.uptime-val[b-qtrtjoljry] {
    color: var(--accent-color);
    font-family: 'OCR A Extended', monospace;
    margin-left: 8px;
    text-shadow: 0 0 5px rgba(var(--accent-rgb), 0.5);
}

.label[b-qtrtjoljry] {
    letter-spacing: 1px;
}

.glitch-clock[b-qtrtjoljry] {
    font-family: 'OCR A Extended', monospace;
    color: var(--accent-color);
    font-size: 0.8rem;
    display: flex;
    gap: 8px;
    transition: all 0.1s ease;
}

.time-value[b-qtrtjoljry] {
    letter-spacing: 1px;
}

/* The Glitch Effect */
.clock-glitch[b-qtrtjoljry] {
    animation: glitch-skew-b-qtrtjoljry 0.2s infinite;
    color: #ff003c; /* Temporary red flash */
    text-shadow: 2px 0 #00fff9, -2px 0 #ff003c;
    opacity: 0.8;
}

@keyframes glitch-skew-b-qtrtjoljry {
    0% {
        transform: skew(0deg);
    }

    20% {
        transform: skew(3deg);
    }

    40% {
        transform: skew(-3deg);
    }

    60% {
        transform: skew(1deg);
    }

    80% {
        transform: skew(-1deg);
    }

    100% {
        transform: skew(0deg);
    }
}

.pulse-dot[b-qtrtjoljry] {
    height: 8px;
    width: 8px;
    background-color: var(--accent-color);
    border-radius: 50%;
    display: inline-block;
    margin-right: 10px;
    animation: pulse-b-qtrtjoljry 2s infinite;
}

@keyframes pulse-b-qtrtjoljry {
    0% {
        box-shadow: 0 0 0 0 rgba(var(--accent-rgb), 0.7);
    }

    70% {
        box-shadow: 0 0 0 10px rgba(var(--accent-rgb), 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(var(--accent-rgb), 0);
    }
}

@keyframes static-shift-b-qtrtjoljry {
    0% {
        background-position: 20% 10%;
    }

    100% {
        background-position: 80% 90%;
    }
}
/* /Components/Layout/TopNavFooter.razor.rz.scp.css */
.footerStyle[b-0moddc6fuu]{
    background-color: var(--cf-theme-900);
}

.footerStyle a[b-0moddc6fuu]{
    color: var(--cf-theme-200);
}

.footerStyle a:hover[b-0moddc6fuu] {
        color: var(--cf-theme-core);
    }

.bi[b-0moddc6fuu]{
    font-size: 1.5rem;
    padding-inline-start: .5rem;
}
/* /Components/Layout/TopNavMenu.razor.rz.scp.css */
.navStyle[b-hx5r6duyrj] {
    background-color: var(--cf-theme-850); /* Applies a theme-specific background color */
}

.nav-item[b-hx5r6duyrj] {
    --bs-navbar-hover-color: var(--cf-theme-400); /* Sets hover color for navbar items */
    --bs-nav-link-hover-color: var(--cf-theme-400); /* Sets hover color for nav links */
}

.dropdown-menu[b-hx5r6duyrj] {
    background-color: var(--cf-theme-900); /* Sets a custom background color for the dropdown menu */
}

.dropdown:has(.nav-link.active) .dropdown-toggle[b-hx5r6duyrj] {
    color: var(--bs-navbar-active-color); /* Changes color of dropdown toggle when an item is active */
}
/* /Components/Pages/Home.razor.rz.scp.css */
.welcome-container[b-l9cic4uo92] {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle, #0a0e14 0%, #000 100%);
    position: relative;
    overflow: hidden;
    font-family: 'Fira Code', monospace;
}

/* The Glitch Title */
.glitch-title[b-l9cic4uo92] {
    font-size: 3rem;
    font-weight: bold;
    color: #fff;
    position: relative;
    text-shadow: 0.05em 0 0 #00fffc, -0.05em -0.025em 0 #fc00ff, 0.025em 0.05em 0 #fffc00;
    animation: glitch-b-l9cic4uo92 1s infinite;
}

@keyframes glitch-b-l9cic4uo92 {
    0% {
        text-shadow: 0.05em 0 0 #00fffc, -0.05em -0.025em 0 #fc00ff;
    }

    15% {
        text-shadow: -0.05em -0.025em 0 #00fffc, 0.025em 0.025em 0 #fc00ff;
    }

    49% {
        text-shadow: 0.05em 0 0 #00fffc, -0.05em -0.025em 0 #fc00ff;
    }

    50% {
        text-shadow: -0.025em 0.05em 0 #00fffc, 0.05em 0 0 #fc00ff;
    }

    100% {
        text-shadow: -0.025em 0 0 #00fffc, -0.025em -0.025em 0 #fc00ff;
    }
}

/* Moving Scan Grid */
.scan-grid[b-l9cic4uo92] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(rgba(0, 255, 65, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 255, 65, 0.05) 1px, transparent 1px);
    background-size: 50px 50px;
    animation: grid-move-b-l9cic4uo92 20s linear infinite;
    z-index: 1;
}

@keyframes grid-move-b-l9cic4uo92 {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 0 1000px;
    }
}

.status-ok[b-l9cic4uo92] {
    color: var(--accent-glow);
    font-weight: bold;
}

.action-prompt[b-l9cic4uo92] {
    margin-top: 50px;
    color: var(--accent-glow);
    letter-spacing: 5px;
    animation: pulse-b-l9cic4uo92 1.5s infinite;
}

@keyframes pulse-b-l9cic4uo92 {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.3;
        transform: scale(0.95);
    }
}

.reboot-flicker[b-l9cic4uo92] {
    animation: reboot-flicker-anim-b-l9cic4uo92 0.5s ease-out;
}

.bios-screen[b-l9cic4uo92] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    color: #00FF41;
    font-family: 'Courier New', monospace;
    padding: 40px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    text-shadow: 0 0 5px #00FF41;
}

.bios-header[b-l9cic4uo92] {
    border-bottom: 1px solid #00FF41;
    margin-bottom: 20px;
    padding-bottom: 5px;
}

.loader-bar[b-l9cic4uo92] {
    width: 250px;
    height: 4px;
    background: #111;
    margin-top: 20px;
    position: relative;
    border: 1px solid #00FF41;
}

    .loader-bar[b-l9cic4uo92]::after {
        content: '';
        position: absolute;
        height: 100%;
        background: #00FF41;
        animation: bios-load-b-l9cic4uo92 2s forwards;
    }

@keyframes bios-load-b-l9cic4uo92 {
    0% {
        width: 0;
    }

    100% {
        width: 100%;
    }
}

@keyframes reboot-flicker-anim-b-l9cic4uo92 {
    0% {
        filter: brightness(10) white;
        opacity: 0;
    }

    50% {
        filter: brightness(1);
        opacity: 1;
    }

    100% {
        filter: none;
    }
}
/* /Components/Pages/IdentityView.razor.rz.scp.css */

.identity-wrapper[b-jkck17v7e6] {
    padding: 30px;
    margin-left: 20px; /* Adjust this to match your sidebar width */
    height: calc(100vh - 120px); /* Adjust to match your header height */
    overflow-y: auto;
    box-sizing: border-box;
}

.identity-grid[b-jkck17v7e6] {
    display: grid;
    /* This keeps the form at a readable 400px while the bio/skills take the rest */
    grid-template-columns: 1fr 400px;
    gap: 40px;
    align-items: start;
    max-width: 1200px; /* Centers the content on ultra-wide monitors */
    margin: 0 auto;
}

[b-jkck17v7e6] .identity-grid {
    display: grid;
    grid-template-columns: 260px 1fr 260px;
    gap: 20px;
    align-items: start;
    margin-top: 20px; /* Fixes the clipping at the top */
}

.identity-main[b-jkck17v7e6] {
    display: flex;
    flex-direction: column;
    gap: 20px; /* Space between Bio and Skills */
}

/* Fix the 'Residue' by giving the editor a solid, non-transparent background */
[b-jkck17v7e6] .data-pane {
    background-color: #0a0a0a !important;
    border: 1px solid rgba(255, 215, 0, 0.2);
    z-index: 5;
    position: relative;
    overflow: hidden;
}

.identity-layout[b-jkck17v7e6] {
    /* Ensure the content starts below the header and away from the sidebar */
    padding: 40px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 30px;
    height: 100%;
    overflow-y: auto; /* Allows scrolling if you add more skills later */
}

/* If you are using the workspace-grid, ensure it has a margin-left */
.workspace-grid[b-jkck17v7e6] {
    margin-top: 10px;
}

.identity-header[b-jkck17v7e6] {
    display: flex;
    gap: 10px;
    font-family: 'Fira Code', monospace;
    font-size: 0.65rem;
    color: #444;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.file-name[b-jkck17v7e6] {
    color: var(--accent-gold);
}

.security-clearance[b-jkck17v7e6] {
    margin-left: auto;
    color: #ff3b3b;
}

.dossier-grid[b-jkck17v7e6] {
    display: grid;
    /* Forces the left and right to be exactly these widths, middle gets everything else */
    grid-template-columns: 320px 1fr 300px;
    gap: 40px;
    width: 100%;
    align-items: start;
}

.neural-monitor[b-jkck17v7e6] {
    margin-top: 20px;
    padding: 10px;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.skill-row[b-jkck17v7e6] {
    margin-bottom: 12px;
}

.skill-label[b-jkck17v7e6] {
    display: block;
    font-size: 0.65rem;
    color: #888;
    margin-bottom: 4px;
    letter-spacing: 1px;
}

.meter-container[b-jkck17v7e6] {
    height: 4px;
    background: rgba(255, 255, 255, 0.05);
    width: 100%;
    overflow: hidden;
}

.meter-fill[b-jkck17v7e6] {
    height: 100%;
    box-shadow: 0 0 10px currentColor;
    animation: pulse-load-b-jkck17v7e6 2s infinite ease-in-out;
}

.logic[b-jkck17v7e6] {
    background: #FFD700;
    color: #FFD700;
}

.creative[b-jkck17v7e6] {
    background: #00F3FF;
    color: #00F3FF;
}

.stamina[b-jkck17v7e6] {
    background: #FF3B3B;
    color: #FF3B3B;
}

@keyframes pulse-load-b-jkck17v7e6 {
    0%, 100% {
        opacity: 1;
        transform: scaleX(1);
    }

    50% {
        opacity: 0.7;
        transform: scaleX(0.98);
    }
}

.progress-container[b-jkck17v7e6] {
    height: 8px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 4px;
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
}

.progress-bar[b-jkck17v7e6] {
    height: 100%;
    transition: width 1.5s ease-in-out;
}

.skill-label[b-jkck17v7e6] {
    display: flex;
    justify-content: space-between;
    font-size: 0.7rem;
    margin-bottom: 5px;
    letter-spacing: 1px;
}

.profile-frame[b-jkck17v7e6] {
    width: 150px;
    border: 2px solid var(--accent-color);
    padding: 5px;
    filter: grayscale(1) contrast(1.2);
    margin-bottom: 20px;
}

.data-pane[b-jkck17v7e6] {
    background: #000; /* Solid black background to hide anything behind it */
    border: 1px solid rgba(255, 255, 255, 0.1);
    position: relative;
    overflow: hidden; /* This is the primary 'shredder' for ghost text */
}

/* Make the code editor look like a holographic projection */
    .transparent-editor[b-jkck17v7e6] {
        height: 100%;
        width: 100%;
        display: flex;
        overflow: hidden !important;
    }
        /* Target the CodeEditorView inside to ensure it handles the scroll */
        .transparent-editor[b-jkck17v7e6]  .code-editor-container {
            overflow-y: auto;
            height: 100%;
        }

    /* Optional: Make the remaining scrollbar look Cyberpunk */
    [b-jkck17v7e6]::-webkit-scrollbar {
        width: 6px;
    }

    [b-jkck17v7e6]::-webkit-scrollbar-track {
        background: #050505;
    }

    [b-jkck17v7e6]::-webkit-scrollbar-thumb {
        background: var(--accent-glow);
        border-radius: 10px;
    }

    .system-stats-col[b-jkck17v7e6] {
        display: flex;
        flex-direction: column;
        gap: 12px; /* Pulls the log up close to the stats */
        justify-content: flex-start;
    }

.profile-frame[b-jkck17v7e6] {
    width: 140px;
    border: 1px solid var(--accent-color);
    box-shadow: 0 0 15px rgba(var(--accent-rgb), 0.3);
    margin-bottom: 10px;
}

.pane-content[b-jkck17v7e6] {
    padding: 20px;
}

.bio-layout[b-jkck17v7e6] {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

/* Ensure the form doesn't feel 'airy' */
.contact-side[b-jkck17v7e6] {
    width: 100%;
    background: rgba(var(--accent-rgb), 0.02);
    border: 1px solid rgba(var(--accent-rgb), 0.2);
}

/* Fix for the clipping at the top */
.workspace-pane[b-jkck17v7e6] {
    margin-bottom: 20px;
    background: rgba(0,0,0,0.4);
    border: 1px solid rgba(var(--accent-rgb), 0.2);
}

.bio-text h3[b-jkck17v7e6] {
    font-family: 'OCR A Extended', monospace;
    color: var(--accent-color);
    letter-spacing: 3px;
    margin-top: 0;
}

    .photo-frame[b-jkck17v7e6] {
        border: 2px solid #FFD700;
        padding: 8px; /* Space between photo and border */
        background: rgba(0,0,0,0.5);
        display: flex;
        justify-content: center;
        align-items: center;
        width: fit-content;
    }

        .photo-frame img[b-jkck17v7e6] {
            border: 1px solid rgba(255, 215, 0, 0.3); /* Thin inner border */
            max-height: 180px;
            width: auto;
        }
        /* Let's add that scanning line back in properly */
        .photo-frame[b-jkck17v7e6]::after {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 2px;
            background: #FFD700;
            box-shadow: 0 0 8px #FFD700;
            animation: scanning-b-jkck17v7e6 4s linear infinite;
            z-index: 5;
        }

    @keyframes scanning-b-jkck17v7e6 {
        0% {
            top: 0%;
        }

        100% {
            top: 100%;
        }
    }
    /* The moving scan line */
    .scan-line[b-jkck17v7e6] {
        position: absolute;
        width: 100%;
        height: 4px;
        background: rgba(255, 215, 0, 0.6);
        box-shadow: 0 0 15px #FFD700;
        top: 0;
        z-index: 10;
        animation: scan-move-b-jkck17v7e6 4s linear infinite;
    }
    /* The faint "Grid" overlay on the photo */
    .photo-overlay[b-jkck17v7e6] {
        position: absolute;
        inset: 0;
        background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03));
        background-size: 100% 2px, 3px 100%;
        pointer-events: none;
    }

    @keyframes scan-move-b-jkck17v7e6 {
        0% {
            top: -5%;
        }

        100% {
            top: 105%;
        }
    }
    /* Ensure the code editor stays contained and doesn't push the page down */
    .code-overlay-container[b-jkck17v7e6] {
        background: #0d0d0d; /* Slightly different shade to define the editor area */
        padding-left: 10px; /* Moves the editor slightly right, away from the edge */
        height: 100%;
        overflow: hidden;
    }
    /* Force the internal editor to stay within its box */
    [b-jkck17v7e6] .transparent-editor pre,
    [b-jkck17v7e6] .transparent-editor code {
        margin: 0;
        padding: 0;
        overflow: hidden !important;
    }

    .trace-module[b-jkck17v7e6] {
        margin-top: 15px;
        background: rgba(0, 243, 255, 0.03);
        border: 1px solid rgba(0, 243, 255, 0.1);
        padding: 10px;
        font-family: 'Fira Code', monospace;
        font-size: 0.65rem;
    }

    .log-header[b-jkck17v7e6] {
        color: #00F3FF;
        margin-bottom: 8px;
        border-bottom: 1px solid rgba(0, 243, 255, 0.2);
    }

    .log-line[b-jkck17v7e6] {
        color: #aaa;
        margin: 2px 0;
    }

    .pulse-text[b-jkck17v7e6] {
        color: #00F3FF;
        animation: log-flicker-b-jkck17v7e6 1.5s infinite;
    }

    @keyframes log-flicker-b-jkck17v7e6 {
        0%, 100% {
            opacity: 1;
        }

        50% {
            opacity: 0.4;
        }
    }

    .trace-body[b-jkck17v7e6] {
        background: rgba(0, 243, 255, 0.05);
        border-left: 2px solid #00F3FF;
        padding: 6px;
        height: 110px; /* Fixed height ensures it fits on most screens without scrolling */
        font-size: 0.7rem;
        overflow: hidden;
        font-family: 'Fira Code', monospace;
    }

    .trace-line[b-jkck17v7e6] {
        color: #00F3FF;
        margin-bottom: 2px;
        white-space: nowrap;
    }

.diagnostic-list[b-jkck17v7e6] {
    width: 100%;
    padding: 10px 0;
}

.skill-row[b-jkck17v7e6] {
    margin-bottom: 15px;
    width: 100%;
}

    .timestamp[b-jkck17v7e6] {
        color: #555;
        margin-right: 8px;
    }
    /* Flip Card Container */
    .flip-card[b-jkck17v7e6] {
        background-color: transparent;
        width: 280px;
        height: 280px;
        perspective: 1000px; /* Required for 3D effect */
        margin-bottom: 20px;
    }

    .flip-card-inner[b-jkck17v7e6] {
        position: relative;
        width: 100%;
        height: 100%;
        text-align: center;
        transition: transform 0.8s;
        transform-style: preserve-3d;
    }

    .flip-card:hover .flip-card-inner[b-jkck17v7e6] {
        transform: rotateY(180deg);
    }

    .flip-card-front[b-jkck17v7e6], .flip-card-back[b-jkck17v7e6] {
        position: absolute;
        width: 100%;
        height: 100%;
        -webkit-backface-visibility: hidden; /* Safari */
        backface-visibility: hidden;
        border: 2px solid var(--accent-glow);
    }

    .flip-card-back[b-jkck17v7e6] {
        background: rgba(var(--accent-rgb), 0.1);
        color: var(--accent-glow);
        transform: rotateY(180deg);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        backdrop-filter: blur(5px);
    }

    .clearance-badge[b-jkck17v7e6] {
        font-size: 1.2rem;
        font-weight: bold;
        border: 2px solid #FFD700;
        color: #FFD700;
        padding: 10px;
        margin-bottom: 15px;
    }

    .scan-line[b-jkck17v7e6] {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 2px;
        background: var(--accent-glow);
        box-shadow: 0 0 15px var(--accent-glow);
        animation: scan-b-jkck17v7e6 3s linear infinite;
    }

    @keyframes scan-b-jkck17v7e6 {
        0% {
            top: 0;
        }

        100% {
            top: 100%;
        }
    }

    .spec-box[b-jkck17v7e6] {
        background: rgba(255, 255, 255, 0.05);
        padding: 15px;
        margin-bottom: 15px;
        border-right: 3px solid #334155;
    }

        .spec-box.highlight[b-jkck17v7e6] {
            border-right: 3px solid #FFD700; /* Gold for the core identity */
        }
    /* If in Identity.razor.css, use ::deep to force it onto the generated HTML */
    [b-jkck17v7e6] .blink-fast {
        animation: simple-blink-b-jkck17v7e6 0.8s step-end infinite;
        color: #FFD700;
    }

    [b-jkck17v7e6] .blink-slow {
        animation: simple-blink-b-jkck17v7e6 2s step-end infinite;
        color: #00F3FF;
    }

    @keyframes simple-blink-b-jkck17v7e6 {
        0%, 100% {
            opacity: 1;
        }

        50% {
            opacity: 0;
        }
    }
    /* Global blinker to ensure it bypasses isolation */
    [b-jkck17v7e6] .force-blink {
        animation: system-blink-b-jkck17v7e6 1s step-end infinite;
        color: #00F3FF;
        font-weight: bold;
    }

    @keyframes system-blink-b-jkck17v7e6 {
        50% {
            opacity: 0;
        }
    }

.data-pane[b-jkck17v7e6], .code-viewport[b-jkck17v7e6], .code-overlay-container[b-jkck17v7e6] {
    /* 1. Ensure absolute opacity */
    background-color: #0b0b0b !important;
    /* 2. Force a new stacking context */
    z-index: 10;
    position: relative;
    /* 3. Hardware acceleration - forces the browser to 
       render this on the GPU, preventing 'trail' artifacts */
    transform: translateZ(0);
    backface-visibility: hidden;
    /* 4. Kill the scroll bleed */
    overflow-y: auto;
    overflow-x: hidden;
}

.terminal-form[b-jkck17v7e6] {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.input-line[b-jkck17v7e6] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.prompt[b-jkck17v7e6] {
    color: var(--accent-color);
    font-size: 0.8rem;
}

.term-input[b-jkck17v7e6] {
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    color: #fff;
    font-family: monospace;
    width: 100%;
    outline: none;
}

    .term-input:focus[b-jkck17v7e6] {
        border-color: var(--accent-color);
        box-shadow: 0 1px 0 var(--accent-color);
    }

.transmit-btn[b-jkck17v7e6] {
    margin-top: 10px;
    background: rgba(var(--accent-rgb), 0.1);
    border: 1px solid var(--accent-color);
    color: var(--accent-color);
    padding: 10px;
    cursor: pointer;
}

.view-raw-transmit-btn[b-jkck17v7e6] {
    background: rgba(0, 0, 0, 0.6);
    border: 1px solid var(--accent-color);
    color: var(--accent-color);
    padding: 10px 20px;
    font-family: 'OCR A Extended', monospace;
    font-size: 0.8rem;
    cursor: pointer;
    text-decoration: none; /* For the <a> tag */
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;
}

    .view-raw-transmit-btn:hover[b-jkck17v7e6] {
        background: var(--accent-color);
        color: #000;
        box-shadow: 0 0 20px var(--accent-color);
    }

.dossier-actions[b-jkck17v7e6] {
    display: flex;
    gap: 15px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid rgba(var(--accent-rgb), 0.2);
}

.download-btn[b-jkck17v7e6] {
    background: rgba(var(--accent-rgb), 0.1);
    box-shadow: 0 0 10px rgba(var(--accent-rgb), 0.2);
    border-width: 2px;
}

.icon[b-jkck17v7e6] {
    font-weight: bold;
}

.typewriter-text[b-jkck17v7e6] {
    display: inline-block;
    overflow: hidden; /* Ensures the content is not revealed until the animation */
    border-right: .5em solid var(--accent-color); /* The typewriter cursor */
    white-space: nowrap; /* Keeps the content on a single line */
    margin: 0 auto;
    letter-spacing: .1em;
    animation: typing-b-jkck17v7e6 3.5s steps(40, end), blink-caret-b-jkck17v7e6 .75s step-end infinite;
}

/* The typing effect */
@keyframes typing-b-jkck17v7e6 {
    from {
        width: 0
    }

    to {
        width: 100%
    }
}

/* The typewriter cursor effect */
@keyframes blink-caret-b-jkck17v7e6 {
    from, to {
        border-color: transparent
    }

    50% {
        border-color: var(--accent-color);
    }
}

/* For longer paragraphs that need to wrap, we use a fade-in instead */
.decode-fade[b-jkck17v7e6] {
    animation: decode-glitch-b-jkck17v7e6 2s ease-out forwards;
}

@keyframes decode-glitch-b-jkck17v7e6 {
    0% {
        opacity: 0;
        filter: blur(10px);
    }

    100% {
        opacity: 1;
        filter: blur(0);
    }
}

.progress-glow[b-jkck17v7e6] {
    animation: pulse-glow-b-jkck17v7e6 2s infinite alternate;
}

@keyframes pulse-glow-b-jkck17v7e6 {
    from {
        opacity: 0.4;
    }

    to {
        opacity: 0.8;
        box-shadow: 0 0 15px var(--accent-color);
    }
}

.decode-fade[b-jkck17v7e6] {
    opacity: 0;
    transform: translateY(10px);
    filter: blur(5px);
    animation: reveal-text-b-jkck17v7e6 1.5s ease-out forwards;
}

@keyframes reveal-text-b-jkck17v7e6 {
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

.progress-bar[b-jkck17v7e6] {
    height: 100%;
    width: 0; /* Start at zero */
    animation: charge-up-b-jkck17v7e6 2s ease-out forwards;
    animation-delay: 2s; /* Wait for the dossier to start decrypting */
}

@keyframes charge-up-b-jkck17v7e6 {
    from {
        width: 0;
    }

    to {
        width: var(--final-width);
    }
    /* Pass the value from Blazor */
}
/* /Components/Pages/LiveAppViewer.razor.rz.scp.css */
.workspace-grid[b-jwjobzrr1p] {
    display: grid;
    /* Column 1 (App): 1 part | Column 2 (Code): 1.5 parts | Column 3 (Dossier): 250px */
    grid-template-columns: 1fr 1.5fr 280px;
    height: calc(100vh - 200px);
    width: 100%;
    gap: 5px;
}

.workspace-pane[b-jwjobzrr1p] {
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #050505;
    border: 1px solid rgba(var(--accent-rgb), 0.3);
    overflow: hidden;
}

.code-container[b-jwjobzrr1p] {
    background-color: #050505 !important;
    min-height: 200px;
    position: relative;
    /* This creates a 'Solid Layer' that blocks the ghosting from the back */
    contain: paint;
    z-index: 2;
}

.pane-header[b-jwjobzrr1p] {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important; /* Forces title left, button right */
    align-items: center !important;
    width: 100% !important;
    box-sizing: border-box;
    padding: 5px 15px;
    background: rgba(0, 243, 255, 0.05); /* Cyan tint */
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.3);
    min-height: 40px;
}

.header-path[b-jwjobzrr1p] {
    flex: 1; /* Takes remaining space */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: 'Courier New', monospace;
}

.status-indicator[b-jwjobzrr1p] {
    width: 8px;
    height: 8px;
    background: var(--accent-color);
    border-radius: 50%;
    display: inline-block;
    margin-right: 10px;
    box-shadow: 0 0 8px var(--accent-color);
    animation: heartbeat-b-jwjobzrr1p 2s infinite;
}

@keyframes heartbeat-b-jwjobzrr1p {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.2);
        opacity: 0.5;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.external-link-btn[b-jwjobzrr1p] {
    display: inline-block !important;
    flex-shrink: 0; /* Prevents button from being squashed */
    margin-left: 10px;
    padding: 4px 10px;
    border: 1px solid var(--accent-color);
    color: var(--accent-color) !important;
    font-size: 0.65rem;
    text-decoration: none;
    text-transform: uppercase;
    background: transparent;
    cursor: pointer;
    z-index: 100; /* Ensures it's above the iframe */
}

    .external-link-btn:hover[b-jwjobzrr1p] {
        background: var(--accent-color);
        color: #000 !important;
        box-shadow: 0 0 10px var(--accent-color);
    }

.workspace-grid[b-jwjobzrr1p] {
    display: grid;
    /* This creates two equal columns with a small gap for the accent border */
    grid-template-columns: 1fr 1fr;
    height: calc(100vh - 220px); /* Leave room for header and terminal */
    gap: 4px;
    background: #000;
    padding: 10px;
}

.workspace-bridge[b-jwjobzrr1p] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    font-size: 0.6rem;
    color: var(--accent-color);
    text-orientation: sideways; /* Makes text vertical for a techy look */
}

.stream-line[b-jwjobzrr1p] {
    width: 2px;
    height: 100%;
    background: linear-gradient(to bottom, transparent, var(--accent-color), transparent);
    animation: flow-down-b-jwjobzrr1p 2s infinite linear;
}

@keyframes flow-down-b-jwjobzrr1p {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(100%);
    }
}

.code-wrapper[b-jwjobzrr1p] {
    background: #050505 !important;
    position: relative;
    z-index: 5;
    /* This prevents the "LOADING..." text from staying visible 
       once the real code arrives */
    overflow: hidden;
}

/* Ensure the app view doesn't clip */
.app-view-port[b-jwjobzrr1p] {
    flex: 1;
    overflow: auto;
    padding: 20px;
    background-image: radial-gradient(circle at 2px 2px, rgba(255,255,255,0.05) 1px, transparent 0);
    background-size: 20px 20px; /* Subtle tech-grid background */
}

.code-container[b-jwjobzrr1p], .preview-frame[b-jwjobzrr1p] {
    /* This ensures that even if the content fails, the box is opaque */
    background: #000 !important;
    display: block;
    position: relative;
    overflow: hidden;
    /* Force new layer to stop text smearing */
    isolation: isolate;
}

/* Add a solid divider to separate the two panes visually and physically */
.workspace-pane[b-jwjobzrr1p]::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--accent-color);
    box-shadow: 0 0 10px var(--accent-color);
    z-index: 5;
}

.preview-frame[b-jwjobzrr1p] {
    background-color: #000000 !important; /* Pure black to prevent bleed-through */
    position: relative;
    overflow: hidden;
    /* This creates a hard clipping boundary for the iframe */
    contain: strict;
    /* Forces the browser to treat this as a separate layer */
    transform: translate3d(0, 0, 0);
}

.live-side[b-jwjobzrr1p] {
    display: flex;
    flex-direction: column;
    height: 100%; /* Ensure the pane fills the grid row */
    min-height: 500px; /* Force a minimum height so it can't collapse */
    background: #000 !important;
}

.app-iframe[b-jwjobzrr1p] {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

.remote-feed-container[b-jwjobzrr1p] {
    flex: 1; /* Fills all vertical space in the pane */
    position: relative;
    width: 100%;
    background: #000;
}

.remote-feed-container[b-jwjobzrr1p], .code-view-port[b-jwjobzrr1p] {
    flex: 1; /* This forces the content to fill the pane height */
    position: relative;
    width: 100%;
}

.workspace-grid[b-jwjobzrr1p] {
    display: grid;
    /* App and Code take equal space, Telemetry takes 250px */
    grid-template-columns: 1fr 1.2fr 250px;
    height: calc(100vh - 200px);
    gap: 2px;
}

.telemetry-content[b-jwjobzrr1p] {
    padding: 20px;
    font-size: 0.7rem;
    color: #888;
}

.spec-group[b-jwjobzrr1p] {
    margin-bottom: 25px;
}

.tag[b-jwjobzrr1p] {
    display: inline-block;
    padding: 2px 6px;
    border: 1px solid var(--accent-color);
    color: var(--accent-color);
    margin: 2px;
    font-size: 0.6rem;
}

.telemetry-footer[b-jwjobzrr1p] {
    margin-top: auto; /* Pushes the button to the bottom of the pane */
    padding-top: 20px;
    border-top: 1px solid rgba(var(--accent-rgb), 0.2);
}

.action-area[b-jwjobzrr1p] {
    margin-top: 15px;
    padding: 10px 0;
}

.launch-node-btn[b-jwjobzrr1p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: rgba(var(--accent-rgb), 0.1);
    border: 1px solid var(--accent-color);
    color: var(--accent-color) !important;
    padding: 12px;
    font-size: 0.8rem;
    font-weight: bold;
    letter-spacing: 2px;
    transition: all 0.3s ease;
    text-align: center;
}

    .launch-node-btn:hover[b-jwjobzrr1p] {
        background: var(--accent-color);
        color: #000 !important;
        box-shadow: 0 0 20px rgba(var(--accent-rgb), 0.5);
    }

.btn-subtext[b-jwjobzrr1p] {
    font-size: 0.5rem;
    opacity: 0.7;
    margin-top: 4px;
    letter-spacing: 1px;
}

/* Static Preview Styling */
.static-preview-wrapper[b-jwjobzrr1p] {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #080808;
    position: relative;
}

.static-svg[b-jwjobzrr1p] {
    width: 60%;
    opacity: 0.6;
    filter: drop-shadow(0 0 10px var(--accent-color));
}

.preview-overlay[b-jwjobzrr1p] {
    margin-top: 20px;
    text-align: center;
    font-size: 0.6rem;
    color: var(--accent-color);
}

/* Copy Button Styling */
.path-container[b-jwjobzrr1p] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(255,255,255,0.03);
    padding: 4px 8px;
    border-radius: 4px;
}

.copy-btn[b-jwjobzrr1p] {
    background: transparent;
    border: none;
    color: var(--accent-color);
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 0.2s;
}

    .copy-btn:hover[b-jwjobzrr1p] {
        opacity: 1;
    }

.github-repo-btn[b-jwjobzrr1p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: transparent;
    border: 1px solid rgba(var(--accent-rgb), 0.5);
    color: var(--accent-color) !important;
    padding: 10px;
    margin-top: 10px;
    font-size: 0.7rem;
    font-weight: bold;
    transition: all 0.3s ease;
}

    .github-repo-btn:hover[b-jwjobzrr1p] {
        background: rgba(var(--accent-rgb), 0.2);
        border-color: var(--accent-color);
        box-shadow: 0 0 15px rgba(var(--accent-rgb), 0.3);
    }

.github-icon[b-jwjobzrr1p] {
    margin-bottom: 8px;
    filter: drop-shadow(0 0 5px var(--accent-color));
}

.github-repo-btn:hover .github-icon[b-jwjobzrr1p] {
    color: #000;
    filter: none; /* Icon turns black when button fills on hover */
}

/* Only show the warning on screens smaller than 1024px (Tablets/Phones) */
.mobile-warning-overlay[b-jwjobzrr1p] {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.95);
    z-index: 10000;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 20px;
    text-align: center;
}

@media (max-width: 1024px) {
    .mobile-warning-overlay[b-jwjobzrr1p] {
        display: flex;
    }
}

.warning-box[b-jwjobzrr1p] {
    max-width: 400px;
    width: 90%;
    border: 2px solid #ff3e3e;
    padding: 40px;
    background: #050505;
    text-align: left;
}

.warning-header[b-jwjobzrr1p] {
    color: #ff3e3e; /* Red Alert */
    font-weight: bold;
    margin-bottom: 20px;
    letter-spacing: 2px;
}

.warning-dismiss-btn[b-jwjobzrr1p] {
    margin-top: 25px;
    background: transparent;
    border: 1px solid #ff3e3e;
    color: #ff3e3e;
    padding: 10px 20px;
    font-family: 'Courier New', monospace;
    font-size: 0.7rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .warning-dismiss-btn:hover[b-jwjobzrr1p] {
        background: #ff3e3e;
        color: #000;
        box-shadow: 0 0 15px #ff3e3e;
    }
/* /Components/Pages/PortfolioPage.razor.rz.scp.css */
.sidebar-area[b-gwtg38lak8] {
    grid-area: sidebar;
    border-right: 1px solid #222;
}

.content-area[b-gwtg38lak8] {
    grid-area: content;
    position: relative;
    overflow: auto;
}

.terminal-area[b-gwtg38lak8] {
    grid-area: terminal;
    border-top: 1px solid #222;
}
/* /Components/Pages/Reboot.razor.rz.scp.css */
.bios-container[b-7n6xr0b8ci] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #000;
    color: #00FF41;
    font-family: 'Courier New', monospace;
    padding: 60px;
    z-index: 99999;
}

    .bios-container[b-7n6xr0b8ci]::before {
        content: " ";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
        z-index: 100000;
        background-size: 100% 2px, 3px 100%;
        pointer-events: none;
    }

    .bios-container[b-7n6xr0b8ci]::after {
        content: " ";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03));
        z-index: 100;
        background-size: 100% 3px, 3px 100%;
        pointer-events: none;
        opacity: 0.6;
    }

.flicker-overlay[b-7n6xr0b8ci] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.05);
    animation: flicker-b-7n6xr0b8ci 0.1s infinite;
    pointer-events: none;
}

.progress-bar[b-7n6xr0b8ci] {
    width: 200px;
    height: 2px;
    background: #111;
    margin-top: 20px;
    position: relative;
    border: 1px solid #00FF41;
}

    .progress-bar[b-7n6xr0b8ci]::after {
        content: '';
        position: absolute;
        background: #00FF41;
        height: 100%;
        animation: fill-b-7n6xr0b8ci 2.8s linear forwards;
    }

@keyframes fill-b-7n6xr0b8ci {
    0% {
        width: 0;
    }

    100% {
        width: 100%;
    }
}

@keyframes flicker-b-7n6xr0b8ci {
    0% {
        opacity: 0.1;
    }

    50% {
        opacity: 0.2;
    }

    100% {
        opacity: 0.1;
    }
}
/* /Components/Pages/SourceViewer.razor.rz.scp.css */
.source-container[b-vtuwjkuwjl] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #050505;
}

.source-header[b-vtuwjkuwjl] {
    display: flex;
    justify-content: space-between;
    padding: 10px 20px;
    background: #0f0f0f;
    border-bottom: 1px solid #222;
    font-family: 'Fira Code', monospace;
    font-size: 0.75rem;
}

.stat-tag[b-vtuwjkuwjl] {
    margin-left: 15px;
    color: #555;
    border-left: 1px solid #333;
    padding-left: 15px;
}

.action-btn[b-vtuwjkuwjl] {
    background: transparent;
    border: 1px solid var(--accent-glow);
    color: var(--accent-glow);
    padding: 2px 8px;
    cursor: pointer;
    font-size: 0.7rem;
}

    .action-btn:hover[b-vtuwjkuwjl] {
        background: var(--accent-glow);
        color: #000;
    }

.code-container[b-vtuwjkuwjl], .workspace-pane[b-vtuwjkuwjl] {
    /* 1. Force a solid, opaque background */
    background-color: #080808 !important;
    /* 2. Isolation: Creates a new stacking context */
    isolation: isolate;
    /* 3. Disable transparency artifacts */
    backface-visibility: hidden;
    /* 4. Hardware Acceleration: Move the pane to the GPU */
    transform: translateZ(0);
    /* 5. Fix for Chromium ghosting on GitHub */
    contain: content;
}
/* /Components/Pages/SystemDiagnostic.razor.rz.scp.css */
.diag-container[b-c0zplftz32] {
    padding: 40px;
    background: #050505;
    color: #fff;
    font-family: 'Fira Code', monospace;
}

.diag-grid[b-c0zplftz32] {
    display: grid;
    /* This creates 3 columns, allowing cards to adjust dynamically */
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    padding: 20px;
}

.diag-card[b-c0zplftz32] {
    background: rgba(15, 15, 15, 0.8);
    border: 1px solid #333;
    padding: 20px;
    position: relative;
}

    /* Make the Skill Frequencies and System Log stand out more */
    .diag-card.wide[b-c0zplftz32], .system-log[b-c0zplftz32] {
        grid-column: span 1;
    }

.diag-header[b-c0zplftz32] {
    display: flex;
    justify-content: space-between; /* Separates Title from Telemetry */
    align-items: flex-end;
    border-bottom: 1px solid #333;
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.header-telemetry[b-c0zplftz32] {
    margin-right: 20px; /* Pushes the bars away from the screen edge */
    border-right: 2px solid var(--accent-glow);
    padding-right: 15px;
}

.core-load-group[b-c0zplftz32] {
    display: flex;
    gap: 15px;
}

.core-item[b-c0zplftz32] {
    display: flex;
    flex-direction: column;
    width: 60px;
}

    .core-item label[b-c0zplftz32] {
        font-size: 0.5rem;
        color: #666;
        margin-bottom: 2px;
    }

.mini-bar[b-c0zplftz32] {
    height: 4px;
    background: #111;
    border: 1px solid #222;
    overflow: hidden;
}

    .mini-bar .fill[b-c0zplftz32] {
        height: 100%;
        background: var(--accent-glow);
        box-shadow: 0 0 5px var(--accent-glow);
        transition: width 0.4s ease-out;
    }

.load-percentage[b-c0zplftz32] {
    font-size: 0.6rem;
    color: var(--accent-glow);
    letter-spacing: 1px;
}


/* Oscilloscope Animation */
.wave[b-c0zplftz32] {
    width: 100%;
    height: 30px;
    stroke-width: 1px;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: dash-b-c0zplftz32 5s linear infinite;
}

@keyframes dash-b-c0zplftz32 {
    to {
        stroke-dashoffset: 0;
    }
}

.skill-row[b-c0zplftz32] {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}

.wave-container[b-c0zplftz32] {
    flex-grow: 1;
    overflow: hidden;
    border-left: 1px solid #444;
}

.glow-text[b-c0zplftz32] {
    color: var(--accent-glow);
    text-shadow: 0 0 10px var(--accent-glow);
}

.circuit-view[b-c0zplftz32] {
    margin: 20px 0;
    padding: 15px;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(0, 243, 255, 0.1);
}

.circuit-board[b-c0zplftz32] {
    position: relative;
    height: 300px; /* Kept shorter to fit the dashboard flow */
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    overflow: hidden;
}

.circuit-svg[b-c0zplftz32] {
    position: absolute;
    width: 100%;
    height: 100%;
}

.trace-line[b-c0zplftz32] {
    fill: none;
    stroke: rgba(0, 243, 255, 0.15);
    stroke-width: 2;
    stroke-dasharray: 5, 20;
    animation: pulse-flow-b-c0zplftz32 4s infinite linear;
}

@keyframes pulse-flow-b-c0zplftz32 {
    from {
        stroke-dashoffset: 100;
    }

    to {
        stroke-dashoffset: 0;
    }
}

.node[b-c0zplftz32] {
    position: absolute;
    background: #000;
    border: 1px solid #00F3FF;
    padding: 8px 15px;
    font-family: 'Fira Code', monospace;
    font-size: 0.75rem;
    color: #00F3FF;
    z-index: 5;
}

.core-hub[b-c0zplftz32] {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid #FFD700;
    color: #FFD700;
    box-shadow: 0 0 15px rgba(255, 215, 0, 0.2);
    text-align: center;
}

.satellite[b-c0zplftz32] {
    box-shadow: 0 0 10px rgba(0, 243, 255, 0.1);
}

.spec-list[b-c0zplftz32] {
    grid-column: 2;
    grid-row: 2; /* Sits under Core Utilization */
}

.system-log[b-c0zplftz32] {
    position: relative; /* Allows the monitor to anchor inside */
}

.cpu-monitor[b-c0zplftz32] {
    position: absolute;
    top: 10px;
    right: 15px;
    width: 80px;
    height: 80px;
    z-index: 10;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 50%;
    padding: 5px;
}

.circular-chart[b-c0zplftz32] {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    max-height: 100%;
}

.circle-bg[b-c0zplftz32] {
    fill: none;
    stroke: #222;
    stroke-width: 2;
}

.circle[b-c0zplftz32] {
    fill: none;
    stroke: var(--accent-glow);
    stroke-width: 2;
    stroke-linecap: round;
    transition: stroke-dasharray 0.5s ease;
}

.percentage[b-c0zplftz32] {
    fill: var(--accent-glow);
    font-size: 0.5rem;
    text-anchor: middle;
    font-weight: bold;
}

.label[b-c0zplftz32] {
    fill: #666;
    font-size: 0.2rem;
    text-anchor: middle;
    letter-spacing: 1px;
}

.spec-table[b-c0zplftz32] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 15px;
    margin-top: 20px;
    border-top: 1px solid #222;
    padding-top: 20px;
}

.spec-item[b-c0zplftz32] {
    background: rgba(255, 255, 255, 0.02);
    border-left: 2px solid var(--accent-glow);
    padding: 10px;
    font-size: 0.75rem;
}

    .spec-item .label[b-c0zplftz32] {
        display: block;
        color: #666;
        margin-bottom: 4px;
    }

    .spec-item .val[b-c0zplftz32] {
        color: #fff;
        font-weight: bold;
    }

.log-stream[b-c0zplftz32] {
    font-size: 0.75rem;
    color: #00ff41; /* Classic Matrix/Terminal green */
    line-height: 1.6;
}

.log-entry[b-c0zplftz32] {
    border-left: 2px solid #222;
    padding-left: 10px;
    margin-bottom: 5px;
    animation: fadeIn-b-c0zplftz32 0.5s ease;
}

@keyframes fadeIn-b-c0zplftz32 {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.action-zone[b-c0zplftz32] {
    margin-top: 20px;
    padding: 10px;
    border-top: 1px dashed rgba(0, 255, 65, 0.3);
    text-align: center;
}

.broadcast-btn[b-c0zplftz32] {
    background: transparent;
    border: 1px solid #00FF41;
    color: #00FF41;
    padding: 10px 20px;
    font-family: 'Fira Code', monospace;
    font-size: 0.8rem;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 2px;
}

    .broadcast-btn:hover[b-c0zplftz32] {
        background: rgba(0, 255, 65, 0.1);
        box-shadow: 0 0 15px rgba(0, 255, 65, 0.4);
        transform: scale(1.05);
    }

    .broadcast-btn:active[b-c0zplftz32] {
        transform: scale(0.95);
        background: #00FF41;
        color: #000;
    }

.stat-main[b-c0zplftz32] {
    text-align: center;
    padding: 15px 0;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.2);
    margin-bottom: 15px;
}

.stat-value[b-c0zplftz32] {
    font-size: 3.5rem;
    font-family: 'OCR A Extended', monospace;
    color: var(--accent-color);
    text-shadow: 0 0 20px rgba(var(--accent-rgb), 0.4);
    display: block;
}

.stat-label[b-c0zplftz32] {
    font-size: 0.6rem;
    letter-spacing: 3px;
    opacity: 0.8;
}

.category-breakdown p[b-c0zplftz32] {
    font-size: 0.7rem;
    margin: 5px 0;
    color: #888;
}

.neural-memory-node .stat-value[b-c0zplftz32] {
    color: #BC13FE; /* Neural Violet to distinguish from Cyan/Gold */
    text-shadow: 0 0 15px rgba(188, 19, 254, 0.4);
    font-size: 3rem;
    font-family: 'OCR A Extended', monospace;
    display: block;
    text-align: center;
}

.memory-buffer[b-c0zplftz32] {
    margin-top: 15px;
    padding: 0 10px;
}

.buffer-label[b-c0zplftz32] {
    font-size: 0.6rem;
    color: #888;
    margin-bottom: 5px;
}

.buffer-bar[b-c0zplftz32] {
    height: 4px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 2px;
    overflow: hidden;
}

.buffer-fill[b-c0zplftz32] {
    height: 100%;
    background: #BC13FE;
    box-shadow: 0 0 10px #BC13FE;
    /* Optional: subtle pulse animation */
    animation: buffer-pulse-b-c0zplftz32 2s infinite ease-in-out;
}

.status-msg[b-c0zplftz32] {
    font-size: 0.55rem;
    color: #BC13FE;
    margin-top: 8px;
    opacity: 0.7;
}

@keyframes buffer-pulse-b-c0zplftz32 {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.6;
    }
}

.scroll-prompt[b-c0zplftz32] {
    position: fixed;
    /* Move it slightly higher to clear the Terminal line precisely */
    bottom: 110px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    opacity: 0.8;
    transition: opacity 0.5s ease, visibility 0.5s;
    /* CRITICAL FIXES */
    z-index: 9999; /* Ensures it sits on top of the Terminal */
    pointer-events: none; /* Mouse clicks pass THROUGH it to the background */
}

.mouse-icon[b-c0zplftz32] {
    width: 22px;
    height: 38px;
    border: 2px solid var(--accent-color);
    border-radius: 12px;
    position: relative;
}

.wheel[b-c0zplftz32] {
    width: 4px;
    height: 8px;
    background: var(--accent-color);
    border-radius: 2px;
    position: absolute;
    top: 6px;
    left: 50%;
    transform: translateX(-50%);
    animation: scroll-wheel-move-b-c0zplftz32 2s infinite;
}

@keyframes scroll-move-b-c0zplftz32 {
    0% {
        transform: translate(-50%, 0);
        opacity: 1;
    }

    100% {
        transform: translate(-50%, 15px);
        opacity: 0;
    }
}

@keyframes bounce-b-c0zplftz32 {
    0%, 20%, 50%, 80%, 100% {
        transform: translateX(-50%) translateY(0);
    }

    40% {
        transform: translateX(-50%) translateY(-10px);
    }
}

.prompt-text[b-c0zplftz32] {
    font-size: 0.55rem;
    letter-spacing: 2px;
    color: var(--accent-color);
    font-family: 'Courier New', monospace;
}

@keyframes scroll-wheel-move-b-c0zplftz32 {
    0% {
        transform: translate(-50%, 0);
        opacity: 1;
    }

    100% {
        transform: translate(-50%, 18px);
        opacity: 0;
    }
}

.uptime-group[b-c0zplftz32] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.session-info[b-c0zplftz32] {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 15px;
    padding: 12px 20px;
    background: rgba(var(--accent-rgb), 0.05);
    border: 1px solid rgba(var(--accent-rgb), 0.2);
    border-radius: 4px;
}

    .session-info .label[b-c0zplftz32] {
        font-size: 0.85rem; /* Increased significantly */
        letter-spacing: 1.5px;
        color: #888;
    }

    .session-info .cyan-glow[b-c0zplftz32],
    .session-info .percent[b-c0zplftz32],
    .session-info .val-text[b-c0zplftz32] {
        font-size: 1.1rem; /* Larger numeric values */
        font-family: 'OCR A Extended', monospace;
        color: var(--accent-color);
    }

.connection-uplink[b-c0zplftz32] {
    display: flex;
    align-items: center;
    gap: 8px;
    border-left: 1px solid rgba(255,255,255,0.2);
    padding-left: 15px;
}

.signal-bars[b-c0zplftz32] {
    display: flex;
    align-items: flex-end;
    gap: 2px;
    height: 12px;
}

    .signal-bars .bar[b-c0zplftz32] {
        width: 3px;
        background: rgba(255,255,255,0.1);
    }

/* Creating staggered heights for the bars */
.bar:nth-child(1)[b-c0zplftz32] {
    height: 20%;
}

.bar:nth-child(2)[b-c0zplftz32] {
    height: 40%;
}

.bar:nth-child(3)[b-c0zplftz32] {
    height: 60%;
}

.bar:nth-child(4)[b-c0zplftz32] {
    height: 80%;
}

.bar:nth-child(5)[b-c0zplftz32] {
    height: 100%;
}

.bar.active[b-c0zplftz32] {
    background: #00F3FF;
    box-shadow: 0 0 5px #00F3FF;
}

.cyan-glow[b-c0zplftz32] {
    color: #00F3FF;
    text-shadow: 0 0 8px rgba(0, 243, 255, 0.6);
}

/* Specific targeting for the comms stat line to ensure readability */
.comms-stat-line[b-c0zplftz32] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px dashed rgba(255, 255, 255, 0.2);
}

    .comms-stat-line .label[b-c0zplftz32] {
        font-size: 0.75rem;
        letter-spacing: 3px;
        color: #666;
        margin-top: 8px;
    }

    .comms-stat-line .val[b-c0zplftz32] {
        font-size: 2.2rem; /* Large impact */
        color: var(--accent-color);
        text-shadow: 0 0 15px rgba(var(--accent-rgb), 0.6);
        font-family: 'OCR A Extended', monospace;
    }

.mute-toggle[b-c0zplftz32] {
    cursor: pointer;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 12px;
    border: 1px solid rgba(var(--accent-rgb), 0.4);
    background: rgba(0, 0, 0, 0.6);
}

    .mute-toggle:hover[b-c0zplftz32] {
        background: rgba(var(--accent-rgb), 0.2);
        box-shadow: 0 0 10px rgba(var(--accent-rgb), 0.3);
    }

.active-text[b-c0zplftz32] {
    color: var(--accent-color);
    text-shadow: 0 0 5px var(--accent-color);
}

.muted-text[b-c0zplftz32] {
    color: #ff3e3e; /* Red for disabled */
    opacity: 0.6;
}

.sync-icon[b-c0zplftz32] {
    color: var(--accent-color);
    transition: transform 0.3s ease;
}

.syncing .sync-icon[b-c0zplftz32] {
    animation: spin-b-c0zplftz32 1s linear infinite;
}

@keyframes spin-b-c0zplftz32 {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.log-entry:contains("SYNC_ERROR")[b-c0zplftz32] {
    color: #ff3e3e;
    font-weight: bold;
    animation: blink 0.5s step-end infinite;
}
/* /Components/Pages/UplinkView.razor.rz.scp.css */
.uplink-view[b-k03uywkta8] {
    /* Adding padding ensures glows and borders aren't clipped by the screen edges */
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    /* Ensure nothing inside forces a scrollbar prematurely */
    overflow-x: hidden;
}

.uplink-grid[b-k03uywkta8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
    padding: 20px;
}

.uplink-card[b-k03uywkta8] {
    position: relative;
    background: rgba(15, 15, 15, 0.8);
    border: 1px solid rgba(var(--accent-rgb), 0.2);
    padding: 2px; /* For the inner border look */
    text-decoration: none;
    color: white;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}

.uplink-page[b-k03uywkta8] {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 20px;
    height: 100%;
}

.external-nodes-row[b-k03uywkta8] {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.separator[b-k03uywkta8] {
    display: flex;
    align-items: center;
    gap: 15px;
    color: var(--accent-glow);
    font-family: 'Fira Code', monospace;
    font-size: 0.7rem;
    opacity: 0.6;
}

    .separator .line[b-k03uywkta8] {
        flex-grow: 1;
        height: 1px;
        background: linear-gradient(90deg, transparent, var(--accent-glow), transparent);
    }

.contact-terminal[b-k03uywkta8] {
    flex-grow: 1;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(0, 243, 255, 0.1);
    padding: 20px;
    position: relative;
    overflow: hidden;
}

.nodes-grid[b-k03uywkta8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-bottom: 40px;
}

.node-card[b-k03uywkta8] {
    background: rgba(0, 0, 0, 0.6);
    border: 1px solid var(--accent-color);
    padding: 15px;
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .node-card:hover[b-k03uywkta8] {
        transform: translateY(-5px);
        box-shadow: 0 0 15px var(--accent-color);
    }

.node-title[b-k03uywkta8] {
    color: var(--accent-color);
    font-family: 'Fira Code', monospace;
    font-weight: bold;
}

/* Specific Accent Colors */
.gold-node[b-k03uywkta8] {
    border-color: #FFD700;
}

    .gold-node .node-title[b-k03uywkta8] {
        color: #FFD700;
    }

.purple-node[b-k03uywkta8] {
    border-color: #A855F7;
}

    .purple-node .node-title[b-k03uywkta8] {
        color: #A855F7;
    }

.orange-node[b-k03uywkta8] {
    border-color: #F48024;
}

    .orange-node .node-title[b-k03uywkta8] {
        color: #F48024;
    }

.node-card:hover[b-k03uywkta8] {
    background: rgba(255, 255, 255, 0.05);
    box-shadow: 0 0 15px var(--accent-glow);
    transform: translateY(-2px);
}

.node-path[b-k03uywkta8] {
    font-size: 0.65rem;
    opacity: 0.5;
    margin: 10px 0;
    font-family: 'Fira Code', monospace;
}

.node-desc[b-k03uywkta8] {
    display: none; /* Hide description on desktop to save massive space */
}

.node-card:hover .node-desc[b-k03uywkta8] {
    display: block; /* Optional: show it only on hover */
}

.uplink-separator[b-k03uywkta8] {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 40px 0;
}

.line-left[b-k03uywkta8], .line-right[b-k03uywkta8] {
    flex-grow: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent-glow));
}

.line-right[b-k03uywkta8] {
    background: linear-gradient(270deg, transparent, var(--accent-glow));
}

.separator-center[b-k03uywkta8] {
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.7rem;
    letter-spacing: 2px;
}

.separator-text[b-k03uywkta8] {
    font-family: 'Fira Code', monospace;
    font-size: 0.75rem;
    color: var(--accent-glow);
    letter-spacing: 3px;
}

.pulse-icon[b-k03uywkta8] {
    width: 8px;
    height: 8px;
    background: var(--accent-color);
    border-radius: 50%;
    animation: pulse-glow-b-k03uywkta8 1.5s infinite;
}

@keyframes pulse-glow-b-k03uywkta8 {
    0% {
        box-shadow: 0 0 0 0 var(--accent-color);
    }

    70% {
        box-shadow: 0 0 0 10px transparent;
    }

    100% {
        box-shadow: 0 0 0 0 transparent;
    }
}

@keyframes separator-pulse-b-k03uywkta8 {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.2;
    }

    100% {
        opacity: 1;
    }
}

/* Responsive adjustment for tablets/phones */
@media (max-width: 1200px) {
    .nodes-grid[b-k03uywkta8] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .nodes-grid[b-k03uywkta8] {
        grid-template-columns: 1fr;
    }
}

.terminal-interface[b-k03uywkta8] {
    background: #050505;
    border: 1px solid var(--accent-color);
    box-shadow: inset 0 0 20px rgba(0, 0, 0, 1);
    padding: 20px;
    font-family: 'Fira Code', monospace;
}

.terminal-header[b-k03uywkta8] {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 184, 0, 0.1);
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 0.7rem;
    color: #ffb800;
}

.terminal-progress[b-k03uywkta8] {
    color: #ffb800; /* Amber to match your Uplink theme */
    text-shadow: 0 0 8px rgba(255, 184, 0, 0.6);
    letter-spacing: 2px;
}

.input-line[b-k03uywkta8] {
    display: flex; /* Change from column to flex row */
    align-items: center;
    margin-bottom: 10px; /* Tighter spacing */
}

.prompt[b-k03uywkta8] {
    color: #888;
    font-size: 0.8rem;
    margin-bottom: 5px;
}

.cmd-input[b-k03uywkta8] {
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--accent-color);
    padding: 8px 0;
    outline: none;
    width: 100%;
}

    .cmd-input:focus[b-k03uywkta8] {
        border-bottom: 1px solid var(--accent-color);
    }

.transmit-btn[b-k03uywkta8] {
    background: transparent;
    border: 1px solid var(--accent-color);
    color: var(--accent-color);
    padding: 15px 30px;
    cursor: pointer;
    transition: all 0.3s;
    font-weight: bold;
}

    .transmit-btn:hover[b-k03uywkta8] {
        background: var(--accent-color);
        color: #000;
    }

.message-line[b-k03uywkta8] {
    align-items: flex-start; /* Keeps the prompt at the top of the large box */
}

.cmd-textarea[b-k03uywkta8] {
    min-height: 150px;
    resize: none;
}

.transmission-overlay[b-k03uywkta8] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    backdrop-filter: blur(4px);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100;
    border: 1px solid var(--accent-color);
}

.overlay-content[b-k03uywkta8] {
    text-align: center;
    width: 300px;
}

.progress-container[b-k03uywkta8] {
    width: 100%;
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    margin: 20px 0;
    border-radius: 2px;
    overflow: hidden;
}

.progress-fill[b-k03uywkta8] {
    height: 100%;
    background: var(--accent-color);
    box-shadow: 0 0 10px var(--accent-color);
    transition: width 0.2s ease;
}

.status-text[b-k03uywkta8] {
    font-size: 0.6rem;
    color: var(--accent-color);
    letter-spacing: 1px;
    text-transform: uppercase;
}
/* /Components/Pages/WPFWindow.razor.rz.scp.css */
.wpf-container[b-jjf4taoihk] {
    padding: 60px 40px 20px 40px; /* Increased top padding to 60px to clear the header */
    height: 100%;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.wpf-layout[b-jjf4taoihk] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    /* This ensures the grid fills the remaining vertical space properly */
    height: calc(100vh - 320px);
    align-items: start;
}

.blueprint-frame[b-jjf4taoihk] {
    /* Ensure the frame is dark enough to hide image border artifacts */
    background: #000814;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Add a faint grid overlay to make it look like drafting paper */
.overlay-grid[b-jjf4taoihk] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(rgba(0, 85, 255, 0.1) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 85, 255, 0.1) 1px, transparent 1px);
    background-size: 20px 20px;
    pointer-events: none !important; /* THE CRITICAL FIX */
    z-index: 5;
}

.header-actions[b-jjf4taoihk] {
    display: flex;
    align-items: center;
    gap: 20px;
}

.download-link[b-jjf4taoihk] {
    display: flex;
    align-items: center;
    text-decoration: none;
    border: 1px solid #39FF14; /* Neon Green */
    background: rgba(57, 255, 20, 0.05);
    padding: 2px 10px;
    font-family: 'Fira Code', monospace;
    font-size: 0.7rem;
    color: #39FF14;
    transition: all 0.3s ease;
}

    .download-link:hover[b-jjf4taoihk] {
        background: #39FF14;
        color: #000;
        box-shadow: 0 0 15px rgba(57, 255, 20, 0.4);
    }

.version-tag[b-jjf4taoihk] {
    opacity: 0.6;
    margin-right: 8px;
    border-right: 1px solid #39FF14;
    padding-right: 8px;
}

.pane-header[b-jjf4taoihk] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    position: relative;
    z-index: 20; /* Higher than the scan-overlay and grid */
}

/* Ensure the container clips any transform "tearing" so it doesn't leak out */
.image-container[b-jjf4taoihk] {
    overflow: hidden;
    position: relative;
    border: 1px solid var(--accent-glow);
    background: #000;
}

.mini-tabs[b-jjf4taoihk] {
    display: flex;
    gap: 8px;
    pointer-events: auto !important; /* Force clicks to be active here */
}

.tab-btn[b-jjf4taoihk] {
    background: transparent;
    border: 1px solid rgba(var(--accent-rgb), 0.3);
    color: #888;
    padding: 4px 12px;
    font-family: 'OCR A Extended', monospace;
    cursor: pointer;
    transition: 0.2s;
}

    .tab-btn.active[b-jjf4taoihk] {
        color: var(--accent-color);
        border-color: var(--accent-color);
        background: rgba(var(--accent-rgb), 0.1);
        box-shadow: inset 0 0 10px rgba(var(--accent-rgb), 0.2);
    }

    .tab-btn:hover:not(.active)[b-jjf4taoihk] {
        border-color: #555;
        color: #fff;
    }

.xaml-pane[b-jjf4taoihk] {
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden; /* Keeps the title > XAML_SOURCE from moving */
}

.editor-wrapper[b-jjf4taoihk] {
    flex: 1;
    background: #000;
    overflow-y: auto; /* Allow scrolling */
    min-height: 400px; /* Force a height so content is visible */
    border: 1px solid rgba(var(--accent-rgb), 0.2);
    position: relative;
}

    /* Ensure the text color is bright enough to see */
    .editor-wrapper pre code[b-jjf4taoihk] {
        color: #d1d1d1;
        white-space: pre; /* Essential for keeping XAML formatting */
    }

    /* Optional: Cyberpunk Scrollbar Styling */
    .editor-wrapper[b-jjf4taoihk]::-webkit-scrollbar {
        width: 8px;
        height: 8px; /* For the horizontal bar */
    }

    /* Optional: Style the scrollbar to match your neon theme */
    .editor-wrapper[b-jjf4taoihk]::-webkit-scrollbar {
        width: 6px;
    }

    .editor-wrapper[b-jjf4taoihk]::-webkit-scrollbar-thumb {
        background: var(--accent-glow);
        border-radius: 10px;
    }

    .editor-wrapper[b-jjf4taoihk]::-webkit-scrollbar-track {
        background: rgba(255, 255, 255, 0.05);
    }

.scrolling-content[b-jjf4taoihk] {
    padding: 20px;
    height: 100%;
}

pre[b-jjf4taoihk] {
    margin: 0 !important; /* Prism often adds weird margins */
    background: transparent !important;
}

.blueprint-img[b-jjf4taoihk] {
    max-width: 90%;
    max-height: 80%;
    z-index: 2;
    /* If the image fails to load, the alt text will look like a terminal label */
    color: var(--accent-glow);
    font-family: 'Fira Code', monospace;
    font-size: 0.8rem;
    text-align: center;
}

/* The Scan Line */
.scan-overlay[b-jjf4taoihk] {
    position: absolute;
    top: -100%; /* Start off-screen */
    left: 0;
    width: 100%;
    height: 10px;
    background: rgba(0, 150, 255, 0.8);
    box-shadow: 0 0 15px #0055ff, 0 0 30px #0055ff;
    z-index: 5;
    animation: scan-move-b-jjf4taoihk 3s linear infinite;
    pointer-events: none !important; /* THE CRITICAL FIX */
    z-index: 10; /* Keep it visually on top, but non-interactable */
}

/* A subtle "reconstruction" flicker on the image */
.blueprint-frame[b-jjf4taoihk]:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 85, 255, 0.05);
    opacity: 0;
    z-index: 4;
    pointer-events: none;
    animation: reconstruct-flicker-b-jjf4taoihk 4s infinite;
}

.blueprint-metadata[b-jjf4taoihk] {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* Exactly 4 columns */
    gap: 10px;
    margin-top: 20px;
    padding: 15px;
    background: rgba(0, 85, 255, 0.1);
    border: 1px solid #0055ff;
}

.meta-box label[b-jjf4taoihk] {
    display: block;
    font-size: 0.6rem;
    color: #0055ff;
}

.meta-box span[b-jjf4taoihk] {
    display: block;
    font-size: 0.7rem;
    white-space: nowrap; /* Prevent wrapping */
    overflow: hidden;
    text-overflow: ellipsis; /* Add ... if text is too long */
}

.github-repo-btn[b-jjf4taoihk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: transparent;
    border: 1px solid rgba(var(--accent-rgb), 0.5);
    color: var(--accent-color) !important;
    padding: 10px;
    margin-top: 10px;
    font-size: 0.7rem;
    font-weight: bold;
    transition: all 0.3s ease;
}

    .github-repo-btn:hover[b-jjf4taoihk] {
        background: rgba(var(--accent-rgb), 0.2);
        border-color: var(--accent-color);
        box-shadow: 0 0 15px rgba(var(--accent-rgb), 0.3);
    }

.github-icon[b-jjf4taoihk] {
    margin-bottom: 8px;
    filter: drop-shadow(0 0 5px var(--accent-color));
}

.github-repo-btn:hover .github-icon[b-jjf4taoihk] {
    color: #000;
    filter: none; /* Icon turns black when button fills on hover */
}

/* This is the actual scrolling box */
.code-viewport[b-jjf4taoihk] {
    flex: 1;
    overflow-y: auto !important;
    overflow-x: auto !important;
    padding: 20px;
    display: block;
}

    /* Ensure the code lines don't wrap, which forces the horizontal scrollbar */
    .code-viewport pre code[b-jjf4taoihk] {
        white-space: pre !important;
        word-wrap: normal !important;
        display: inline-block; /* Essential for horizontal scroll */
        min-width: 100%;
        color: #00F3FF; /* Keep that cyan glow */
    }

    /* Cyberpunk Scrollbars - visible and themed */
    .code-viewport[b-jjf4taoihk]::-webkit-scrollbar {
        width: 8px;
        height: 8px;
        display: block !important;
    }

    .code-viewport[b-jjf4taoihk]::-webkit-scrollbar-thumb {
        background: #00F3FF;
        border-radius: 0; /* Square edges look more terminal-like */
        box-shadow: 0 0 10px #00F3FF;
    }

@keyframes scan-move-b-jjf4taoihk {
    0% {
        top: -10%;
    }

    100% {
        top: 110%;
    }
}

@keyframes reconstruct-flicker-b-jjf4taoihk {
    0%, 100% {
        opacity: 0;
    }

    50% {
        opacity: 0.1;
    }

    52% {
        opacity: 0.3;
    }

    54% {
        opacity: 0.1;
    }
}

.project-briefing[b-jjf4taoihk] {
    margin-top: 25px;
    padding: 15px;
    background: rgba(0, 0, 0, 0.3);
    border-left: 2px solid var(--accent-glow);
    font-family: 'Fira Code', monospace;
}

.briefing-header[b-jjf4taoihk] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}

.briefing-title[b-jjf4taoihk] {
    color: var(--accent-glow);
    font-size: 0.8rem;
    margin: 0;
    text-transform: uppercase;
}

.briefing-text[b-jjf4taoihk] {
    font-size: 0.8rem;
    color: #a0aec0; /* Soft gray for long reading */
    line-height: 1.6;
    margin-bottom: 12px;
}

.line-prefix[b-jjf4taoihk] {
    color: var(--accent-glow);
    font-weight: bold;
    margin-right: 5px;
}

.pulse-dot[b-jjf4taoihk] {
    width: 6px;
    height: 6px;
    background-color: var(--accent-glow);
    border-radius: 50%;
    animation: pulse-glow-b-jjf4taoihk 2s infinite;
}

.log-row[b-jjf4taoihk] {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
    align-items: flex-start;
}

.line-prefix[b-jjf4taoihk] {
    color: var(--accent-glow);
    font-weight: bold;
    font-size: 0.75rem;
    white-space: nowrap; /* Keeps [LOG]: on one line */
    padding-top: 2px;
}

.briefing-text[b-jjf4taoihk] {
    font-size: 0.85rem;
    color: #a0aec0;
    line-height: 1.5;
    margin: 0;
}

/* Class to trigger the animation */
.glitch-text[b-jjf4taoihk] {
    animation: terminal-flicker-b-jjf4taoihk 0.3s ease-out;
}

.glitch-image[b-jjf4taoihk] {
    /* We use 'steps' to give it a jittery, digital feel rather than a smooth slide */
    animation: blueprint-flicker-b-jjf4taoihk 0.4s steps(5) forwards;
}

/* Optional: Add a slight delay to each log row so they cascade in */
.log-row:nth-child(1)[b-jjf4taoihk] {
    animation-delay: 0.1s;
}

.log-row:nth-child(2)[b-jjf4taoihk] {
    animation-delay: 0.2s;
}

.log-row:nth-child(3)[b-jjf4taoihk] {
    animation-delay: 0.3s;
}

@keyframes pulse-glow-b-jjf4taoihk {
    0% {
        transform: scale(0.95);
        opacity: 0.5;
    }

    50% {
        transform: scale(1.1);
        opacity: 1;
        box-shadow: 0 0 8px var(--accent-glow);
    }

    100% {
        transform: scale(0.95);
        opacity: 0.5;
    }
}

/* Image-specific glitch: Hue rotation and slight horizontal "tearing" */
@keyframes blueprint-flicker-b-jjf4taoihk {
    0% {
        opacity: 0;
        filter: contrast(3) brightness(3) grayscale(1);
    }

    10% {
        opacity: 1;
        transform: skewX(10deg) scale(1.1);
    }

    20% {
        transform: skewX(-10deg) scale(0.9);
        filter: hue-rotate(180deg);
    }

    30% {
        transform: none;
        filter: none;
    }
    /* Intermittent flicker */
    70% {
        opacity: 0.8;
        transform: translateX(2px);
    }

    100% {
        opacity: 1;
        filter: none;
    }
}

@keyframes terminal-flicker-b-jjf4taoihk {
    0% {
        opacity: 0;
        clip-path: inset(50% 0 30% 0);
        transform: skew(10deg);
    }

    20% {
        opacity: 1;
        clip-path: inset(10% 0 80% 0);
        transform: skew(-10deg);
    }

    40% {
        clip-path: inset(60% 0 10% 0);
    }

    60% {
        clip-path: none;
        transform: skew(0deg);
    }

    100% {
        opacity: 1;
    }
}

/* Specialized glitch for the blueprint image */
@keyframes image-glitch-b-jjf4taoihk {
    0% {
        filter: hue-rotate(90deg) brightness(2) contrast(2);
        transform: scale(1.02);
        opacity: 0.8;
    }

    20% {
        filter: none;
        transform: scale(1);
        opacity: 1;
    }

    30% {
        filter: invert(0.2) sepia(1) saturate(5) hue-rotate(175deg);
        transform: translateX(5px);
    }

    45% {
        filter: none;
        transform: translateX(-5px);
    }

    60% {
        filter: contrast(1.5) brightness(0.8);
    }

    100% {
        filter: none;
    }
}

.wpf-header-actions[b-jjf4taoihk] {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

.spec-toggle.active[b-jjf4taoihk] {
    color: #00f3ff; /* Or your preferred blue/cyan accent */
    border-color: #00f3ff;
    box-shadow: 0 0 10px rgba(0, 243, 255, 0.3);
}

.manifest-dossier[b-jjf4taoihk] {
    padding: 2rem;
    animation: scan-in-b-jjf4taoihk 0.5s ease-out;
}

@keyframes scan-in-b-jjf4taoihk {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.label[b-jjf4taoihk] {
    color: #888;
    margin-right: 10px;
}

.description-block[b-jjf4taoihk] {
    margin-top: 15px;
    display: flex;
    flex-direction: column;
}

.log-entries[b-jjf4taoihk] {
    margin-top: 5px;
    padding-left: 10px;
    border-left: 1px solid rgba(var(--accent-rgb), 0.2);
}

.log-line[b-jjf4taoihk] {
    margin-bottom: 4px;
    font-size: 0.85rem;
    line-height: 1.4;
}

.log-tag[b-jjf4taoihk] {
    color: var(--accent-color);
    opacity: 0.6;
    margin-right: 8px;
    font-weight: bold;
}

.tech-tag[b-jjf4taoihk] {
    background: rgba(var(--accent-rgb), 0.1);
    border: 1px solid var(--accent-color);
    padding: 2px 8px;
    margin-right: 5px;
    font-size: 0.75rem;
}

.sys-metrics[b-jjf4taoihk] {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px dashed #333;
    font-size: 0.8rem;
    opacity: 0.7;
}

/* The Shimmer Animation */
@keyframes shimmer-b-jjf4taoihk {
    0% {
        background-position: -200% 0;
    }

    100% {
        background-position: 200% 0;
    }
}

/* Apply this to the container when loading or switching */
.shimmer-text[b-jjf4taoihk] {
    background: linear-gradient(90deg, rgba(var(--accent-rgb), 0.1) 25%, rgba(var(--accent-rgb), 0.4) 50%, rgba(var(--accent-rgb), 0.1) 75%);
    background-size: 200% 100%;
    animation: shimmer-b-jjf4taoihk 2s infinite linear;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent; /* Text becomes the shimmer */
    text-shadow: 0 0 5px rgba(var(--accent-rgb), 0.2);
}

/* A secondary "Entrance" animation for the lines */
.manifest-row[b-jjf4taoihk] {
    animation: reveal-line-b-jjf4taoihk 0.4s ease-out forwards;
    opacity: 0;
}

@keyframes reveal-line-b-jjf4taoihk {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}
/* /Components/UI/BootScreen.razor.rz.scp.css */
.boot-overlay[b-cq8pvv9y0r] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #000;
    z-index: 9999; /* Ensure it covers everything */
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Fira Code', monospace;
    color: #39FF14; /* Matrix Green for the boot */
}

.boot-content[b-cq8pvv9y0r] {
    width: 80%;
    max-width: 600px;
}

.line[b-cq8pvv9y0r] {
    margin-bottom: 5px;
    font-size: 0.9rem;
}

.identity-stamp[b-cq8pvv9y0r] {
    margin-top: 40px;
    color: #fff;
    text-shadow: 0 0 10px #39FF14;
    animation: flicker-b-cq8pvv9y0r 0.1s infinite;
}

.fade-out[b-cq8pvv9y0r] {
    opacity: 0;
    transition: opacity 0.8s ease-out;
}

@keyframes flicker-b-cq8pvv9y0r {
    0% {
        opacity: 0.9;
    }

    50% {
        opacity: 1;
    }

    100% {
        opacity: 0.95;
    }
}
/* /Components/UI/CodeEditorView.razor.rz.scp.css */
.editor-wrapper[b-4fghmiwsjv] {
    height: 100%;
    width: 100%;
    background: #050505;
    overflow: auto; /* Ensures scrollbars appear if code is long */
}

pre[b-4fghmiwsjv] {
    margin: 0;
    padding: 20px;
    height: 100%;
}

code[b-4fghmiwsjv] {
    font-family: 'Fira Code', monospace;
    font-size: 14px;
    line-height: 1.5;
}

pre code[b-4fghmiwsjv] {
    display: block;
    width: max-content; /* This forces the container to expand to the longest line */
    color: #00F3FF; /* Cyan glow for the text */
}

.editor-container[b-4fghmiwsjv] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #050505;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
}

.editor-tabs[b-4fghmiwsjv] {
    display: flex;
    background: #0d0d0d;
    padding-top: 5px;
}

.tab[b-4fghmiwsjv] {
    padding: 8px 15px;
    background: #1e1e1e;
    color: #fff;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    gap: 8px;
    border-top: 2px solid var(--accent-glow);
}

.code-viewport[b-4fghmiwsjv] {
    display: flex;
    flex-grow: 1;
    overflow: auto;
    padding: 10px 0;
}

.line-numbers[b-4fghmiwsjv] {
    width: 50px;
    text-align: right;
    padding-right: 15px;
    color: #444;
    user-select: none;
    border-right: 1px solid #1a1a1a;
}

.code-content[b-4fghmiwsjv] {
    margin: 0;
    padding-left: 15px;
    color: #d4d4d4;
    font-size: 0.9rem;
    white-space: pre;
}

/* Syntax Highlighting Classes */
[b-4fghmiwsjv] .keyword {
    color: var(--accent-glow);
    font-weight: bold;
}

[b-4fghmiwsjv] .comment {
    color: #6a9955;
}

[b-4fghmiwsjv] .string {
    color: #ce9178;
}
/* /Components/UI/Diagnostic.razor.rz.scp.css */
.diag-layout[b-067yzrky9i] {
    padding: 60px 20px; /* Push down to avoid clipping here too */
}

.chip[b-067yzrky9i] {
    position: absolute;
    background: #000;
    border: 1px solid #00F3FF;
    padding: 15px;
    box-shadow: 0 0 15px rgba(0, 243, 255, 0.3);
}

.master-chip[b-067yzrky9i] {
    top: 45%;
    left: 15%;
    border: 1px solid #FFD700;
    box-shadow: 0 0 20px rgba(255, 215, 0, 0.4);
}

/* Data Trace Animation */
.trace[b-067yzrky9i] {
    position: absolute;
    background: linear-gradient(90deg, transparent, #00F3FF, transparent);
    height: 1px;
    animation: signal-flow-b-067yzrky9i 3s infinite linear;
}

@keyframes signal-flow-b-067yzrky9i {
    0% {
        transform: translateX(-100%);
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        transform: translateX(100%);
        opacity: 0;
    }
}
/* /Components/UI/EmptyState.razor.rz.scp.css */
.empty-state-container[b-lucil9ejam] {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle, rgba(var(--accent-rgb), 0.05) 0%, transparent 70%);
}

.hud-frame[b-lucil9ejam] {
    position: relative;
    padding: 60px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(10px);
    text-align: center;
}

/* The Glitch Effect */
.glitch[b-lucil9ejam] {
    font-size: 3rem;
    font-weight: bold;
    color: var(--accent-glow);
    position: relative;
    text-shadow: 0 0 10px var(--accent-glow);
}

.subtitle[b-lucil9ejam] {
    font-family: 'Fira Code', monospace;
    color: #666;
    letter-spacing: 3px;
    margin-top: 20px;
}

/* Decorative Stats */
.stats-grid[b-lucil9ejam] {
    display: flex;
    gap: 30px;
    margin-top: 50px;
    justify-content: center;
}

.stat-box[b-lucil9ejam] {
    display: flex;
    flex-direction: column;
    font-size: 0.7rem;
}

    .stat-box .label[b-lucil9ejam] {
        color: #444;
    }

    .stat-box .value[b-lucil9ejam] {
        color: var(--accent-glow);
        font-weight: bold;
    }
/* /Components/UI/ProjectStage.razor.rz.scp.css */
.stage-container[b-v7ihjg2q9l] {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.stage-header[b-v7ihjg2q9l] {
    background: #111;
    padding: 8px 15px;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.2);
    font-size: 0.75rem;
    color: #666;
    font-family: 'Fira Code', monospace;
}

.stage-viewport[b-v7ihjg2q9l] {
    flex-grow: 1;
    position: relative;
    overflow: hidden;
    /* This creates a "Power On" animation whenever the content changes */
    animation: viewport-flash-b-v7ihjg2q9l 0.3s ease-out;
}



@keyframes viewport-flash-b-v7ihjg2q9l {
    0% {
        opacity: 0;
        filter: brightness(3);
        transform: scale(0.99);
    }

    100% {
        opacity: 1;
        filter: brightness(1);
        transform: scale(1);
    }
}
/* /Components/UI/SideBar.razor.rz.scp.css */
.sidebar-explorer[b-dgdt4ua7d8] {
    background: #050505; /* Deep black */
    height: 100%;
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--accent-glow);
    font-family: 'Fira Code', monospace;
    box-shadow: 5px 0 15px rgba(0, 0, 0, 0.5);
}

.sidebar-header[b-dgdt4ua7d8] {
    padding: 20px;
    font-size: 0.8rem;
    color: var(--accent-glow);
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.2);
    letter-spacing: 2px;
    text-transform: uppercase;
}

.sidebar-content[b-dgdt4ua7d8] {
    padding: 10px 0;
    user-select: none;
    font-family: 'Fira Code', monospace;
}

/* Category Headers (Folders) */
.folder-section[b-dgdt4ua7d8] {
    margin-bottom: 10px;
}

.folder-header[b-dgdt4ua7d8] {
    display: flex;
    align-items: center;
    padding: 6px 10px;
    font-size: 0.7rem;
    color: #a0a0a0;
    text-transform: uppercase;
    transition: color 0.2s, background 0.2s;
    user-select: none; /* Prevents text selection on double click */
}

    .folder-header:hover[b-dgdt4ua7d8] {
        color: var(--accent-glow);
        background: rgba(255, 255, 255, 0.03);
    }

.folder-arrow[b-dgdt4ua7d8] {
    font-size: 0.6rem;
    margin-right: 6px;
    width: 10px;
    display: inline-block;
    transition: transform 0.2s;
}

.folder-icon[b-dgdt4ua7d8] {
    margin-right: 8px;
}

/* Optional: Add a subtle animation to the folder content appearing */
.folder-content[b-dgdt4ua7d8] {
    animation: slideDown-b-dgdt4ua7d8 0.2s ease-out;
}

@keyframes slideDown-b-dgdt4ua7d8 {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Individual File Items */
.file-item[b-dgdt4ua7d8] {
    padding: 12px 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.2s ease;
    border-left: 3px solid transparent;
}

    .file-item:hover[b-dgdt4ua7d8] {
        background: rgba(var(--accent-rgb), 0.1);
        border-left: 3px solid var(--accent-glow);
    }

    .file-item.active[b-dgdt4ua7d8] {
        border-left: 3px solid var(--accent-color);
        background: linear-gradient(90deg, rgba(var(--accent-rgb), 0.1) 0%, transparent 100%);
        color: var(--accent-color);
        text-shadow: 0 0 10px var(--accent-color);
    }

    /* Specific styling for the Gold Identity file if you chose that */
    .file-item[data-identity="true"].active[b-dgdt4ua7d8] {
        border-left: 3px solid #FFD700;
        color: #FFD700;
    }

.file-icon[b-dgdt4ua7d8] {
    margin-right: 10px;
    font-size: 0.9rem;
    opacity: 0.8;
}

.file-name[b-dgdt4ua7d8] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* /Components/UI/SystemStatus.razor.rz.scp.css */
.system-status-widget[b-ed0zvobef6] {
    background: rgba(0, 0, 0, 0.6);
    border: 1px solid rgba(var(--accent-rgb), 0.3);
    padding: 15px;
    font-family: 'Fira Code', monospace;
    font-size: 0.7rem;
    color: #aaa;
    width: 100%;
}

.widget-header[b-ed0zvobef6] {
    color: var(--accent-glow);
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.3);
    margin-bottom: 10px;
    padding-bottom: 5px;
    font-weight: bold;
}

.metric-row[b-ed0zvobef6] {
    margin-bottom: 10px;
}

.metric-label[b-ed0zvobef6] {
    margin-bottom: 4px;
    color: #666;
}

.metric-value[b-ed0zvobef6] {
    float: right;
    color: var(--accent-glow);
    font-weight: bold;
}

.metric-bar[b-ed0zvobef6] {
    height: 2px;
    background: #222;
    width: 100%;
    clear: both;
}

.fill[b-ed0zvobef6] {
    height: 100%;
    background: var(--accent-glow);
    transition: width 0.8s ease-in-out;
    box-shadow: 0 0 5px var(--accent-glow);
}

.blink[b-ed0zvobef6] {
    animation: pulse-b-ed0zvobef6 2s infinite;
    color: var(--accent-glow);
}

@keyframes pulse-b-ed0zvobef6 {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.3;
    }
}
/* /Components/UI/TerminalComponent.razor.rz.scp.css */
.terminal-wrapper[b-7ogj3jskfu] {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
}

.terminal-container[b-7ogj3jskfu] {
    display: flex;
    flex-direction: column; /* Normal stack */
    flex: 1;
    overflow-y: auto;
    padding: 10px;
    /* Ensure the container behaves like a scrollable box */
    max-height: 100%;
}

    /* Add this to force the scrollbar to the bottom if possible */
    .terminal-container > *:last-child[b-7ogj3jskfu] {
        margin-bottom: 5px;
        scroll-snap-align: end;
    }

.terminal-logs[b-7ogj3jskfu] {
    flex: 1; /* Grow to fill space, but allow shrinking to fit input */
    overflow-y: auto; /* Enable the scrollbar here */
    padding: 10px;
    font-family: 'Consolas', monospace;
}

.log-entry.success[b-7ogj3jskfu] {
    color: #00F3FF;
}
/* Cyan for success */
.log-entry.warning[b-7ogj3jskfu] {
    color: #BC13FE;
}
/* Violet for warnings */
.log-entry.achievement[b-7ogj3jskfu] {
    color: #FFD700;
    font-weight: bold;
}
/* Gold */

.timestamp[b-7ogj3jskfu] {
    color: #444;
    margin-right: 10px;
}

.cursor[b-7ogj3jskfu] {
    display: inline-block;
    animation: blink-b-7ogj3jskfu 1s infinite;
}

@keyframes blink-b-7ogj3jskfu {
    50% {
        opacity: 0;
    }
}

.command-line[b-7ogj3jskfu] {
    display: flex;
    align-items: center;
    padding: 10px;
    background: rgba(var(--accent-rgb), 0.05);
    border-top: 1px solid #1a1a1a;
}

.prompt[b-7ogj3jskfu] {
    color: var(--accent-glow);
    font-family: 'Fira Code', monospace;
    margin-right: 10px;
    white-space: nowrap;
}

.terminal-prompt-line[b-7ogj3jskfu] {
    flex-shrink: 0; /* CRITICAL: Prevents the logs from squashing the input */
    display: flex;
    align-items: center;
    padding: 12px 15px;
    background: #050505;
    border-top: 1px solid rgba(var(--accent-rgb), 0.2);
    min-height: 45px;
}

.terminal-input[b-7ogj3jskfu] {
    flex: 1;
    background: transparent;
    border: none;
    color: var(--accent-color);
    outline: none;
    font-family: inherit;
    margin-left: 8px;
    caret-color: var(--accent-color);
}

    /* Optional: Make the placeholder look like a ghost command */
    .terminal-input[b-7ogj3jskfu]::placeholder {
        color: #333;
        font-style: italic;
    }


.lockout-glitch[b-7ogj3jskfu] {
    position: relative;
    animation: shake-b-7ogj3jskfu 0.15s infinite;
    background: rgba(50, 0, 0, 0.9) !important; /* Red alert tint */
    border-top: 2px solid #ff003c !important;
}

@keyframes shake-b-7ogj3jskfu {
    0% {
        transform: translate(1px, 1px) rotate(0deg);
    }

    10% {
        transform: translate(-1px, -2px) rotate(-1deg);
    }

    20% {
        transform: translate(-3px, 0px) rotate(1deg);
    }

    30% {
        transform: translate(3px, 2px) rotate(0deg);
    }

    40% {
        transform: translate(1px, -1px) rotate(1deg);
    }

    50% {
        transform: translate(-1px, 2px) rotate(-1deg);
    }

    60% {
        transform: translate(-3px, 1px) rotate(0deg);
    }

    70% {
        transform: translate(3px, 1px) rotate(-1deg);
    }

    80% {
        transform: translate(-1px, -1px) rotate(1deg);
    }

    90% {
        transform: translate(1px, 2px) rotate(0deg);
    }

    100% {
        transform: translate(1px, -2px) rotate(-1deg);
    }
}

/* Red chromatic aberration effect for text during lockout */
.lockout-glitch .log-entry[b-7ogj3jskfu] {
    text-shadow: 2px 0px 0px rgba(255,0,0,0.5), -2px 0px 0px rgba(0,255,255,0.5);
}

/* Apply this class to the terminal container when locked */
.terminal-wrapper.lockout-active[b-7ogj3jskfu] {
    animation: terminal-glitch 0.2s infinite;
    border-top-color: #ff003c !important; /* Flash red border */
    background: rgba(40, 0, 0, 0.9) !important; /* Deep red tint */
}

/* Make the specific error logs pulse */
.log-entry.error[b-7ogj3jskfu] {
    color: #ff003c;
    text-transform: uppercase;
    font-weight: bold;
    animation: pulse 1s infinite;
}

.destruct-mode[b-7ogj3jskfu] {
    animation: intense-shake-b-7ogj3jskfu 0.1s infinite;
    filter: hue-rotate(90deg) contrast(2); /* Makes colors look "broken" */
}

@keyframes intense-shake-b-7ogj3jskfu {
    0% {
        transform: translate(2px, 2px);
    }

    50% {
        transform: translate(-4px, -4px);
    }

    100% {
        transform: translate(2px, 2px);
    }
}
/* /wwwroot/Projects/TipTopApp/TipTop.razor.rz.scp.css */
.calculator-container[b-r9xtk1qr1x] {
    min-height: 100vh;
    background: linear-gradient(to bottom right, #eff6ff, #e0e7ff);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.calculator-card[b-r9xtk1qr1x] {
    background-color: white;
    border-radius: 1rem;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    padding: 2rem;
    width: 100%;
    max-width: 28rem;
}

.icon-header[b-r9xtk1qr1x] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
}

.icon-circle[b-r9xtk1qr1x] {
    background-color: #4f46e5;
    padding: 0.75rem;
    border-radius: 9999px;
}

.dollar-icon[b-r9xtk1qr1x] {
    width: 2rem;
    height: 2rem;
    color: white;
}

.title[b-r9xtk1qr1x] {
    font-size: 1.875rem;
    font-weight: 700;
    color: #1f2937;
    text-align: center;
    margin-bottom: 0.5rem;
    margin-top: 0;
}

.subtitle[b-r9xtk1qr1x] {
    color: #4b5563;
    text-align: center;
    margin-bottom: 2rem;
    margin-top: 0;
}

.input-section[b-r9xtk1qr1x] {
    margin-bottom: 1.5rem;
}

.input-label[b-r9xtk1qr1x] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.5rem;
}

.input-wrapper[b-r9xtk1qr1x] {
    position: relative;
}

.dollar-sign[b-r9xtk1qr1x] {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7280;
    font-size: 1.125rem;
}

.bill-input[b-r9xtk1qr1x] {
    width: 100%;
    padding-left: 2.5rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-size: 1.125rem;
    border: 2px solid #d1d5db;
    border-radius: 0.5rem;
    transition: border-color 150ms;
}

    .bill-input:focus[b-r9xtk1qr1x] {
        outline: none;
        border-color: #4f46e5;
    }

    .bill-input[b-r9xtk1qr1x]::-webkit-inner-spin-button,
    .bill-input[b-r9xtk1qr1x]::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

.tip-section[b-r9xtk1qr1x] {
    margin-bottom: 1.5rem;
}

.tip-buttons[b-r9xtk1qr1x] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.tip-button[b-r9xtk1qr1x] {
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    font-weight: 600;
    transition: all 150ms;
    cursor: pointer;
    border: none;
}

.tip-button-inactive[b-r9xtk1qr1x] {
    background-color: #f3f4f6;
    color: #374151;
}

    .tip-button-inactive:hover[b-r9xtk1qr1x] {
        background-color: #e5e7eb;
    }

.tip-button-active[b-r9xtk1qr1x] {
    background-color: #4f46e5;
    color: white;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    transform: scale(1.05);
}

.results-card[b-r9xtk1qr1x] {
    background-color: #f9fafb;
    border-radius: 0.5rem;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.result-row[b-r9xtk1qr1x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
}

    .result-row:last-child[b-r9xtk1qr1x] {
        margin-bottom: 0;
        padding-bottom: 0;
    }

.border-bottom[b-r9xtk1qr1x] {
    border-bottom: 1px solid #e5e7eb;
}

.result-label[b-r9xtk1qr1x] {
    color: #374151;
    font-weight: 500;
}

.total-label[b-r9xtk1qr1x] {
    color: #111827;
    font-weight: 700;
    font-size: 1.125rem;
}

.result-value[b-r9xtk1qr1x] {
    font-weight: 600;
}

.tip-value[b-r9xtk1qr1x] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #4f46e5;
}

.bill-value[b-r9xtk1qr1x] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1f2937;
}

.total-value[b-r9xtk1qr1x] {
    font-size: 1.875rem;
    font-weight: 700;
    color: #111827;
}

.toggle-section[b-r9xtk1qr1x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #eef2ff;
    border-radius: 0.5rem;
    padding: 1rem;
}

.toggle-label-wrapper[b-r9xtk1qr1x] {
    display: flex;
    align-items: center;
}

.plus-icon[b-r9xtk1qr1x] {
    width: 1.25rem;
    height: 1.25rem;
    color: #4f46e5;
    margin-right: 0.5rem;
}

.toggle-label[b-r9xtk1qr1x] {
    color: #374151;
    font-weight: 500;
}

.toggle-button[b-r9xtk1qr1x] {
    position: relative;
    display: inline-flex;
    height: 1.5rem;
    width: 2.75rem;
    align-items: center;
    border-radius: 9999px;
    transition: background-color 150ms;
    cursor: pointer;
    border: none;
}

.toggle-button-active[b-r9xtk1qr1x] {
    background-color: #4f46e5;
}

.toggle-button-inactive[b-r9xtk1qr1x] {
    background-color: #d1d5db;
}

.toggle-circle[b-r9xtk1qr1x] {
    display: inline-block;
    height: 1rem;
    width: 1rem;
    border-radius: 9999px;
    background-color: white;
    transition: transform 150ms;
}

.toggle-circle-active[b-r9xtk1qr1x] {
    transform: translateX(1.5rem);
}

.toggle-circle-inactive[b-r9xtk1qr1x] {
    transform: translateX(0.25rem);
}
