/* ===== WINDOWS XP THEME STYLES ===== */
@import url('https://fonts.googleapis.com/css2?family=Pixelify+Sans&display=swap');

:root {
    /* XP Colors */
    --xp-blue: #0055E5;
    --xp-blue-light: #0A246A;
    --xp-blue-dark: #003399;
    --xp-taskbar: linear-gradient(180deg, #3168d5 0%, #4993E6 3%, #2157D7 6%, #2663E0 10%, #1941A5 90%, #1C44A9 93%, #235CE6 95%, #245DDC 100%);
    --xp-start: linear-gradient(180deg, #3B8F3D 0%, #379E35 15%, #379E35 85%, #2D8E2C 100%);
    --xp-titlebar: linear-gradient(180deg, #0058E6 0%, #3A93FF 8%, #288EF8 40%, #127CE8 88%, #0561D2 93%, #0553B5 95%, #0553B5 100%);
    --xp-titlebar-inactive: linear-gradient(180deg, #7996C8 0%, #97B4E8 8%, #7F9FD8 40%, #6E8AC8 88%, #5D7ABB 93%, #5573B5 100%);
    --xp-window-bg: #ECE9D8;
    --xp-window-border: #0055E5;
    --xp-button: linear-gradient(180deg, #FFFFFF 0%, #ECE9D8 45%, #D8D0BE 50%, #D8D0BE 100%);
    --xp-button-hover: linear-gradient(180deg, #FFFFFF 0%, #F5F3EF 45%, #E8E4D8 50%, #E8E4D8 100%);
    --xp-input-border: #7F9DB9;
    --xp-sidebar: linear-gradient(180deg, #6B91C9 0%, #6B91C9 25%, #4B73AA 100%);
    --xp-bliss-sky: #245EDC;
    --xp-bliss-grass: #3DA042;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Tahoma', 'Segoe UI', sans-serif;
    font-size: 11px;
    overflow: hidden;
    height: 100vh;
    cursor: default;
}

.hidden {
    display: none !important;
}

/* ===== LOGIN SCREEN ===== */
.login-screen {
    height: 100vh;
    background: linear-gradient(180deg, #0058B0 0%, #0070D0 30%, #3090E8 50%, #0070D0 70%, #0058B0 100%);
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
}

/* Top left branding text */
.login-branding {
    position: absolute;
    top: 25px;
    left: 35px;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    z-index: 10;
}

.branding-small {
    color: #fff;
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 0.5px;
}

.branding-large {
    color: #fff;
    font-size: 32px;
    font-weight: bold;
    font-style: italic;
    letter-spacing: -0.5px;
    line-height: 1;
}

.login-content {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 80px;
    gap: 80px;
}

.login-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.windows-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

/* Real Windows logo image */
.windows-flag-img {
    width: 200px;
    height: auto;
    filter: drop-shadow(2px 2px 4px rgba(0,0,0,0.3));
}

.loading-flag-img {
    width: 120px;
    animation: flagFloat 2s ease-in-out infinite;
}

@keyframes flagFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

.windows-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
}

/* "Herndon's Favorite" - small text like "Microsoft" */
.microsoft {
    color: #fff;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 0.5px;
    margin-bottom: 0;
    margin-left: 2px;
}

/* "IT Experts" - large text like "Windows" */
.windows-xp {
    color: #fff;
    font-size: 48px;
    font-weight: bold;
    letter-spacing: -1px;
    font-style: italic;
    line-height: 1;
}

/* Hide the XP span since we're not using it anymore */
.windows-xp .xp {
    display: none;
}

/* Instruction text below logo - same style as XP */
.login-instruction {
    color: #fff;
    font-size: 15px;
    font-weight: normal;
    margin-top: 5px;
}

.login-right {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 280px;
    align-self: center;
}

/* User accounts - XP style card */
.user-account {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 15px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.15s ease;
}

/* Main account - highlighted and clickable */
.user-account.main-account {
    background: rgba(255, 255, 255, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.5);
}

.user-account.main-account:hover {
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.7);
}

/* Disabled accounts - grayed out */
.user-account.disabled-account {
    opacity: 0.5;
    cursor: default;
    pointer-events: none;
}

/* User avatar frame - XP style */
.user-avatar-frame {
    padding: 2px;
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.user-avatar-frame.disabled {
    background: #ccc;
}

.user-avatar {
    width: 48px;
    height: 48px;
    background: linear-gradient(180deg, #87CEEB 0%, #4682B4 100%);
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.user-avatar-frame.disabled .user-avatar {
    background: linear-gradient(180deg, #aaa 0%, #888 100%);
}

.avatar-icon {
    font-size: 28px;
}

.user-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.user-name {
    color: #fff;
    font-size: 13px;
    font-weight: bold;
}

.user-name.disabled {
    color: rgba(255,255,255,0.7);
}

.user-status {
    display: flex;
    align-items: center;
    gap: 6px;
}

.status-arrow {
    color: #90EE90;
    font-size: 10px;
    animation: bounceArrow 1s ease-in-out infinite;
}

@keyframes bounceArrow {
    0%, 100% { transform: translateX(0); }
    50% { transform: translateX(4px); }
}

.status-text {
    color: rgba(255,255,255,0.9);
    font-size: 11px;
}

/* Bottom bar */
.login-bottom {
    background: #0055B0;
    padding: 8px 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.login-bottom-left {
    display: flex;
    align-items: center;
}

.turn-off-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.2s;
}

.turn-off-btn:hover {
    background: rgba(255,255,255,0.1);
}

.power-icon {
    width: 20px;
    height: 20px;
    background: linear-gradient(180deg, #E53935 0%, #C62828 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.power-circle {
    width: 10px;
    height: 10px;
    border: 2px solid #fff;
    border-radius: 50%;
    position: relative;
}

.power-circle::after {
    content: '';
    position: absolute;
    top: -3px;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: 6px;
    background: #fff;
}

.turn-off-btn span {
    color: #fff;
    font-size: 11px;
}

.login-bottom-right {
    display: flex;
    align-items: center;
}

.login-tagline {
    color: rgba(255,255,255,0.7);
    font-size: 10px;
    text-align: right;
    line-height: 1.4;
}

/* Remove unused small flag styles */
.windows-flag-small {
    display: none;
}
.windows-flag-small .flag-yellow {
    border-radius: 2px 2px 35% 2px;
    transform: skewX(2deg);
}

.login-tagline {
    color: rgba(255,255,255,0.5);
    font-size: 10px;
    text-align: right;
    line-height: 1.4;
}

/* ===== LOADING SCREEN ===== */
.loading-screen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.loading-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.loading-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.loading-logo .windows-text {
    align-items: center;
}

.loading-logo .windows-text .microsoft {
    font-size: 14px;
    color: #fff;
}

.loading-logo .windows-text .windows-xp {
    font-size: 36px;
    color: #fff;
    text-shadow: none;
}

.loading-bar-container {
    width: 200px;
}

.loading-bar {
    width: 100%;
    height: 20px;
    background: #000;
    border: 1px solid #333;
    border-radius: 2px;
    overflow: hidden;
    position: relative;
}

.loading-bar-fill {
    position: absolute;
    top: 2px;
    left: 2px;
    bottom: 2px;
    width: 0%;
    display: flex;
    gap: 3px;
    animation: loadingProgress 2s ease-in-out forwards;
}

.loading-bar-fill::before,
.loading-bar-fill::after {
    content: '';
    display: block;
}

@keyframes loadingProgress {
    0% { width: 0%; }
    100% { width: calc(100% - 4px); }
}

.loading-bar-fill {
    background: repeating-linear-gradient(
        90deg,
        #0078D7 0px,
        #0078D7 8px,
        #00A8E8 8px,
        #00A8E8 12px,
        #0078D7 12px,
        #0078D7 20px
    );
    animation: loadingProgress 2s ease-out forwards, loadingShine 0.5s linear infinite;
}

@keyframes loadingShine {
    0% { background-position: 0 0; }
    100% { background-position: 20px 0; }
}

.loading-text {
    color: #fff;
    font-size: 11px;
    text-align: center;
}

/* ===== DESKTOP ===== */
.desktop {
    height: 100vh;
    background: url('assets/bliss.jpg') center center / cover no-repeat;
    background-color: #3A6EA5; /* Fallback color */
    position: relative;
    padding-bottom: 30px;
}

/* ===== DESKTOP ICONS ===== */
.desktop-icons {
    position: absolute;
    top: 20px;
    left: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    z-index: 1;
}

.desktop-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 8px;
    border-radius: 4px;
    cursor: pointer;
    width: 75px;
    transition: background 0.1s;
}

.desktop-icon:hover {
    background: rgba(11, 97, 255, 0.3);
}

.desktop-icon.selected {
    background: rgba(11, 97, 255, 0.5);
}

.icon-image {
    font-size: 32px;
    filter: drop-shadow(1px 1px 2px rgba(0,0,0,0.5));
}

.icon-label {
    color: #fff;
    font-size: 11px;
    text-align: center;
    text-shadow: 1px 1px 2px #000, -1px -1px 2px #000, 1px -1px 2px #000, -1px 1px 2px #000;
    word-wrap: break-word;
    max-width: 70px;
}

/* ===== XP WINDOWS ===== */
.xp-window {
    position: absolute;
    background: var(--xp-window-bg);
    border-radius: 8px 8px 0 0;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.4), inset 0 0 0 1px rgba(255,255,255,0.5);
    min-width: 300px;
    z-index: 10;
    overflow: hidden;
}

.xp-window.active {
    z-index: 100;
}

.window-titlebar {
    background: var(--xp-titlebar);
    padding: 4px 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    border-radius: 8px 8px 0 0;
    cursor: move;
    user-select: none;
}

.xp-window:not(.active) .window-titlebar {
    background: var(--xp-titlebar-inactive);
}

.titlebar-icon {
    font-size: 14px;
}

.titlebar-title {
    flex: 1;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.4);
}

.titlebar-buttons {
    display: flex;
    gap: 2px;
}

.titlebar-btn {
    width: 21px;
    height: 21px;
    border: none;
    border-radius: 3px;
    font-size: 12px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Marlett', sans-serif;
}

.titlebar-btn.minimize,
.titlebar-btn.maximize {
    background: linear-gradient(180deg, #3C8CF5 0%, #1B67D9 40%, #1259C9 60%, #1259C9 100%);
    color: #fff;
    box-shadow: inset 1px 1px 0 rgba(255,255,255,0.3), inset -1px -1px 0 rgba(0,0,0,0.2);
}

.titlebar-btn.close {
    background: linear-gradient(180deg, #C66151 0%, #C13535 40%, #AB2929 60%, #AB2929 100%);
    color: #fff;
    box-shadow: inset 1px 1px 0 rgba(255,255,255,0.3), inset -1px -1px 0 rgba(0,0,0,0.2);
}

.titlebar-btn:hover {
    filter: brightness(1.1);
}

.titlebar-btn:active {
    filter: brightness(0.9);
}

.window-menubar {
    background: var(--xp-window-bg);
    padding: 4px 8px;
    display: flex;
    gap: 15px;
    border-bottom: 1px solid #ACA899;
}

.window-menubar span {
    font-size: 11px;
    color: #000;
    cursor: pointer;
}

.window-menubar span:hover {
    color: #0055E5;
}

.window-toolbar {
    background: linear-gradient(180deg, #F6F4EC 0%, #EAE6DA 100%);
    padding: 4px 8px;
    display: flex;
    gap: 4px;
    border-bottom: 1px solid #ACA899;
}

.toolbar-btn {
    background: transparent;
    border: 1px solid transparent;
    padding: 3px 8px;
    font-size: 11px;
    cursor: pointer;
    border-radius: 3px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.toolbar-btn:hover {
    background: linear-gradient(180deg, #FFF 0%, #E8E4D8 100%);
    border-color: #ACA899;
}

.toolbar-icon {
    font-size: 12px;
}

.window-addressbar {
    background: var(--xp-window-bg);
    padding: 4px 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid #ACA899;
}

.address-label {
    font-size: 11px;
    color: #000;
}

.address-input {
    flex: 1;
    background: #fff;
    border: 1px solid var(--xp-input-border);
    padding: 3px 6px;
    font-size: 11px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.address-icon {
    font-size: 12px;
}

.window-content {
    background: #fff;
    max-height: 500px;
    overflow-y: auto;
}

.window-statusbar {
    background: linear-gradient(180deg, #ECE9D8 0%, #D8D4C4 100%);
    padding: 3px 8px;
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    color: #333;
    border-top: 1px solid #ACA899;
}

/* ===== EXPLORER CONTENT ===== */
.explorer-content {
    display: flex;
    min-height: 350px;
}

.explorer-sidebar {
    width: 180px;
    background: var(--xp-sidebar);
    padding: 10px;
    border-right: 1px solid #4B73AA;
}

.sidebar-section {
    background: rgba(255,255,255,0.95);
    border-radius: 8px;
    margin-bottom: 10px;
    overflow: hidden;
}

.sidebar-header {
    background: linear-gradient(180deg, #fff 0%, #C6D3F7 100%);
    padding: 8px 10px;
    font-size: 11px;
    font-weight: bold;
    color: #21519B;
    display: flex;
    align-items: center;
    gap: 6px;
}

.collapse-icon {
    font-size: 8px;
}

.sidebar-links {
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sidebar-links a {
    font-size: 11px;
    color: #0066CC;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
}

.sidebar-links a:hover {
    text-decoration: underline;
}

.explorer-main {
    flex: 1;
    padding: 15px;
    background: #fff;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 15px;
}

.service-folder {
    background: linear-gradient(180deg, #fff 0%, #F5F3EF 100%);
    border: 1px solid #D4D0C8;
    border-radius: 4px;
    padding: 12px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
}

.service-folder:hover {
    background: linear-gradient(180deg, #E8F4FC 0%, #C8E4F8 100%);
    border-color: #7EB4EA;
}

.folder-icon {
    font-size: 36px;
    margin-bottom: 6px;
}

.folder-name {
    font-size: 11px;
    font-weight: bold;
    color: #000;
    margin-bottom: 4px;
}

.folder-desc {
    font-size: 10px;
    color: #666;
    line-height: 1.3;
    margin-bottom: 8px;
}

.service-badge {
    font-size: 9px;
    padding: 2px 6px;
    border-radius: 3px;
    display: inline-block;
}

.service-badge.remote {
    background: #D4EDDA;
    color: #155724;
    border: 1px solid #C3E6CB;
}

.service-badge.onsite {
    background: #FFF3CD;
    color: #856404;
    border: 1px solid #FFE69C;
}

/* ===== WELCOME CONTENT ===== */
.welcome-content {
    padding: 20px;
}

.welcome-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #D4D0C8;
}

.welcome-icon {
    font-size: 48px;
}

.welcome-title h1 {
    font-size: 24px;
    color: #003399;
    margin-bottom: 4px;
}

.welcome-title p {
    font-size: 14px;
    color: #666;
}

.highlight {
    color: #0066CC;
    font-weight: bold;
}

.welcome-body {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.xp-infobox {
    background: linear-gradient(180deg, #FFFFD5 0%, #FFFFB0 100%);
    border: 1px solid #E6D98A;
    border-radius: 4px;
    padding: 12px 15px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.infobox-icon {
    font-size: 24px;
}

.infobox-text {
    font-size: 12px;
    line-height: 1.5;
    color: #333;
}

.welcome-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #333;
}

.feature-icon {
    color: #228B22;
    font-weight: bold;
}

.welcome-actions {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}

/* ===== XP BUTTONS ===== */
.xp-button {
    background: var(--xp-button);
    border: 1px solid #003C74;
    border-radius: 3px;
    padding: 6px 16px;
    font-size: 11px;
    font-family: 'Tahoma', sans-serif;
    cursor: pointer;
    color: #000;
    box-shadow: inset 1px 1px 0 #fff;
}

.xp-button:hover {
    background: var(--xp-button-hover);
}

.xp-button:active {
    background: linear-gradient(180deg, #D8D0BE 0%, #D8D0BE 50%, #ECE9D8 50%, #FFFFFF 100%);
}

.xp-button.primary {
    background: linear-gradient(180deg, #fff 0%, #DFEAF8 20%, #C8DCF0 80%, #B8CDE8 100%);
    border: 2px solid #003C74;
    box-shadow: 0 0 3px rgba(0, 102, 204, 0.5);
}

.xp-button.primary:hover {
    background: linear-gradient(180deg, #fff 0%, #E8F0FC 20%, #D8E8F8 80%, #C8DCF0 100%);
}

.xp-button.large {
    padding: 10px 24px;
    font-size: 12px;
}

/* ===== NOTEPAD CONTENT ===== */
.notepad-content {
    padding: 0;
}

.notepad-text {
    font-family: 'Lucida Console', 'Courier New', monospace;
    font-size: 12px;
    line-height: 1.5;
    padding: 10px;
    white-space: pre-wrap;
    min-height: 400px;
}

/* ===== FORM CONTENT ===== */
.form-content {
    padding: 15px;
}

.contact-header {
    text-align: center;
    margin-bottom: 15px;
}

.contact-header h2 {
    font-size: 16px;
    color: #003399;
    margin-bottom: 4px;
}

.contact-header p {
    font-size: 11px;
    color: #666;
}

.xp-form {
    margin-bottom: 15px;
}

.form-group {
    margin-bottom: 10px;
}

.form-group label {
    display: block;
    font-size: 11px;
    margin-bottom: 3px;
    color: #000;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.xp-input,
.xp-select,
.xp-textarea {
    width: 100%;
    padding: 4px 6px;
    font-size: 11px;
    font-family: 'Tahoma', sans-serif;
    border: 1px solid var(--xp-input-border);
    background: #fff;
}

.xp-input:focus,
.xp-select:focus,
.xp-textarea:focus {
    outline: none;
    border-color: #0066CC;
    box-shadow: 0 0 3px rgba(0, 102, 204, 0.3);
}

.xp-textarea {
    resize: vertical;
    min-height: 60px;
}

.form-actions {
    display: flex;
    gap: 8px;
    margin-top: 15px;
}

.contact-info-box {
    background: linear-gradient(180deg, #F6F4EC 0%, #EAE6DA 100%);
    border: 1px solid #ACA899;
    border-radius: 4px;
    padding: 12px;
}

.info-row {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    margin-bottom: 6px;
}

.info-row:last-child {
    margin-bottom: 0;
}

.info-icon {
    font-size: 14px;
}

/* ===== REMOTE CONTENT ===== */
.remote-content {
    padding: 20px;
}

.remote-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.remote-icon {
    font-size: 48px;
}

.remote-title h2 {
    font-size: 20px;
    color: #003399;
    margin-bottom: 4px;
}

.remote-title p {
    font-size: 12px;
    color: #666;
}

.remote-hero {
    background: linear-gradient(180deg, #E8F4FC 0%, #C8E4F8 100%);
    border: 2px solid #7EB4EA;
    border-radius: 6px;
    padding: 15px;
    margin-bottom: 20px;
    text-align: center;
}

.hero-badge {
    background: #0066CC;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    padding: 4px 10px;
    border-radius: 3px;
    display: inline-block;
    margin-bottom: 10px;
}

.remote-hero p {
    font-size: 12px;
    color: #333;
    line-height: 1.5;
}

.remote-steps {
    margin-bottom: 20px;
}

.remote-steps h3 {
    font-size: 13px;
    color: #003399;
    margin-bottom: 12px;
}

.step {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}

.step-number {
    width: 28px;
    height: 28px;
    background: linear-gradient(180deg, #3C8CF5 0%, #1259C9 100%);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    flex-shrink: 0;
}

.step-content strong {
    display: block;
    font-size: 12px;
    color: #000;
    margin-bottom: 2px;
}

.step-content p {
    font-size: 11px;
    color: #666;
}

.remote-benefits h3 {
    font-size: 13px;
    color: #003399;
    margin-bottom: 12px;
}

.benefits-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.benefit {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    color: #333;
    padding: 6px 10px;
    background: #F6F4EC;
    border-radius: 3px;
}

.benefit-icon {
    font-size: 14px;
}

.remote-cta {
    text-align: center;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #D4D0C8;
}

/* ===== PRICING CONTENT ===== */
.pricing-content {
    padding: 20px;
}

.pricing-header {
    text-align: center;
    margin-bottom: 20px;
}

.pricing-header h2 {
    font-size: 18px;
    color: #003399;
    margin-bottom: 4px;
}

.pricing-header p {
    font-size: 12px;
    color: #666;
}

.pricing-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-bottom: 20px;
}

.pricing-card {
    border: 1px solid #D4D0C8;
    border-radius: 6px;
    padding: 15px;
    text-align: center;
    background: #fff;
    position: relative;
}

.pricing-card.remote-card {
    border: 2px solid #0066CC;
    background: linear-gradient(180deg, #fff 0%, #E8F4FC 100%);
}

.card-badge {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    background: #0066CC;
    color: #fff;
    font-size: 9px;
    font-weight: bold;
    padding: 3px 10px;
    border-radius: 3px;
}

.pricing-card .card-icon {
    font-size: 36px;
    margin-bottom: 8px;
}

.pricing-card h3 {
    font-size: 14px;
    color: #003399;
    margin-bottom: 8px;
}

.price {
    font-size: 28px;
    font-weight: bold;
    color: #228B22;
    margin-bottom: 12px;
}

.price span {
    font-size: 12px;
    font-weight: normal;
    color: #666;
}

.price-features {
    list-style: none;
    text-align: left;
    margin-bottom: 15px;
}

.price-features li {
    font-size: 11px;
    color: #333;
    padding: 4px 0;
}

.pricing-note {
    background: linear-gradient(180deg, #FFFFD5 0%, #FFFFB0 100%);
    border: 1px solid #E6D98A;
    border-radius: 4px;
    padding: 12px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.note-icon {
    font-size: 20px;
}

.note-text {
    font-size: 11px;
    line-height: 1.4;
}

/* ===== TASKBAR ===== */
.taskbar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 30px;
    background: var(--xp-taskbar);
    display: flex;
    align-items: center;
    padding: 0 2px;
    z-index: 1000;
}

.start-button {
    background: var(--xp-start);
    border: none;
    border-radius: 0 8px 8px 0;
    padding: 2px 12px 2px 6px;
    height: 28px;
    display: flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    color: #fff;
    font-size: 13px;
    font-weight: bold;
    font-style: italic;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.4);
    box-shadow: inset 1px 1px 0 rgba(255,255,255,0.3), inset -1px -1px 0 rgba(0,0,0,0.2);
}

.start-button:hover {
    filter: brightness(1.1);
}

.start-button:active {
    filter: brightness(0.95);
}

.start-logo {
    display: flex;
    align-items: center;
}

.mini-flag {
    width: 20px;
    height: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 1px;
    transform: perspective(100px) rotateY(-8deg) skewY(-1deg);
}

.mf-red { background: linear-gradient(135deg, #FF4500 0%, #F65314 100%); border-radius: 2px 30% 2px 2px; transform: skewX(-2deg); }
.mf-green { background: linear-gradient(135deg, #7CBB00 0%, #5FA600 100%); border-radius: 30% 2px 2px 2px; transform: skewX(2deg); }
.mf-blue { background: linear-gradient(135deg, #00A1F1 0%, #0082D4 100%); border-radius: 2px 2px 2px 30%; transform: skewX(-2deg); }
.mf-yellow { background: linear-gradient(135deg, #FFBB00 0%, #F5A700 100%); border-radius: 2px 2px 30% 2px; transform: skewX(2deg); }

.taskbar-buttons {
    flex: 1;
    display: flex;
    gap: 3px;
    padding: 0 4px;
    overflow-x: auto;
}

.taskbar-btn {
    background: linear-gradient(180deg, #3E9FEB 0%, #2373CC 40%, #1D5DA8 100%);
    border: none;
    border-radius: 2px;
    padding: 2px 10px;
    height: 24px;
    min-width: 140px;
    max-width: 180px;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    color: #fff;
    font-size: 11px;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-shadow: inset 1px 1px 0 rgba(255,255,255,0.2), inset -1px -1px 0 rgba(0,0,0,0.1);
}

.taskbar-btn.active {
    background: linear-gradient(180deg, #3C8CF5 0%, #1D5DA8 100%);
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.3);
}

.taskbar-btn:hover {
    filter: brightness(1.05);
}

.taskbar-btn-icon {
    font-size: 12px;
}

.system-tray {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 10px;
    height: 100%;
    background: linear-gradient(180deg, #0F8CEB 0%, #1665BB 100%);
    border-left: 1px solid #1665BB;
}

.tray-icons {
    display: flex;
    gap: 4px;
}

.tray-icon {
    font-size: 12px;
    filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.3));
}

.tray-clock {
    color: #fff;
    font-size: 11px;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    min-width: 60px;
    text-align: center;
}

/* ===== START MENU ===== */
.start-menu {
    position: fixed;
    bottom: 30px;
    left: 0;
    width: 380px;
    background: var(--xp-window-bg);
    border: 2px solid #0055E5;
    border-radius: 6px 6px 0 0;
    box-shadow: 4px 4px 10px rgba(0,0,0,0.4);
    z-index: 1001;
    overflow: hidden;
}

.start-menu-header {
    background: linear-gradient(180deg, #2669C4 0%, #1450A2 100%);
    padding: 8px 10px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.user-pic {
    width: 42px;
    height: 42px;
    background: #fff;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    border: 2px solid #fff;
    box-shadow: 1px 1px 3px rgba(0,0,0,0.3);
}

.user-name-start {
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.4);
}

.start-menu-content {
    display: flex;
    min-height: 300px;
}

.start-menu-left {
    flex: 1;
    background: #fff;
    padding: 8px 4px;
}

.start-menu-right {
    width: 150px;
    background: linear-gradient(180deg, #6B91C9 0%, #4B73AA 100%);
    padding: 8px 4px;
}

.start-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    cursor: pointer;
    border-radius: 3px;
}

.start-item:hover {
    background: #2663E0;
    color: #fff;
}

.start-icon {
    font-size: 24px;
}

.start-label {
    font-size: 11px;
    font-weight: bold;
}

.start-divider {
    height: 1px;
    background: #D4D0C8;
    margin: 6px 8px;
}

.start-item-right {
    padding: 5px 8px;
    cursor: pointer;
    border-radius: 3px;
}

.start-item-right:hover {
    background: rgba(255,255,255,0.2);
}

.start-item-right span {
    font-size: 11px;
    color: #fff;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

.start-divider-right {
    height: 1px;
    background: rgba(255,255,255,0.3);
    margin: 6px 8px;
}

.start-menu-footer {
    background: linear-gradient(180deg, #3A6DD9 0%, #2553AC 100%);
    padding: 6px 10px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.footer-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    cursor: pointer;
    border-radius: 3px;
    color: #fff;
    font-size: 11px;
}

.footer-btn:hover {
    background: rgba(255,255,255,0.1);
}

.footer-icon {
    font-size: 14px;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
    .login-branding {
        top: 15px;
        left: 15px;
    }

    .branding-small {
        font-size: 11px;
    }

    .branding-large {
        font-size: 22px;
    }

    .login-content {
        flex-direction: column;
        padding: 30px 20px;
        padding-top: 60px;
        gap: 30px;
    }

    .login-left {
        align-items: center;
    }

    .windows-logo {
        align-items: center;
    }

    .windows-text {
        align-items: center;
    }

    .login-instruction {
        text-align: center;
    }

    .login-right {
        align-items: center;
        width: 100%;
    }

    .windows-flag-img {
        width: 140px;
    }

    .loading-flag-img {
        width: 100px;
    }

    .microsoft {
        font-size: 12px;
    }

    .windows-xp {
        font-size: 32px;
    }

    .user-account {
        width: 100%;
        max-width: 280px;
    }

    .disabled-account {
        display: none;
    }

    .login-bottom {
        flex-direction: column;
        gap: 10px;
        padding: 12px;
    }

    .login-bottom-right {
        order: -1;
    }

    .login-tagline {
        text-align: center;
    }

    .loading-logo .windows-text .microsoft {
        font-size: 12px;
    }

    .loading-logo .windows-text .windows-xp {
        font-size: 28px;
    }

    .desktop-icons {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        padding: 15px;
        gap: 5px;
    }

    .desktop-icon {
        width: 60px;
    }

    .xp-window {
        position: fixed !important;
        top: 10px !important;
        left: 5px !important;
        right: 5px !important;
        width: auto !important;
        transform: none !important;
        max-height: calc(100vh - 60px);
    }

    .window-content {
        max-height: calc(100vh - 150px);
    }

    .explorer-content {
        flex-direction: column;
    }

    .explorer-sidebar {
        width: 100%;
        display: none;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .welcome-features {
        grid-template-columns: 1fr;
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    .benefits-grid {
        grid-template-columns: 1fr;
    }

    .pricing-cards {
        grid-template-columns: 1fr;
    }

    .start-menu {
        width: 100%;
        left: 0;
        right: 0;
    }
}

/* ===== ANIMATIONS ===== */
@keyframes windowOpen {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.xp-window:not(.hidden) {
    animation: windowOpen 0.15s ease-out;
}

@keyframes loginFade {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.login-screen.fade-out {
    animation: loginFade 0.5s ease-out forwards;
}
