*{margin:0;padding:0;box-sizing:border-box}
    body{font-family:Segoe UI,Tahoma,sans-serif;overflow:hidden;user-select:none}
    .desktop{width:100vw;height:100vh;background:#008080;display:flex;flex-direction:column}
    .pathbar{height:28px;background:#c0c0c0;border-bottom:1px solid #808080;display:flex;align-items:center;padding:0 8px;gap:4px;font-size:12px;overflow-x:auto;white-space:nowrap;flex-shrink:0}
    .pathbar a{color:#000080;text-decoration:none}
    .pathbar a:hover{text-decoration:underline}
    .pathbar span{color:#555}
    .search-box{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid #808080;padding:1px 6px;height:20px}
    .search-box input{background:none;border:none;outline:none;font-size:12px;width:120px;color:#000}
    .search-box input::placeholder{color:#999}
    .desktop-icons{flex:1;padding:20px;display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;overflow:hidden}
    .desktop-icon{display:flex;flex-direction:column;align-items:center;width:80px;cursor:pointer;padding:4px}
    .desktop-icon:hover{background:rgba(0,0,128,0.3);outline:1px dotted rgba(255,255,255,0.7)}
    .desktop-icon:active{background:rgba(0,0,128,0.5)}
    .desktop-icon .icon{width:48px;height:48px}
    .desktop-icon span{color:#fff;text-align:center;margin-top:4px;font-size:11px;text-shadow:1px 1px 1px #000;word-break:break-all;line-height:1.3}
    .desktop-icon.hidden{display:none}
    .taskbar{height:36px;background:#c0c0c0;border-top:2px solid #fff;display:flex;align-items:center;padding:2px 4px;gap:4px}
    .start-button{height:28px;padding:2px 8px;background:#c0c0c0;border:2px solid;border-color:#fff #808080 #808080 #fff;display:flex;align-items:center;gap:4px;font-weight:bold;font-size:12px;cursor:pointer}
    .start-button:active{border-color:#808080 #fff #fff #808080}
    .start-button img{width:20px;height:20px}
    .taskbar-right{margin-left:auto;display:flex;align-items:center;gap:4px}
    .system-tray{height:24px;padding:2px 8px;background:#c0c0c0;border:2px solid;border-color:#fff #808080 #808080 #fff;display:flex;align-items:center;gap:6px;font-size:11px}
    .clock-time{font-family:Courier New,monospace}
    .taskbar-windows{display:flex;gap:4px;margin-left:8px}
    .taskbar-window{height:24px;min-width:120px;max-width:160px;padding:2px 4px;background:#c0c0c0;border:2px solid;border-color:#fff #808080 #808080 #fff;display:flex;align-items:center;gap:4px;cursor:pointer;font-size:11px;white-space:nowrap;overflow:hidden}
    .taskbar-window.active{border-color:#808080 #fff #fff #808080;background:#dfdfdf}
    .start-menu{position:fixed;bottom:36px;left:0;width:200px;background:#c0c0c0;border:2px solid;border-color:#fff #808080 #808080 #fff;display:none;flex-direction:column;z-index:1000}
    .start-menu.active{display:flex}
    .start-menu-items{margin-left:24px;padding:4px 0}
    .start-menu-item{padding:6px 12px;display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12px}
    .start-menu-item:hover{background:#000080;color:#fff}
    .start-menu-item img{width:24px;height:24px}
    .start-menu-divider{height:1px;background:#808080;margin:4px 24px 4px 28px;border-bottom:1px solid #fff}
    .window{position:absolute;background:#c0c0c0;border:2px solid;border-color:#dfdfdf #404040 #404040 #dfdfdf;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #808080;min-width:200px;min-height:100px}
    .window-titlebar{height:24px;background:linear-gradient(90deg,#000080,#1084d0);display:flex;align-items:center;padding:2px 4px;cursor:default}
    .window-title{flex:1;color:#fff;font-size:12px;font-weight:bold;white-space:nowrap;overflow:hidden}
    .window-controls{display:flex;gap:2px}
    .window-control{width:16px;height:14px;background:#c0c0c0;border:1px solid;border-color:#fff #808080 #808080 #fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:bold;cursor:pointer}
    .window-control:active{border-color:#808080 #fff #fff #808080}
    .window-content{background:#fff;margin:2px;padding:8px;border:2px solid;border-color:#808080 #fff #fff #808080;overflow:auto}
    #preview-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);justify-content:center;align-items:center;z-index:9999}
    #preview-modal.active{display:flex}
    #preview-win{background:#c0c0c0;border:2px solid;border-color:#dfdfdf #404040 #404040 #dfdfdf;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #808080;display:flex;flex-direction:column;width:700px;height:500px}
    #preview-titlebar{height:24px;background:linear-gradient(90deg,#000080,#1084d0);display:flex;align-items:center;padding:2px 4px;flex-shrink:0;user-select:none}
    #preview-title{flex:1;color:#fff;font-size:12px;font-weight:bold;padding-left:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    #preview-close{width:16px;height:14px;background:#c0c0c0;border:1px solid;border-color:#fff #808080 #808080 #fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:bold;cursor:pointer;flex-shrink:0}
    #preview-content{flex:1;background:#fff;margin:2px;overflow:auto}
    #preview-content.text{padding:16px;font-size:14px;line-height:1.7;color:#000;font-family:Segoe UI,sans-serif;white-space:pre-wrap;word-break:break-word}
    #preview-content.text h1,#preview-content.text h2,#preview-content.text h3{color:#000;margin:12px 0 8px 0}
    #preview-content.text h1{font-size:22px}#preview-content.text h2{font-size:18px}#preview-content.text h3{font-size:16px}
    #preview-content.text p{margin:8px 0}
    #preview-content.text code{background:#f0f0f0;padding:2px 6px;border-radius:3px;font-family:monospace}
    #preview-content.text pre{background:#f5f5f5;padding:12px;border-radius:4px;overflow-x:auto}
    #preview-content.text pre code{background:none;padding:0}
    #preview-content.text ul,#preview-content.text ol{padding-left:24px;margin:8px 0}
    #preview-content.text blockquote{border-left:3px solid #ccc;padding-left:12px;color:#666;margin:8px 0}
    #preview-content.text table{border-collapse:collapse;width:100%;margin:12px 0;font-size:13px}
    #preview-content.text table th{background:linear-gradient(180deg,#000080,#0a0a7a);color:#fff;padding:8px 12px;text-align:left;font-weight:bold;border:1px solid #000080}
    #preview-content.text table td{padding:7px 12px;border:1px solid #a0a0a0;background:#fff}
    #preview-content.text table tr:nth-child(even) td{background:#f0f0f0}
    #preview-content.text table tr:hover td{background:#d0d8e8}
    #preview-content.text table{border:2px solid #808080;box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 #404040}
    #preview-content.image,#preview-content.media{padding:16px;display:flex;align-items:center;justify-content:center}
    #preview-content.image img{max-width:100%;max-height:75vh;object-fit:contain}
    #preview-content.media video{width:100%;max-height:65vh}
    #preview-content.media audio{width:100%;max-width:500px;margin:0 auto}
    .context-menu{position:fixed;background:#ffffc0;border:1px solid #000;border-top:2px solid #fff;border-left:2px solid #fff;z-index:9999;min-width:160px;padding:2px 0;display:none}
    .context-menu.active{display:block}
    .context-menu-item{padding:6px 24px 6px 8px;cursor:pointer;font-size:12px;color:#000;display:flex;align-items:center;gap:6px;white-space:nowrap}
    .context-menu-item:hover{background:#000080;color:#fff}
    .context-menu-item svg{width:16px;height:16px;flex-shrink:0}
    .context-menu-divider{height:1px;background:#808080;margin:2px 0}
    .no-results{color:#fff;text-align:center;font-size:14px;padding:40px;grid-column:1/-1}.desktop{background:url('/static/fox-mountain.jpg') center center / cover no-repeat}

/* ===== Win95 Music Player ===== */
.music-player.win95-player {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
    background: linear-gradient(180deg, #c0c0c0 0%, #a0a0a0 100%);
    color: #000;
    font-family: 'Segoe UI', Tahoma, sans-serif;
}

.music-album-art.win95-album {
    width: 140px;
    height: 140px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.win95-tape {
    width: 120px;
    height: 80px;
    background: #808080;
    border-radius: 8px;
    border: 2px solid #404040;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 10px 20px;
    box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #404040;
}

.win95-tape-reel {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #000;
    border: 3px solid #808080;
    display: flex;
    align-items: center;
    justify-content: center;
}

.win95-tape-reel::after {
    content: '';
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #c0c0c0;
}

.win95-tape.playing .win95-tape-reel {
    animation: tape-spin 0.5s linear infinite;
}

@keyframes tape-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.music-info {
    text-align: center;
    margin-bottom: 12px;
}

.music-title {
    font-size: 16px;
    font-weight: bold;
    color: #000;
    max-width: 400px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.music-progress {
    width: 100%;
    max-width: 350px;
    margin-bottom: 12px;
}

.music-progress-bar {
    width: 100%;
    height: 20px;
    background: #fff;
    border: 2px solid;
    border-color: #fff #404040 #404040 #fff;
    cursor: pointer;
    position: relative;
    margin-bottom: 4px;
}

.music-progress-fill {
    height: 100%;
    background: #000080;
    width: 0%;
}

.music-progress-thumb {
    display: none;
}

.music-time {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    color: #000;
    font-family: 'Courier New', monospace;
}

.music-controls.win95-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 12px;
}

.win95-btn {
    width: 32px;
    height: 24px;
    background: #c0c0c0;
    border: 2px solid;
    border-color: #fff #404040 #404040 #fff;
    cursor: pointer;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.win95-btn:active {
    border-color: #404040 #fff #fff #404040;
}

.win95-play-btn {
    width: 40px;
    height: 32px;
    font-size: 16px;
}

.music-volume.win95-volume {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    margin-bottom: 12px;
}

.music-volume.win95-volume input[type="range"] {
    width: 80px;
    height: 16px;
    -webkit-appearance: none;
    background: #fff;
    border: 1px solid;
    border-color: #fff #404040 #404040 #fff;
}

.music-volume.win95-volume input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 14px;
    height: 20px;
    background: #c0c0c0;
    border: 2px solid;
    border-color: #fff #404040 #404040 #fff;
    cursor: pointer;
}

.music-lyrics {
    flex: 1;
    width: 100%;
    max-width: 450px;
    overflow-y: auto;
    text-align: center;
    background: #fff;
    border: 2px solid;
    border-color: #fff #404040 #404040 #fff;
    padding: 8px;
}

.lyrics-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.lyrics-line {
    font-size: 13px;
    color: #000;
    line-height: 1.4;
    transition: all 0.3s;
    padding: 2px 4px;
}

.lyrics-line.active {
    color: #000080;
    font-weight: bold;
    background: #ffffc0;
}

.lyrics-line.no-lyrics {
    color: #808080;
    font-style: italic;
}

/* 音频元素样式 */
#audio-player {
    display: none;
}
