@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;700&family=Noto+Sans+JP:wght@400;700&display=swap');

:root {
    --bg-color: #0c0c1a;
    --text-color: #e0e0e0;
    --primary-color: #00ff99;
    --sun-color: #ffcc00;
    --earth-color: #3399ff;
    --moon-color: #cccccc;
    --satellite-color: #ff3399;
    --mars-color: #ff5733;
    --phobos-color: #a0a0a0;
    --deimos-color: #d0d0d0;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    background-color: var(--bg-color);
    color: var(--text-color);
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}

header { text-align: center; position: absolute; top: 20px; }
header h1 { font-family: 'Roboto Mono', monospace; color: var(--primary-color); font-size: 1.8em; margin: 0; font-weight: 400; }
.subtitle { font-family: 'Noto Sans JP', sans-serif; font-size: 0.9em; color: #aaa; margin-top: 5px; }

main { display: flex; flex-direction: column; align-items: center; justify-content: center; }

#cosmos-canvas {
    background: radial-gradient(ellipse at center, #1c1c2a 0%, #0c0c1a 70%);
    border-radius: 50%;
    box-shadow: 0 0 30px rgba(0, 255, 153, 0.2);
}

.display-container {
    display: flex;
    margin-top: 30px;
    gap: 30px;
    font-family: 'Roboto Mono', monospace;
    opacity: 0.7;
}

.display-box {
    text-align: center;
    border: 1px solid #444;
    padding: 10px 20px;
    border-radius: 4px;
}
.display-box .label { font-size: 0.8em; color: #aaa; display: block; }
.display-box .time { font-size: 1.5em; letter-spacing: 2px; }

footer { position: absolute; bottom: 10px; font-family: 'Roboto Mono', monospace; font-size: 0.8em; color: #888; }