@import url('https://fonts.googleapis.com/css2?family=Pretendard:wght@400;600&display=swap'); :root { --bg-gradient: linear-gradient(135deg, #4f46e5, #7c3aed, #a855f7); --box-bg: rgba(255, 255, 255, 0.1); --text-color: #e5e7eb; --border: rgba(255, 255, 255, 0.2); --btn-color: #a855f7; --btn-hover: #7c3aed; --shadow: 0 8px 24px rgba(0, 0, 0, 0.2); } * { box-sizing: border-box; margin: 0; padding: 0; word-break: keep-all; /* 한글은 단어 단위로 줄바꿈 */ } body { font-family: 'Pretendard', sans-serif; background: var(--bg-gradient); color: var(--text-color); display: flex; min-height: 100vh; } /* sidebar */ .sidebar { width: 70px; background: var(--box-bg); backdrop-filter: blur(10px); display: flex; flex-direction: column; align-items: center; padding: 1rem 0; border-right: 1px solid var(--border); flex-shrink: 0; } .sidebar a { margin: 1rem 0; width: 40px; height: 40px; border-radius: 12px; display: flex; justify-content: center; align-items: center; transition: all 0.3s ease; } .sidebar a:hover { background: var(--btn-color); box-shadow: 0 4px 10px var(--btn-hover); transform: scale(1.1); } .sidebar svg { width: 24px; height: 24px; stroke: var(--text-color); } /* content */ .content { flex: 1; display: flex; flex-direction: column; max-width: 800px; width: 100%; padding: 2rem; margin: auto; } h2 { font-size: 1.8rem; margin-bottom: 1.5rem; margin-top: 0.5rem; text-align: center; word-break: keep-all; } /* 구매내역 카드 */ .history-card { background: var(--box-bg); backdrop-filter: blur(10px); border: 1px solid var(--border); border-radius: 16px; padding: 1.5rem; box-shadow: var(--shadow); margin-bottom: 1rem; transition: transform 0.3s ease, box-shadow 0.3s ease; line-height: 1.6; word-break: keep-all; } .history-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0, 0, 0, 0.2); } .history-card button { margin-top: 0.8rem; background: var(--btn-color); color: white; border: none; border-radius: 9999px; padding: 0.6rem 1.2rem; cursor: pointer; font-weight: 600; font-size: 0.95rem; transition: background 0.3s ease, transform 0.2s ease; width: 100%; } .history-card button:hover { background: var(--btn-hover); transform: scale(1.05); } /* 상세내역 */ .details { margin-top: 0.5rem; padding: 0.7rem; background: rgba(255, 255, 255, 0.05); border-radius: 10px; font-size: 0.85rem; opacity: 0.9; display: none; word-break: break-word; } /* footer */ footer { text-align: center; font-size: 0.8rem; margin-top: auto; opacity: 0.6; padding: 1rem 0; } /* 모바일 대응 */ @media (max-width: 768px) { .sidebar { width: 60px; } .sidebar a { width: 36px; height: 36px; } .sidebar svg { width: 20px; height: 20px; } .content { padding: 1rem; } }