/* ===================================   1. VARIABLES & RESET GLOBAL   =================================== */:root {    --primary-color: #00ffaa;    --background-color: #000000;    --text-color: #E0E0E0;    --text-color-secondary: #888888;    --font-mono: 'Fira Code', monospace;    --shadow-color: rgba(0, 255, 170, 0.4);    --prompt-user-color: #8AE234;    --prompt-path-color: #729FCF;    --ls-dir-color: #729FCF;    --highlight-color: #00ffaa;    --ascii-color: #00ffaa;    --error-color: #F7524F;}* {    margin: 0;    padding: 0;    box-sizing: border-box;}html {    scroll-behavior: smooth;    height: 100%;}body {    font-family: var(--font-mono);    background-color: var(--background-color);    color: var(--text-color);    line-height: 1.6;    -webkit-font-smoothing: antialiased;    -moz-osx-font-smoothing: grayscale;    display: flex;    flex-direction: column;    min-height: 100vh;    overflow-x: hidden;}main {    flex-grow: 1;}a {    text-decoration: none;    color: var(--highlight-color);    transition: all 0.2s ease-in-out;}a:hover {    text-shadow: 0 0 5px var(--highlight-color);}.highlight {    color: var(--highlight-color);    font-weight: bold;}.hidden {    display: none !important;}/* ===================================   SETUP MODAL   =================================== */.setup-modal {    position: fixed;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(0, 0, 0, 0.9);    display: flex;    justify-content: center;    align-items: center;    z-index: 2000;    backdrop-filter: blur(5px);}.modal-content {    background-color: var(--background-color);    padding: 2.5rem;    border: 1px solid var(--text-color-secondary);    box-shadow: 0 0 15px var(--shadow-color);    text-align: center;    max-width: 90%;    width: 500px;}.prompt-text {    font-size: 1.2rem;    margin-bottom: 1.5rem;}.prompt-buttons {    display: flex;    justify-content: center;    gap: 1rem;}.modal-btn {    background-color: transparent;    border: 1px solid var(--highlight-color);    color: var(--highlight-color);    padding: 0.75rem 1.5rem;    font-family: var(--font-mono);    font-size: 1rem;    cursor: pointer;    transition: all 0.2s ease-in-out;}.modal-btn:hover {    background-color: var(--highlight-color);    color: var(--background-color);    box-shadow: 0 0 10px var(--shadow-color);}/* ===================================   2. TERMINAL SCREEN & ANIMATIONS   =================================== */.terminal-screen {    width: 100%;    max-width: 1280px;    margin: 3rem auto;    padding: 2rem;    background: rgba(10,10,10,0.5);    border: 1px solid #222;    box-shadow: 0 0 15px var(--shadow-color);    min-height: calc(100vh - 12rem);    text-align: left;    white-space: pre-wrap;    word-break: break-all;    overflow-y: auto;    position: relative;    cursor: text;}.terminal-screen .line {    margin-bottom: 0.25rem;}.terminal-screen .user {    color: var(--text-color-secondary);}.input-line {    display: flex;    align-items: center;    font-size: 1rem;}#terminal-input {    background: none;    border: none;    color: var(--text-color);    outline: none;    caret-color: var(--highlight-color);    font-family: var(--font-mono);    font-size: 1rem;    flex-grow: 1;    margin-left: 0.5rem;}.prompt-user { color: var(--prompt-user-color); }.prompt-path { color: var(--prompt-path-color); }.ls-dir { color: var(--ls-dir-color); font-weight: bold; }.ls-file { color: var(--text-color); }.ascii-art { color: var(--ascii-color); }.error { color: var(--error-color); }.input-line .prompt::after {    content: '_';    color: var(--highlight-color);    animation: blink-cursor 1s step-end infinite;    margin-left: -1px;}#terminal-input:focus + .prompt::after {    display: none;}@keyframes blink-cursor {    from, to { opacity: 0; }    50% { opacity: 1; }}/* ===================================   3. HEADER, NAV & FOOTER   =================================== */.main-header {    background-color: rgba(0, 0, 0, 0.85);    backdrop-filter: blur(10px);    border-bottom: 1px solid var(--text-color-secondary);    position: sticky;    top: 0;    z-index: 50;    flex-shrink: 0;}.main-header .container {    display: flex;    justify-content: space-between;    align-items: center;    max-width: 1280px;    margin: 0 auto;    padding: 0 1.5rem;    height: 4.5rem;}.logo {    display: flex;    align-items: center;    gap: 0.5rem;}.logo-title {    font-size: 1.25rem;    font-weight: 700;    color: var(--highlight-color);    text-shadow: 0 0 5px var(--shadow-color);}.logo-tagline {    font-size: 0.75rem;    color: var(--text-color-secondary);    display: none;}.mobile-menu-btn {    display: block;    background: none;    border: none;    cursor: pointer;    padding: 0.5rem;    z-index: 1000;    color: var(--highlight-color);    font-size: 1.5rem;}.menu-icon {    font-weight: 700;}.nav-open .menu-icon {    transform: rotate(90deg);}.main-nav {    position: fixed;    top: 4.5rem;    left: 0;    width: 100%;    height: calc(100vh - 4.5rem);    background-color: var(--background-color);    transform: translateX(-100%);    transition: transform 0.3s ease-in-out;    overflow-y: auto;    visibility: hidden;}.nav-open .main-nav {    transform: translateX(0);    visibility: visible;}.main-nav .nav-list {    list-style: none;}.main-nav .nav-list a {    display: block;    padding: 1.25rem 1.5rem;    font-size: 1rem;    font-weight: 500;    border-bottom: 1px solid var(--text-color-secondary);    transition: all 0.2s ease-in-out;    color: var(--text-color);}.main-nav .nav-list a:hover {    background-color: #00331a;    color: var(--highlight-color);    text-shadow: 0 0 5px var(--highlight-color);}.main-footer {    padding: 1rem 1rem;    background-color: transparent;    border-top: 1px solid var(--text-color-secondary);    flex-shrink: 0;    text-align: center;    font-size: 0.9rem;    color: var(--text-color-secondary);}@media (min-width: 1024px) {    .logo-tagline {        display: block;    }    .mobile-menu-btn {        display: none;    }    .main-nav {        position: static;        width: auto;        height: auto;        background: none;        transform: none;        transition: none;        overflow-y: visible;        visibility: visible;    }    .main-nav .nav-list {        display: flex;        gap: 0.5rem;    }    .main-nav .nav-list a {        padding: 0.5rem 1rem;        border-bottom: none;        border-radius: 0;        color: var(--text-color-secondary);    }    /* NOUVEAU STYLE POUR LES LIENS DE NAVIGATION */    .main-nav .nav-list a::before {        content: '[ ';        color: var(--text-color-secondary);        opacity: 0.7;    }    .main-nav .nav-list a::after {        content: ' ]';        color: var(--text-color-secondary);        opacity: 0.7;    }    .main-nav .nav-list a:hover {        background-color: rgba(0, 255, 170, 0.15);        color: var(--highlight-color);        text-shadow: none;    }    .main-nav .nav-list a:hover::before,    .main-nav .nav-list a:hover::after {        color: var(--highlight-color);        opacity: 1;    }}